Lines 2372-2382
dump_phdr(struct readelf *re)
Link Here
|
2372 |
} |
2372 |
} |
2373 |
printf(" %2.2d ", i); |
2373 |
printf(" %2.2d ", i); |
2374 |
/* skip NULL section. */ |
2374 |
/* skip NULL section. */ |
2375 |
for (j = 1; (size_t)j < re->shnum; j++) |
2375 |
for (j = 1; (size_t)j < re->shnum; j++) { |
2376 |
if (re->sl[j].addr >= phdr.p_vaddr && |
2376 |
if (re->sl[j].off < phdr.p_offset) |
2377 |
re->sl[j].addr + re->sl[j].sz <= |
2377 |
continue; |
|
|
2378 |
if (re->sl[j].off + re->sl[j].sz > |
2379 |
phdr.p_offset + phdr.p_filesz && |
2380 |
re->sl[j].type != SHT_NOBITS) |
2381 |
continue; |
2382 |
if (re->sl[j].addr < phdr.p_vaddr || |
2383 |
re->sl[j].addr + re->sl[j].sz > |
2378 |
phdr.p_vaddr + phdr.p_memsz) |
2384 |
phdr.p_vaddr + phdr.p_memsz) |
2379 |
printf("%s ", re->sl[j].name); |
2385 |
continue; |
|
|
2386 |
if (phdr.p_type == PT_TLS && |
2387 |
(re->sl[j].flags & SHF_TLS) == 0) |
2388 |
continue; |
2389 |
printf("%s ", re->sl[j].name); |
2390 |
} |
2380 |
printf("\n"); |
2391 |
printf("\n"); |
2381 |
} |
2392 |
} |
2382 |
#undef PH_HDR |
2393 |
#undef PH_HDR |