TODO revision 834844a633c2344392798ebafb645fce1030eb5f
1-*-org-*-
2* TODO
3** Automatic prototype discovery:
4*** Use debuginfo if available
5    Alternatively, use debuginfo to generate configure file.
6*** Demangled identifiers contain partial prototypes themselves
7** Automatically update list of syscalls?
8** Improve documentation
9*** Describe syntax of config files
10** Update /etc/ltrace.conf
11   In particular, we could use a config directory, where packages
12   would install their ltrace config scripts.  The config file could
13   be named after SONAME, and automatically read when corresponding
14   library is mapped.
15** More operating systems (solaris?)
16** Get rid of EVENT_ARCH_SYSCALL and EVENT_ARCH_SYSRET
17** Implement displaced tracing
18   A technique used in GDB (and in uprobes, I believe), whereby the
19   instruction under breakpoint is moved somewhere else, and followed
20   by a jump back to original place.  When the breakpoint hits, the IP
21   is moved to the displaced instruction, and the process is
22   continued.  We avoid all the fuss with singlestepping and
23   reenablement.
24** Create different ltrace processes to trace different children
25** Config file syntax
26*** typedef should be able to assign a lens to a name
27*** format should take arguments like string does
28* BUGS
29** After a clone(), syscalls may be seen as sysrets in s390 (see trace.c:syscall_p())
30