3 %bcond_without dist_kernel # without distribution kernel
4 %bcond_without kernel # don't build kernel modules
5 %bcond_without smp # don't build SMP module
6 %bcond_without userspace # don't build userspace module
9 Summary: Capability Override LSM
10 Summary(pl.UTF-8): Moduł LSM Capability Override
16 Source0: http://files.randombit.net/cap_over/%{name}-%{version}.tgz
17 # Source0-md5: 971e50c1abaa97ee4a9958e92dd88300
18 URL: http://www.randombit.net/projects/cap_over/
19 %{?with_dist_kernel:BuildRequires: kernel-module-build >= 3:2.6.0}
20 BuildRequires: rpmbuild(macros) >= 1.153
21 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
24 The Capability Override LSM, is a kernel module which gives the
25 ability to specify that certain users/groups/programs are to gain
26 access to one or more extra capabilities. This means this LSM is a
27 permissive module, rather than a restrictive one (which is more
30 %description -l pl.UTF-8
31 Capability Override LSM to moduł jądra dający możliwość określenia
32 pewnych użytkowników/grup/programów mogących mieć dostęp do jednego
33 lub większej liczby uprawnień (capabilities). Oznacza to, że ten LSM
34 jest modułem zezwalającym, a nie restrykcyjnym (co jest bardziej
37 %package -n kernel%{_alt_kernel}-misc-cap_over
38 Summary: cap_over kernel module
39 Summary(pl.UTF-8): Moduł jądra cap_over
40 Release: %{rel}@%{_kernel_ver_str}
42 %{?with_dist_kernel:%requires_releq_kernel_up}
43 Requires(post,postun): /sbin/depmod
46 %description -n kernel%{_alt_kernel}-misc-cap_over
47 cap_over kernel module.
49 %description -n kernel%{_alt_kernel}-misc-cap_over -l pl.UTF-8
52 %package -n kernel%{_alt_kernel}-smp-misc-cap_over
53 Summary: cap_over SMP kernel module
54 Summary(pl.UTF-8): Moduł SMP jądra cap_over
55 Release: %{rel}@%{_kernel_ver_str}
57 %{?with_dist_kernel:%requires_releq_kernel_smp}
58 Requires(post,postun): /sbin/depmod
61 %description -n kernel%{_alt_kernel}-smp-misc-cap_over
62 cap_over SMP kernel module.
64 %description -n kernel%{_alt_kernel}-smp-misc-cap_over -l pl.UTF-8
65 Moduł SMP jądra cap_over.
73 --with-linux="%{_kernelsrcdir}"
75 for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
76 if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
79 install -d o/include/linux
80 ln -sf %{_kernelsrcdir}/config-$cfg o/.config
81 ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers
82 ln -sf %{_kernelsrcdir}/include/linux/autoconf-${cfg}.h o/include/linux/autoconf.h
83 %if %{with dist_kernel}
84 %{__make} -j1 -C %{_kernelsrcdir} O=$PWD/o prepare scripts
86 install -d o/include/config
87 touch o/include/config/MARKER
88 ln -sf %{_kernelsrcdir}/scripts o/scripts
90 %{__make} -C %{_kernelsrcdir} clean \
91 RCS_FIND_IGNORE="-name '*.ko' -o" \
92 SYSSRC=%{_kernelsrcdir} \
96 %{__make} -C %{_kernelsrcdir} modules \
97 CC="%{__cc}" CPP="%{__cpp}" \
98 SYSSRC=%{_kernelsrcdir} \
103 mv cap_over{,-$cfg}.ko
108 rm -rf $RPM_BUILD_ROOT
111 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
112 install cap_over-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
113 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/cap_over.ko
114 %if %{with smp} && %{with dist_kernel}
115 install cap_over-smp.ko \
116 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/cap_over.ko
120 %if %{with userspace}
121 install -d $RPM_BUILD_ROOT/sbin
122 install policy.pl $RPM_BUILD_ROOT/sbin
126 rm -rf $RPM_BUILD_ROOT
128 %post -n kernel%{_alt_kernel}-misc-cap_over
129 %depmod %{_kernel_ver}
131 %postun -n kernel%{_alt_kernel}-misc-cap_over
132 %depmod %{_kernel_ver}
134 %post -n kernel%{_alt_kernel}-smp-misc-cap_over
135 %depmod %{_kernel_ver}smp
137 %postun -n kernel%{_alt_kernel}-smp-misc-cap_over
138 %depmod %{_kernel_ver}smp
140 %if %{with userspace}
142 %defattr(644,root,root,755)
143 %doc readme.txt doc/[e-t]*
144 %attr(755,root,root) /sbin/policy.pl
148 %files -n kernel%{_alt_kernel}-misc-cap_over
149 %defattr(644,root,root,755)
150 /lib/modules/%{_kernel_ver}/misc/*
152 %if %{with smp} && %{with dist_kernel}
153 %files -n kernel%{_alt_kernel}-smp-misc-cap_over
154 %defattr(644,root,root,755)
155 /lib/modules/%{_kernel_ver}smp/misc/*