aboutsummaryrefslogtreecommitdiff
path: root/TODO
diff options
context:
space:
mode:
authorJuan Cespedes <cespedes@thehackers.org>1997-08-23 21:31:46 +0200
committerJuan Cespedes <cespedes@thehackers.org>1997-08-23 21:31:46 +0200
commit1afec6996a994ac3734dad50e925437da064647a (patch)
treed49a7ff0970d498c5bcacdfe8adfbfa6a2c55a35 /TODO
parentef04ba484536ab0517fabbbbf4bfbb32c249453b (diff)
downloadltrace-1afec6996a994ac3734dad50e925437da064647a.tar.gz
Version 0.1.2
* Updated ``TODO'' * Added process.c:execute_process * Added i386.c:type_of_stop * Hopefully, system dependent stuff is now only in i386.[ch] and process.[ch] * `-d' can now be used many times: many levels of debug * removed breakpoint for children detecting fork()s. Now, *every* program should work ok * struct process now also has a field for the process filename * Added "syscall.c" with a list of system call names in Linux/i386
Diffstat (limited to 'TODO')
-rw-r--r--TODO55
1 files changed, 39 insertions, 16 deletions
diff --git a/TODO b/TODO
index 8a42175..13f4039 100644
--- a/TODO
+++ b/TODO
@@ -1,16 +1,39 @@
--------------------------------------------------------------------------------
-``struct_process'' should also have:
- * All the symbols it has breakpointed, and, for each of them:
- - its addr
- - its return addr, if any
- - whether the return addr is breakpointed (ie, if the symbol is ``active'')
- - the original value in the addr, and in the return addr, if appropiate
- -
- * The state of the process:
- - uninitialized
- - running
- - within a given syscall
--------------------------------------------------------------------------------
-I should parse a config file (/etc/ltrace.conf & ~/.ltracerc) to
-handle different arguments to the library calls
--------------------------------------------------------------------------------
+* {enable,disable}_all_breakpoints should be process-dependent
+
+* All wait4's should be moved to chld_handler():
+ + A process may stop because:
+ - It execve()'d (needs breakpoints to be added)
+ - It received a signal (DONE)
+ - It breakpointed at a library call (DONE)
+ - It breakpointed at a library return
+ - It breakpointed at a syscall
+ - It breakpointed at a syscall return
+
+* ``struct_process'' should also have:
+ + All the symbols it has breakpointed, and, for each of them:
+ - its addr
+ - its return addr, if any
+ - whether the return addr is breakpointed (ie, if the symbol is ``active'')
+ - the original value in the addr, and in the return addr, if appropiate
+ -
+ + The state of the process:
+ - uninitialized
+ - running
+ - within a given syscall
+
+* I should parse a config file (/etc/ltrace.conf & ~/.ltracerc) to
+ handle different arguments to the library calls
+
+* main() should find the program in the PATH.
+
+* ltrace should accept `-p' option. (hey, it's not as difficult as it
+ seems)
+
+* return values should be logged. That implies:
+ + Breakpointing each return value
+ + Disabling breakpoints and displaying ``???'' as return value when
+ a new function is called
+
+* ltrace should accept '-s' option to trace syscalls, too.
+
+* All architecture dependent stuff should be moved to ``arch.h''