Rev 3686 | Rev 3772 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 3686 | Rev 3690 | ||
|---|---|---|---|
| Line 298... | Line 298... | ||
| 298 | case PT_INTERP: |
298 | case PT_INTERP: |
| 299 | /* Assume silently interp == "/app/dload" */ |
299 | /* Assume silently interp == "/app/dload" */ |
| 300 | elf->info->interp = "/app/dload"; |
300 | elf->info->interp = "/app/dload"; |
| 301 | break; |
301 | break; |
| 302 | case PT_DYNAMIC: |
302 | case PT_DYNAMIC: |
| - | 303 | /* Record pointer to dynamic section into info structure */ |
|
| - | 304 | elf->info->dynamic = |
|
| - | 305 | (void *)((uint8_t *)entry->p_vaddr + elf->bias); |
|
| - | 306 | printf("dynamic section found at 0x%x\n", |
|
| - | 307 | (uintptr_t)elf->info->dynamic); |
|
| - | 308 | break; |
|
| 303 | case PT_SHLIB: |
309 | case PT_SHLIB: |
| 304 | case PT_NOTE: |
310 | case PT_NOTE: |
| 305 | case PT_LOPROC: |
311 | case PT_LOPROC: |
| 306 | case PT_HIPROC: |
312 | case PT_HIPROC: |
| 307 | default: |
313 | default: |
| Line 455... | Line 461... | ||
| 455 | if (entry->sh_flags & SHF_TLS) { |
461 | if (entry->sh_flags & SHF_TLS) { |
| 456 | /* .tbss */ |
462 | /* .tbss */ |
| 457 | } |
463 | } |
| 458 | break; |
464 | break; |
| 459 | case SHT_DYNAMIC: |
465 | case SHT_DYNAMIC: |
| 460 | /* Record pointer to dynamic section into info structure */ |
- | |
| 461 | elf->info->dynamic = |
- | |
| 462 | (void *)((uint8_t *)entry->sh_addr + elf->bias); |
- | |
| 463 | printf("dynamic section found at 0x%x\n", |
- | |
| 464 | (uintptr_t)elf->info->dynamic); |
- | |
| 465 | break; |
466 | break; |
| 466 | default: |
467 | default: |
| 467 | break; |
468 | break; |
| 468 | } |
469 | } |
| 469 | 470 | ||