+# TODO: revise our auditd.service vs upstream version
#
# Conditional build:
-%bcond_without pie # auditd as PIE binary
-%bcond_without prelude # prelude audisp plugin
-%bcond_without python # don't build python bindings
+%bcond_without kerberos5 # do not build with heimdal
+%bcond_without pie # auditd as PIE binary
+%bcond_without prelude # prelude audisp plugin
+%bcond_without python # don't build python bindings
+%bcond_without zos_remote # do not build zos-remote audisp plugin (LDAP dep)
#
Summary: User space tools for 2.6 kernel auditing
Summary(pl.UTF-8): Narzędzia przestrzeni użytkownika do audytu jąder 2.6
Name: audit
-Version: 1.7.4
+Version: 2.2.2
Release: 1
License: GPL v2+
Group: Daemons
Source0: http://people.redhat.com/sgrubb/audit/%{name}-%{version}.tar.gz
-# Source0-md5: ca3b9195b43ed341b03e6bccdb8ca57d
+# Source0-md5: 6641fde111cf5dfda6d4282ab8410df5
Source2: %{name}d.init
Source3: %{name}d.sysconfig
+Source4: %{name}d.service
Patch0: %{name}-install.patch
+Patch1: %{name}-m4.patch
+Patch2: %{name}-nolibs.patch
+Patch3: %{name}-no_zos_remote.patch
+Patch4: %{name}-systemd-notonly.patch
URL: http://people.redhat.com/sgrubb/audit/
BuildRequires: autoconf >= 2.59
BuildRequires: automake >= 1:1.9
%{?with_pie:BuildRequires: gcc >= 5:3.4}
-BuildRequires: gettext-devel >= 0.14.6
BuildRequires: glibc-headers >= 6:2.3.6
-BuildRequires: intltool
-BuildRequires: libstdc++-devel
+%{?with_kerberos5:BuildRequires: heimdal-devel}
+BuildRequires: libcap-ng-devel
%{?with_prelude:BuildRequires: libprelude-devel}
BuildRequires: libtool
-BuildRequires: linux-libc-headers >= 7:2.6.20
-BuildRequires: openldap-devel
+BuildRequires: libwrap-devel
+BuildRequires: linux-libc-headers >= 7:2.6.30
+%{?with_zos_remote:BuildRequires: openldap-devel}
%if %{with python}
BuildRequires: python-devel >= 1:2.5
BuildRequires: rpm-pythonprov
BuildRequires: swig-python
%endif
-BuildRequires: rpmbuild(macros) >= 1.268
+BuildRequires: rpmbuild(macros) >= 1.623
BuildRequires: sed >= 4.0
Requires(post,preun): /sbin/chkconfig
+Requires(post,preun,postun): systemd-units >= 38
Requires: %{name}-libs = %{version}-%{release}
Requires: rc-scripts
+Requires: systemd-units >= 38
Obsoletes: audit-audispd-plugins
+Obsoletes: audit-systemd
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _sbindir /sbin
License: LGPL v2.1+
Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
-Requires: linux-libc-headers >= 7:2.6.20
+Requires: linux-libc-headers >= 7:2.6.30
%description libs-devel
The audit-libs-devel package contains the header files needed for
%description -n python-audit -l pl.UTF-8
Pythonowy interfejs do biblioteki libaudit.
-%package -n system-config-audit
-Summary: Utility for editing audit configuration
-Summary(pl.UTF-8): Narzędzie do zmiany konfiguracji audytu
-License: GPL v2
-Group: Applications/System
-Requires: %{name} = %{version}-%{release}
-Version: 0.4.6
-Requires: python-pygtk-glade >= 2:2.0
-Requires: usermode
-#Requires: usermode-gtk ???
-
-%description -n system-config-audit
-An utility for editing audit configuration.
-
-%description -n system-config-audit -l pl.UTF-8
-Narzędzie do zmiany konfiguracji audytu.
-
%prep
%setup -q
%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%{!?with_zos_remote:%patch3 -p1}
+%patch4 -p1
-%if !%{with python}
+%if %{without python}
sed 's#swig/Makefile ##' -i configure.ac
sed 's/swig//' -i Makefile.am
%endif
-sed -i -e 's,/main\.py,/main.pyc,' system-config-audit/src/system-config-audit.in
-
%build
%{__libtoolize}
%{__aclocal}
%{__autoconf}
%{__autoheader}
%{__automake}
-cd system-config-audit
-%{__libtoolize}
-%{__aclocal}
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-cd ..
%configure \
+ %{?with_kerberos5:--enable-gssapi-krb5} \
+ --enable-systemd \
--with-apparmor \
+ --with-libwrap \
%{?with_prelude:--with-prelude}
# override auditd_{C,LD}FLAGS to avoid -fPIE unsupported by gcc 3.3
%{__make} \
$RPM_BUILD_ROOT%{_libdir}/libauparse.so
# We manually install this since Makefile doesn't
-install -d $RPM_BUILD_ROOT%{_includedir}
+install -d $RPM_BUILD_ROOT{%{_includedir},%{systemdunitdir}}
install lib/libaudit.h $RPM_BUILD_ROOT%{_includedir}
install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/auditd
install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/auditd
+install %{SOURCE4} $RPM_BUILD_ROOT%{systemdunitdir}
%if %{with python}
-%py_comp $RPM_BUILD_ROOT%{py_sitescriptdir}
-%py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir}
-rm -f $RPM_BUILD_ROOT%{py_sitescriptdir}/*.py
-rm -f $RPM_BUILD_ROOT%{py_sitedir}/*.{la,a}
-
-%py_postclean $RPM_BUILD_ROOT%{_datadir}/system-config-audit
-%find_lang system-config-audit
+%py_comp $RPM_BUILD_ROOT%{py_sitedir}
+%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
+%{__rm} $RPM_BUILD_ROOT%{py_sitedir}/*.py
+%{__rm} $RPM_BUILD_ROOT%{py_sitedir}/*.{la,a}
%endif
%clean
%post
/sbin/chkconfig --add auditd
%service auditd restart "audit daemon"
+%systemd_post auditd.service
%preun
if [ "$1" = "0" ]; then
%service auditd stop
/sbin/chkconfig --del auditd
fi
+%systemd_preun auditd.service
+
+%postun
+%systemd_reload
+
+%triggerpostun -- %{name} < 2.2-2
+%systemd_trigger auditd.service
%files
%defattr(644,root,root,755)
%doc AUTHORS ChangeLog README THANKS TODO
+%attr(750,root,root) %{_bindir}/aulast
%attr(750,root,root) %{_bindir}/aulastlog
%attr(750,root,root) %{_bindir}/ausyscall
+%attr(750,root,root) %{_bindir}/auvirt
%attr(750,root,root) %{_sbindir}/audispd
%attr(750,root,root) %{_sbindir}/auditctl
%attr(750,root,root) %{_sbindir}/auditd
%attr(750,root,root) %{_sbindir}/ausearch
%attr(750,root,root) %{_sbindir}/autrace
%attr(755,root,root) %{_sbindir}/audisp-remote
-%attr(755,root,root) %{_sbindir}/audispd-zos-remote
+%{?with_zos_remote:%attr(755,root,root) %{_sbindir}/audispd-zos-remote}
%dir %{_sysconfdir}/audisp
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audisp/audispd.conf
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audisp/audisp-remote.conf
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audisp/zos-remote.conf
+%{?with_zos_remote:%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audisp/zos-remote.conf}
%dir %{_sysconfdir}/audisp/plugins.d
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audisp/plugins.d/af_unix.conf
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audisp/plugins.d/au-remote.conf
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audisp/plugins.d/audispd-zos-remote.conf
+%{?with_zos_remote:%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audisp/plugins.d/audispd-zos-remote.conf}
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audisp/plugins.d/syslog.conf
%dir %{_sysconfdir}/audit
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audit/auditd.conf
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audit/audit.rules
%attr(754,root,root) /etc/rc.d/init.d/auditd
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/auditd
+%{systemdunitdir}/auditd.service
%attr(750,root,root) %dir %{_var}/log/audit
%{_mandir}/man5/audispd.conf.5*
%{_mandir}/man5/audisp-remote.conf.5*
%{_mandir}/man5/auditd.conf.5*
%{_mandir}/man5/ausearch-expression.5*
-%{_mandir}/man5/zos-remote.conf.5*
+%{?with_zos_remote:%{_mandir}/man5/zos-remote.conf.5*}
+%{_mandir}/man7/audit.rules.7*
%{_mandir}/man8/audisp-remote.8*
-%{_mandir}/man8/audispd-zos-remote.8*
+%{?with_zos_remote:%{_mandir}/man8/audispd-zos-remote.8*}
%{_mandir}/man8/audispd.8*
%{_mandir}/man8/auditctl.8*
%{_mandir}/man8/auditd.8*
+%{_mandir}/man8/aulast.8*
%{_mandir}/man8/aulastlog.8*
%{_mandir}/man8/aureport.8*
%{_mandir}/man8/ausearch.8*
%{_mandir}/man8/ausyscall.8*
%{_mandir}/man8/autrace.8*
+%{_mandir}/man8/auvirt.8*
%files libs
%defattr(644,root,root,755)
%attr(755,root,root) /%{_lib}/libaudit.so.*.*.*
-%attr(755,root,root) %ghost /%{_lib}/libaudit.so.0
+%attr(755,root,root) %ghost /%{_lib}/libaudit.so.1
%attr(755,root,root) /%{_lib}/libauparse.so.*.*.*
%attr(755,root,root) %ghost /%{_lib}/libauparse.so.0
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libaudit.conf
+%{_mandir}/man5/libaudit.conf.5*
%files libs-devel
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%attr(755,root,root) %{py_sitedir}/_audit.so
%attr(755,root,root) %{py_sitedir}/auparse.so
-%{py_sitedir}/auparse-*.egg-info
-%{py_sitescriptdir}/audit.py[co]
-
-%files -n system-config-audit -f system-config-audit.lang
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/system-config-audit
-%attr(755,root,root) %{_libexecdir}/system-config-audit-server
-%{_datadir}/system-config-audit
-%{_desktopdir}/system-config-audit.desktop
+%{py_sitedir}/audit.py[co]
%endif