TODO revision 64e793b75491217a25c20fab874c87e994cbb8bd
1* {enable,disable}_all_breakpoints should be process-dependent
2
3* All wait4's should be wait_for_child():
4  + A process may stop because:
5    - It execve()'d (needs breakpoints to be added) (DONE)
6    - It received a signal                          (DONE)
7    - It breakpointed at a library call             (DONE)
8    - It breakpointed at a library return
9    - It breakpointed at a syscall
10    - It breakpointed at a syscall return
11    - It breakpointed after a SINGLESTEP
12
13* ``struct_process'' should also have:
14  + The state of the process:
15    - uninitialized               (DONE)
16    - running
17    - within a given library call
18    - within a given syscall      (DONE)
19  + All the symbols it has breakpointed, and, for each of them:
20    - its addr
21    - the original value in the addr, if appropiate
22  + Whether a return from a libcall is pending, and if so:
23    - its return addr
24    - the original value in the return addr
25
26* I should parse a config file (/etc/ltrace.conf & ~/.ltracerc) to
27  handle different arguments to the library calls
28
29* ltrace should accept `-p' option. (hey, it's not as difficult as it
30  seems)
31
32* return values should be logged.  That implies:
33  + Breakpointing each return value
34  + Disabling breakpoints and displaying ``???'' as return value when
35    a new function is called
36
37* All architecture dependent stuff should be moved to ``arch.h''
38