| 1 |
pspax -u 0
|
| 2 |
errno = 0; uid = strtol(optarg, NULL, 10); if (uid == 0 && errno != 0) error("invalid value");
|
| 3 |
|
| 4 |
add support for RPATH checking with -nL ?
|
| 5 |
|
| 6 |
we truncate 64bit types in many places to (unsigned long) ... do we really
|
| 7 |
care though ? this would be an issue if:
|
| 8 |
- host is 32bit
|
| 9 |
- object being analyzed is 64bit
|
| 10 |
- object has symbols which is larger than 32bits
|
| 11 |
|
| 12 |
scanelf does not check offsets of DT's when scanning PT_DYNAMIC ... if a bogus
|
| 13 |
ELF had a PHDR of type PT_DYNAMIC which claimed to be of size say 1 and had an
|
| 14 |
offset just shy of the end of the file, we'll probably crash ...
|
| 15 |
|
| 16 |
dumpelf does not do string checking in very very verbose mode. it assumes the
|
| 17 |
strings are sane when dumping the sections. only way around this is to check
|
| 18 |
everything single byte and print it out a character at a time ... sucks ...
|
| 19 |
|
| 20 |
we look at the section named ".text" for TEXTRELs when we should look at the
|
| 21 |
PT_LOAD program headers which are marked Executable.
|
| 22 |
|
| 23 |
we don't handle versioned symbols well. take an ELF with debugging and do:
|
| 24 |
scanelf -s '' elf
|
| 25 |
notice that glibc symbols generally have version info. then search for that:
|
| 26 |
scanelf -s foo@@ver elf
|
| 27 |
no hits as all of our symbol comparisons ignore the versioning info.
|
| 28 |
|
| 29 |
allow digging into ARM_ATTRIBUTES (.ARM.attributes) sections
|
| 30 |
- need info on the section layout
|
| 31 |
- figure out how to integrate cleanly (target-independent driller)
|
| 32 |
http://sourceware.org/binutils/docs/as/GNU-Object-Attributes.html
|