TODO revision c693f02a01835a6fc603212d323a364a22a4fa26
1* BFD: 2 + New executable formats 3 + Read list of libraries needed 4 + Read list of undefined symbols in executables 5 + Read list of exported symbols in libraries 6 + Read debugging info from executables/libraries 7* Automatically update list of syscalls? 8* Improve documentation 9* Improve -e/-x options (regexp?) 10* Improve -l option 11* Improve C++ name demangling 12* Display different argument types 13* Update /etc/ltrace.conf 14* More architectures, cleaner way to port 15* More operating systems (solaris?) 16* Option -I (inter-library calls) 17* Modify ARGTYPE_STRING[0-5] types so that they don't stop displaying chars when '\0' is seen 18* Get rid of EVENT_ARCH_SYSCALL and EVENT_ARCH_SYSRET 19* Cleaner way to use breakpoints: 20 + BP is placed in the PLT 21 + When control hits there: 22 - write down return address 23 - change return address with another one (handled by ltrace) 24 - get arguments... 25 - change the process' PC to be in the correct place, 26 without removing breakpoint 27 + When control hits one of our return addresses: 28 - get return value... 29 - change PC to the right place 30* To be able to work with processes sharing memory, we must: 31 + ptrace() every single thread 32 + place breakpoints only in places where the process control can continue 33 without having to remove it 34* Get rid of GNU's autoconf stuff 35* List source dependencies in Makefile 36* Create different ltrace processes to trace different children 37* debug: change "-d" option to be something like "-d elf,events", or "-d breakpoints" 38* Find out if a process is sharing memory with its parent? 39* When using -p, find out if that process is sharing memory with other procs 40