3 * Update Linux ioctl lists.
4 * Update PF_* and AF_* value lists.
5 * The 4.5.3 -p behavior for NPTL threads applies only under -f, and got fixed.
10 * On Linux using NPTL threads, -p will now attach to all threads in a process.
11 * Handle new mq_* system calls in Linux 2.6.6 and later.
16 * Report some new VM_* bit values on Linux.
17 * Better output for Linux sched_* system calls.
22 * Display multiple ioctl name matches on Linux.
26 * New port to AMD's x86-64 architecture. One strace binary can
27 handle both new x86-64 and old i386 processes.
28 * Fixed support for LFS64 calls.
29 * New switch -E to add/remove environment variables for the command.
30 * Merged s390/s390x port.
31 * Trace an unbounded number of processes.
32 * Handle numerous new system calls in Linux 2.5, and new threads semantics.
33 * Fixed bugs with attach/detach leaving things stopped.
34 * Fixed traced process seeing ECHILD despite live, traced children
35 in waitpid calls with WNOHANG.
36 * Stuart Menefy contributed a port to Linux/SH.
37 * Stephen Thomas contributed a port to Linux/SH64.
38 * Many other bug fixes.
42 * Fix Linux/ia64 support, looks like someone renamed a few things on us
43 * Fix the ioctl setup for Linux, turned out it did not really work.
44 Improve the ioctl extracter as well so we decode some more ones.
48 * compile fixes for Linux/mips
52 * Linux ia64 and hppa ports added
53 * The usual Linux syscall updates (includes 32bit uid/gid support),
54 * Linux ioctl list updated
55 * Support IPv6 scope ids
56 * FreeBSD/i386 port added
57 * UnixWare and Solaris updates
58 * Better support for tracing multithreaded processes in Linux
62 * Compiles on glibc2.0 systems again
63 * Linux/S390 port added
64 * The usual Linux syscall updates
65 * we can follow fork on arm now
69 * Linux/MIPS port added
70 * Lots of Linux updates again
71 * Improved IPv6 support
77 * Compiles on glibc2.0 systems again
81 * Get stat structure properly on Linux 64bit archs
82 * Personalities work again
83 * Compile correctly on SunOS again
89 * Linux (ultra)sparc fixes
96 * add support for more Linux architectures (powerpc, sparc, arm)
97 * support lots more Linux syscalls
99 * add IPX and IPIP support
100 * check stray syscall after execv
101 * fix hanging children
103 Changes in version 3.1
104 ======================
107 * Linux 68k is supported
108 * Linux alpha is supported
109 * configure is upgraded to autoconf 2.x
110 * using -f in combination with -e now works correctly
111 * output can be piped to a program
112 * tracing setuid programs works better
113 * it is now reasonable to install strace setuid to root in some circumstances
114 * new useful tracing names like file and process to trace whole
115 classes of system calls, e.g. -efile traces all system calls that
116 take a file name as an argument
117 * IPC calls on SunOS 4.1.x are decoded
118 * Linux program memory is reliably dereferenced
119 * Linux decodes at least the name of all syscalls as of pre2.0.4
120 * various cosmetic changes and bug fixes
122 Changes from versions 2.x to version 3.0
123 ========================================
125 * filename arguments are neither abbreviated nor stringified
126 * string arguments are now true C strings using octal instead of hex by default
127 * preprocessor constants are never shortened (e.g. was RDONLY => now O_RDONLY)
128 * by default the output for multiple processes now goes into one file
129 * all structures, vectors, bitsets, etc. use consistent output formats
130 * the -c option now means count calls, -i does what the old -c used to do
132 New Features in version 3.0
133 ===========================
135 * non-ascii strings can be optionally printed entirely in hex
136 * the output format is readable when mutiple processes are generating output
137 * exit values are printed in an alignment column
138 * is is possible to suppress messages about attaching and detaching
139 * various tracing features can be enabled on a per syscall/signal/desc basis
140 * selective tracing of syscalls
141 * selective printing of syscall structures
142 * selective abbreviation of long structures on a per syscall basis
143 * selective printing of raw syscall arguments and results
144 * selective tracing of signals
145 * selective dumping of all I/O read from file descriptors
146 * selective dumping of all I/O written to file descriptors
147 * optional counting of time, calls, and errors for each syscall