1 Changes in 4.4.97 TEST release
3 * New port to AMD's x86-64 architecture. One strace binary can
4 handle both new x86-64 and old i386 processes.
5 * Fixed support for LFS64 calls.
6 * New switch -E to add/remove environment variables for the command.
7 * Merged s390/s390x port.
8 * Trace an unbounded number of processes.
9 * Handle numerous new system calls in Linux 2.5, and new threads semantics.
10 * Fixed bugs with attach/detach leaving things stopped.
11 * Fixed traced process seeing ECHILD despite live, traced children
12 in waitpid calls with WNOHANG.
13 * Stuart Menefy contributed a port to Linux/SH.
14 * Stephen Thomas contributed a port to Linux/SHmedia.
18 * Fix Linux/ia64 support, looks like someone renamed a few things on us
19 * Fix the ioctl setup for Linux, turned out it did not really work.
20 Improve the ioctl extracter as well so we decode some more ones.
24 * compile fixes for Linux/mips
28 * Linux ia64 and hppa ports added
29 * The usual Linux syscall updates (includes 32bit uid/gid support),
30 * Linux ioctl list updated
31 * Support IPv6 scope ids
32 * FreeBSD/i386 port added
33 * UnixWare and Solaris updates
34 * Better support for tracing multithreaded processes in Linux
38 * Compiles on glibc2.0 systems again
39 * Linux/S390 port added
40 * The usual Linux syscall updates
41 * we can follow fork on arm now
45 * Linux/MIPS port added
46 * Lots of Linux updates again
47 * Improved IPv6 support
53 * Compiles on glibc2.0 systems again
57 * Get stat structure properly on Linux 64bit archs
58 * Personalities work again
59 * Compile correctly on SunOS again
65 * Linux (ultra)sparc fixes
72 * add support for more Linux architectures (powerpc, sparc, arm)
73 * support lots more Linux syscalls
75 * add IPX and IPIP support
76 * check stray syscall after execv
77 * fix hanging children
79 Changes in version 3.1
80 ======================
83 * Linux 68k is supported
84 * Linux alpha is supported
85 * configure is upgraded to autoconf 2.x
86 * using -f in combination with -e now works correctly
87 * output can be piped to a program
88 * tracing setuid programs works better
89 * it is now reasonable to install strace setuid to root in some circumstances
90 * new useful tracing names like file and process to trace whole
91 classes of system calls, e.g. -efile traces all system calls that
92 take a file name as an argument
93 * IPC calls on SunOS 4.1.x are decoded
94 * Linux program memory is reliably dereferenced
95 * Linux decodes at least the name of all syscalls as of pre2.0.4
96 * various cosmetic changes and bug fixes
98 Changes from versions 2.x to version 3.0
99 ========================================
101 * filename arguments are neither abbreviated nor stringified
102 * string arguments are now true C strings using octal instead of hex by default
103 * preprocessor constants are never shortened (e.g. was RDONLY => now O_RDONLY)
104 * by default the output for multiple processes now goes into one file
105 * all structures, vectors, bitsets, etc. use consistent output formats
106 * the -c option now means count calls, -i does what the old -c used to do
108 New Features in version 3.0
109 ===========================
111 * non-ascii strings can be optionally printed entirely in hex
112 * the output format is readable when mutiple processes are generating output
113 * exit values are printed in an alignment column
114 * is is possible to suppress messages about attaching and detaching
115 * various tracing features can be enabled on a per syscall/signal/desc basis
116 * selective tracing of syscalls
117 * selective printing of syscall structures
118 * selective abbreviation of long structures on a per syscall basis
119 * selective printing of raw syscall arguments and results
120 * selective tracing of signals
121 * selective dumping of all I/O read from file descriptors
122 * selective dumping of all I/O written to file descriptors
123 * optional counting of time, calls, and errors for each syscall