1Summary: Tracks and displays system calls associated with a running process
2Name: strace
3Version: 4.8
4Release: 1%{?dist}
5License: BSD
6Group: Development/Debuggers
7URL: http://sourceforge.net/projects/strace/
8Source: http://downloads.sourceforge.net/strace/%{name}-%{version}.tar.xz
9BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
10
11BuildRequires: libacl-devel, libaio-devel, time
12
13%define strace64_arches ppc64 sparc64
14
15%description
16The strace program intercepts and records the system calls called and
17received by a running process.  Strace can print a record of each
18system call, its arguments and its return value.  Strace is useful for
19diagnosing problems and debugging, as well as for instructional
20purposes.
21
22Install strace if you need a tool to track the system calls made and
23received by a process.
24
25%ifarch %{strace64_arches}
26%package -n strace64
27Summary: Tracks and displays system calls associated with a running process.
28Group: Development/Debuggers
29
30%description -n strace64
31The strace program intercepts and records the system calls called and
32received by a running process.  Strace can print a record of each
33system call, its arguments and its return value.  Strace is useful for
34diagnosing problems and debugging, as well as for instructional
35purposes.
36
37Install strace if you need a tool to track the system calls made and
38received by a process.
39
40This package provides the `strace64' program to trace 64-bit processes.
41The `strace' program in the `strace' package is for 32-bit processes.
42%endif
43
44%prep
45%setup -q
46
47%build
48%configure
49make %{?_smp_mflags}
50
51%install
52rm -rf %{buildroot}
53make DESTDIR=%{buildroot} install
54
55# remove unpackaged files from the buildroot
56rm -f %{buildroot}%{_bindir}/strace-graph
57
58%define copy64 ln
59%if 0%{?rhel}
60%if 0%{?rhel} < 6
61%endif
62%define copy64 cp -p
63%endif
64
65%ifarch %{strace64_arches}
66%{copy64} %{buildroot}%{_bindir}/strace %{buildroot}%{_bindir}/strace64
67%endif
68
69%check
70make check
71
72%clean
73rm -rf %{buildroot}
74
75%files
76%defattr(-,root,root)
77%doc CREDITS ChangeLog ChangeLog-CVS COPYING NEWS README
78%{_bindir}/strace
79%{_bindir}/strace-log-merge
80%{_mandir}/man1/*
81
82%ifarch %{strace64_arches}
83%files -n strace64
84%defattr(-,root,root)
85%{_bindir}/strace64
86%endif
87
88%changelog
89* Mon Jun 03 2013 Dmitry V. Levin <ldv@altlinux.org> - 4.8-1
90- New upstream release:
91  + fixed ERESTARTNOINTR leaking to userspace on ancient kernels (#659382);
92  + fixed decoding of *xattr syscalls (#885233);
93  + fixed handling of files with 64-bit inode numbers by 32-bit strace (#912790);
94  + added aarch64 support (#969858).
95
96* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.7-3
97- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
98
99* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.7-2
100- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
101
102* Wed May 02 2012 Dmitry V. Levin <ldv@altlinux.org> 4.7-1
103- New upstream release.
104  + implemented proper handling of real SIGTRAPs (#162774).
105
106* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.6-2
107- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
108
109* Mon Mar 14 2011 Dmitry V. Levin <ldv@altlinux.org> - 4.6-1
110- New upstream release.
111  + fixed a corner case in waitpid handling (#663547).
112
113* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.5.20-2
114- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
115
116* Tue Apr 13 2010 Roland McGrath <roland@redhat.com> - 4.5.20-1
117- New upstream release, work mostly by Andreas Schwab and Dmitry V. Levin.
118  + fixed potential stack buffer overflow in select decoder (#556678);
119  + fixed FTBFS (#539044).
120
121* Wed Oct 21 2009 Roland McGrath <roland@redhat.com> - 4.5.19-1
122- New upstream release, work mostly by Dmitry V. Levin <ldv@altlinux.org>
123  + exit/kill strace with traced process exitcode/signal (#105371);
124  + fixed build on ARM EABI (#507576);
125  + fixed display of 32-bit argv array on 64-bit architectures (#519480);
126  + fixed display of 32-bit fcntl(F_SETLK) on 64-bit architectures (#471169);
127  + fixed several bugs in strings decoder, including potential heap
128    memory corruption (#470529, #478324, #511035).
129
130* Thu Aug 28 2008 Roland McGrath <roland@redhat.com> - 4.5.18-1
131- build fix for newer kernel headers (#457291)
132- fix CLONE_VFORK handling (#455078)
133- Support new Linux/PPC system call subpage_prot and PROT_SAO flag.
134- In sigaction system call, display sa_flags value along with SIG_DFL/SIG_IGN.
135
136* Mon Jul 21 2008 Roland McGrath <roland@redhat.com> - 4.5.17-1
137- handle O_CLOEXEC, MSG_CMSG_CLOEXEC (#365781)
138- fix biarch stat64 decoding (#222275)
139- fix spurious "..." in printing of environment strings (#358241)
140- improve prctl decoding (#364401)
141- fix hang wait on exited child with exited child (#354261)
142- fix biarch fork/vfork (-f) tracing (#447475)
143- fix biarch printing of negative argument kill (#430585)
144- fix biarch decoding of error return values (#447587)
145- fix -f tracing of CLONE_VFORK (#455078)
146- fix ia64 register clobberation in -f tracing (#453438)
147- print SO_NODEFER, SA_RESETHAND instead of SA_NOMASK, SA_ONESHOT (#455821)
148- fix futex argument decoding (#448628, #448629)
149
150* Fri Aug  3 2007 Roland McGrath <roland@redhat.com> - 4.5.16-1
151- fix multithread issues (#240962, #240961, #247907)
152- fix spurious SIGSTOP on early interrupt (#240986)
153- fix utime for biarch (#247185)
154- fix -u error message (#247170)
155- better futex syscall printing (##241467)
156- fix argv/envp printing with small -s settings, and for biarch
157- new syscalls: getcpu, eventfd, timerfd, signalfd, epoll_pwait,
158  move_pages, utimensat
159
160* Tue Jan 16 2007 Roland McGrath <roland@redhat.com> - 4.5.15-1
161- biarch fixes (#179740, #192193, #171626, #173050, #218433, #218043)
162- fix -ff -o behavior (#204950, #218435, #193808, #219423)
163- better quotactl printing (#118696)
164- *at, inotify*, pselect6, ppoll and unshare syscalls (#178633, #191275)
165- glibc-2.5 build fixes (#209856)
166- memory corruption fixes (#200621
167- fix race in child setup under -f (#180293)
168- show ipc key values in hex (#198179, #192182)
169- disallow -c with -ff (#187847)
170- Resolves: RHBZ #179740, RHBZ #192193, RHBZ #204950, RHBZ #218435
171- Resolves: RHBZ #193808, RHBZ #219423, RHBZ #171626, RHBZ #173050
172- Resolves: RHBZ #218433, RHBZ #218043, RHBZ #118696, RHBZ #178633
173- Resolves: RHBZ #191275, RHBZ #209856, RHBZ #200621, RHBZ #180293
174- Resolves: RHBZ #198179, RHBZ #198182, RHBZ #187847
175
176* Mon Nov 20 2006 Jakub Jelinek <jakub@redhat.com> - 4.5.14-4
177- Fix ia64 syscall decoding (#206768)
178- Fix build with glibc-2.4.90-33 and up on all arches but ia64
179- Fix build against 2.6.18+ headers
180
181* Tue Aug 22 2006 Roland McGrath <roland@redhat.com> - 4.5.14-3
182- Fix bogus decoding of syscalls >= 300 (#201462, #202620).
183
184* Fri Jul 14 2006 Jesse Keating <jkeating@redhat.com> - 4.5.14-2
185- rebuild
186
187* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 4.5.14-1.2
188- bump again for long double bug on ppc{,64}
189
190* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 4.5.14-1.1
191- rebuilt for new gcc4.1 snapshot and glibc changes
192
193* Mon Jan 16 2006 Roland McGrath <roland@redhat.com> - 4.5.14-1
194- Fix biarch decoding of socket syscalls (#174354).
195- Fix biarch -e support (#173986).
196- Accept numeric syscalls in -e (#174798).
197- Fix ipc syscall decoding (#164755).
198- Improve msgrcv printing (#164757).
199- Man page updates (#165375).
200- Improve mount syscall printing (#165377).
201- Correct printing of restarting syscalls (#165469).
202
203* Wed Aug  3 2005 Roland McGrath <roland@redhat.com> - 4.5.13-1
204- Fix setsockopt decoding on 64-bit (#162449).
205- Fix typos in socket option name strings (#161578).
206- Display more IPV6 socket options by name (#162450).
207- Don't display inappropriate syscalls for -e trace=file (#159340).
208- New selector type -e trace=desc for file-descriptor using calls (#159400).
209- Fix 32-bit old_mmap syscall decoding on x86-64 (#162467, #164215).
210- Fix errors detaching from multithreaded process on interrupt (#161919).
211- Note 4.5.12 fix for crash handling bad signal numbers (#162739).
212
213* Wed Jun  8 2005 Roland McGrath <roland@redhat.com> - 4.5.12-1
214- Fix known syscall recognition for IA32 processes on x86-64 (#158934).
215- Fix bad output for ptrace on x86-64 (#159787).
216- Fix potential buffer overruns (#151570, #159196).
217- Make some diagnostics more consistent (#159308).
218- Update PowerPC system calls.
219- Better printing for Linux aio system calls.
220- Don't truncate statfs64 fields to 32 bits in output (#158243).
221- Cosmetic code cleanups (#159688).
222
223* Tue Mar 22 2005 Roland McGrath <roland@redhat.com> - 4.5.11-1
224- Build tweaks.
225- Note 4.5.10 select fix (#151570).
226
227* Mon Mar 14 2005 Roland McGrath <roland@redhat.com> - 4.5.10-1
228- Fix select handling on nonstandard fd_set sizes.
229- Don't print errors for null file name pointers.
230- Fix initial execve output with -i (#143365).
231
232* Fri Feb  4 2005 Roland McGrath <roland@redhat.com> - 4.5.9-2
233- update ia64 syscall list (#146245)
234- fix x86_64 syscall argument extraction for 32-bit processes (#146093)
235- fix -e signal=NAME parsing (#143362)
236- fix x86_64 exit_group syscall handling
237- improve socket ioctl printing (#138223)
238- code cleanups (#143369, #143370)
239- improve mount flags printing (#141932)
240- support symbolic printing of x86_64 arch_prctl parameters (#142667)
241- fix potential crash in getxattr printing
242
243* Tue Oct 19 2004 Roland McGrath <roland@redhat.com> - 4.5.8-1
244- fix multithreaded exit handling (#132150, #135254)
245- fix ioctl name matching (#129808)
246- print RTC_* ioctl structure contents (#58606)
247- grok epoll_* syscalls (#134463)
248- grok new RLIMIT_* values (#133594)
249- print struct cmsghdr contents for sendmsg (#131689)
250- fix clock_* and timer_* argument output (#131420)
251
252* Tue Aug 31 2004 Roland McGrath <roland@redhat.com> - 4.5.7-2
253- new upstream version, misc fixes and updates (#128091, #129166, #128391, #129378, #130965, #131177)
254
255* Mon Jul 12 2004 Roland McGrath <roland@redhat.com> 4.5.6-1
256- new upstream version, updates ioctl lists (#127398), fixes quotactl (#127393), more ioctl decoding (#126917)
257
258* Sun Jun 27 2004 Roland McGrath <roland@redhat.com> 4.5.5-1
259- new upstream version, fixes x86-64 biarch support (#126547)
260
261* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com> 4.5.4-2
262- rebuilt
263
264* Thu Jun  3 2004 Roland McGrath <roland@redhat.com> 4.5.4-0.FC1
265- rebuilt for FC1 update
266
267* Thu Jun  3 2004 Roland McGrath <roland@redhat.com> 4.5.4-1
268- new upstream version, more ioctls (#122257), minor fixes
269
270* Fri Apr 16 2004 Roland McGrath <roland@redhat.com> 4.5.3-1
271- new upstream version, mq_* calls (#120701), -p vs NPTL (#120462), more fixes (#118694, #120541, #118685)
272
273* Tue Mar 02 2004 Elliot Lee <sopwith@redhat.com> 4.5.2-1.1
274- rebuilt
275
276* Mon Mar  1 2004 Roland McGrath <roland@redhat.com> 4.5.2-1
277- new upstream version, sched_* calls (#116990), show core flag (#112117)
278
279* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
280- rebuilt
281
282* Thu Nov 13 2003 Roland McGrath <roland@redhat.com> 4.5.1-1
283- new upstream version, more fixes (#108012, #105366, #105359, #105358)
284
285* Tue Sep 30 2003 Roland McGrath <roland@redhat.com> 4.5-3
286- revert bogus s390 fix
287
288* Thu Sep 25 2003 Roland McGrath <roland@redhat.com> 4.5-1.2.1AS
289- rebuilt for 2.1AS erratum
290
291* Wed Sep 24 2003 Roland McGrath <roland@redhat.com> 4.5-2
292- rebuilt
293
294* Wed Sep 24 2003 Roland McGrath <roland@redhat.com> 4.5-1
295- new upstream version, more fixes (#101499, #104365)
296
297* Thu Jul 17 2003 Roland McGrath <roland@redhat.com> 4.4.99-2
298- rebuilt
299
300* Thu Jul 17 2003 Roland McGrath <roland@redhat.com> 4.4.99-1
301- new upstream version, groks more new system calls, PF_INET6 sockets
302
303* Mon Jun 10 2003 Roland McGrath <roland@redhat.com> 4.4.98-1
304- new upstream version, more fixes (#90754, #91085)
305
306* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
307- rebuilt
308
309* Sun Mar 30 2003 Roland McGrath <roland@redhat.com> 4.4.96-1
310- new upstream version, handles yet more 2.5 syscalls, x86_64 & ia64 fixes
311
312* Mon Feb 24 2003 Elliot Lee <sopwith@redhat.com> 4.4.95-2
313- rebuilt
314
315* Mon Feb 24 2003 Roland McGrath <roland@redhat.com> 4.4.95-1
316- new upstream version, fixed getresuid/getresgid (#84959)
317
318* Wed Feb 19 2003 Roland McGrath <roland@redhat.com> 4.4.94-1
319- new upstream version, new option -E to set environment variables (#82392)
320
321* Wed Jan 22 2003 Tim Powers <timp@redhat.com> 4.4.93-2
322- rebuilt
323
324* Tue Jan 21 2003 Roland McGrath <roland@redhat.com> 4.4.93-1
325- new upstream version, fixes ppc and s390 bugs, adds missing ptrace requests
326
327* Fri Jan 10 2003 Roland McGrath <roland@redhat.com> 4.4.91-1
328- new upstream version, fixes -f on x86-64
329
330* Fri Jan 10 2003 Roland McGrath <roland@redhat.com> 4.4.90-1
331- new upstream version, fixes all known bugs modulo ia64 and s390 issues
332
333* Fri Jan 03 2003 Florian La Roche <Florian.LaRoche@redhat.de> 4.4-11
334- add further s390 patch from IBM
335
336* Wed Nov 27 2002 Tim Powers <timp@redhat.com> 4.4-10
337- remove unpackaged files from the buildroot
338
339* Mon Oct 07 2002 Phil Knirsch <pknirsch@redhat.com> 4.4-9.1
340- Added latest s390(x) patch.
341
342* Fri Sep 06 2002 Karsten Hopp <karsten@redhat.de> 4.4-9
343- preliminary x86_64 support with an ugly patch to help
344  debugging. Needs cleanup!
345
346* Mon Sep  2 2002 Jakub Jelinek <jakub@redhat.com> 4.4-8
347- newer version of the clone fixing patch (Roland McGrath)
348- aio syscalls for i386/ia64/ppc (Ben LaHaise)
349
350* Wed Aug 28 2002 Jakub Jelinek <jakub@redhat.com> 4.4-7
351- fix strace -f (Roland McGrath, #68994)
352- handle ?et_thread_area, SA_RESTORER (Ulrich Drepper)
353
354* Fri Jun 21 2002 Jakub Jelinek <jakub@redhat.com> 4.4-6
355- handle futexes, *xattr, sendfile64, etc. (Ulrich Drepper)
356- handle modify_ldt (#66894)
357
358* Thu May 23 2002 Tim Powers <timp@redhat.com>
359- automated rebuild
360
361* Tue Apr 16 2002 Jakub Jelinek <jakub@redhat.com> 4.4-4
362- fix for the last patch by Jeff Law (#62591)
363
364* Mon Mar  4 2002 Preston Brown <pbrown@redhat.com> 4.4-3
365- integrate patch from Jeff Law to eliminate hang tracing threads
366
367* Sat Feb 23 2002 Florian La Roche <Florian.LaRoche@redhat.de>
368- minor update from debian tar-ball
369
370* Wed Jan 02 2002 Florian La Roche <Florian.LaRoche@redhat.de>
371- update to 4.4
372
373* Sun Jul 22 2001 Florian La Roche <Florian.LaRoche@redhat.de>
374- disable s390 patches, they are already included
375
376* Wed Jul 18 2001 Preston Brown <pbrown@redhat.com> 4.3-1
377- new upstream version.  Seems to have integrated most new syscalls
378- tracing threaded programs is now functional.
379
380* Mon Jun 11 2001 Than Ngo <than@redhat.com>
381- port s390 patches from IBM
382
383* Wed May 16 2001 Nalin Dahyabhai <nalin@redhat.com>
384- modify new syscall patch to allocate enough heap space in setgroups32()
385
386* Wed Feb 14 2001 Jakub Jelinek <jakub@redhat.com>
387- #include <time.h> in addition to <sys/time.h>
388
389* Fri Jan 26 2001 Karsten Hopp <karsten@redhat.com>
390- clean up conflicting patches. This happened only
391  when building on S390
392
393* Fri Jan 19 2001 Bill Nottingham <notting@redhat.com>
394- update to CVS, reintegrate ia64 support
395
396* Sat Dec  8 2000 Bernhard Rosenkraenzer <bero@redhat.com>
397- Get S/390 support into the normal package
398
399* Sat Nov 18 2000 Florian La Roche <Florian.LaRoche@redhat.de>
400- added S/390 patch from IBM, adapting it to not conflict with
401  IA64 patch
402
403* Sat Aug 19 2000 Jakub Jelinek <jakub@redhat.com>
404- doh, actually apply the 2.4 syscalls patch
405- make it compile with 2.4.0-test7-pre4+ headers, add
406  getdents64 and fcntl64
407
408* Thu Aug  3 2000 Jakub Jelinek <jakub@redhat.com>
409- add a bunch of new 2.4 syscalls (#14036)
410
411* Wed Jul 12 2000 Prospector <bugzilla@redhat.com>
412- automatic rebuild
413- excludearch ia64
414
415* Fri Jun  2 2000 Matt Wilson <msw@redhat.com>
416- use buildinstall for FHS
417
418* Wed May 24 2000 Jakub Jelinek <jakub@redhat.com>
419- make things compile on sparc
420- fix sigreturn on sparc
421
422* Fri Mar 31 2000 Bill Nottingham <notting@redhat.com>
423- fix stat64 misdef (#10485)
424
425* Tue Mar 21 2000 Michael K. Johnson <johnsonm@redhat.com>
426- added ia64 patch
427
428* Thu Feb 03 2000 Cristian Gafton <gafton@redhat.com>
429- man pages are compressed
430- version 4.2 (why are we keeping all these patches around?)
431
432* Sat Nov 27 1999 Jeff Johnson <jbj@redhat.com>
433- update to 4.1 (with sparc socketcall patch).
434
435* Fri Nov 12 1999 Jakub Jelinek <jakub@redhat.com>
436- fix socketcall on sparc.
437
438* Thu Sep 02 1999 Cristian Gafton <gafton@redhat.com>
439- fix KERN_SECURELVL compile problem
440
441* Tue Aug 31 1999 Cristian Gafton <gafton@redhat.com>
442- added alpha patch from HJLu to fix the osf_sigprocmask interpretation
443
444* Sat Jun 12 1999 Jeff Johnson <jbj@redhat.com>
445- update to 3.99.1.
446
447* Wed Jun  2 1999 Jeff Johnson <jbj@redhat.com>
448- add (the other :-) jj's sparc patch.
449
450* Wed May 26 1999 Jeff Johnson <jbj@redhat.com>
451- upgrade to 3.99 in order to
452-    add new 2.2.x open flags (#2955).
453-    add new 2.2.x syscalls (#2866).
454- strace 3.1 patches carried along for now.
455
456* Sun May 16 1999 Jeff Johnson <jbj@redhat.com>
457- don't rely on (broken!) rpm %%patch (#2735)
458
459* Tue Apr 06 1999 Preston Brown <pbrown@redhat.com>
460- strip binary
461
462* Sun Mar 21 1999 Cristian Gafton <gafton@redhat.com>
463- auto rebuild in the new build environment (release 16)
464
465* Tue Feb  9 1999 Jeff Johnson <jbj@redhat.com>
466- vfork est arrive!
467
468* Tue Feb  9 1999 Christopher Blizzard <blizzard@redhat.com>
469- Add patch to follow clone() syscalls, too.
470
471* Sun Jan 17 1999 Jeff Johnson <jbj@redhat.com>
472- patch to build alpha/sparc with glibc 2.1.
473
474* Thu Dec 03 1998 Cristian Gafton <gafton@redhat.com>
475- patch to build on ARM
476
477* Wed Sep 30 1998 Jeff Johnson <jbj@redhat.com>
478- fix typo (printf, not tprintf).
479
480* Sat Sep 19 1998 Jeff Johnson <jbj@redhat.com>
481- fix compile problem on sparc.
482
483* Tue Aug 18 1998 Cristian Gafton <gafton@redhat.com>
484- buildroot
485
486* Mon Jul 20 1998 Cristian Gafton <gafton@redhat.com>
487- added the umoven patch from James Youngman <jay@gnu.org>
488- fixed build problems on newer glibc releases
489
490* Mon Jun 08 1998 Prospector System <bugs@redhat.com>
491- translations modified for de, fr, tr
492