blob: c9b7ea7d6fc6412c732fdc8ddddf7f9a18fd9cf1 [file] [log] [blame]
Roland McGrath0c26d342005-08-03 11:43:03 +000012005-08-03 Roland McGrath <roland@redhat.com>
2
3 * configure.ac, NEWS: Version 4.5.13.
4 * debian/changelog, strace.spec: 4.5.13-1.
5
Roland McGrath9554a482005-08-03 11:29:26 +000062005-07-19 Michael Schmitz <schmitz@debian.org>
7
8 Long overdue m68k cleanup.
9 * linux/syscallent.h: remove m68k declarations.
10 * linux/m68k/syscallent.h: new file, fixed up declarations
11 to match kernel version 2.6.11. Newer syscalls are sufficiently
12 different from i386 to merit a separate file.
13
142005-08-03 Roland McGrath <roland@redhat.com>
15
16 * linux/x86_64/syscallent.h: Update init_module argument count.
17 * linux/sparc/syscallent.h: Likewise.
18 * linux/sparc64/syscallent2.h: Likewise.
19 * linux/sparc64/syscallent.h: Likewise.
20 * linux/sh/syscallent.h: Likewise.
21 * linux/sh64/syscallent.h: Likewise.
22 * linux/s390/syscallent.h: Likewise.
23 * linux/s390x/syscallent.h: Likewise.
24 * linux/powerpc/syscallent.h: Likewise.
25 * linux/arm/syscallent.h: Likewise.
26
272005-07-22 James Lentini <jlentini@gmail.com>
28
29 * bjm.c (sys_init_module): Display all three arguments.
30 * linux/syscallent.h: Update argument count.
31
Roland McGrathe0f6bb02005-08-03 11:23:50 +0000322005-08-03 Roland McGrath <roland@redhat.com>
33
34 * process.c (internal_wait): Don't suspend when known child is known
35 to be exiting already.
36
37 * strace.c (detach): If detaching the last live thread in a group with
38 a zombie leader, then detach the leader too.
39 (handle_group_exit): Use detach, not droptcb, for predeceased thread.
40 Mark process about to take a signal with TCB_GROUP_EXITING flag.
41 Fixes RH#161919.
42
Roland McGrath30afb792005-07-19 07:42:24 +0000432005-07-19 Roland McGrath <roland@redhat.com>
44
45 * defs.h [LINUX] [M68K] (__NR_exit_group): Define it if missing.
46 Fixes Debian#315500.
47
Roland McGrath387d0e52005-07-19 07:13:34 +0000482005-07-14 Heiko Carstens <heiko.carstens@de.ibm.com>
49
50 * linux/s390/syscallent.h (sys_tgkill, vserver, fadvise64_64)
51 (statfs64, fstatfs64, remap_file_pages, mbind, get_mempolicy)
52 (set_mempolicy, mq_open, mq_unlink, mq_timedsend, mq_timedreceive)
53 (mq_notify, mq_getsetattr, sys_kexec_load, add_key, request_key)
54 (keyctl, waitid): Added.
55 * linux/s390x/syscallent.h: Likewise and added missing _llseek.
56 * linux/s390/errnoent.h (ECANCELED, ENOKEY, EKEYEXPIRED)
57 (EKEYREVOKED, EKEYREJECTED, EOWNERDEAD, ENOTRECOVERABLE): Added.
58 * linux/s390x/errnoent.h: Likewise.
59
Roland McGrath415a7d62005-07-05 09:50:40 +0000602005-07-05 Roland McGrath <roland@redhat.com>
61
62 * mem.c [LINUX] (sys_old_mmap) [X86_64]: Extract 32-bit values if
63 child is 32-bit.
64 Fixes RH#162467.
65
Roland McGrathfd583f62005-07-05 03:22:50 +0000662005-06-08 Dmitry V. Levin <ldv@altlinux.org>
67
Roland McGrathe10dc512005-07-05 03:26:03 +000068 Introduce "-e trace=desc".
69 * defs.h (TRACE_DESC): New flag.
70 * syscall.c: Define TD macro before include of syscallent files
71 and undefine it afterwards.
72 (lookup_class): Recognize "desc" keyword.
73 * strace.1: Document "-e trace=desc".
74 * freebsd/i386/syscallent.h: Mark those syscalls which take a
75 file descriptor as an argument or return a file descriptor with
76 TD flag.
77 * linux/alpha/syscallent.h: Likewise.
78 * linux/hppa/syscallent.h: Likewise.
79 * linux/ia64/syscallent.h: Likewise.
80 * linux/mips/syscallent.h: Likewise.
81 * linux/powerpc/syscallent.h: Likewise.
82 * linux/s390/syscallent.h: Likewise.
83 * linux/s390x/syscallent.h: Likewise.
84 * linux/sh/syscallent.h: Likewise.
85 * linux/sh64/syscallent.h: Likewise.
86 * linux/sparc/syscallent.h: Likewise.
87 * linux/sparc64/syscallent2.h: Likewise.
88 * linux/sparc64/syscallent.h: Likewise.
89 * linux/syscallent.h: Likewise.
90 * linux/x86_64/syscallent.h: Likewise.
91 * sunos4/syscallent.h: Likewise.
92 * svr4/syscallent.h: Likewise.
93 Fixes RH#159400.
94
Roland McGrathfd583f62005-07-05 03:22:50 +000095 Remove TF flag from those syscalls which have no filename argument.
96 * freebsd/i386/syscallent.h: Remove TF flag from fstat, pread,
97 pwrite, fstat, sendfile.
98 * linux/alpha/syscallent.h: Remove TF flag from read, write,
99 pread, pwrite, sendfile.
100 * linux/hppa/syscallent.h: Remove TF flag from read, write,
101 pread, pwrite, fstat64, sendfile, ftruncate64.
102 * linux/ia64/syscallent.h: Remove TF flag from read, write,
103 sendfile, fstat, fadvise64.
104 * linux/mips/syscallent.h: Remove TF flag from read, write,
105 fstatfs, fstat, pread, pwrite, sendfile, ftruncate64, fstat64,
106 sendfile64, fadvise64, fstatfs64.
107 * linux/powerpc/syscallent.h: Remove TF flag from read, write,
108 fstat, pread, pwrite, sendfile, ftruncate64, fstat64, sendfile64,
109 fadvise64, fstatfs64, fadvise64_64.
110 * linux/s390/syscallent.h: Remove TF flag from pread, pwrite,
111 sendfile, ftruncate64, fstat64, sendfile64.
112 * linux/s390x/syscallent.h: Remove TF flag from pread, pwrite,
113 sendfile, sendfile64.
114 * linux/sh/syscallent.h: Remove TF flag from pread, pwrite,
115 sendfile, fstat64.
116 * linux/sh64/syscallent.h: Remove TF flag from pread, pwrite,
117 sendfile, ftruncate64, fstat64.
118 * linux/sparc/syscallent.h: Remove TF flag from sendfile, fstat64,
119 pread, pwrite, sendfile64.
120 * linux/sparc64/syscallent2.h: Likewise.
121 * linux/sparc64/syscallent.h: Likewise.
122 * linux/syscallent.h: Remove TF flag from pread, pwrite, sendfile,
123 ftruncate64, fstat64, sendfile64, fadvise64, fadvise64, fstatfs64,
124 fadvise64_64.
125 * linux/x86_64/syscallent.h: Remove TF flag from pread, pwrite,
126 sendfile, fadvise64_64.
127 * svr4/syscallent.h: Remove TF flag from pread, pwrite, ftruncate,
128 fstatvfs64, ftruncate64.
129 Fixes RH#159340.
130
Roland McGrath012ffdf2005-07-04 23:30:30 +00001312005-07-04 Roland McGrath <roland@redhat.com>
132
Roland McGrathbfacc262005-07-04 23:33:42 +0000133 * net.c (sockipv6options): Add IPV6_ADD_MEMBERSHIP,
134 IPV6_DROP_MEMBERSHIP, IPV6_ROUTER_ALERT.
135 From Ulrich Drepper <drepper@redhat.com>.
136 Fixes RH#162450.
137
Roland McGrath012ffdf2005-07-04 23:30:30 +0000138 * net.c (sockipoptions): Fix typos.
139 From Ulrich Drepper <drepper@redhat.com>.
140 Fixes RH#161578.
141
142 * util.c (printnum_int): New function, printnum with s/long/int/.
143 * defs.h: Declare it.
144 * net.c (printsockopt): Use it for int-sized option.
145 Fixes RH#162449.
146 Reported by Ulrich Drepper <drepper@redhat.com>.
147
Roland McGrath43cb21f2005-06-10 03:56:19 +00001482005-06-09 Roland McGrath <roland@redhat.com>
149
150 * configure.ac, NEWS: Version 4.5.12.
151 * debian/changelog, strace.spec: 4.5.12-1.
152
Roland McGrath59a611b2005-06-08 20:45:52 +00001532005-06-08 Dmitry V. Levin <ldv@altlinux.org>
154
155 Minor namespace cleanup.
156 * defs.h (string_quote): Remove declaration.
157 * file.c (openmodessol) [LINUXSPARC]: Make static.
158 (fileflags): Likewise.
159 (aclcmds, aclipc) [HAVE_SYS_ACL_H]: Likewise.
160 (direnttypes) [FREEBSD || LINUX]: Likewise.
161 (xattrflags): Likewise.
162 * process.c (unalignctl_string): Make static.
163 (setarg): Disable.
164 * syscall.c (subcalls_table): Make static.
165 (socket_map) [!(LINUX && (ALPHA || MIPS))]: Likewise.
166 (sparc_socket_decode): Make static, define for [SPARC || SPARC64] only.
167 (decode_subcall): Make static.
168 (syscall_fixup): Likewise.
169 (get_error): Likewise.
170 (syscall_enter): Likewise.
171 * util.c (tv_tv): Disable.
172 (getpc): Likewise.
173 (string_quote): Make static.
174 Fixes RH#159688.
175
Roland McGrathd40a3932005-06-08 18:06:27 +00001762005-05-12 Philippe De Muyter <phdm@macqel.be>
177
178 * util.c (getpc, printcall): Check #if defined(M68K), not M68k.
179 Enables `-i' on m68k machines.
180
Roland McGrath5d731702005-06-07 23:22:26 +00001812005-06-06 Roland McGrath <roland@redhat.com>
182
183 * process.c (struct_user_offsets) [X86_64]: Reorder elements so
184 matching works right.
185 Fixes RH#159787.
186
187 * linux/syscall.h (SYS_socket, SYS_bind, SYS_connect, SYS_listen)
188 (SYS_accept, SYS_getsockname, SYS_getpeername, SYS_socketpair)
189 (SYS_send, SYS_recv, SYS_sendto, SYS_recvfrom, SYS_shutdown)
190 (SYS_setsockopt, SYS_getsockopt, SYS_sendmsg, SYS_recvmsg)
191 (SYS_getsockname, SYS_semop, SYS_semgsub_et, SYS_semget, SYS_semctl)
192 (SYS_semtimedop, SYS_msgsnd, SYS_msgrcv, SYS_msgget)
193 (SYS_msgctl, SYS_shmat, SYS_shmdt, SYS_shmget)
194 (SYS_shmctl): Macros renamed to SYS_sub_*.
195 * syscall.c (dumpio): Match SYS_sub_* if defined instead of SYS_*.
196
197 * linux/syscall.h (SYS_waitid): Define if not defined.
198
199 * linux/syscallent.h: Fix pread/pwrite names to pread64/pwrite64.
200
201 * defs.h (struct sysent): New member `native_scno'.
202 (known_scno): Declare new function.
203 * linux/syscallent.h: Add new final field to interesting syscalls.
204 * syscall.c (known_scno): New function.
205 (dumpio, internal_syscall, syscall_fixup, trace_syscall): Use it.
206 * process.c (internal_fork, internal_exit): Likewise.
207 [IA64] (ARG_STACKSIZE, ARG_PTID, ARG_CTID, ARG_TLS): Likewise.
208 * strace.c (proc_open): Likewise.
209 * util.c [LINUX] (setbpt): Likewise.
210 * linux/syscall.h: Remove [!defined(X86_64)] from conditional
211 for defining SYS_socket_subcall et al.
212 * linux/syscallent.h: Likewise for #error check.
213 * syscall.c (trace_syscall): Likewise for SYS_{socketcall,ipc} cases.
214 Fixes RH#158934.
215
Roland McGrath6286f662005-06-03 02:40:43 +00002162005-06-02 Roland McGrath <roland@redhat.com>
217
218 * file.c (printstatfs64): Cast values to unsigned long long and use
219 %llu formats.
220 Fixes RH#158243.
221
Roland McGrathe8c6eec2005-06-01 18:56:03 +00002222005-05-31 Dmitry V. Levin <ldv@altlinux.org>
223
Roland McGrath712a6bf2005-06-01 19:22:30 +0000224 Deal with memory management issues.
225 * defs.h (tprint_iov): Update prototype.
226 * desc.c (sys_epoll_wait) [HAVE_SYS_EPOLL_H]: Do not allocate
227 epoll_event array of arbitrary size on the stack, to avoid
228 stack overflow.
229 * file.c (print_xattr_val): Check for integer overflow during
230 malloc size calculation, to avoid heap corruption.
231 * io.c (tprint_iov) [HAVE_SYS_UIO_H]: Check for integer overflow
232 during malloc size calculation, to avoid heap corruption.
233 Change iovec array handling to avoid heap memory allocation.
234 * mem.c (get_nodes) [LINUX]: Check for integer overflow during
235 size calculation and do not allocate array of arbitrary size on
236 the stack, to avoid stack overflow.
237 * net.c (printcmsghdr) [HAVE_SENDMSG]: Do not allocate array of
238 arbitrary size on the stack, to avoid stack overflow. Do not
239 trust cmsg.cmsg_len to avoid read beyond the end of allocated
240 object.
241 (printmsghdr) [HAVE_SENDMSG]: Update tprint_iov() usage.
242 * process.c (sys_setgroups): Check for integer overflow during
243 malloc size calculation, to avoid heap corruption. Change gid_t
244 array handling to avoid heap memory allocation.
245 (sys_getgroups): Likewise.
246 (sys_setgroups32) [LINUX]: Likewise.
247 (sys_getgroups32) [LINUX]: Likewise.
248 * stream.c (sys_poll) [HAVE_SYS_POLL_H]: Check for integer
249 overflow during malloc size calculation, to avoid heap corruption.
250 Change pollfd array handling to avoid heap memory allocation.
251 * system.c (sys_sysctl) [LINUX]: Check for integer overflow
252 during malloc size calculation, to avoid heap corruption.
253 * util.c (dumpiov) [HAVE_SYS_UIO_H]: Check for integer overflow
254 during malloc size calculation, to avoid heap corruption.
255 Fixes RH#159196.
256
Roland McGrathb422e0d2005-06-01 19:03:30 +0000257 * util.c (printxval): Change third argument from "char *" to
258 "const char *".
259 (printflags): Add third argument, "const char *", with similar
260 meaning to the third argument of printxval().
261 * defs.h (printxval): Change third argument from "char *" to
262 "const char *".
263 (printflags): Add third argument.
264 * bjm.c (sys_query_module) [LINUX]: Pass third argument to
265 printflags().
266 * desc.c (sys_fcntl): Likewise.
267 (sys_flock) [LOCK_SH]: Likewise.
268 (print_epoll_event) [HAVE_SYS_EPOLL_H]: Likewise.
269 * file.c (sys_open): Likewise.
270 (solaris_open) [LINUXSPARC]: Likewise.
271 (sys_access): Likewise.
272 (sys_chflags, sys_fchflags) [FREEBSD]: Likewise.
273 (realprintstat) [HAVE_LONG_LONG_OFF_T &&
274 HAVE_STRUCT_STAT_ST_FLAGS]: Likewise.
275 (printstat64) [HAVE_STAT64 &&
276 HAVE_STRUCT_STAT_ST_FLAGS]: Likewise.
277 (sys_setxattr, sys_fsetxattr): Likewise.
278 * ipc.c (sys_msgget, sys_msgsnd, sys_msgrcv, sys_semget,
279 sys_shmget, sys_shmat) [LINUX || SUNOS4 || FREEBSD]: Likewise.
280 (sys_mq_open) [LINUX]: Likewise.
281 (printmqattr) [HAVE_MQUEUE_H]: Likewise.
282 * mem.c (print_mmap) [!HAVE_LONG_LONG_OFF_T]: Likewise.
283 (sys_mmap64) [_LFS64_LARGEFILE || HAVE_LONG_LONG_OFF_T]: Likewise.
284 (sys_mprotect): Likewise.
285 (sys_mremap, sys_madvise, sys_mlockall) [LINUX]: Likewise.
286 (sys_msync) [MS_ASYNC]: Likewise.
287 (sys_mctl) [MC_SYNC]: Likewise.
288 (sys_remap_file_pages, sys_mbind, sys_get_mempolicy) [LINUX]:
289 Likewise.
290 * net.c (printmsghdr) [HAVE_STRUCT_MSGHDR_MSG_CONTROL]: Likewise.
291 (sys_send, sys_sendto): Likewise.
292 (sys_sendmsg) [HAVE_SENDMSG]: Likewise.
293 (sys_recv, sys_recvfrom): Likewise.
294 (sys_recvmsg) [HAVE_SENDMSG]: Likewise.
295 (printicmpfilter) [ICMP_FILTER]: Likewise.
296 * proc.c (proc_ioctl) [SVR4 && !HAVE_MP_PROCFS || FREEBSD]: Likewise.
297 * process.c (sys_clone) [LINUX]: Likewise.
298 (printwaitn): Likewise.
299 (sys_waitid) [SVR4 || LINUX]: Likewise.
300 * signal.c (sys_sigvec) [SUNOS4 || FREEBSD]: Likewise.
301 (sys_sigaction): Likewise.
302 (printcontext) [SVR4]: Likewise.
303 (print_stack_t) [LINUX) || FREEBSD]: Likewise.
304 (sys_rt_sigaction) [LINUX]: Likewise.
305 * sock.c (sock_ioctl) [LINUX]: Likewise.
306 * stream.c (sys_putmsg, sys_getmsg): Likewise.
307 (sys_putpmsg) [SYS_putpmsg]: Likewise.
308 (sys_getpmsg) [SYS_getpmsg]: Likewise.
309 (sys_poll): Likewise.
310 (print_transport_message) [TI_BIND]: Likewise.
311 (stream_ioctl): Likewise.
312 * system.c (sys_mount, sys_reboot): Likewise.
313 (sys_cacheflush) [LINUX && M68K]: Likewise.
314 (sys_capget, sys_capset) [SYS_capget]: Likewise.
315 * term.c (term_ioctl) [TIOCMGET]: Likewise.
316 * time.c (sys_clock_nanosleep, sys_timer_settime) [LINUX]:
317 Likewise.
318 Fixes RH#159310.
319
Roland McGrathe8c6eec2005-06-01 18:56:03 +0000320 * bjm.c (sys_query_module) [LINUX]: Unitize "out of memory"
321 errors reporting style.
322 * strace.c (rebuild_pollv) [USE_PROCFS]: Likewise.
323 * system.c (sys_capget, sys_capset) [SYS_capget]: Likewise.
324 * util.c (printstr): Likewise.
325 (dumpiov) [HAVE_SYS_UIO_H]: Likewise.
326 (fixvfork) [SUNOS4]: Likewise.
327 * desc.c (decode_select): Continue to decode syscall arguments
328 in case of OOM condition.
329 * file.c (sys_getdents): Likewise.
330 (sys_getdents64) [_LFS64_LARGEFILE]: Likewise.
331 (sys_getdirentries) [FREEBSD]: Likewise.
332 * mem.c (sys_mincore): Changed type of variables which deal with
333 malloc size from int to unsigned long.
Roland McGrathe35109a2005-06-08 18:03:12 +0000334 Fixes RH#159308.
Roland McGrathe8c6eec2005-06-01 18:56:03 +0000335
Roland McGratha6ef1a32005-06-01 18:57:27 +00003362005-05-22 Dmitry V. Levin <ldv@altlinux.org>
337
338 * bjm.c [LINUX]: Do not include <linux/linkage.h>. It is not
339 safe to include kernel headers, and this one is not used anyway.
340 Fixes RH#158488.
341
Roland McGrathe776e3e2005-05-26 23:21:13 +00003422005-05-26 Roland McGrath <roland@redhat.com>
343
344 * system.c (sys_sysctl): Check for errors accessing user pointers.
345 Use malloc instead of alloca in case size is insane.
346
Roland McGrath682291e2005-05-09 08:03:06 +00003472005-05-09 Roland McGrath <roland@redhat.com>
348
349 * configure.ac: Check for libaio.h.
350 * desc.c (sys_io_setup, sys_io_submit, sys_io_cancel,
351 sys_io_getevents, sys_io_destroy): New functions.
352 * linux/syscall.h: Declare them.
353 * linux/syscallent.h: Use those for io_* syscalls.
354 * linux/alpha/syscallent.h: Likewise.
355 * linux/hppa/syscallent.h: Likewise.
356 * linux/ia64/syscallent.h: Likewise.
357 * linux/mips/syscallent.h: Likewise.
358 * linux/powerpc/syscallent.h: Likewise.
359 * linux/s390/syscallent.h: Likewise.
360 * linux/s390x/syscallent.h: Likewise.
361 * linux/x86_64/syscallent.h: Likewise.
362 From Zach Brown <zach.brown@oracle.com>.
363 Fixes RH#155065.
364
365 * debian/control (Architecture): Add ppc64.
366 Fixes Debian bug #301089.
367
Roland McGrath05a017b2005-05-09 07:46:07 +00003682005-05-05 Anton Blanchard <anton@samba.org>
369
370 * process.c (ptrace_cmds): Add PTRACE_GETVRREGS and PTRACE_SETVRREGS
371 if defined.
372
3732005-05-09 Roland McGrath <roland@redhat.com>
374
375 * strace.c (main): Refuse negative -s argument value.
376 Fixes Debian bug #303256.
377
Roland McGrathf3b565b2005-05-09 07:40:41 +00003782005-04-25 Anton Blanchard <anton@samba.org>
379
380 * file.c (openmodes): Add O_NOATIME flag if defined.
381
3822005-04-05 Anton Blanchard <anton@samba.org>
383
384 * linux/powerpc/ioctlent.h: Regenerated.
385
386 * signal.c (signame): Don't try and dereference negative index.
387
388 * linux/powerpc/syscallent.h: Add debug_setcontext, vserver,
389 mbind, *_mempolicy, mq_*, sys_kexec_load, add_key, request_key,
390 keyctl, waitid, sys_semtimedop. Fix various other syscalls.
391
392 * ipc.c (shm_resource_flags): New variable, table has SHM_HUGETLB
393 but not IPC_NOWAIT, which have the same value.
394 (sys_shmget): Use that instead of resource_flags.
395
Roland McGratha3734a92005-03-22 23:13:24 +00003962005-03-22 Roland McGrath <roland@redhat.com>
397
Roland McGrathe1f1e572005-03-23 03:19:02 +0000398 * desc.c (decode_select): Increase local buffer size.
399 Fixes RH#151570.
400
Roland McGratha3734a92005-03-22 23:13:24 +0000401 * configure.ac, NEWS: Version 4.5.11.
402 * debian/changelog, strace.spec: 4.5.11-1.
403
404 * linux/arm/syscallent.h: Fix 113 entry (syscall, not vm86old).
405
Roland McGrath3181c512005-03-15 02:40:23 +00004062005-03-14 Roland McGrath <roland@redhat.com>
407
408 * configure.ac, NEWS: Version 4.5.10.
409 * debian/changelog, strace.spec: 4.5.10-1.
410
Roland McGrath0495c932005-03-15 02:17:23 +00004112005-02-26 GOTO Masanori <gotom@debian.or.jp>
412
413 * linux/alpha/syscallent.h: Fix the reversed order of lstat64 and
414 fstat64. Clean up osf_nrecvmsg and osf_ngetsockname.
415
Roland McGrath391a4e72005-03-15 02:16:21 +00004162005-02-28 Andreas Schwab <schwab@suse.de>
417
418 * syscall.c (getrval2): Move #ifdef IA64 inside #ifdef LINUX.
419
4202005-03-14 Roland McGrath <roland@redhat.com>
421
422 * linux/mips/syscallent.h: Update various calls.
423 From Thiemo Seufer <ths@networkno.de>.
424 Fixes Debian bug #256684.
425
426 * debian/control (Architecture): Add s390.
427 Fixes Debian bug #294172.
428
Roland McGrathbfb49e52005-03-06 22:24:52 +00004292005-03-06 Roland McGrath <roland@redhat.com>
430
431 * strace.c (trace) [PTRACE_GETSIGINFO]: Fetch siginfo_t for SIGSEGV
432 and SIGBUS signals, use si_addr in output.
433
Roland McGrath4859f6c2005-03-01 23:03:11 +00004342005-03-01 Roland McGrath <roland@redhat.com>
435
436 * file.c (print_xattr_val): Add a cast.
437
Roland McGrath854694b2005-02-06 01:16:47 +00004382005-02-05 Roland McGrath <roland@redhat.com>
439
Roland McGrathb0a3d4e2005-02-06 01:55:16 +0000440 * desc.c (decode_select): Calculate size of passed fd_set vectors and
441 copy in the user's size rather than the standard sizeof(fd_set).
Roland McGrath391a4e72005-03-15 02:16:21 +0000442 Fixes Debian bug #65654, #284290.
Roland McGrathb0a3d4e2005-02-06 01:55:16 +0000443
444 * util.c (printpath, printpathn): Print NULL and don't try any fetch
445 when ADDR is zero.
446 Fixes Debian bug #63093.
447
Roland McGrath854694b2005-02-06 01:16:47 +0000448 * debian/control (Build-Depends): Fix for s390 and sparc.
449 From Bastian Blank <waldi@debian.org>.
450 Fixes Debian bug #293564.
451
4522004-12-19 Dmitry V. Levin <ldv@altlinux.org>
453
454 * strace.c (main) [!USE_PROCFS]: In child process, raise SIGSTOP
455 right before execv() call. Remove fake_execve() call.
456 * defs.h (fake_execve): Remove unused declaration.
457 * process.c (fake_execve): Remove unused function.
458 Fixes RH#143365.
459
Roland McGrath55f23e72005-02-04 09:29:11 +00004602005-02-04 Roland McGrath <roland@redhat.com>
461
462 * configure.ac, NEWS: Version 4.5.9.
Roland McGrath0c6c17b2005-02-04 09:54:16 +0000463 * debian/changelog, strace.spec: 4.5.9-2.
Roland McGrath55f23e72005-02-04 09:29:11 +0000464
Roland McGrath1e834482005-02-04 09:50:24 +0000465 * file.c (O_LARGEFILE): Omit when #undef'd because it was zero.
466
Roland McGrath94098ef2005-02-02 20:25:36 +00004672005-02-02 Roland McGrath <roland@redhat.com>
468
Roland McGrath026bdab2005-02-03 03:19:43 +0000469 * debian/control: Add strace-udeb package for installer debugging.
470 * debian/rules (binary-arch): Build it.
471 From Joshua Kwan <joshk@triplehelix.org>.
472 Fixes Debian bug #268294.
473
Roland McGrathd08b2f02005-02-02 22:11:37 +0000474 * file.c (openmodes) [O_LARGEFILE] [O_LARGEFILE == 0]: Redefine to
475 known values for Linux.
476
Roland McGrath84219e12005-02-02 20:55:27 +0000477 * util.c (printcall): Print 16 ?s when long is 8 bytes.
478 Fixes RH#146932.
479
Roland McGrath3cad4a62005-02-02 20:32:37 +0000480 * linux/sparc/syscall.h: Declare sys_epoll_create, sys_epoll_ctl,
481 sys_epoll_wait.
482 * linux/sparc64/syscall.h: Just #include "../sparc/syscall.h" here.
483 * ioctl.c (nioctlents2): Add const to type.
484 Fixes Debian bug #278449.
485
Roland McGrath94098ef2005-02-02 20:25:36 +0000486 * sock.c (iffflags): New variable, table of IFF_* values.
487 (print_addr): New function.
488 (sock_ioctl): Handle SIOCGIFADDR, SIOCGIFDSTADDR, SIOCGIFBRDADDR,
489 SIOCGIFNETMASK, SIOCGIFFLAGS, SIOCGIFMETRIC, SIOCGIFMTU, SIOCGIFSLAVE,
490 SIOCGIFHWADDR. Use print_addr for SIOCGIFCONF, SIOCGIFNAME, and
491 SIOCGIFINDEX, and fix their output.
492 From Ulrich Drepper <drepper@redhat.com>.
493 Fixes RH#138223.
Roland McGrath1967a132005-02-02 20:45:37 +0000494 Fixes Debian bug #192164.
Roland McGrath94098ef2005-02-02 20:25:36 +0000495
Roland McGrathac6b7bb2005-02-02 04:42:56 +00004962004-12-20 Dmitry V. Levin <ldv@altlinux.org>
497
Roland McGrath9d721f22005-02-02 04:45:09 +0000498 * configure.ac: Use AC_GNU_SOURCE macro instead of changing CFLAGS.
499 * defs.h [HAVE_CONFIG_H]: Include config.h first.
500 * strace.c: Include "defs.h" first.
501 Fixes RH#143370.
502
Roland McGrathac6b7bb2005-02-02 04:42:56 +0000503 * syscall.c (call_summary): Fix potential NULL dereference.
504 Fixes RH#143369.
505
Roland McGrathdd9efd82005-02-02 04:40:36 +00005062004-12-19 Dmitry V. Levin <ldv@altlinux.org>
507
508 * syscall.c (qual_signal): Check bounds for numeric signal names.
509 Fix parser of symbolic signal names.
510 Fix return code, as required by qualify() function.
511 * syscall.c (qual_desc): Check bounds for descriptor number.
512 * syscall.c (qual_syscall): Correct return code, to be consistent
513 with qualify() and other qual_* functions.
514 Fixes RH#143362.
515
Roland McGrath1b3ca102005-02-02 02:49:03 +00005162005-02-01 Roland McGrath <roland@redhat.com>
517
Roland McGrath0dfeed62005-02-02 04:36:38 +0000518 * system.c [LINUX] (MS_MANDLOCK, MS_NOATIME, MS_NODIRATIME, MS_BIND,
519 MS_MOVE, MS_REC, MS_VERBOSE, MS_POSIXACL, MS_ACTIVE, MS_NOUSER):
520 New macros.
521 [LINUX] (mount_flags): Add them.
522 [LINUX] (sys_mount): If any of (MS_BIND|MS_MOVE|MS_REMOUNT) bits are
523 set in the flags argument, don't try to fetch the filesystem string.
524 Fixes RH#141932.
525
Roland McGrathdc26fff2005-02-02 04:19:19 +0000526 * config.guess: Update from canonical version, timestamp 2004-11-12.
527 * config.sub: Likewise, timestamp 2004-11-30.
528
Roland McGrathb2ba50b2005-02-02 04:16:58 +0000529 * process.c [LINUX] [X86_64] (sys_arch_prctl): New function.
530 * linux/syscall.h: Declare it.
531 * linux/x86_64/syscallent.h: Use it.
532 Part of RH#142667.
533
534 * process.c (sys_sched_setscheduler): Use %#lx format for bad pointer.
535 (sys_sched_getparam, sys_sched_setparam): Likewise.
536 Part of RH#142667.
537
538 * signal.c [HAVE_SIGACTION] [LINUX && X86_64] (SA_RESTORER): Define
539 here too.
540 Part of RH#142667.
541
542 * linux/syscallent.h: Use sys_mincore instead of printargs.
543 * linux/x86_64/syscallent.h: Likewise. Also use sys_getrlimit,
544 sys_semtimedop, sys_umount2.
545 Part of RH#142667.
546
Roland McGrath28eace82005-02-02 03:51:22 +0000547 * syscall.c (qual_signal): Fix inverted return value and bogus
548 argument to qualify_one in the named case.
549
Roland McGrath5f221c32005-02-02 03:38:49 +0000550 * file.c (print_xattr_val): Don't use auto array sized by syscall
551 argument. Use malloc instead, so it can fail for insane values.
552 Fixes Debian bug #283704.
553
Roland McGrath53962332005-02-02 03:11:43 +0000554 * net.c (sys_getsockopt): Fix a format %ld -> %d.
555
556 * linux/syscall.h [IA64] (SYS_semtimedop): #undef it.
557
Roland McGrathbc484bd2005-02-02 03:07:24 +0000558 * syscall.c (syscall_enter) [X86_64]: Fix 32-bit argument register map
559 not to double the middle entry!
560 Fixes RH#146093.
561
Roland McGrath6722dcf2005-02-02 02:54:35 +0000562 * linux/x86_64/syscallent.h: Fix exit_group entry.
563
Roland McGrath1b3ca102005-02-02 02:49:03 +0000564 * util.c (getpc) [S390 || S390X]: Implement it.
565 Patch by David Wilder <wilder@us.ibm.com>.
566
567 * linux/ia64/syscallent.h: Add fadvise64, fstatfs64, statfs64, mbind,
568 [gs]et_mempolicy, mq_*, sys_kexec_load, vserver, and waitid.
569 Fixes RH#146245.
570
5712005-01-22 Andreas Schwab <schwab@suse.de>
572
573 * net.c (sys_getsockopt): Change type of len to int.
574
Roland McGrath914f3aa2004-10-19 23:00:14 +00005752004-10-19 Roland McGrath <roland@redhat.com>
576
Roland McGrathb0756892004-10-20 02:17:58 +0000577 * configure.ac, NEWS: Version 4.5.8.
578 * debian/changelog, strace.spec: 4.5.8-1.
579
Roland McGrathbe4eeb92004-10-20 02:24:28 +0000580 * file.c (sys_fadvise64): Conditionalize just on [LINUX].
581
Roland McGrathb0756892004-10-20 02:17:58 +0000582 * configure.ac: Check for sys/epoll.h.
583 * desc.c: Protect #include <sys/epoll.h> with [HAVE_SYS_EPOLL_H].
584 (epollctls, epollevents): Protect each entry with #ifdef on its macro.
585
Roland McGrathe26a3782004-10-20 02:04:19 +0000586 * strace.c (handle_group_exit): Don't detach leader that wasn't
587 TCB_ATTACHED. Instead mark it with TCB_GROUP_EXITING.
588 Remove droptcb loop at end, no longer required since 2.6 reports each
589 thread death.
590 Fixes RH#135254.
591
Roland McGrath712bc7a2004-10-20 01:00:45 +0000592 * strace.c (trace): Use handle_group_exit for non-TCB_ATTACHED child
593 taking signal when it has nclone_threads > 0.
594
Roland McGrath712bc7a2004-10-20 01:00:45 +0000595 * strace.c (handle_group_exit, trace): Mark leader with
596 TCB_GROUP_EXITING and don't be surprised at child deaths when their
597 leader has it set.
598 Fixes RH#132150.
599
Roland McGrath223a3ff2004-10-19 23:33:53 +0000600 * process.c (WCOREFLAG): Define if not defined.
601 (W_STOPCODE, W_EXITCODE): Likewise.
602 Reported by Marty Leisner <mleisner@eng.mc.xerox.com>.
603
604 * sock.c [! LINUX]: Include <sys/socket.h> before <sys/sockio.h>.
605 Reported by Marty Leisner <mleisner@eng.mc.xerox.com>.
606
607 * debian/rules: Make strace64.1.gz symlink to strace.1.gz instead of
608 strace64.1 to strace.1, which doesn't exist.
609 Fixes Debian bug #269220.
610
6112004-09-05 Phil Blundell <pb@nexus.co.uk>
612
613 * linux/arm/syscallent.h: New file.
614
6152004-10-19 Roland McGrath <roland@redhat.com>
616
617 * debian/rules (DEB_BUILD_GNU_TYPE, CONFIG_OPTS): New variables.
618 [$(DEB_HOST_GNU_TYPE) == s390-linux] (build64, HOST64, CC64): Set them.
619 (build/Makefile): Use $(CONFIG_OPTS).
620 (build64/Makefile): Pass --host as well as --build.
621 From Bastian Blank <waldi@debian.org>.
622 Fixes Debian bug #271500.
623
624 * linux/hppa/syscallent.h: Update for 2.6.9 syscalls.
625 From Randolph Chung <tausq@debian.org>
626 Fixes Debian bug #273887.
627
Roland McGrath914f3aa2004-10-19 23:00:14 +0000628 * file.c (sys_llseek): Revert last change.
629
Roland McGrath223a3ff2004-10-19 23:33:53 +00006302004-09-14 Richard Henderson <rth@twiddle.net>
631
632 * linux/alpha/syscallent.h: Add tgkill, *stat64, vserver, mbind,
633 [gs]et_mempolicy, mq_*, waitid.
634
Roland McGrath51f9ac02004-10-07 18:51:22 +00006352004-10-07 Roland McGrath <roland@redhat.com>
636
Roland McGrath0aa53f62004-10-07 19:09:23 +0000637 * file.c (sys_llssek, sys_readahead, sys_fadvise64, sys_fadvise64_64):
638 Use LONG_LONG macro.
639 * io.c (sys_pread, sys_pwrite, sys_sendfile): Likewise.
640
Roland McGrath61b324b2004-10-07 18:59:13 +0000641 * linux/x86_64/syscallent.h: Fix botched table entries.
642 From Ulrich Drepper <drepper@redhat.com>.
643
Roland McGrathaa08d712004-10-07 18:53:17 +0000644 * mem.c [LINUX] (sys_mbind, sys_set_mempolicy, sys_get_mempolicy):
645 New functions.
646 * linux/syscall.h: Declare them.
647 * linux/x86_64/syscallent.h: Likewise.
Roland McGrath61b324b2004-10-07 18:59:13 +0000648 From Ulrich Drepper <drepper@redhat.com>.
649
Roland McGrathaa08d712004-10-07 18:53:17 +0000650 * linux/syscallent.h: Handle mbind, set_mempolicy, get_mempolicy.
651 From Ulrich Drepper <drepper@redhat.com>.
652
Roland McGrath51f9ac02004-10-07 18:51:22 +0000653 * file.c [LINUX && (I386 || X86_64)] (sys_fadvise64, sys_fadvise64_64):
654 New functions.
655 * linux/syscall.h: Declare them.
656 * linux/syscallent.h: Handle fadvise64 and fadvise64_64 using those.
Roland McGrathaa08d712004-10-07 18:53:17 +0000657 * linux/x86_64/syscallent.h: Likewise.
Roland McGrath51f9ac02004-10-07 18:51:22 +0000658 From Ulrich Drepper <drepper@redhat.com>.
659
Roland McGrath2af128b2004-10-06 22:32:04 +00006602004-09-13 Dmitry V. Levin <ldv@altlinux.org>
661
662 * linux/ioctlsort.c (main): Omit duplicate lines
663 (with same name and code) from output.
664 * linux/ioctlent.sh: Build the list of ioctls defined in
665 scsi/sg.h (0x22..), scsi/scsi.h and scsi/scsi_ioctl.h (0x53..),
666 as suggested by Peter Jones <pjones@redhat.com>
667 * linux/ioctlent.h: Regenerated.
668 Fixes RH#129808.
669
Roland McGrath79367f82004-10-06 22:28:17 +00006702004-09-13 Ulrich Drepper <drepper@redhat.com>
671 Dmitry V. Levin <ldv@altlinux.org>
672
673 * time.c [LINUX] (print_rtc): New function, for printing rtc_time
674 structure.
675 [LINUX] (rtc_ioctl): New function, for parsing RTC_* ioctls.
676 * ioctl.c [LINUX] (ioctl_decode): Call rtc_ioctl.
677 * defs.h [LINUX]: Declare rtc_ioctl.
678 Fixes RH#58606.
679
Roland McGrath288a3a02004-10-06 22:12:09 +00006802004-10-06 Roland McGrath <roland@redhat.com>
681
Roland McGrathd2553bb2004-10-06 22:23:55 +0000682 * desc.c [LINUX] (sys_epoll_create, sys_epoll_ctl, sys_epoll_wait):
683 New functions.
684 * linux/syscall.h: Declare them.
685 * linux/syscallent.h: Use those for epoll_* syscalls.
686 * linux/alpha/syscallent.h: Likewise.
687 * linux/hppa/syscallent.h: Likewise.
688 * linux/ia64/syscallent.h: Likewise.
689 * linux/powerpc/syscallent.h: Likewise.
690 * linux/s390/syscallent.h: Likewise.
691 * linux/s390x/syscallent.h: Likewise.
692 * linux/sparc/syscallent.h: Likewise.
693 * linux/sparc64/syscallent.h: Likewise.
694 * linux/sparc64/syscallent2.h: Likewise.
695 * linux/x86_64/syscallent.h: Likewise.
696 From Ulrich Drepper <drepper@redhat.com>.
697 Fixes RH#134463.
698
Roland McGrath2803d102004-10-06 22:15:18 +0000699 * resource.c (resources): Add RLIMIT_LOCKS, RLIMIT_SIGPENDING,
700 and RLIMIT_MSGQUEUE, if defined.
701 From Ulrich Drepper <drepper@redhat.com>.
702 Fixes RH#133594.
703
Roland McGrath288a3a02004-10-06 22:12:09 +0000704 * net.c [HAVE_SENDMSG] (printcmsghdr): New function.
705 (printmsghdr): Use it.
Roland McGrath2803d102004-10-06 22:15:18 +0000706 From Ulrich Drepper <drepper@redhat.com>.
707 Fixes RH#131689.
Roland McGrath288a3a02004-10-06 22:12:09 +0000708
709 * file.c (sprintmode): Add const to return type.
710 (sprintfstype): Likewise.
711 * signal.c (printsiginfo): Add a const.
712
Roland McGrath4455b1d2004-10-06 22:03:22 +00007132004-09-15 Roland McGrath <roland@redhat.com>
714
715 * linux/x86_64/syscallent.h: Use sys_waitid.
716
717 * linux/syscallent.h: waitid takes 5 arguments, and is in TP category.
718 * process.c (sys_waitid): Handle fifth argument (struct rusage *).
719
Roland McGrath813b8af2004-09-11 08:13:27 +00007202004-09-11 Roland McGrath <roland@redhat.com>
721
722 * time.c (sys_clock_nanosleep): Print zero flags arg correctly.
723 (sys_timer_settime): Likewise.
724 (printsigevent): Print signals by name for SIGEV_SIGNAL.
725 (sys_timer_create): Print clock ID symbolically.
726 From Ulrich Drepper <drepper@redhat.com>.
727 Fixes RH#131420.
728
Michal Ludvig51d1ebc2004-09-07 14:06:03 +00007292004-09-07 Michal Ludvig <mludvig@suse.cz>
730
731 * defs.h (nioctlents1, nsignals2): Fix typos in decls.
732
Roland McGrath4ee6e692004-09-04 03:39:26 +00007332004-09-03 Roland McGrath <roland@redhat.com>
734
Roland McGrathce361382004-09-04 04:20:49 +0000735 * syscall.c (qual_options): Add const to defn.
736 Update all uses.
737 (call_count, error_count, tv_count): Variables removed.
738 (struct call_counts, counts): New type and variable.
739 Update all users of the old three to use the new array of structs.
740 (trace_syscall): Allocate counts on first use.
741 (sorted_count): Variable removed.
742 (call_summary): Allocate locally.
743
Roland McGrath77019f72004-09-04 03:53:18 +0000744 * syscall.c (sysent0, sysent1, sysent2, sysent): Add const to defn.
745 (nsyscalls0, nsyscalls1, nsyscalls2): Likewise.
746 (errnoent0, errnoent1, errnoent2, errnoent): Likewise.
747 (nerrnos0, nerrnos1, nerrnos2): Likewise.
748 * signal.c (signalent0, signalent1, signalent2): Likewise.
749 (nsignals0, nsignals1, nsignals2): Likewise.
750 (signame): LIkewise.
751 * ioctl.c (ioctlent0, ioctlent1, ioctlent2): Likewise.
752 (nioctlents0, nioctlents1, nioctlents2): Likewise.
753 (ioctl_lookup, ioctl_next_match): Likewise.
754 * defs.h: Update decls.
755 * io.c (sys_ioctl): Update users.
756
Roland McGrath4ee6e692004-09-04 03:39:26 +0000757 * util.c (xlookup, printxval, addflags, printflags): Use const for
758 struct xlat * argument.
759 * defs.h (xlookup, printxval, addflags, printflags): Update decls.
760 * bjm.c: Add const to all struct xlat defns.
761 * desc.c: Likewise.
762 * file.c: Likewise.
763 * ipc.c: Likewise.
764 * mem.c: Likewise.
765 * net.c: Likewise.
766 * proc.c: Likewise.
767 * process.c: Likewise.
768 * resource.c: Likewise.
769 * signal.c: Likewise.
770 * sock.c: Likewise.
771 * stream.c: Likewise.
772 * system.c: Likewise.
773 * term.c: Likewise.
774 * time.c: Likewise.
775 * util.c: Likewise.
776
Roland McGrathb036f582004-09-01 19:39:59 +00007772004-09-01 Roland McGrath <roland@redhat.com>
778
779 * linux/x86_64/syscallent.h: Add new entries for timer_*, clock_*, and
780 mq_* syscalls, and names only for new calls up to 252.
781 * linux/syscallent.h: Add waitid.
782 * linux/x86_64/syscallent.h: Likewise.
783 * linux/syscall.h: Declare sys_waitid.
784
785 * process.c (internal_wait): Take second arg giving index of flags
786 argument.
787 * defs.h: Update prototype.
788 * syscall.c (internal_syscall): Update caller.
789 Also use internal_wait for SYS_waitid.
790 * process.c (sys_waitid): Define for [LINUX] as well.
791 Don't tweak TCB_SUSPENDED--internal_wait does that.
792 (waitid_types): Conditionalize use of nonstandard P_* macros.
793
Roland McGrath1651c1c2004-08-31 07:16:21 +00007942004-08-31 Roland McGrath <roland@redhat.com>
795
Roland McGrath0ef93b72004-08-31 08:17:26 +0000796 * configure.ac, NEWS: Version 4.5.7.
Roland McGrathb036f582004-09-01 19:39:59 +0000797 * debian/changelog: 4.5.7-1.
798 * strace.spec: 4.5.7-2.
Roland McGrath0ef93b72004-08-31 08:17:26 +0000799
Roland McGrathf5fcbc12004-08-31 08:41:59 +0000800 * debian/rules: Rewrite sparc64 change of 2004-07-12.
801 Always do each build in a separate build directory.
Roland McGrath0ef93b72004-08-31 08:17:26 +0000802 Fixes Debian bug #254728.
803
Roland McGrathf5fcbc12004-08-31 08:41:59 +0000804 * time.c (clocknames): Use #ifdef around CLOCK_* uses.
805
Roland McGrathdc025fa2004-08-31 07:48:03 +0000806 * strace.1: Say that -c shows system CPU time, not real time.
807 Fixes Debian bug #254438.
808
809 * syscall.c (dumpio): Match pread and pwrite system calls too.
810 Fixes Debian bug #239947.
811
Roland McGrath1651c1c2004-08-31 07:16:21 +0000812 * net.c (sockoptions): Add all SO_* macros known in Linux 2.6.9.
813 Fixes Debian bug #171653.
814
Roland McGrath8e593d22004-08-31 07:03:43 +00008152004-07-12 Dmitry V. Levin <ldv@altlinux.org>
816
817 * signal.c [LINUX] (parse_sigset_t): Fix hex strings parser.
818 Fixes RH#128091.
819
Roland McGratha0b9ef12004-08-31 06:30:51 +00008202004-08-30 Roland McGrath <roland@redhat.com>
821
Roland McGrath0a053252004-08-31 07:02:00 +0000822 * strace.c (main): Don't call fake_execve under -c.
823 From Ulrich Drepper <drepper@redhat.com>.
824 Fixes RH#129166.
825
826 * net.c (sockipoptions): Add some options.
827 [SOL_IPV6] (sockipv6options): New variable.
828 (sys_getsockopt, printsockopt): Use it for SOL_IPV6 level.
829 From Ulrich Drepper <drepper@redhat.com>.
830 Fixes RH#128391.
831
Roland McGrath7fbbf022004-08-31 06:52:49 +0000832 * time.c (clocknames): New variable, symbolic names for clock_t.
833 (sys_clock_settime, sys_clock_gettime, sys_clock_nanosleep): Use it.
834 From Ulrich Drepper <drepper@redhat.com>.
835 Fixes RH#129378.
836
Roland McGrath3a71f192004-08-31 06:49:09 +0000837 * system.c (personality_options): Hard-code values here.
838 Don't #include <linux/personality.h> at all.
Roland McGrath1651c1c2004-08-31 07:16:21 +0000839 Fixes RH#130965 and Debian bug #40588.
Roland McGrath3a71f192004-08-31 06:49:09 +0000840
Roland McGratha0b9ef12004-08-31 06:30:51 +0000841 * file.c (print_xattr_val): New function to show attribute values.
842 (sys_setxattr, sys_fsetxattr, sys_getxattr, sys_fgetxattr): Use it.
843 From Ulrich Drepper <drepper@redhat.com>.
844 Fixes RH#131177.
845
Roland McGrath90a5a942004-07-12 07:04:55 +00008462004-07-12 Roland McGrath <roland@redhat.com>
847
Roland McGrathd51619a2004-07-12 07:56:00 +0000848 * configure.ac, NEWS: Version 4.5.6.
849 * strace.spec, debian/changelog: 4.5.6-1.
850
Roland McGrath05cf2952004-07-12 07:54:09 +0000851 * Makefile.am (EXTRA_DIST): Add linux/sparc64 files.
852
853 * debian/rules: On sparc-linux, build strace64 as well.
854 From Ben Collins <bcollins@debian.org>.
855 Fixes Debian bug #254728.
856
8572004-07-07 David S. Miller <davem@nuts.davemloft.net>
858
859 * linux/sparc/syscallent.h: Sync with reality.
860 * linux/sparc/syscall.h (sys_sendfile64, sys_futex, sys_gettid,
861 sys_sched_setaffinity, sys_sched_getaffinity, sys_setxattr,
862 sys_lsetxattr, sys_fsetxattr, sys_getxattr, sys_lgetxattr,
863 sys_fgetxattr, sys_listxattr, sys_llistxattr, sys_flistxattr,
864 sys_removexattr, sys_lremovexattr, sys_fremovexattr,
865 sys_remap_file_pages, sys_readahead, sys_tgkill, sys_statfs64,
866 sys_fstatfs64, sys_clock_settime, sys_clock_gettime,
867 sys_clock_getres, sys_clock_nanosleep, sys_timer_create,
868 sys_timer_settime, sys_timer_gettime): New declarations.
869 * linux/sparc64/dummy2.h, linux/sparc64/syscallent2.h,
870 linux/sparc64/syscall.h, linux/sparc64/errnoent.h,
871 linux/sparc64/errnoent1.h, linux/sparc64/errnoent2.h,
872 linux/sparc64/ioctlent.h, linux/sparc64/ioctlent1.h,
873 linux/sparc64/ioctlent2.h, linux/sparc64/signalent.h,
874 linux/sparc64/signalent.h, linux/sparc64/signalent.h,
875 linux/sparc64/signalent1.h, linux/sparc64/signalent2.h,
876 linux/sparc64/syscall1.h, linux/sparc64/syscallent.h,
877 linux/sparc64/syscallent1.h: New files.
878 * defs.h (LINUXSPARC): Define also when SPARC64.
879 (LINUX && SPARC64): Set SUPPORTED_PERSONALITIES to 3.
880 Ignore SIGTRAP after execve by defining TCB_WAITEXECVE.
881 Define possibly missing __NR_exit_group. Declare getrval2.
882 * configure.ac (sparc64): New architecture case.
883 * file.c (stat_sparc64): New structure.
884 (printstat_sparc64): New output routine for that.
885 (printstat): Call it, if personality is 2.
886 (printstat64): Likewise.
887 * util.c: Conditionalize ptrace defines on LINUXSPARC
888 not LINUX && SPARC.
889 (SPARC64 && LINUX): Define r_pc to r_tpc, and PTRACE_FOOREGS
890 to PTRACE_FOOREGS64 so that more sparc code can be shared
891 between 64-bit and 32-bit.
892 (_hack_syscall5): Correct trap number when SPARC64.
893 (PTRACE_WRITE{TEXT,DATA}): Add SPARC64 to ifdef guard.
894 (getpc): Handle SPARC64 && LINUX.
895 (printcall): Likewise.
896 (arg fetching/setting): Use same code for SPARC64 LINUX
897 as for SPARC.
898 (setbpt): Handle SPARC64 && LINUX.
899 (clearbpt): Likewise.
900 * signal.c: Conditionalize ptrace defines on SPARC and
901 SPARC64.
902 (SPARC64 && LINUX): Define r_pc to r_tpc, and PTRACE_FOOREGS
903 to PTRACE_FOOREGS64 so that more sparc code can be shared
904 between 64-bit and 32-bit.
905 (m_siginfo): Use same definition on SPARC64 as SPARC.
906 (sys_sigreturn): Handle LINUX && SPARC64.
907 * syscall.c: Conditionalize ptrace defines on SPARC and
908 SPARC64.
909 (SPARC64 && LINUX): Define r_pc to r_tpc, and PTRACE_FOOREGS
910 to PTRACE_FOOREGS64 so that more sparc code can be shared
911 between 64-bit and 32-bit.
912 (getscno): Use same static state on SPARC64 as SPARC,
913 and add SPARC64 handling.
914 (get_error): Handle LINUX && SPARC64.
915 (force_result): Likewise.
916 (syscall_enter): Likewise.
917 (trace_syscall): Handle sys_socketcall and sys_ipc on SPARC64
918 just like SPARC.
919 (getrval2): Handle LINUX && SPARC64.
920 * process.c: Conditionalize ptrace defines on SPARC and
921 SPARC64.
922 (SPARC64 && LINUX): Define r_pc to r_tpc, and PTRACE_FOOREGS
923 to PTRACE_FOOREGS64 so that more sparc code can be shared
924 between 64-bit and 32-bit.
925 (change_syscall): Handle LINUX && SPARC64.
926 (struct_user_offsets): Ifdef out those which do not exist
927 on SPARC64.
928 * net.c (sys_pipe): Handle LINUX && SPARC64.
929 * ioctl.c: Fix initializer typo for nioctlents2, was
930 nioctlents1 by accident.
931
9322004-06-28 Andreas Schwab <schwab@suse.de>
933
934 * process.c (internal_exec): Move TCB_WAITEXECVE handling here.
935 (sys_execve): Remove it here.
936
9372004-07-12 Roland McGrath <roland@redhat.com>
938
939 * Makefile.am (EXTRA_DIST): Add linux/sh64/syscallent.h.
940
941 * debian/control (Section): Move to utils, matching Debian override.
942
Roland McGrath23e86d62004-07-12 07:13:12 +0000943 * net.c (addrfams): Make variable global.
944 * sock.c (sock_ioctl): Decode the arguments for SIOCGIFNAME,
945 SIOCGIFINDEX, and SIOCGIFCONF.
946 From Ulrich Drepper <drepper@redhat.com>.
947 Fixes RH#126917.
948
Roland McGrath90a5a942004-07-12 07:04:55 +0000949 * linux/ioctlsort.c: Add some #includes.
950 [POWERPC]: Kludge out high bits.
951 * linux/ia64/ioctlent.h: Regenerated using RHEL3 headers.
952 * linux/powerpc/ioctlent.h: Likewise.
953
Roland McGrath16110b22004-07-12 05:45:26 +00009542004-07-11 Roland McGrath <roland@redhat.com>
955
Roland McGrath90a5a942004-07-12 07:04:55 +0000956 * linux/ioctlent.sh: Replace asm with $asm in all places.
957
Roland McGrath16110b22004-07-12 05:45:26 +0000958 * configure.ac: Add I386 as AM_CONDITIONAL.
959 * Makefile.am [LINUX]: Add maintainer-mode rules to regenerate
960 the ioctlent.h file.
961
Roland McGrath533e52a2004-07-08 19:00:25 +00009622004-07-08 Roland McGrath <roland@redhat.com>
963
964 * resource.c (sys_quotactl): Truncate first argument to 32 bits, since
965 that's what the kernel will do.
966
9672004-07-07 Roland McGrath <roland@redhat.com>
968
969 * linux/ioctlent.sh: Take optional second argument to use as directory
970 name in place of `asm'.
971
Roland McGrath2c72f3c2004-06-28 05:24:40 +00009722004-06-27 Roland McGrath <roland@redhat.com>
973
974 * configure.ac, NEWS: Version 4.5.5.
975 * strace.spec, debian/changelog: 4.5.5-1.
976
Roland McGratha2dec922004-06-23 01:40:57 +00009772004-06-22 Roland McGrath <roland@redhat.com>
978
979 * syscall.c (syscall_fixup) [LINUX && X86_64]: For 32-bit process,
980 sign extend the low 32 bits of RAX to 64 bits.
Roland McGrath7a391df2004-06-23 01:41:30 +0000981 Fixes RH#126547.
Roland McGratha2dec922004-06-23 01:40:57 +0000982
983 * syscall.c (force_result): [LINUX && X86_64]: Fix RAX*4 -> RAX*8.
984
Roland McGrath0c542de2004-06-04 02:25:12 +00009852004-06-03 Roland McGrath <roland@redhat.com>
986
Roland McGrath66a77f12004-06-04 02:36:03 +0000987 * configure.ac, NEWS: Version 4.5.4.
988 * strace.spec, debian/changelog: 4.5.4-1.
989
Roland McGrath0c542de2004-06-04 02:25:12 +0000990 * net.c (domains): Add many PF_* values #ifdef PF_*.
991 (addrfams): Add many AF_* values #ifdef AF_*.
992 Fixes Debian bug #250506.
993
Roland McGrath337d3912004-06-04 02:03:15 +00009942004-05-02 Dmitry V. Levin <ldv@altlinux.org>
995
996 * linux/ioctlsort.c (compare): When ioctl codes equal, compare
997 names.
998 (main): Print a note that program output is generated by
999 ioctlsort.
1000 * linux/ioctlent.sh: Build the list of ioctls defined in
1001 linux/fb.h (0x46..), linux/kd.h (0x4B..), linux/cdrom.h (0x53..),
1002 asm/ioctls.h (0x54..), linux/vt.h (0x56..), linux/videotext.h
1003 (0x71..), linux/videotext.h (0x72..), asm/sockios.h (0x89..),
1004 linux/sockios.h (0x89..), linux/wireless.h (0x8B..).
1005 * linux/ioctlent.h: Regenerated from linux-2.6.5.
1006 Fixes RH#122257.
1007
Roland McGrath6d52da62004-06-04 01:50:53 +000010082004-06-03 Roland McGrath <roland@redhat.com>
1009
Roland McGrathe01b8ce2004-06-04 02:01:54 +00001010 * debian/control (Architecture): Add amd64.
1011 Fixes Debian bug #246568.
1012
Roland McGrath6d52da62004-06-04 01:50:53 +00001013 * strace.c (main) [LINUX]: Expand TCBTAB as necessary for threads
1014 attached. Attach threads only under -f. Set TCB_FOLLOWFORK in them.
1015 (expand_tcbtab): New function, broken out of ...
1016 * process.c (fork_tcb): ... here, call that.
1017 * defs.h: Declare expand_tcbtab.
1018
Roland McGrath25e82592004-06-04 01:24:12 +000010192004-04-19 Roland McGrath <roland@redhat.com>
1020
1021 * process.c (printstatus): Add a space before | in output.
1022
Roland McGrathea2402e2004-04-16 22:28:48 +000010232004-04-16 Roland McGrath <roland@redhat.com>
1024
1025 * configure.ac: Version 4.5.3.
1026 * strace.spec, debian/changelog: 4.5.3-1.
1027
Roland McGrath025442c2004-04-16 21:59:05 +000010282004-03-18 Dmitry V. Levin <ldv@altlinux.org>
1029
1030 * resource.c (sys_quotactl) [LINUX]: Cast arithmetic shift operand
1031 from long to unsigned long, to fix output of the quotactl command
1032 parser.
Roland McGrathea2402e2004-04-16 22:28:48 +00001033 Fixes RH#118694.
Roland McGrath025442c2004-04-16 21:59:05 +00001034
Roland McGrath8d1bf3c2004-04-16 21:48:43 +000010352004-04-16 Roland McGrath <roland@redhat.com>
1036
Roland McGrath025442c2004-04-16 21:59:05 +00001037 * linux/s390/ioctlent.h, linux/s390x/ioctlent.h: Update DASD ioctls.
1038 From Maxim Shchetynin <maxim@de.ibm.com>.
1039
Roland McGrath8d1bf3c2004-04-16 21:48:43 +00001040 * configure.ac: Check for <mqueue.h>.
1041 * ipc.c (sys_mq_open, printmqattr) [! HAVE_MQUEUE_H]: Don't try to
1042 decode struct mq_attr.
Roland McGrath6508d332004-04-16 21:54:59 +00001043 * NEWS: Mention mq support.
Roland McGrath8d1bf3c2004-04-16 21:48:43 +00001044
1045 * linux/syscall.h: Support new mq_* syscalls on Linux.
1046 * linux/syscallent.h: Likewise.
1047 * linux/dummy.h: Likewise.
1048 * ipc.c: Likewise.
1049 * time.c (printsigevent): Handle SIGEV_THREAD.
1050 From Ulrich Drepper <drepper@redhat.com>.
1051 Fixes RH#120701.
1052
Roland McGrath6421d632004-04-14 02:46:35 +000010532004-04-13 Roland McGrath <roland@redhat.com>
1054
Roland McGrath085bae12004-04-14 02:54:02 +00001055 * net.c (msg_flags): Grok MSG_FIX, MSG_SYN, MSG_RST, MSG_NOSIGNAL,
1056 MSG_MORE.
1057 From Ulrich Drepper <drepper@redhat.com>.
1058 Fixes RH#120541.
1059
Roland McGrath6421d632004-04-14 02:46:35 +00001060 * process.c (printstatus): Mask out bits presented symbolically, and
1061 print "| 0xnnn" if the remaining bits are not all zero.
1062 Fixes Debian bug #240062.
1063
1064 * process.c (print_affinitylist): Rewritten to handle indirect values.
1065 (sys_sched_setaffinity, sys_sched_getaffinity): Update callers.
1066 From Ulrich Drepper <drepper@redhat.com>.
1067 Fixes RH#118685.
1068
1069 * acinclude.m4: Quote first argument to AC_DEFUN in all cases.
1070
Roland McGrath74dcbd82004-04-09 00:25:47 +000010712004-04-08 Roland McGrath <roland@redhat.com>
1072
1073 * strace.c (main) [LINUX]: When attaching for -p, look in
1074 /proc/PID/task for all threads and attach them as presumed
1075 CLONE_THREAD children.
1076 * NEWS: Mention the feature.
Roland McGrath085bae12004-04-14 02:54:02 +00001077 Fixes RH#120462.
Roland McGrath74dcbd82004-04-09 00:25:47 +00001078
Roland McGrath2d1ecca2004-03-02 08:07:20 +000010792004-03-02 Roland McGrath <roland@redhat.com>
1080
Roland McGrath6835f232004-03-02 08:50:47 +00001081 * util.c (setbpt): Fix one missed spot to use new arg0_index macro.
1082 From Michael Holzheu <HOLZHEU@de.ibm.com>.
1083
Roland McGrath2d1ecca2004-03-02 08:07:20 +00001084 * debian/control (Standards-Version): Update to 3.6.1.
1085
Roland McGrath861dc142004-03-01 20:57:16 +000010862004-03-01 Roland McGrath <roland@redhat.com>
1087
Roland McGrath801bf1f2004-03-02 06:38:40 +00001088 * configure.ac, NEWS: Version 4.5.2.
Roland McGrathea2402e2004-04-16 22:28:48 +00001089 * strace.spec, debian/changelog: 4.5.2-1.
Roland McGrath801bf1f2004-03-02 06:38:40 +00001090
Roland McGrath30423402004-03-02 06:54:57 +00001091 * strace.c (main): Avoid potential buffer overruns from ludicrous
1092 arguments or PATH values.
1093 * syscall.c (qual_signal): Bail out for too-long string.
1094
Roland McGrath59aea572004-03-02 06:17:11 +00001095 * mem.c [LINUX]: <asm/mman.h> -> <linux/mman.h>
Roland McGrath5586f9a2004-03-02 06:23:08 +00001096 Fixes Debian bug #223207.
Roland McGrath59aea572004-03-02 06:17:11 +00001097
1098 * linux/sparc/syscall.h: Copy linux/syscall.h decls of sys_sched_*.
Roland McGrath8f30c1d2004-03-02 06:09:35 +00001099
Roland McGrath7da8ff72004-03-01 22:10:58 +00001100 * configure.ac: Check for `struct user_desc' in <asm/ldt.h>.
1101 * process.c [HAVE_STRUCT_USER_DESC]: Use struct user_desc in place of
1102 struct modify_ldt_ldt_s.
1103 * mem.c [HAVE_STRUCT_USER_DESC]: Likewise.
1104
1105 * system.c (sysctl_vm): Conditionalize VM_* macro uses, add some more.
1106 From Tim Yamin <plasmaroo@gentoo.org>.
1107
Roland McGrathce238102004-03-01 22:04:09 +00001108 * process.c (sys_execve): Clear instead of set TCB_WAITEXECVE on
1109 erring syscall.
1110
Roland McGrathe58b8a02004-03-01 21:29:31 +00001111 * configure.ac: Check for `struct pt_all_user_regs'
1112 and `struct ia64_fpreg' in <sys/ptrace.h>.
Roland McGrath4695e942004-03-01 21:31:07 +00001113 * util.c, process.c, syscall.c, signal.c: Work around conflicts between
Roland McGrathe58b8a02004-03-01 21:29:31 +00001114 <sys/ptrace.h> and <linux/ptrace.h> for defining those types.
1115
Roland McGrath4695e942004-03-01 21:31:07 +00001116 * process.c (struct_user_offsets) [LINUX && IA64]: Conditionalize
1117 PT_AR_CSD and PT_AR_SSD uses in case of older kernel headers.
1118
Roland McGrath861dc142004-03-01 20:57:16 +00001119 * util.c [LINUX] (arg0_index, arg1_index): New macros.
1120 [S390 || S390X]: Define them with inverted values.
1121 (setbpt): Use them for u_arg indices.
1122
Roland McGrath24e8d312004-03-01 20:30:51 +000011232004-02-26 Andreas Schwab <schwab@suse.de>
1124
1125 * defs.h [LINUX && IA64]: Declare getrval2 also on IA64.
1126 * net.c (sys_pipe) [LINUX && IA64]: For IA64 use the two return values.
1127 * syscall.c (getrval2) [LINUX && IA64]: Implement for IA64.
1128
Roland McGrath176ac322004-03-01 20:28:19 +000011292004-03-01 Roland McGrath <roland@redhat.com>
1130
1131 * linux/dummy.h (sys_sched_getscheduler, sys_sched_setparam,
1132 sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler,
1133 sys_sched_get_priority_max, sys_sched_get_priority_min): Remove macros.
1134 * process.c [LINUX] (sys_sched_getscheduler, sys_sched_setparam,
1135 sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler,
1136 sys_sched_get_priority_min): New functions.
1137 From Ulrich Drepper <drepper@redhat.com>.
1138 Fixes RH#116990.
1139
Roland McGrath3d3f1c92004-02-20 23:21:34 +000011402004-02-20 Roland McGrath <roland@redhat.com>
1141
1142 * linux/hppa/syscallent.h: Update some syscalls.
1143 From Randolph Chung <tausq@debian.org>.
1144 Fixes Debian bug #231632.
1145
Roland McGrathb233c262004-02-20 22:56:55 +000011462003-12-31 David Mosberger <davidm@hpl.hp.com>
1147
1148 * process.c (internal_exit): For ia64, also recognize IA-32 252
1149 as exit_group().
1150 (change_syscall): For IA64, also support changing IA-32 syscalls.
1151 * syscall.c (internal_syscall): For IA64, also recognize IA-32
1152 syscall 252 (exit_group) as an internal_exit() syscall.
1153 * util.c (SYS_fork): For IA64, define them to the IA-32 syscall
1154 number.
1155 (SYS_vfork): Likewise.
1156 (arg_setup): For IA64 version, also support IA-32 syscalls.
1157 (get_arg0): Likewise.
1158 (get_arg1): Likewise.
1159 (set_arg0): Likewise.
1160 (set_arg1): Likewise.
1161
Roland McGrath13aeab32004-02-20 02:25:42 +000011622004-02-15 Anton Blanchard <anton@samba.org>
1163
1164 * linux/powerpc/syscallent.h: Add rtas call.
1165 Shift multiplexed syscalls to start at 300, we are already about
1166 to hit 256 real syscalls.
1167 * linux/syscall.h: SYS_socket_subcall is now 300 for [POWERPC].
1168
11692004-02-19 Roland McGrath <roland@redhat.com>
1170
1171 * strace.c (main): Use TCP->pid, not PID, in -p message.
1172 Fixes Debian bug #229802.
1173
Roland McGrathec0cf0b2004-01-13 10:18:52 +000011742004-01-13 Roland McGrath <roland@redhat.com>
1175
Roland McGrath13aeab32004-02-20 02:25:42 +00001176 * syscall.c (force_result) [LINUX] [S390 || S390X]: Remove bogus upeek
1177 call.
1178
Roland McGrathec0cf0b2004-01-13 10:18:52 +00001179 * stream.c (internal_stream_ioctl): Fix typo strict -> struct.
1180 Reported by Petter Reinholdtsen <pere@hungry.com>.
1181
Roland McGrath135db892004-01-13 10:14:04 +000011822003-12-31 David Mosberger <davidm@hpl.hp.com>
1183
1184 * process.c (struct_user_offsets) [IA64]: Fix up register name list.
1185
Roland McGrath13aeab32004-02-20 02:25:42 +000011862003-12-14 Anton Blanchard <anton@samba.org>
Roland McGrath135db892004-01-13 10:14:04 +00001187
Roland McGrath75155472004-01-13 10:17:00 +00001188 * file.c (sys_getdents64): Don't cast d_ino and d_off to unsigned long.
1189 Use %llu formats for them.
1190
Roland McGrath135db892004-01-13 10:14:04 +00001191 * file.c [LINUX] (fsmagic): Add SYSFS_MAGIC.
1192
1193 * linux/powerpc/syscallent.h: Update to include recently added
1194 syscalls.
1195
1196 * syscall.c (get_error) [POWERPC]: Cast result to unsigned long for
1197 ppc64, we were misreporting syscalls that really succeeded as having
1198 failed.
1199
Roland McGrath5b7aa682004-01-13 09:52:52 +000012002004-01-13 Roland McGrath <roland@redhat.com>
1201
Roland McGrath8950c692004-01-13 10:00:01 +00001202 * strace.1: Remove comment about vfork on Linux.
1203 Fixes Debian bug #223390.
1204
Roland McGrath5b7aa682004-01-13 09:52:52 +00001205 * file.c (direnttypes): Define under [LINUX] as well. Add DT_UNKNOWN.
1206 (sys_getdents64) [LINUX]: Print d_type field.
1207
Roland McGrath13aeab32004-02-20 02:25:42 +000012082003-12-15 Dmitry V. Levin <ldv@altlinux.org>
Roland McGrath8950c692004-01-13 10:00:01 +00001209
1210 * strace.c (trace) [WCOREDUMP]: Show coredump status of the
Roland McGrath135db892004-01-13 10:14:04 +00001211 killed process if available. Fixes RH#112117.
Roland McGrath8950c692004-01-13 10:00:01 +00001212
Roland McGrathcf283032003-11-14 02:57:31 +000012132003-11-13 Roland McGrath <roland@redhat.com>
1214
1215 * configure.ac, NEWS: Version 4.5.1.
1216 * strace.spec, debian/changelog: 4.5.1-1.
1217
Roland McGrath13aeab32004-02-20 02:25:42 +000012182003-09-06 Dmitry V. Levin <ldv@altlinux.org>
Roland McGrath0aac8722003-11-14 02:54:09 +00001219
1220 * defs.h (ioctl_lookup): Prototype change.
1221 * ioctl.c (ioctl_next_match): New function.
1222 * defs.h: Declare it.
1223 * io.c (sys_ioctl): Use it, to display all possible ioctl names
1224 when there's more than one match.
1225 * ioctl.c (ioctl_lookup): Likewise.
1226 * stream.c (internal_stream_ioctl): Likewise.
1227 Patch from Solar Designer <solar@openwall.com>.
1228
Roland McGrath09f7a012003-11-13 22:32:32 +000012292003-11-13 Roland McGrath <roland@redhat.com>
1230
1231 * linux/sh/syscallent.h: Use sys_setgroups32, sys_getgroups32.
1232 * linux/sh64/syscallent.h: Likewise.
1233
Roland McGrath13aeab32004-02-20 02:25:42 +000012342003-09-06 Dmitry V. Levin <ldv@altlinux.org>
Roland McGrath09f7a012003-11-13 22:32:32 +00001235
Roland McGrathf25ef392003-11-13 22:33:48 +00001236 Fixes for RH#105359.
Roland McGrath09f7a012003-11-13 22:32:32 +00001237 * util.c (printuid): New function.
1238 * defs.h: Declare it.
1239 * file.c (sys_chown): Use it.
1240 * file.c (sys_fchown): Likewise.
1241 * process.c (sys_setreuid, sys_setregid, sys_setresuid,
1242 sys_setresgid): Likewise.
Roland McGrath09f7a012003-11-13 22:32:32 +00001243 * linux/syscallent.h: Better handle getgid32, geteuid32, getegid32,
1244 setreuid32, setregid32, getgroups32, setgroups32, fchown32,
1245 setresuid32, getresuid32, setresgid32, getresgid32, chown32,
1246 setuid32, setgid32, setfsuid32, setfsgid32.
1247 * process.c [LINUX]: Define GETGROUPS32_T.
1248 * process.c [LINUX] (sys_setgroups32, sys_getgroups32):
1249 New functions.
1250 * linux/syscall.h (sys_setgroups32, sys_getgroups32):
1251 Declare them.
1252
Roland McGrath730e8c02003-11-11 21:24:28 +000012532003-11-11 Roland McGrath <roland@redhat.com>
1254
1255 * strace.c (main): Bail with usage error for missing command before we
1256 open the -o file or fiddle uids.
1257
Roland McGrathe52919b2003-11-06 23:41:33 +000012582003-11-06 Roland McGrath <roland@redhat.com>
1259
Roland McGratha0f32e02003-11-07 02:36:45 +00001260 * strace.c (main): Treat piped output more like file output.
1261 Disallow -ff with piped output. Fixes RH#105366.
1262 Reported by Dmitry V. Levin <ldv@altlinux.org>
1263
Roland McGrathe52919b2003-11-06 23:41:33 +00001264 * strace.c (tprintf): Check result of vfprintf and use perror when it
1265 fails while not writing to stderr itself. Fixes Debian bug #218762.
1266
1267 * net.c (printsock): Fix typo in #ifdef AF_NETLINK.
1268 From Ulrich Drepper <drepper@redhat.com>.
1269
Roland McGrathb67e8e32003-11-01 22:11:29 +000012702003-11-01 Roland McGrath <roland@redhat.com>
1271
1272 * syscall.c (trace_syscall) [LINUX]: Calculate ONE_TICK once using
1273 setitimer rather than hard-coding a value based on HZ.
Roland McGrathd4897f82003-11-01 22:13:35 +00001274 Fixes RH#108012, reported by Florian La Roche <laroche@redhat.com>.
Roland McGrathb67e8e32003-11-01 22:11:29 +00001275
Roland McGratha9f76da2003-10-22 06:11:36 +000012762003-10-21 Roland McGrath <roland@redhat.com>
1277
Roland McGrath7aa6d202003-10-22 06:16:42 +00001278 * strace.1: Fixed a few spelling errors.
Roland McGrathb67e8e32003-11-01 22:11:29 +00001279 Fixes Debian bug #217008.
Roland McGrath7aa6d202003-10-22 06:16:42 +00001280
Roland McGratha9f76da2003-10-22 06:11:36 +00001281 * syscall.c: Revert last change, was broken.
1282
Roland McGrath8c74bd92003-10-01 07:50:34 +000012832003-10-01 Roland McGrath <roland@redhat.com>
1284
Roland McGrathe7da3502003-10-01 21:59:50 +00001285 * process.c (internal_clone): Don't suspend parent when call requested
1286 a specific PID that is not a traced child.
1287
Roland McGrath8c74bd92003-10-01 07:50:34 +00001288 * signal.c [LINUX] (parse_sigset_t): Rewrite to process hex strings
1289 from right to left so we don't have to presume the size.
Roland McGrathe7da3502003-10-01 21:59:50 +00001290 Reported by David Woodhouse <dwmw2@redhat.com>.
Roland McGrath8c74bd92003-10-01 07:50:34 +00001291
Roland McGrath268e9042003-09-25 23:06:12 +000012922003-09-25 Roland McGrath <roland@redhat.com>
1293
1294 * mem.c (mmap_prot) [PROT_SEM, PROT_GROWSDOWN, PROT_GROWSUP]: Include
1295 these in the table if they are defined.
1296
Roland McGrath4f59bab2003-09-24 22:22:49 +000012972003-09-24 Roland McGrath <roland@redhat.com>
1298
1299 * configure.ac, NEWS: Version 4.5.
1300 * strace.spec, debian/changelog: 4.5-1.
1301
1302 * syscall.c (get_scno) [LINUX] [S390 || S390X]: Bail out of
1303 instruction decoding branch if TCB_INSYSCALL is clear.
1304 Reported by <jochen@penguin-breeder.org>.
1305
1306 * linux/ioctlent.h: Swap order of overloaded TC* and SNDCTL_* values.
1307
Roland McGrath7633f1e2003-09-23 22:19:43 +000013082003-09-23 Roland McGrath <roland@redhat.com>
1309
Roland McGrath4f59bab2003-09-24 22:22:49 +00001310 * strace.spec: On ppc64 (maybe others later), create an strace64
1311 package as well containing just /usr/bin/strace64.
1312
Roland McGrath7633f1e2003-09-23 22:19:43 +00001313 * signal.c (sprintsigmask): Print RT_%u for __SIGRTMIN..__SIGRTMAX.
1314 Fixes RH#104365.
1315
Roland McGrath109f3d32003-08-21 10:09:01 +000013162003-08-21 Roland McGrath <roland@redhat.com>
1317
Roland McGrath7633f1e2003-09-23 22:19:43 +00001318 * linux/syscallent.h: Fix mlock argument count. Fixes RH#101499.
Roland McGrath109f3d32003-08-21 10:09:01 +00001319 * linux/x86_64/syscallent.h: Likewise.
1320 * linux/s390/syscallent.h: Likewise.
1321 * linux/s390x/syscallent.h: Likewise.
1322
Roland McGrath5bc53452003-08-21 09:58:08 +000013232003-07-28 Daniel Jacobowitz <drow@mvista.com>
1324
1325 * defs.h (ALIGN64): Define for MIPS.
1326 * io.c (PREAD_OFFSET_ARG): Define.
1327 (sys_pread, sys_pwrite): Use it.
1328 * process.c (struct_user_offsets) [SH]: Check whether REG_XDREG0
1329 is defined.
1330 * linux/sh/syscallent.h (pread, pwrite): Take six arguments.
1331 (truncate64, ftruncate64): Pretty-print.
1332 * linux/mips/syscallent.h (pread, pwrite): Take six arguments.
1333 (truncate64, ftruncate64): Take four arguments.
1334
Roland McGrath4d8130c2003-07-17 09:24:04 +000013352003-07-17 Roland McGrath <roland@redhat.com>
1336
1337 * configure.ac, NEWS: Version 4.4.99.
1338 * strace.spec, debian/changelog: 4.4.99-1.
1339
Roland McGrath25969ce2003-07-17 09:03:22 +000013402003-07-15 Anton Blanchard <anton@samba.org>
1341
1342 * ipc.c: Add SHM_HUGETLB field.
1343 Mask out permission bits in msgget, semget and shmget before
1344 printing resource_flags.
1345 Mask execute permission bits (even though we dont currently
1346 use them).
1347
13482003-07-17 Roland McGrath <roland@redhat.com>
1349
1350 * linux/powerpc/syscallent.h (tgkill): New at 250.
1351
1352 * linux/syscallent.h: truncate64/ftruncate64 need 3 args.
1353 From Ulrich Drepper <drepper@redhat.com>.
1354
1355 * linux/syscallent.h: Handle statfs64, fstatfs64, utimes.
1356 * file.c (printstatfs): Print f_fsid and f_frsize.
1357 [LINUX] (printstatfs64, sys_statfs64, sys_fstatfs64): New functions.
1358 * linux/syscall.h: Add decls.
1359 From Ulrich Drepper <drepper@redhat.com>.
1360
13612003-07-09 Roland McGrath <roland@redhat.com>
1362
1363 * linux/ia64/syscallent.h (tgkill): New at 1235.
1364
Roland McGrath004d88d2003-07-09 09:48:21 +000013652003-07-05 Richard Henderson <rth@twiddle.net>
1366
1367 * process.c (sys_clone): Order arguments for alpha the same as x86_64.
1368 * syscall.c (ERESTART_RESTARTBLOCK): New.
1369 (trace_syscall): Print it.
1370 * linux/alpha/syscallent.h (osf_syscall): Name properly.
1371 (osf_set_program_attributes): Fix typo.
1372 (osf_nfssvc): Likewise.
1373 (osf_sigsendset): Likewise.
1374 (getdents64, gettid, readahead, tkill, setxattr, lsetxattr, fsetxattr,
1375 getxattr, lgetxattr, fgetxattr, listxattr, llistxattr, flistxattr,
1376 removexattr, lremovexattr, fremovexattr, futex, sched_setaffinity,
1377 sched_getaffinity, tuxcall, io_setup, io_destroy, io_getevents,
1378 io_submit, io_cancel, exit_group, lookup_dcookie, epoll_create,
1379 epoll_ctl, epoll_wait, remap_file_pages, set_tid_address,
1380 restart_syscall, fadvise, timer_create, timer_settime, timer_gettime,
1381 timer_getoverrun, timer_delete, clock_settime, clock_gettime,
1382 clock_getres, clock_nanosleep, semtimedop): New.
1383
13842003-07-08 Roland McGrath <roland@redhat.com>
1385
1386 * signal.c (sys_tgkill): New function.
1387 * linux/syscall.h: Declare it.
1388 * linux/syscallent.h: Add tgkill.
1389
Roland McGratha9a86192003-06-27 21:20:14 +000013902003-06-27 Roland McGrath <roland@redhat.com>
1391
1392 * configure.ac: Check for type `struct __old_kernel_stat'.
1393 * file.c (convertoldstat, printoldstat): Define under
1394 [LINUX && HAVE_STRUCT___OLD_KERNEL_STAT] rather than a list of archs.
1395 (sys_oldstat, sys_oldfstat, sys_oldlstat): Likewise.
1396 * linux/dummy.h [! HAVE_STRUCT___OLD_KERNEL_STAT]
1397 (sys_oldstat, sys_oldfstat, sys_oldlstat): #define to printargs.
1398
Roland McGrath9df23f92003-06-26 22:23:32 +000013992003-06-26 Roland McGrath <roland@redhat.com>
1400
Roland McGrath4fe23b52003-06-26 22:41:02 +00001401 * configure.ac: SHMEDIA -> SH64
1402 * defs.h: Likewise.
1403 * mem.c: Likewise.
1404 * process.c: Likewise.
1405 * sock.c: Likewise.
1406 * syscall.c: Likewise.
1407 * util.c: Likewise.
1408 * linux/shmedia/syscallent.h: Moved to ...
1409 * linux/sh64/syscallent.h: ... here.
1410
1411 * config.guess: Update from canonical version, timestamp 2003-06-17.
1412 * config.sub: Likewise.
1413
Roland McGrath8f340e32003-06-26 22:29:38 +00001414 * syscall.c (force_result) [LINUX] [ARM]: Fix variable usage.
1415 From: Joshua Neal <tinara@netpipeline.net>.
1416
Roland McGrathc2aa8ea2003-06-26 22:27:32 +00001417 * process.c [LINUX] (sys_futex): Grok FUTEX_REQUEUE and print 5th arg.
1418 * linux/syscallent.h: sys_futex argument count is now 5, not 4.
1419 * linux/ia64/syscallent.h: Likewise.
1420 * linux/powerpc/syscallent.h: Likewise.
1421 * linux/s390/syscallent.h: Likewise.
1422 * linux/s390x/syscallent.h: Likewise.
1423 * linux/x86_64/syscallent.h: Likewise.
1424 From Jakub Jelinek <jakub@redhat.com>.
1425
Roland McGrath9df23f92003-06-26 22:23:32 +00001426 * syscall.c (get_scno) [S390 || S390X]: Fix old vs new mode detection.
1427 From Michael Holzheu <HOLZHEU@de.ibm.com>.
1428
Roland McGrathee911632003-06-23 23:40:04 +000014292003-06-23 Roland McGrath <roland@redhat.com>
1430
1431 * net.c (sys_socket): Decode protocol for PF_INET6 same as PF_INET.
1432 From Ulrich Drepper <drepper@redhat.com>.
1433
Roland McGrathe84e6272003-06-11 05:38:01 +000014342003-06-10 Roland McGrath <roland@redhat.com>
1435
1436 * configure.ac, NEWS: Version 4.4.98.
1437 * strace.spec, debian/changelog: 4.4.98-1.
1438
Roland McGrath3634c272003-06-10 03:06:05 +000014392003-06-09 Roland McGrath <roland@redhat.com>
1440
Roland McGrath767b4302003-06-10 03:38:03 +00001441 * linux/s390x/syscallent.h: Update many syscalls.
1442 * linux/syscall.h (SYS_socket_subcall): Update [S390X] value.
1443
Roland McGrathc38d46e2003-06-10 03:31:34 +00001444 * linux/s390/syscallent.h: Update many syscalls.
1445 * linux/syscall.h (SYS_socket_subcall): Update [S390] value.
1446
Roland McGratheef1fde2003-06-10 03:07:47 +00001447 * linux/shmedia/syscallent.h: New file.
1448 From Stephen Thomas <stephen.thomas@superh.com>.
1449
Roland McGrath3634c272003-06-10 03:06:05 +00001450 * strace.c (trace): Print a message and newline for a WIFEXITED report
1451 from the process we just printed an unterminated syscall line for.
1452
Roland McGrathcf99f9c2003-06-03 07:18:28 +000014532003-06-03 Roland McGrath <roland@redhat.com>
1454
Roland McGrath2c1d5342003-06-03 23:28:58 +00001455 * util.c (printcall) [LINUX]: Fix typo [IA62] -> [IA64].
1456
1457 Linux/ARM improvements from Russell King <rmk@arm.linux.org.uk>:
1458 * defs.h [LINUX] (TCB_WAITEXECVE): Define for [ARM] too.
1459 * process.c (struct_user_offsets) [LINUX] [ARM]: Add ARM registers.
1460 * signal.c [LINUX] (sys_sigreturn) [ARM]: New case.
1461 * syscall.c (get_scno, syscall_fixup) [LINUX] [ARM]: Case rewritten.
1462 (get_error) [LINUX] [ARM]: Update.
1463 (syscall_enter) [LINUX] [ARM]: New case.
1464 * util.c (printcall) [LINUX] [ARM]: New case.
1465
1466 * debian/control (Standards-Version): Update to 3.5.10.
1467
Roland McGrathcf99f9c2003-06-03 07:18:28 +00001468 * strace.c (main): In PATH search, accept only a regular file with
1469 execute bits set. Fixes Debian bug #137103.
1470
Roland McGratha834fbe2003-06-02 19:37:56 +000014712003-06-02 Roland McGrath <roland@redhat.com>
1472
Roland McGrath454a0242003-06-03 01:35:32 +00001473 * strace.c (main): Set -q when given -o and not -p, and not when not
1474 given -o, to match what the man page always said.
1475 Fixes Debian bug #47113, #153678.
1476
Roland McGratha834fbe2003-06-02 19:37:56 +00001477 * configure.ac, NEWS: Version 4.4.97.
1478 * strace.spec, debian/changelog: 4.4.97-1.
1479
1480 * configure.ac, defs.h, mem.c, process.c, sock.c, syscall.c, util.c:
1481 Merged in SHmedia port from Stephen Thomas <stephen.thomas@superh.com>.
1482
1483 * config.guess: Update from ftp://ftp.gnu.org/pub/gnu/config/,
1484 timestamp 2003-05-22.
1485 * config.sub: Likewise, timestamp 2003-05-24.
1486
Roland McGrath5aae8772003-05-23 00:14:17 +000014872003-05-22 Roland McGrath <roland@redhat.com>
1488
Roland McGrathd0835362003-05-23 02:27:37 +00001489 * defs.h (struct tcb): New member `nzombies'.
1490 * strace.c (alloctcb): Initialize it.
1491 (droptcb): Increment our parent's zombie count.
1492 * process.c (internal_wait): Don't go into TCB_SUSPENDED if the
1493 process has zombies it can reap. On the way out, if we reaped
1494 an untraced process, decrement the zombie count.
1495
Roland McGrath7dfd4ed2003-05-23 01:08:50 +00001496 * process.c (sys_clone): Mask CSIGNAL out of flags and print that
1497 separately using signame.
1498
1499 * process.c (internal_clone) [TCB_CLONE_THREAD]: Use ARG_FLAGS instead
1500 of literal 0 for index. Consult the right flags without clobbering
1501 anything when we reparent the new child to the caller's parent thread.
1502
Roland McGrath031b0d82003-05-23 00:29:11 +00001503 * linux/s390/syscallent.h: Fix sys_clone argument count.
1504 * linux/s390x/syscallent.h: Likewise.
1505 * linux/mips/syscallent.h: Likewise.
1506 * linux/alpha/syscallent.h: Likewise.
1507 * linux/powerpc/syscallent.h: Likewise.
1508 * linux/sh/syscallent.h: Likewise.
1509 * linux/sparc/syscallent.h: Likewise.
1510 * linux/hppa/syscallent.h: Likewise.
1511
1512 * process.c [LINUX] [S390 || S390X] (ARG_CTID, ARG_TLS): Fix swapped
1513 indices. Reported by Jakub Jelinek <jakub@redhat.com>.
1514
1515 * signal.c [LINUX] (SI_SIGIO, SI_TKILL): New macros.
1516 [LINUX || SVR4] (siginfo_codes): Add strings for them.
1517
Roland McGrath5aae8772003-05-23 00:14:17 +00001518 * process.c (print_affinitylist): Fix loop condition.
1519 Reported by Ian Wienand <ianw@gelato.unsw.edu.au>.
1520
Roland McGrath872a4362003-04-10 18:58:33 +000015212003-04-10 Roland McGrath <roland@redhat.com>
1522
1523 * syscall.c (qual_desc): Return zero after parsing number.
1524 From Rob Leslie <rob@mars.org>, fixes Debian bug #188379.
1525
Roland McGrath808a4ba2003-04-08 01:47:02 +000015262003-04-07 Roland McGrath <roland@redhat.com>
1527
1528 * linux/syscallent.h: Handle semtimedop subcall of ipc syscall.
1529 * linux/syscall.h: Likewise.
1530 * ipc.c [LINUX] (sys_semtimedop): New function.
1531 From Ulrich Drepper <drepper@redhat.com>.
1532
1533 * ipc.c (sys_semget): Mask off permission bits for resource_flags.
1534 From Ulrich Drepper <drepper@redhat.com>.
1535
Roland McGrathcf43e902003-04-02 01:10:53 +000015362003-04-01 Philippe De Muyter <phdm@macqel.be>
1537
1538 * sock.c, stream.c: Check #ifdef LINUX, not linux.
1539 * file.c: Always provide sys_*attr, regardless of #ifdef XATTR_CREATE.
1540
Roland McGrath10a56fb2003-03-31 01:21:40 +000015412003-03-30 Roland McGrath <roland@redhat.com>
1542
1543 * configure.ac, NEWS: Version 4.4.96.
1544 * strace.spec, debian/changelog: 4.4.96-1.
1545
Roland McGrath347636f2003-03-31 01:05:16 +000015462003-02-26 Stuart Menefy <stuart.menefy@st.com>
1547
1548 Various fixes for SuperH [SH]:
1549 * mem.c (sys_old_mmap): mmap() parameters passed in registers
1550 * net.c (sys_pipe), syscall.c (getrval2): pipe() results returned
1551 in registers
1552 * process.c (change_syscall): Fixed register which holds system
1553 call number
1554 * util.c (arg0_offset, arg1_offset): provide definition
1555 * Makefile.am: Added new files in linux/sh
1556 * linux/sh/syscallent.h: New file.
1557 * linux/sh/errnoent.h: New file.
1558 * linux/sh/ioctlent.h: New file.
1559 * linux/sh/signalent.h: New file.
1560
1561 * linux/ioctlent.sh: Take an arg for location of header files
1562 * syscallent.sh: Replaced lost $
1563
Roland McGrath5467f262003-03-30 23:52:46 +000015642003-03-30 Roland McGrath <roland@redhat.com>
1565
1566 * time.c [LINUX]: Handle new Linux 2.5 clock/timer syscalls.
1567 * linux/syscall.h, linux/syscallent.h, linux/dummy.h: Likewise.
1568 From Ulrich Drepper <drepper@redhat.com>.
1569
1570 * linux/syscallent.h: Use sys_getrlimit for 191.
1571 Use name "old_getrlimit" for 76.
1572 Reported by Ulrich Drepper <drepper@redhat.com>.
1573
Roland McGrath5755ec52003-03-21 07:33:21 +000015742003-03-18 Roland McGrath <roland@redhat.com>
1575
1576 * process.c [LINUX] (sys_clone): Don't dereference parent_tid argument.
1577
Roland McGrath49bad882003-03-18 07:43:53 +000015782003-03-17 Roland McGrath <roland@redhat.com>
1579
1580 * linux/x86_64/syscallent.h: clone takes 5 args.
1581 * process.c [LINUX] (sys_clone) [X86_64]: Fix argument order.
1582
Roland McGrathf22e0c72003-03-15 21:01:43 +000015832003-03-15 Roland McGrath <roland@redhat.com>
1584
1585 * linux/x86_64/syscallent.h: Add exit_group syscall at 231.
1586
Roland McGrath27cad9a2003-03-14 10:33:06 +000015872003-03-14 Roland McGrath <roland@redhat.com>
1588
1589 * linux/x86_64/syscallent.h: Update and add many 2.5 syscalls.
1590
1591 * linux/ia64/syscallent.h: clone takes 5 arguments.
1592 * process.c [LINUX && IA64] (ARG_*): Update for 2.5 clone calls.
1593
Roland McGrath041900f2003-03-12 08:11:33 +000015942003-03-12 Roland McGrath <roland@redhat.com>
1595
Roland McGrath6fbb4e32003-03-12 09:54:45 +00001596 * linux/ia64/syscallent.h: Fix arg counts for clone and clone2.
1597 Use sys_clone for clone2.
1598 * linux/syscall.h: Don't declare sys_clone2.
1599 * process.c (sys_clone): Rewritten to handle both flavors,
1600 print all extra args depending on flag bits.
1601 (sys_clone2): Function removed.
1602
Roland McGrath041900f2003-03-12 08:11:33 +00001603 * linux/ia64/syscallent.h: Add a bunch of 2.5 syscalls.
1604
Roland McGrathb3f8fd62003-03-05 06:29:11 +000016052003-03-04 Roland McGrath <roland@redhat.com>
1606
1607 * syscall.c (get_scno) [IA64]: Do TCB_WAITEXECVE check only when
1608 TCB_INSYSCALL is clear, like other platforms do.
1609
Roland McGrathd2a6c6b2003-03-05 04:08:07 +000016102003-03-04 Ulrich Drepper <drepper@redhat.com>
1611
1612 * mem.c [LINUX] (sys_remap_file_pages): New function.
1613 * linux/syscall.h: Declare it.
1614 * linux/syscallent.h: Use it.
1615 * linux/powerpc/syscallent.h: Likewise.
1616
1617 * process.c [LINUX] (sys_futex): Omit final if op is not FUTEX_WAIT.
1618
Roland McGratha4187c92003-02-26 20:34:14 +000016192003-02-26 Roland McGrath <roland@redhat.com>
1620
1621 * configure.ac: Fix typo in netinet/in.h check.
1622 Also include <sys/types.h> and <sys/socket.h> before <netinet/in.h>.
1623 Reported by Alex Semenyaka <alexs@snark.rinet.ru>.
1624
Roland McGrath66375f62003-02-24 10:18:11 +000016252003-02-24 Roland McGrath <roland@redhat.com>
1626
Roland McGrath74f905d2003-02-24 10:53:48 +00001627 * configure.ac, NEWS: Version 4.4.95.
1628 * strace.spec, debian/changelog: 4.4.95-1.
1629
Roland McGrath66375f62003-02-24 10:18:11 +00001630 * process.c (sys_getresgid): Fix typos in argument access.
1631
Roland McGrath127f7d22003-02-24 07:13:59 +000016322003-02-23 Roland McGrath <roland@redhat.com>
1633
1634 * process.c (sys_getresuid): Fix typos in argument access.
1635 Reported by Anton Blanchard <anton@samba.org>.
1636
Roland McGrath71522342003-02-20 02:45:34 +000016372003-02-19 Roland McGrath <roland@redhat.com>
1638
Roland McGrath45be9602003-02-20 03:26:58 +00001639 * configure.ac, NEWS: Version 4.4.94.
1640 * strace.spec, debian/changelog: 4.4.94-1.
1641
Roland McGrath44fb0432003-02-20 02:56:50 +00001642 * version.c: Removed.
1643 * Makefile.am (strace_SOURCES): Remove it.
1644 * strace.c: Use PACKAGE_NAME and VERSION macros instead of version var.
1645
Roland McGrath71522342003-02-20 02:45:34 +00001646 FreeBSD rfork support changes from Russ Cox <rsc@plan9.bell-labs.com>:
1647 * syscall.c (internal_syscall): Handle SYS_rfork with internal_fork.
1648 * process.c (internal_fork) [SYS_rfork]: Bail if RFPROC flag not set.
1649
Roland McGrath8d276ff2003-01-24 04:32:36 +000016502003-01-23 Roland McGrath <roland@redhat.com>
1651
Roland McGrathff02c902003-01-30 20:15:35 +00001652 * signal.c: Reorder #ifdefs so HAVE_ASM_SIGCONTEXT_H doesn't matter on
1653 SPARC, which doesn't use the header regardless.
1654
1655 * util.c [LINUX && SPARC]: Do renaming kludges around <asm/reg.h>
1656 like signal.c does.
1657
1658 * linux/sparc/syscall.h: Declare sys_getdents64, sys_llseek.
Roland McGrath6ee7d1f2003-01-24 04:39:50 +00001659
1660 * linux/dummy.h [! SYS_getpmsg] (sys_getpmsg): #define to printargs.
1661 [! SYS_putpmsg] (sys_putpmsg): Likewise.
1662
Roland McGrath8d276ff2003-01-24 04:32:36 +00001663 * process.c: Reorder includes to put sys/reg.h before linux/ptrace.h,
1664 since they can conflict.
1665
Roland McGrath6a39c212003-01-22 02:27:59 +000016662003-01-21 Roland McGrath <roland@redhat.com>
1667
Roland McGrath8d276ff2003-01-24 04:32:36 +00001668 * strace.c (usage): Omit -z, since it has never worked properly.
1669 * NEWS: Likewise.
1670
1671 * strace.c (main): Grok new option `-E var=val' or `-E var' to put
1672 var=val in environ or to remove var, respectively.
1673 (usage): Mention it.
1674 * strace.1, NEWS: Document it.
1675
Roland McGrath6a39c212003-01-22 02:27:59 +00001676 * configure.ac, NEWS: Version 4.4.93.
1677 * strace.spec, debian/changelog: 4.4.93-1.
1678 * strace.spec (Source0): Use strace-VERSION.tar.bz2 now.
1679
Roland McGrath08eee592003-01-20 09:04:42 +000016802003-01-20 Roland McGrath <roland@redhat.com>
1681
Roland McGrathb472e1c2003-01-20 10:23:11 +00001682 * defs.h [LINUX] [S390 || S390X] (TCB_WAITEXECVE): Define it.
1683 * syscall.c (get_scno, syscall_fixup) [LINUX] [S390 || S390X]: Handle
1684 TCB_WAITEXECVE state with special kludges.
1685
Roland McGrath08eee592003-01-20 09:04:42 +00001686 * process.c [LINUX] (sys_clone) [S390 || S390X]: Argument order is
1687 reversed from other architectures.
1688
1689 * process.c (sys_execve) [LINUX]: Make setting TCB_WAITEXECVE flag
1690 conditional on [TCB_WAITEXECVE] instead of list of processors.
1691
1692 * util.c (restore_arg0): Evaluate args in no-op defns.
1693
1694 * util.c [S390 || S390X] (arg0_offset, arg1_offset): Fix definitions
1695 for clone call on S390. From Michael Holzheu <holzheu@de.ibm.com>.
1696
Roland McGrath2b157e72003-01-18 00:19:35 +000016972003-01-17 Anton Blanchard <anton@samba.org>
1698
1699 * util.c [LINUX] (setbpt): Handle SYS_vfork like SYS_fork.
1700
1701 * linux/syscall.h (SYS_socket_subcall): 256 also for POWERPC.
1702
Roland McGrath92999db2003-01-14 09:46:33 +000017032003-01-14 Roland McGrath <roland@redhat.com>
1704
Roland McGrathec4bd132003-01-14 23:41:07 +00001705 * linux/powerpc/errnoent.h: Add missing errnos.
1706 * linux/powerpc/ioctlent.h: Update ioctl values.
1707 From Anton Blanchard <anton@samba.org>.
1708
1709 * io.c [LINUX] (sys_pread, sys_pwrite): Fix last change.
1710 From Anton Blanchard <anton@samba.org>.
1711
1712 * linux/hppa/syscallent.h: Use sys_getdents64, sys_truncate64,
1713 sys_ftruncate64, instead of printargs, for those syscalls.
1714 * linux/mips/syscallent.h: Likewise.
1715 * linux/powerpc/syscallent.h: Likewise.
1716 * linux/s390/syscallent.h: Likewise.
1717 * linux/sparc/syscallent.h: Likewise.
1718
1719 * linux/syscall.h (SYS_socket_subcall): Only 256 for S390, S390X.
1720 All others at the moment use linux/syscallent.h, where it's 300.
1721
1722 * strace.1: Update bug reporting info.
1723
1724 * resource.c [LINUX] (quotacmds): Grok new command encodings.
1725 From Nathan Scott <nathans@debian.org>.
1726
Roland McGrathd7bec502003-01-14 10:10:36 +00001727 * configure.ac, NEWS: Version 4.4.92.
1728 * strace.spec, debian/changelog: 4.4.92-1.
1729
Roland McGrathf775ab32003-01-14 09:59:57 +00001730 * configure.ac: Match powerpc* (includes powerpc64), and don't match
1731 ppc (never comes out of config.sub).
Roland McGrathd7bec502003-01-14 10:10:36 +00001732
Roland McGrathf775ab32003-01-14 09:59:57 +00001733 * process.c (sys_ptrace): Use #lx format for address argument.
1734 [POWERPC]: Use sizeof(unsigned long) in place of 4 for multipliers.
1735 * process.c [POWERPC]: Likewise.
1736 * signal.c (sys_sigreturn) [POWERPC]: Likewise.
1737 * syscall.c (get_scno) [POWERPC]: Likewise.
1738 * util.c [POWERPC]: Likewise.
1739 (printnum): Use long for NUM.
1740 From Anton Blanchard <anton@samba.org>.
1741
Roland McGrath92999db2003-01-14 09:46:33 +00001742 * defs.h (ALIGN64): Fix defn for PPC, same as FreeBSD one.
1743
1744 * util.c [LINUX] (restore_arg0, restore_arg1): New macros, defined
1745 appropriately via set_arg0 or no-ops for each architecture.
1746 (clearbpt): Use those instead of set_arg0 and set_arg1.
1747
1748 * defs.h [_LARGEFILE64_SOURCE] (_LFS64_LARGEFILE): Define it.
1749 * linux/syscallent.h: Use sys_getdents64, sys_truncate64,
1750 sys_ftruncate64, instead of printargs, for those syscalls.
1751
1752 * process.c: Use <linux/ptrace.h> regardless of <sys/reg.h>.
1753 (sys_ptrace): Use printxval.
1754 (ptrace_cmds): Make PTRACE_GETREGS et al conditional on #ifdef PTRACE_*
1755 instead of only #ifdef SUNOS4. Add PTRACE_[GS]ETFPXREGS.
1756
1757 * ipc.c (PRINTCTL): New macro. #ifdef IPC_64, factor out the flag and
1758 print it before using printxval.
1759 (sys_msgctl, sys_semctl, sys_shmctl): Use it.
1760
Roland McGrathda5ad2d2003-01-14 07:53:49 +000017612003-01-13 Roland McGrath <roland@redhat.com>
1762
Roland McGrath4e254592003-01-14 07:58:26 +00001763 * config.guess: Update from ftp://ftp.gnu.org/pub/gnu/config/,
1764 timestamp 2003-01-10.
1765 * config.sub: Likewise, timestamp 2003-01-03.
1766 * install-sh: Update from Automake 1.7.2.
1767
Roland McGrathda5ad2d2003-01-14 07:53:49 +00001768 * linux/powerpc/signalent.h: Add SIGRTMIN.
1769 From Anton Blanchard <anton@samba.org>.
1770
1771 * linux/powerpc/syscallent.h: Add missing system calls.
1772 Decode more system calls, we were just printargs for many things.
1773 Remove some x86-specific system calls.
1774 Remove two syscalls between the socket and ipc syscalls,
1775 it was resulting in all IPC syscalls being off by two.
1776
1777 * ioctl.c (ioctl_decode) [POWERPC]: Decode term ioctls like Alpha.
1778 From Anton Blanchard <anton@samba.org>.
1779
1780 * defs.h [POWERPC] (UESP, EIP, EAX, ORIG_EAX): Remove this cruft.
1781 [LINUX && POWERPC && !__powerpc64__] (ALIGN64): New macro.
1782 * io.c (sys_pread, sys_pwrite): Use ALIGN64.
1783 From Anton Blanchard <anton@samba.org>.
1784
1785 * term.c [LINUX]: Get kernel definition of struct termios.
1786 From Anton Blanchard <anton@samba.org>.
1787
1788 * linux/ioctlent.sh: Look in sound/ directory too.
1789 From Anton Blanchard <anton@samba.org>.
1790
1791 * desc.c (printflock64): Fix ADDR argument type.
1792 From Anton Blanchard <anton@samba.org>.
1793
1794 * strace.c [! HAVE_STRSIGNAL]: Clean up #ifdefs on decls for
1795 sys_siglist and _sys_siglist.
1796 Reported by John Hughes <john@Calva.COM>.
1797
1798 * net.c: HAVE_OPTHDR -> HAVE_STRUCT_OPTHDR
1799 Reported by John Hughes <john@Calva.COM>.
1800
1801 * linux/syscall.h [ARM] (SYS_socket_subcall): Set to 300.
1802
Roland McGrathdcfcaf72003-01-10 10:45:13 +000018032003-01-10 Roland McGrath <roland@redhat.com>
1804
Roland McGrathedcf1b02003-01-10 21:43:33 +00001805 * configure.ac, NEWS: Version 4.4.91.
1806 * strace.spec, debian/changelog: 4.4.91-1
1807
Roland McGrath09b371c2003-01-10 20:51:13 +00001808 * util.c [LINUX && X86_64] (arg0_offset, arg1_offset): Use correct
1809 values for x86-64, conditional on current_personality.
1810
Roland McGrath944d10f2003-01-10 20:14:52 +00001811 * strace.c (droptcb): Clear flags word before calling rebuild_pollv.
1812
Roland McGrath03c5c4d2003-01-10 20:06:01 +00001813 * configure.ac: Check struct T_conn_res for QUEUE_ptr or ACCEPTOR_id.
1814 * stream.c (print_transport_message): Use #ifdefs for those members.
1815
1816 * strace.c (rebuild_pollv): Fix typo: struct poll -> struct pollfd.
1817
Roland McGrath516f3492003-01-10 19:55:42 +00001818 * configure.ac: Fix siginfo_t/sig_atomic_t checks.
1819 Use prerequisite #include <netinet/in.h> for netinet/*.h checks.
1820
1821 * strace.c (pfd2tcb): Fix for new tcbtab type.
1822 (rebuild_pollv): Likewise.
1823 (detach): Put variables used under [LINUX] inside #ifdef.
1824
1825 * process.c (change_syscall) [POWERPC]: Add missing return.
1826 * util.c [POWERPC] (arg0_offset): Set to 4*PT_R3, not 4*PT_ORIG_R3.
1827
Roland McGrathdcfcaf72003-01-10 10:45:13 +00001828 * strace.spec: New file.
1829 * debian/changelog: 4.4.90-1
1830 * debian/rules (binary-arch): Depend on build.
1831 (clean): Don't try to run Makefile.in.
1832 * debian/control (Standards-Version): Now 3.5.8.
1833
1834 * configure.ac: Diddle CFLAGS after AC_PROG_CC, not before.
1835
Roland McGrathea496212003-01-10 07:50:29 +000018362003-01-09 Roland McGrath <roland@redhat.com>
1837
1838 * syscall.c (force_result) [S390 || S390X]: Fix typo.
1839
1840 * debian/control: Update Maintainer: field.
1841
Roland McGrath5694e802003-01-09 06:56:39 +000018422003-01-08 Roland McGrath <roland@redhat.com>
1843
1844 * NEWS: Update for 4.4.90 test release.
1845
1846 Support for new Linux 2.5 thread features.
1847 * defs.h [LINUX]: Define __NR_exit_group if not defined.
1848 (struct tcb): New members nclone_threads, nclone_detached,
1849 and nclone_waiting.
1850 (TCB_CLONE_DETACHED, TCB_CLONE_THREAD, TCB_GROUP_EXITING): New macros.
1851 (waiting_parent): Macro removed.
1852 (pid2tcb): Declare it.
1853 * process.c (internal_clone) [TCB_CLONE_THREAD]: Reparent the new
1854 child to our parent if we are a CLONE_THREAD child ourselves.
1855 Maintain TCB_CLONE_THREAD and TCB_CLONE_DETACHED flags and counts.
1856 (internal_wait) [TCB_CLONE_THREAD]: Factor out detached children when
1857 determining if we have any. If TCB_CLONE_THREAD is set, check
1858 parent's children instead of our own, and bump nclone_waiting count.
1859 (internal_exit) [__NR_exit_group]: Set the TCB_GROUP_EXITING flag if
1860 the syscall was exit_group.
1861 * syscall.c (internal_syscall): Use internal_exit for exit_group.
1862 * strace.c (pid2tcb): No longer static.
1863 (alloctcb) [TCB_CLONE_THREAD]: Initialize new fields.
1864 (droptcb) [TCB_CLONE_THREAD]: Maintain new fields.
1865 If we have thread children, set TCB_EXITING and don't clear the TCB.
1866 (resume) [TCB_CLONE_THREAD]: Decrement parent's nclone_waiting.
1867 (detach) [TCB_CLONE_THREAD]: When calling resume, check all thread
1868 children of our parent that might be waiting for us too.
1869 [TCB_GROUP_EXITING] (handle_group_exit): New function.
1870 (trace) [TCB_GROUP_EXITING]: Use that in place of detach or droptcb.
1871
1872 Revamp -f support for Linux.
1873 * util.c [LINUX] (setbpt, clearbpt): New implementations that tweak
1874 the system call to be clone with CLONE_PTRACE set. Various new static
1875 helper functions.
1876 * process.c (internal_clone): Define also #ifdef SYS_clone2.
1877 Initialize TCPCHILD->parent field.
1878 [CLONE_PTRACE]: Don't do PTRACE_ATTACH here, because it's preattached.
1879 Check in case the new child is in the tcb already.
1880 (internal_fork) [LINUX]: Just call internal_clone.
1881 * strace.c (trace) [LINUX]: Under -f/-F, grok an unknown pid
1882 reporting to wait, put it in the TCB with TCB_ATTACHED|TCB_SUSPENDED.
1883
1884 * linux/x86_64/syscallent1.h (sys_oldlstat): #define as printargs.
1885
1886 * file.c [LINUX]: #undef st_[amc]time in case they are macros.
1887
1888 * Makefile.am (AM_CFLAGS): New variable, define to $(WARNFLAGS).
1889
1890 * Makefile.am (EXTRA_DIST): Remove debian/postinst and debian/prerm.
1891
Wichert Akkerman5a9b0862003-01-08 23:44:36 +000018922003-01-09 Wichert Akkerman <wichert@deephackmode.org>
1893
1894 * debian/postinst, debian/prerm: removed, /usr/doc symlink is no
1895 longer used
1896 * debian/rules: no longer install postinst and prerm
Wichert Akkerman136bbb12003-01-08 23:46:03 +00001897 * debian/control: do not end summary with full stop (lintian)
Wichert Akkerman5a9b0862003-01-08 23:44:36 +00001898
Roland McGratha83c22f2002-12-30 09:13:30 +000018992002-12-30 Roland McGrath <roland@redhat.com>
1900
Roland McGrath2850c7e2002-12-30 10:46:02 +00001901 * Makefile.am (bin_SCRIPTS): New variable, list strace-graph.
1902 (EXTRA_DIST): Add missing files.
1903
1904 * configure.ac: Fix asm/sigcontext.h check to include prerequisite.
1905
1906 * syscall.c (qualify_one): New function.
1907 (qual_options): Replace lookup field with qualify, update initializer.
1908 (qualify): Update caller.
1909 (qual_signal, qual_fault, qual_desc): Rewritten from lookup_*.
1910 (qual_syscall): Rewritten lookup_syscall, match name more than once.
1911 Fixes RH#70579, bites IA64 -efoo when foo exists on IA32.
1912
Roland McGrath692b68a2002-12-30 09:33:32 +00001913 * version.c (version): Make const, bump to 4.4.90.
1914 * strace.c: Update decl.
1915
1916 * Makefile.am [LINUX && X86_64]: Remove cruft.
1917 * linux/x86_64/errnoent1.h: New file.
1918 * linux/x86_64/ioctlent1.h: New file.
1919 * linux/x86_64/signalent1.h: New file.
1920 * linux/x86_64/syscallent1.h: New file.
1921 * linux/x86_64/i386-headers.diff: File removed.
1922 * linux/x86_64/makeheaders.sh: File removed.
1923 * linux/x86_64/Makefile.in: File removed.
1924
Roland McGratha83c22f2002-12-30 09:13:30 +00001925 * linux/syscallent.h [X86_64]: Disable sanity checks, subcall stuff is
1926 already broken for 32-bit personality on x86-64.
1927
Roland McGrath30d47f12002-12-30 00:51:51 +000019282002-12-29 Roland McGrath <roland@redhat.com>
1929
Roland McGratha83c22f2002-12-30 09:13:30 +00001930 * configure.ac, Makefile.am: Punt subdirs, handle everything here.
1931 * linux/Makefile.am: File removed.
1932 * freebsd/Makefile.am: File removed.
1933 * sunos4/Makefile.in: File removed.
1934 * svr4/Makefile.in: File removed.
1935
Roland McGrath30d47f12002-12-30 00:51:51 +00001936 * linux/alpha/Makefile.in: File removed.
1937 * linux/hppa/Makefile.in: File removed.
1938 * linux/ia64/Makefile.in: File removed.
1939 * linux/powerpc/Makefile.in: File removed.
1940 * linux/s390/Makefile.in: File removed.
1941 * linux/s390x/Makefile.in: File removed.
1942
19432002-12-26 Roland McGrath <roland@redhat.com>
1944
1945 * syscallent.sh: Grok three flavors of #define line, uniquify.
1946 * linux/hppa/syscallent.sh: File removed.
1947 * linux/powerpc/syscallent.sh: File removed.
1948
1949 * linux/Makefile.am: New file.
1950 * linux/Makefile.in: File removed.
1951 * freebsd/Makefile.am: New file.
1952 * freebsd/i386/Makefile.am: New file.
1953 * freebsd/i386/Makefile.in: File removed.
1954
19552002-12-22 Roland McGrath <roland@redhat.com>
1956
1957 Update to Autoconf 2.57, and Automakify with version 1.7.
1958 * Makefile.am: New file.
1959 * Makefile.in: File removed.
1960 * configure.in: Moved to ...
1961 * configure.ac: ... here. Update for Autoconf 2.5x and Automake.
1962 * aclocal.m4: Moved to ...
1963 * acinclude.m4: ... here. Update for Autoconf 2.5x.
Roland McGratha83c22f2002-12-30 09:13:30 +00001964 * acconfig.h: File removed.
Roland McGrath30d47f12002-12-30 00:51:51 +00001965 * AUTHORS: New file, makes automake happy.
1966 * autogen.sh: File removed.
1967 * README-CVS: Update to recommend autoreconf instead.
1968 * file.c: HAVE_ST_* -> HAVE_STRUCT_STAT_ST_*.
1969 * net.c: HAVE_SIN6_SCOPE_ID -> HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID,
1970 HAVE_MSG_CONTROL -> HAVE_STRUCT_MSGHDR_MSG_CONTROL.
1971 * strace.c: *_DECLARED -> HAVE_DECL_*
1972 * stream.c: HAVE_* -> HAVE_STRUCT_*
1973
1974 * linux/Makefile.in (ioctldefs.h ioctls.h): Use $(SHELL) instead of
1975 sh, and use $(srcdir) to find the script.
1976 * linux/powerpc/Makefile.in (ioctlent.raw): Find ioctlent.sh in ../.
1977 (ioctlsort.o): Use ../ioctlsort.c, not ../../ioctlsort.c.
1978 * linux/x86_64/Makefile.in (headers): Renamed to all.
1979 * linux/alpha/Makefile.in: Add empty install target.
1980 * linux/x86_64/Makefile.in: Likewise.
1981 * linux/powerpc/Makefile.in: Likewise.
1982 * linux/Makefile.in: Likewise.
1983
Roland McGrath85960152002-12-30 00:26:24 +000019842002-12-26 Roland McGrath <roland@redhat.com>
1985
1986 * defs.h [LINUX && MIPS] (MAX_QUALS): Set to 5000, not 4999.
1987 From Daniel Jacobowitz <drow@false.org>.
1988
Roland McGrathc25a62f2002-12-21 23:25:26 +000019892002-12-21 Roland McGrath <roland@redhat.com>
1990
Roland McGrathdf211902002-12-22 03:34:55 +00001991 * linux/syscallent.h: Add some new 2.5 syscall names.
1992 Now clone takes 5 args.
1993 * process.c [LINUX] (clone_flags): Update with 2.5 flag bits.
1994 [LINUX] (sys_clone): Print new args.
1995 * mem.c (print_ldt_entry): Make global.
1996
1997 * linux/syscall.h [I386 || IA64] (SYS_socket_subcall): Bump to 300 for
1998 safety, since up to 260 are already used in 2.5 kernels.
1999 * linux/syscallent.h: Update the table.
2000 * linux/ia64/syscallent.h: Likewise.
2001
Roland McGrathc25a62f2002-12-21 23:25:26 +00002002 * syscall.c (force_result): New function.
2003 * process.c (internal_wait): Handle ECHILD exit from wait call with
2004 WNOHANG flag set; force the return value to 0 in the inferior when it
2005 has live children we are tracing.
Roland McGrath044c8d22002-12-22 03:36:03 +00002006 * NEWS: Mention the bug fix.
Roland McGrathc25a62f2002-12-21 23:25:26 +00002007
Roland McGrath13f0b432002-12-17 10:48:09 +000020082002-12-17 Roland McGrath <roland@redhat.com>
2009
Roland McGrathf57204d2002-12-18 04:36:59 +00002010 * linux/ia64/syscallent.h: Remove placeholders 275-298 to catch up
2011 with linux/syscallent.h additions.
2012
Roland McGrath29f554f2002-12-18 04:16:31 +00002013 * strace.c (tcbtab): Make this a pointer to pointers, not an array.
2014 (tcbtabsize): New variable.
2015 (main): Initialize them using dynamic allocation.
2016 (alloctcb, main): Use tcbtabsize in place of MAX_PROCS; indirect.
2017 (pid2tcb, cleanup): Likewise.
2018 [USE_PROCFS] (pollv): Make this a pointer, not an array; make static.
2019 (rebuild_pollv): Dynamically allocate the vector.
2020 * defs.h (tcbtab): Update decls.
2021 (MAX_PROCS): Macro removed, no more static limit on this.
2022 * process.c (fork_tcb): New function.
2023 (internal_clone, internal_fork): Use it instead of checking nprocs.
2024
Roland McGrath13f0b432002-12-17 10:48:09 +00002025 * strace.c (detach) [LINUX]: Use __WALL (or a second try with __WCLONE)
2026 in wait after sending SIGSTOP.
2027
Roland McGrath915742f2002-12-17 04:51:02 +000020282002-12-16 Roland McGrath <roland@redhat.com>
2029
Roland McGratha581c512002-12-17 05:10:47 +00002030 * signal.c (sprintsigmask): Increase static buffer size to account for
2031 worst possible case. Reported by Daniel Jacobowitz <drow@false.org>.
2032
Roland McGrath915742f2002-12-17 04:51:02 +00002033 * process.c [LINUX] (wait4_options): Fix __WCLONE value. Add
2034 __WNOTHREAD and __WALL.
2035
2036 * strace.c (trace) [LINUX]: Only check errno if wait4 actually fails,
2037 so we don't repeat a wait and thus drop a status. Fixes RH#62591.
2038
Roland McGrath36d87c22002-12-15 23:59:13 +000020392002-12-15 Roland McGrath <roland@redhat.com>
2040
Roland McGrath32be5972002-12-16 20:41:34 +00002041 * process.c (setarg) [POWERPC]: Support it.
2042
2043 * util.c [POWERPC] (LOOP): Fix value, now 0x48000000 (0: b 0b).
2044 Old value was bogus, not even a proper instruction.
2045 From Guy M. Streeter <streeter@redhat.com>.
2046
2047 * strace.c (main) [! USE_PROCFS]: Always reset SIGCHLD to SIG_DFL.
2048
2049 * configure.in: Don't check for putpmsg.
2050 * stream.c (sys_getpmsg, sys_putpmsg): Make these conditional on
2051 #ifdef SYS_*, rather than on HAVE_PUTPMSG.
2052
Roland McGrath2fe77222002-12-16 09:54:16 +00002053 * aclocal.m4 (AC_STAT64): Include <linux/types.h> before <asm/stat.h>
2054 in test. Test our own #ifdef LINUX rather than predefined `linux'.
2055
Roland McGrath36d87c22002-12-15 23:59:13 +00002056 * linux/powerpc/syscallent.h: Use sys_llseek for _llseek.
2057 * linux/sparc/syscallent.h: Likewise.
2058 * linux/hppa/syscallent.h: Likewise.
2059
2060 * syscall.c (syscall_enter) [LINUX && POWERPC]: Define PT_ORIG_R3 if
2061 not defined, since <asm/ptrace.h> defines it only #ifdef __KERNEL__.
2062 * process.c: Likewise.
2063
2064 * desc.c (sys_osf_select): Add missing return type.
2065
2066 * syscall.c (trace_syscall): Use strerror, not sys_errlist/sys_nerr.
2067
2068 * linux/ia64/syscallent.h: Remove macros for sys_delete_module,
2069 sys_nanosleep, both already in linux/dummy.h.
2070
2071 * syscall.c (get_scno): Move static `currpers' inside #ifdef X86_64.
2072 (trace_syscall): Fix return without value.
2073
2074 * linux/syscallent.h: Update table with names of new syscalls
2075 io_setup, io_destroy, io_getvents, io_submit, io_cancel.
2076 * linux/ia64/syscallent.h: Likewise.
2077 * linux/powerpc/syscallent.h: Likewise.
2078
2079 * signal.c [LINUX && I386]: Provide SA_RESTORER constant if not
2080 defined. If the bit is set, print the sa_restorer field of sigaction.
2081
2082 * mem.c: Add sys_{get,set}_thread_area.
2083 * linux/syscall.h: Declare them.
2084 * linux/syscallent.h: Update the table for these.
2085 * linux/dummy.h (sys_modify_ldt): Define only #ifndef I386.
2086 (sys_get_thread_area, sys_set_thread_area): New macros #ifndef I386.
2087
2088 * configure.in: Check for linux/xattr.h and linux/futex.h headers.
2089 * linux/syscall.h: Add sys_* decls for new syscalls getpmsg, putpmsg,
2090 readahead, sendfile64, setxattr, fsetxattr, getxattr, fgetxattr, int
2091 listxattr, flistxattr, removexattr, fremovexattr, sched_setaffinity,
2092 sched_getaffinity, futex.
2093 * linux/syscallent.h: Update the table.
2094 * io.c: Add sys_sendfile64.
2095 * file.c: Add sys_readahead, sys_*xattr.
2096 * process.c: Add sys_futex, sys_*affinity.
2097
2098 * linux/syscall.h (SYS_socket_subcall): Define to 256 on all machines.
2099 (SYS_ipc_subcall): Always SYS_socket_subcall + SYS_socket_nsubcalls.
2100 * linux/syscallent.h: Update the table for socket and ipc subcalls.
2101
Michal Ludvig882eda82002-11-11 12:50:47 +000021022002-11-09 Heiko Carstens <heiko.carstens@de.ibm.com>
2103
2104 Bugfix for s390/s390x:
2105 * syscall.c: Fixed scno derivation for s390/s390x.
2106
Michal Ludvig17f8fb32002-11-06 13:17:21 +000021072002-11-06 Michal Ludvig <mludvig@suse.cz>
2108
Michal Ludvig39c0e942002-11-06 14:00:12 +00002109 Merged patch from Steven J. Hill <sjhill@realitydiluted.com>
2110 to allow the compilation of a native MIPS strace.
2111
21122002-11-06 Michal Ludvig <mludvig@suse.cz>
2113
Roland McGrath36d87c22002-12-15 23:59:13 +00002114 From Marty Leisner <leisner@rochester.rr.com>,
Michal Ludvig882eda82002-11-11 12:50:47 +00002115 rewritten by mludvig:
Michal Ludvig17f8fb32002-11-06 13:17:21 +00002116 * strace.c (not_failing_only): New.
2117 (usage): Added -z switch description.
2118 (main): Added -z switch parsing to not_failing_only variable.
2119 * syscall.c (trace_syscall): Added not_failing_only handling.
2120
Michal Ludvigeb818f02002-10-09 09:16:22 +000021212002-10-08 Heiko Carstens <heiko.carstens@de.ibm.com>
2122
2123 Missing complete changelog for 2002-10-07 commit:
2124 * Makefile.in: Added linux/s390, linux/s390x to ALL_SUBDIRS.
2125 * acconfig.h: New define for s390x.
2126 * config.sub: Added missing define for s390 and new one for s390x.
2127 * configure.in: Added new define for s390x.
2128 * file.c: Added missing #undef dirent64 and new defines for s390x.
2129 * linux/s390: New directory.
2130 * linux/s390/Makefile.in: New file.
2131 * linux/s390/errnoent.h: New file.
2132 * linux/s390/ioctlent.h: New file.
2133 * linux/s390/signalent.h: New file.
2134 * linux/s390/syscallent.h: New file.
2135 * linux/s390x: New directoy.
2136 * linux/s390x/Makefile.in: New file.
2137 * linux/s390x/errnoent.h: New file.
2138 * linux/s390x/ioctlent.h: New file.
2139 * linux/s390x/signalent.h: New file.
2140 * linux/s390x/syscallent.h: New file.
2141 * linux/syscall.h: Added sys_mincore() prototype and added new
2142 s390x defines.
2143 * process.c: Added s390x defines.
2144 (change_syscall): Changed handling for s390.
2145 (setarg): Added missing s390/s390x code in setarg().
2146 * signal.c: Added s390x define.
2147 (sys_sigreturn): Bugfix in s390/s390x code (wrong number of
2148 arguments to sprintsigmask()).
2149 * stream.c (internal_stream_ioctl): Changed int cast to long cast,
2150 since printstr() expects a long.
2151 * syscall.c (decode_subcall): Changed several variables to be long
2152 instead of int to match 64 bit requirements. Added s390x defines.
2153 (syscall_enter): Changed upeek() call to match s390 and s390x
2154 requirements.
2155 * util.c: Added s390x defines.
2156
Michal Ludvig10a88d02002-10-07 14:31:00 +000021572002-10-07 Michal Ludvig <mludvig@suse.cz>
2158
2159 Merged s390x port by Heiko Carstens <Heiko.Carstens@de.ibm.com>
2160 and bugfixes to s390 by D.J. Barrow.
2161
Michal Ludvig53b320f2002-09-23 13:30:09 +000021622002-09-23 Michal Ludvig <mludvig@suse.cz>
2163
Roland McGrath36d87c22002-12-15 23:59:13 +00002164 Merged x86-64 port by Andi Kleen <ak@suse.de>
Michal Ludvig0e035502002-09-23 15:41:01 +00002165 and Michal Ludvig <mludvig@suse.cz>
2166 * Makefile.in: New target 'headers'. Failure ignored.
2167 * acconfig.h: New defines for x86-64.
2168 * configure.in: Ditto.
2169 * defs.h: Ditto.
2170 * file.c: Ditto.
2171 * signal.c: Ditto.
2172 * process.c: Added support for x86-64.
2173 * util.c: Ditto.
2174 * syscall.c: Ditto + added automatic personality switching.
2175 * linux/syscall.h: Ditto.
2176 * linux/x86_64: New directory.
2177 * linux/x86_64/Makefile.in: New file.
2178 * linux/x86_64/gentab.pl: Ditto.
2179 * linux/x86_64/i386-headers.diff: Ditto.
2180 * linux/x86_64/makeheaders.sh: Ditto.
2181 * linux/x86_64/syscallent.h: Ditto.
2182 * mem.c (print_mmap): Always print arg[4] as int.
2183
21842002-09-23 Michal Ludvig <mludvig@suse.cz>
2185
Michal Ludvig53b320f2002-09-23 13:30:09 +00002186 * configure.in: Fix regular expressions.
Roland McGrath36d87c22002-12-15 23:59:13 +00002187 * linux/syscall.h: Added missing braces in prototype of
Michal Ludvig53b320f2002-09-23 13:30:09 +00002188 sys_getdents64().
2189 * file.c: Use '#ifdef LINUX' instead of '#ifdef linux'.
2190 (struct fileflags): Made extern to inhibit compiation warnings.
2191 (sys_getdents64): Merged LINUX and SVR4 part.
Roland McGrath36d87c22002-12-15 23:59:13 +00002192 * syscall.c (get_scno): Split multiline string into two distinct
Michal Ludvig53b320f2002-09-23 13:30:09 +00002193 strings.
2194
John Hughes2c4e3a82002-05-24 10:19:44 +000021952002-05-24 John Hughes <john@calva.com>
2196
2197 * stream.h, net.h: Avoid possible infinite loop caused by
2198 unsigned arithmetic in preceeding change.
2199
John Hughesb6643082002-05-23 11:02:22 +000022002002-05-23 John Hughes <john@calva.com>
2201
John Hughes38ae88d2002-05-23 11:48:58 +00002202 * acconfig.h: Add HAVE_OPTHDR and HAVE_T_OPTHDR defines.
2203
2204 * aclocal.m4: Add tests for struct opthdr in sys/socket.h and
2205 struct t_opthdr in sys/tiuser.h, define HAVE_OPTHDR and HAVE_T_OPTHDR
2206 if found.
2207
2208 * configure.in: use tests for struct opthdr and struct t_opthdr.
2209
2210 * defs.h: add new function print_sock_optmgmt.
2211
2212 * io.c: add hack that lets ioctl decode functions set auxilliary
2213 string return.
2214
2215 * stream.c: better decoding for timod ioctls.
2216
2217 * net.c: add function print_sock_optmgmt, used by timod ioctl
2218 decoding functions in stream.c.
2219
22202002-05-23 John Hughes <john@calva.com>
2221
John Hughescde80ab2002-05-23 11:19:05 +00002222 * acconfig.h: Make autoheader happy about Linux/SuperH
2223
22242002-05-23 John Hughes <john@calva.com>
2225
John Hughesb6643082002-05-23 11:02:22 +00002226 * strace.c: Get rid of warning if not using POLL_HACK
2227
John Hughes93f7fcc2002-05-22 15:46:49 +000022282002-05-22 John Hughes <john@calva.com>
2229
2230 * net.c: Simplify {get,set}sockopt, decode SO_LINGER, cope with
2231 options that are not just ints, cope with systems that don't
2232 #define SOL_TCP and so on.
2233
John Hughesd870b3c2002-05-21 11:24:18 +000022342002-05-21 John Hughes <john@calva.com>
2235
2236 * strace.c: Fix warning if POLL_HACK is used.
2237
John Hughesc61eb3d2002-05-17 11:37:50 +000022382002-05-17 John Hughes <john@calva.com>
2239
John Hughes5eb78d52002-05-17 14:04:24 +00002240 * svr4/ioctlent.sh: Some defines on UW come with too many spaces.
2241
22422002-05-17 John Hughes <john@calva.com>
2243
John Hughese9224782002-05-17 13:58:24 +00002244 * svr4/ioctlent.sh: Cope with #defines wrapped in #ifdefs.
2245
22462002-05-17 John Hughes <john@calva.com>
2247
John Hughesfd15cb32002-05-17 11:41:35 +00002248 * stream.c: tidy up output a little.
2249
22502002-05-17 John Hughes <john@calva.com>
2251
John Hughesc61eb3d2002-05-17 11:37:50 +00002252 * process.c, svr4/dummy.h, svr4/syscall.h: decode arguments
2253 to procpriv syscall.
2254
Wichert Akkermanccef6372002-05-01 16:39:22 +000022552002-05-01 Wichert Akkerman <wichert@deephackmode.org>
2256
2257 * configure.in, defs.h, process.c, sock.c, syscall.c, util.c: merge
2258 patch from Greg Banks <gbanks@pocketpenguins.com> for Linux/SuperH
2259 support
2260
Wichert Akkermanb0c598f2002-04-01 12:48:06 +000022612002-04-01 Wichert Akkerman <wichert@deephackmode.org>
2262
Wichert Akkermaneb8ebda2002-04-01 17:48:02 +00002263 * strace.c: close tcp->outf in droptcb()
2264
22652002-04-01 Wichert Akkerman <wichert@deephackmode.org>
2266
Wichert Akkermanb0c598f2002-04-01 12:48:06 +00002267 * net.c: decode packet options
2268
Wichert Akkermand321ff92002-03-31 18:45:45 +000022692002-03-31 Wichert Akkerman <wichert@deephackmode.org>
2270
Wichert Akkermaned2c74d2002-03-31 20:16:02 +00002271 * linux/{alpha,hppa,ia64,mips,powerpc,sparc}/syscallent.h: regenerated
2272
22732002-03-31 Wichert Akkerman <wichert@deephackmode.org>
2274
Wichert Akkermand321ff92002-03-31 18:45:45 +00002275 * debian/*: added
Wichert Akkerman7ab47b62002-03-31 19:00:02 +00002276 * linux/syscallent.h: fix typo and add the reserved stream syscalls
2277 * defs.h, file.c, io.c: fix signed/unsigned issues
Wichert Akkerman4527dae2002-03-31 19:03:29 +00002278 * syscall.c: check for negative u_errors
Wichert Akkerman235b0ff2002-03-31 19:08:04 +00002279 * cvsbuild: renamed to autogen.sh
Wichert Akkermand321ff92002-03-31 18:45:45 +00002280
Wichert Akkerman8b8ff7c2001-12-27 22:27:30 +000022812001-12-17 Wichert Akkerman <wakkerma@debian.org>
2282
2283 * net.c: add new TCP socket options
2284
John Hughesfa519572001-10-26 08:05:49 +000022852001-10-26 John Hughes <john@calva.com>
2286
2287 * svr4/ioctlent.sh: Cope with #define lines containing
2288 comments that terminate on subsequent lines. Used to
2289 comment out subsequent ioctls!
2290
Wichert Akkerman9fbd0dd2001-10-26 05:20:37 +000022912001-10-25 Wichert Akkerman <wakkerma@debian.org>
2292
2293 * linux/ioctlent.h: regenerated using current scripts so
2294 term ioctls are included
2295
John Hughes19e49982001-10-19 08:59:12 +000022962001-10-19 John Hughes <john@Calva.COM>
2297
2298 * strace.c(proc_open): On SVR4 only trace the syscalls,
2299 signals and faults we care about.
2300
John Hughes42162082001-10-18 14:48:26 +000023012001-10-18 John Hughes <john@Calva.COM>
2302
John Hughesc0c5ac82001-10-19 07:32:14 +00002303 * acconfig.h: Add HAS_SIGINFO_T.
2304 * aclocal.m4: add check for siginfo_t in signal.h.
2305 * configure.in: use check for siginfo_t.
2306 * defs.h: if HAVE_SIGINFO_T the declare printsiginfo. On SVR4
2307 allow access to siginfo when signal recieved.
2308 * process.c: Remove SVR4 only version of printsiginfo.
2309 * signal.c: merge SVR4 and LINUX versions of printsiginfo.
2310 * strace.c: on SVR4 print siginfo when signal recieved.
2311
23122001-10-18 John Hughes <john@Calva.COM>
2313
John Hughes2d8b2c52001-10-18 14:52:24 +00002314 * system.c(sys_ssisys): handle return values for ssisys
2315
23162001-10-18 John Hughes <john@Calva.COM>
2317
John Hughes42162082001-10-18 14:48:26 +00002318 * signal.c: handle sigwait
2319 * svr4/dummy.c: Move sigwait to done
2320 * svr4/syscall.h: handle sigwait
2321
John Hughes9cecf7f2001-10-16 10:20:22 +000023222001-10-16 John Hughes <john@Calva.COM>
2323
John Hughes0aadba42001-10-16 18:19:52 +00002324 * system.c(sys_ssisys): decode some args for ssisys.
2325
23262001-10-16 John Hughes <john@Calva.COM>
2327
John Hughesaca07f32001-10-16 18:12:27 +00002328 * mem.c: MS_SYNC is zero, so must be first in xlat list.
2329
2330 * svr4/dummy.h: memcntl is much like mctl.
2331
23322001-10-16 John Hughes <john@Calva.COM>
2333
John Hughes9cecf7f2001-10-16 10:20:22 +00002334 * util.c (umovestr): UnixWare (svr4?) returns 0 when trying
2335 to read unmapped page. Make it possible to strace ksh.
2336
Wichert Akkerman7b3346b2001-10-09 23:47:38 +000023372001-10-03 David Mosberger <davidm@hpl.hp.com>
2338
2339 * process.c (internal_clone): Avoid race condition by clearing
2340 breakpoint after attaching to child.
2341
23422001-10-02 David Mosberger <davidm@hpl.hp.com>
2343
2344 * linux/ia64/syscallent.h: Define ia32 syscall numbers (originally
2345 by Don Dugger, with my refinements).
2346
2347 * linux/ia64/ioctlent.h: Regenerate and manually merge conflicting
2348 ioctls (TCGETS & SNDCTL_TMR_TIMEBASE, etc.).
2349
2350 * linux/ia64/Makefile.in (ioctldefs.h ioctls.h): Update for
2351 new ioctlent.h generation scheme.
2352
2353 * linux/syscall.h (sys_clone2): Declare.
2354 [IA64] Define ia32 socket, ipc, and extra syscall numbers.
2355
2356 * linux/ioctlent.sh (regexp): Also handle <asm/ioctls.h> so we
2357 don't miss the tty ioctls (unfortunately, some of the sound timer
2358 ioctls are in conflict with them!).
2359
2360 * util.c (setbpt) [IA64]: Add ia32 support (by Don Dugger).
2361 (clrbpt) [IA64]: Ditto.
2362
2363 * syscall.c (internal_syscall): Handle SYS_clone2, SYS32_wait4,
2364 and SYS32_exit.
2365 (get_scno): Get ia32 syscall number from r1 (orig eax) instead of
2366 r8 (eax). Handle TCB_WAITEXECVE.
2367 (syscall_fixup): Handle ia64.
2368 (syscall_enter): Fix argument fetching for ia64.
2369
2370 * strace.c [IA64 && LINUX]: Include <asm/ptrace_offsets.h>.
2371 (trace) [PT_GETSIGINFO]: Print signal address and pc if possible.
2372
2373 * process.c (tcp): New function.
2374 (change_syscall): Add support for ia64 linux.
2375 (sys_execve): Turn on TCB_WAITEXECVE for ia64 linux.
2376
2377 * desc.c (getlk): Cast l_len to "long long" to avoid warnings when
2378 type is narrower.
2379 * resource.c (sprintrlim64): Ditto.
2380
2381 * defs.h (TCB_WAITEXECVE) [IA64]: Define.
2382 [IA64]: Declare "ia32" variable.
2383
2384 * bjm.c: Do not include <linux/module.h>. It's not safe to include
2385 kernel headers. Declare the necessary constants and structures
2386 directly instead.
2387
23882001-10-01 David Mosberger <davidm@hpl.hp.com>
2389
2390 * signal.c (parse_sigset_t): New function.
2391 (sigishandled): Fix off-by-one bug by using parse_sigset_t() and
2392 avoiding relying on internal layout of sigset_t datastructure.
2393
23942001-04-26 David Mosberger <davidm@hpl.hp.com>
2395
2396 * linux/ia64/syscallent.h: Add getunwind().
2397
23982001-04-11 David Mosberger <davidm@hpl.hp.com>
2399
2400 * syscall.c (syscall_enter): Use PT_RBS_END instead of deprecated
2401 PT_AR_BSP. Pick up arguments starting with out0, which is not
2402 always the same as r32 (e.g., consider inlined syscalls).
2403
John Hughesa2278142001-09-28 16:21:30 +000024042001-09-28 John Hughes <john@Calva.COM>
2405
2406 * process.c: FreeBSD-CURRENT no longer has PT_READ_U, and anyway we
2407 were showing it as PT_WRITE_U! Fix from Maxime Henrion.
2408
John Hughes1fcb1d62001-09-18 15:56:53 +000024092001-09-18 John Hughes <john@Calva.COM>
2410
2411 * net.c: fix display of sockaddr structures, sometimes too many "}",
2412 sometimes too few. Fix suggested by Richard Kettlewell.
2413
Wichert Akkerman67e3e632001-08-19 11:43:17 +000024142001-08-19 Wichert Akkerman <wakkerma@debian.org>
2415
2416 * signal.c: do not include asm/sigcontext.h on IA64 since it gets
2417 the struct from bits/sigcontext.h already which signal.h includes.
2418
Wichert Akkerman7b96b572001-08-03 11:37:07 +000024192001-08-03 Wichert Akkerman <wakkerma@debian.org>
2420
Wichert Akkerman7c707a72001-08-03 21:54:08 +00002421 * linux/ioctlent.sh: change regexps so we catch sound ioctls as well in
2422 Linux
2423 * linux/Makefile.in: fix a few things so the ioctl list is generated
2424 properly
2425 * ioctl.c: remember to shift ioctl masks as well
2426
24272001-08-03 Wichert Akkerman <wakkerma@debian.org>
2428
Wichert Akkermancd6aefc2001-08-03 12:27:54 +00002429 * Linux/**/syscallent.h: synchronize section for fcntl and use sys_fcntl
2430 for sys_fcntl as well
2431
24322001-08-03 Wichert Akkerman <wakkerma@debian.org>
2433
Wichert Akkerman0b1120a2001-08-03 12:20:38 +00002434 * linux/hppa/syscallent.h: updated from Matthew Wilcox
2435
24362001-08-03 Wichert Akkerman <wakkerma@debian.org>
2437
Wichert Akkerman82b162e2001-08-03 11:51:28 +00002438 * process.c: seems Linux/IA64 changed register names on us, switch to
2439 using new names.
2440
24412001-08-03 Wichert Akkerman <wakkerma@debian.org>
2442
Wichert Akkerman54b4f792001-08-03 11:43:35 +00002443 * strace.c: set CLOEXEC flag for outputfile
2444
24452001-08-03 Wichert Akkerman <wakkerma@debian.org>
2446
Wichert Akkerman7b96b572001-08-03 11:37:07 +00002447 * linux/sparc/syscall.h, linux/sparc/syscallent.h: add some LFS calls
2448
Wichert Akkerman4f1bbbe2001-07-23 14:43:07 +000024492001-07-23 Wichert Akkerman <wakkerma@debian.org>
2450
2451 * configure.in: Support cross-compiling between architectures
2452
Wichert Akkerman0dc4fc92001-07-13 22:09:05 +000024532001-07-13 Wichert Akkerman <wakkerma@debian.org>
2454
2455 * configure.in: add S390 to architecture list
2456
John Hughes1d08dcf2001-07-10 13:48:44 +000024572001-07-10 John Hughes <john@Calva.COM>
2458
2459 * TODO, defs.h, io.h, net.c, strace.c, syscall.c, util.c: Merge fixes
2460 from Richard Kettlewell <rkettlewell@zeus.com> which add I/O dumping
2461 of args to readv/writev. Also gets rid of redundant printiovec
2462 routine from net.c (duplicate of tprint_iov in util.c).
2463
Wichert Akkerman688c7fc2001-07-02 16:53:25 +000024642001-07-02 Wichert Akkerman <wakkerma@debian.org>
2465
2466 * config.{guess,sub}: updated
2467
John Hughesaa09c6b2001-05-15 14:53:43 +000024682001-05-15 John Hughes <john@Calva.COM>
2469
John Hughes70c5e7a2001-05-15 15:09:14 +00002470 * signal.c: pass a pointer to sigmask to printsigmask from printcontext,
2471 it was just passing the sigmask (ucp->uc_sigmask).
2472
24732001-05-15 John Hughes <john@Calva.COM>
2474
John Hughesaa09c6b2001-05-15 14:53:43 +00002475 * util.c: Don't run off the end of valid memory in umovestr when
2476 USE_PROCFS. Important for FREEBSD systems (which seem to have an
2477 unmapped page just after the args/env area).
2478
John Hughes4e36a812001-04-18 15:11:51 +000024792001-04-18 John Hughes <john@Calva.COM>
2480
2481 * configure.in: test for sys/nscsys.h, the non-stop clusters includes.
2482 * process.c: handle rfork{1,all} and rexecve calls on non-stop clusters.
2483 * syscall.c: treat rfork{1,all} and fork{1,all} as fork like calls.
2484 Treat rexecve as an exec.
2485 * system.c: decode arguments to ssisys call on nsc systems.
2486 * svr4/dummy.h, svr4/syscall.h: now we handle rfork{1,all}, ssisys and
2487 rexecve calls.
2488
Wichert Akkerman35254402001-04-12 09:11:04 +000024892001-04-12 Wichert Akkerman <wakkerma@debian.org>
2490
2491 * process.c: fix cast for powerpc code
2492 * linux/powerpc/syscallent.h: update syscall list
2493 * README: fix address for the strace mailinglist
2494 * signal.c: switch to using /proc/<pid>/status on Linux so we can get
2495 the realtime signals as well
2496
Wichert Akkerman4ca31092001-04-10 10:28:43 +000024972001-04-10 Wichert Akkerman <wakkerma@debian.org>
2498
2499 * Merge patches from Maciej W. Rozycki:
2500 + util.c: add code to print PC for MIPS
2501 + linux/mips/syscallent.h: updated
2502 + system.c: formating fixes for sys_sysmips
Wichert Akkerman42080d82001-04-10 10:32:26 +00002503 + configure.in: test for yet more headers
2504 + stream.c: use configure-headertests instead of relying on OS hints
Wichert Akkerman4ca31092001-04-10 10:28:43 +00002505
Wichert Akkermand6b92492001-04-07 21:37:12 +000025062001-04-07 Wichert Akkerman <wakkerma@debian.org>
2507
Wichert Akkermane70bbe52001-04-07 21:47:30 +00002508 * NEWS: start 4.3.1 items
2509 * version.c: updated to say 4.3.1 (was still 4.2, oops!)
2510
25112001-04-07 Wichert Akkerman <wakkerma@debian.org>
2512
Wichert Akkermand6b92492001-04-07 21:37:12 +00002513 * configure.in: test for asm/sysmips.h and linux/utsname.h
2514 * linux/syscall.h: fix a typo for sys_sysmips
2515 * system.c: include asm/sysmips.h and linux/utsname.h if they exist,
2516 fix typo
2517
Wichert Akkerman4f043ec2001-03-31 16:25:58 +000025182001-03-31 Wichert Akkerman <wakkerma@debian.org>
2519
2520 * linux/mips/ioctlent.h: updated using new Linux ioctl setup
2521
25222001-03-31 Wichert Akkerman <wakkerma@debian.org>
Wichert Akkerman8aada672001-03-31 16:20:33 +00002523
2524 * linux/ia64/ioctlent.h: regenerated
2525
Wichert Akkerman29f0d052001-03-31 16:14:55 +000025262001-03-31 Wichert Akkerman <wakkerma@debian.org>
2527
Wichert Akkermancf715672001-03-31 16:16:57 +00002528 * linux/{alpha,ia64,powerpc}/ioctlent.sh: removed, all archs use the
2529 general Linux ioctlent.sh
2530
25312001-03-31 Wichert Akkerman <wakkerma@debian.org>
2532
Wichert Akkerman29f0d052001-03-31 16:14:55 +00002533 * linux/ioctlent.sh: add dir variable for location of kernel headers
2534
Wichert Akkermanbbf59e92001-03-29 17:43:19 +000025352001-03-29 Wichert Akkerman <wakkerma@debian.org>
2536
Wichert Akkerman00cd74c2001-03-30 16:20:27 +00002537 * linux/ia64/ioctlent.h: updated using new Linux ioctl setup
2538
25392001-03-29 Wichert Akkerman <wakkerma@debian.org>
2540
Wichert Akkerman10767782001-03-29 19:04:25 +00002541 * linux/powerpc/ioctlent.h: updated using new Linux ioctl setup
2542
25432001-03-29 Wichert Akkerman <wakkerma@debian.org>
2544
Wichert Akkermand7fb2062001-03-29 18:16:07 +00002545 * linux/hppa/ioctlent.h: updated using new Linux ioctl setup
2546
25472001-03-29 Wichert Akkerman <wakkerma@debian.org>
2548
Wichert Akkermanbbf59e92001-03-29 17:43:19 +00002549 * linux/alpha/ioctlent.h: updated using new Linux ioctl setup
2550
Wichert Akkerman2f1d87e2001-03-28 14:40:14 +000025512001-03-28 Wichert Akkerman <wakkerma@debian.org>
2552
Wichert Akkerman00a82ee2001-03-28 20:29:17 +00002553 * configure.in: use sparc* so we can compile on sparc64 as well
2554 * process.c, syscall.c: work around double define of fpq, fq and fpu
2555 structs on Linux/sparc, and use regs instead of pt_regs
2556 * don't use asm/sigcontext.h on Linux/sparc
2557
25582001-03-28 Wichert Akkerman <wakkerma@debian.org>
2559
Wichert Akkermanfe8f65d2001-03-28 15:10:49 +00002560 * linux/sparc/ioctlent.h: updated using new Linux ioctl setup
2561
25622001-03-28 Wichert Akkerman <wakkerma@debian.org>
2563
Wichert Akkerman2f1d87e2001-03-28 14:40:14 +00002564 * strace.c: use __WALL as wait4 flag if it exists so we can properly
2565 trace threaded programs
2566
John Hughes8e075fb2001-03-27 13:57:48 +000025672001-03-27 John Hughes <john@Calva.COM>
2568
John Hughesb8a85a42001-03-28 08:05:27 +00002569 * aclocal.m4: add check for endianness of long long.
2570 * acconfig.h: add #define for LITTLE_ENDIAN_LONG_LONG.
2571 * configure.in: check for endianness of long long.
Wichert Akkerman8ab1a3c2001-03-28 14:27:23 +00002572 * defs.h: change LONG_LONG macro to work with either endianness of
John Hughesb8a85a42001-03-28 08:05:27 +00002573 long long.
2574
25752001-03-27 John Hughes <john@Calva.COM>
2576
John Hughes61563572001-03-27 16:47:36 +00002577 * net.c: Make compilable by SCO UDK compiler (doesn't like empty
2578 initialisation list for array).
2579
25802001-03-27 John Hughes <john@Calva.COM>
2581
John Hughes8e075fb2001-03-27 13:57:48 +00002582 * svr4/syscallent.h: ntp_adjtime entry was duplicated on Solaris
2583 systems - bad merge of Harald Boehme's patch by me.
2584
Wichert Akkerman072ea8a2001-03-27 14:46:05 +000025852001-03-27 Wichert Akkerman <wakkerma@debian.org>
2586
2587 * lots of files: add Linux/hppa support
2588
Wichert Akkerman407be9a2001-03-19 10:56:49 +000025892001-03-19 Wichert Akkerman <wakkerma@debian.org>
2590
2591 * linux/mips/syscallent.h: we can't have -1 nargs, change to 0
Wichert Akkermane3bf56a2001-03-19 11:05:17 +00002592 * linux/syscallent.h: not that syscalls 220 and 221 are used now
Wichert Akkerman6f2bbe22001-03-19 11:00:29 +00002593 * config.guess: updated
Wichert Akkerman407be9a2001-03-19 10:56:49 +00002594
Wichert Akkermana9667852001-03-17 17:26:34 +000025952001-03-17 Wichert Akkerman <wakkerma@debian.org>
2596
2597 * linux/ioclsort.c: new file
2598 * linux/ioctlent.sh: complete rewrite to use a more sane approach to get
2599 the ioctl list that doesn't involve attempting to #include all kernel
2600 headers
2601 * linux/.cvsignore: added ioctdefs.h and ioctls.h which are generated
2602 by the new ioctlent.sh
2603 * ioctl.c: only look at the number and type bits for linux, since
2604 ioctlent.sh no longer supplies the others
2605
John Hughes70623be2001-03-08 13:59:00 +000026062001-03-08 John Hughes <john@Calva.COM>
2607
John Hughescf1de752001-03-08 17:27:20 +00002608 * freebsd/syscalls.pl: On FreeBSD we must cope with COMPATibility syscalls,
2609 pretend they have names ending with "?" so that -e trace=stat (for
2610 example) will work.
2611 * freebsd/i386/syscallent.h: add ? to compatability syscalls.
2612 * freebsd/i386/syscall.h: consistency.
2613
26142001-03-08 John Hughes <john@Calva.COM>
2615
John Hughesc0fc3fd2001-03-08 16:10:40 +00002616 * acconfig.h: add new ST_xxx defines.
2617 * aclocal.m4: macros to check for more fields in struct stat.
2618 * configure.in: use new macros to check for fields in struct stat.
2619 * file.c: use new defines to replace #ifdef FREEBSD by #if HAVE_ST_xxx.
2620
26212001-03-08 John Hughes <john@Calva.COM>
2622
John Hughes0c79e012001-03-08 14:40:06 +00002623 * defs.h: rename wimpy get64 as powerful new LONG_LONG
2624 * file.c: use LONG_LONG
2625 * io.c: use LONG_LONG
2626 * mem.c use LONG_LONG
2627
26282001-03-08 John Hughes <john@Calva.COM>
2629
John Hughes70623be2001-03-08 13:59:00 +00002630 * acconfig.h: new #defines HAVE_LONG_LONG_OFF_T and HAVE_LONG_LONG_RLIM_T.
2631 * aclocal.m4: routines to check for long long off_t and rlim_t.
2632 * configure.in: check for long long off_t and rlim_t.
2633 * desc.c: if HAVE_LONG_LONG_OFF_T treat flock as flock64
2634 * file.c: if HAVE_LONG_LONG_OFF_T treat stat,lstat,fstat and lseek as 64
2635 bit versions.
2636 * io.c: if HAVE_LONG_LONG_OFF_T use 64 bit versions of pread and pwrite.
2637 * mem.c: if HAVE_LONG_LONG_OFF_T use 64 bit version of mmap
2638 * resource.c: if HAVE_LONG_LONG_OFF_T use 64 bit versions of getrlimit
2639 and setrlimit.
2640 * freebsd/syscalls.print: don't explicitly use 64 bit versions of calls,
2641 now done automaticaly for us.
2642 * freebsd/i386/syscall.h: ditto.
2643 * freebsd/i386/syscallent.h ditto.
2644
John Hughes5a826b82001-03-07 13:21:24 +000026452001-03-07 John Hughes <john@Calva.COM>
2646
John Hughesb8c9f772001-03-07 16:53:07 +00002647 * desc.c: On FreeBSD flock structure uses 64 bit offsets.
2648 * file.c: On FreeBSD use stat64 and pals instead of stat.
2649 * freebsd/syscalls.print: use stat64, lstat64 and fstat64.
2650 * freebsd/i386/syscall.h: ditto.
2651 * freebsd/i386/syscallent.h: ditto.
2652
26532001-03-07 John Hughes <john@Calva.COM>
2654
John Hughese2f6d872001-03-07 16:03:20 +00002655 * file.c: merge missing part of Harald Böhme's solaris patches,
2656 was only declaring sys_{stat64,lstat64,fstat64} on linux!
2657
26582001-03-07 John Hughes <john@Calva.COM>
2659
John Hughes9dec06c2001-03-07 14:47:19 +00002660 * svr4/dummy.h: fix multiple define warning on non LFS64 systems.
2661 * svr4/syscallent.h: pread/pwrite are TF calls.
2662
26632001-03-07 John Hughes <john@Calva.COM>
2664
John Hughes5a826b82001-03-07 13:21:24 +00002665 * defs.h: add ALIGN64 macro to cope with FreeBSD's strange insistence
2666 on alignment for off_t (64 bit) arguments. Also simplify get64 so
2667 we don't need to know endianness of long long.
2668 * file.c: FreeBSD now uses 64 bit versions of lseek, truncate,
2669 ftruncate, allows reduction in numvber of horrid #if's
2670 * io.c: FreeBSD now uses 64 bit versions of pread, pwrite.
2671 * mem.c: FreeBSD now uses 64 bit version of mmap.
2672 * freebsd/syscalls.print: use 64 bit versions of various syscalls.
2673 * freebsd/i386/syscall.h: use 64 bit versions of various syscalls.
2674 * freebsd/i386/syscallent.h: use 64 bit versions of various syscalls.
2675
John Hughes95ea9c02001-03-07 10:11:02 +000026762001-03-06 John Hughes <john@Calva.COM>
2677
John Hughes7737c8a2001-03-07 10:41:58 +00002678 * file.c: Implement truncate64 and ftruncate64
2679 * svr4/dummy.h: add dummies for truncate64 and ftruncate64 for non
2680 LFS64 systems.
2681 * svr4/syscall.h: add declarations for truncate64 and ftruncate64.
2682
26832001-03-06 John Hughes <john@Calva.COM>
2684
John Hughesc5249902001-03-07 10:39:06 +00002685 * freebsd/syscalls.pl: fix for FreeBSD 4.1 (new optional field in
2686 syscall master file).
2687
26882001-03-06 John Hughes <john@Calva.COM>
2689
John Hughesbb557232001-03-07 10:37:38 +00002690 * syscall.c: fix for FreeBSD 4.1 (SYS_semconfig has disappeared). Also
2691 zap incorrect syscall subarg range check.
2692
26932001-03-06 John Hughes <john@Calva.COM>
2694
John Hughescb8b69d2001-03-07 10:34:27 +00002695 * configure.in, defs.h, desc.c, file.c, io.c, mem.c, net.c, resource.c,
2696 signal.c, syscall.c, svr4/dummy.h, svr4/syscall.h, svr4/syscallent.h:
2697 merge Harald Böhme's solaris patches (_LFS64_LARGEFILE and kernel aio
2698 mostly).
2699
27002001-03-06 John Hughes <john@Calva.COM>
2701
John Hughesbc4935a2001-03-07 10:28:50 +00002702 * dummy.h: add unimplemented UW sycalls
2703 * syscall.h: we can do settimeofday for UW, whopee!
2704 * syscallent.h: fix unimplemented UW syscalls
2705
27062001-03-06 John Hughes <john@Calva.COM>
2707
John Hughesc8f2e8a2001-03-07 10:26:17 +00002708 * aclocal.m4: look for pr_syscall in pr_lwp if we HAVE_MP_PROCFS
2709 * defs.h: add PR_SYSCALL to allow use of pr_lwp.pr_syscall if it exists.
2710 * syscall.c: use PR_SYSCALL instead of pr_syscall, fix up UnixWare code
2711 so it doesn't try to use pr_sysarg.
2712
27132001-03-06 John Hughes <john@Calva.COM>
2714
John Hughes091fe832001-03-07 10:15:39 +00002715 * aclocal.m4: on systems other than linux look for stat64 in sys/stat.h
2716 * file.c: handle xstat version _STAT64_VER, aka stat64.
2717
27182001-03-06 John Hughes <john@Calva.COM>
2719
John Hughes95ea9c02001-03-07 10:11:02 +00002720 * net.c: make sure SOL_ options are defined before using.
2721 * signal.c: declare sigset variable, only used on linux, inside #ifdef.
2722
Wichert Akkermanfa306182001-02-21 16:42:26 +000027232001-02-21 Wichert Akkerman <wakkerma@debian.org>
2724
2725 * net.c: fix format for printing Unix domain sockets
2726
Wichert Akkerman0cbfb322001-02-19 13:35:53 +000027272001-02-19 Wichert Akkerman <wakkerma@debian.org>
2728
2729 * linux/mips/syscallent.h: use new sys_sysmips
2730 * system.c: add sys_sysmips decoding
2731
Wichert Akkerman8c7122c2001-02-16 19:59:55 +000027322001-02-16 Wichert Akkerman <wakkerma@debian.org>
2733
Wichert Akkermanf1850652001-02-16 20:29:03 +00002734 * CREDITS: add Arkadiusz Miskiewicz <misiek@pld.org.pl> who
2735 submitted the IP6 scope ID updates
2736 * acconfig.h: add HAVE_SIN6_SCOPE_ID and HAVE_SIN6_SCOPE_ID_LINUX
2737 * aclocal.m4: add AC_SIN6_SCOPE_ID to check if sin6_scope_id is
2738 available
2739 * configure.in: check for if_indextoname function and sin6_scope_id
2740 * net.c: teach printsock about IP6 scope ids
2741
27422001-02-16 Wichert Akkerman <wakkerma@debian.org>
2743
Wichert Akkerman8c7122c2001-02-16 19:59:55 +00002744 * configure.in: test for netinet/tcp.h and netinet/udp.h existance
2745 * net.c: include netinet/tcp.h and netinet/udp.h if they exist
Wichert Akkermanedf2dcc2001-02-16 20:14:40 +00002746 * Makefile.in: use @mandir@ and @bindir@
Wichert Akkerman8c7122c2001-02-16 19:59:55 +00002747
Wichert Akkermanefdecac2000-11-26 03:59:21 +000027482000-11-26 Wichert Akkerman <wakkerma@debian.org>
2749
2750 * net.c: fix formating error in sys_setsockopt
2751 * net.c: add list of socketlayers and use that for [gs]etsockopt
2752
Roland McGrath36d87c22002-12-15 23:59:13 +000027532000-10-12 Wichert Akkerman <wakkerma@debian.org>
Wichert Akkermand856b992000-10-13 12:47:12 +00002754
2755 * time.c: use sys/timex.h so things compile with 2.2 kernels
2756 * stream.c: test if MSG_* constants are #defined
2757
Wichert Akkerman9b0c31d2000-09-03 21:56:29 +000027582000-09-03 Wichert Akkerman <wakkerma@debian.org>
2759
Wichert Akkermanefdecac2000-11-26 03:59:21 +00002760 * process.c: perform bpt trick for clone as well so we can get the
2761 pid of the child before it starts doing something
2762 * file.c: rename dirent64 struct to kernel_dirent64 so things compile
2763 again with newer libcs
2764 * test/clone.c: improve our testcase a bit
2765 * Merge another patch from Gäel Roualland with FreeBSD updates
Wichert Akkerman9b0c31d2000-09-03 21:56:29 +00002766
Wichert Akkermanbf79f2e2000-09-01 21:03:06 +000027672000-09-01 Wichert Akkerman <wakkerma@debian.org>
2768
Wichert Akkermanefdecac2000-11-26 03:59:21 +00002769 * lots of files: merge patch from Gaël Roualland to add
2770 support for FreeBSD.
Wichert Akkermanbf79f2e2000-09-01 21:03:06 +00002771
Wichert Akkerman16a03d22000-08-10 02:14:04 +000027722000-08-09 Wichert Akkerman <wakkerma@debian.org>
2773
Wichert Akkermand077c452000-08-10 18:16:15 +00002774 * file.c: update to reflect that st_ino suddenly became a long long
2775 in the in Linux 2.4.0-test6
2776
27772000-08-09 Wichert Akkerman <wakkerma@debian.org>
2778
Wichert Akkerman16a03d22000-08-10 02:14:04 +00002779 * test/clone.c: minor fixup
2780 * Another bunch of patches from John Hughes merged:
2781 * signal.c:
2782 + SVR4 printcontext(): sigset_t != sigset_t*
2783 + getcontext returns a value, so print on exit of syscall
2784 + add UC_FP to ucontext_flags for OS writers that can't spell
2785 + sys_signal(): special case SIG_{ERR,DFL,IGN}
2786 + decode_subcall(): only do subcall range checking when needed
2787 * bunch of UnixWare updates
2788 * aclocal.m4, acconfig.h, configure.in: add test for long long type
2789
Wichert Akkerman7987cdf2000-07-05 16:05:39 +000027902000-07-04 Wichert Akkerman <wakkerma@debian.org>
2791
2792 * net.c: add SOL_PACKET and SOL_RAW socket options, update
2793 SOL_IP and SOL_TCP
2794
Wichert Akkermanbd4125c2000-06-27 17:28:06 +000027952000-06-23 Wichert Akkerman <wakkerma@debian.org>
2796
2797 * strace.c: close outf before we exec a child process
2798
Wichert Akkerman43a74822000-06-27 17:33:32 +000027992000-06-09 Ulrich Drepper <drepper@redhat.com>
2800
2801 * configure.in: Don't link against libnsl on Linux, it's unnecessary.
2802 * defs.h (struct tcb): Make auxstr member const.
2803 * file.c (fsmagic): And many more magic numbers.
2804 * util.c: Don't include <linux/ptrace.h> for glibc 2.1 and up.
2805
Wichert Akkerman5ae21ea2000-05-01 01:53:59 +000028062000-04-26 Wichert Akkerman <wakkerma@debian.org>
2807
2808 * defs.h: balance #if/#endif again
2809 * system.c: fix return statements in sys_capget()
2810 * Merge updates from Topi Miettinen <Topi.Miettinen@nic.fi>:
2811 + file.c: add F_[SG]ETSIG to fcntl flags
2812 + strace.c: don't setre[gu]id if not needed
2813 + system.c: handle sys_reboot for Linux
2814 + term.c: add baudrate constants up to B4000000
2815 + linux/**/syscallent.h: note that munlockall has no arguments
2816
28172000-04-25 David Mosberger <davidm@hpl.hp.com>
2818
2819 * CREDITS: fix email address
2820 * process.c: handle PR_[GS]ET_UNALIGN and PR_[GS]ET_KEEPCAPS
2821 * signal.c: honour offset of sigconfig in sigframe structure for
2822 Linux/ia64
2823 * linux/ia64/syscallent.h: Add perfmonctl, pivotroot, mincore, and
2824 madvise syscalls.
2825 * syscall.c (syscall_enter): With Kevin's latest ptrace patches,
2826 AR_BSP points to the _end_ of the active register frame, so we need
2827 to adjust bsp by moving it back by the size of the active frame
2828 before using it.
2829
28302000-04-24 Wichert Akkerman <wakkerma@debian.org>
2831
2832 * process.c: add sparc support to change_syscall
2833
Wichert Akkerman10dfa562000-04-22 18:26:56 +000028342000-04-22 Wichert Akkerman <wakkerma@debian.org>
2835
2836 * linux/mips/syscallent.h: fix some typos
2837
Wichert Akkerman481e45b2000-04-17 07:42:31 +000028382000-04-14 Wichert Akkerman <wakkerma@debian.org>
2839
2840 * linux/mips/syscallent.h: added names for SVR4, SYSV, BSD4.3 and POSIX
2841 syscalls
2842
Wichert Akkermanfd89ced2000-04-13 17:06:09 +000028432000-04-13 Wichert Akkerman <wakkerma@debian.org>
2844
2845 * defs.h: Linux/MIPS uses syscalls up to >4k, so set MAX_QUALS to
2846 4999
2847
Wichert Akkermanc7926982000-04-10 22:22:31 +000028482000-04-09 Wichert Akkerman <wakkerma@debian.org>
2849
2850 * README-linux: updated to note that strace might not compile
2851 with development kernels
2852 * bjm.c: sys_query_module: check if malloc succeeds
2853 * system.c: sys_cap[gs]et(): check if malloc succeeds, only malloc once
2854 * linux/syscallent.h: updated for 2.3.99pre3
2855 * linux/alpha/syscallent.h: updated for 2.3.99pre3, add all osf syscalls
2856 even though Linux doesn't implement them
2857 * syscall.c: add global variables for MIPS registers as well
2858 * syscall.c: move global variables to before get_scno since that uses them
2859 * util.c: oops, misspelled defined
2860 * process.c: fix ptrace calls in change_syscall
2861 * mem.c: decode sys_madvise
2862 * Merge patch from Topi Miettinen <Topi.Miettinen@nic.fi>
2863 + add support for quotactl, fdatasync, mlock, mlockall, munlockall & acct
2864 + small fix for RLIMIT_* and RUSAGE_BOTH
2865 + enhace support for capget and capset
2866
Wichert Akkermanfaf72222000-02-19 23:59:03 +000028672000-02-19 Wichert Akkerman <wakkerma@debian.org>
2868
2869 * test/vfork.c: new file to test vfork traces
2870 * test/.cvsignore: new file
2871 * defs.h: Up maximum number of traced processed to 64
Roland McGrath36d87c22002-12-15 23:59:13 +00002872 * strace.c: Disable some debugging code from davidm
Wichert Akkermanfaf72222000-02-19 23:59:03 +00002873 * implement setarg for more architectures
2874 * implement change_syscall
2875
Wichert Akkerman2ee6e452000-02-18 15:36:12 +000028761999-12-27 Morten Welinder <terra@diku.dk>
2877
2878 * syscall.c (lookup_signal, lookup_desc): isdigit requires an
2879 _unsigned_ char parameter.
2880
Wichert Akkerman12f75d12000-02-14 16:23:40 +000028812000-02-14 Wichert Akkerman <wakkerma@debian.org>
2882
2883 * S390 updates
2884
Wichert Akkerman8b1b40c2000-02-03 21:58:30 +000028852000-02-03 Wichert Akkerman <wakkerma@debian.org>
2886
Wichert Akkerman5ae21ea2000-05-01 01:53:59 +00002887 * Merge Linux/ia64 patches
Wichert Akkerman8b1b40c2000-02-03 21:58:30 +00002888
Pavel Machek4dc3b142000-02-01 17:58:41 +000028892000-01-02 Pavel Machek <pavel@ucw.cz>
2890
2891 * probe if sys/poll.h exists in configure + minor cleanups
2892
2893 * syscall.c: split trace_syscall into few pieces to make code readable
2894
Wichert Akkerman30160182000-01-21 20:31:34 +000028952000-01-21 Wichert Akkerman <wakkerma@debian.org>
2896
2897 * Release version 4.2 to get the current updates out and so
2898 we can concentrate in finishing the clone support.
2899
Wichert Akkerman3ed6dc22000-01-11 14:41:09 +000029002000-01-11 Wichert Akkerman <wakkerma@debian.org>
2901
2902 * Add 1900 to tm_year in sprinttime
2903
Wichert Akkerman0396bdc1999-12-24 23:11:57 +000029041999-12-24 Wichert Akkerman <wakkerma@debian.org>
2905
2906 * file.c: protect printstat64 with STAT64 instead of linux so we can
2907 compile on Linux architectures that don't have it
Wichert Akkerman9148a3b1999-12-24 23:13:55 +00002908 * util.c: fix LOOP for ARM
Wichert Akkerman0396bdc1999-12-24 23:11:57 +00002909
2910Fri Dec 24 18:05:00 EST 1999
2911
Ulrich Drepperc921cb21999-12-24 08:03:35 +000029121999-12-23 Ulrich Drepper <drepper@cygnus.com>
2913
2914 * file.c: Use ugly libc_stat trick also for stat64.
2915 Implement sys_stat64, sys_fstat64, sys_lstat64, and printstat64.
2916 * process.c (internal_clone): Fix a few typos and add definitions to make
2917 it at least compile.
2918 * linux/syscall.h: Declare sys_stat64, sys_lstat64, and sys_fstat64.
2919 * linux/syscallent.h: Define table entries for sys_stat64, sys_lstat64,
2920 and sys_fstat64.
2921 * aclocal.m4: Define AC_STAT64.
2922 * acconfig.h: Define HAVE_STAT64.
2923 * configure.in: Add AC_STAT64.
2924
Wichert Akkerman4dc8a2a1999-12-23 14:20:14 +00002925Thu Dec 23 15:01:37 CET 1999 Wichert Akkerman <wakkerma@debian.org>
2926
2927 * Merge patch from ftp://oss.software.ibm.com/linux390/ to add
2928 support for Linux on the IBM S/390 architecture
Wichert Akkerman7a0b6491999-12-23 15:08:17 +00002929 * process.c: add internal_clone(), currently only shows the options
2930 * syscall.c: use internal_clone to handle SYS_clone
Wichert Akkerman4dc8a2a1999-12-23 14:20:14 +00002931
2932Mon Dec 20 00:27:50 CET 1999 Wichert Akkerman <wakkerma@debian.org>
2933
2934 * Rewrite mmap-handling to support mmap2 on Linux
2935
Wichert Akkermane5be0de1999-12-14 10:46:18 +00002936Tue Dec 14 11:35:16 CET 1999 Wichert Akkerman <wakkerma@debian.org>
2937
2938 * Note that Linux can handle sys_semop() as well
2939
Wichert Akkerman4dc8a2a1999-12-23 14:20:14 +00002940Tue Nov 30 11:05:26 CET 1999 Wichert Akkerman <wakkerma@debian.org>
2941
2942 * Include linux/in6.h for glibc2.0 and older
2943
Wichert Akkermanea78f0f1999-11-29 15:34:02 +00002944Mon Nov 29 16:33:04 CET 1999 Wichert Akkerman <wakkerma@debian.org>
2945
2946 * Merge patches from John Hughes to make configure support UnixWare
2947
Wichert Akkerman9123ac81999-11-27 21:58:20 +00002948Sat Nov 27 21:38:17 CET 1999 Wichert Akkerman <wakkerma@debian.org>
2949
2950 * Enhance sys_query_module
2951
Wichert Akkermane4aafd41999-11-26 09:54:08 +00002952Fri Nov 26 10:51:55 CET 1999 Wichert Akkerman <wakkerma@debian.org>
2953
2954 * Patches from John Hughes:
2955 + cosmectic fix in sys_getpmsg
Wichert Akkerman48214be1999-11-26 09:55:42 +00002956 + allow net.c to compile on systems without AF_INET6
2957 + Only use long_to_sigset on Linux systems
Wichert Akkerman46956571999-11-26 10:12:59 +00002958 + UnixWare treats sigmask_t and sigmask_t* as the same thing
Wichert Akkerman9dbf1541999-11-26 13:11:29 +00002959 + Add pollhack
Wichert Akkerman3377df71999-11-26 13:14:41 +00002960 + Parse mount arguments for UnixWare
2961 + ACL fixes for UnixWare
Wichert Akkermane4aafd41999-11-26 09:54:08 +00002962
Wichert Akkerman2a64b431999-11-26 00:29:05 +00002963Fri Nov 26 01:28:09 CET 1999 Wichert Akkerman <wakkerma@debian.org>
2964
2965 * Release 4.1 to get all the changes made out there
2966
Wichert Akkermanf5eeabb1999-11-18 17:09:47 +00002967Thu Nov 18 18:04:04 CET 1999 Wichert Akkerman <wakkerma@debian.org>
2968
2969 * Merge stracefork from Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
2970 + Socket calls parsed better
2971 + bunch of alpha OSF syscalls added
2972 + Fix alpha 32/64 bit issues
2973
Wichert Akkerman2f473da1999-11-01 19:53:31 +00002974Mon Nov 1 20:52:08 CET 1999 Wichert Akkerman <wakkerma@debian.org>
2975
2976 * Move Linux kernelmodule-functions from system.c to bjm.c and
2977 remove duplicate for sys_create_module
Wichert Akkerman60456d71999-11-01 19:59:33 +00002978 * Linux MIPS updates:
2979 + Play with #ifdef's in net.c to get IPv6 right
2980 + Use printargs for vm86-syscall
Wichert Akkerman2f473da1999-11-01 19:53:31 +00002981
Wichert Akkermanf90da011999-10-31 21:15:38 +00002982Sun Oct 31 22:03:00 CET 1999 Wichert Akkerman <wakkerma@debian.org>
2983
2984 * Merge Linux mips patch from Florian Lohoff <flo@rfc822.org>
2985
Wichert Akkerman50524821999-10-10 22:40:07 +00002986Mon Oct 11 00:36:25 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
2987
2988 * Merge patch from Keith Owens <kaos@ocs.com.au> to sys_query_module
2989 and sys_delete_module correctly
2990
Wichert Akkerman15dea971999-10-06 13:06:34 +00002991Wed Oct 6 02:00:33 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
2992
2993 * Update cvsbuild to give a better error if autoconf isn't installed
2994 * Add test for linux/ptrace.h to configure
2995 * Since we define GNU_SOURCE in the Makefile we don't need to define
2996 USE_GNU in file.c anymore
2997
2998Fri Sep 10 04:35:16 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
2999
3000 * #define USE_GNU before including file.c so we get some extra O_* flags
3001
3002Tue Aug 31 16:27:21 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3003
3004 * Add missing } in IPv6 output
3005
Wichert Akkerman7b27ba01999-08-30 23:26:53 +00003006Tue Aug 31 01:23:08 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3007
3008 * Update copyright for strace-graph to BSD to be consistent with
3009 the rest of strace
3010
Wichert Akkerman9ce1a631999-08-29 23:15:07 +00003011Mon Aug 30 00:53:57 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3012
3013 * Merge patch from Daniel Jacobowitz: KERN_JAVA_* and KERN_SECURELVL aren't
3014 defined for all kernelversions
Wichert Akkerman7b27ba01999-08-30 23:26:53 +00003015 * Add strace-graph, written by Richard Braakman <dark@xs4all.nl>
Wichert Akkerman9ce1a631999-08-29 23:15:07 +00003016
3017Thu Aug 19 13:10:15 CEST 1999 Jakub Jelinek <jj@ultra.linux.cz>
3018
3019 * linux/sparc/syscall.h: Declare create_module/init_module.
3020 * configure.in: Allow compilation in a different directory
3021 than the source one.
3022 * signal.c: Use asm/reg.h and struct regs instead of pt_regs
3023 so that we don't depend on asm/ptrace.h which clashes with
3024 glibc sys/ptrace.h.
3025 * util.c: Likewise.
3026 * syscall.c: Likewise.
3027
Wichert Akkerman5a777661999-08-04 16:03:49 +00003028Wed Aug 4 18:01:50 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3029
3030 * Syscall 94 on Linux alpha is sys_poll
3031
Wichert Akkerman9ce1a631999-08-29 23:15:07 +00003032Sun Jul 25 14:38:33 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3033
3034 * Merge in UnixWare patches from John Hughes <john@Calva.COM>
3035
Wichert Akkerman527a8051999-07-15 21:11:37 +00003036Thu Jul 15 23:00:32 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3037
3038 * Merge patch from Maciej W. Rozycki <macro@ds2.pg.gda.pl>:
3039 + Correctly implement fix sys_createmodule (Linux)
3040 + Add limited handlig of sys_initmodule (Linux)
3041
Wichert Akkerman36915a11999-07-13 15:45:02 +00003042Tue Jul 13 17:07:50 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3043
3044 * Add configure-test for sys/reg.h and use that
3045 * Use sys/reg.h instead of asm/ptrace.h
3046
Wichert Akkermanca446991999-07-09 23:48:58 +00003047Sat Jul 10 01:46:10 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3048
3049 * Remove hack in signal.c for arm architecture
3050 * Add hack so we compile correctly on powerpc
3051
Wichert Akkerman5b4d1281999-07-09 00:32:54 +00003052Fri Jul 9 02:28:16 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3053
3054 * Add a corrected patch from Daniel Jacobowitz
3055
Wichert Akkermana6013701999-07-08 14:00:58 +00003056Thu Jul 8 16:00:04 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3057
3058 * Merge patch from Daniel Jacobowitz to allow us to use the kernel types
3059 for the stat structure
3060
3061Thu Jun 24 15:54:18 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
Wichert Akkerman2b483ba1999-06-24 13:55:29 +00003062
3063 * Fix test for sys/reg include
3064
Wichert Akkermana6013701999-07-08 14:00:58 +00003065Tue Jun 22 17:26:33 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
Wichert Akkermane6f876c1999-06-22 15:28:30 +00003066
3067 * Fixed some Linux/powerpc sillyness, thanks to Daniel Jacobowitz
3068 * Fixed some SunOS compile problems earlier that I forgot to include
3069 here
3070
Wichert Akkerman789ed351999-06-14 10:45:01 +00003071Mon Jun 14 12:44:25 CEST 1999
3072
3073 * Avoid leakint fd into child when forking, patch from
3074 John Hughes <john@Calva.COM>
3075
Wichert Akkerman8829a551999-06-11 13:18:40 +00003076Fri Jun 11 14:54:47 CEST 1999
3077
3078 * Applied IRIX64 patch from Thomas E. Dickey <dickey@clark.net>
3079 * Applied Solaris and manpage updates from Guy Harris <guy@netapp.com>
3080
Wichert Akkermancc4b8f41999-06-09 12:50:10 +00003081Wed Jun 9 14:48:49 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3082
3083 * Brought syscall list for alpha up to date
3084
Wichert Akkermandacfb6e1999-06-03 14:21:07 +00003085Wed Jun 2 18:30:12 CEST 1999 Jakub Jelinek <jj@ultra.linux.cz>
3086
3087 * system.c: sys_umount2 syscall support.
3088 * linux/sparc/errnoent.h: Update sparc-linux errnos.
3089 * linux/sparc/syscall.h: Update used sparc-linux syscalls.
3090 * linux/sparc/syscallent.h: Match 2.2.9 system calls.
3091 * file.c: sparc-linux asm/stat.h uses dev_t etc. types,
3092 so it needs strace's own copy of the stat structure.
3093 * util.c: Make it compile on sparc-linux.
3094 * strace.c: Fix strace -f and -ff operation on sparc-linux.
3095 * signal.c: rt_sigaction has different arguments on sparc*-linux
3096 and alpha-linux.
3097 * syscall.c: Recognize sparc64-linux binaries.
3098
Ulrich Drepper0d2d3231999-05-29 04:11:48 +00003099Fri May 28 21:09:00 PST Ulrich Drepper <drepper@cygnus.com>
3100
3101 * configure.in: Fix typo (CFLAG -> CFLAGS).
3102
Ulrich Drepper8783c011999-05-29 04:13:58 +00003103 * syscall.c: Don't include linux/ptrace.h explicitly for glibc.
3104
Wichert Akkerman22fe9d21999-05-27 12:00:57 +00003105Thu May 27 13:59:27 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3106
3107 * Add some sysctl support, patch from Ulrich Drepper
3108
Wichert Akkerman9524bb91999-05-25 23:11:18 +00003109Wed May 26 01:04:34 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3110
3111 * Use kernel dirent structure for Linux
3112
Wichert Akkerman2e2553a1999-05-09 00:29:58 +00003113Sun May 9 02:18:30 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3114
3115 * Merge in patches from Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
3116 + some layout and other minor fixes
3117 + add some m68k-specific things to linux/syscallent.h. Note that m68k
3118 is similar enough to i386 to not need it's own subdirectory
3119 + add support for sendfile and mremap syscalls for Linux
3120 * Merge in patches from Sascha Schumann <sascha@schumann.2ns.de>
3121 + ioctls.h vs sys/ioctl.h on Alpha platform
3122 + pointer was casted to an int in stream.c
3123 + strsignal() needs -D_GNU_SOURCE in CFLAGS
3124 + several other casts changed
3125 + correct ARM/POWERPC architecture defines in acconfig.h
3126 * Merge in patches from Morten Welinder <terra@diku.dk>
3127 + add some autoconf-tests for includefiles
3128 + handle solaris version of sigcontext struct (actually I hacked this
3129 up again, but the idea is his :)
3130
Wichert Akkerman7a1f0e91999-04-18 20:23:57 +00003131Sun Apr 18 22:32:42 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3132
3133 * Update syscalls for linux alpha, patch from Bart Warmerdam
Ulrich Drepperc921cb21999-12-24 08:03:35 +00003134 <bartw@debian.org>
Wichert Akkermand4d8e921999-04-18 23:30:29 +00003135 * Update sparc code so it actually compiles
Wichert Akkerman7a1f0e91999-04-18 20:23:57 +00003136
Wichert Akkerman328c5e71999-04-16 00:21:26 +00003137Fri Apr 16 02:18:05 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3138
Wichert Akkerman25d0c4f1999-04-18 19:35:42 +00003139 * Add support for old_*stat functions for Linux. Please note you need
3140 to use reasonably recent kernel headers to compile strace now.
Wichert Akkerman328c5e71999-04-16 00:21:26 +00003141 * Change references to LINUX into linux in file.c
3142 * Fix include for LDT in mem.c
Wichert Akkerman1786d811999-04-15 20:34:14 +00003143
3144Thu Apr 15 22:28:15 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
3145
3146 * Change in strace maintainership, jrs passed the torch to me.
3147 * Use autoconf 2.13
3148 * Incorporate all changes already made in the Debian strace package:
3149 + compiles with more Linux kernels
3150 + added support for more Linux architectures
3151 + add support for a lot of extra syscalls
3152 + fix some problems with hanging children
3153 + check stray syscall after execv
3154 + decode capget and capset arguments
3155 + add more constants to net.c
3156 + detect ROSE networking
3157 + add more protocol families to domains
3158 + add IPIP protocol
3159 + added MSG_PROXY and MSG_CTRUNC to msg_flags
3160 + added SO_BSDCOMPAT and SO_REUSEPORT to sockoptions
3161 + added IP, IPX and TCP-options
3162 + added IP, IPX and TCP support to get-/setsockopt()
3163 + added IPX support
3164 + updated handling of signals
3165
Wichert Akkerman76baf7c1999-02-19 00:21:36 +00003166Sun Oct 27 22:28:00 1996 J. Richard Sladkey <jrs@world.std.com>
3167
3168 * util.c (umovestr) [LINUX]: Handle Linux like SunOS4
3169 instead of SVR4. That is, read a few bytes at a time
3170 to avoid overrunning the end of the stack.
3171
3172Fri May 31 01:48:49 1996 J. Richard Sladkey <jrs@world.std.com>
3173
3174 * version.c: Version 3.1 is released.
3175
3176Thu May 23 01:04:43 1996 J. Richard Sladkey <jrs@world.std.com>
3177
3178 * aclocal.m4 (AC_DECL_SYS_ERRLIST): Try looking in stdio.h
3179 as well since that's where glibc declares it. Go figure.
3180 * signal.c (sys_sigreturn) [ALPHA]: Use sigcontext
3181 instead of sigcontext_struct since glibc v5+ apparently
3182 plays games with the native OS namespace.
3183 From David Mosberger-Tang <davidm@AZStarNet.com>.
3184
3185Mon May 20 23:17:14 1996 J. Richard Sladkey <jrs@world.std.com>
3186
3187 * version.c: Version 3.0.14 is released.
3188
3189 * aclocal.m4 (AC_STRUCT_MSG_CONTROL): New macro.
3190 * configure.in: Add call to AC_STRUCT_MSG_CONTROL.
3191 * net.c (printmsghdr): Handle BSD 4.3 and 4.4 msghdr members
3192 differently.
3193 Reported by Henrik Storner <storner@osiris.ping.dk>.
3194
3195 * configure.in: (AC_CHECK_{HEADERS,FUNCS}): Add checks for
3196 sys/filio.h and sys/stream.h and remove check for poll.
3197 * desc.c (decode_select, sys_select, sys_oldselect) [LINUX]:
3198 Handle old and new styles of argument passing for select on Linux.
3199 * ioctl.c, stream.c: Conditionalize stream code on presence of
3200 sys/stream.h instead of poll because glibc implements poll but
3201 not the rest of the stream interface.
3202 * signal.c [LINUX]: Standardize on the name sigcontext_struct.
3203 (sys_sigprocmask) [ALPHA]: Handle OSF flavor which is more like
3204 sigsetmask.
3205 * term.c (term_ioctl): Use _VMIN, if present, for TC{G,S}ETA*.
3206 * util.c (umoven, umovestr): Move data in long-sized chunks
3207 at a time, instead of hard coding it to be 4.
3208 From David Mosberger-Tang <davidm@AZStarNet.com>.
Ulrich Drepperc921cb21999-12-24 08:03:35 +00003209
Wichert Akkerman76baf7c1999-02-19 00:21:36 +00003210Mon May 20 01:19:36 1996 J. Richard Sladkey <jrs@world.std.com>
3211
3212 * version.c: Version 3.0.13 is released.
3213
3214 * configure.in (AC_CHECK_HEADERS): Add check for asm/sigcontext.h.
3215 * signal.c [HAVE_ASM_SIGCONTEXT_H]: Conditionally include
3216 asm/sigcontext.h to define sigcontext_struct and don't define it
3217 locally if the header is present.
3218
3219 * syscall.c (nerrnos{0,2}): Correct size computation.
3220
3221 * Makefile.in: Remove dependencies and rules relating to files
3222 normally found in the os directory. Because of the new scheme we
3223 don't know precisely where they come from. Sigh.
3224 * signalent.sh: Make it work for sunos4, linux, and svr4.
3225 * {sunos4,linux{,/alpha},svr4}/Makefile.in: Make rules correspond
3226 to traditional make syntax. Add signalent.h to files which can
3227 unconditionally be rebuilt. Prevent signalent.h from being
3228 unconditionally being rebuilt since it's customized.
3229 * {sunos4,linux{,/alpha},svr4}/{ioctlent,errnoent,signalent}.h:
3230 Use versions built by {ioctlent,errnoent,signaltent}.sh.
3231 * sunos4/ioctlent.sh: Work around sprintf troubles with SunOS
3232 4.1.4 and gcc 2.7.2.
Ulrich Drepperc921cb21999-12-24 08:03:35 +00003233
Wichert Akkerman76baf7c1999-02-19 00:21:36 +00003234Sun May 19 17:14:09 1996 J. Richard Sladkey <jrs@world.std.com>
3235
3236 * configure.in, Makefile.in: Add OSARCH concept to finish
3237 build support for the alpha.
3238 * Makefile.in, linux/Makefile.in: Rewrite clean, distclean,
3239 and maintainer-clean rules.
3240 * defs.h, ioctlsort.c: Make ioctl code member unsigned.
3241 * ioctl.c, ioctlsort.c (compare): Perform explicit checking
3242 for less, greater, and equal since subtraction on two's
3243 complement numbers isn't an order relation (it isn't transitive)!
3244 * linux/Makefile.in: Add rules for the signalent.h file.
3245 * linux/alpha/Makefile.in: New file.
Ulrich Drepperc921cb21999-12-24 08:03:35 +00003246
Wichert Akkerman76baf7c1999-02-19 00:21:36 +00003247Sun May 19 01:12:28 1996 J. Richard Sladkey <jrs@world.std.com>
3248
3249 * version.c: Version 3.0.12 is released.
3250
3251 * linux{,alpha}/ioctlent.sh: Tweak for recent kernels.
3252 From Michael E Chastain <mec@duracef.shout.net>.
Ulrich Drepperc921cb21999-12-24 08:03:35 +00003253
Wichert Akkerman76baf7c1999-02-19 00:21:36 +00003254 * defs.h (SUPPORTED_PERSONALITES, DEFAULT_PERSONALITY): New.
3255 * syscall.c (set_personality): New.
3256 * strace.c (main): Call set_personality.
3257 * defs.h, syscall.c, ioctl.c, signal.c: Make sysent, errnoent,
3258 ioctlent, and signalent indirect pointers and redirect them
3259 based on personality.
3260 * {sunos4,svr4,linux{,/alpha}}/signalent.h: New files.
3261 Suggested by Tom Dyas <tdyas@eden.rutgers.edu>.
3262
3263 * util.c (upeek): Handle case where ptrace returns a long
3264 and sizeof(long) != sizeof(int).
3265 From Richard Henderson <richard@twiddle.tamu.edu>
3266
3267Fri May 17 21:03:36 1996 J. Richard Sladkey <jrs@world.std.com>
3268
3269 * version.c: Version 3.0.11 is released.
3270
3271 * many files: Fix more printf warnings for other platforms.
3272
3273 * ipc.c (sys_msgrcv) [LINUX]: Conditionalize definition of ipc_wrapper.
3274
3275 * linux/dummy.h: Handle missing library support for {send,recv}msg.
3276 Reported by Thomas Bogendoerfer <tsbogend@bigbug.franken.de>.
3277
3278 * linux/syscall.h (sys_utimes): Fix a typo in the declaration.
3279 From Thomas Bogendoerfer <tsbogend@bigbug.franken.de>.
Ulrich Drepperc921cb21999-12-24 08:03:35 +00003280
Wichert Akkerman76baf7c1999-02-19 00:21:36 +00003281Fri May 17 00:50:06 1996 J. Richard Sladkey <jrs@world.std.com>
3282
3283 * version.c: Version 3.0.10 is released.
3284
3285 * Makfile.in: Add os/arch to includes so that a given arch
3286 (like alpha) can override the native arch (like i386).
3287 * configure.in: Check for sendmsg.
3288
3289 * net.c: Make sendmsg and recvmsg dependent on an autoconf
3290 test. Reported by Michael E Chastain <mec@duracef.shout.net>.
3291
3292 * acconfig.h, configure.in: Detect the alpha.
3293 * ioctl.c: Handle the alpha.
3294 * defs.h: Make some members long for the alpha. Define
3295 some register nicknames. Add support for WAITEXECVE.
3296 * file.c [ALPHA]: Support the alpha for statfs. Add
3297 osf_statfs and osf_fstatfs for the alpha. Make damn sure
3298 major and minor results are suitable for passing to printf.
3299 * signal.c, syscall.c: Support the alpha.
3300 * process.c: Add alpha user offsets.
3301 * most files: Use %l? for printf arguments since
3302 most are now longs for the alpha.
3303 * linux/alpha/{errnoent.h,ioctlent.{h,sh},syscallent.h}:
3304 New for the alpha.
3305 From Thomas Bogendoerfer <tsbogend@bigbug.franken.de>.
3306
3307Wed May 15 00:29:37 1996 J. Richard Sladkey <jrs@world.std.com>
3308
3309 * version.c: Version 3.0.9 is released.
3310
3311 * config.in, config.sub, install-sh: Upgrade to autoconf 2.10.
3312
3313 * linux/dummy.h, linux/syscallent.h, linux/syscall.h: Add recent
3314 Linux kernel version system calls.
3315
3316Wed Mar 13 01:03:38 1996 J. Richard Sladkey <jrs@world.std.com>
3317
3318 * ipc.c [SUNOS4]: Add SunOS support for decoding IPC calls.
3319 * syscall.c [SUNOS4]: Compile decode_subcall on SunOS and
3320 decode IPC calls using it.
3321 * sunos4/dummy.h: Alias sys_semop to printargs.
3322 * sunos4/syscall.h: Add new pseudo syscalls for IPC.
3323 * sunos4/syscallent.h: Include new subcalls for IPC.
3324 From Matthias Pfaller <leo@dachau.marco.de>.
3325
3326Tue Feb 13 22:08:25 1996 J. Richard Sladkey <jrs@world.std.com>
3327
3328 * version.c: Version 3.0.8 is released.
3329
3330 * time.c [LINUX]: Explicitly include linux/version.h.
3331
3332 * strace.c (main): Don't let them even *try* to
3333 get strace to attach to itself since some systems
3334 don't handle this case very gracefully.
3335 Reported by David S. Miller <davem@caip.rutgers.edu>.
3336
3337 * Makefile.in (distclean): Fix it for subdirectories.
3338
3339 * sunos4/syscallent.h, svr4/syscallent.h: Fill in the new
3340 sys_flags member for each defined system call.
3341
3342Fri Dec 8 01:17:28 1995 Rick Sladkey <jrs@world.std.com>
3343
3344 * defs.h (TRACE_*): New flags to describe what class
3345 of system call each system call is.
3346 (sysent): Add sys_flags member.
3347 * syscall.c (sysent): Define (and later undef) abbreviations
3348 for the system call class flags.
3349 (lookup_class): New function to translate strings to
3350 system call class flags.
3351 (qualify): Handle new system call class mechanism.
3352 * linux/syscallent.h: Fill in the new sys_flags member
3353 for each defined system call.
3354
3355 * defs.h (print_sock): Remove redundant and non-K&R C
3356 compatible prototype. From Juergen Weigert
3357 <jnweiger@immd4.informatik.uni-erlangen.de>.
3358
3359Thu Dec 7 01:17:40 1995 Rick Sladkey <jrs@world.std.com>
3360
3361 * linux/ioctlent.sh: Tweak to improve ioctl accuracy.
3362 From Michael E Chastain <mec@duracef.shout.net>.
3363
3364 * system.c (includes) [LINUX]: Add linux/nfs.h for recent
3365 kernels. From Michael E Chastain <mec@duracef.shout.net>.
3366
3367Wed Dec 6 21:52:28 1995 Rick Sladkey <jrs@world.std.com>
3368
3369 * file.c (sprintfstype): Enclose string result in double
3370 quotes.
3371
3372 * time.c (sys_adjtimex) [LINUX]: Conditionalize
3373 constantly evolving timex structure.
3374 From Aaron Ucko <UCKO@VAX1.ROCKHURST.EDU>.
3375
3376 * defs.h, syscall.c, strace.c: Rename syscall to
3377 trace_syscall and change prototype and all callers
3378 because of broken Linux shared libraries.
3379 From Aaron Ucko <UCKO@VAX1.ROCKHURST.EDU>.
3380
3381 * Makefile.in (clean): Check for a file with test -f not
3382 test -d. From Aaron Ucko <UCKO@VAX1.ROCKHURST.EDU>.
3383
3384Tue Sep 26 02:32:31 1995 Rick Sladkey <jrs@world.std.com>
3385
3386 * version.c: Version 3.0.7 is released.
3387
3388 * util.c (string_quote): Fix thinko which caused core
3389 dumps for strings with quotes in them.
3390 Reported by Marty Leisner <leisner@sdsp.mc.xerox.com>.
3391
3392 * linux/Makefile.in (errnoent.h rule): Grab all errno.h
3393 files from /usr/include, not just the linux one.
3394 From Michael E Chastain <mec@duracef.shout.net>.
3395
3396 * linux/errnoent.sh: Total rewrite to handle more ioctls with
3397 fewer false positives on more kernel flavors.
3398 From Michael E Chastain <mec@duracef.shout.net>.
3399
3400Mon Sep 4 01:29:22 1995 Rick Sladkey <jrs@world.std.com>
3401
3402 * version.c: Version 3.0.6 is released.
3403
3404 * linux/dummy.h, linux/syscall.h, linux/syscallent.h: Add
3405 sys_msync.
3406 * mem.c (mctl_funcs, mctl_lockas, sys_mctl): Conditionalize
3407 on MC_SYNC instead of HAVE_MCTL.
3408 (mctl_sync): Conditionalize on MS_ASYNC instead of HAVE_MCTL.
3409 (sys_msync): New function.
3410
3411Sat Sep 2 12:06:04 1995 Rick Sladkey <jrs@world.std.com>
3412
3413 * linux/dummy.h, linux/syscall.h, linux/syscallent.h: Add
3414 sys_flock and sys_getdents.
3415 * desc.c (flockcmds, sys_flock): Conditionalize on LOCK_SH
3416 not SUNOS4.
3417 * file.c (sys_getdents): Define unconditionally and handle
3418 LINUX case.
3419 * strace.c (main): Disallow username option unless both real
3420 and effective uids are root.
3421
3422Wed Aug 30 01:29:58 1995 Rick Sladkey <jrs@world.std.com>
3423
3424 * strace.c (main): Ensure that run_uid and run_gid are
3425 always set to something meaningful.
3426 (main, newoutf) [!SVR4]: Swap real and effective uids while
3427 opening any output files.
3428 (main) [!SVR4]: Treat effective uid of root as a request
3429 to handle suid binaries correctly using the real uid of
3430 the invoking user.
3431
3432Sat Aug 19 00:06:08 1995 Rick Sladkey <jrs@world.std.com>
3433
3434 * Makefile.in: Add `|| true' to clean rule because
3435 although GNU make 3.74 uses `sh -c' to invoke commands
3436 every other make in the world uses `sh -ec'.
3437
3438 * syscall.c (syscall) [SVR4, MIPS]: The fifth and subsequent
3439 arguments appear to be stored on the stack, not in the
3440 registers following A3 (empirical result).
3441
3442 * defs.h: Add prototype for printsock.
3443 * svr4/dummy.h: Remove generic handling of sys_mount.
3444 * system.c [SVR4, MIPS]: Include several system headers to cleanly
3445 get access to SGI mount information.
3446 (mount_flags, nfs_flags) [SVR4, MIPS]: New objects.
3447 (sys_mount) [SVR4, MIPS]: New function.
3448 (sys_mount) [SVR4, !MIPS]: New function.
3449
3450Tue Jul 4 00:30:34 1995 Rick Sladkey <jrs@world.std.com>
3451
3452 * version.c: Version 3.0.5 is released.
3453
3454 * desc.c, resource.c, strace.c, syscall.c, time.c: Cast tv_sec and
3455 tv_usec members to long when using printf.
3456
3457 * ipc.c: Omit define of __KERNEL__.
3458 ({MSG,SEM,SHM}_{STAT,INFO}): Explicitly define those things we
3459 want which __KERNEL__ used to provide.
3460 (sys_msgrcv): Change reference to ipc_kludge structure to
3461 look-alike ipc_wrapper to avoid dependence on __KERNEL__.
3462
3463 mem.c (mmap_flags) [MAP_{GROWSDOWN,DENYWRITE,EXECUTABLE}]: Add
3464 Linux specific options.
3465
3466 syscall.c: Use SYS_ERRLIST_DECLARED instead of guessing.
3467 [E{RESTART{SYS,NO{INTR,HAND}},NOIOCTLCMD}]: Explicitly define
3468 instead of depending of __KERNEL__.
3469
3470 term.c: Cast c_{i,o,c,l}flag to long when using printf.
3471
3472Tue Jun 6 00:27:48 1995 Rick Sladkey <jrs@world.std.com>
3473
3474 * aclocal.m4 (AC_DECL_SYS_ERRLIST, AC_DECL__SYS_SIGLIST): New.
3475 * configure.in: Call AC_DECL_SYS_ERRLIST, AC_DECL_SYS_SIGLIST,
3476 and AC_DECL__SYS_SIGLIST.
3477 * acconfig.h (SYS_ERRLIST_DECLARED): New.
3478 * strace.c (strerror): Use SYS_ERRLIST_DECLARED.
3479 (strsignal): Use SYS_SIGLIST_DECLARED.
3480
3481 net.c (sys_socket): Omit inadvertent surplus comma when
3482 protocol family isn't PF_INET.
3483
3484 util.c (dumpstr): Fix incorrect printing of one too many
3485 characters when the length is not an even multiple of 16 bytes.
3486 Reported by Juergen Weigert
3487 <jnweiger@immd4.informatik.uni-erlangen.de>.
3488
3489Thu May 4 23:37:47 1995 Rick Sladkey <jrs@world.std.com>
3490
3491 * ioctl.c (compare): Change prototype to match POSIX qsort.
3492 * signal.c (sigishandled) [SVR4]: Omit everything after return.
3493 * strace.c (trace) [SVR4]: Break out of for loop instead of
3494 returning when finished so final return statement is executed.
3495 * syscall.c (internal_syscall): Add more SYS_wait* variations.
3496 (syscall) [LINUX]: Correct typo which commented out the M68K
3497 argument to ifdef.
3498 * util.c (printstr): Cast unsigned char pointer argument
3499 to char pointer in umovestr call.
3500 (dumpstr): Likewise for umoven.
3501
3502Wed May 3 01:10:56 1995 Rick Sladkey <jrs@world.std.com>
3503
3504 * version.c: Version 3.0.4 is released.
3505
3506 * signal.c (sys_sigblock): Move after the definition of
3507 sys_sigsetmask that it calls to avoid an implicit declaration.
3508 * stream.c (transport_user_options, transport_server_options):
3509 Only needed if TI_BIND is defined.
3510 * configure.in: Add -Wno-implicit to WARNFLAGS on SunOS 4.x.
3511
3512 * process.c (internal_fork) [SVR4]: Fix a typo that omitted
3513 the tcp arguement from the call to exiting. Add getrval2
3514 check so no fork processing is done in the child.
3515 (printwaitn): Initialize exited so that its value is defined
3516 for all flows of execution.
3517
3518Tue May 2 22:39:42 1995 Rick Sladkey <jrs@world.std.com>
3519
3520 * linux/dummy.h: Add aliases for sysfs, personality, afs_syscall,
3521 setfsuid, setfsgid, and _llseek syscalls.
3522 * linux/syscall.h: Add prototypes for them.
3523 * linux/syscallent.h: Add them to the syscall entries table.
3524 * system.c (headers) [LINUX]: Include linux/unistd.h to get __NR_*
3525 defines and conditionally include linux/personality.h if
3526 __NR_personality is defined.
3527 (personality_options) [LINUX]: New table.
3528 (sys_personality) [LINUX]: New function.
3529
3530Tue May 2 00:20:39 1995 Rick Sladkey <jrs@world.std.com>
3531
3532 * strace.c (trace) [!SVR4]: Change forever loop to one predicated
3533 on the number of traced processes so that we can have untraced
3534 children (e.g. via popen).
3535
3536 * strace (main) [!SVR4]: Call fake_execve to get the actual
3537 exec and its arguments into the trace.
3538 (environ): Declare it.
3539 * process.c (fake_execve): New function.
3540 (headers): Include sys/syscall.h to get SYS_* defines.
3541
3542 * process.c (sys_execv, sys_execve): Surround argument annotations
3543 with C comment delimiters.
3544 (printargv, printargc): The arg vector is an array of char pointers
3545 not ints.
3546
3547 * strace.c (printleader): Also check for multiple -p arguments
3548 when deciding whether to print the pid field.
3549
3550 * strace.c (strerror) [!HAVE_STRERROR]: New function.
3551 * defs.h (strerror, strsignal): Add these prototypes if we provide
3552 the functions.
3553 * configure.in (AC_CHECK_FUNCS): Add strerror.
3554
3555 * strace.c (main, proc_poller): Add SIGPIPE to the list of caught
3556 and blocked signals.
3557
3558 * strace.c (main): Add username option. Verify they are root before
3559 letting them use it. Look up the ids in the password file. Set
3560 them just before executing the program.
3561 From Reuben Sumner <rasumner@undergrad.math.uwaterloo.ca>.
3562
3563Sat Apr 29 00:09:56 1995 Rick Sladkey <jrs@world.std.com>
3564
3565 * version.c: Version 3.0.3 is released.
3566
3567 * system.c (mount_flags) [LINUX]: Omit duplicated MS_NOSUID entry.
3568 From Reuben Sumner <rasumner@undergrad.math.uwaterloo.ca>.
3569
3570 * strace.c (outfname): Initialize to NULL.
3571 (main): Defer output file processing until after arguments.
3572 Allow either a pipe or a bang for command arguments.
3573 Check if outfname is NULL instead of checking outf for stderr.
3574 Reinitialize each startup TCB's outf to fix -p/-o ordering bug.
3575 (droptcb): Reset close TCB's outf to NULL instead of stderr.
3576 (tprintf): Avoid calling vfprintf if outf is NULL.
3577
3578 * strace.c (main): Use popen if -o argument begins with a pipe.
3579 From Marty Leisner <leisner@sdsp.mc.xerox.com>.
3580
3581 * process.c (printstatus): Fix a typo where WIFSIGNALED was meant
3582 but WIFSTOPPED was used.
3583
3584 * Makefile.in: Add an EXTRA_DEFS variable and use it in the .c.o
3585 rule to prevent the comment from being untrue.
3586
3587Fri Apr 28 22:01:56 1995 Rick Sladkey <jrs@world.std.com>
3588
3589 * strace.c (sys_exit): Move follow fork code to internal_exit.
3590 (sys_fork): Move follow fork code to internal_fork.
3591 (sys_execv, sys_execve): Move follow fork code to internal_exec.
3592 (sys_waitpid, sys_wait4): Move follow fork code to internal_wait.
3593 (vforking): Remove this static variable and check scno in
3594 internal_fork instead.
3595 (internal_exit, internal_fork, internal_exec, internal_wait): New
3596 functions.
3597 * defs.h: Add prototypes for the new internal_* functions.
3598 * syscall.c (syscall): Move syscall entering trace qualifier check
3599 and reprint checking after context decoding and precede them with
3600 a call to internal_syscall. Precede syscall exiting trace
3601 qualifier check with a call to internal_syscall.
3602 (internal_syscall): New function.
3603
3604 * defs.h (struct tcb): Make scno signed.
3605 * strace.c (syscall) Make u_error signed.
3606 [LINUX, I386]: Avoid unsigned cast in eax check.
3607 * syscall.c (sys_indir): Make i, scno, and nargs signed.
3608 * desc.c (sys_select): Make cumlen unsigned
3609
3610Mon Apr 24 23:52:47 1995 Rick Sladkey <jrs@world.std.com>
3611
3612 * net.c (socktypes): Add SOCK_PACKET.
3613
3614Sun Apr 2 23:50:39 1995 Rick Sladkey <jrs@world.std.com>
3615
3616 * Makefile (clean): Check explicitly for a Makefile in subdirs
3617 before running make in them.
3618
3619Sun Mar 26 12:37:21 1995 Rick Sladkey <jrs@world.std.com>
3620
3621 * strace.c [MIPS] (proc_open): Conditionalize run on MIPS.
3622 [MIPS] (detach): Initialize error for MIPS case.
3623 (trace): Initialize ioctl_result and ioctl_errno for overly helpful
3624 compilers.
3625 * syscall.c (decode_subcall): Move variable i into conditionals
3626 that use use it.
3627 * system.c (syssgi_options): Conditionalize SGI_RECVLMSG and
3628 SGI_SET_FPDEBUG that SGI decided to drop. I don't have the stomach
3629 to change them all.
3630 * term.c (term_ioctl): Force [c_[iocl]flags members to long before
3631 printing since we don't know what the size of their type is.
3632 * util.c [SVR4, MIPS] (umoven): Prevent MIPS from using pread even
3633 if autoconf detects it since it seems to either not work or do
3634 something else entirely on Irix 5.3.
3635
3636Sun Mar 26 00:01:11 1995 Rick Sladkey <jrs@world.std.com>
3637
3638 * version.c: Version 3.0.2 is released.
3639 * linux/dummy.h: Make sys_fchdir like sys_close instead of printargs
3640 so that the file descriptor arg is decimal.
3641
3642Sat Mar 25 22:50:13 1995 Rick Sladkey <jrs@world.std.com>
3643
3644 * net.c [LINUX] (protocols): Explicitly define all IPPROTO_* entries
3645 because on Linux they are enumerators.
3646
3647 * system.c [LINUX] (mount_flags): Handle renaming of MS_SYNC to
3648 MS_SYNCHRONOUS.
3649
3650 * util.c (printxval): When there is no translation, print the actual
3651 number first and the the default value as a C comment.
3652
3653 * net.c (sys_send, sys_sendto, sys_sendmsg, sys_getsockopt,
3654 sys_setsockopt): Change first argument from unsigned to signed to
3655 cater to the frequent practice of calling system calls with a file
3656 descriptor of -1.
3657 * mem.c (sys_mmap): Likewise.
3658
3659Sun Mar 19 13:53:52 1995 Rick Sladkey <jrs@world.std.com>
3660
3661 * signal.c [LINUX] (signalent): Handle old and new values of SIGIO.
3662
3663Sun Dec 11 22:51:51 1994 Rick Sladkey <jrs@world.std.com>
3664
3665 * version.c: Version 3.0.1 is released.
3666 * Makefile.in, configure.in, aclocal.m4: Changes for autoconf 2.0.
3667 * config.guess, config.guess: Update from the FSF.
3668 * install-sh: New from the FSF.
3669
3670Mon Dec 5 20:51:29 1994 Rick Sladkey <jrs@world.std.com>
3671
3672 * Makefile.in: Add m68k arch.
3673 * acconfig.h (M68K): Add m68k define.
3674 * configure.in: Add detection of arch m68k.
3675 * process.c [M68K] (struct_user_offsets): Support m68k registers and
3676 offsets.
3677 * signal.c [M68K] (sigcontext_struct): Support m68k sigcontext
3678 structure.
3679 [M68K] (sys_sigreturn): Support m68k sigreturn handling.
3680 * syscall.c [M68K] (syscall): Support m68k syscall number register
3681 and errno in d0 instead of eax.
3682 * util.c [M68K] (getpc, printcall, setbpt, clearbpt): Support m68k
3683 program counter in PT_PC instead of EIP.
3684 [M68K] (LOOP): Support m68k loop instruction.
3685 From Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>.
3686
3687 * mem.c [MAP_ANONYMOUS] (mmap_flags): Correct inadvertent reference
3688 to MAP_FIXED instead of MAP_ANONYMOUS.
3689 From Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>.
3690
3691 * signal.c [LINUX] (signalent): Signal 30 is now SIGPWR.
3692 From Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>.
3693
3694Mon Dec 5 01:05:46 1994 Rick Sladkey <jrs@world.std.com>
3695
3696 * defs.h (tprintf): Fix typo in non-gcc ansi prototype for tprintf.
3697 Reported by Thanh Ma <tma@encore.com>.
3698
3699 * strace.c (cleanup): Send SIGCONT before SIGTERM because Linux
3700 1.1.62 doesn't continue a traced child when the parent exits.
3701 Reported by Matt Day <mday@artisoft.com>.
3702
3703 * system.c [LINUX]: Include netinet/in.h before arpa/inet.h.
3704
3705 * util.c (printstr): Fix longstanding bug in notating string
3706 continuation.
3707
3708 * strace.c [SVR4] (proc_open): Specifically wait for the child the
3709 child to go into the execve syscall to avoid spurious traces.
3710 [LINUX] (detach): Conditionalize the status variable.
3711
3712Sun Dec 4 23:21:42 1994 Rick Sladkey <jrs@world.std.com>
3713
3714 * Makefile.in: Add mips arch.
3715 * acconfig.h (MIPS): Add mips define.
3716 * configure.in: Add detection of opsys irix5 and arch mips. Check
3717 for prctl function.
3718 Check for sys/sysconfig.h header.
3719 * defs.h (MAX_ARGS): Bump maximum syscall arguments from 8 to 32.
3720 * file.c [SVR4]: Include sys/cred.h.
3721 (access_flags): Update access flags for SGI.
3722 (sprinttime): Change type of sprinttime argument from unsigned
3723 long to time_t.
3724 * process.c [HAVE_PRCTL]: Include sys/prctl.h.
3725 [HAVE_PRCTL] (prctl_options, sys_prctl): New for SGI.
3726 (printsiginfo): Conditionally compile SI_TIMER and SI_MESGQ.
3727 Cast si_band member to long before printing.
3728 * signal.c (sigact_flags): Add _SA_BSDCALL for SGI.
3729 (sigprocmaskcmds): Add SIG_SETMASK32 for SGI.
3730 * strace.c [SVR4] [MIPS]:
3731 (foobar): New dummy signal handler.
3732 (main): Install a dummy signal handler in the child before pausing
3733 to work around an SGI bug in PRSABORT.
3734 (proc_open): Send a interrupt to the child instead of aborting the
3735 syscall which doesn't work on Irix5.2.
3736 * svr4/dummy.h: Add new unfinished SGI syscalls
3737 (e.g. sys_sysmp, sys_sginap, etc.). Handle some SGI syscalls like
3738 existing calls (e.g. sys_ksigaction like sys_sigaction).
3739 Printargs does the print thing for sys_sethostid.
3740 * svr4/syscall.h: Declare all new SGI syscalls.
3741 (SGI_KLUDGE): Define syscall table starting index to be 1 for SGI
3742 and add it to all subcall entry points.
3743 (SYS_pgrpsys_subcall, SYS_sigcall_subcall, SYS_context): Don't
3744 decode as subcalls on MIPS. Instead, use the normal syscalls.
3745 * svr4/syscallent.h [MIPS]: Lead syscall table with a dummy entry
3746 since SGI syscall numbers are off by one.
3747 [MIPS] (sys_pgrpsys): Rename to sys_setpgrp on SGI.
3748 [MIPS] (sys_xenix): Rename to sys_syssgi on SGI.
3749 [MIPS] (sys_sysmachine): Rename to sys_sysmips on SGI.
3750 [MIPS]: Conditionalize SVR4 extension into SGI and Solaris classes.
3751 * syscall.c (dumpio): Validate descriptor against MAX_QUALS.
3752 [HAVE_PR_SYSCALL] (syscall): Conditionalize SYS_vfork.
3753 [MIPS] (syscall): Add SGI section for decoding u_error and u_rval.
3754 Add workaround for broken SGI pr_sysarg on syscall entry.
3755 [SVR4] (syscall): Conditionalize subcall decoding for
3756 SYS_ptrpsys_subcall, SYS_sigcall_subcall and SYS_context_subcall.
3757 [SVR4] [MIPS] (getrval2): Handle SGI.
3758 * syscallent.sh: Dork the sed line to be choosier about SYS_ lines.
3759 * system.c [HAVE_SYSCONFIG_H]: Include sys/sysconfig.h.
3760 [MIPS] (syssgi_options, sys_syssgi): New for SGI.