Summary: Example policy application Name: example Version: 1.0 Release: 0%{?dist} License: GPLv2+ Group: System Environment/Base Source: %{name}-%{version}.tgz Url: http://%{name}.sourceforge.net BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch BuildRequires: selinux-policy-devel m4 make policycoreutils >= %{POLICYCOREUTILSVER} Requires(pre): policycoreutils >= %{POLICYCOREUTILSVER} libsemanage >= 2.0.14-3 %description SELinux policy example %files %dir /var/spool/%{name} %dir %{_usr}/share/%{name} %{_usr}/share/%{name}/%{name}.pp %{_usr}/share/selinux/include/services/%{name}.if %{_sbindir}/%{name} %{_sysconfdir}/rc.d/init.d/%{name} %description Exapme Policy Package %build make %prep %setup %install # Build targeted policy %{__rm} -fR %{buildroot} make DESTDIR=%{buildroot} install %clean %{__rm} -fR %{buildroot} %define saveFileContext() \ if [ -s /etc/selinux/config ]; then \ . %{_sysconfdir}/selinux/config; \ FILE_CONTEXT=%{_sysconfdir}/selinux/%1/contexts/files/file_contexts; \ if [ "${SELINUXTYPE}" == %1 -a -f ${FILE_CONTEXT} ]; then \ cp -f ${FILE_CONTEXT} ${FILE_CONTEXT}.%{name}; \ fi \ fi; %define relabel() \ . %{_sysconfdir}/selinux/config; \ FILE_CONTEXT=%{_sysconfdir}/selinux/%1/contexts/files/file_contexts; \ selinuxenabled; \ if [ $? == 0 -a "${SELINUXTYPE}" == %1 -a -f ${FILE_CONTEXT}.%{name} ]; then \ fixfiles -C ${FILE_CONTEXT}.%{name} restore; \ rm -f ${FILE_CONTEXT}.%name; \ fi; %pre %saveFileContext targeted %post semodule -s targeted -i /usr/share/%{name}/%{name}.pp %relabel targeted %preun if [ $1 = 0 ]; then %saveFileContext targeted fi %postun if [ $1 = 0 ]; then semodule -s targeted -r %{name} %relabel targeted fi %changelog * Thu Dec 20 2007 Dan Walsh 3.2.5-3 - Initial Policy