Changes in 4.5.14 ============== * Bug fixes. * Accept numeric system calls in -e. Changes in 4.5.13 ============== * Bug fixes. * Introduce "-e trace=desc". Changes in 4.5.12 ============== * Bug fixes. * Better x86-64 support for IA32 processes. * Update PowerPC system calls. * Better printing for Linux aio system calls. Changes in 4.5.11 ============== * Quick fix release for build issues. * One fix for Linux/ARM system call table. Changes in 4.5.10 ============== * Bug fixes. * Print fault address for SIGSEGV/SIGBUS signals when available. Changes in 4.5.9 ============== * Bug fixes. * Improve socket ioctl printing. * Update Linux/IA64 syscall list. * Fix Linux/x86-64 syscall argument extraction for 32-bit processes. * Improve mount flags printing. * Support symbolic printing of x86_64 arch_prctl parameters. Changes in 4.5.8 ============== * Bug fixes. * Update syscall tables for Alpha, ARM, HPPA. * Support new Linux syscalls mbind, set_mempolicy, get_mempolicy, waitid. * Support Linux syscalls fadvise64, fadvise64_64, and epoll_*. * Improve ioctl command name matching. * Print RTC_* ioctl structure contents. * Support newer RLIMIT_* values. * Print struct cmsghdr details in sendmsg. Changes in 4.5.7 ============== * Bug fixes. * Print attribute values in *xattr system calls on Linux. * Include pread and pwrite calls in -e read and -e write tracing. * Update SO_* and IP_* value lists and add IPV6_* values for socket options. * Print clock_t values symbolically in Linux clock_* system calls. Changes in 4.5.6 ============== * Bug fixes, Linux ioctl updates. * David Miller contributed support for Linux/SPARC64. Changes in 4.5.5 ============== * Just bug fixes. Changes in 4.5.4 ============== * Update Linux ioctl lists. * Update PF_* and AF_* value lists. * The 4.5.3 -p behavior for NPTL threads applies only under -f, and got fixed. Changes in 4.5.3 ============== * Bug fixes. * On Linux using NPTL threads, -p will now attach to all threads in a process. * Handle new mq_* system calls in Linux 2.6.6 and later. Changes in 4.5.2 ============== * Bug fixes. * Report some new VM_* bit values on Linux. * Better output for Linux sched_* system calls. Changes in 4.5.1 ============== * Bug fixes. * Display multiple ioctl name matches on Linux. Changes in 4.5 ============== * New port to AMD's x86-64 architecture. One strace binary can handle both new x86-64 and old i386 processes. * Fixed support for LFS64 calls. * New switch -E to add/remove environment variables for the command. * Merged s390/s390x port. * Trace an unbounded number of processes. * Handle numerous new system calls in Linux 2.5, and new threads semantics. * Fixed bugs with attach/detach leaving things stopped. * Fixed traced process seeing ECHILD despite live, traced children in waitpid calls with WNOHANG. * Stuart Menefy contributed a port to Linux/SH. * Stephen Thomas contributed a port to Linux/SH64. * Many other bug fixes. Changes in 4.4 ============== * Fix Linux/ia64 support, looks like someone renamed a few things on us * Fix the ioctl setup for Linux, turned out it did not really work. Improve the ioctl extracter as well so we decode some more ones. Changes in 4.3.1 ================ * compile fixes for Linux/mips Changes in 4.3 ============== * Linux ia64 and hppa ports added * The usual Linux syscall updates (includes 32bit uid/gid support), * Linux ioctl list updated * Support IPv6 scope ids * FreeBSD/i386 port added * UnixWare and Solaris updates * Better support for tracing multithreaded processes in Linux Changes in 4.2 ============== * Compiles on glibc2.0 systems again * Linux/S390 port added * The usual Linux syscall updates * we can follow fork on arm now Changes in 4.1 ================ * Linux/MIPS port added * Lots of Linux updates again * Improved IPv6 support * Add strace-graph Changes in 4.0.1 ================ * Minor bugfixes * Compiles on glibc2.0 systems again Changes in 4.0 ============== * Get stat structure properly on Linux 64bit archs * Personalities work again * Compile correctly on SunOS again * IRIX64 updates * Solaris updates Changes in 3.99.1 ================= * Linux (ultra)sparc fixes * Linux alpha fixes * Minor cleanups Changes in 3.99 =============== * New maintainer * add support for more Linux architectures (powerpc, sparc, arm) * support lots more Linux syscalls * fix signal handling * add IPX and IPIP support * check stray syscall after execv * fix hanging children Changes in version 3.1 ====================== * Irix5 is supported * Linux 68k is supported * Linux alpha is supported * configure is upgraded to autoconf 2.x * using -f in combination with -e now works correctly * output can be piped to a program * tracing setuid programs works better * it is now reasonable to install strace setuid to root in some circumstances * new useful tracing names like file and process to trace whole classes of system calls, e.g. -efile traces all system calls that take a file name as an argument * IPC calls on SunOS 4.1.x are decoded * Linux program memory is reliably dereferenced * Linux decodes at least the name of all syscalls as of pre2.0.4 * various cosmetic changes and bug fixes Changes from versions 2.x to version 3.0 ======================================== * filename arguments are neither abbreviated nor stringified * string arguments are now true C strings using octal instead of hex by default * preprocessor constants are never shortened (e.g. was RDONLY => now O_RDONLY) * by default the output for multiple processes now goes into one file * all structures, vectors, bitsets, etc. use consistent output formats * the -c option now means count calls, -i does what the old -c used to do New Features in version 3.0 =========================== * non-ascii strings can be optionally printed entirely in hex * the output format is readable when mutiple processes are generating output * exit values are printed in an alignment column * is is possible to suppress messages about attaching and detaching * various tracing features can be enabled on a per syscall/signal/desc basis * selective tracing of syscalls * selective printing of syscall structures * selective abbreviation of long structures on a per syscall basis * selective printing of raw syscall arguments and results * selective tracing of signals * selective dumping of all I/O read from file descriptors * selective dumping of all I/O written to file descriptors * optional counting of time, calls, and errors for each syscall