diff options
author | Juan Cespedes <cespedes@debian.org> | 2009-05-21 15:15:40 +0200 |
---|---|---|
committer | Juan Cespedes <cespedes@debian.org> | 2009-05-21 15:15:40 +0200 |
commit | 2721e6adbc7399e1b621b896b4f5b864082fbf03 (patch) | |
tree | c934ca4377082f2171705f450078bafbf10b4ee6 /TODO | |
parent | 85f7d7616f2736de79f6b7f77bceedbc97c83406 (diff) | |
download | ltrace-2721e6adbc7399e1b621b896b4f5b864082fbf03.tar.gz |
new fork() and clone() approach
used PTRACE_O_TRACE{FORK,VFORK,CLONE} to trace newly created
processes instead of figuring it out whether a given syscall
would create another process or not
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 14 |
1 files changed, 6 insertions, 8 deletions
@@ -14,17 +14,11 @@ * More architectures, cleaner way to port * More operating systems (solaris?) * Option -I (inter-library calls) -* Modify ARGTYPE_STRING[0-5] types so that they not stop displaying chars when '\0' is encountered +* Modify ARGTYPE_STRING[0-5] types so that they don't stop displaying chars when '\0' is seen * Get rid of EVENT_ARCH_SYSCALL and EVENT_ARCH_SYSRET -* EVENT_FORK, EVENT_CLONE, EVENT_EXEC instead of fork_p() and exec_p() -* If EVENT_FORK is received: - + Add the new process to the list, with a state of "future child of XXX" -* If EVENT_CLONE is received: - + Add the new process to the list, with a state of "future clone of XXX" +* EVENT_EXEC instead of exec_p() * If EVENT_EXEC is received: + Clean structs with breakpoints, open new created program -* If a signal is received from an an unknown process, add it to the list, - with a state of "new process" * Cleaner way to use breakpoints: + BP is placed in the PLT + When control hits there: @@ -42,3 +36,7 @@ without having to remove it * Get rid of GNU's autoconf stuff * List source dependencies in Makefile +* Create different ltrace processes to trace different children +* debug: change "-d" option to be something like "-d elf,events", or "-d breakpoints" +* Find out if a process is sharing memory with its parent? +* When using -p, find out if that process is sharing memory with other processes |