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