MCPcopy Create free account
hub / github.com/MJx0/KittyMemoryEx / allSoInfo

Method allSoInfo

KittyMemoryEx/KittyScanner.cpp:1544–1567  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1542}
1543
1544std::vector<kitty_soinfo_t> LinkerScannerMgr::allSoInfo() const
1545{
1546 std::vector<kitty_soinfo_t> infos{};
1547
1548 if (!_pMem || !isValid() || !_init)
1549 return infos;
1550
1551 auto maps = KittyMemoryEx::getAllMaps(_pMem->processID());
1552 uintptr_t si = solist(), prev = 0;
1553 while (si && KittyMemoryEx::getAddressMap(_pMem->processID(), si, maps).readable)
1554 {
1555 kitty_soinfo_t info = infoFromSoInfo_(si, maps);
1556 infos.push_back(info);
1557
1558 prev = si;
1559
1560 if (_pMem->Read(si + _soinfo_offsets.next, &si, sizeof(uintptr_t)) != sizeof(uintptr_t))
1561 break;
1562
1563 if (si == prev)
1564 break;
1565 }
1566 return infos;
1567}
1568
1569kitty_soinfo_t LinkerScannerMgr::findSoInfo(const std::string &name) const
1570{

Callers 1

mainFunction · 0.80

Calls 4

getAllMapsFunction · 0.85
getAddressMapFunction · 0.85
ReadMethod · 0.80
processIDMethod · 0.45

Tested by

no test coverage detected