]> granicus.if.org Git - strace/blob - ChangeLog
Fix signed/unsigned problems
[strace] / ChangeLog
1 2002-03-31  Wichert Akkerman <wichert@deephackmode.org>
2
3         * debian/*: added
4         * linux/syscallent.h: fix typo and add the reserved stream syscalls
5         * defs.h, file.c, io.c: fix signed/unsigned issues
6
7 2001-12-17  Wichert Akkerman <wakkerma@debian.org>
8
9         * net.c: add new TCP socket options
10
11 2001-10-26  John Hughes <john@calva.com>
12
13         * svr4/ioctlent.sh: Cope with #define lines containing
14         comments that terminate on subsequent lines.  Used to
15         comment out subsequent ioctls!
16
17 2001-10-25  Wichert Akkerman <wakkerma@debian.org>
18
19         * linux/ioctlent.h: regenerated using current scripts so
20           term ioctls are included
21
22 2001-10-19  John Hughes  <john@Calva.COM>
23
24         * strace.c(proc_open): On SVR4 only trace the syscalls,
25         signals and faults we care about.
26
27 2001-10-18  John Hughes  <john@Calva.COM>
28
29         * acconfig.h: Add HAS_SIGINFO_T.
30         * aclocal.m4: add check for siginfo_t in signal.h.
31         * configure.in: use check for siginfo_t.
32         * defs.h: if HAVE_SIGINFO_T the declare printsiginfo.  On SVR4
33           allow access to siginfo when signal recieved.
34         * process.c: Remove SVR4 only version of printsiginfo.
35         * signal.c: merge SVR4 and LINUX versions of printsiginfo.
36         * strace.c: on SVR4 print siginfo when signal recieved.
37
38 2001-10-18  John Hughes  <john@Calva.COM>
39
40         * system.c(sys_ssisys): handle return values for ssisys
41
42 2001-10-18  John Hughes  <john@Calva.COM>
43
44         * signal.c: handle sigwait
45         * svr4/dummy.c: Move sigwait to done
46         * svr4/syscall.h: handle sigwait
47
48 2001-10-16  John Hughes  <john@Calva.COM>
49
50         * system.c(sys_ssisys): decode some args for ssisys.
51
52 2001-10-16  John Hughes  <john@Calva.COM>
53
54         * mem.c: MS_SYNC is zero, so must be first in xlat list.
55
56         * svr4/dummy.h: memcntl is much like mctl.
57
58 2001-10-16  John Hughes  <john@Calva.COM>
59
60         * util.c (umovestr): UnixWare (svr4?) returns 0 when trying
61         to read unmapped page.  Make it possible to strace ksh.
62
63 2001-10-03  David Mosberger  <davidm@hpl.hp.com>
64
65         * process.c (internal_clone): Avoid race condition by clearing
66         breakpoint after attaching to child.
67
68 2001-10-02  David Mosberger  <davidm@hpl.hp.com>
69
70         * linux/ia64/syscallent.h: Define ia32 syscall numbers (originally
71         by Don Dugger, with my refinements).
72
73         * linux/ia64/ioctlent.h: Regenerate and manually merge conflicting
74         ioctls (TCGETS & SNDCTL_TMR_TIMEBASE, etc.).
75
76         * linux/ia64/Makefile.in (ioctldefs.h ioctls.h): Update for
77         new ioctlent.h generation scheme.
78
79         * linux/syscall.h (sys_clone2): Declare.
80         [IA64] Define ia32 socket, ipc, and extra syscall numbers.
81
82         * linux/ioctlent.sh (regexp): Also handle <asm/ioctls.h> so we
83         don't miss the tty ioctls (unfortunately, some of the sound timer
84         ioctls are in conflict with them!).
85
86         * util.c (setbpt) [IA64]: Add ia32 support (by Don Dugger).
87         (clrbpt) [IA64]: Ditto.
88
89         * syscall.c (internal_syscall): Handle SYS_clone2, SYS32_wait4,
90         and SYS32_exit.
91         (get_scno): Get ia32 syscall number from r1 (orig eax) instead of
92         r8 (eax).  Handle TCB_WAITEXECVE.
93         (syscall_fixup): Handle ia64.
94         (syscall_enter): Fix argument fetching for ia64.
95
96         * strace.c [IA64 && LINUX]: Include <asm/ptrace_offsets.h>.
97         (trace) [PT_GETSIGINFO]: Print signal address and pc if possible.
98
99         * process.c (tcp): New function.
100         (change_syscall): Add support for ia64 linux.
101         (sys_execve): Turn on TCB_WAITEXECVE for ia64 linux.
102
103         * desc.c (getlk): Cast l_len to "long long" to avoid warnings when
104         type is narrower.
105         * resource.c (sprintrlim64): Ditto.
106
107         * defs.h (TCB_WAITEXECVE) [IA64]: Define.
108         [IA64]: Declare "ia32" variable.
109
110         * bjm.c: Do not include <linux/module.h>.  It's not safe to include
111         kernel headers.  Declare the necessary constants and structures
112         directly instead.
113
114 2001-10-01  David Mosberger  <davidm@hpl.hp.com>
115
116         * signal.c (parse_sigset_t): New function.
117         (sigishandled): Fix off-by-one bug by using parse_sigset_t() and
118         avoiding relying on internal layout of sigset_t datastructure.
119
120 2001-04-26  David Mosberger  <davidm@hpl.hp.com>
121
122         * linux/ia64/syscallent.h: Add getunwind().
123
124 2001-04-11  David Mosberger  <davidm@hpl.hp.com>
125
126         * syscall.c (syscall_enter): Use PT_RBS_END instead of deprecated
127         PT_AR_BSP.  Pick up arguments starting with out0, which is not
128         always the same as r32 (e.g., consider inlined syscalls).
129
130 2001-09-28   John Hughes <john@Calva.COM>
131
132   * process.c: FreeBSD-CURRENT no longer has PT_READ_U, and anyway we
133     were showing it as PT_WRITE_U!  Fix from Maxime Henrion.
134
135 2001-09-18   John Hughes <john@Calva.COM>
136
137   * net.c: fix display of sockaddr structures, sometimes too many "}",
138     sometimes too few.  Fix suggested by Richard Kettlewell.
139
140 2001-08-19   Wichert Akkerman <wakkerma@debian.org>
141
142   * signal.c: do not include asm/sigcontext.h on IA64 since it gets
143     the struct from bits/sigcontext.h already which signal.h includes.
144
145 2001-08-03   Wichert Akkerman <wakkerma@debian.org>
146
147   * linux/ioctlent.sh: change regexps so we catch sound ioctls as well in
148     Linux
149   * linux/Makefile.in: fix a few things so the ioctl list is generated
150     properly
151   * ioctl.c: remember to shift ioctl masks as well
152
153 2001-08-03   Wichert Akkerman <wakkerma@debian.org>
154
155   * Linux/**/syscallent.h: synchronize section for fcntl and use sys_fcntl
156     for sys_fcntl as well
157
158 2001-08-03   Wichert Akkerman <wakkerma@debian.org>
159
160   * linux/hppa/syscallent.h: updated from Matthew Wilcox
161
162 2001-08-03   Wichert Akkerman <wakkerma@debian.org>
163
164   * process.c: seems Linux/IA64 changed register names on us, switch to
165     using new names.
166
167 2001-08-03   Wichert Akkerman <wakkerma@debian.org>
168
169   * strace.c: set CLOEXEC  flag for outputfile
170
171 2001-08-03   Wichert Akkerman <wakkerma@debian.org>
172
173   * linux/sparc/syscall.h, linux/sparc/syscallent.h: add some LFS calls
174
175 2001-07-23  Wichert Akkerman <wakkerma@debian.org>
176
177   * configure.in: Support cross-compiling between architectures
178
179 2001-07-13  Wichert Akkerman <wakkerma@debian.org>
180
181   * configure.in: add S390 to architecture list
182
183 2001-07-10  John Hughes <john@Calva.COM>
184
185   * TODO, defs.h, io.h, net.c, strace.c, syscall.c, util.c: Merge fixes
186     from Richard Kettlewell <rkettlewell@zeus.com> which add I/O dumping
187     of args to readv/writev.  Also gets rid of redundant printiovec
188     routine from net.c (duplicate of tprint_iov in util.c).
189
190 2001-07-02  Wichert Akkerman <wakkerma@debian.org>
191
192   * config.{guess,sub}: updated
193
194 2001-05-15  John Hughes <john@Calva.COM>
195
196   * signal.c: pass a pointer to sigmask to printsigmask from printcontext,
197     it was just passing the sigmask (ucp->uc_sigmask).
198
199 2001-05-15  John Hughes <john@Calva.COM>
200
201   * util.c: Don't run off the end of valid memory in umovestr when
202     USE_PROCFS.  Important for FREEBSD systems (which seem to have an
203     unmapped page just after the args/env area).
204
205 2001-04-18  John Hughes <john@Calva.COM>
206
207   * configure.in: test for sys/nscsys.h, the non-stop clusters includes.
208   * process.c: handle rfork{1,all} and rexecve calls on non-stop clusters.
209   * syscall.c: treat rfork{1,all} and fork{1,all} as fork like calls.
210     Treat rexecve as an exec.
211   * system.c: decode arguments to ssisys call on nsc systems.
212   * svr4/dummy.h, svr4/syscall.h: now we handle rfork{1,all}, ssisys and
213     rexecve calls.
214
215 2001-04-12  Wichert Akkerman <wakkerma@debian.org>
216
217   * process.c: fix cast for powerpc code
218   * linux/powerpc/syscallent.h: update syscall list
219   * README: fix address for the strace mailinglist
220   * signal.c: switch to using /proc/<pid>/status on Linux so we can get
221     the realtime signals as well
222
223 2001-04-10  Wichert Akkerman <wakkerma@debian.org>
224
225   * Merge patches from Maciej W. Rozycki:
226     + util.c: add code to print PC for MIPS
227     + linux/mips/syscallent.h: updated
228     + system.c: formating fixes for sys_sysmips
229     + configure.in: test for yet more headers
230     + stream.c: use configure-headertests instead of relying on OS hints
231
232 2001-04-07  Wichert Akkerman <wakkerma@debian.org>
233
234   * NEWS: start 4.3.1 items
235   * version.c: updated to say 4.3.1 (was still 4.2, oops!)
236
237 2001-04-07  Wichert Akkerman <wakkerma@debian.org>
238
239   * configure.in: test for asm/sysmips.h and linux/utsname.h
240   * linux/syscall.h: fix a typo for sys_sysmips
241   * system.c: include asm/sysmips.h and linux/utsname.h if they exist,
242     fix typo
243
244 2001-03-31  Wichert Akkerman <wakkerma@debian.org>
245
246   * linux/mips/ioctlent.h: updated using new Linux ioctl setup
247
248 2001-03-31  Wichert Akkerman <wakkerma@debian.org>
249
250   * linux/ia64/ioctlent.h: regenerated
251
252 2001-03-31  Wichert Akkerman <wakkerma@debian.org>
253
254   * linux/{alpha,ia64,powerpc}/ioctlent.sh: removed, all archs use the
255     general Linux ioctlent.sh
256
257 2001-03-31  Wichert Akkerman <wakkerma@debian.org>
258
259   * linux/ioctlent.sh: add dir variable for location of kernel headers
260
261 2001-03-29  Wichert Akkerman <wakkerma@debian.org>
262
263   * linux/ia64/ioctlent.h: updated using new Linux ioctl setup
264
265 2001-03-29  Wichert Akkerman <wakkerma@debian.org>
266
267   * linux/powerpc/ioctlent.h: updated using new Linux ioctl setup
268
269 2001-03-29  Wichert Akkerman <wakkerma@debian.org>
270
271   * linux/hppa/ioctlent.h: updated using new Linux ioctl setup
272
273 2001-03-29  Wichert Akkerman <wakkerma@debian.org>
274
275   * linux/alpha/ioctlent.h: updated using new Linux ioctl setup
276
277 2001-03-28  Wichert Akkerman <wakkerma@debian.org>
278
279   * configure.in: use sparc* so we can compile on sparc64 as well
280   * process.c, syscall.c: work around double define of fpq, fq and fpu
281     structs on Linux/sparc, and use regs instead of pt_regs
282   * don't use asm/sigcontext.h on Linux/sparc
283
284 2001-03-28  Wichert Akkerman <wakkerma@debian.org>
285
286   * linux/sparc/ioctlent.h: updated using new Linux ioctl setup
287
288 2001-03-28  Wichert Akkerman <wakkerma@debian.org>
289
290   * strace.c: use __WALL as wait4 flag if it exists so we can properly
291     trace threaded programs
292
293 2001-03-27  John Hughes <john@Calva.COM>
294
295   * aclocal.m4: add check for endianness of long long.
296   * acconfig.h: add #define for LITTLE_ENDIAN_LONG_LONG.
297   * configure.in: check for endianness of long long.
298   * defs.h: change LONG_LONG macro to work with either endianness of
299     long long.
300
301 2001-03-27  John Hughes <john@Calva.COM>
302
303   * net.c: Make compilable by SCO UDK compiler (doesn't like empty
304     initialisation list for array).
305
306 2001-03-27  John Hughes <john@Calva.COM>
307
308   * svr4/syscallent.h: ntp_adjtime entry was duplicated on Solaris
309     systems - bad merge of Harald Boehme's patch by me.
310
311 2001-03-27  Wichert Akkerman <wakkerma@debian.org>
312
313   * lots of files: add Linux/hppa support
314
315 2001-03-19  Wichert Akkerman <wakkerma@debian.org>
316
317   * linux/mips/syscallent.h: we can't have -1 nargs, change to 0
318   * linux/syscallent.h: not that syscalls 220 and 221 are used now
319   * config.guess: updated
320
321 2001-03-17  Wichert Akkerman <wakkerma@debian.org>
322
323   * linux/ioclsort.c: new file
324   * linux/ioctlent.sh: complete rewrite to use a more sane approach to get
325     the ioctl list that doesn't involve attempting to #include all kernel
326     headers
327   * linux/.cvsignore: added ioctdefs.h and ioctls.h which are generated
328     by the new ioctlent.sh
329   * ioctl.c: only look at the number and type bits for linux, since
330     ioctlent.sh no longer supplies the others
331
332 2001-03-08  John Hughes <john@Calva.COM>
333
334   * freebsd/syscalls.pl: On FreeBSD we must cope with COMPATibility syscalls,
335     pretend they have names ending with "?" so that -e trace=stat (for
336     example) will work.
337   * freebsd/i386/syscallent.h: add ? to compatability syscalls.
338   * freebsd/i386/syscall.h: consistency.
339
340 2001-03-08  John Hughes <john@Calva.COM>
341
342   * acconfig.h: add new ST_xxx defines.
343   * aclocal.m4: macros to check for more fields in struct stat.
344   * configure.in: use new macros to check for fields in struct stat.
345   * file.c: use new defines to replace #ifdef FREEBSD by #if HAVE_ST_xxx.
346
347 2001-03-08  John Hughes <john@Calva.COM>
348
349   * defs.h: rename wimpy get64 as powerful new LONG_LONG
350   * file.c: use LONG_LONG
351   * io.c: use LONG_LONG
352   * mem.c use LONG_LONG
353
354 2001-03-08  John Hughes <john@Calva.COM>
355
356   * acconfig.h: new #defines HAVE_LONG_LONG_OFF_T and HAVE_LONG_LONG_RLIM_T.
357   * aclocal.m4: routines to check for long long off_t and rlim_t.
358   * configure.in: check for long long off_t and rlim_t.
359   * desc.c: if HAVE_LONG_LONG_OFF_T treat flock as flock64
360   * file.c: if HAVE_LONG_LONG_OFF_T treat stat,lstat,fstat and lseek as 64
361     bit versions.
362   * io.c: if HAVE_LONG_LONG_OFF_T use 64 bit versions of pread and pwrite.
363   * mem.c: if HAVE_LONG_LONG_OFF_T use 64 bit version of mmap
364   * resource.c: if HAVE_LONG_LONG_OFF_T use 64 bit versions of getrlimit
365     and setrlimit.
366   * freebsd/syscalls.print: don't explicitly use 64 bit versions of calls,
367     now done automaticaly for us.
368   * freebsd/i386/syscall.h: ditto.
369   * freebsd/i386/syscallent.h ditto.
370
371 2001-03-07  John Hughes <john@Calva.COM>
372
373   * desc.c: On FreeBSD flock structure uses 64 bit offsets.
374   * file.c: On FreeBSD use stat64 and pals instead of stat.
375   * freebsd/syscalls.print: use stat64, lstat64 and fstat64.
376   * freebsd/i386/syscall.h: ditto.
377   * freebsd/i386/syscallent.h: ditto.
378
379 2001-03-07  John Hughes <john@Calva.COM>
380
381   * file.c: merge missing part of Harald Böhme's solaris patches,
382     was only declaring sys_{stat64,lstat64,fstat64} on linux!
383
384 2001-03-07  John Hughes <john@Calva.COM>
385
386   * svr4/dummy.h: fix multiple define warning on non LFS64 systems.
387   * svr4/syscallent.h: pread/pwrite are TF calls.
388
389 2001-03-07  John Hughes <john@Calva.COM>
390
391   * defs.h: add ALIGN64 macro to cope with FreeBSD's strange insistence
392     on alignment for off_t (64 bit) arguments.  Also simplify get64 so
393     we don't need to know endianness of long long.
394   * file.c: FreeBSD now uses 64 bit versions of lseek, truncate,
395     ftruncate, allows reduction in numvber of horrid #if's
396   * io.c: FreeBSD now uses 64 bit versions of pread, pwrite.
397   * mem.c: FreeBSD now uses 64 bit version of mmap.
398   * freebsd/syscalls.print: use 64 bit versions of various syscalls.
399   * freebsd/i386/syscall.h: use 64 bit versions of various syscalls.
400   * freebsd/i386/syscallent.h: use 64 bit versions of various syscalls.
401
402 2001-03-06  John Hughes <john@Calva.COM>
403
404   * file.c: Implement truncate64 and ftruncate64
405   * svr4/dummy.h: add dummies for truncate64 and ftruncate64 for non
406     LFS64 systems.
407   * svr4/syscall.h: add declarations for truncate64 and ftruncate64.
408
409 2001-03-06  John Hughes <john@Calva.COM>
410
411   * freebsd/syscalls.pl: fix for FreeBSD 4.1 (new optional field in
412     syscall master file).
413
414 2001-03-06  John Hughes <john@Calva.COM>
415
416   * syscall.c: fix for FreeBSD 4.1 (SYS_semconfig has disappeared).  Also
417     zap incorrect syscall subarg range check.
418
419 2001-03-06  John Hughes <john@Calva.COM>
420
421   * configure.in, defs.h, desc.c, file.c, io.c, mem.c, net.c, resource.c,
422     signal.c, syscall.c, svr4/dummy.h, svr4/syscall.h, svr4/syscallent.h:
423     merge Harald Böhme's solaris patches (_LFS64_LARGEFILE and kernel aio
424     mostly).
425
426 2001-03-06  John Hughes <john@Calva.COM>
427
428   * dummy.h: add unimplemented UW sycalls
429   * syscall.h: we can do settimeofday for UW, whopee!
430   * syscallent.h: fix unimplemented UW syscalls
431
432 2001-03-06  John Hughes <john@Calva.COM>
433
434   * aclocal.m4: look for pr_syscall in pr_lwp if we HAVE_MP_PROCFS
435   * defs.h: add PR_SYSCALL to allow use of pr_lwp.pr_syscall if it exists.
436   * syscall.c: use PR_SYSCALL instead of pr_syscall, fix up UnixWare code
437     so it doesn't try to use pr_sysarg.
438
439 2001-03-06  John Hughes <john@Calva.COM>
440
441   * aclocal.m4: on systems other than linux look for stat64 in sys/stat.h
442   * file.c: handle xstat version _STAT64_VER, aka stat64.
443
444 2001-03-06  John Hughes <john@Calva.COM>
445
446   * net.c: make sure SOL_ options are defined before using.
447   * signal.c: declare sigset variable, only used on linux, inside #ifdef.
448
449 2001-02-21  Wichert Akkerman <wakkerma@debian.org>
450
451   * net.c: fix format for printing Unix domain sockets
452
453 2001-02-19  Wichert Akkerman <wakkerma@debian.org>
454
455   * linux/mips/syscallent.h: use new sys_sysmips
456   * system.c: add sys_sysmips decoding
457
458 2001-02-16  Wichert Akkerman <wakkerma@debian.org>
459
460   * CREDITS: add Arkadiusz Miskiewicz <misiek@pld.org.pl> who
461     submitted the IP6 scope ID updates
462   * acconfig.h: add HAVE_SIN6_SCOPE_ID and HAVE_SIN6_SCOPE_ID_LINUX
463   * aclocal.m4: add AC_SIN6_SCOPE_ID to check if sin6_scope_id is
464     available
465   * configure.in: check for if_indextoname function and sin6_scope_id
466   * net.c: teach printsock about IP6 scope ids
467
468 2001-02-16  Wichert Akkerman <wakkerma@debian.org>
469
470   * configure.in: test for netinet/tcp.h and netinet/udp.h existance
471   * net.c: include netinet/tcp.h and netinet/udp.h if they exist
472   * Makefile.in: use @mandir@ and @bindir@
473
474 2000-11-26  Wichert Akkerman <wakkerma@debian.org>
475
476   *  net.c: fix formating error in sys_setsockopt
477   *  net.c: add list of socketlayers and use that for [gs]etsockopt
478
479 2000-10-12  Wichert Akkerman <wakkerma@debian.org> 
480
481   * time.c: use sys/timex.h so things compile with 2.2 kernels
482   * stream.c: test if MSG_* constants are #defined
483
484 2000-09-03  Wichert Akkerman <wakkerma@debian.org>
485
486   * process.c: perform bpt trick for clone as well so we can get the
487     pid of the child before it starts doing something
488   * file.c: rename dirent64 struct to kernel_dirent64 so things compile
489     again with newer libcs
490   * test/clone.c: improve our testcase a bit
491   * Merge another patch from Gäel Roualland with FreeBSD updates
492
493 2000-09-01  Wichert Akkerman <wakkerma@debian.org>
494
495   * lots of files: merge patch from Gaël Roualland to add
496     support for FreeBSD.
497
498 2000-08-09  Wichert Akkerman <wakkerma@debian.org>
499
500   * file.c: update to reflect that st_ino suddenly became a long long
501     in the in Linux 2.4.0-test6
502
503 2000-08-09  Wichert Akkerman <wakkerma@debian.org>
504
505   * test/clone.c: minor fixup
506   * Another bunch of patches from John Hughes merged:
507   * signal.c:
508     + SVR4 printcontext(): sigset_t != sigset_t*
509     + getcontext returns a value, so print on exit of syscall
510     + add UC_FP to ucontext_flags for OS writers that can't spell
511     + sys_signal(): special case SIG_{ERR,DFL,IGN}
512     + decode_subcall(): only do subcall range checking when needed
513   * bunch of UnixWare updates
514   * aclocal.m4, acconfig.h, configure.in: add test for long long type
515
516 2000-07-04  Wichert Akkerman <wakkerma@debian.org>
517
518   * net.c: add SOL_PACKET and SOL_RAW socket options, update
519     SOL_IP and SOL_TCP
520
521 2000-06-23  Wichert Akkerman <wakkerma@debian.org>
522
523   * strace.c: close outf before we exec a child process
524
525 2000-06-09  Ulrich Drepper  <drepper@redhat.com>
526
527   * configure.in: Don't link against libnsl on Linux, it's unnecessary.
528   * defs.h (struct tcb): Make auxstr member const.
529   * file.c (fsmagic): And many more magic numbers.
530   * util.c: Don't include <linux/ptrace.h> for glibc 2.1 and up.
531
532 2000-04-26  Wichert Akkerman <wakkerma@debian.org>
533
534   * defs.h: balance #if/#endif again
535   * system.c: fix return statements in sys_capget()
536   * Merge updates from Topi Miettinen <Topi.Miettinen@nic.fi>:
537     + file.c: add F_[SG]ETSIG to fcntl flags
538     + strace.c: don't setre[gu]id if not needed
539     + system.c: handle sys_reboot for Linux
540     + term.c: add baudrate constants up to B4000000
541     + linux/**/syscallent.h: note that munlockall has no arguments
542
543 2000-04-25  David Mosberger  <davidm@hpl.hp.com>
544
545   * CREDITS: fix email address
546   * process.c: handle PR_[GS]ET_UNALIGN and PR_[GS]ET_KEEPCAPS
547   * signal.c: honour offset of sigconfig in sigframe structure for
548     Linux/ia64
549   * linux/ia64/syscallent.h: Add perfmonctl, pivotroot, mincore, and
550     madvise syscalls.
551   * syscall.c (syscall_enter): With Kevin's latest ptrace patches,
552     AR_BSP points to the _end_ of the active register frame, so we need
553     to adjust bsp by moving it back by the size of the active frame
554     before using it.
555
556 2000-04-24  Wichert Akkerman <wakkerma@debian.org>
557
558   * process.c: add sparc support to change_syscall
559
560 2000-04-22  Wichert Akkerman <wakkerma@debian.org>
561
562   * linux/mips/syscallent.h: fix some typos
563
564 2000-04-14  Wichert Akkerman <wakkerma@debian.org>
565
566   * linux/mips/syscallent.h: added names for SVR4, SYSV, BSD4.3 and POSIX
567     syscalls
568
569 2000-04-13  Wichert Akkerman <wakkerma@debian.org>
570
571   * defs.h: Linux/MIPS uses syscalls up to >4k, so set MAX_QUALS to
572     4999
573
574 2000-04-09  Wichert Akkerman <wakkerma@debian.org>
575
576   * README-linux: updated to note that strace might not compile
577     with development kernels
578   * bjm.c: sys_query_module: check if malloc succeeds
579   * system.c: sys_cap[gs]et(): check if malloc succeeds, only malloc once
580   * linux/syscallent.h: updated for 2.3.99pre3
581   * linux/alpha/syscallent.h: updated for 2.3.99pre3, add all osf syscalls
582     even though Linux doesn't implement them
583   * syscall.c: add global variables for MIPS registers as well
584   * syscall.c: move global variables to before get_scno since that uses them
585   * util.c: oops, misspelled defined
586   * process.c: fix ptrace calls in change_syscall
587   * mem.c: decode sys_madvise
588   * Merge patch from Topi Miettinen <Topi.Miettinen@nic.fi>
589     + add support for quotactl, fdatasync, mlock, mlockall, munlockall & acct
590     + small fix for RLIMIT_* and RUSAGE_BOTH
591     + enhace support for capget and capset
592
593 2000-02-19 Wichert Akkerman <wakkerma@debian.org>
594
595   * test/vfork.c: new file to test vfork traces
596   * test/.cvsignore: new file
597   * defs.h: Up maximum number of traced processed to 64
598   * strace.c: Disable some debugging code from davidm 
599   * implement setarg for more architectures
600   * implement change_syscall
601
602 1999-12-27  Morten Welinder  <terra@diku.dk>
603
604         * syscall.c (lookup_signal, lookup_desc): isdigit requires an
605         _unsigned_ char parameter.
606
607 2000-02-14 Wichert Akkerman <wakkerma@debian.org>
608
609   * S390 updates
610
611 2000-02-03 Wichert Akkerman <wakkerma@debian.org>
612
613   * Merge Linux/ia64 patches
614
615 2000-01-02 Pavel Machek      <pavel@ucw.cz>
616
617   * probe if sys/poll.h exists in configure + minor cleanups
618
619   * syscall.c: split trace_syscall into few pieces to make code readable
620
621 2000-01-21 Wichert Akkerman  <wakkerma@debian.org>
622
623   * Release version 4.2 to get the current updates out and so
624     we can concentrate in finishing the clone support.
625
626 2000-01-11 Wichert Akkerman  <wakkerma@debian.org>
627
628   * Add 1900 to tm_year in sprinttime
629
630 1999-12-24  Wichert Akkerman  <wakkerma@debian.org>
631
632  * file.c: protect printstat64 with STAT64 instead of linux so we can
633    compile on Linux architectures that don't have it
634  * util.c: fix LOOP for ARM
635
636 Fri Dec 24 18:05:00 EST 1999
637
638 1999-12-23  Ulrich Drepper  <drepper@cygnus.com>
639
640  * file.c: Use ugly libc_stat trick also for stat64.
641    Implement sys_stat64, sys_fstat64, sys_lstat64, and printstat64.
642  * process.c (internal_clone): Fix a few typos and add definitions to make
643    it at least compile.
644  * linux/syscall.h: Declare sys_stat64, sys_lstat64, and sys_fstat64.
645  * linux/syscallent.h: Define table entries for sys_stat64, sys_lstat64,
646    and sys_fstat64.
647  * aclocal.m4: Define AC_STAT64.
648  * acconfig.h: Define HAVE_STAT64.
649  * configure.in: Add AC_STAT64.
650
651 Thu Dec 23 15:01:37 CET 1999 Wichert Akkerman <wakkerma@debian.org>
652
653   * Merge patch from ftp://oss.software.ibm.com/linux390/ to add
654     support for Linux on the IBM S/390 architecture
655   * process.c: add internal_clone(), currently only shows the options
656   * syscall.c: use internal_clone to handle SYS_clone
657
658 Mon Dec 20 00:27:50 CET 1999 Wichert Akkerman <wakkerma@debian.org>
659
660   * Rewrite mmap-handling to support mmap2 on Linux
661
662 Tue Dec 14 11:35:16 CET 1999 Wichert Akkerman <wakkerma@debian.org>
663
664   * Note that Linux can handle sys_semop() as well
665
666 Tue Nov 30 11:05:26 CET 1999 Wichert Akkerman <wakkerma@debian.org>
667
668   * Include linux/in6.h for glibc2.0 and older
669
670 Mon Nov 29 16:33:04 CET 1999 Wichert Akkerman <wakkerma@debian.org>
671
672   * Merge patches from John Hughes to make configure support UnixWare
673
674 Sat Nov 27 21:38:17 CET 1999 Wichert Akkerman <wakkerma@debian.org>
675
676   * Enhance sys_query_module
677
678 Fri Nov 26 10:51:55 CET 1999 Wichert Akkerman <wakkerma@debian.org>
679
680   * Patches from John Hughes:
681     + cosmectic fix in sys_getpmsg
682     + allow net.c to compile on systems without AF_INET6
683     + Only use long_to_sigset on Linux systems
684     + UnixWare treats sigmask_t and sigmask_t* as the same thing
685     + Add pollhack
686     + Parse mount arguments for UnixWare
687     + ACL fixes for UnixWare
688
689 Fri Nov 26 01:28:09 CET 1999 Wichert Akkerman <wakkerma@debian.org>
690
691   * Release 4.1 to get all the changes made out there
692
693 Thu Nov 18 18:04:04 CET 1999 Wichert Akkerman <wakkerma@debian.org>
694
695   * Merge stracefork from Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
696     + Socket calls parsed better
697         + bunch of alpha OSF syscalls added
698         + Fix alpha 32/64 bit issues
699
700 Mon Nov  1 20:52:08 CET 1999 Wichert Akkerman <wakkerma@debian.org>
701
702   * Move Linux kernelmodule-functions from system.c to bjm.c and
703     remove duplicate for sys_create_module
704   * Linux MIPS updates:
705     + Play with #ifdef's in net.c to get IPv6 right
706     + Use printargs for vm86-syscall
707
708 Sun Oct 31 22:03:00 CET 1999 Wichert Akkerman <wakkerma@debian.org>
709
710   * Merge Linux mips patch from Florian Lohoff <flo@rfc822.org>
711
712 Mon Oct 11 00:36:25 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
713
714   * Merge patch from Keith Owens <kaos@ocs.com.au> to sys_query_module
715     and sys_delete_module correctly
716
717 Wed Oct  6 02:00:33 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
718
719   * Update cvsbuild to give a better error if autoconf isn't installed
720   * Add test for linux/ptrace.h to configure
721   * Since we define GNU_SOURCE in the Makefile we don't need to define
722     USE_GNU in file.c anymore
723
724 Fri Sep 10 04:35:16 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
725
726   * #define USE_GNU before including file.c so we get some extra O_* flags
727
728 Tue Aug 31 16:27:21 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
729
730   * Add missing } in IPv6 output
731
732 Tue Aug 31 01:23:08 CEST 1999  Wichert Akkerman <wakkerma@debian.org>
733
734   * Update copyright for strace-graph to BSD to be consistent with
735     the rest of strace
736
737 Mon Aug 30 00:53:57 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
738
739   * Merge patch from Daniel Jacobowitz: KERN_JAVA_* and KERN_SECURELVL aren't
740     defined for all kernelversions
741   * Add strace-graph, written by Richard Braakman <dark@xs4all.nl>
742
743 Thu Aug 19 13:10:15 CEST 1999 Jakub Jelinek <jj@ultra.linux.cz>
744
745   * linux/sparc/syscall.h: Declare create_module/init_module.
746   * configure.in: Allow compilation in a different directory
747     than the source one.
748   * signal.c: Use asm/reg.h and struct regs instead of pt_regs
749     so that we don't depend on asm/ptrace.h which clashes with
750     glibc sys/ptrace.h.
751   * util.c: Likewise.
752   * syscall.c: Likewise.
753
754 Wed Aug  4 18:01:50 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
755
756   * Syscall 94 on Linux alpha is sys_poll
757
758 Sun Jul 25 14:38:33 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
759
760   * Merge in UnixWare patches from John Hughes <john@Calva.COM>
761
762 Thu Jul 15 23:00:32 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
763
764   * Merge patch from Maciej W. Rozycki <macro@ds2.pg.gda.pl>:
765     + Correctly implement fix sys_createmodule (Linux)
766     + Add limited handlig of sys_initmodule (Linux)
767
768 Tue Jul 13 17:07:50 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
769
770   * Add configure-test for sys/reg.h and use that
771   * Use sys/reg.h instead of asm/ptrace.h
772
773 Sat Jul 10 01:46:10 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
774
775   * Remove hack in signal.c for arm architecture
776   * Add hack so we compile correctly on powerpc
777
778 Fri Jul  9 02:28:16 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
779
780   * Add a corrected patch from Daniel Jacobowitz
781
782 Thu Jul  8 16:00:04 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
783
784   * Merge patch from Daniel Jacobowitz to allow us to use the kernel types
785     for the stat structure
786
787 Thu Jun 24 15:54:18 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
788
789   * Fix test for sys/reg include
790
791 Tue Jun 22 17:26:33 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
792
793   * Fixed some Linux/powerpc sillyness, thanks to Daniel Jacobowitz
794   * Fixed some SunOS compile problems earlier that I forgot to include
795     here
796
797 Mon Jun 14 12:44:25 CEST 1999
798
799   * Avoid leakint fd into child when forking, patch from
800     John Hughes <john@Calva.COM>
801
802 Fri Jun 11 14:54:47 CEST 1999
803
804   * Applied IRIX64 patch from Thomas E. Dickey <dickey@clark.net>
805   * Applied Solaris and manpage updates from Guy Harris <guy@netapp.com>
806
807 Wed Jun  9 14:48:49 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
808
809   * Brought syscall list for alpha up to date
810
811 Wed Jun  2 18:30:12 CEST 1999 Jakub Jelinek <jj@ultra.linux.cz>
812
813   * system.c: sys_umount2 syscall support.
814   * linux/sparc/errnoent.h: Update sparc-linux errnos.
815   * linux/sparc/syscall.h: Update used sparc-linux syscalls.
816   * linux/sparc/syscallent.h: Match 2.2.9 system calls.
817   * file.c: sparc-linux asm/stat.h uses dev_t etc. types,
818     so it needs strace's own copy of the stat structure.
819   * util.c: Make it compile on sparc-linux.
820   * strace.c: Fix strace -f and -ff operation on sparc-linux.
821   * signal.c: rt_sigaction has different arguments on sparc*-linux
822     and alpha-linux.
823   * syscall.c: Recognize sparc64-linux binaries.
824
825 Fri May 28 21:09:00 PST Ulrich Drepper <drepper@cygnus.com>
826
827   * configure.in: Fix typo (CFLAG -> CFLAGS).
828
829   * syscall.c: Don't include linux/ptrace.h explicitly for glibc.
830
831 Thu May 27 13:59:27 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
832
833   * Add some sysctl support, patch from Ulrich Drepper
834
835 Wed May 26 01:04:34 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
836
837   * Use kernel dirent structure for Linux
838
839 Sun May  9 02:18:30 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
840
841   * Merge in patches from Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
842     + some layout and other minor fixes
843     + add some m68k-specific things to linux/syscallent.h. Note that m68k
844       is similar enough to i386 to not need it's own subdirectory
845     + add support for sendfile and mremap syscalls for Linux
846   * Merge in patches from Sascha Schumann <sascha@schumann.2ns.de>
847     + ioctls.h vs sys/ioctl.h on Alpha platform
848     + pointer was casted to an int in stream.c
849     + strsignal() needs -D_GNU_SOURCE in CFLAGS
850     + several other casts changed
851     + correct ARM/POWERPC architecture defines in acconfig.h
852   * Merge in patches from Morten Welinder <terra@diku.dk>
853     + add some autoconf-tests for includefiles
854     + handle solaris version of sigcontext struct (actually I hacked this
855       up again, but the idea is his :)
856
857 Sun Apr 18 22:32:42 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
858
859   * Update syscalls for linux alpha, patch from Bart Warmerdam
860     <bartw@debian.org>
861   * Update sparc code so it actually compiles
862
863 Fri Apr 16 02:18:05 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
864
865   * Add support for old_*stat functions for Linux. Please note you need
866     to use reasonably recent kernel headers to compile strace now.
867   * Change references to LINUX into linux in file.c
868   * Fix include for LDT in mem.c
869
870 Thu Apr 15 22:28:15 CEST 1999 Wichert Akkerman <wakkerma@debian.org>
871
872   * Change in strace maintainership, jrs passed the torch to me.
873   * Use autoconf 2.13
874   * Incorporate all changes already made in the Debian strace package:
875     + compiles with more Linux kernels
876     + added support for more Linux architectures
877     + add support for a lot of extra syscalls
878     + fix some problems with hanging children
879     + check stray syscall after execv
880     + decode capget and capset arguments
881     + add more constants to net.c
882     + detect ROSE networking
883     + add more protocol families to domains
884     + add IPIP protocol
885     + added MSG_PROXY and MSG_CTRUNC to msg_flags
886     + added SO_BSDCOMPAT and SO_REUSEPORT to sockoptions
887     + added IP, IPX and TCP-options
888     + added IP, IPX and TCP support to get-/setsockopt()
889     + added IPX support
890     + updated handling of signals
891
892 Sun Oct 27 22:28:00 1996  J. Richard Sladkey  <jrs@world.std.com>
893
894         * util.c (umovestr) [LINUX]: Handle Linux like SunOS4
895         instead of SVR4.  That is, read a few bytes at a time
896         to avoid overrunning the end of the stack.
897
898 Fri May 31 01:48:49 1996  J. Richard Sladkey  <jrs@world.std.com>
899
900         * version.c: Version 3.1 is released.
901
902 Thu May 23 01:04:43 1996  J. Richard Sladkey  <jrs@world.std.com>
903
904         * aclocal.m4 (AC_DECL_SYS_ERRLIST): Try looking in stdio.h
905         as well since that's where glibc declares it.  Go figure.
906         * signal.c (sys_sigreturn) [ALPHA]: Use sigcontext
907         instead of sigcontext_struct since glibc v5+ apparently
908         plays games with the native OS namespace.
909         From David Mosberger-Tang <davidm@AZStarNet.com>.
910
911 Mon May 20 23:17:14 1996  J. Richard Sladkey  <jrs@world.std.com>
912
913         * version.c: Version 3.0.14 is released.
914
915         * aclocal.m4 (AC_STRUCT_MSG_CONTROL): New macro.
916         * configure.in: Add call to AC_STRUCT_MSG_CONTROL.
917         * net.c (printmsghdr): Handle BSD 4.3 and 4.4 msghdr members
918         differently.
919         Reported by Henrik Storner <storner@osiris.ping.dk>.
920
921         * configure.in: (AC_CHECK_{HEADERS,FUNCS}): Add checks for
922         sys/filio.h and sys/stream.h and remove check for poll.
923         * desc.c (decode_select, sys_select, sys_oldselect) [LINUX]:
924         Handle old and new styles of argument passing for select on Linux.
925         * ioctl.c, stream.c: Conditionalize stream code on presence of
926         sys/stream.h instead of poll because glibc implements poll but
927         not the rest of the stream interface.
928         * signal.c [LINUX]: Standardize on the name sigcontext_struct.
929         (sys_sigprocmask) [ALPHA]: Handle OSF flavor which is more like
930         sigsetmask.
931         * term.c (term_ioctl): Use _VMIN, if present, for TC{G,S}ETA*.
932         * util.c (umoven, umovestr): Move data in long-sized chunks
933         at a time, instead of hard coding it to be 4.
934         From David Mosberger-Tang <davidm@AZStarNet.com>.
935
936 Mon May 20 01:19:36 1996  J. Richard Sladkey  <jrs@world.std.com>
937
938         * version.c: Version 3.0.13 is released.
939
940         * configure.in (AC_CHECK_HEADERS): Add check for asm/sigcontext.h.
941         * signal.c [HAVE_ASM_SIGCONTEXT_H]: Conditionally include
942         asm/sigcontext.h to define sigcontext_struct and don't define it
943         locally if the header is present.
944
945         * syscall.c (nerrnos{0,2}): Correct size computation.
946
947         * Makefile.in: Remove dependencies and rules relating to files
948         normally found in the os directory.  Because of the new scheme we
949         don't know precisely where they come from.  Sigh.
950         * signalent.sh: Make it work for sunos4, linux, and svr4.
951         * {sunos4,linux{,/alpha},svr4}/Makefile.in: Make rules correspond
952         to traditional make syntax.  Add signalent.h to files which can
953         unconditionally be rebuilt.  Prevent signalent.h from being
954         unconditionally being rebuilt since it's customized.
955         * {sunos4,linux{,/alpha},svr4}/{ioctlent,errnoent,signalent}.h:
956         Use versions built by {ioctlent,errnoent,signaltent}.sh.
957         * sunos4/ioctlent.sh: Work around sprintf troubles with SunOS
958         4.1.4 and gcc 2.7.2.
959
960 Sun May 19 17:14:09 1996  J. Richard Sladkey  <jrs@world.std.com>
961
962         * configure.in, Makefile.in: Add OSARCH concept to finish
963         build support for the alpha.
964         * Makefile.in, linux/Makefile.in: Rewrite clean, distclean,
965         and maintainer-clean rules.
966         * defs.h, ioctlsort.c: Make ioctl code member unsigned.
967         * ioctl.c, ioctlsort.c (compare): Perform explicit checking
968         for less, greater, and equal since subtraction on two's
969         complement numbers isn't an order relation (it isn't transitive)!
970         * linux/Makefile.in: Add rules for the signalent.h file.
971         * linux/alpha/Makefile.in: New file.
972
973 Sun May 19 01:12:28 1996  J. Richard Sladkey  <jrs@world.std.com>
974
975         * version.c: Version 3.0.12 is released.
976
977         * linux{,alpha}/ioctlent.sh: Tweak for recent kernels.
978         From Michael E Chastain <mec@duracef.shout.net>.
979
980         * defs.h (SUPPORTED_PERSONALITES, DEFAULT_PERSONALITY): New.
981         * syscall.c (set_personality): New.
982         * strace.c (main): Call set_personality.
983         * defs.h, syscall.c, ioctl.c, signal.c: Make sysent, errnoent,
984         ioctlent, and signalent indirect pointers and redirect them
985         based on personality.
986         * {sunos4,svr4,linux{,/alpha}}/signalent.h: New files.
987         Suggested by Tom Dyas <tdyas@eden.rutgers.edu>.
988
989         * util.c (upeek): Handle case where ptrace returns a long
990         and sizeof(long) != sizeof(int).
991         From Richard Henderson <richard@twiddle.tamu.edu>
992
993 Fri May 17 21:03:36 1996  J. Richard Sladkey  <jrs@world.std.com>
994
995         * version.c: Version 3.0.11 is released.
996
997         * many files: Fix more printf warnings for other platforms.
998
999         * ipc.c (sys_msgrcv) [LINUX]: Conditionalize definition of ipc_wrapper.
1000
1001         * linux/dummy.h: Handle missing library support for {send,recv}msg.
1002         Reported by Thomas Bogendoerfer <tsbogend@bigbug.franken.de>.
1003
1004         * linux/syscall.h (sys_utimes): Fix a typo in the declaration.
1005         From Thomas Bogendoerfer <tsbogend@bigbug.franken.de>.
1006
1007 Fri May 17 00:50:06 1996  J. Richard Sladkey  <jrs@world.std.com>
1008
1009         * version.c: Version 3.0.10 is released.
1010
1011         * Makfile.in: Add os/arch to includes so that a given arch
1012         (like alpha) can override the native arch (like i386).
1013         * configure.in: Check for sendmsg.
1014
1015         * net.c: Make sendmsg and recvmsg dependent on an autoconf
1016         test.  Reported by Michael E Chastain <mec@duracef.shout.net>.
1017
1018         * acconfig.h, configure.in: Detect the alpha.
1019         * ioctl.c: Handle the alpha.
1020         * defs.h: Make some members long for the alpha.  Define
1021         some register nicknames.  Add support for WAITEXECVE.
1022         * file.c [ALPHA]: Support the alpha for statfs.  Add
1023         osf_statfs and osf_fstatfs for the alpha.  Make damn sure
1024         major and minor results are suitable for passing to printf.
1025         * signal.c, syscall.c: Support the alpha.
1026         * process.c: Add alpha user offsets.
1027         * most files: Use %l? for printf arguments since
1028         most are now longs for the alpha.
1029         * linux/alpha/{errnoent.h,ioctlent.{h,sh},syscallent.h}:
1030         New for the alpha.
1031         From Thomas Bogendoerfer <tsbogend@bigbug.franken.de>.
1032
1033 Wed May 15 00:29:37 1996  J. Richard Sladkey  <jrs@world.std.com>
1034
1035         * version.c: Version 3.0.9 is released.
1036
1037         * config.in, config.sub, install-sh: Upgrade to autoconf 2.10.
1038
1039         * linux/dummy.h, linux/syscallent.h, linux/syscall.h: Add recent
1040         Linux kernel version system calls.
1041
1042 Wed Mar 13 01:03:38 1996  J. Richard Sladkey  <jrs@world.std.com>
1043
1044         * ipc.c [SUNOS4]: Add SunOS support for decoding IPC calls.
1045         * syscall.c [SUNOS4]: Compile decode_subcall on SunOS and
1046         decode IPC calls using it.
1047         * sunos4/dummy.h: Alias sys_semop to printargs.
1048         * sunos4/syscall.h: Add new pseudo syscalls for IPC.
1049         * sunos4/syscallent.h: Include new subcalls for IPC.
1050         From Matthias Pfaller <leo@dachau.marco.de>.
1051
1052 Tue Feb 13 22:08:25 1996  J. Richard Sladkey  <jrs@world.std.com>
1053
1054         * version.c: Version 3.0.8 is released.
1055
1056         * time.c [LINUX]: Explicitly include linux/version.h.
1057
1058         * strace.c (main): Don't let them even *try* to
1059         get strace to attach to itself since some systems
1060         don't handle this case very gracefully.
1061         Reported by David S. Miller <davem@caip.rutgers.edu>.
1062
1063         * Makefile.in (distclean): Fix it for subdirectories.
1064
1065         * sunos4/syscallent.h, svr4/syscallent.h: Fill in the new
1066         sys_flags member for each defined system call.
1067
1068 Fri Dec  8 01:17:28 1995  Rick Sladkey  <jrs@world.std.com>
1069
1070         * defs.h (TRACE_*): New flags to describe what class
1071         of system call each system call is.
1072         (sysent): Add sys_flags member.
1073         * syscall.c (sysent): Define (and later undef) abbreviations
1074         for the system call class flags.
1075         (lookup_class): New function to translate strings to
1076         system call class flags.
1077         (qualify): Handle new system call class mechanism.
1078         * linux/syscallent.h: Fill in the new sys_flags member
1079         for each defined system call.
1080
1081         * defs.h (print_sock): Remove redundant and non-K&R C
1082         compatible prototype.  From Juergen Weigert
1083         <jnweiger@immd4.informatik.uni-erlangen.de>.
1084
1085 Thu Dec  7 01:17:40 1995  Rick Sladkey  <jrs@world.std.com>
1086
1087         * linux/ioctlent.sh: Tweak to improve ioctl accuracy.
1088         From Michael E Chastain <mec@duracef.shout.net>.
1089
1090         * system.c (includes) [LINUX]: Add linux/nfs.h for recent
1091         kernels.  From Michael E Chastain <mec@duracef.shout.net>.
1092
1093 Wed Dec  6 21:52:28 1995  Rick Sladkey  <jrs@world.std.com>
1094
1095         * file.c (sprintfstype): Enclose string result in double
1096         quotes.
1097
1098         * time.c (sys_adjtimex) [LINUX]: Conditionalize
1099         constantly evolving timex structure.
1100         From Aaron Ucko <UCKO@VAX1.ROCKHURST.EDU>.
1101
1102         * defs.h, syscall.c, strace.c: Rename syscall to
1103         trace_syscall and change prototype and all callers
1104         because of broken Linux shared libraries.
1105         From Aaron Ucko <UCKO@VAX1.ROCKHURST.EDU>.
1106
1107         * Makefile.in (clean): Check for a file with test -f not
1108         test -d.  From Aaron Ucko <UCKO@VAX1.ROCKHURST.EDU>.
1109
1110 Tue Sep 26 02:32:31 1995  Rick Sladkey  <jrs@world.std.com>
1111
1112         * version.c: Version 3.0.7 is released.
1113
1114         * util.c (string_quote): Fix thinko which caused core
1115         dumps for strings with quotes in them.
1116         Reported by Marty Leisner <leisner@sdsp.mc.xerox.com>.
1117
1118         * linux/Makefile.in (errnoent.h rule): Grab all errno.h
1119         files from /usr/include, not just the linux one.
1120         From Michael E Chastain <mec@duracef.shout.net>.
1121
1122         * linux/errnoent.sh: Total rewrite to handle more ioctls with
1123         fewer false positives on more kernel flavors.
1124         From Michael E Chastain <mec@duracef.shout.net>.
1125
1126 Mon Sep  4 01:29:22 1995  Rick Sladkey  <jrs@world.std.com>
1127
1128         * version.c: Version 3.0.6 is released.
1129
1130         * linux/dummy.h, linux/syscall.h, linux/syscallent.h: Add
1131         sys_msync.
1132         * mem.c (mctl_funcs, mctl_lockas, sys_mctl): Conditionalize
1133         on MC_SYNC instead of HAVE_MCTL.
1134         (mctl_sync): Conditionalize on MS_ASYNC instead of HAVE_MCTL.
1135         (sys_msync): New function.
1136
1137 Sat Sep  2 12:06:04 1995  Rick Sladkey  <jrs@world.std.com>
1138
1139         * linux/dummy.h, linux/syscall.h, linux/syscallent.h: Add
1140         sys_flock and sys_getdents.
1141         * desc.c (flockcmds, sys_flock): Conditionalize on LOCK_SH
1142         not SUNOS4.
1143         * file.c (sys_getdents): Define unconditionally and handle
1144         LINUX case.
1145         * strace.c (main): Disallow username option unless both real
1146         and effective uids are root.
1147
1148 Wed Aug 30 01:29:58 1995  Rick Sladkey  <jrs@world.std.com>
1149
1150         * strace.c (main): Ensure that run_uid and run_gid are
1151         always set to something meaningful.
1152         (main, newoutf) [!SVR4]: Swap real and effective uids while
1153         opening any output files.
1154         (main) [!SVR4]: Treat effective uid of root as a request
1155         to handle suid binaries correctly using the real uid of
1156         the invoking user.
1157
1158 Sat Aug 19 00:06:08 1995  Rick Sladkey  <jrs@world.std.com>
1159
1160         * Makefile.in: Add `|| true' to clean rule because
1161         although GNU make 3.74 uses `sh -c' to invoke commands
1162         every other make in the world uses `sh -ec'.
1163
1164         * syscall.c (syscall) [SVR4, MIPS]: The fifth and subsequent
1165         arguments appear to be stored on the stack, not in the
1166         registers following A3 (empirical result).
1167
1168         * defs.h: Add prototype for printsock.
1169         * svr4/dummy.h: Remove generic handling of sys_mount.
1170         * system.c [SVR4, MIPS]: Include several system headers to cleanly
1171         get access to SGI mount information.
1172         (mount_flags, nfs_flags) [SVR4, MIPS]: New objects.
1173         (sys_mount) [SVR4, MIPS]: New function.
1174         (sys_mount) [SVR4, !MIPS]: New function.
1175
1176 Tue Jul  4 00:30:34 1995  Rick Sladkey  <jrs@world.std.com>
1177
1178         * version.c: Version 3.0.5 is released.
1179
1180         * desc.c, resource.c, strace.c, syscall.c, time.c: Cast tv_sec and
1181         tv_usec members to long when using printf.
1182
1183         * ipc.c: Omit define of __KERNEL__.
1184         ({MSG,SEM,SHM}_{STAT,INFO}): Explicitly define those things we
1185         want which __KERNEL__ used to provide.
1186         (sys_msgrcv): Change reference to ipc_kludge structure to
1187         look-alike ipc_wrapper to avoid dependence on __KERNEL__.
1188
1189         mem.c (mmap_flags) [MAP_{GROWSDOWN,DENYWRITE,EXECUTABLE}]: Add
1190         Linux specific options.
1191
1192         syscall.c: Use SYS_ERRLIST_DECLARED instead of guessing.
1193         [E{RESTART{SYS,NO{INTR,HAND}},NOIOCTLCMD}]: Explicitly define
1194         instead of depending of __KERNEL__.
1195
1196         term.c: Cast c_{i,o,c,l}flag to long when using printf.
1197
1198 Tue Jun  6 00:27:48 1995  Rick Sladkey  <jrs@world.std.com>
1199
1200         * aclocal.m4 (AC_DECL_SYS_ERRLIST, AC_DECL__SYS_SIGLIST): New.
1201         * configure.in: Call AC_DECL_SYS_ERRLIST, AC_DECL_SYS_SIGLIST,
1202         and AC_DECL__SYS_SIGLIST.
1203         * acconfig.h (SYS_ERRLIST_DECLARED): New.
1204         * strace.c (strerror): Use SYS_ERRLIST_DECLARED.
1205         (strsignal): Use SYS_SIGLIST_DECLARED.
1206
1207         net.c (sys_socket): Omit inadvertent surplus comma when
1208         protocol family isn't PF_INET.
1209
1210         util.c (dumpstr): Fix incorrect printing of one too many
1211         characters when the length is not an even multiple of 16 bytes.
1212         Reported by Juergen Weigert
1213         <jnweiger@immd4.informatik.uni-erlangen.de>.
1214
1215 Thu May  4 23:37:47 1995  Rick Sladkey  <jrs@world.std.com>
1216
1217         * ioctl.c (compare): Change prototype to match POSIX qsort.
1218         * signal.c (sigishandled) [SVR4]: Omit everything after return.
1219         * strace.c (trace) [SVR4]: Break out of for loop instead of
1220         returning when finished so final return statement is executed.
1221         * syscall.c (internal_syscall): Add more SYS_wait* variations.
1222         (syscall) [LINUX]: Correct typo which commented out the M68K
1223         argument to ifdef.
1224         * util.c (printstr): Cast unsigned char pointer argument
1225         to char pointer in umovestr call.
1226         (dumpstr): Likewise for umoven.
1227
1228 Wed May  3 01:10:56 1995  Rick Sladkey  <jrs@world.std.com>
1229
1230         * version.c: Version 3.0.4 is released.
1231
1232         * signal.c (sys_sigblock): Move after the definition of
1233         sys_sigsetmask that it calls to avoid an implicit declaration.
1234         * stream.c (transport_user_options, transport_server_options):
1235         Only needed if TI_BIND is defined.
1236         * configure.in: Add -Wno-implicit to WARNFLAGS on SunOS 4.x.
1237
1238         * process.c (internal_fork) [SVR4]: Fix a typo that omitted
1239         the tcp arguement from the call to exiting.  Add getrval2
1240         check so no fork processing is done in the child.
1241         (printwaitn): Initialize exited so that its value is defined
1242         for all flows of execution.
1243
1244 Tue May  2 22:39:42 1995  Rick Sladkey  <jrs@world.std.com>
1245
1246         * linux/dummy.h: Add aliases for sysfs, personality, afs_syscall,
1247         setfsuid, setfsgid, and _llseek syscalls.
1248         * linux/syscall.h: Add prototypes for them.
1249         * linux/syscallent.h: Add them to the syscall entries table.
1250         * system.c (headers) [LINUX]: Include linux/unistd.h to get __NR_*
1251         defines and conditionally include linux/personality.h if
1252         __NR_personality is defined.
1253         (personality_options) [LINUX]: New table.
1254         (sys_personality) [LINUX]: New function.
1255
1256 Tue May  2 00:20:39 1995  Rick Sladkey  <jrs@world.std.com>
1257
1258         * strace.c (trace) [!SVR4]: Change forever loop to one predicated
1259         on the number of traced processes so that we can have untraced
1260         children (e.g. via popen).
1261
1262         * strace (main) [!SVR4]: Call fake_execve to get the actual
1263         exec and its arguments into the trace.
1264         (environ): Declare it.
1265         * process.c (fake_execve): New function.
1266         (headers): Include sys/syscall.h to get SYS_* defines.
1267
1268         * process.c (sys_execv, sys_execve): Surround argument annotations
1269         with C comment delimiters.
1270         (printargv, printargc): The arg vector is an array of char pointers
1271         not ints.
1272
1273         * strace.c (printleader): Also check for multiple -p arguments
1274         when deciding whether to print the pid field.
1275
1276         * strace.c (strerror) [!HAVE_STRERROR]: New function.
1277         * defs.h (strerror, strsignal): Add these prototypes if we provide
1278         the functions.
1279         * configure.in (AC_CHECK_FUNCS): Add strerror.
1280
1281         * strace.c (main, proc_poller): Add SIGPIPE to the list of caught
1282         and blocked signals.
1283
1284         * strace.c (main): Add username option.  Verify they are root before
1285         letting them use it.  Look up the ids in the password file.  Set
1286         them just before executing the program.
1287         From Reuben Sumner <rasumner@undergrad.math.uwaterloo.ca>.
1288
1289 Sat Apr 29 00:09:56 1995  Rick Sladkey  <jrs@world.std.com>
1290
1291         * version.c: Version 3.0.3 is released.
1292
1293         * system.c (mount_flags) [LINUX]: Omit duplicated MS_NOSUID entry.
1294         From Reuben Sumner <rasumner@undergrad.math.uwaterloo.ca>.
1295
1296         * strace.c (outfname): Initialize to NULL.
1297         (main): Defer output file processing until after arguments.
1298         Allow either a pipe or a bang for command arguments.
1299         Check if outfname is NULL instead of checking outf for stderr.
1300         Reinitialize each startup TCB's outf to fix -p/-o ordering bug.
1301         (droptcb): Reset close TCB's outf to NULL instead of stderr.
1302         (tprintf): Avoid calling vfprintf if outf is NULL.
1303
1304         * strace.c (main): Use popen if -o argument begins with a pipe.
1305         From Marty Leisner <leisner@sdsp.mc.xerox.com>.
1306
1307         * process.c (printstatus): Fix a typo where WIFSIGNALED was meant
1308         but WIFSTOPPED was used.
1309
1310         * Makefile.in: Add an EXTRA_DEFS variable and use it in the .c.o
1311         rule to prevent the comment from being untrue.
1312
1313 Fri Apr 28 22:01:56 1995  Rick Sladkey  <jrs@world.std.com>
1314
1315         * strace.c (sys_exit): Move follow fork code to internal_exit.
1316         (sys_fork): Move follow fork code to internal_fork.
1317         (sys_execv, sys_execve): Move follow fork code to internal_exec.
1318         (sys_waitpid, sys_wait4): Move follow fork code to internal_wait.
1319         (vforking): Remove this static variable and check scno in
1320         internal_fork instead.
1321         (internal_exit, internal_fork, internal_exec, internal_wait): New
1322         functions.
1323         * defs.h: Add prototypes for the new internal_* functions.
1324         * syscall.c (syscall): Move syscall entering trace qualifier check
1325         and reprint checking after context decoding and precede them with
1326         a call to internal_syscall.  Precede syscall exiting trace
1327         qualifier check with a call to internal_syscall.
1328         (internal_syscall): New function.
1329
1330         * defs.h (struct tcb): Make scno signed.
1331         * strace.c (syscall) Make u_error signed.
1332         [LINUX, I386]: Avoid unsigned cast in eax check.
1333         * syscall.c (sys_indir): Make i, scno, and nargs signed.
1334         * desc.c (sys_select): Make cumlen unsigned
1335
1336 Mon Apr 24 23:52:47 1995  Rick Sladkey  <jrs@world.std.com>
1337
1338         * net.c (socktypes): Add SOCK_PACKET.
1339
1340 Sun Apr  2 23:50:39 1995  Rick Sladkey  <jrs@world.std.com>
1341
1342         * Makefile (clean): Check explicitly for a Makefile in subdirs
1343         before running make in them.
1344
1345 Sun Mar 26 12:37:21 1995  Rick Sladkey  <jrs@world.std.com>
1346
1347         * strace.c [MIPS] (proc_open): Conditionalize run on MIPS.
1348         [MIPS] (detach): Initialize error for MIPS case.
1349         (trace): Initialize ioctl_result and ioctl_errno for overly helpful
1350         compilers.
1351         * syscall.c (decode_subcall): Move variable i into conditionals
1352         that use use it.
1353         * system.c (syssgi_options): Conditionalize SGI_RECVLMSG and
1354         SGI_SET_FPDEBUG that SGI decided to drop.  I don't have the stomach
1355         to change them all.
1356         * term.c (term_ioctl): Force [c_[iocl]flags members to long before
1357         printing since we don't know what the size of their type is.
1358         * util.c [SVR4, MIPS] (umoven): Prevent MIPS from using pread even
1359         if autoconf detects it since it seems to either not work or do
1360         something else entirely on Irix 5.3.
1361
1362 Sun Mar 26 00:01:11 1995  Rick Sladkey  <jrs@world.std.com>
1363
1364         * version.c: Version 3.0.2 is released.
1365         * linux/dummy.h: Make sys_fchdir like sys_close instead of printargs
1366         so that the file descriptor arg is decimal.
1367
1368 Sat Mar 25 22:50:13 1995  Rick Sladkey  <jrs@world.std.com>
1369
1370         * net.c [LINUX] (protocols): Explicitly define all IPPROTO_* entries
1371         because on Linux they are enumerators.
1372
1373         * system.c [LINUX] (mount_flags): Handle renaming of MS_SYNC to
1374         MS_SYNCHRONOUS.
1375
1376         * util.c (printxval): When there is no translation, print the actual
1377         number first and the the default value as a C comment.
1378
1379         * net.c (sys_send, sys_sendto, sys_sendmsg, sys_getsockopt,
1380         sys_setsockopt): Change first argument from unsigned to signed to
1381         cater to the frequent practice of calling system calls with a file
1382         descriptor of -1.
1383         * mem.c (sys_mmap): Likewise.
1384
1385 Sun Mar 19 13:53:52 1995  Rick Sladkey  <jrs@world.std.com>
1386
1387         * signal.c [LINUX] (signalent): Handle old and new values of SIGIO.
1388
1389 Sun Dec 11 22:51:51 1994  Rick Sladkey  <jrs@world.std.com>
1390
1391         * version.c: Version 3.0.1 is released.
1392         * Makefile.in, configure.in, aclocal.m4: Changes for autoconf 2.0.
1393         * config.guess, config.guess: Update from the FSF.
1394         * install-sh: New from the FSF.
1395
1396 Mon Dec  5 20:51:29 1994  Rick Sladkey  <jrs@world.std.com>
1397
1398         * Makefile.in: Add m68k arch.
1399         * acconfig.h (M68K): Add m68k define.
1400         * configure.in: Add detection of arch m68k.
1401         * process.c [M68K] (struct_user_offsets): Support m68k registers and
1402         offsets.
1403         * signal.c [M68K] (sigcontext_struct): Support m68k sigcontext
1404         structure.
1405         [M68K] (sys_sigreturn): Support m68k sigreturn handling.
1406         * syscall.c [M68K] (syscall): Support m68k syscall number register
1407         and errno in d0 instead of eax.
1408         * util.c [M68K] (getpc, printcall, setbpt, clearbpt): Support m68k
1409         program counter in PT_PC instead of EIP.
1410         [M68K] (LOOP): Support m68k loop instruction.
1411         From Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>.
1412
1413         * mem.c [MAP_ANONYMOUS] (mmap_flags): Correct inadvertent reference
1414         to MAP_FIXED instead of MAP_ANONYMOUS.
1415         From Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>.
1416
1417         * signal.c [LINUX] (signalent): Signal 30 is now SIGPWR.
1418         From Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>.
1419
1420 Mon Dec  5 01:05:46 1994  Rick Sladkey  <jrs@world.std.com>
1421
1422         * defs.h (tprintf): Fix typo in non-gcc ansi prototype for tprintf.
1423         Reported by Thanh Ma <tma@encore.com>.
1424
1425         * strace.c (cleanup): Send SIGCONT before SIGTERM because Linux
1426         1.1.62 doesn't continue a traced child when the parent exits.
1427         Reported by Matt Day <mday@artisoft.com>.
1428
1429         * system.c [LINUX]: Include netinet/in.h before arpa/inet.h.
1430
1431         * util.c (printstr): Fix longstanding bug in notating string
1432         continuation.
1433
1434         * strace.c [SVR4] (proc_open): Specifically wait for the child the
1435         child to go into the execve syscall to avoid spurious traces.
1436         [LINUX] (detach): Conditionalize the status variable.
1437
1438 Sun Dec  4 23:21:42 1994  Rick Sladkey  <jrs@world.std.com>
1439
1440         * Makefile.in: Add mips arch.
1441         * acconfig.h (MIPS): Add mips define.
1442         * configure.in: Add detection of opsys irix5 and arch mips.  Check
1443         for prctl function.
1444         Check for sys/sysconfig.h header.
1445         * defs.h (MAX_ARGS): Bump maximum syscall arguments from 8 to 32.
1446         * file.c [SVR4]: Include sys/cred.h.
1447         (access_flags): Update access flags for SGI.
1448         (sprinttime): Change type of sprinttime argument from unsigned
1449         long to time_t.
1450         * process.c [HAVE_PRCTL]: Include sys/prctl.h.
1451         [HAVE_PRCTL] (prctl_options, sys_prctl): New for SGI.
1452         (printsiginfo): Conditionally compile SI_TIMER and SI_MESGQ.
1453         Cast si_band member to long before printing.
1454         * signal.c (sigact_flags): Add _SA_BSDCALL for SGI.
1455         (sigprocmaskcmds): Add SIG_SETMASK32 for SGI.
1456         * strace.c [SVR4] [MIPS]:
1457         (foobar): New dummy signal handler.
1458         (main): Install a dummy signal handler in the child before pausing
1459         to work around an SGI bug in PRSABORT.
1460         (proc_open): Send a interrupt to the child instead of aborting the
1461         syscall which doesn't work on Irix5.2.
1462         * svr4/dummy.h: Add new unfinished SGI syscalls
1463         (e.g. sys_sysmp, sys_sginap, etc.).  Handle some SGI syscalls like
1464         existing calls (e.g. sys_ksigaction like sys_sigaction).
1465         Printargs does the print thing for sys_sethostid.
1466         * svr4/syscall.h: Declare all new SGI syscalls.
1467         (SGI_KLUDGE): Define syscall table starting index to be 1 for SGI
1468         and add it to all subcall entry points.
1469         (SYS_pgrpsys_subcall, SYS_sigcall_subcall, SYS_context): Don't
1470         decode as subcalls on MIPS. Instead, use the normal syscalls.
1471         * svr4/syscallent.h [MIPS]: Lead syscall table with a dummy entry
1472         since SGI syscall numbers are off by one.
1473         [MIPS] (sys_pgrpsys): Rename to sys_setpgrp on SGI.
1474         [MIPS] (sys_xenix): Rename to sys_syssgi on SGI.
1475         [MIPS] (sys_sysmachine): Rename to sys_sysmips on SGI.
1476         [MIPS]: Conditionalize SVR4 extension into SGI and Solaris classes.
1477         * syscall.c (dumpio): Validate descriptor against MAX_QUALS.
1478         [HAVE_PR_SYSCALL] (syscall): Conditionalize SYS_vfork.
1479         [MIPS] (syscall): Add SGI section for decoding u_error and u_rval.
1480         Add workaround for broken SGI pr_sysarg on syscall entry.
1481         [SVR4] (syscall): Conditionalize subcall decoding for
1482         SYS_ptrpsys_subcall, SYS_sigcall_subcall and SYS_context_subcall.
1483         [SVR4] [MIPS] (getrval2): Handle SGI.
1484         * syscallent.sh: Dork the sed line to be choosier about SYS_ lines.
1485         * system.c [HAVE_SYSCONFIG_H]: Include sys/sysconfig.h.
1486         [MIPS] (syssgi_options, sys_syssgi): New for SGI.