summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris PeBenito <pebenito@gentoo.org>2003-05-10 18:27:10 +0000
committerChris PeBenito <pebenito@gentoo.org>2003-05-10 18:27:10 +0000
commitcce7098131d1b7ae6c03caa228ed989fee861b30 (patch)
tree02911c95071611e3e4fbfa7b64724d652d0cfb0d /sys-apps/selinux-small
parentmark stable (diff)
downloadgentoo-2-cce7098131d1b7ae6c03caa228ed989fee861b30.tar.gz
gentoo-2-cce7098131d1b7ae6c03caa228ed989fee861b30.tar.bz2
gentoo-2-cce7098131d1b7ae6c03caa228ed989fee861b30.zip
New upstream version, plus PAM fixes
Diffstat (limited to 'sys-apps/selinux-small')
-rw-r--r--sys-apps/selinux-small/ChangeLog9
-rw-r--r--sys-apps/selinux-small/Manifest5
-rw-r--r--sys-apps/selinux-small/files/digest-selinux-small-20030407092
-rw-r--r--sys-apps/selinux-small/files/selinux-small-2003040709-bison.diff12
-rw-r--r--sys-apps/selinux-small/selinux-small-2003040709.ebuild144
5 files changed, 170 insertions, 2 deletions
diff --git a/sys-apps/selinux-small/ChangeLog b/sys-apps/selinux-small/ChangeLog
index 1d793c580716..1e3cbded3417 100644
--- a/sys-apps/selinux-small/ChangeLog
+++ b/sys-apps/selinux-small/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sys-apps/selinux-small
# Copyright 2000-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/selinux-small/ChangeLog,v 1.13 2003/05/10 18:12:33 pebenito Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/selinux-small/ChangeLog,v 1.14 2003/05/10 18:27:06 pebenito Exp $
+
+*selinux-small-2003040709 (10 May 2003)
+
+ 10 May 2003; Chris PeBenito <pebenito@gentoo.org>
+ selinux-small-2003040709.ebuild, files/selinux-small-2003040709-bison.diff:
+ New upstream version. PAM should work correctly now, thanks to Paul
+ Kronenwetter.
10 May 2003; Chris PeBenito <pebenito@gentoo.org>
selinux-small-2003011510-r4.ebuild:
diff --git a/sys-apps/selinux-small/Manifest b/sys-apps/selinux-small/Manifest
index 623d9cde676b..7e0f291deda2 100644
--- a/sys-apps/selinux-small/Manifest
+++ b/sys-apps/selinux-small/Manifest
@@ -1,6 +1,9 @@
MD5 a72c63e1fb9dfae6192d836123273767 selinux-small-2003011510-r3.ebuild 3993
MD5 5f53b492ab89de7607a70d08f844228e selinux-small-2003011510-r4.ebuild 4212
-MD5 8c3c254bc2e17bd9332493e13e0e5d79 ChangeLog 2706
+MD5 19122eea7b09ab29b8688d430eb559fb ChangeLog 2964
+MD5 78c9c107caf533d59ef182eb9a90d6bc selinux-small-2003040709.ebuild 4421
MD5 e5ffaa323b22754b51eaa94f04bcf5dd files/digest-selinux-small-2003011510-r3 151
MD5 e5ffaa323b22754b51eaa94f04bcf5dd files/digest-selinux-small-2003011510-r4 151
MD5 5b8ae6c77d50a559c31fb144faf6843e files/selinux-small-2003011510-bison.diff 553
+MD5 5b8ae6c77d50a559c31fb144faf6843e files/selinux-small-2003040709-bison.diff 553
+MD5 0986e11cde481cc9d4f8061654dedead files/digest-selinux-small-2003040709 151
diff --git a/sys-apps/selinux-small/files/digest-selinux-small-2003040709 b/sys-apps/selinux-small/files/digest-selinux-small-2003040709
new file mode 100644
index 000000000000..be96298ad944
--- /dev/null
+++ b/sys-apps/selinux-small/files/digest-selinux-small-2003040709
@@ -0,0 +1,2 @@
+MD5 f2a8e506d952ceb4a30970a646e9a227 selinux-small-2003040709.tgz 571597
+MD5 98d24820cf82cce8d826b88ff2617eb6 selinux-small_2003040709-5.diff.gz 62300
diff --git a/sys-apps/selinux-small/files/selinux-small-2003040709-bison.diff b/sys-apps/selinux-small/files/selinux-small-2003040709-bison.diff
new file mode 100644
index 000000000000..ed2a256e7015
--- /dev/null
+++ b/sys-apps/selinux-small/files/selinux-small-2003040709-bison.diff
@@ -0,0 +1,12 @@
+diff -urN selinux/module/checkpolicy/Makefile selinux-patched/module/checkpolicy/Makefile
+--- selinux/module/checkpolicy/Makefile 2002-09-23 12:10:02.000000000 -0400
++++ selinux-patched/module/checkpolicy/Makefile 2003-03-20 14:26:01.000000000 -0500
+@@ -17,6 +17,8 @@
+ OPTIONS =
+ endif
+
++YACC = bison -y
++
+ CFLAGS = -g $(OPTIONS) -I$(LSMDIR)/include -Wall -O2 -pipe -include $(MODDIR)/ss/global.h -I$(MODDIR)/include -I$(MODDIR)/ss
+
+ OBJS = ebitmap.o queue.o hashtab.o symtab.o sidtab.o avtab.o policydb.o services.o y.tab.o lex.yy.o checkpolicy.o
diff --git a/sys-apps/selinux-small/selinux-small-2003040709.ebuild b/sys-apps/selinux-small/selinux-small-2003040709.ebuild
new file mode 100644
index 000000000000..cf8f0cf959d4
--- /dev/null
+++ b/sys-apps/selinux-small/selinux-small-2003040709.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2002 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/selinux-small/selinux-small-2003040709.ebuild,v 1.1 2003/05/10 18:27:06 pebenito Exp $
+
+DESCRIPTION="SELinux libraries and policy compiler"
+HOMEPAGE="http://www.nsa.gov/selinux"
+SRC_URI="http://www.nsa.gov/selinux/archives/${P}.tgz
+ http://www.coker.com.au/selinux/selinux-small/selinux-small_${PV}-5.diff.gz"
+
+LICENSE="GPL-1"
+SLOT="0"
+S="${WORKDIR}/selinux"
+
+# to easily specify that libsecure is in the workdir, and we want to use pam
+LIBSECURE="-I${S}/libsecure/include -L${S}/libsecure/src -DUSE_PAM"
+
+KEYWORDS="~x86 ~ppc ~alpha ~sparc"
+IUSE="selinux"
+DEPEND="<sys-libs/glibc-2.3.2
+ sys-devel/flex
+ sys-libs/pam
+ || (
+ >=sys-kernel/selinux-sources-2.4.20-r1
+ >=sys-kernel/hardened-sources-2.4.20-r1
+ )"
+
+RDEPEND="<sys-libs/glibc-2.3.2
+ || (
+ >=sys-kernel/selinux-sources-2.4.20-r1
+ >=sys-kernel/hardened-sources-2.4.20-r1
+ )
+ dev-tcltk/expect
+ sys-apps/selinux-base-policy"
+
+pkg_setup() {
+ use selinux || eend 1 "You must have selinux in USE."
+
+ if [ ! -f /usr/src/linux/security/selinux/ss/ebitmap.c ]; then
+ eerror "The /usr/src/linux symlink appears to be incorrect. It must"
+ eerror "be pointing to a selinux-sources or hardened-sources kernel"
+ eerror "for selinux-small to compile. If the symlink is correct, the"
+ eerror "kernel sources may be damaged or incomplete, and will need to"
+ eend 1 "be remerged. Please fix and retry."
+ fi
+}
+
+src_compile() {
+ ln -s /usr/src/linux ${WORKDIR}/lsm-2.4
+
+ cd ${S}
+
+ epatch ${WORKDIR}/selinux-small_${PV}-5.diff
+ epatch ${FILESDIR}/${P}-bison.diff
+
+ einfo "Compiling checkpolicy"
+ cd ${S}/module
+ make all LSMVER=-2.4 || die "Checkpolicy compilation failed"
+
+ einfo "Compiling libsecure"
+ cd ${S}/libsecure
+ make SE_INC=/usr/include/linux/flask \
+ EXTRA_CFLAGS="${CFLAGS}" \
+ || die "libsecure compile failed."
+ cd ${S}/devfsd
+ mv devfsd-conflet selinux-small
+ make CFLAGS="${CFLAGS} ${LIBSECURE}" \
+ LDFLAGS="-L${S}/libsecure/src" \
+ || die "devfsd compile failed."
+
+ einfo "Compiling utilities"
+ cd ${S}/setfiles
+ make CFLAGS="${CFLAGS} ${LIBSECURE}" \
+ LDFLAGS="-L${S}/libsecure/src" setfiles \
+ || die "setfiles compile failed."
+ cd ${S}/utils/newrole
+ make CFLAGS="${CFLAGS} ${LIBSECURE} -lcrypt" \
+ || die "newrole compile failed."
+ cd ${S}/utils/run_init
+ make CFLAGS="${CFLAGS} ${LIBSECURE} -lcrypt" \
+ || die "run_init compile failed."
+ cd ${S}/utils/spasswd
+ make CFLAGS="${CFLAGS} ${LIBSECURE}" \
+ LDFLAGS="-L${S}/libsecure/src -lcrypt" \
+ || die "spasswd compile failed."
+}
+
+src_install() {
+ # install policy stuff
+ dosbin ${S}/module/checkpolicy/checkpolicy
+ dosbin ${S}/setfiles/setfiles
+
+ insinto /etc/security
+ doins ${S}/utils/appconfig/*
+
+ insinto /usr/include
+ doins ${S}/libsecure/include/*.h
+
+ insinto /etc/devfs.d
+ doins ${S}/devfsd/selinux-small
+
+ dolib.a ${S}/libsecure/src/libsecure.a
+ dobin ${S}/libsecure/test/{avc_enforcing,avc_toggle,context_to_sid,sid_to_context,list_sids,chsid,lchsid,chsidfs,get_user_sids}
+ dosbin ${S}/libsecure/test/load_policy
+ dobin ${S}/utils/spasswd/{sadminpasswd,schfn,schsh,spasswd,suseradd,suserdel,svipw}
+ dobin ${S}/utils/run_init/run_init
+ dosbin ${S}/utils/run_init/open_init_pty
+ dobin ${S}/utils/newrole/newrole
+
+ doman ${S}/setfiles/setfiles.8
+ doman ${S}/libsecure/man/man[12]/*
+ doman ${S}/utils/newrole/newrole.1
+ doman ${S}/utils/run_init/run_init.8
+
+ exeinto /lib/devfsd
+ doexe ${S}/devfsd/devfsd-se.so
+
+ # install pam stuff
+ dodir /etc/pam.d
+ sed "/pam_rootok.so/d" /etc/pam.d/su > ${D}/etc/pam.d/newrole
+ cp ${D}/etc/pam.d/newrole ${D}/etc/pam.d/run_init
+}
+
+pkg_postinst() {
+ einfo
+ einfo "To recompile the policy and relabel the filesystem simply run:"
+ einfo "ebuild /var/db/pkg/${CATEGORY}/${PF}/${PF}.ebuild config"
+ einfo
+}
+
+pkg_config() {
+ cd /etc/security/selinux/src/policy
+
+ einfo "Compiling policy"
+ make policy || die "Policy compile failed (see above error messages)"
+
+ einfo "Installing policy"
+ make install || die "Policy install failed (see above error messages)"
+
+ einfo "Loading policy"
+ make load || die "Policy loading failed (see above error messages)"
+
+ einfo "Relabeling filesystems -- This will take a very long time!"
+ make relabel || die "Relabeling failed (see above error messages)"
+}