%{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} Summary: User space tools for kernel auditing Name: audit Version: 3.0 Release: 2 License: GPLv2+ and LGPLv2+ URL: http://people.redhat.com/sgrubb/audit/ Source0: http://people.redhat.com/sgrubb/audit/%{name}-%{version}-alpha5.tar.gz Source1: https://www.gnu.org/licenses/lgpl-2.1.txt Patch6000: bindings-swig-src-auditswig.i-Do-not-hardcode-the-pa.patch Patch6001: Fix-memory-leak-when-logs-are-corrupted.patch Patch6002: fix-out-of-bound-read-on-shutdown.patch Patch6003: Fix-a-couple-more-fuzzer-induced-bugs.patch Patch6004: More-fuzzer-induced-bug-fixes.patch Patch6005: Fix-memleak-in-auparse-caused-by-corrected-event-ordering.patch Patch6006: Port-af_unix-plugin-to-libev.patch Patch6007: 0067-Fix-minor-memory-leak-in-auditd-kerberos-credentials.patch Patch9000: bugfix-audit-support-armv7b.patch Patch9001: bugfix-audit-userspace-missing-syscalls-for-aarm64.patch Patch9002: bugfix-audit-reload-coredump.patch BuildRequires: gcc swig libtool BuildRequires: openldap-devel BuildRequires: krb5-devel libcap-ng-devel BuildRequires: kernel-headers >= 2.6.29 BuildRequires: python2 python-unversioned-command %ifarch %{golang_arches} BuildRequires: golang %endif BuildRequires: systemd Requires: openldap Requires(post): systemd coreutils Requires(preun): systemd Requires(postun): systemd coreutils Provides: audit-libs = %{version}-%{release} Provides: audit-libs%{?_isa} = %{version}-%{release} Provides: audispd-plugins = %{version}-%{release} Provides: audispd-plugins-zos = %{version}-%{release} Obsoletes: audit-libs < %{version}-%{release} Obsoletes: audit-libs%{?_isa} < %{version}-%{release} Obsoletes: audispd-plugins < %{version}-%{release} Obsoletes: audispd-plugins-zos < %{version}-%{release} %description The audit package contains the user space utilities for storing and searching the audit records generated by the audit subsystem in the Linux 2.6 and later kernels. %package devel Summary: Header files for libaudit License: LGPLv2+ Requires: %{name}%{?_isa} = %{version}-%{release} Requires: kernel-headers >= 2.6.29 %description devel The audit-libs-devel package contains the header files needed for developing applications that need to use the audit framework libraries. %package -n python2-audit Summary: Python2 bindings for libaudit License: LGPLv2+ BuildRequires: python2-devel Requires: %{name}%{?_isa} = %{version}-%{release} Provides: audit-libs-python = %{version}-%{release} Provides: audit-libs-python%{?_isa} = %{version}-%{release} Obsoletes: audit-libs-python < %{version}-%{release} Provides: audit-libs-python2 = %{version}-%{release} Provides: audit-libs-python2%{?_isa} = %{version}-%{release} Obsoletes: audit-libs-python2 < %{version}-%{release} %description -n python2-audit The python2-audit package contains the bindings so that libaudit and libauparse can be used by python2. %package -n python3-audit Summary: Python3 bindings for libaudit License: LGPLv2+ BuildRequires: python3-devel Requires: %{name}%{?_isa} = %{version}-%{release} Provides: audit-libs-python3 = %{version}-%{release} Provides: audit-libs-python3%{?_isa} = %{version}-%{release} Obsoletes: audit-libs-python3 < %{version}-%{release} %description -n python3-audit The python3-audit package contains the bindings so that libaudit and libauparse can be used by python3. %package help Summary: Documents for %{name} Buildarch: noarch Requires: man info %description help Man pages and other related documents for %{name}. %prep %autosetup -n %{name}-%{version} -p1 cp %{SOURCE1} . autoreconf -f -i %build %configure --sbindir=/sbin --libdir=/%{_lib} --with-python=yes \ --with-python3=yes \ --enable-gssapi-krb5=yes --with-arm --with-aarch64 \ --with-libcap-ng=yes --enable-zos-remote \ %ifarch %{golang_arches} --with-golang \ %endif --enable-systemd make CFLAGS="%{optflags}" %{?_smp_mflags} %install mkdir -p $RPM_BUILD_ROOT/{sbin,etc/audit/plugins.d,etc/audit/rules.d} mkdir -p $RPM_BUILD_ROOT/%{_mandir}/{man5,man8} mkdir -p $RPM_BUILD_ROOT/%{_lib} mkdir -p $RPM_BUILD_ROOT/%{_libdir}/audit mkdir -p --mode=0700 $RPM_BUILD_ROOT/%{_var}/log/audit mkdir -p $RPM_BUILD_ROOT/%{_var}/spool/audit make DESTDIR=$RPM_BUILD_ROOT install mkdir -p $RPM_BUILD_ROOT/%{_libdir} mv $RPM_BUILD_ROOT/%{_lib}/libaudit.a $RPM_BUILD_ROOT%{_libdir} mv $RPM_BUILD_ROOT/%{_lib}/libauparse.a $RPM_BUILD_ROOT%{_libdir} curdir=`pwd` cd $RPM_BUILD_ROOT/%{_libdir} LIBNAME=`basename \`ls $RPM_BUILD_ROOT/%{_lib}/libaudit.so.1.*.*\`` ln -s ../../%{_lib}/$LIBNAME libaudit.so LIBNAME=`basename \`ls $RPM_BUILD_ROOT/%{_lib}/libauparse.so.0.*.*\`` ln -s ../../%{_lib}/$LIBNAME libauparse.so cd $curdir rm -f $RPM_BUILD_ROOT/%{_lib}/libaudit.so rm -f $RPM_BUILD_ROOT/%{_lib}/libauparse.so find $RPM_BUILD_ROOT -name '*.la' -delete find $RPM_BUILD_ROOT/%{_libdir}/python?.?/site-packages -name '*.a' -delete mv $RPM_BUILD_ROOT/%{_lib}/pkgconfig $RPM_BUILD_ROOT%{_libdir} touch -r ./audit.spec $RPM_BUILD_ROOT/etc/libaudit.conf touch -r ./audit.spec $RPM_BUILD_ROOT/usr/share/man/man5/libaudit.conf.5.gz %check %ifarch %{golang_arches} make check %endif rm -f rules/Makefile* %post /sbin/ldconfig files=`ls /etc/audit/rules.d/ 2>/dev/null | wc -w` if [ "$files" -eq 0 ] ; then if [ -e /usr/share/doc/audit/rules/10-no-audit.rules ] ; then cp /usr/share/doc/audit/rules/10-no-audit.rules /etc/audit/rules.d/audit.rules else touch /etc/audit/rules.d/audit.rules fi chmod 0600 /etc/audit/rules.d/audit.rules fi %systemd_post auditd.service %preun %systemd_preun auditd.service %postun /sbin/ldconfig if [ $1 -ge 1 ]; then /sbin/service auditd condrestart > /dev/null 2>&1 || : fi %files %doc README ChangeLog rules init.d/auditd.cron %{!?_licensedir:%global license %%doc} %license COPYING lgpl-2.1.txt %attr(755,root,root) /sbin/auditctl %attr(755,root,root) /sbin/auditd %attr(755,root,root) /sbin/ausearch %attr(755,root,root) /sbin/aureport %attr(750,root,root) /sbin/autrace %attr(755,root,root) /sbin/augenrules %attr(755,root,root) %{_bindir}/aulast %attr(755,root,root) %{_bindir}/aulastlog %attr(755,root,root) %{_bindir}/ausyscall %attr(755,root,root) %{_bindir}/auvirt /%{_lib}/libaudit.so.1* /%{_lib}/libauparse.* %attr(644,root,root) %{_unitdir}/auditd.service %attr(750,root,root) %dir %{_libexecdir}/initscripts/legacy-actions/auditd %attr(750,root,root) %{_libexecdir}/initscripts/legacy-actions/auditd/condrestart %attr(750,root,root) %{_libexecdir}/initscripts/legacy-actions/auditd/reload %attr(750,root,root) %{_libexecdir}/initscripts/legacy-actions/auditd/restart %attr(750,root,root) %{_libexecdir}/initscripts/legacy-actions/auditd/resume %attr(750,root,root) %{_libexecdir}/initscripts/legacy-actions/auditd/rotate %attr(750,root,root) %{_libexecdir}/initscripts/legacy-actions/auditd/state %attr(750,root,root) %{_libexecdir}/initscripts/legacy-actions/auditd/stop %ghost %{_localstatedir}/run/auditd.state %attr(750,root,root) %dir %{_var}/log/audit %attr(750,root,root) %dir /etc/audit %attr(750,root,root) %dir /etc/audit/rules.d %attr(750,root,root) %dir /etc/audit/plugins.d %config(noreplace) %attr(640,root,root) /etc/audit/auditd.conf %ghost %config(noreplace) %attr(600,root,root) /etc/audit/rules.d/audit.rules %ghost %config(noreplace) %attr(640,root,root) /etc/audit/audit.rules %config(noreplace) %attr(640,root,root) /etc/audit/audit-stop.rules %config(noreplace) %attr(640,root,root) /etc/audit/plugins.d/af_unix.conf %config(noreplace) %attr(640,root,root) /etc/audit/audisp-remote.conf %config(noreplace) %attr(640,root,root) /etc/audit/plugins.d/au-remote.conf %config(noreplace) %attr(640,root,root) /etc/audit/plugins.d/syslog.conf %config(noreplace) %attr(640,root,root) /etc/libaudit.conf %attr(750,root,root) /sbin/audisp-remote %attr(750,root,root) /sbin/audisp-syslog %attr(700,root,root) %dir %{_var}/spool/audit %config(noreplace) %attr(640,root,root) /etc/audit/plugins.d/audispd-zos-remote.conf %config(noreplace) %attr(640,root,root) /etc/audit/zos-remote.conf %attr(750,root,root) /sbin/audispd-zos-remote %files devel %defattr(-,root,root) %doc contrib/plugin %{!?_licensedir:%global license %%doc} %license lgpl-2.1.txt %{_libdir}/libaudit.so %{_libdir}/libauparse.so %ifarch %{golang_arches} %dir %{_prefix}/lib/golang/src/pkg/redhat.com/audit %{_prefix}/lib/golang/src/pkg/redhat.com/audit/audit.go %endif %{_includedir}/libaudit.h %{_includedir}/auparse.h %{_includedir}/auparse-defs.h %{_datadir}/aclocal/audit.m4 %{_libdir}/pkgconfig/audit.pc %{_libdir}/pkgconfig/auparse.pc %{_libdir}/libaudit.a %{_libdir}/libauparse.a %files -n python2-audit %attr(755,root,root) %{python_sitearch}/_audit.so %attr(755,root,root) %{python_sitearch}/auparse.so %{python2_sitearch}/audit.py* %files -n python3-audit %attr(755,root,root) %{python3_sitearch}/* %files help %defattr(-,root,root) %attr(644,root,root) %{_mandir}/man8/*.8.gz %attr(644,root,root) %{_mandir}/man7/*.7.gz %attr(644,root,root) %{_mandir}/man5/*.5.gz %attr(644,root,root) %{_mandir}/man3/* %changelog * Sun Sep 29 2019 openEuler Buildteam - 3.0-2 - Fix the auditctl error * Sat Sep 21 2019 openEuler Buildteam - 3.0-1 - Package init