diff options
author | Chris PeBenito <pebenito@gentoo.org> | 2005-03-23 00:31:01 +0000 |
---|---|---|
committer | Chris PeBenito <pebenito@gentoo.org> | 2005-03-23 00:31:01 +0000 |
commit | 1368e6bdde0bfe2bfb0795d58d9c388afdb2fa15 (patch) | |
tree | cabe32bc18bd242bf5b6f5561b41435ff89deb01 /sec-policy/selinux-base-policy/selinux-base-policy-20050322.ebuild | |
parent | add initial category metadata file (GLEP 34) (diff) | |
download | gentoo-2-1368e6bdde0bfe2bfb0795d58d9c388afdb2fa15.tar.gz gentoo-2-1368e6bdde0bfe2bfb0795d58d9c388afdb2fa15.tar.bz2 gentoo-2-1368e6bdde0bfe2bfb0795d58d9c388afdb2fa15.zip |
new release
(Portage version: 2.0.51.19)
Diffstat (limited to 'sec-policy/selinux-base-policy/selinux-base-policy-20050322.ebuild')
-rw-r--r-- | sec-policy/selinux-base-policy/selinux-base-policy-20050322.ebuild | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/sec-policy/selinux-base-policy/selinux-base-policy-20050322.ebuild b/sec-policy/selinux-base-policy/selinux-base-policy-20050322.ebuild new file mode 100644 index 000000000000..9cdd88eb0903 --- /dev/null +++ b/sec-policy/selinux-base-policy/selinux-base-policy-20050322.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sec-policy/selinux-base-policy/selinux-base-policy-20050322.ebuild,v 1.1 2005/03/23 00:31:01 pebenito Exp $ + +IUSE="build" + +inherit eutils + +DESCRIPTION="Gentoo base policy for SELinux" +HOMEPAGE="http://www.gentoo.org/proj/en/hardened/selinux/" +SRC_URI="mirror://gentoo/${P}.tar.bz2" +LICENSE="GPL-2" +SLOT="0" +#KEYWORDS="~x86 ~ppc ~sparc ~amd64" +KEYWORDS="x86 ppc sparc amd64" +DEPEND="build? ( sys-devel/make + sys-devel/m4 )" +RDEPEND="sys-devel/m4 + sys-devel/make" + +S=${WORKDIR}/base-policy + +[ -z ${POLICYDIR} ] && POLICYDIR="/etc/security/selinux/src/policy" + +# deprecated policies: +DEPRECATED="domains/program/devfsd.te domains/program/opt.te + file_contexts/program/devfsd.fc file_contexts/program/opt.fc + file_contexts/users.fc domains/program/inetd.te + domains/program/tcpd.te file_contexts/program/inetd.fc + file_contexts/program/tcpd.fc macros/program/ypbind_macros.te" + +src_compile() { + return +} + +src_install() { + if use build; then + # generate a file_contexts + dodir ${POLICYDIR}/file_contexts + einfo "Ignore the checkpolicy error on the next line." + make -C ${S} \ + FC=${D}/${POLICYDIR}/file_contexts/file_contexts \ + ${D}/${POLICYDIR}/file_contexts/file_contexts + + [ ! -f ${D}/${POLICYDIR}/file_contexts/file_contexts ] && \ + die "file_contexts was not generated." + else + # install full policy + dodir /etc/security/selinux/src + + insinto /etc/security + doins ${S}/appconfig/* + + cp -a ${S} ${D}/${POLICYDIR} + rm -fR ${D}/${POLICYDIR}/appconfig + fi +} + +pkg_postinst() { + local isdeprecated + + if ! ( use build || use bootstrap ) + then + ewarn "Removing invalid backup copies of critical config files..." + rm -f ${ROOT}/${POLICYDIR}/._cfg????_users + fi + + echo + einfo "This is the base policy for SELinux on Gentoo. This policy" + einfo "package only covers the applications in the system profile." + einfo "More policy may need to be added according to your requirements." + echo + eerror "It is STRONGLY suggested that you evaluate and merge the" + eerror "policy changes. If any of the file contexts (*.fc) have" + eerror "changed, you should also relabel." + echo + ewarn "Please check the Changelog, there may be important information." + echo + echo + + einfo "Checking for deprecated policy..." + for i in $DEPRECATED; do + if [ -f "${POLICYDIR}/${i}" ]; then + eerror "${POLICYDIR}/${i}" + isdeprecated="y" + fi + done + [ "${isdeprecated}" ] && \ + eerror "The above policy file(s) should be removed if possible." || \ + einfo "None found." + + ebeep 4 + epause 4 +} |