Как извлечь все поля из заголовка раздела для файла эльфа?

Так что я смог получить sh_name, используя урок Elf здесь: http://wiki.osdev.org/ELF_Tutorial и этот вопрос: получение члена sh_name в файле elf заголовка раздела, но при использовании того же метода, чтобы получить остальные поля в заголовке раздела, я не получаю такой же вывод, как при вызове readelf -S на объектном файле я анализирую. Я распечатываю приведенную строку следующего:

sh_strtab_p + shdr[i].sh_offset

и я ничего не получаю, когда делаю. Это проблема кастинга? Должен ли я использовать его как int или как что-то подобное? Я думал, что это будет формат строки, так как я предположил, sh_strtab была связана таблица строк с заголовком раздела.

0

Решение

Итак, получается, что я глупый, и ответ просто конвертировать Elf_Shdr.sh_offset (который является uint32_t) в гекс, и вы получите то же значение, что и при использовании readelf, Нет необходимости использовать строковый индекс для чего-либо, кроме имени. Все остальные поля могут быть обработаны таким же образом, и если вам нужно строковое представление флагов и типа, здесь есть таблица, отображающая значение на имя флага / типа: https://docs.oracle.com/cd/E19683-01/817-3677/chapter6-94076/index.html.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]