Как использовать цикл «для», который начинает сканирование в определенном месте и перебирает «диапазон сканирования» в C - PullRequest
0 голосов
/ 08 января 2019

Мне нужно отсканировать диапазон адресов в памяти Linux и сравнить его содержимое с 4-х байтным переходом, я искал в Интернете и не нашел полезной реализации. функция, которую я должен реализовать, должна использоваться в модуле, который я пытаюсь сделать. в любом случае, подпись функции:

void scanMemory(int scan_range) {
   // implementation here...
}

illustration Мне нужно отсканировать диапазон между функцией чтения, которую я знаю, и именем пользователя (начиная с имени пользователя)

Я нашел так далеко: C Указатели на сканирование памяти который использует цикл for, но не совсем так, как мне нужно.

Сканирование паттернов памяти в Linux в C здесь я нашел следующее:

for(i = 0; i < size; i++)
    {
         if(_compare((unsigned char *)(address + i), (unsigned char *)pattern, mask))
               return (unsigned long)(address + i);
    }

но я не уверен, что скачки составляют всего 4 байта.

Я ищу идеи или реализацию цикла for, который я описал выше

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...