]> git.pld-linux.org Git - packages/audit.git/blob - audit.spec
- updated to 3.1.2; flexible array workaround already in code
[packages/audit.git] / audit.spec
1 #
2 # Conditional build:
3 %bcond_without  kerberos5       # Kerberos V support via heimdal
4 %bcond_without  golang          # Go language bindings
5 %bcond_with     gccgo           # use GCC go frontend instead of golang implementation
6 %bcond_without  python          # Python bindings (any)
7 %bcond_without  python2         # Python 2 bindings
8 %bcond_without  python3         # Python 3 bindings
9 %bcond_without  zos_remote      # zos-remote audisp plugin (LDAP dep)
10
11 %ifnarch %{go_arches}
12 %define         with_gccgo      1
13 %endif
14
15 %if %{without python}
16 %undefine       with_python2
17 %undefine       with_python3
18 %endif
19
20 Summary:        User space tools for 2.6 kernel auditing
21 Summary(pl.UTF-8):      Narzędzia przestrzeni użytkownika do audytu jąder 2.6
22 Name:           audit
23 Version:        3.1.2
24 Release:        1
25 License:        GPL v2+
26 Group:          Daemons
27 Source0:        https://people.redhat.com/sgrubb/audit/%{name}-%{version}.tar.gz
28 # Source0-md5:  9d325b543f79b20a8f7ff2021ebac0c3
29 Source2:        %{name}d.init
30 Source3:        %{name}d.sysconfig
31 Patch0:         %{name}-install.patch
32 Patch1:         %{name}-nolibs.patch
33 Patch2:         %{name}-systemd-notonly.patch
34 Patch3:         %{name}-no-refusemanualstop.patch
35 Patch4:         golang-paths.patch
36 URL:            http://people.redhat.com/sgrubb/audit/
37 BuildRequires:  autoconf >= 2.59
38 BuildRequires:  automake >= 1:1.12.6
39 BuildRequires:  glibc-headers >= 6:2.3.6
40 %{?with_kerberos5:BuildRequires:        heimdal-devel}
41 BuildRequires:  libcap-ng-devel
42 BuildRequires:  libtool >= 2:2
43 BuildRequires:  libwrap-devel
44 BuildRequires:  linux-libc-headers >= 7:2.6.30
45 %{?with_zos_remote:BuildRequires:       openldap-devel}
46 %if %{with python2}
47 BuildRequires:  python-devel >= 1:2.5
48 BuildRequires:  python-modules
49 BuildRequires:  rpm-pythonprov
50 BuildRequires:  swig-python
51 %endif
52 %if %{with python3}
53 BuildRequires:  python3-devel
54 BuildRequires:  rpm-pythonprov
55 BuildRequires:  swig-python
56 %endif
57 BuildRequires:  rpmbuild(macros) >= 2.009
58 BuildRequires:  sed >= 4.0
59 %if %{with golang}
60 %{?with_gccgo:BuildRequires:    gcc-go >= 5.1}
61 %{!?with_gccgo:BuildRequires:   golang >= 1.4}
62 %endif
63 Requires(post,preun):   /sbin/chkconfig
64 Requires(post,preun,postun):    systemd-units >= 38
65 Requires:       %{name}-libs = %{version}-%{release}
66 Requires:       rc-scripts
67 Requires:       systemd-units >= 38
68 Obsoletes:      audit-audispd-plugins < 1.6.7
69 Obsoletes:      audit-plugin-prelude < 3
70 Obsoletes:      audit-systemd < 2.2-2
71 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
72
73 %define         _sbindir        /sbin
74 # use /lib, because this path is put in /usr/share/.../settings.py
75 %define         _libexecdir     %{_prefix}/lib
76
77 %description
78 The audit package contains the user space utilities for storing and
79 processing the audit records generate by the audit subsystem in the
80 Linux 2.6 kernel.
81
82 %description -l pl.UTF-8
83 Ten pakiet zawiera narzędzia przestrzeni użytkownika do przechowywania
84 i przetwarzania rekordów audytu generowanych przez podsystem audytu w
85 jądrach Linuksa 2.6.
86
87 %package libs
88 Summary:        Dynamic audit libraries
89 Summary(pl.UTF-8):      Biblioteki dynamiczne audit
90 License:        LGPL v2.1+
91 Group:          Libraries
92
93 %description libs
94 The audit-libs package contains the dynamic libraries needed for
95 applications to use the audit framework.
96
97 %description libs -l pl.UTF-8
98 Ten pakiet zawiera biblioteki dynamiczne potrzebne dla aplikacji
99 używających środowiska audytu.
100
101 %package libs-devel
102 Summary:        Header files for audit libraries
103 Summary(pl.UTF-8):      Pliki nagłówkowe bibliotek audit
104 License:        LGPL v2.1+
105 Group:          Development/Libraries
106 Requires:       %{name}-libs = %{version}-%{release}
107 Requires:       linux-libc-headers >= 7:2.6.30
108 Requires:       libcap-ng-devel
109
110 %description libs-devel
111 The audit-libs-devel package contains the header files needed for
112 developing applications that need to use the audit framework library.
113
114 %description libs-devel -l pl.UTF-8
115 Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia aplikacji
116 używających biblioteki środowiska audytu.
117
118 %package libs-static
119 Summary:        Static audit libraries
120 Summary(pl.UTF-8):      Statyczne biblioteki audit
121 License:        LGPL v2.1+
122 Group:          Development/Libraries
123 Requires:       %{name}-libs-devel = %{version}-%{release}
124
125 %description libs-static
126 The audit-libs-static package contains the static libraries for
127 developing applications that need to use the audit framework.
128
129 %description libs-static -l pl.UTF-8
130 Ten pakiet zawiera statyczne biblioteki do tworzenia aplikacji
131 używających środowiska audytu.
132
133 %package -n golang-audit
134 Summary:        Go language interface to libaudit library
135 Summary(pl.UTF-8):      Interfejs języka Go do biblioteki libaudit
136 License:        LGPL v2.1+
137 Group:          Development/Languages
138 Requires:       %{name}-libs = %{version}-%{release}
139 %if %{with gccgo}
140 Requires:       gcc-go >= 5.1
141 %else
142 Requires:       golang >= 1.4
143 %endif
144
145 %description -n golang-audit
146 Go language interface to libaudit library.
147
148 %description -n golang-audit -l pl.UTF-8
149 Interfejs języka Go do biblioteki libaudit.
150
151 %package -n python-audit
152 Summary:        Python 2.x interface to libaudit library
153 Summary(pl.UTF-8):      Interfejs Pythona 2.x do biblioteki libaudit
154 License:        LGPL v2.1+
155 Group:          Libraries/Python
156 Requires:       %{name}-libs = %{version}-%{release}
157
158 %description -n python-audit
159 Python 2.x interface to libaudit library.
160
161 %description -n python-audit -l pl.UTF-8
162 Interfejs Pythona 2.x do biblioteki libaudit.
163
164 %package -n python3-audit
165 Summary:        Python 3.x interface to libaudit library
166 Summary(pl.UTF-8):      Interfejs Pythona 3.x do biblioteki libaudit
167 License:        LGPL v2.1+
168 Group:          Libraries/Python
169 Requires:       %{name}-libs = %{version}-%{release}
170
171 %description -n python3-audit
172 Python 3.x interface to libaudit library.
173
174 %description -n python3-audit -l pl.UTF-8
175 Interfejs Pythona 3.x do biblioteki libaudit.
176
177 %prep
178 %setup -q
179 %patch0 -p1
180 %patch1 -p1
181 %patch2 -p1
182 %patch3 -p1
183 %patch4 -p1
184
185 %if %{without python}
186 sed 's#[^ ]*swig/[^ ]*/Makefile ##g' -i configure.ac
187 sed 's/swig//' -i bindings/Makefile.am
188 %endif
189
190 %build
191 %{__libtoolize}
192 %{__aclocal}
193 %{__autoconf}
194 %{__autoheader}
195 %{__automake}
196 %configure \
197         CC_FOR_BUILD="%{__cc}" \
198         CPPFLAGS_FOR_BUILD="%{rpmcppflags}" \
199         CFLAGS_FOR_BUILD="%{rpmcflags}" \
200         LDFLAGS_FOR_BUILD="%{rpmldflags}" \
201         %{?with_kerberos5:--enable-gssapi-krb5} \
202         --enable-systemd \
203         --with-apparmor \
204         --with-io_uring \
205         --with-libwrap \
206         %{!?with_zos_remote:--disable-zos-remote}
207
208 %{__make}
209
210 %install
211 rm -rf $RPM_BUILD_ROOT
212 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/audit/rules.d,%{_var}/log/audit}
213
214 %{__make} install \
215         DESTDIR=$RPM_BUILD_ROOT
216
217 # default to no audit (and no overhead)
218 cp -p rules/10-no-audit.rules $RPM_BUILD_ROOT%{_sysconfdir}/audit/rules.d
219
220 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/auditd
221 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/auditd
222
223 install -d $RPM_BUILD_ROOT/%{_lib}
224 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libaudit.so.* $RPM_BUILD_ROOT/%{_lib}
225 ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libaudit.so.*.*.*) \
226         $RPM_BUILD_ROOT%{_libdir}/libaudit.so
227 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libauparse.so.* $RPM_BUILD_ROOT/%{_lib}
228 ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libauparse.so.*.*.*) \
229         $RPM_BUILD_ROOT%{_libdir}/libauparse.so
230
231 # RH initscripts-specific
232 %{__rm} -r $RPM_BUILD_ROOT%{_libexecdir}/initscripts
233
234 %if %{with python2}
235 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
236 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
237 %py_postclean
238 %{__rm} $RPM_BUILD_ROOT%{py_sitedir}/*.la
239 %endif
240
241 %if %{with python3}
242 %{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/*.la
243 %endif
244
245 %clean
246 rm -rf $RPM_BUILD_ROOT
247
248 %post   libs -p /sbin/ldconfig
249 %postun libs -p /sbin/ldconfig
250
251 %post
252 # Copy default rules into place on new installation
253 if [ ! -e %{_sysconfdir}/audit/audit.rules ] ; then
254         cp -a %{_sysconfdir}/audit/rules.d/10-no-audit.rules %{_sysconfdir}/audit/audit.rules
255 fi
256 /sbin/chkconfig --add auditd
257 %service auditd restart "audit daemon"
258 %systemd_post auditd.service
259
260 %preun
261 if [ "$1" = "0" ]; then
262         %service auditd stop
263         /sbin/chkconfig --del auditd
264 fi
265 %systemd_preun auditd.service
266
267 %postun
268 %systemd_reload
269
270 %triggerpostun -- audit < 3.0
271 if [ -f %{_sysconfdir}/audisp/audisp-remote.conf.rpmsave -a ! -f %{_sysconfdir}/audit/audisp-remote.conf.rpmnew ]; then
272         mv -f %{_sysconfdir}/audit/audisp-remote.conf %{_sysconfdir}/audit/audisp-remote.conf.rpmnew
273         mv -f %{_sysconfdir}/audisp/audisp-remote.conf.rpmsave %{_sysconfdir}/audit/audisp-remote.conf
274 fi
275 if [ -f %{_sysconfdir}/audisp/plugins.d/af_unix.conf.rpmsave -a ! -f %{_sysconfdir}/audit/plugins.d/af_unix.conf.rpmnew ]; then
276         mv -f %{_sysconfdir}/audit/plugins.d/af_unix.conf %{_sysconfdir}/audit/plugins.d/af_unix.conf.rpmnew
277         mv -f %{_sysconfdir}/audisp/plugins.d/af_unix.conf.rpmsave %{_sysconfdir}/audit/plugins.d/af_unix.conf
278 fi
279 if [ -f %{_sysconfdir}/audisp/plugins.d/au-remote.conf.rpmsave -a ! -f %{_sysconfdir}/audit/plugins.d/au-remote.conf.rpmnew ]; then
280         mv -f %{_sysconfdir}/audit/plugins.d/au-remote.conf %{_sysconfdir}/audit/plugins.d/au-remote.conf.rpmnew
281         mv -f %{_sysconfdir}/audisp/plugins.d/au-remote.conf.rpmsave %{_sysconfdir}/audit/plugins.d/au-remote.conf
282 fi
283 if [ -f %{_sysconfdir}/audisp/plugins.d/syslog.conf.rpmsave -a ! -f %{_sysconfdir}/audit/plugins.d/syslog.conf.rpmnew ]; then
284         mv -f %{_sysconfdir}/audit/plugins.d/syslog.conf %{_sysconfdir}/audit/plugins.d/syslog.conf.rpmnew
285         mv -f %{_sysconfdir}/audisp/plugins.d/syslog.conf.rpmsave %{_sysconfdir}/audit/plugins.d/syslog.conf
286 fi
287 %if %{with zos_remote}
288 if [ -f %{_sysconfdir}/audisp/zos-remote.conf.rpmsave -a ! -f %{_sysconfdir}/audit/zos-remote.conf.rpmnew ]; then
289         mv -f %{_sysconfdir}/audit/zos-remote.conf %{_sysconfdir}/audit/zos-remote.conf.rpmnew
290         mv -f %{_sysconfdir}/audisp/zos-remote.conf.rpmsave %{_sysconfdir}/audit/zos-remote.conf
291 fi
292 if [ -f %{_sysconfdir}/audisp/plugins.d/audisp-zos-remote.conf.rpmsave -a ! -f %{_sysconfdir}/audit/plugins.d/audisp-zos-remote.conf.rpmnew ]; then
293         mv -f %{_sysconfdir}/audit/plugins.d/audisp-zos-remote.conf %{_sysconfdir}/audit/plugins.d/audisp-zos-remote.conf.rpmnew
294         mv -f %{_sysconfdir}/audisp/plugins.d/audisp-zos-remote.conf.rpmsave %{_sysconfdir}/audit/plugins.d/audisp-zos-remote.conf
295 fi
296 %endif
297
298 %files
299 %defattr(644,root,root,755)
300 %doc AUTHORS ChangeLog README THANKS rules/{README-rules,*.rules} init.d/auditd.cron
301 %attr(750,root,root) %{_bindir}/aulast
302 %attr(750,root,root) %{_bindir}/aulastlog
303 %attr(750,root,root) %{_bindir}/ausyscall
304 %attr(750,root,root) %{_bindir}/auvirt
305 %attr(750,root,root) %{_sbindir}/auditctl
306 %attr(750,root,root) %{_sbindir}/auditd
307 %attr(750,root,root) %{_sbindir}/augenrules
308 %attr(750,root,root) %{_sbindir}/aureport
309 %attr(750,root,root) %{_sbindir}/ausearch
310 %attr(750,root,root) %{_sbindir}/autrace
311 %attr(755,root,root) %{_sbindir}/audisp-af_unix
312 %attr(755,root,root) %{_sbindir}/audisp-remote
313 %attr(755,root,root) %{_sbindir}/audisp-syslog
314 %{_libexecdir}/audit-functions
315 %dir %{_datadir}/audit
316 %{_datadir}/audit/sample-rules
317 %dir %{_sysconfdir}/audit
318 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audit/audisp-remote.conf
319 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audit/audit-stop.rules
320 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audit/auditd.conf
321 %dir %{_sysconfdir}/audit/plugins.d
322 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audit/plugins.d/af_unix.conf
323 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audit/plugins.d/au-remote.conf
324 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audit/plugins.d/syslog.conf
325 %dir %{_sysconfdir}/audit/rules.d
326 %attr(640,root,root) %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/audit/rules.d/10-no-audit.rules
327 %attr(754,root,root) /etc/rc.d/init.d/auditd
328 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/auditd
329 %{systemdunitdir}/auditd.service
330 %attr(750,root,root) %dir %{_var}/log/audit
331 %{_mandir}/man5/audisp-remote.conf.5*
332 %{_mandir}/man5/auditd.conf.5*
333 %{_mandir}/man5/auditd-plugins.5*
334 %{_mandir}/man5/ausearch-expression.5*
335 %{_mandir}/man7/audit.rules.7*
336 %{_mandir}/man8/audisp-af_unix.8*
337 %{_mandir}/man8/audisp-remote.8*
338 %{_mandir}/man8/audisp-syslog.8*
339 %{_mandir}/man8/auditctl.8*
340 %{_mandir}/man8/auditd.8*
341 %{_mandir}/man8/augenrules.8*
342 %{_mandir}/man8/aulast.8*
343 %{_mandir}/man8/aulastlog.8*
344 %{_mandir}/man8/aureport.8*
345 %{_mandir}/man8/ausearch.8*
346 %{_mandir}/man8/ausyscall.8*
347 %{_mandir}/man8/autrace.8*
348 %{_mandir}/man8/auvirt.8*
349
350 %if %{with zos_remote}
351 %attr(755,root,root) %{_sbindir}/audispd-zos-remote
352 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audit/zos-remote.conf
353 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/audit/plugins.d/audispd-zos-remote.conf
354 %{_mandir}/man5/zos-remote.conf.5*
355 %{_mandir}/man8/audispd-zos-remote.8*
356 %endif
357
358 %files libs
359 %defattr(644,root,root,755)
360 %attr(755,root,root) /%{_lib}/libaudit.so.*.*.*
361 %attr(755,root,root) %ghost /%{_lib}/libaudit.so.1
362 %attr(755,root,root) /%{_lib}/libauparse.so.*.*.*
363 %attr(755,root,root) %ghost /%{_lib}/libauparse.so.0
364 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libaudit.conf
365 %{_mandir}/man5/libaudit.conf.5*
366
367 %files libs-devel
368 %defattr(644,root,root,755)
369 %attr(755,root,root) %{_libdir}/libaudit.so
370 %attr(755,root,root) %{_libdir}/libauparse.so
371 %{_libdir}/libaudit.la
372 %{_libdir}/libauparse.la
373 %{_includedir}/auparse*.h
374 %{_includedir}/libaudit.h
375 %{_pkgconfigdir}/audit.pc
376 %{_pkgconfigdir}/auparse.pc
377 %{_aclocaldir}/audit.m4
378 %{_mandir}/man3/audit_*.3*
379 %{_mandir}/man3/auparse_*.3*
380 %{_mandir}/man3/ausearch_*.3*
381 %{_mandir}/man3/get_auditfail_action.3*
382 %{_mandir}/man3/set_aumessage_mode.3*
383
384 %files libs-static
385 %defattr(644,root,root,755)
386 %{_libdir}/libaudit.a
387 %{_libdir}/libauparse.a
388
389 %if %{with golang}
390 %files -n golang-audit
391 %defattr(644,root,root,755)
392 %dir %{_libdir}/golang/src/redhat.com
393 %{_libdir}/golang/src/redhat.com/audit
394 %endif
395
396 %if %{with python2}
397 %files -n python-audit
398 %defattr(644,root,root,755)
399 %attr(755,root,root) %{py_sitedir}/_audit.so
400 %attr(755,root,root) %{py_sitedir}/auparse.so
401 %{py_sitedir}/audit.py[co]
402 %endif
403
404 %if %{with python3}
405 %files -n python3-audit
406 %defattr(644,root,root,755)
407 %attr(755,root,root) %{py3_sitedir}/_audit.so
408 %attr(755,root,root) %{py3_sitedir}/auparse.so
409 %{py3_sitedir}/audit.py
410 %{py3_sitedir}/__pycache__/audit.cpython-*.py[co]
411 %endif
This page took 0.096722 seconds and 4 git commands to generate.