Blob Blame History Raw
%{?scl:%{?scl_package:%scl_package strace}}

Summary: Tracks and displays system calls associated with a running process
Name: %{?scl_prefix}strace
Version: 5.1
Release: 7%{?dist}
# The test suite is GPLv2+, all the rest is LGPLv2.1+.
License: LGPL-2.1+ and GPL-2.0+
Group: Development/Debuggers
URL: https://strace.io
Source: https://strace.io/files/%{version}/strace-%{version}.tar.xz

%define alternatives_cmd %{!?scl:%{_sbindir}}%{?scl:%{_root_sbindir}}/alternatives
%define alternatives_cmdline %{alternatives_cmd}%{?scl: --altdir %{_sysconfdir}/alternatives --admindir %{_scl_root}/var/lib/alternatives}

BuildRequires: libacl-devel, time
%{?scl:Requires:%scl_runtime}

BuildRequires: gcc gzip

# Install Bluetooth headers for AF_BLUETOOTH sockets decoding.
%if 0%{?fedora} >= 18 || 0%{?centos} >= 6 || 0%{?rhel} >= 6 || 0%{?suse_version} >= 1200
BuildRequires: pkgconfig(bluez)
%endif

BuildRequires: %{?scl_prefix}elfutils-devel, %{?scl_prefix}binutils-devel
%{?!buildroot:BuildRoot: %_tmppath/buildroot-%name-%version-%release}

# OBS compatibility
%{?!buildroot:BuildRoot: %_tmppath/buildroot-%name-%version-%release}
%define maybe_use_defattr %{?suse_version:%%defattr(-,root,root)}

## Reported by covscan
# v5.2-3-g7ada13f "evdev: avoid bit vector decoding on non-successful and 0 return codes"
Patch30: 0030-evdev-avoid-bit-vector-decoding-on-non-successful-an.patch
# v5.2-4-g96194ed "evdev: fix array size calculation in decode_bitset_"
Patch31: 0031-evdev-fix-array-size-calculation-in-decode_bitset_.patch

## Test for patches "evdev: avoid bit vector decoding on non-successful and 0
## return codes" and "evdev: fix array size calculation in decode_bitset_"
# v5.2-5-gcdd8206 "tests: test evdev bitset decoding more thoroughly"
Patch33: 0033-tests-test-evdev-bitset-decoding-more-thoroughly.patch

## Reported by covscan (https://bugzilla.redhat.com/1747524
## https://bugzilla.redhat.com/1747526 https://bugzilla.redhat.com/1747530)
# v5.2-84-g91281fec "v4l2: avoid shifting left a signed number by 31 bit"
Patch35: 0035-v4l2-avoid-shifting-left-a-signed-number-by-31-bit.patch
# v5.2~21 "syscall.c: avoid infinite loop in subcalls parsing"
Patch36: 0036-syscall.c-avoid-infinite-loop-in-subcalls-parsing.patch
# v5.2~19 "kvm: avoid bogus vcpu_info assignment in vcpu_register"
Patch37: 0037-kvm-avoid-bogus-vcpu_info-assignment-in-vcpu_registe.patch
# v5.4~97 "xlat: use unsgined type for mount_flags fallback values"
Patch38: 0038-xlat-use-unsgined-type-for-mount_flags-fallback-valu.patch

## Missing stack traces on attach (https://bugzilla.redhat.com/1788636)
## RHEL 7: https://bugzilla.redhat.com/1790052
## RHEL 8: https://bugzilla.redhat.com/1790053
## RHEL 6 DTS: https://bugzilla.redhat.com/1790058
## RHEL 7 DTS: https://bugzilla.redhat.com/1790057
## RHEL 8 DTS: https://bugzilla.redhat.com/1790054
# v5.4-18-g69b2c33 "unwind-libdw: fix initialization of libdwfl cache"
Patch39: 0039-unwind-libdw-fix-initialization-of-libdwfl-cache.patch
# v5.4-27-g35e080a "syscall: do not capture stack trace while the tracee executes strace code"
Patch40: 0040-syscall-do-not-capture-stack-trace-while-the-tracee-.patch
# v5.4-63-g8e515c7 "tests: add strace-k-p test"
Patch41: 0041-tests-add-strace-k-p-test.patch

## https://bugzilla.redhat.com/1746885
# v5.2-92-gc108f0b "sockaddr: properly decode sockaddr_hci addresses without hci_channel"
Patch42: 0042-sockaddr-properly-decode-sockaddr_hci-addresses-with.patch

## Some ipc tests from strace internal testsuite occasionally fail
## https://bugzilla.redhat.com/1795251 https://bugzilla.redhat.com/1795261
## https://bugzilla.redhat.com/1794490 https://bugzilla.redhat.com/1795273
# v5.3~102 "tests: fix expected output for some ipc tests"
Patch43: 0043-tests-fix-expected-output-for-some-ipc-tests.patch
# v5.4~49 "tests: fix -a argument in ipc_msgbuf-Xraw test"
Patch44: 0044-tests-fix-a-argument-in-ipc_msgbuf-Xraw-test.patch

## "some devtoolset-9-strace internal tests fail on rhel-alt-7.6"
## https://bugzilla.redhat.com/1758201
# v5.4~102 "xlat: provide fallback definitions for UFFD_FEATURE_* constants"
Patch53: 0053-xlat-provide-fallback-definitions-for-UFFD_FEATURE_-.patch
# v5.4~101 "xlat: provide fallback definitions for netlink_ack_flags constants"
Patch54: 0054-xlat-provide-fallback-definitions-for-netlink_ack_fl.patch
# v5.4~100 "xlat: provide fallback definitions for XDP_FLAGS_* constants"
Patch55: 0055-xlat-provide-fallback-definitions-for-XDP_FLAGS_-con.patch
# v5.4~99 "xlat: update MDB_FLAGS_* constants"
Patch56: 0056-xlat-update-MDB_FLAGS_-constants.patch
# v5.4~98 "rtnl_rule: decode fib_rule_uid_range without use of <linux/fib_rules.h>"
Patch57: 0057-rtnl_rule-decode-fib_rule_uid_range-without-use-of-l.patch
# v5.4~95 "xlat: provide fallback definitions for ABS_MT_* constants"
Patch58: 0058-xlat-provide-fallback-definitions-for-ABS_MT_-consta.patch
# v5.4~94 "tests: introduce TEST_NLATTR_OBJECT_MINSZ"
Patch59: 0059-tests-introduce-TEST_NLATTR_OBJECT_MINSZ.patch
# v5.4~93 "evdev: remove additional indentation level for switch case labels"
Patch60: 0060-evdev-remove-additional-indentation-level-for-switch.patch
# v5.4~92 "macros.h: include <stddef.h>"
Patch61: 0061-macros.h-include-stddef.h.patch
# v5.4~91 "Enable building of netlink_crypto decoder without linux/cryptouser.h"
Patch62: 0062-Enable-building-of-netlink_crypto-decoder-without-li.patch
# v5.4~90 "rtnl_link: use internal rtnl_link_stats* and ifla_port_vsi definitions"
Patch63: 0063-rtnl_link-use-internal-rtnl_link_stats-and-ifla_port.patch
# v5.4~89 "rtnl_link: print pad field in the struct ifla_port_vsi decoder"
Patch64: 0064-rtnl_link-print-pad-field-in-the-struct-ifla_port_vs.patch
# v5.4~88 "rtnl_mdb: decode messages regardless of availability of kernel headers"
Patch65: 0065-rtnl_mdb-decode-messages-regardless-of-availability-.patch
# v5.4~87 "rtnl_neightbl: always decode struct ndt_config and struct ndt_stats"
Patch66: 0066-rtnl_neightbl-always-decode-struct-ndt_config-and-st.patch
# v5.4~86 "rtnl_route: decode struct rta_mfc_stats and struct rtvia unconditionally"
Patch67: 0067-rtnl_route-decode-struct-rta_mfc_stats-and-struct-rt.patch
# v5.4~76 "evdev: do not rely on EVIOC* constants provided in <linux/input.h>"
Patch68: 0068-evdev-do-not-rely-on-EVIOC-constants-provided-in-lin.patch
# v5.4~83 "xlat: update v4l2_format_description_flags"
Patch69: 0069-xlat-update-v4l2_format_description_flags.patch
# v5.4~75 "evdev: decode struct input_absinfo regardless of in-kernel definitions"
Patch70: 0070-evdev-decode-struct-input_absinfo-regardless-of-in-k.patch
# v5.4~74 "xlat: provide fallback definitions for V4L2_CAP_* constants"
Patch71: 0071-xlat-provide-fallback-definitions-for-V4L2_CAP_-cons.patch
# v5.4~73 "xlat: update V4L2_BUF_TYPE_* constants"
Patch72: 0072-xlat-update-V4L2_BUF_TYPE_-constants.patch
# v5.4~72 "xlat: Provide fallback definitions for V4L2_FIELD_* constants"
Patch73: 0073-xlat-Provide-fallback-definitions-for-V4L2_FIELD_-co.patch
# v5.4~71 "xlat: update V4L2_COLORSPACE_* constants"
Patch74: 0074-xlat-update-V4L2_COLORSPACE_-constants.patch
# v5.4~70 "xlat: update V4L2_CTRL_TYPE_* constants"
Patch75: 0075-xlat-update-V4L2_CTRL_TYPE_-constants.patch
# v5.4-84-g841f2a4 "xlat: provide values to ptrace_cmds"
Patch76: 0076-xlat-provide-values-to-ptrace_cmds.patch
# v5.4-42-gca83c22 "macros.h: introduce sizeof_field macro"
Patch77: 0077-macros.h-introduce-sizeof_field-macro.patch
# Not yet upstreamed patches
Patch78: 0078-v4l2-improve-buffer-flag-decoding.patch
Patch79: 0079-v4l2-add-shorthand-macros-for-v4l2-type-checks.patch
Patch80: 0080-v4l2-bundle-struct-v4l2_create_buffers-definition.patch
Patch81: 0081-v4l2-provide-struct-v4l2_capability-definition.patch
Patch82: 0082-v4l2-bundle-struct-v4l2_format-and-related-types.patch
Patch83: 0083-v4l2-decode-v4l2_vbi_flags-as-flags.patch
Patch84: 0084-v4l2-always-decode-VIDIOC_-_EXT_CTRLS-ioctl-commands.patch
Patch85: 0085-v4l2-decode-frame-intervals-sizes-unconditionally.patch
Patch86: 0086-v4l2-provide-V4L2_CTRL_FLAG_NEXT_CTRL-in-an-xlat.patch

## RHEL7-only: headers on some builders do not provide O_TMPFILE
Patch200: 0200-strace-provide-O_TMPFILE-fallback-definition.patch
## RHEL-only: aarch64 brew builders are extremely slow on qual_fault.test
Patch201: 0201-limit-qual_fault-scope-on-aarch64.patch


%description
The strace program intercepts and records the system calls called and
received by a running process.  Strace can print a record of each
system call, its arguments and its return value.  Strace is useful for
diagnosing problems and debugging, as well as for instructional
purposes.

Install strace if you need a tool to track the system calls made and
received by a process.

%prep
%setup -q -n strace-%{version}

%patch30 -p1
%patch31 -p1
%patch33 -p1
%patch35 -p1
%patch36 -p1
%patch37 -p1
%patch38 -p1
%patch39 -p1
%patch40 -p1
%patch41 -p1
%patch42 -p1
%patch43 -p1
%patch44 -p1
%patch53 -p1
%patch54 -p1
%patch55 -p1
%patch56 -p1
%patch57 -p1
%patch58 -p1
%patch59 -p1
%patch60 -p1
%patch61 -p1
%patch62 -p1
%patch63 -p1
%patch64 -p1
%patch65 -p1
%patch66 -p1
%patch67 -p1
%patch68 -p1
%patch69 -p1
%patch70 -p1
%patch71 -p1
%patch72 -p1
%patch73 -p1
%patch74 -p1
%patch75 -p1
%patch76 -p1
%patch77 -p1
%patch78 -p1
%patch79 -p1
%patch80 -p1
%patch81 -p1
%patch82 -p1
%patch83 -p1
%patch84 -p1
%patch85 -p1
%patch86 -p1

%patch200 -p1
%patch201 -p1

echo -n %version-%release > .tarball-version
echo -n 2019 > .year
echo -n 2019-06-13 > .strace.1.in.date

%build
echo 'BEGIN OF BUILD ENVIRONMENT INFORMATION'
uname -a |head -1
libc="$(ldd /bin/sh |sed -n 's|^[^/]*\(/[^ ]*/libc\.so[^ ]*\).*|\1|p' |head -1)"
$libc |head -1
file -L /bin/sh
gcc --version |head -1
ld --version |head -1
kver="$(printf '%%s\n%%s\n' '#include <linux/version.h>' 'LINUX_VERSION_CODE' | gcc -E -P -)"
printf 'kernel-headers %%s.%%s.%%s\n' $(($kver/65536)) $(($kver/256%%256)) $(($kver%%256))
echo 'END OF BUILD ENVIRONMENT INFORMATION'

LDFLAGS="$RPM_LD_FLAGS -L%{_libdir} -L%{_libdir}/elfutils"
export LDLFAGS

# -DHAVE_S390_COMPAT_REGS is needed due to lack of v3.10-rc1~201^2~11
CFLAGS=" $RPM_OPT_FLAGS $LDFLAGS "
# Removing explicit -m64 as it breaks mpers
[ "x${CFLAGS#* -m64 }" = "x${CFLAGS}" ] || CFLAGS=$(echo "$CFLAGS" | sed 's/ -m64 / /g')
export CFLAGS

CPPFLAGS=" -I%{_includedir} %{optflags} "
# Removing explicit -m64 as it breaks mpers
[ "x${CPPFLAGS#* -m64 }" = "x${CPPFLAGS}" ] || CPPFLAGS=$(echo "$CPPFLAGS" | sed 's/ -m64 / /g')
export CPPFLAGS

CFLAGS_FOR_BUILD="$RPM_OPT_FLAGS"; export CFLAGS_FOR_BUILD
# ac_cv_member_struct_perf_event_attr_context_switch=no is due to
# https://bugzilla.redhat.com/show_bug.cgi?id=1404539
%configure --enable-mpers=check ac_cv_member_struct_perf_event_attr_context_switch=no
make %{?_smp_mflags}

%install
make DESTDIR=%{buildroot} install

# remove unpackaged files from the buildroot
rm -f %{buildroot}%{_bindir}/strace-graph

# some say uncompressed changelog files are too big
for f in ChangeLog ChangeLog-CVS; do
	gzip -9n < "$f" > "$f".gz &
done
wait

%check
# This is needed since patch does not set x bit to the newly created files
chmod u+x tests/*.test tests-m32/*.test tests-mx32/*.test

%{buildroot}%{_bindir}/strace -V


# Skip tests on s390x el6 kernel, test failures there are covered
# by the following issues:
#  * https://bugzilla.redhat.com/show_bug.cgi?id=1220802#c6
#  * Absence of Linux commit v3.2-rc1~109^2~34
uname_r="$(uname -r)"
if [ "x${uname_r#2.6.32}" != "x${uname_r}" ] && \
   [ "x${uname_r%s390x}" != "x${uname_r}" ]
then
	echo "Skipping tests, kernel (${uname_r}) is too broken"
else
	# We have to limit concurrent execution of tests as some time-sensitive
	# tests start to fail if the reported time is way too off
	# from the expected one.
	make -j2 -k check VERBOSE=1 V=1 TIMEOUT_DURATION=5400
	echo 'BEGIN OF TEST SUITE INFORMATION'
	tail -n 99999 -- tests*/test-suite.log tests*/ksysent.log
	find tests* -type f -name '*.log' -print0 |
		xargs -r0 grep -H '^KERNEL BUG:' -- ||:
	echo 'END OF TEST SUITE INFORMATION'
fi


%files
%maybe_use_defattr
%doc CREDITS ChangeLog.gz ChangeLog-CVS.gz COPYING LGPL-2.1-or-later NEWS README
%{_bindir}/strace
%{_bindir}/strace-log-merge
%{_mandir}/man1/*

%changelog
* Mon Jan 27 2020 Eugene Syromiatnikov <esyr@redhat.com> - 5.1-7
- Do not depend on kernel headers for decoding (#1758201).

* Mon Jan 27 2020 Eugene Syromiatnikov <esyr@redhat.com> - 5.1-6
- Fix expected alignment for IPC tests (#1795273):
  4377e3a1 "tests: fix expected output for some ipc tests", and
  a75c7c4b "tests: fix -a argument in ipc_msgbuf-Xraw test".

* Mon Jan 27 2020 Eugene Syromiatnikov <esyr@redhat.com> - 5.1-5
- Fix printing stack traces for early syscalls on process attach (#1790057):
  69b2c33a "unwind-libdw: fix initialization of libdwfl cache",
  35e080ae "syscall: do not capture stack trace while the tracee executes
           strace code", and
  8e515c74 "tests: add strace-k-p test".
- Add commit v5.4~97 "xlat: use unsgined type for mount_flags fallback values"

* Fri Aug 30 2019 Eugene Syromiatnikov <esyr@redhat.com> - 5.1-4
- Properly decode struct sockaddr_hci without hci_channel field.
- Include upstream patches that fix issues reported by covscan:
  91281fec "v4l2: avoid shifting left a signed number by 31 bit",
  522ad3a0 "syscall.c: avoid infinite loop in subcalls parsing", and
  9446038e "kvm: avoid bogus vcpu_info assignment in vcpu_register".

* Thu Aug 29 2019 Eugene Syromiatnikov <esyr@redhat.com> - 5.1-3
- Build with Bluetooth headers.
- Resolves: #1746885

* Thu Aug 29 2019 Eugene Syromiatnikov <esyr@redhat.com> - 5.1-2
- Copy over changes in tests/ioctl_evdev-success.c (from cdd8206a
  "tests: test evdev bitset decoding more thoroughly")
  to tests-m32/ioctl_evdev-success.c and tests-mx32/ioctl_evdev-success.c
- Resolves: #1746478

* Mon Jul 22 2019 Eugene Syromiatnikov <esyr@redhat.com> - 5.1-1
- Rebase to v5.1; drop upstream patches on top of 4.24.
- Add upstream commits 7ada13f3 ("evdev: avoid bit vector decoding
  on non-successful and 0 return codes"), 96194ed7 ("evdev: fix array size
  calculation in decode_bitset_"), and cdd8206a ("tests: test evdev bitset
  decoding more thoroughly") as separate patches.
- Resolves: #1666405.

* Tue Jan 15 2019 Eugene Syromiatnikov <esyr@redhat.com> - 4.24-5
- Fix off-by-one errors in indexed xlat handling.
- Remove bogus indexed xlat warning.
- Resolves #1666405.

* Wed Sep 12 2018 Eugene Syromiatnikov <esyr@redhat.com> - 4.24-4
- Add current version of the thread handling unfairness fix.
- Resolves #1610774.

* Thu Aug 23 2018 Eugene Syromiatnikov <esyr@redhat.com> - 4.24-3
- Provide a fallback definition for the O_TMPFILE flag.
- Resolves #1609741.

* Tue Aug 14 2018 Eugene Syromiatnikov <esyr@redhat.com> - 4.24-2
- Remove -DHAVE_S390_COMPAT_REGS=1 from CFLAGS.

* Tue Aug 14 2018 Eugene Syromiatnikov <esyr@redhat.com> - 4.24-1
- Rebase to v4.24.

* Mon Aug 06 2018 Eugene Syromiatnikov <esyr@redhat.com> - 4.23-5
- Provide open mode flags fallback definitions.
- Resolves #1609741.

* Sun Aug 05 2018 Eugene Syromiatnikov <esyr@redhat.com> - 4.23-4
- Enable stack unwinding using DTS version of libelfutils.

* Wed Jul 18 2018 Eugene Syromiatnikov <esyr@redhat.com> - 4.23-3
- Add SCL-specific modifications in order to build for DTS 8.0.
- Resolves #1602841.

* Mon Jun 18 2018 Eugene Syromiatnikov <esyr@redhat.com> - 4.23-2
- Increase test timeout duration.

* Thu Jun 14 2018 Dmitry V. Levin <ldv@altlinux.org> - 4.23-1
- v4.22 -> v4.23.
- Enabled libdw backend for -k option (#1568647).

* Thu Apr 05 2018 Dmitry V. Levin <ldv@altlinux.org> - 4.22-1
- v4.21 -> v4.22.

* Tue Feb 13 2018 Dmitry V. Levin <ldv@altlinux.org> - 4.21-1
- v4.20 -> v4.21.

* Mon Nov 13 2017 Dmitry V. Levin <ldv@altlinux.org> - 4.20-1
- v4.19 -> v4.20.

* Tue Sep 05 2017 Dmitry V. Levin <ldv@altlinux.org> - 4.19-1
- v4.18 -> v4.19.

* Wed Jul 05 2017 Dmitry V. Levin <ldv@altlinux.org> - 4.18-1
- v4.17 -> v4.18.

* Wed May 24 2017 Dmitry V. Levin <ldv@altlinux.org> - 4.17-1
- v4.16 -> v4.17.

* Tue Feb 14 2017 Dmitry V. Levin <ldv@altlinux.org> - 4.16-1
- v4.15 -> v4.16.

* Wed Dec 14 2016 Dmitry V. Levin <ldv@altlinux.org> - 4.15-1
- v4.14-100-g622af42 -> v4.15.

* Wed Nov 16 2016 Dmitry V. Levin <ldv@altlinux.org> - 4.14.0.100.622a-1
- v4.14 -> v4.14-100-g622af42:
  + implemented syscall fault injection.

* Tue Oct 04 2016 Dmitry V. Levin <ldv@altlinux.org> - 4.14-1
- v4.13 -> v4.14:
  + added printing of the mode argument of open and openat syscalls
    when O_TMPFILE flag is set (#1377846).

* Tue Jul 26 2016 Dmitry V. Levin <ldv@altlinux.org> - 4.13-1
- v4.12 -> v4.13.

* Tue May 31 2016 Dmitry V. Levin <ldv@altlinux.org> - 4.12-1
- v4.11-163-g972018f -> v4.12.

* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 4.11.0.163.9720-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Fri Jan 15 2016 Dmitry V. Levin <ldv@altlinux.org> - 4.11.0.163.9720-1
- New upstream snapshot v4.11-163-g972018f:
  + fixed decoding of syscalls unknown to the kernel on s390/s390x (#1298294).

* Wed Dec 23 2015 Dmitry V. Levin <ldv@altlinux.org> - 4.11-2
- Enabled experimental -k option on x86_64 (#1170296).

* Mon Dec 21 2015 Dmitry V. Levin <ldv@altlinux.org> - 4.11-1
- New upstream release:
  + print nanoseconds along with seconds in stat family syscalls (#1251176).

* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.10-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Mon May 11 2015 Marcin Juszkiewicz <mjuszkiewicz@redhat.com> - 4.10-2
- Backport set of upstream patches to get it buildable on AArch64

* Fri Mar 06 2015 Dmitry V. Levin <ldv@altlinux.org> - 4.10-1
- New upstream release:
  + enhanced ioctl decoding (#902788).

* Mon Nov 03 2014 Lubomir Rintel <lkundrak@v3.sk> - 4.9-3
- Regenerate ioctl entries with proper kernel headers

* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild

* Fri Aug 15 2014 Dmitry V. Levin <ldv@altlinux.org> - 4.9-1
- New upstream release:
  + fixed build when <sys/ptrace.h> and <linux/ptrace.h> conflict (#993384);
  + updated CLOCK_* constants (#1088455);
  + enabled ppc64le support (#1122323);
  + fixed attach to a process on ppc64le (#1129569).

* Fri Jul 25 2014 Dan HorĂ¡k <dan[at]danny.cz> - 4.8-5
- update for ppc64

* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.8-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Fri Dec  6 2013 Peter Robinson <pbrobinson@fedoraproject.org> 4.8-3
- Fix FTBFS

* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild

* Mon Jun 03 2013 Dmitry V. Levin <ldv@altlinux.org> - 4.8-1
- New upstream release:
  + fixed ERESTARTNOINTR leaking to userspace on ancient kernels (#659382);
  + fixed decoding of *xattr syscalls (#885233);
  + fixed handling of files with 64-bit inode numbers by 32-bit strace (#912790);
  + added aarch64 support (#969858).

* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.7-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild

* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild

* Wed May 02 2012 Dmitry V. Levin <ldv@altlinux.org> 4.7-1
- New upstream release.
  + implemented proper handling of real SIGTRAPs (#162774).

* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild

* Mon Mar 14 2011 Dmitry V. Levin <ldv@altlinux.org> - 4.6-1
- New upstream release.
  + fixed a corner case in waitpid handling (#663547).

* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.5.20-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Tue Apr 13 2010 Roland McGrath <roland@redhat.com> - 4.5.20-1
- New upstream release, work mostly by Andreas Schwab and Dmitry V. Levin.
  + fixed potential stack buffer overflow in select decoder (#556678);
  + fixed FTBFS (#539044).

* Wed Oct 21 2009 Roland McGrath <roland@redhat.com> - 4.5.19-1
- New upstream release, work mostly by Dmitry V. Levin <ldv@altlinux.org>
  + exit/kill strace with traced process exitcode/signal (#105371);
  + fixed build on ARM EABI (#507576);
  + fixed display of 32-bit argv array on 64-bit architectures (#519480);
  + fixed display of 32-bit fcntl(F_SETLK) on 64-bit architectures (#471169);
  + fixed several bugs in strings decoder, including potential heap
    memory corruption (#470529, #478324, #511035).

* Thu Aug 28 2008 Roland McGrath <roland@redhat.com> - 4.5.18-1
- build fix for newer kernel headers (#457291)
- fix CLONE_VFORK handling (#455078)
- Support new Linux/PPC system call subpage_prot and PROT_SAO flag.
- In sigaction system call, display sa_flags value along with SIG_DFL/SIG_IGN.

* Mon Jul 21 2008 Roland McGrath <roland@redhat.com> - 4.5.17-1
- handle O_CLOEXEC, MSG_CMSG_CLOEXEC (#365781)
- fix biarch stat64 decoding (#222275)
- fix spurious "..." in printing of environment strings (#358241)
- improve prctl decoding (#364401)
- fix hang wait on exited child with exited child (#354261)
- fix biarch fork/vfork (-f) tracing (#447475)
- fix biarch printing of negative argument kill (#430585)
- fix biarch decoding of error return values (#447587)
- fix -f tracing of CLONE_VFORK (#455078)
- fix ia64 register clobberation in -f tracing (#453438)
- print SO_NODEFER, SA_RESETHAND instead of SA_NOMASK, SA_ONESHOT (#455821)
- fix futex argument decoding (#448628, #448629)

* Fri Aug  3 2007 Roland McGrath <roland@redhat.com> - 4.5.16-1
- fix multithread issues (#240962, #240961, #247907)
- fix spurious SIGSTOP on early interrupt (#240986)
- fix utime for biarch (#247185)
- fix -u error message (#247170)
- better futex syscall printing (##241467)
- fix argv/envp printing with small -s settings, and for biarch
- new syscalls: getcpu, eventfd, timerfd, signalfd, epoll_pwait,
  move_pages, utimensat

* Tue Jan 16 2007 Roland McGrath <roland@redhat.com> - 4.5.15-1
- biarch fixes (#179740, #192193, #171626, #173050, #218433, #218043)
- fix -ff -o behavior (#204950, #218435, #193808, #219423)
- better quotactl printing (#118696)
- *at, inotify*, pselect6, ppoll and unshare syscalls (#178633, #191275)
- glibc-2.5 build fixes (#209856)
- memory corruption fixes (#200621
- fix race in child setup under -f (#180293)
- show ipc key values in hex (#198179, #192182)
- disallow -c with -ff (#187847)
- Resolves: RHBZ #179740, RHBZ #192193, RHBZ #204950, RHBZ #218435
- Resolves: RHBZ #193808, RHBZ #219423, RHBZ #171626, RHBZ #173050
- Resolves: RHBZ #218433, RHBZ #218043, RHBZ #118696, RHBZ #178633
- Resolves: RHBZ #191275, RHBZ #209856, RHBZ #200621, RHBZ #180293
- Resolves: RHBZ #198179, RHBZ #198182, RHBZ #187847

* Mon Nov 20 2006 Jakub Jelinek <jakub@redhat.com> - 4.5.14-4
- Fix ia64 syscall decoding (#206768)
- Fix build with glibc-2.4.90-33 and up on all arches but ia64
- Fix build against 2.6.18+ headers

* Tue Aug 22 2006 Roland McGrath <roland@redhat.com> - 4.5.14-3
- Fix bogus decoding of syscalls >= 300 (#201462, #202620).

* Fri Jul 14 2006 Jesse Keating <jkeating@redhat.com> - 4.5.14-2
- rebuild

* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 4.5.14-1.2
- bump again for long double bug on ppc{,64}

* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 4.5.14-1.1
- rebuilt for new gcc4.1 snapshot and glibc changes

* Mon Jan 16 2006 Roland McGrath <roland@redhat.com> - 4.5.14-1
- Fix biarch decoding of socket syscalls (#174354).
- Fix biarch -e support (#173986).
- Accept numeric syscalls in -e (#174798).
- Fix ipc syscall decoding (#164755).
- Improve msgrcv printing (#164757).
- Man page updates (#165375).
- Improve mount syscall printing (#165377).
- Correct printing of restarting syscalls (#165469).

* Wed Aug  3 2005 Roland McGrath <roland@redhat.com> - 4.5.13-1
- Fix setsockopt decoding on 64-bit (#162449).
- Fix typos in socket option name strings (#161578).
- Display more IPV6 socket options by name (#162450).
- Don't display inappropriate syscalls for -e trace=file (#159340).
- New selector type -e trace=desc for file-descriptor using calls (#159400).
- Fix 32-bit old_mmap syscall decoding on x86-64 (#162467, #164215).
- Fix errors detaching from multithreaded process on interrupt (#161919).
- Note 4.5.12 fix for crash handling bad signal numbers (#162739).

* Wed Jun  8 2005 Roland McGrath <roland@redhat.com> - 4.5.12-1
- Fix known syscall recognition for IA32 processes on x86-64 (#158934).
- Fix bad output for ptrace on x86-64 (#159787).
- Fix potential buffer overruns (#151570, #159196).
- Make some diagnostics more consistent (#159308).
- Update PowerPC system calls.
- Better printing for Linux aio system calls.
- Don't truncate statfs64 fields to 32 bits in output (#158243).
- Cosmetic code cleanups (#159688).

* Tue Mar 22 2005 Roland McGrath <roland@redhat.com> - 4.5.11-1
- Build tweaks.
- Note 4.5.10 select fix (#151570).

* Mon Mar 14 2005 Roland McGrath <roland@redhat.com> - 4.5.10-1
- Fix select handling on nonstandard fd_set sizes.
- Don't print errors for null file name pointers.
- Fix initial execve output with -i (#143365).

* Fri Feb  4 2005 Roland McGrath <roland@redhat.com> - 4.5.9-2
- update ia64 syscall list (#146245)
- fix x86_64 syscall argument extraction for 32-bit processes (#146093)
- fix -e signal=NAME parsing (#143362)
- fix x86_64 exit_group syscall handling
- improve socket ioctl printing (#138223)
- code cleanups (#143369, #143370)
- improve mount flags printing (#141932)
- support symbolic printing of x86_64 arch_prctl parameters (#142667)
- fix potential crash in getxattr printing

* Tue Oct 19 2004 Roland McGrath <roland@redhat.com> - 4.5.8-1
- fix multithreaded exit handling (#132150, #135254)
- fix ioctl name matching (#129808)
- print RTC_* ioctl structure contents (#58606)
- grok epoll_* syscalls (#134463)
- grok new RLIMIT_* values (#133594)
- print struct cmsghdr contents for sendmsg (#131689)
- fix clock_* and timer_* argument output (#131420)

* Tue Aug 31 2004 Roland McGrath <roland@redhat.com> - 4.5.7-2
- new upstream version, misc fixes and updates (#128091, #129166, #128391, #129378, #130965, #131177)

* Mon Jul 12 2004 Roland McGrath <roland@redhat.com> 4.5.6-1
- new upstream version, updates ioctl lists (#127398), fixes quotactl (#127393), more ioctl decoding (#126917)

* Sun Jun 27 2004 Roland McGrath <roland@redhat.com> 4.5.5-1
- new upstream version, fixes x86-64 biarch support (#126547)

* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com> 4.5.4-2
- rebuilt

* Thu Jun  3 2004 Roland McGrath <roland@redhat.com> 4.5.4-0.FC1
- rebuilt for FC1 update

* Thu Jun  3 2004 Roland McGrath <roland@redhat.com> 4.5.4-1
- new upstream version, more ioctls (#122257), minor fixes

* Fri Apr 16 2004 Roland McGrath <roland@redhat.com> 4.5.3-1
- new upstream version, mq_* calls (#120701), -p vs NPTL (#120462), more fixes (#118694, #120541, #118685)

* Tue Mar 02 2004 Elliot Lee <sopwith@redhat.com> 4.5.2-1.1
- rebuilt

* Mon Mar  1 2004 Roland McGrath <roland@redhat.com> 4.5.2-1
- new upstream version, sched_* calls (#116990), show core flag (#112117)

* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt

* Thu Nov 13 2003 Roland McGrath <roland@redhat.com> 4.5.1-1
- new upstream version, more fixes (#108012, #105366, #105359, #105358)

* Tue Sep 30 2003 Roland McGrath <roland@redhat.com> 4.5-3
- revert bogus s390 fix

* Thu Sep 25 2003 Roland McGrath <roland@redhat.com> 4.5-1.2.1AS
- rebuilt for 2.1AS erratum

* Wed Sep 24 2003 Roland McGrath <roland@redhat.com> 4.5-2
- rebuilt

* Wed Sep 24 2003 Roland McGrath <roland@redhat.com> 4.5-1
- new upstream version, more fixes (#101499, #104365)

* Thu Jul 17 2003 Roland McGrath <roland@redhat.com> 4.4.99-2
- rebuilt

* Thu Jul 17 2003 Roland McGrath <roland@redhat.com> 4.4.99-1
- new upstream version, groks more new system calls, PF_INET6 sockets

* Tue Jun 10 2003 Roland McGrath <roland@redhat.com> 4.4.98-1
- new upstream version, more fixes (#90754, #91085)

* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
- rebuilt

* Sun Mar 30 2003 Roland McGrath <roland@redhat.com> 4.4.96-1
- new upstream version, handles yet more 2.5 syscalls, x86_64 & ia64 fixes

* Mon Feb 24 2003 Elliot Lee <sopwith@redhat.com> 4.4.95-2
- rebuilt

* Mon Feb 24 2003 Roland McGrath <roland@redhat.com> 4.4.95-1
- new upstream version, fixed getresuid/getresgid (#84959)

* Wed Feb 19 2003 Roland McGrath <roland@redhat.com> 4.4.94-1
- new upstream version, new option -E to set environment variables (#82392)

* Wed Jan 22 2003 Tim Powers <timp@redhat.com> 4.4.93-2
- rebuilt

* Tue Jan 21 2003 Roland McGrath <roland@redhat.com> 4.4.93-1
- new upstream version, fixes ppc and s390 bugs, adds missing ptrace requests

* Fri Jan 10 2003 Roland McGrath <roland@redhat.com> 4.4.91-1
- new upstream version, fixes -f on x86-64

* Fri Jan 10 2003 Roland McGrath <roland@redhat.com> 4.4.90-1
- new upstream version, fixes all known bugs modulo ia64 and s390 issues

* Fri Jan 03 2003 Florian La Roche <Florian.LaRoche@redhat.de> 4.4-11
- add further s390 patch from IBM

* Wed Nov 27 2002 Tim Powers <timp@redhat.com> 4.4-10
- remove unpackaged files from the buildroot

* Mon Oct 07 2002 Phil Knirsch <pknirsch@redhat.com> 4.4-9.1
- Added latest s390(x) patch.

* Fri Sep 06 2002 Karsten Hopp <karsten@redhat.de> 4.4-9
- preliminary x86_64 support with an ugly patch to help
  debugging. Needs cleanup!

* Mon Sep  2 2002 Jakub Jelinek <jakub@redhat.com> 4.4-8
- newer version of the clone fixing patch (Roland McGrath)
- aio syscalls for i386/ia64/ppc (Ben LaHaise)

* Wed Aug 28 2002 Jakub Jelinek <jakub@redhat.com> 4.4-7
- fix strace -f (Roland McGrath, #68994)
- handle ?et_thread_area, SA_RESTORER (Ulrich Drepper)

* Fri Jun 21 2002 Jakub Jelinek <jakub@redhat.com> 4.4-6
- handle futexes, *xattr, sendfile64, etc. (Ulrich Drepper)
- handle modify_ldt (#66894)

* Thu May 23 2002 Tim Powers <timp@redhat.com>
- automated rebuild

* Tue Apr 16 2002 Jakub Jelinek <jakub@redhat.com> 4.4-4
- fix for the last patch by Jeff Law (#62591)

* Mon Mar  4 2002 Preston Brown <pbrown@redhat.com> 4.4-3
- integrate patch from Jeff Law to eliminate hang tracing threads

* Sat Feb 23 2002 Florian La Roche <Florian.LaRoche@redhat.de>
- minor update from debian tar-ball

* Wed Jan 02 2002 Florian La Roche <Florian.LaRoche@redhat.de>
- update to 4.4

* Sun Jul 22 2001 Florian La Roche <Florian.LaRoche@redhat.de>
- disable s390 patches, they are already included

* Wed Jul 18 2001 Preston Brown <pbrown@redhat.com> 4.3-1
- new upstream version.  Seems to have integrated most new syscalls
- tracing threaded programs is now functional.

* Mon Jun 11 2001 Than Ngo <than@redhat.com>
- port s390 patches from IBM

* Wed May 16 2001 Nalin Dahyabhai <nalin@redhat.com>
- modify new syscall patch to allocate enough heap space in setgroups32()

* Wed Feb 14 2001 Jakub Jelinek <jakub@redhat.com>
- #include <time.h> in addition to <sys/time.h>

* Fri Jan 26 2001 Karsten Hopp <karsten@redhat.com>
- clean up conflicting patches. This happened only
  when building on S390

* Fri Jan 19 2001 Bill Nottingham <notting@redhat.com>
- update to CVS, reintegrate ia64 support

* Fri Dec  8 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- Get S/390 support into the normal package

* Sat Nov 18 2000 Florian La Roche <Florian.LaRoche@redhat.de>
- added S/390 patch from IBM, adapting it to not conflict with
  IA64 patch

* Sat Aug 19 2000 Jakub Jelinek <jakub@redhat.com>
- doh, actually apply the 2.4 syscalls patch
- make it compile with 2.4.0-test7-pre4+ headers, add
  getdents64 and fcntl64

* Thu Aug  3 2000 Jakub Jelinek <jakub@redhat.com>
- add a bunch of new 2.4 syscalls (#14036)

* Wed Jul 12 2000 Prospector <bugzilla@redhat.com>
- automatic rebuild
- excludearch ia64

* Fri Jun  2 2000 Matt Wilson <msw@redhat.com>
- use buildinstall for FHS

* Wed May 24 2000 Jakub Jelinek <jakub@redhat.com>
- make things compile on sparc
- fix sigreturn on sparc

* Fri Mar 31 2000 Bill Nottingham <notting@redhat.com>
- fix stat64 misdef (#10485)

* Tue Mar 21 2000 Michael K. Johnson <johnsonm@redhat.com>
- added ia64 patch

* Thu Feb 03 2000 Cristian Gafton <gafton@redhat.com>
- man pages are compressed
- version 4.2 (why are we keeping all these patches around?)

* Sat Nov 27 1999 Jeff Johnson <jbj@redhat.com>
- update to 4.1 (with sparc socketcall patch).

* Fri Nov 12 1999 Jakub Jelinek <jakub@redhat.com>
- fix socketcall on sparc.

* Thu Sep 02 1999 Cristian Gafton <gafton@redhat.com>
- fix KERN_SECURELVL compile problem

* Tue Aug 31 1999 Cristian Gafton <gafton@redhat.com>
- added alpha patch from HJLu to fix the osf_sigprocmask interpretation

* Sat Jun 12 1999 Jeff Johnson <jbj@redhat.com>
- update to 3.99.1.

* Wed Jun  2 1999 Jeff Johnson <jbj@redhat.com>
- add (the other :-) jj's sparc patch.

* Wed May 26 1999 Jeff Johnson <jbj@redhat.com>
- upgrade to 3.99 in order to
-    add new 2.2.x open flags (#2955).
-    add new 2.2.x syscalls (#2866).
- strace 3.1 patches carried along for now.

* Sun May 16 1999 Jeff Johnson <jbj@redhat.com>
- don't rely on (broken!) rpm %%patch (#2735)

* Tue Apr 06 1999 Preston Brown <pbrown@redhat.com>
- strip binary

* Sun Mar 21 1999 Cristian Gafton <gafton@redhat.com>
- auto rebuild in the new build environment (release 16)

* Tue Feb  9 1999 Jeff Johnson <jbj@redhat.com>
- vfork est arrive!

* Tue Feb  9 1999 Christopher Blizzard <blizzard@redhat.com>
- Add patch to follow clone() syscalls, too.

* Sun Jan 17 1999 Jeff Johnson <jbj@redhat.com>
- patch to build alpha/sparc with glibc 2.1.

* Thu Dec 03 1998 Cristian Gafton <gafton@redhat.com>
- patch to build on ARM

* Wed Sep 30 1998 Jeff Johnson <jbj@redhat.com>
- fix typo (printf, not tprintf).

* Sat Sep 19 1998 Jeff Johnson <jbj@redhat.com>
- fix compile problem on sparc.

* Tue Aug 18 1998 Cristian Gafton <gafton@redhat.com>
- buildroot

* Mon Jul 20 1998 Cristian Gafton <gafton@redhat.com>
- added the umoven patch from James Youngman <jay@gnu.org>
- fixed build problems on newer glibc releases

* Mon Jun 08 1998 Prospector System <bugs@redhat.com>
- translations modified for de, fr, tr