1
我們收到了一份家庭作業作業,其中我們需要採用ELF文件並打印其部分的名稱。使用字符串表格和打印部分名稱
我們應該只使用我們直接從ELF頭部收到的數據,即 ,這意味着我們不能使用任何「高級別」過程 - 我們需要直接轉到我們需要的數據。
因此,即時通訊設法打印第一部分的名稱。我知道名字應該在字符串表中。這是我到目前爲止有:
我得到的ELF文件的使用mmap...
elfhead =(Elf32_Ehdr *) mmap...
,我發現了使用一節中的成員ELF頭偏移開始
sectionoffset = elfhead->e_shoff
然後
section = (Elf32_Shdr*)(elfhead + sectionoffset)
nameoffset = section->sh_name
stringoffset = elfhead->e_shstrndx;
需要明確的是 -
-
在
- 我有ELF頭
- 在區間i具有節頭
- 在
stringoffset
我有其中 字符串表應該是 - 在
nameoffset
節表內的索引i在 中有索引的第一個段名是假設的字符串表。
elfhead
給定上面的代碼,我該如何轉到名字並打印它?
可能重複(http://stackoverflow.com /問題/ 10863510 /獲取最SH-名稱構件-IN-A截面頭小精靈文件) –