小编use*_*301的帖子

在段头文件elf文件中获取sh_name成员

我试图通过访问sh_nameelf文件的成员来获取部分名称的正确偏移量,但它一直给我零或null ...

我应该只使用mmap()elf.h- 没有辅助功能

所以我做了:

void* map_start = mmap(0, fd_stat.st_size, PROT_READ | PROT_WRITE , MAP_SHARED, fd, 0))
header = (Elf32_Ehdr *) map_start;  
secoff = header->e_shoff;    
section = (Elf32_Shdr *)(map_start + secoff); 
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时:

printf("name offset = %d\n", (section->sh_name));
Run Code Online (Sandbox Code Playgroud)

它一直给我0 ...我做错了什么?

c unix linux elf

10
推荐指数
1
解决办法
6922
查看次数

标签 统计

c ×1

elf ×1

linux ×1

unix ×1