summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Snelham <zeypher@gentoo.org>2006-11-08 20:21:06 +0000
committerMatthew Snelham <zeypher@gentoo.org>2006-11-08 20:21:06 +0000
commita7c1359e984d5039161a8c4d2b1df8fb4c11adc8 (patch)
tree96dcc0c426ae35d11155ff6ef8ca5ad08f7c82a1
downloadzeypher-a7c1359e984d5039161a8c4d2b1df8fb4c11adc8.tar.gz
zeypher-a7c1359e984d5039161a8c4d2b1df8fb4c11adc8.tar.bz2
zeypher-a7c1359e984d5039161a8c4d2b1df8fb4c11adc8.zip
Initial import of AppArmor ebuilds, October release.
svn path=/; revision=1
-rw-r--r--app-doc/apparmor-docs/Manifest8
-rw-r--r--app-doc/apparmor-docs/apparmor-docs-2.0_p6269.ebuild42
-rw-r--r--app-doc/apparmor-docs/files/digest-apparmor-docs-2.0_p62693
-rw-r--r--app-doc/apparmor-docs/metadata.xml11
-rw-r--r--app-vim/apparmor-syntax/Manifest12
-rw-r--r--app-vim/apparmor-syntax/apparmor-syntax-200609.ebuild15
-rw-r--r--app-vim/apparmor-syntax/files/digest-apparmor-syntax-2006093
-rw-r--r--app-vim/apparmor-syntax/metadata.xml11
-rw-r--r--distfiles/apparmor-syntax-200609.tar.bz2bin0 -> 2213 bytes
-rw-r--r--sec-policy/apparmor-profiles/Manifest12
-rw-r--r--sec-policy/apparmor-profiles/apparmor-profiles-2.0_p119.ebuild60
-rw-r--r--sec-policy/apparmor-profiles/files/digest-apparmor-profiles-2.0_p1193
-rw-r--r--sec-policy/apparmor-profiles/metadata.xml11
-rw-r--r--sys-apps/apparmor-modules/Manifest16
-rw-r--r--sys-apps/apparmor-modules/apparmor-modules-2.0_p20061013.ebuild80
-rw-r--r--sys-apps/apparmor-modules/files/apparmor-modules-2.0_2.6.17.9_symbol_export.patch83
-rw-r--r--sys-apps/apparmor-modules/files/digest-apparmor-modules-2.0_p200610133
-rw-r--r--sys-apps/apparmor-modules/metadata.xml11
-rw-r--r--sys-apps/apparmor-parser/Manifest28
-rw-r--r--sys-apps/apparmor-parser/apparmor-parser-2.0_p150.ebuild62
-rwxr-xr-xsys-apps/apparmor-parser/files/aaeventd40
-rwxr-xr-xsys-apps/apparmor-parser/files/apparmor55
-rw-r--r--sys-apps/apparmor-parser/files/digest-apparmor-parser-2.0_p1503
-rw-r--r--sys-apps/apparmor-parser/files/rc.apparmor.functions443
-rw-r--r--sys-apps/apparmor-parser/files/rc.helper.functions47
-rw-r--r--sys-apps/apparmor-parser/metadata.xml11
-rw-r--r--sys-apps/apparmor-utils/Manifest12
-rw-r--r--sys-apps/apparmor-utils/apparmor-utils-2.0_p142-r1.ebuild56
-rw-r--r--sys-apps/apparmor-utils/files/digest-apparmor-utils-2.0_p142-r13
-rw-r--r--sys-apps/apparmor-utils/metadata.xml11
-rw-r--r--sys-kernel/apparmor-sources/Manifest26
-rw-r--r--sys-kernel/apparmor-sources/apparmor-sources-2.6.17.ebuild45
-rw-r--r--sys-kernel/apparmor-sources/apparmor-sources-2.6.18.ebuild45
-rw-r--r--sys-kernel/apparmor-sources/files/digest-apparmor-sources-2.6.1712
-rw-r--r--sys-kernel/apparmor-sources/files/digest-apparmor-sources-2.6.1812
-rw-r--r--sys-kernel/apparmor-sources/metadata.xml11
-rw-r--r--sys-libs/libapparmor/Manifest12
-rw-r--r--sys-libs/libapparmor/files/digest-libapparmor-2.0_p1323
-rw-r--r--sys-libs/libapparmor/libapparmor-2.0_p132.ebuild39
-rw-r--r--sys-libs/libapparmor/metadata.xml11
40 files changed, 1371 insertions, 0 deletions
diff --git a/app-doc/apparmor-docs/Manifest b/app-doc/apparmor-docs/Manifest
new file mode 100644
index 0000000..ded1a25
--- /dev/null
+++ b/app-doc/apparmor-docs/Manifest
@@ -0,0 +1,8 @@
+DIST apparmor-docs-2.0-6269.tar.gz 2697657 RMD160 474048d988d72cbf9bf21d50e8aef37d06d9b000 SHA1 792f4339d86d02d179b786de87a47394abfdadae SHA256 9c2d63bfe42cc4582e24d1248a7560dd19cee718db513c7dedb12d45fe168221
+EBUILD apparmor-docs-2.0_p6269.ebuild 955 RMD160 7d0ef9d6bc1a7742684c3c3ced41fd846647a659 SHA1 1f46784c84ea199daa365a19e5d2ff500b84540b SHA256 0db0811764e7dee4543a7d8435f998a76d01ac54335d1b6603295a7a7d929c12
+MD5 38dd72e1548593a135e9e3554d583b3a apparmor-docs-2.0_p6269.ebuild 955
+RMD160 7d0ef9d6bc1a7742684c3c3ced41fd846647a659 apparmor-docs-2.0_p6269.ebuild 955
+SHA256 0db0811764e7dee4543a7d8435f998a76d01ac54335d1b6603295a7a7d929c12 apparmor-docs-2.0_p6269.ebuild 955
+MD5 2729ec9e31f63d936db2d7745ef9be57 files/digest-apparmor-docs-2.0_p6269 271
+RMD160 1c537c1e781a06a7bac39b2cfb7170ba281bb875 files/digest-apparmor-docs-2.0_p6269 271
+SHA256 1a62f3ad2e11540f9e65c1c623357a588f44ecd1244c2559c6436f426aa210ba files/digest-apparmor-docs-2.0_p6269 271
diff --git a/app-doc/apparmor-docs/apparmor-docs-2.0_p6269.ebuild b/app-doc/apparmor-docs/apparmor-docs-2.0_p6269.ebuild
new file mode 100644
index 0000000..640416c
--- /dev/null
+++ b/app-doc/apparmor-docs/apparmor-docs-2.0_p6269.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit eutils perl-module toolchain-funcs
+
+MY_PV="${PV/_p/-}"
+MY_P="${PN}-${MY_PV}"
+MY_S="${WORKDIR}/${PN}-${PV/_p*/}"
+MONTH="April"
+
+DESCRIPTION="Documentation for AppArmor."
+HOMEPAGE="http://forge.novell.com/modules/xfmod/project/?apparmor"
+SRC_URI="http://forgeftp.novell.com/apparmor/Development%20-%20${MONTH}%20Snapshot/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE="doc"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+
+ cd ${MY_S}
+ sed -i "s:NOVELL/SUSE:Gentoo:g" Makefile
+}
+
+src_compile() {
+ cd ${MY_S}
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" || die
+}
+
+src_install() {
+ cd ${MY_S}
+ make DESTDIR=${D} install_manpages || die
+ # Some files are missing from the doc distribution, so no '|| die'
+ # bug submitted upstream
+ make DESTDIR=${D} DOCDIR=/usr/share/doc/${P} install_documents
+}
diff --git a/app-doc/apparmor-docs/files/digest-apparmor-docs-2.0_p6269 b/app-doc/apparmor-docs/files/digest-apparmor-docs-2.0_p6269
new file mode 100644
index 0000000..9c4eee3
--- /dev/null
+++ b/app-doc/apparmor-docs/files/digest-apparmor-docs-2.0_p6269
@@ -0,0 +1,3 @@
+MD5 a5130a30a6a9e7cac316fe7658af031a apparmor-docs-2.0-6269.tar.gz 2697657
+RMD160 474048d988d72cbf9bf21d50e8aef37d06d9b000 apparmor-docs-2.0-6269.tar.gz 2697657
+SHA256 9c2d63bfe42cc4582e24d1248a7560dd19cee718db513c7dedb12d45fe168221 apparmor-docs-2.0-6269.tar.gz 2697657
diff --git a/app-doc/apparmor-docs/metadata.xml b/app-doc/apparmor-docs/metadata.xml
new file mode 100644
index 0000000..b9e3c98
--- /dev/null
+++ b/app-doc/apparmor-docs/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>apparmor</herd>
+<maintainer>
+ <email>zeypher@gentoo.org</email>
+ <name>Matthew Snelham</name>
+ <description>Primary Maintainer</description>
+</maintainer>
+<longdescription lang="en">Apparmor man pages and official release documentation.</longdescription>
+</pkgmetadata>
diff --git a/app-vim/apparmor-syntax/Manifest b/app-vim/apparmor-syntax/Manifest
new file mode 100644
index 0000000..ac5ac96
--- /dev/null
+++ b/app-vim/apparmor-syntax/Manifest
@@ -0,0 +1,12 @@
+DIST apparmor-syntax-200609.tar.bz2 2213 RMD160 32e920c4d26603537b6f63d640a65bf29f5a7d94 SHA1 592749d298bd061df6a36a9a4d40b279494517bd SHA256 6475accf5783d0baff0f2d917089da44833d9bd22aff6e440b3dbaefa59532ff
+EBUILD apparmor-syntax-200609.ebuild 463 RMD160 13cba4bd3d019ed5e7bb77028a0cce1425c2666b SHA1 894d198036c4540fbb29ba408a46fb553aea045b SHA256 6c23b8b84325c9156679e5ebd9feb5d84e79641735be9418dbe2fa29bd278e41
+MD5 5e324749d7b2fc6751990f4bc5189f00 apparmor-syntax-200609.ebuild 463
+RMD160 13cba4bd3d019ed5e7bb77028a0cce1425c2666b apparmor-syntax-200609.ebuild 463
+SHA256 6c23b8b84325c9156679e5ebd9feb5d84e79641735be9418dbe2fa29bd278e41 apparmor-syntax-200609.ebuild 463
+MISC metadata.xml 398 RMD160 14fc32bc83e1a8d427e06d4cc60f5606d0b36adc SHA1 8bdaf570340596a6186bc9dee8d38169f568bd87 SHA256 b3752813c66a5ff9a938270e41d38a69e73c4ec1ef3a6213f0678c5ecbb91a6d
+MD5 61894ce23a87ac07b5f8bed97411f570 metadata.xml 398
+RMD160 14fc32bc83e1a8d427e06d4cc60f5606d0b36adc metadata.xml 398
+SHA256 b3752813c66a5ff9a938270e41d38a69e73c4ec1ef3a6213f0678c5ecbb91a6d metadata.xml 398
+MD5 0241582b993fb8d172a74deee6327fb4 files/digest-apparmor-syntax-200609 265
+RMD160 074f4ac1f927498f686e38b6a6e2d739eff77dad files/digest-apparmor-syntax-200609 265
+SHA256 06f3dd3db778e5c8eff69e5000a649ec523cd14da2297a6234a0d3b5cc46e516 files/digest-apparmor-syntax-200609 265
diff --git a/app-vim/apparmor-syntax/apparmor-syntax-200609.ebuild b/app-vim/apparmor-syntax/apparmor-syntax-200609.ebuild
new file mode 100644
index 0000000..0564d2f
--- /dev/null
+++ b/app-vim/apparmor-syntax/apparmor-syntax-200609.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit vim-plugin
+
+DESCRIPTION="vim plugin: AppArmor policy syntax"
+HOMEPAGE="http://forge.novell.com/modules/xfmod/project/?apparmor"
+LICENSE="vim"
+KEYWORDS="alpha amd64 ia64 mips ~ppc ppc64 sparc x86"
+SRC_URI="mirror://gentoo/${P}.tar.bz2"
+IUSE=""
+
+VIM_PLUGIN_HELPTEXT="This plugin provides syntax highlighting for Apparmor
+policy files."
diff --git a/app-vim/apparmor-syntax/files/digest-apparmor-syntax-200609 b/app-vim/apparmor-syntax/files/digest-apparmor-syntax-200609
new file mode 100644
index 0000000..64f9902
--- /dev/null
+++ b/app-vim/apparmor-syntax/files/digest-apparmor-syntax-200609
@@ -0,0 +1,3 @@
+MD5 2975122145f3cf46188a5f00ac649537 apparmor-syntax-200609.tar.bz2 2213
+RMD160 32e920c4d26603537b6f63d640a65bf29f5a7d94 apparmor-syntax-200609.tar.bz2 2213
+SHA256 6475accf5783d0baff0f2d917089da44833d9bd22aff6e440b3dbaefa59532ff apparmor-syntax-200609.tar.bz2 2213
diff --git a/app-vim/apparmor-syntax/metadata.xml b/app-vim/apparmor-syntax/metadata.xml
new file mode 100644
index 0000000..3c009ab
--- /dev/null
+++ b/app-vim/apparmor-syntax/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>apparmor</herd>
+<maintainer>
+ <email>zeypher@gentoo.org</email>
+ <name>Matthew Snelham</name>
+ <description>Primary Maintainer</description>
+</maintainer>
+<longdescription lang="en">Vim syntax definitions for apparmor policy files.</longdescription>
+</pkgmetadata>
diff --git a/distfiles/apparmor-syntax-200609.tar.bz2 b/distfiles/apparmor-syntax-200609.tar.bz2
new file mode 100644
index 0000000..fc1961c
--- /dev/null
+++ b/distfiles/apparmor-syntax-200609.tar.bz2
Binary files differ
diff --git a/sec-policy/apparmor-profiles/Manifest b/sec-policy/apparmor-profiles/Manifest
new file mode 100644
index 0000000..56498e8
--- /dev/null
+++ b/sec-policy/apparmor-profiles/Manifest
@@ -0,0 +1,12 @@
+DIST apparmor-profiles-2.0-119.tar.gz 38442 RMD160 41960baad897408ef9fed48829975b7d7ad5381a SHA1 ced8c4e1a8837b9c243fba9146454cf284e357f6 SHA256 747be3c170cd9bb599e6c5a6b1c19a1ec8e8f614b469ef52d7e6640830698efd
+EBUILD apparmor-profiles-2.0_p119.ebuild 1777 RMD160 696a87643710e5a4ccf0ed25bc4dae845afe61b3 SHA1 30fb93b1b899d5cb80ed3c1842f0d4be31767697 SHA256 8faa85505c0a5191ec889a9589e7713a7422948180441e0bcab7aa1ec6270e8e
+MD5 23fdad08b50d949ad98cc9cda07ac84d apparmor-profiles-2.0_p119.ebuild 1777
+RMD160 696a87643710e5a4ccf0ed25bc4dae845afe61b3 apparmor-profiles-2.0_p119.ebuild 1777
+SHA256 8faa85505c0a5191ec889a9589e7713a7422948180441e0bcab7aa1ec6270e8e apparmor-profiles-2.0_p119.ebuild 1777
+MISC metadata.xml 409 RMD160 85cafe88b4cf8dbabc6cde6a42992c853cf07de1 SHA1 1f67a8ad5256e39b633e7bb991f06ff3dce25c4c SHA256 a00af1c02edbb908409fe16a614f53537cc153f54674db3cda6b7d5657d0ec30
+MD5 592eafc15eb2e0f176e32fc81ae1b9a6 metadata.xml 409
+RMD160 85cafe88b4cf8dbabc6cde6a42992c853cf07de1 metadata.xml 409
+SHA256 a00af1c02edbb908409fe16a614f53537cc153f54674db3cda6b7d5657d0ec30 metadata.xml 409
+MD5 009b398f5b231e38fc3422558483629e files/digest-apparmor-profiles-2.0_p119 274
+RMD160 d85cd1212273237347788ba31a1b757e9aec6635 files/digest-apparmor-profiles-2.0_p119 274
+SHA256 a51796af9a3ecb31ff8752d4f3d3d19a6c3f613e8da9e32d02b7a79101996232 files/digest-apparmor-profiles-2.0_p119 274
diff --git a/sec-policy/apparmor-profiles/apparmor-profiles-2.0_p119.ebuild b/sec-policy/apparmor-profiles/apparmor-profiles-2.0_p119.ebuild
new file mode 100644
index 0000000..dd28fbf
--- /dev/null
+++ b/sec-policy/apparmor-profiles/apparmor-profiles-2.0_p119.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit eutils toolchain-funcs
+
+MY_P="${P/_p/-}"
+MY_S="${WORKDIR}/${P/_p*/}"
+MONTH="October"
+
+DESCRIPTION="AppArmor pre-built application encapsulation profiles."
+HOMEPAGE="http://forge.novell.com/modules/xfmod/project/?apparmor"
+SRC_URI="http://forgeftp.novell.com/apparmor/Development%20-%20${MONTH}%20Snapshot/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE=""
+
+DEPEND=""
+RDEPEND="sys-apps/apparmor-parser"
+
+pkg_postinst() {
+ ewarn
+ ewarn "DO NOT EXPECT THESE PROFILES TO WORK ON YOUR SYSTEM!!!"
+ ewarn " Expect that ENABLING THEM WILL BREAK things"
+ ewarn " "
+ ewarn "These profiles were built to work with a SuSE base install, and "
+ ewarn "make many assumptions about file placement and system facilities "
+ ewarn "that are quite possibly untrue on any Gentoo system ever emerged."
+ ewarn " "
+ ewarn "They are provided for reference purposes only, until profiles can "
+ ewarn "be created and verified for Gentoo. If you are interested in using "
+ ewarn "AppArmor, and modifiying these base profiles for a Gentoo package, "
+ ewarn "please feel free to do so, and contact the AppArmor package "
+ ewarn "maintainer with your working profiles!"
+ ewarn
+ epause
+}
+
+src_unpack() {
+ unpack ${A}
+
+ cd ${MY_S}
+ # Move profiles to a different dir so that none of
+ # them are sourced by default on startup.
+ sed -i 's:apparmor.d$:apparmor.d/suse-defaults:g' Makefile
+}
+
+src_compile() {
+ cd ${MY_S}
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" || die
+}
+
+src_install() {
+ cd ${MY_S}
+ # Place profiles in /usr/share, instead of /usr/src/Immunix
+ MY_SHAREDIR="/usr/share/${PN}"
+ make DESTDIR=${D} EXTRASDIR=${D}/${MY_SHAREDIR} install || die
+}
diff --git a/sec-policy/apparmor-profiles/files/digest-apparmor-profiles-2.0_p119 b/sec-policy/apparmor-profiles/files/digest-apparmor-profiles-2.0_p119
new file mode 100644
index 0000000..d55b122
--- /dev/null
+++ b/sec-policy/apparmor-profiles/files/digest-apparmor-profiles-2.0_p119
@@ -0,0 +1,3 @@
+MD5 93e3dbee491b4dc5c12ea6b4ccf7309a apparmor-profiles-2.0-119.tar.gz 38442
+RMD160 41960baad897408ef9fed48829975b7d7ad5381a apparmor-profiles-2.0-119.tar.gz 38442
+SHA256 747be3c170cd9bb599e6c5a6b1c19a1ec8e8f614b469ef52d7e6640830698efd apparmor-profiles-2.0-119.tar.gz 38442
diff --git a/sec-policy/apparmor-profiles/metadata.xml b/sec-policy/apparmor-profiles/metadata.xml
new file mode 100644
index 0000000..b561ceb
--- /dev/null
+++ b/sec-policy/apparmor-profiles/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>apparmor</herd>
+<maintainer>
+ <email>zeypher@gentoo.org</email>
+ <name>Matthew Snelham</name>
+ <description>Primary Maintainer</description>
+</maintainer>
+<longdescription lang="en">Default Apparmor profiles from the official Novell releases.</longdescription>
+</pkgmetadata>
diff --git a/sys-apps/apparmor-modules/Manifest b/sys-apps/apparmor-modules/Manifest
new file mode 100644
index 0000000..bbd6bf5
--- /dev/null
+++ b/sys-apps/apparmor-modules/Manifest
@@ -0,0 +1,16 @@
+AUX apparmor-modules-2.0_2.6.17.9_symbol_export.patch 2976 RMD160 b9232cb4b78bfccd7154f27af554aedc0a01b53f SHA1 19ac2f051379f6733f7760eee2c37dde670bb746 SHA256 f364111249e598379886880d427435474609898dd77df8770112b3594305bd80
+MD5 fb0f6966a5fafacc3ca5cd453973e3f9 files/apparmor-modules-2.0_2.6.17.9_symbol_export.patch 2976
+RMD160 b9232cb4b78bfccd7154f27af554aedc0a01b53f files/apparmor-modules-2.0_2.6.17.9_symbol_export.patch 2976
+SHA256 f364111249e598379886880d427435474609898dd77df8770112b3594305bd80 files/apparmor-modules-2.0_2.6.17.9_symbol_export.patch 2976
+DIST apparmor-external-module.tar.gz 112408 RMD160 b333459588b0ccaaf36c6247555ff560daa3f95c SHA1 fbef407f3611c8c38ca66ce977fc5271e4140eec SHA256 70d66089a46f87f7fbaf504a3e40e4511e21c4a03345f0142315743bb9278d2f
+EBUILD apparmor-modules-2.0_p20061013.ebuild 2101 RMD160 7d4763a25cf45f6482b0825ab4b24253f81e7a8e SHA1 8fbba9e272c280969c4c20d36669233876e14c38 SHA256 5248af5d4ba292f14a0e1ce82a60321b94902caabe83aeb103df1dc3524bc9ca
+MD5 d49c592873548e7e2445ede86369cd4e apparmor-modules-2.0_p20061013.ebuild 2101
+RMD160 7d4763a25cf45f6482b0825ab4b24253f81e7a8e apparmor-modules-2.0_p20061013.ebuild 2101
+SHA256 5248af5d4ba292f14a0e1ce82a60321b94902caabe83aeb103df1dc3524bc9ca apparmor-modules-2.0_p20061013.ebuild 2101
+MISC metadata.xml 380 RMD160 9e87c8cc3fb3ee2b04080188ddaab74dcd1b291b SHA1 8d1beaea2ad08aa621f45f7e1b86b4b1a4b72575 SHA256 3e262ff06a7f21693b9ad6106a959a04514b35e7d14e25df5e6648a7cf7ee827
+MD5 56ab0ca0dca9b8dd896c9d3bff58f039 metadata.xml 380
+RMD160 9e87c8cc3fb3ee2b04080188ddaab74dcd1b291b metadata.xml 380
+SHA256 3e262ff06a7f21693b9ad6106a959a04514b35e7d14e25df5e6648a7cf7ee827 metadata.xml 380
+MD5 ada15501d8ce59813443b9fb8b7359ef files/digest-apparmor-modules-2.0_p20061013 274
+RMD160 76b75c7fd71ca82c198ecb095af6723f6314188e files/digest-apparmor-modules-2.0_p20061013 274
+SHA256 f382eb61c05a9f0e47d7b5e336bb296846875f76e2fe59261eaab4cf9d42d93c files/digest-apparmor-modules-2.0_p20061013 274
diff --git a/sys-apps/apparmor-modules/apparmor-modules-2.0_p20061013.ebuild b/sys-apps/apparmor-modules/apparmor-modules-2.0_p20061013.ebuild
new file mode 100644
index 0000000..01fbc2d
--- /dev/null
+++ b/sys-apps/apparmor-modules/apparmor-modules-2.0_p20061013.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit linux-mod
+
+MY_S="${WORKDIR}/apparmor_modules/module"
+MONTH="October"
+
+DESCRIPTION="Kernel modules for AppArmor"
+HOMEPAGE="ihttp://forge.novell.com/modules/xfmod/project/?apparmor"
+SRC_URI="http://forgeftp.novell.com/apparmor/Development%20-%20${MONTH}%20Snapshot/apparmor-external-module.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE=""
+
+DEPEND="virtual/libc"
+RDEPEND="${DEPEND}
+ sys-apps/apparmor-parser"
+
+pkg_setup() {
+ linux-info_pkg_setup
+
+ if kernel_is lt 2 6 16 ; then
+ eerror "You must have at least a 2.6.16 kernel to use this package."
+ die "Insufficent kernel version"
+ fi
+
+ if linux_chkconfig_present CONFIG_SECURITY ; then
+ eerror "CONFIG_SECURITY must be enabled in your kernel to build ${PN}"
+ die "Bad kernel config"
+ fi
+
+ if (grep 'namespace_sem' ${KV_DIR}/include/linux/namespace.h >/dev/null 2>&1 && grep 'AUDIT_SD' ${KV_DIR}/include/linux/audit.h >/dev/null 2>&1 )
+ then
+ einfo "Required Symbol patch seems to have been applied; continuing."
+ else
+ eerror "Required symbols do not appear to be exported."
+ ewarn
+ ewarn "AppArmor modules requires a patch be applied against the"
+ ewarn "kernel source to export several symbols."
+ ewarn
+ ewarn "Current patches can currently be found in: "
+ ewarn " ${FILESDIR}"
+ ewarn "where the clostest matching KERNEL_VER patch:"
+ ewarn " ${P/_p*/}_[KERNEL_VER]_symbol_export.patch"
+ ewarn "should apply cleanly."
+ ewarn
+ ewarn "After applying this patch and re-compiling,"
+ ewarn "re-emerge this package"
+ ewarn
+ die "Missing apparmor symbol export patch"
+ fi
+
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${MY_S}"
+
+ sed -i 's/^all:/modules:/g' Makefile
+ sed -i 's/mv/#mv/g' Makefile
+}
+
+src_compile() {
+ cd "${MY_S}"
+ unset ARCH
+ CONFIG_SECURITY_APPARMOR=m make
+}
+
+src_install() {
+ cd "${MY_S}"
+
+ insinto /lib/modules/${KV_FULL}/kernel/security/apparmor
+ doins apparmor.ko
+ insinto /lib/modules/${KV_FULL}/kernel/security/apparmor/aamatch
+ doins aamatch/aamatch_pcre.ko
+}
diff --git a/sys-apps/apparmor-modules/files/apparmor-modules-2.0_2.6.17.9_symbol_export.patch b/sys-apps/apparmor-modules/files/apparmor-modules-2.0_2.6.17.9_symbol_export.patch
new file mode 100644
index 0000000..c0e97bb
--- /dev/null
+++ b/sys-apps/apparmor-modules/files/apparmor-modules-2.0_2.6.17.9_symbol_export.patch
@@ -0,0 +1,83 @@
+From: tonyj@suse.de
+Subject: Export namespace semaphore
+Patch-mainline: no
+
+Export global namespace_sem (this used to be a per namespace semaphore).
+Alas, this isn't going to win _any_ points for style.
+Patch is not in mainline -- pending AppArmor code submission to lkml
+
+---
+--- linux-2.6.17.9.orig/fs/namespace.c
++++ linux-2.6.17.9/fs/namespace.c
+@@ -46,7 +46,8 @@ static int event;
+ static struct list_head *mount_hashtable __read_mostly;
+ static int hash_mask __read_mostly, hash_bits __read_mostly;
+ static kmem_cache_t *mnt_cache __read_mostly;
+-static struct rw_semaphore namespace_sem;
++struct rw_semaphore namespace_sem;
++EXPORT_SYMBOL_GPL(namespace_sem);
+
+ /* /sys/fs */
+ decl_subsys(fs, NULL, NULL);
+--- linux-2.6.17.9.orig/include/linux/namespace.h
++++ linux-2.6.17.9/include/linux/namespace.h
+@@ -5,6 +5,9 @@
+ #include <linux/mount.h>
+ #include <linux/sched.h>
+
++/* exported for AppArmor (SubDomain) */
++extern struct rw_semaphore namespace_sem;
++
+ struct namespace {
+ atomic_t count;
+ struct vfsmount * root;
+
+
+From: tonyj@suse.de
+Subject: Export audit subsystem for use by modules
+Patch-mainline: no
+
+Adds necessary export symbols for audit subsystem routines.
+Changes audit_log_vformat to be externally visible (analagous to vprintf)
+Patch is not in mainline -- pending AppArmor code submission to lkml
+
+--- linux-2.6.17.9.orig/include/linux/audit.h
++++ linux-2.6.17.9/include/linux/audit.h
+@@ -96,6 +96,8 @@
+ #define AUDIT_LAST_KERN_ANOM_MSG 1799
+ #define AUDIT_ANOM_PROMISCUOUS 1700 /* Device changed promiscuous mode */
+
++#define AUDIT_SD 1500 /* AppArmor (SubDomain) audit */
++
+ #define AUDIT_KERNEL 2000 /* Asynchronous audit record. NOT A REQUEST. */
+
+ /* Rule flags */
+@@ -357,6 +359,9 @@ extern void audit_log(struct audit_
+ __attribute__((format(printf,4,5)));
+
+ extern struct audit_buffer *audit_log_start(struct audit_context *ctx, gfp_t gfp_mask, int type);
++extern void audit_log_vformat(struct audit_buffer *ab,
++ const char *fmt, va_list args)
++ __attribute__((format(printf,2,0)));
+ extern void audit_log_format(struct audit_buffer *ab,
+ const char *fmt, ...)
+ __attribute__((format(printf,2,3)));
+--- linux-2.6.17.9.orig/kernel/audit.c
++++ linux-2.6.17.9/kernel/audit.c
+@@ -893,8 +893,7 @@ static inline int audit_expand(struct au
+ * will be called a second time. Currently, we assume that a printk
+ * can't format message larger than 1024 bytes, so we don't either.
+ */
+-static void audit_log_vformat(struct audit_buffer *ab, const char *fmt,
+- va_list args)
++void audit_log_vformat(struct audit_buffer *ab, const char *fmt, va_list args)
+ {
+ int len, avail;
+ struct sk_buff *skb;
+@@ -1096,3 +1095,6 @@ EXPORT_SYMBOL(audit_log_start);
+ EXPORT_SYMBOL(audit_log_end);
+ EXPORT_SYMBOL(audit_log_format);
+ EXPORT_SYMBOL(audit_log);
++EXPORT_SYMBOL_GPL(audit_log_vformat);
++EXPORT_SYMBOL_GPL(audit_log_untrustedstring);
++EXPORT_SYMBOL_GPL(audit_log_d_path);
diff --git a/sys-apps/apparmor-modules/files/digest-apparmor-modules-2.0_p20061013 b/sys-apps/apparmor-modules/files/digest-apparmor-modules-2.0_p20061013
new file mode 100644
index 0000000..9f05f65
--- /dev/null
+++ b/sys-apps/apparmor-modules/files/digest-apparmor-modules-2.0_p20061013
@@ -0,0 +1,3 @@
+MD5 919d64ba6c357a24a3c8e78ea0f94058 apparmor-external-module.tar.gz 112408
+RMD160 b333459588b0ccaaf36c6247555ff560daa3f95c apparmor-external-module.tar.gz 112408
+SHA256 70d66089a46f87f7fbaf504a3e40e4511e21c4a03345f0142315743bb9278d2f apparmor-external-module.tar.gz 112408
diff --git a/sys-apps/apparmor-modules/metadata.xml b/sys-apps/apparmor-modules/metadata.xml
new file mode 100644
index 0000000..5622ad5
--- /dev/null
+++ b/sys-apps/apparmor-modules/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>apparmor-modules</herd>
+<maintainer>
+ <email>zeypher@gentoo.org</email>
+ <name>Matthew Snelham</name>
+ <description>Primary Maintainer</description>
+</maintainer>
+<longdescription lang="en">Apparmor kernel modules</longdescription>
+</pkgmetadata>
diff --git a/sys-apps/apparmor-parser/Manifest b/sys-apps/apparmor-parser/Manifest
new file mode 100644
index 0000000..a7bb926
--- /dev/null
+++ b/sys-apps/apparmor-parser/Manifest
@@ -0,0 +1,28 @@
+AUX aaeventd 824 RMD160 032cce20f81b7b0e1f6f38cb6e1c392d70407ad5 SHA1 8adaa5e21867cab21c5fa907c974fb94cb280f70 SHA256 dbaa7fd1197388146c7a1a9b59553815fdcd0498510f7b7bf752af88f8eb1780
+MD5 379ee71ea946bd90c98e94e362bf9f2c files/aaeventd 824
+RMD160 032cce20f81b7b0e1f6f38cb6e1c392d70407ad5 files/aaeventd 824
+SHA256 dbaa7fd1197388146c7a1a9b59553815fdcd0498510f7b7bf752af88f8eb1780 files/aaeventd 824
+AUX apparmor 1090 RMD160 8d9781974318232731ef26881d7d57fc5991044c SHA1 2acee7585d1329bcb92cb8902ec36e1d0b94f5d6 SHA256 5c7b251473e7bf6a876e0d59d89cff3707bf5a6fcda0d9e95d50a463c8eddc8f
+MD5 7771cab70810b82185f0ed211f131018 files/apparmor 1090
+RMD160 8d9781974318232731ef26881d7d57fc5991044c files/apparmor 1090
+SHA256 5c7b251473e7bf6a876e0d59d89cff3707bf5a6fcda0d9e95d50a463c8eddc8f files/apparmor 1090
+AUX rc.apparmor.functions 11898 RMD160 12453790ffd14deed48b062f27d12bf2b2910ee4 SHA1 ec936b69474750dfd0205f451472e7d81b66f41a SHA256 d9cdb82c10bb5aa40c39d0f93c418a11020abc2d6df7154a831a71c816345618
+MD5 2adf748409596598872530ec06ef8717 files/rc.apparmor.functions 11898
+RMD160 12453790ffd14deed48b062f27d12bf2b2910ee4 files/rc.apparmor.functions 11898
+SHA256 d9cdb82c10bb5aa40c39d0f93c418a11020abc2d6df7154a831a71c816345618 files/rc.apparmor.functions 11898
+AUX rc.helper.functions 690 RMD160 d0b3b06a45645be5bc9d30b8ef19d518ac59940a SHA1 a58ba3ca5d59e099a3570ee21a62f5b4a6eb25fa SHA256 d065ac76a66d856716d77dd06b64478ed90c3b487d414cf8e33fc46ea77a723d
+MD5 5d9c000b99bd66788b988cb6d14b9b3d files/rc.helper.functions 690
+RMD160 d0b3b06a45645be5bc9d30b8ef19d518ac59940a files/rc.helper.functions 690
+SHA256 d065ac76a66d856716d77dd06b64478ed90c3b487d414cf8e33fc46ea77a723d files/rc.helper.functions 690
+DIST apparmor-parser-2.0-150.tar.gz 189171 RMD160 cf3299716fdf042cf326cf884d93fdcb5089dba6 SHA1 099ae08655ee2fc1d206166a7a4f8622637c02fc SHA256 678027c88cf69b42f8c7a36adfbe917489eb80800bc9eefe3b3f043bf01e6ee6
+EBUILD apparmor-parser-2.0_p150.ebuild 1536 RMD160 79a5cd3fa4d5f1b5c3477082df18069a14c436b9 SHA1 31485b5861a9c2d748b246800bd25698d78c9c6a SHA256 1b8aefcb2f1f3fea538ebb0ac28f27f6dba9bea364742a6758961ae5de7a634e
+MD5 f7a906c660203595696da4f7c9cea72d apparmor-parser-2.0_p150.ebuild 1536
+RMD160 79a5cd3fa4d5f1b5c3477082df18069a14c436b9 apparmor-parser-2.0_p150.ebuild 1536
+SHA256 1b8aefcb2f1f3fea538ebb0ac28f27f6dba9bea364742a6758961ae5de7a634e apparmor-parser-2.0_p150.ebuild 1536
+MISC metadata.xml 410 RMD160 f7a2e5bd002b14009087b531ca78a33729d03996 SHA1 da0799e2f50c414a10dc748f96f5ea700531b886 SHA256 eb83d68c65805b04931940b2886a033c3f7a92827a2e65947d1ce174c73f42a2
+MD5 5dd11f6e7b3832577a2cba63652d3ae9 metadata.xml 410
+RMD160 f7a2e5bd002b14009087b531ca78a33729d03996 metadata.xml 410
+SHA256 eb83d68c65805b04931940b2886a033c3f7a92827a2e65947d1ce174c73f42a2 metadata.xml 410
+MD5 f8b11c14f5b9a1945c17a5f94b338d2b files/digest-apparmor-parser-2.0_p150 271
+RMD160 a70e60c1977d77b9b90bca4617758a60e1449115 files/digest-apparmor-parser-2.0_p150 271
+SHA256 0d5798506f6e78b3f6f8bff3f1d8d98d43d040576e2edbe3c893ac8fa164847a files/digest-apparmor-parser-2.0_p150 271
diff --git a/sys-apps/apparmor-parser/apparmor-parser-2.0_p150.ebuild b/sys-apps/apparmor-parser/apparmor-parser-2.0_p150.ebuild
new file mode 100644
index 0000000..efb81ed
--- /dev/null
+++ b/sys-apps/apparmor-parser/apparmor-parser-2.0_p150.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit eutils perl-module toolchain-funcs
+
+MY_PV="${PV/_p/-}"
+MY_P="${PN}-${MY_PV}"
+MY_S="${WORKDIR}/${PN}-${PV/_p*/}"
+MONTH="October"
+
+DESCRIPTION="The userspace tools and init scripts to load security profiles into the apparmor kernel security module."
+HOMEPAGE="http://forge.novell.com/modules/xfmod/project/?apparmor"
+SRC_URI="http://forgeftp.novell.com/apparmor/Development%20-%20${MONTH}%20Snapshot/${MY_P}.tar.gz"
+
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE=""
+
+DEPEND="sys-libs/libapparmor
+ sys-libs/libcap
+ dev-libs/libpcre
+ sys-devel/bison
+ sys-devel/flex"
+
+RDEPEND="|| ( sys-kernel/apparmor-sources sys-apps/apparmor-modules )"
+
+src_unpack() {
+ unpack ${A}
+
+ ## apparmor-parser
+ cd ${MY_S}
+ # the Make.rules isn't needed for Gentoo
+ sed -i "s/^include Make.rules//g" Makefile
+ # Un-needed historical artifact, AND ugly non-LSB path
+ # This is mounted at /sys/kernel/security/subdomain, not /subdomain
+ sed -i 's/^.*\/subdomain//g' Makefile
+}
+
+src_compile() {
+ cd ${MY_S}
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" || die
+}
+
+src_install() {
+
+ ## apparmor-parser
+ cd ${MY_S}
+ make DESTDIR=${D} install || die
+
+ ## Init script and addtional files
+ doinitd ${FILESDIR}/apparmor
+ doinitd ${FILESDIR}/aaeventd
+ insopts -m0644
+ insinto /lib/apparmor
+ doins ${FILESDIR}/rc.helper.functions
+ doins ${FILESDIR}/rc.apparmor.functions
+
+ dodir /etc/apparmor.d/abstractions
+}
diff --git a/sys-apps/apparmor-parser/files/aaeventd b/sys-apps/apparmor-parser/files/aaeventd
new file mode 100755
index 0000000..efe9cc3
--- /dev/null
+++ b/sys-apps/apparmor-parser/files/aaeventd
@@ -0,0 +1,40 @@
+#!/sbin/runscript
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+APPARMOR_FUNCTIONS=/lib/apparmor/rc.apparmor.functions
+APPARMOR_HELPERS=/lib/apparmor/rc.helper.functions
+if [ -f "${APPARMOR_HELPERS}" -a -f "${APPARMOR_FUNCTIONS}" ]; then
+ source ${APPARMOR_HELPERS}
+ source ${APPARMOR_FUNCTIONS}
+else
+ eend 1 "Unable to find AppArmor initscript functions"
+fi
+
+depend() {
+ need apparmor
+ use logger dns
+}
+
+start() {
+ ebegin "Starting aaeventd (AppArmor Event Daemon)"
+
+ if [ "${APPARMOR_ENABLE_AAEVENTD}" = "no" ]; then
+ eend 1 " aaeventd disabled in ${APPARMOR_CONF}."
+ fi
+
+ start_sd_event
+ eend $waserror
+}
+
+stop() {
+ ebegin "Stopping aaeventd (AppArmor Event Daemon)"
+ stop_sd_event
+ eend $waserror
+}
+
+restart() {
+ srv_stop
+ srv_start
+}
diff --git a/sys-apps/apparmor-parser/files/apparmor b/sys-apps/apparmor-parser/files/apparmor
new file mode 100755
index 0000000..26daeca
--- /dev/null
+++ b/sys-apps/apparmor-parser/files/apparmor
@@ -0,0 +1,55 @@
+#!/sbin/runscript
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+#
+# rc.apparmor.gentoo: contribuited by Matthew Snelham
+# /etc/init.d/apparmor
+
+APPARMOR_FUNCTIONS=/lib/apparmor/rc.apparmor.functions
+APPARMOR_HELPERS=/lib/apparmor/rc.helper.functions
+if [ -f "${APPARMOR_HELPERS}" -a -f "${APPARMOR_FUNCTIONS}" ]; then
+ source ${APPARMOR_HELPERS}
+ source ${APPARMOR_FUNCTIONS}
+else
+ eend 1 "Unable to find AppArmor initscript functions"
+fi
+
+opts="${opts} reload status"
+
+depend() {
+ need localmount
+ ## AppArmor needs to be loaded before any other
+ ## (potentially protected) user-space services come up.
+ #before *
+}
+
+start() {
+ ebegin "Starting AppArmor"
+ subdomain_start
+ einfo "...AppArmor Start"
+ eend $waserror
+}
+
+stop() {
+ ebegin "Stopping AppArmor"
+ subdomain_stop
+ einfo "...AppArmor Stop"
+ eend $waserror
+}
+
+restart() {
+ svc_stop; svc_start
+}
+
+reload() {
+ ebegin "Restarting AppArmor"
+ subdomain_restart
+ eend $?
+}
+
+status() {
+ ebegin "Checking AppArmor Status"
+ subdomain_status
+ eend $?
+}
diff --git a/sys-apps/apparmor-parser/files/digest-apparmor-parser-2.0_p150 b/sys-apps/apparmor-parser/files/digest-apparmor-parser-2.0_p150
new file mode 100644
index 0000000..1b254d3
--- /dev/null
+++ b/sys-apps/apparmor-parser/files/digest-apparmor-parser-2.0_p150
@@ -0,0 +1,3 @@
+MD5 cbb25435e4353b10b5fdd96f80c854b9 apparmor-parser-2.0-150.tar.gz 189171
+RMD160 cf3299716fdf042cf326cf884d93fdcb5089dba6 apparmor-parser-2.0-150.tar.gz 189171
+SHA256 678027c88cf69b42f8c7a36adfbe917489eb80800bc9eefe3b3f043bf01e6ee6 apparmor-parser-2.0-150.tar.gz 189171
diff --git a/sys-apps/apparmor-parser/files/rc.apparmor.functions b/sys-apps/apparmor-parser/files/rc.apparmor.functions
new file mode 100644
index 0000000..890f3fb
--- /dev/null
+++ b/sys-apps/apparmor-parser/files/rc.apparmor.functions
@@ -0,0 +1,443 @@
+#!/bin/sh
+#
+# ----------------------------------------------------------------------
+# Copyright (c) 1999, 2000, 20001, 2004, 2005, NOVELL (All rights reserved)
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of version 2 of the GNU General Public
+# License published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, contact Novell, Inc.
+# ----------------------------------------------------------------------
+# rc.subdomain.functions by Steve Beattie
+# Modified for Gentoo Linux, by Matthew Snelham
+#
+# Modifications Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+
+# NOTE: rc.subdomain initscripts that source this file need to implement
+# the following set of functions:
+# sd_action
+# sd_log_info_msg
+# sd_log_success_msg
+# sd_log_warning_msg
+# sd_log_failure_msg
+
+
+CONFIG_DIR=/etc/apparmor
+MODULE=apparmor
+OLD_MODULE=subdomain
+if [ -f "${CONFIG_DIR}/${MODULE}.conf" ] ; then
+ APPARMOR_CONF="${CONFIG_DIR}/${MODULE}.conf"
+elif [ -f "${CONFIG_DIR}/${OLD_MODULE}.conf" ] ; then
+ APPARMOR_CONF="${CONFIG_DIR}/${OLD_MODULE}.conf"
+else
+ sd_log_warning_msg "Unable to find config file in ${CONFIG_DIR}, installation problem?"
+fi
+
+# Read configuration options from ${APPARMOR_CONF}, default is to
+# warn if subdomain won't load.
+APPARMOR_MODULE_PANIC="warn"
+SUBDOMAIN_ENABLE_OWLSM="no"
+APPARMOR_ENABLE_AAEVENTD="no"
+
+if [ -f "${APPARMOR_CONF}" ] ; then
+ source "${APPARMOR_CONF}"
+fi
+
+if [ -f /sbin/apparmor_parser ] ; then
+ PARSER=/sbin/apparmor_parser
+else
+ sd_log_failure_msg "Unable to find apparmor_parser, installation problem?"
+ exit 1
+fi
+
+# APPARMOR_DIR might be redefined in ${APPARMOR_CONF}
+if [ -d "${APPAMROR_DIR}" ] ; then
+ PROFILE_DIR=${APPARMOR_DIR}
+elif [ -d /etc/apparmor.d ] ; then
+ PROFILE_DIR=/etc/apparmor.d
+fi
+ABSTRACTIONS="-I${PROFILE_DIR}"
+AA_EV_BIN=/usr/sbin/aa-eventd
+AA_EV_PIDFILE=/var/run/aa-eventd.pid
+AA_STATUS=/usr/sbin/apparmor_status
+SD_EV_BIN=/usr/sbin/sd-event-dispatch.pl
+SD_EV_PIDFILE=/var/run/sd-event-dispatch.init.pid
+SD_STATUS=/usr/sbin/subdomain_status
+if grep -q securityfs /proc/filesystems ; then
+ SECURITYFS=/sys/kernel/security
+fi
+
+SUBDOMAINFS_MOUNTPOINT=$(grep subdomainfs /etc/fstab | \
+ sed -e 's|^[[:space:]]*[^[:space:]]\+[[:space:]]\+\(/[^[:space:]]*\)[[:space:]]\+subdomainfs.*$|\1|' 2> /dev/null)
+
+if [ -d "/var/lib/${MODULE}" ] ; then
+ APPARMOR_TMPDIR="/var/lib/${MODULE}"
+else
+ APPARMOR_TMPDIR="/tmp"
+fi
+
+
+function parse_profiles() {
+ # get parser arg
+ case "$1" in
+ load)
+ PARSER_ARGS="--add"
+ PARSER_MSG="Loading AppArmor profiles "
+ ;;
+ reload)
+ PARSER_ARGS="--replace"
+ PARSER_MSG="Reloading AppArmor profiles "
+ ;;
+ *)
+ exit 1
+ ;;
+ esac
+ sd_log_info_msg "$PARSER_MSG"
+
+ # run the parser on all of the apparmor profiles
+ if [ ! -f "$PARSER" ]; then
+ sd_log_failure_msg "$PARSER_MSG - AppArmor parser not found"
+ exit 1
+ fi
+
+ if [ ! -d "$PROFILE_DIR" ]; then
+ sd_log_failure_msg "$PARSER_MSG - Profile directory not found"
+ exit 1
+ fi
+
+ if [ "X" == "X$(ls $PROFILE_DIR/)" ]; then
+ sd_log_warning_msg "$PARSER_MSG - No profiles found"
+ exit 1
+ fi
+
+ for profile in $PROFILE_DIR/*; do
+ if [ "${profile%.rpmnew}" != "${profile}" -o \
+ "${profile%.rpmsave}" != "${profile}" -o \
+ "${profile%\~}" != "${profile}" ]
+ then
+ sd_log_warning_msg "Skipping profile $profile"
+ elif [ -f "${profile}" ] ; then
+ sd_action " Adding profile: `basename ${profile}`" $PARSER $ABSTRACTIONS $PARSER_ARGS ${profile}
+ if [ $? -ne 0 ]; then
+ waserror=1
+ fi
+ fi
+ done
+}
+
+function profiles_names_list() {
+ # run the parser on all of the apparmor profiles
+ TMPFILE=$1
+ if [ ! -f "$PARSER" ]; then
+ sd_log_failure_msg "AppArmor parser ($PARSER) not found"
+ exit 1
+ fi
+
+ if [ ! -d "$PROFILE_DIR" ]; then
+ sd_log_failure_msg "Profile directory ($PROFILE_DIR) not found"
+ exit 1
+ fi
+
+ for profile in $PROFILE_DIR/*; do
+ if [ "${profile%.rpmnew}" != "${profile}" -o \
+ "${profile%.rpmsave}" != "${profile}" -o \
+ "${profile%\~}" != "${profile}" ]
+ then
+ echo "nop" >/dev/null
+ elif [ -f "${profile}" ] ; then
+ LIST_ADD=$($PARSER $ABSTRACTIONS -N "$profile" | grep -v '\^')
+ if [ $? -eq 0 ]; then
+ echo "$LIST_ADD" >>$TMPFILE
+ fi
+ fi
+ done
+}
+
+function is_securityfs_mounted() {
+ if grep -q securityfs /proc/filesystems && grep -q securityfs /proc/mounts ; then
+ if [ -f "${SECURITYFS}/${MODULE}/profiles" ]; then
+ SFS_MOUNTPOINT="${SECURITYFS}/${MODULE}"
+ return 0
+ fi
+ fi
+ return 1
+}
+
+function mount_securityfs() {
+ if [ "X" != "X${SECURITYFS}" ]; then
+ if ! grep -q securityfs /proc/mounts ; then
+ sd_action "Mounting securityfs on ${SECURITYFS}" \
+ mount -t securityfs securityfs "${SECURITYFS}"
+ rc=$?
+ if [ -f "${SECURITYFS}/${MODULE}/profiles" ]; then
+ SFS_MOUNTPOINT="${SECURITYFS}/${MODULE}"
+ else
+ SFS_MOUNTPOINT="${SECURITYFS}/${MODULE}"
+ fi
+ return $rc
+ fi
+ fi
+ return 0
+}
+
+function unmount_securityfs() {
+ SUBDOMAINFS=$(grep subdomainfs /proc/mounts | cut -d" " -f2 2> /dev/null)
+ if [ "X" != "X${SUBDOMAINFS}" ]; then
+ sd_action "Unmounting securityfs" umount ${SUBDOMAINFS}
+ fi
+}
+
+function failstop_system() {
+ level=$(runlevel | cut -d" " -f2)
+ if [ $level -ne "1" ] ; then
+ sd_log_failure_msg "Could not start AppArmor. Changing to runlevel 1"
+ telinit 1;
+ return -1;
+ fi
+ sd_log_failure_msg "Could not start AppArmor."
+ return -1
+}
+
+function module_panic() {
+ # the module failed to load, determine what action should be taken
+
+ case "$APPARMOR_MODULE_PANIC" in
+ "warn"|"WARN") sd_log_failure_msg "Could not start AppArmor"
+ return -1 ;;
+ "panic"|"PANIC") failstop_system
+ rc=$?
+ return $rc ;;
+ *) sd_log_failure_msg "Invalid AppArmor module fail option"
+ return -1 ;;
+ esac
+}
+
+function load_module() {
+ if modinfo -F filename apparmor > /dev/null 2>&1 ; then
+ MODULE=apparmor
+ elif modinfo -F filename subdomain > /dev/null 2>&1 ; then
+ MODULE=subdomain
+ fi
+ if ! grep -qE "^(subdomain|apparmor)[[:space:]]" /proc/modules ; then
+ sd_action "Loading AppArmor module" /sbin/modprobe $MODULE $1
+ rc=$?
+ if [ $rc -ne 0 ] ; then
+ # we couldn't find the module
+ module_panic
+ rc=$?
+ if [ $rc -ne 0 ] ; then
+ exit $rc
+ fi
+ fi
+ fi
+}
+
+function start_sd_event() {
+ if [ -x "$AA_EV_BIN" -a "${APPARMOR_ENABLE_AAEVENTD}" = "yes" ] ; then
+ sd_action "Starting AppArmor Event daemon" startproc -f -p $AA_EV_PIDFILE $AA_EV_BIN -p $AA_EV_PIDFILE
+ elif [ -x "$SD_EV_BIN" -a "${APPARMOR_ENABLE_AAEVENTD}" = "yes" ] ; then
+ sd_action "Starting AppArmor Event daemon" startproc -f -p $SD_EV_PIDFILE $SD_EV_BIN -p $SD_EV_PIDFILE
+ fi
+}
+
+function stop_sd_event() {
+ if [ -x "$AA_EV_BIN" -a -f "$AA_EV_PIDFILE" ] ; then
+ sd_action "Shutting down AppArmor Event daemon" killproc -G -p $AA_EV_PIDFILE -INT $AA_EV_BIN
+ fi
+ if [ -f "$SD_EV_PIDFILE" ] ; then
+ sd_action "Shutting down AppArmor Event daemon" killproc -G -p $SD_EV_PIDFILE -INT $SD_EV_BIN
+ fi
+}
+
+function subdomain_start() {
+ if ! grep -qE "^(subdomain|apparmor)[[:space:]]" /proc/modules ; then
+ load_module
+ rc=$?
+ if [ $rc -ne 0 ] ; then
+ return $rc
+ fi
+ fi
+
+ if ! is_securityfs_mounted ; then
+ mount_securityfs
+ rc=$?
+ if [ $rc -ne 0 ] ; then
+ return $rc
+ fi
+ fi
+
+ if [ ! -w "$SFS_MOUNTPOINT/.load" ] ; then
+ sd_log_failure_msg "Loading AppArmor profiles - failed, Do you have the correct privileges?"
+ return 1
+ fi
+
+ configure_owlsm
+
+ if [ $(wc -l "$SFS_MOUNTPOINT/profiles" | awk '{print $1}') -eq 0 ] ; then
+ parse_profiles load
+ else
+ sd_log_warning_msg "Loading AppArmor profiles - AppArmor already loaded with profiles."
+ fi
+}
+
+function remove_profiles() {
+ # removing profiles as we directly read from subdomainfs
+ # doesn't work, since we are removing entries which screws up
+ # our position. Lets hope there are never enough profiles to
+ # overflow the variable
+ if ! is_securityfs_mounted ; then
+ sd_log_failure_msg "failed: is securityfs loaded?"
+ return 1
+ fi
+
+ if [ ! -w "$SFS_MOUNTPOINT/.remove" ] ; then
+ sd_log_failure_msg "failed: Do you have the correct privileges?"
+ return 1
+ fi
+
+ if [ ! -x "${PARSER}" ] ; then
+ sd_log_failure_msg "failed: unable to execute subdomain parser"
+ return 1
+ fi
+
+ retval=0
+ IFS=$'\n'
+ enforced_profiles=$(sed -e "s/ (\(enforce\|complain\))$//" "$SFS_MOUNTPOINT/profiles")
+ for profile in $enforced_profiles ; do
+ sd_action " Removing profile: ${profile}" sh -c "echo \"$profile { }\" | $PARSER -R"
+ rc=$?
+ if [ ${rc} -ne 0 ] ; then
+ retval=${rc}
+ fi
+ done
+ if [ ${retval} -ne 0 ] ; then
+ waserror=1
+ fi
+}
+
+function subdomain_stop() {
+ stop_sd_event
+ sd_log_info_msg "Unloading AppArmor profiles"
+ remove_profiles
+}
+
+function subdomain_kill() {
+ stop_sd_event
+ unmount_securityfs
+ if grep -qE "^apparmor[[:space:]]" /proc/modules ; then
+ MODULE=apparmor
+ elif grep -qE "^subdomain[[:space:]]" /proc/modules ; then
+ MODULE=subdomain
+ else
+ MODULE=apparmor
+ fi
+ sd_action "Unloading AppArmor modules" /sbin/modprobe -r $MODULE
+}
+
+function __subdomain_restart() {
+ if [ ! -w "$SFS_MOUNTPOINT/.load" ] ; then
+ sd_log_failure_msg "Loading AppArmor profiles - failed, Do you have the correct privileges?"
+ return 4
+ fi
+
+ configure_owlsm
+ parse_profiles reload
+ PNAMES_LIST=$(mktemp ${APPARMOR_TMPDIR}/tmp.XXXXXXXX)
+ profiles_names_list ${PNAMES_LIST}
+ MODULE_PLIST=$(mktemp ${APPARMOR_TMPDIR}/tmp.XXXXXXXX)
+ sed -e "s/ (\(enforce\|complain\))$//" "$SFS_MOUNTPOINT/profiles" | sort >"$MODULE_PLIST"
+ #profiles=$(cat $PNAMES_LIST | sort | comm -2 -3 "$MODULE_PLIST" -)
+ #for profile in $profiles ; do
+ IFS=$'\n' && for profile in $(cat $PNAMES_LIST | sort | comm -2 -3 "$MODULE_PLIST" -) ; do
+ echo "\"$profile\" {}" | $PARSER -R >/dev/null
+ done
+ rm "$MODULE_PLIST"
+ rm "$PNAMES_LIST"
+ return 0
+}
+
+function subdomain_restart() {
+ if ! grep -qE "^(subdomain|apparmor)[[:space:]]" /proc/modules ; then
+ subdomain_start
+ rc=$?
+ return $rc
+ fi
+
+ if ! is_securityfs_mounted ; then
+ mount_securityfs
+ rc=$?
+ if [ $rc -ne 0 ] ; then
+ return $rc
+ fi
+ fi
+
+ __subdomain_restart
+ rc=$?
+ return $rc
+}
+
+function subdomain_try_restart() {
+ if ! grep -qE "^(subdomain|apparmor)[[:space:]]" /proc/modules ; then
+ return 1
+ fi
+
+ if ! is_securityfs_mounted ; then
+ return 1
+ fi
+
+ __subdomain_restart
+ rc=$?
+ return $rc
+}
+
+function subdomain_debug() {
+ subdomain_kill
+ load_module "subdomain_debug=1"
+ mount_securityfs
+ configure_owlsm
+ parse_profiles load
+}
+
+function configure_owlsm () {
+ if [ "${SUBDOMAIN_ENABLE_OWLSM}" = "yes" -a -f ${SFS_MOUNTPOINT}/control/owlsm ] ; then
+ # Sigh, the "sh -c" is necessary for the SuSE sd_action
+ # and it can't be abstracted out as a seperate function, as
+ # that breaks under RedHat's action, which needs a
+ # binary to invoke.
+ sd_action "Enabling OWLSM extension" sh -c "echo -n \"1\" > \"${SFS_MOUNTPOINT}/control/owlsm\""
+ elif [ -f "${SFS_MOUNTPOINT}/control/owlsm" ] ; then
+ sd_action "Disabling OWLSM extension" sh -c "echo -n \"0\" > \"${SFS_MOUNTPOINT}/control/owlsm\""
+ fi
+}
+
+function subdomain_status () {
+ if test -x ${AA_STATUS} ; then
+ ${AA_STATUS} --verbose
+ return $?
+ fi
+ if test -x ${SD_STATUS} ; then
+ ${SD_STATUS} --verbose
+ return $?
+ fi
+ if ! grep -qE "^(subdomain|apparmor)[[:space:]]" /proc/modules ; then
+ sd_log_failure_msg "AppArmor not loaded."
+ rc=1
+ else
+ sd_log_success_msg "AppArmor module enabled."
+ rc=0
+ fi
+ sd_log_warning_msg "Install the apparmor-utils package to receive more detailed"
+ sd_log_warning_msg "status information here (or examine ${SFS_MOUNTPOINT} directly)."
+
+ return $rc
+}
diff --git a/sys-apps/apparmor-parser/files/rc.helper.functions b/sys-apps/apparmor-parser/files/rc.helper.functions
new file mode 100644
index 0000000..692414e
--- /dev/null
+++ b/sys-apps/apparmor-parser/files/rc.helper.functions
@@ -0,0 +1,47 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+waserror=0
+
+function sd_action() {
+ MSG=$1
+ shift
+ #echo "ACTION: $*"
+ $* > /dev/null
+ rc=$?
+ if [ $rc -ne 0 ] ; then
+ sd_log_failure_msg $"$MSG"
+ else
+ sd_log_success_msg $"$MSG"
+ fi
+ return $rc
+}
+
+function sd_log_info_msg() {
+ einfo " $*"
+}
+
+function sd_log_warning_msg() {
+ ewarn " $*"
+}
+
+function sd_log_success_msg() {
+ einfo " $*"
+ eend 0
+}
+
+function sd_log_failure_msg() {
+ waserror=1
+ einfo " $*"
+ eend 1
+}
+
+function startproc() {
+ /sbin/start-stop-daemon --start -p $3 --exec $4 -- -p $3
+}
+
+function killproc() {
+ /sbin/start-stop-daemon --stop -p $3
+}
+
diff --git a/sys-apps/apparmor-parser/metadata.xml b/sys-apps/apparmor-parser/metadata.xml
new file mode 100644
index 0000000..865f70e
--- /dev/null
+++ b/sys-apps/apparmor-parser/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>apparmor</herd>
+<maintainer>
+ <email>zeypher@gentoo.org</email>
+ <name>Matthew Snelham</name>
+ <description>Primary Maintainer</description>
+</maintainer>
+<longdescription lang="en">Core Apparmor package containing the userspace policy parser.</longdescription>
+</pkgmetadata>
diff --git a/sys-apps/apparmor-utils/Manifest b/sys-apps/apparmor-utils/Manifest
new file mode 100644
index 0000000..c0c2991
--- /dev/null
+++ b/sys-apps/apparmor-utils/Manifest
@@ -0,0 +1,12 @@
+DIST apparmor-utils-2.0-142.tar.gz 87393 RMD160 306371feded05fd6fc0daeb418aa85ed0a07f95b SHA1 7686dbc1e5a1df0f7fba9fff95d6d692372e3360 SHA256 27e1d9716bcfa82ebb12163e59734b1ce3a8598b9af3031b04498142e872c6b8
+EBUILD apparmor-utils-2.0_p142-r1.ebuild 1260 RMD160 631ac93e3646d66983062d4d6b1eb1a163a7baeb SHA1 beaf3437248fd7a0f674660c41918cbc39fc0f0e SHA256 d4cd1d0b40bac3228c7b4cf228cb77dafaf382da42df9e80f90512a4a503c360
+MD5 e2195719cfea1c67110253ec4bbee803 apparmor-utils-2.0_p142-r1.ebuild 1260
+RMD160 631ac93e3646d66983062d4d6b1eb1a163a7baeb apparmor-utils-2.0_p142-r1.ebuild 1260
+SHA256 d4cd1d0b40bac3228c7b4cf228cb77dafaf382da42df9e80f90512a4a503c360 apparmor-utils-2.0_p142-r1.ebuild 1260
+MISC metadata.xml 412 RMD160 172fbf1951b2a2bd7a308b24f1241e5f816efcbe SHA1 710f9d726e2f9e0b8e3be497fb2ddae2ea81c6f9 SHA256 9504a74c434840a7f233f71cd6cd679aef3a9d709f7b7580b6d92a7ea905610c
+MD5 2ba9587ad445b45a9443eee7cb2f1f8f metadata.xml 412
+RMD160 172fbf1951b2a2bd7a308b24f1241e5f816efcbe metadata.xml 412
+SHA256 9504a74c434840a7f233f71cd6cd679aef3a9d709f7b7580b6d92a7ea905610c metadata.xml 412
+MD5 fa93f53f0da00233ecf5f96ca3205461 files/digest-apparmor-utils-2.0_p142-r1 265
+RMD160 fb95c24dd19ede19556c35a65085736241a5a868 files/digest-apparmor-utils-2.0_p142-r1 265
+SHA256 9e4f3666c0beaa61748c798a3937b529cc8110901f5405bdc498f4668c8d6eb9 files/digest-apparmor-utils-2.0_p142-r1 265
diff --git a/sys-apps/apparmor-utils/apparmor-utils-2.0_p142-r1.ebuild b/sys-apps/apparmor-utils/apparmor-utils-2.0_p142-r1.ebuild
new file mode 100644
index 0000000..711cee7
--- /dev/null
+++ b/sys-apps/apparmor-utils/apparmor-utils-2.0_p142-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit eutils perl-module toolchain-funcs
+
+#MY_PN="apparmor-utils"
+MY_PV="${PV/_p/-}"
+MY_P="${PN}-${MY_PV}"
+MY_S="${WORKDIR}/${PN}-${PV/_p*/}"
+MONTH="October"
+
+DESCRIPTION="AppArmor utilities for profile creation and management."
+HOMEPAGE="http://forge.novell.com/modules/xfmod/project/?apparmor"
+SRC_URI="http://forgeftp.novell.com/apparmor/Development%20-%20${MONTH}%20Snapshot/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE="vim-syntax"
+
+DEPEND="sys-libs/libapparmor
+ sys-apps/apparmor-parser
+ sys-libs/libcap
+ dev-libs/libpcre
+ dev-lang/perl
+ perl-core/Test-Harness
+ perl-core/Getopt-Long
+ dev-perl/DBI
+ dev-perl/DBD-SQLite
+ dev-perl/TimeDate
+ dev-perl/File-Tail
+ dev-perl/Locale-gettext"
+RDEPEND="${DEPEND}
+ app-doc/apparmor-docs
+ vim-syntax? (app-vim/apparmor-syntax)"
+
+
+src_unpack() {
+ unpack ${A}
+ cd ${MY_S}
+
+ # Correct path for logger
+ sed -i "s/\/bin\/logger/\/usr\/bin\/logger/g" genprof
+}
+
+src_compile() {
+ cd ${MY_S}
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" || die
+}
+
+src_install() {
+ cd ${MY_S}
+ perlinfo
+ make DESTDIR=${D} PERLDIR="${D}/${VENDOR_LIB}/Immunix" install || die
+}
diff --git a/sys-apps/apparmor-utils/files/digest-apparmor-utils-2.0_p142-r1 b/sys-apps/apparmor-utils/files/digest-apparmor-utils-2.0_p142-r1
new file mode 100644
index 0000000..3829459
--- /dev/null
+++ b/sys-apps/apparmor-utils/files/digest-apparmor-utils-2.0_p142-r1
@@ -0,0 +1,3 @@
+MD5 b2447c84edc2df843b7bc4baa8a1eb2c apparmor-utils-2.0-142.tar.gz 87393
+RMD160 306371feded05fd6fc0daeb418aa85ed0a07f95b apparmor-utils-2.0-142.tar.gz 87393
+SHA256 27e1d9716bcfa82ebb12163e59734b1ce3a8598b9af3031b04498142e872c6b8 apparmor-utils-2.0-142.tar.gz 87393
diff --git a/sys-apps/apparmor-utils/metadata.xml b/sys-apps/apparmor-utils/metadata.xml
new file mode 100644
index 0000000..c36bb1b
--- /dev/null
+++ b/sys-apps/apparmor-utils/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>apparmor</herd>
+<maintainer>
+ <email>zeypher@gentoo.org</email>
+ <name>Matthew Snelham</name>
+ <description>Primary Maintainer</description>
+</maintainer>
+<longdescription lang="en">Apparmor utilities allowing for profile creation and mangement.</longdescription>
+</pkgmetadata>
diff --git a/sys-kernel/apparmor-sources/Manifest b/sys-kernel/apparmor-sources/Manifest
new file mode 100644
index 0000000..07060a4
--- /dev/null
+++ b/sys-kernel/apparmor-sources/Manifest
@@ -0,0 +1,26 @@
+DIST apparmor-kernel-patches-2.6.17.9.tar.gz 231231 RMD160 762d4b59aa508cfd82ebbeba4822ffb0551f5888 SHA1 bb754f57340ce90e25bb18be7030776ee4b9e823 SHA256 0884cd7bfdff4505fd5271ca68b72f74b352d209321ef60dc81620b0539f0ec7
+DIST apparmor-kernel-patches-2.6.18.tar.gz 231072 RMD160 f734125d986dcb3aec371f0e24126a5473d5637f SHA1 e6136d224d58ad90fd174d3c03290942644e5c45 SHA256 91224ff1f45de306c0720a5680a8f883888b52f296b0de24c63ec02668782b63
+DIST genpatches-2.6.17-1.base.tar.bz2 3337 RMD160 f9b5621fed8fcfee7da697d89097842287b41b24 SHA1 308e3daec11899f03103b5dcd2bfcff7e116c52c SHA256 2208b72729dce6daef7dc5700192aec0ae17327c794681621d2123f0c483ae21
+DIST genpatches-2.6.17-1.extras.tar.bz2 138704 RMD160 14b17e02b7893e6b023bee9e1b40f4bc85a30f05 SHA1 e671dbc29239116e627aea3d87ff7aefd8b5ca00 SHA256 fa10ec7d3d74c8bf57fb3bd01c33f83dcca3c1e4cd4601937cc2ef904cce1dfe
+DIST genpatches-2.6.18-1.base.tar.bz2 2397 RMD160 1b02d9e5adba7a9a17f85691f312ee2c870c9a48 SHA1 790186d9d44c358d05489cdff417beab03124708 SHA256 e87db440591d48f74b8d50f47bde55a1652c969626befa94aba48cee57aa5da8
+DIST genpatches-2.6.18-1.extras.tar.bz2 147040 RMD160 f62b371d522fa8978cee4e809baea364ed8e804a SHA1 e98309b0203bf2f41e8efe1cd396dcfd5aec483a SHA256 080b19f98ffa8f5edbccabfa9dd4ac845ecc1b21c7fba761ad3d011893117b01
+DIST linux-2.6.17.tar.bz2 41272919 RMD160 26aad30c9a6610665c6c7d62401d79bf56a6a699 SHA1 0605c975b9dead2af31a3decf09dd4138fadaf2b SHA256 ab0f647d52f124958439517df9e1ae0efda90cdb851f59f522fa1749f1d87d58
+DIST linux-2.6.18.tar.bz2 41863580 RMD160 f92283f956880676bfb1f1d5288325461e4e02e7 SHA1 178f7d5bb3af0978d42b37651b8753323c7129c2 SHA256 c95280ff6c5d2a17788f7cc582d23ae8a9a7ba3f202ec6e4238eaadfce7c163d
+EBUILD apparmor-sources-2.6.17.ebuild 1233 RMD160 70a5b495ed179b57e825b99b26751725a6f12c8d SHA1 30744886818231b12ee378450aae835bb2ab35f9 SHA256 ddb3a0c0fa067b2ef1c32ad12925ee96c6467660e8f0ac896c56f8202ce40e5c
+MD5 e52d364ef1955d471e087f21fb2d3e3c apparmor-sources-2.6.17.ebuild 1233
+RMD160 70a5b495ed179b57e825b99b26751725a6f12c8d apparmor-sources-2.6.17.ebuild 1233
+SHA256 ddb3a0c0fa067b2ef1c32ad12925ee96c6467660e8f0ac896c56f8202ce40e5c apparmor-sources-2.6.17.ebuild 1233
+EBUILD apparmor-sources-2.6.18.ebuild 1229 RMD160 f3a233d92a3b085426e64129a46d4eeae762be45 SHA1 5d4206a1521d63c4df44a472f49933cce9fe82cc SHA256 d97f7607222cb43076f73e9a549384d55dbfc6470ac5be6d3ea0d5047c5fff68
+MD5 9aeafb7f5c77d3a0841c4e9fb71eeb5f apparmor-sources-2.6.18.ebuild 1229
+RMD160 f3a233d92a3b085426e64129a46d4eeae762be45 apparmor-sources-2.6.18.ebuild 1229
+SHA256 d97f7607222cb43076f73e9a549384d55dbfc6470ac5be6d3ea0d5047c5fff68 apparmor-sources-2.6.18.ebuild 1229
+MISC metadata.xml 478 RMD160 2af1df29e25d445a331442e40f46bbf9e085f6a5 SHA1 5bf60b631d0399a323c079aa4b62e20cd45fcd7c SHA256 feaeb80cb6b8e5239d0473fe8f7065b2a57aa82a1a724146fc57f630c97106bd
+MD5 9216c68b4a2c064d97f42125f8bbb787 metadata.xml 478
+RMD160 2af1df29e25d445a331442e40f46bbf9e085f6a5 metadata.xml 478
+SHA256 feaeb80cb6b8e5239d0473fe8f7065b2a57aa82a1a724146fc57f630c97106bd metadata.xml 478
+MD5 fb69ab075d009cf49c155c082fe75937 files/digest-apparmor-sources-2.6.17 1099
+RMD160 4c24baa45ae97f17ed503bfc4f0ed6ae8db520b4 files/digest-apparmor-sources-2.6.17 1099
+SHA256 a2efb919c008a7777773d5faed808c1b64b7e5dd97408131904897c5154520ce files/digest-apparmor-sources-2.6.17 1099
+MD5 e08285915ab6ffc164d7178cd2d01c59 files/digest-apparmor-sources-2.6.18 1093
+RMD160 2b50e09bbfb91bbb0b46974e7b22de322d3b8520 files/digest-apparmor-sources-2.6.18 1093
+SHA256 71f364dffa2f917a0ce28c423627808f06dd547bc7d3d0599ea13e6a28d94693 files/digest-apparmor-sources-2.6.18 1093
diff --git a/sys-kernel/apparmor-sources/apparmor-sources-2.6.17.ebuild b/sys-kernel/apparmor-sources/apparmor-sources-2.6.17.ebuild
new file mode 100644
index 0000000..93fc471
--- /dev/null
+++ b/sys-kernel/apparmor-sources/apparmor-sources-2.6.17.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+ETYPE="sources"
+K_WANT_GENPATCHES="base extras"
+K_GENPATCHES_VER="1"
+inherit eutils kernel-2
+detect_version
+detect_arch
+
+KEYWORDS="~x86 ~amd64"
+HOMEPAGE="http://forge.novell.com/modules/xfmod/project/?apparmor"
+DESCRIPTION="Full sources to provide the required AppArmor modules and kernel hooks. Based on the gentoo-sources tree."
+
+MONTH="October"
+UP_KPVER="2.6.17.9"
+
+AA_SRC="http://forgeftp.novell.com/apparmor/Development%20-%20${MONTH}%20Snapshot/apparmor-kernel-patches-${UP_KPVER}.tar.gz"
+
+SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI} ${AA_SRC}"
+
+src_unpack() {
+ unpack "apparmor-kernel-patches-${UP_KPVER}.tar.gz"
+
+ kernel-2_src_unpack
+
+ EPATCH_FORCE="yes"
+ EPATCH_OPTS=""
+ epatch ${WORKDIR}/${UP_KPVER}/current/apparmor-2.6.17.9-v154-fullseries.patch
+}
+
+pkg_postinst() {
+ postinst_sources
+
+ einfo
+ einfo "For more info on this patchset, and how to report problems, see:"
+ einfo "${HOMEPAGE}"
+ einfo
+ einfo "Make sure that your kernel configuration file is set with:"
+ einfo " CONFIG_SECURITY=y"
+ einfo " CONFIG_SECURITY_APPARMOR=m"
+ einfo "Without these, apparmor will not function."
+ einfo
+}
diff --git a/sys-kernel/apparmor-sources/apparmor-sources-2.6.18.ebuild b/sys-kernel/apparmor-sources/apparmor-sources-2.6.18.ebuild
new file mode 100644
index 0000000..e173057
--- /dev/null
+++ b/sys-kernel/apparmor-sources/apparmor-sources-2.6.18.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+ETYPE="sources"
+K_WANT_GENPATCHES="base extras"
+K_GENPATCHES_VER="1"
+inherit eutils kernel-2
+detect_version
+detect_arch
+
+KEYWORDS="~x86 ~amd64"
+HOMEPAGE="http://forge.novell.com/modules/xfmod/project/?apparmor"
+DESCRIPTION="Full sources to provide the required AppArmor modules and kernel hooks. Based on the gentoo-sources tree."
+
+MONTH="October"
+UP_KPVER="2.6.18"
+
+AA_SRC="http://forgeftp.novell.com/apparmor/Development%20-%20${MONTH}%20Snapshot/apparmor-kernel-patches-${UP_KPVER}.tar.gz"
+
+SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI} ${AA_SRC}"
+
+src_unpack() {
+ unpack "apparmor-kernel-patches-${UP_KPVER}.tar.gz"
+
+ kernel-2_src_unpack
+
+ EPATCH_FORCE="yes"
+ EPATCH_OPTS=""
+ epatch ${WORKDIR}/${UP_KPVER}/current/apparmor-2.6.18-v154-fullseries.patch
+}
+
+pkg_postinst() {
+ postinst_sources
+
+ einfo
+ einfo "For more info on this patchset, and how to report problems, see:"
+ einfo "${HOMEPAGE}"
+ einfo
+ einfo "Make sure that your kernel configuration file is set with:"
+ einfo " CONFIG_SECURITY=y"
+ einfo " CONFIG_SECURITY_APPARMOR=m"
+ einfo "Without these, apparmor will not function."
+ einfo
+}
diff --git a/sys-kernel/apparmor-sources/files/digest-apparmor-sources-2.6.17 b/sys-kernel/apparmor-sources/files/digest-apparmor-sources-2.6.17
new file mode 100644
index 0000000..5fb4599
--- /dev/null
+++ b/sys-kernel/apparmor-sources/files/digest-apparmor-sources-2.6.17
@@ -0,0 +1,12 @@
+MD5 a6a5ccde0c291921c155a74da36463a2 apparmor-kernel-patches-2.6.17.9.tar.gz 231231
+RMD160 762d4b59aa508cfd82ebbeba4822ffb0551f5888 apparmor-kernel-patches-2.6.17.9.tar.gz 231231
+SHA256 0884cd7bfdff4505fd5271ca68b72f74b352d209321ef60dc81620b0539f0ec7 apparmor-kernel-patches-2.6.17.9.tar.gz 231231
+MD5 cd5d67dc1d3514ec240497efff0f8726 genpatches-2.6.17-1.base.tar.bz2 3337
+RMD160 f9b5621fed8fcfee7da697d89097842287b41b24 genpatches-2.6.17-1.base.tar.bz2 3337
+SHA256 2208b72729dce6daef7dc5700192aec0ae17327c794681621d2123f0c483ae21 genpatches-2.6.17-1.base.tar.bz2 3337
+MD5 0b6385904bccbd9d6c5508565e5c76ff genpatches-2.6.17-1.extras.tar.bz2 138704
+RMD160 14b17e02b7893e6b023bee9e1b40f4bc85a30f05 genpatches-2.6.17-1.extras.tar.bz2 138704
+SHA256 fa10ec7d3d74c8bf57fb3bd01c33f83dcca3c1e4cd4601937cc2ef904cce1dfe genpatches-2.6.17-1.extras.tar.bz2 138704
+MD5 37ddefe96625502161f075b9d907f21e linux-2.6.17.tar.bz2 41272919
+RMD160 26aad30c9a6610665c6c7d62401d79bf56a6a699 linux-2.6.17.tar.bz2 41272919
+SHA256 ab0f647d52f124958439517df9e1ae0efda90cdb851f59f522fa1749f1d87d58 linux-2.6.17.tar.bz2 41272919
diff --git a/sys-kernel/apparmor-sources/files/digest-apparmor-sources-2.6.18 b/sys-kernel/apparmor-sources/files/digest-apparmor-sources-2.6.18
new file mode 100644
index 0000000..fed15c6
--- /dev/null
+++ b/sys-kernel/apparmor-sources/files/digest-apparmor-sources-2.6.18
@@ -0,0 +1,12 @@
+MD5 523e91619920dea824a35bf813db1b67 apparmor-kernel-patches-2.6.18.tar.gz 231072
+RMD160 f734125d986dcb3aec371f0e24126a5473d5637f apparmor-kernel-patches-2.6.18.tar.gz 231072
+SHA256 91224ff1f45de306c0720a5680a8f883888b52f296b0de24c63ec02668782b63 apparmor-kernel-patches-2.6.18.tar.gz 231072
+MD5 0c1cd82748c5d2207fa034e32686bca7 genpatches-2.6.18-1.base.tar.bz2 2397
+RMD160 1b02d9e5adba7a9a17f85691f312ee2c870c9a48 genpatches-2.6.18-1.base.tar.bz2 2397
+SHA256 e87db440591d48f74b8d50f47bde55a1652c969626befa94aba48cee57aa5da8 genpatches-2.6.18-1.base.tar.bz2 2397
+MD5 f565ec95a1f2ac1b675f9a126c27c3c1 genpatches-2.6.18-1.extras.tar.bz2 147040
+RMD160 f62b371d522fa8978cee4e809baea364ed8e804a genpatches-2.6.18-1.extras.tar.bz2 147040
+SHA256 080b19f98ffa8f5edbccabfa9dd4ac845ecc1b21c7fba761ad3d011893117b01 genpatches-2.6.18-1.extras.tar.bz2 147040
+MD5 296a6d150d260144639c3664d127d174 linux-2.6.18.tar.bz2 41863580
+RMD160 f92283f956880676bfb1f1d5288325461e4e02e7 linux-2.6.18.tar.bz2 41863580
+SHA256 c95280ff6c5d2a17788f7cc582d23ae8a9a7ba3f202ec6e4238eaadfce7c163d linux-2.6.18.tar.bz2 41863580
diff --git a/sys-kernel/apparmor-sources/metadata.xml b/sys-kernel/apparmor-sources/metadata.xml
new file mode 100644
index 0000000..c9780ac
--- /dev/null
+++ b/sys-kernel/apparmor-sources/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>apparmor</herd>
+<maintainer>
+ <email>zeypher@gentoo.org</email>
+ <name>Matthew Snelham</name>
+ <description>Primary Maintainer</description>
+</maintainer>
+<longdescription lang="en">Patched kernel sources containing the proper symbol exports, and the full apparmor module suite. Based on gentoo-sources kernel.</longdescription>
+</pkgmetadata>
diff --git a/sys-libs/libapparmor/Manifest b/sys-libs/libapparmor/Manifest
new file mode 100644
index 0000000..b32a476
--- /dev/null
+++ b/sys-libs/libapparmor/Manifest
@@ -0,0 +1,12 @@
+DIST libapparmor-2.0-132.tar.gz 16744 RMD160 c174a530fadb8c33f2858160f2cdcf5b76289940 SHA1 953851b4079ff864bd9679c2f62b18c424662cb8 SHA256 b4ac4f208b1db08339effaf3362da0e3b240e1b6126b8a367d54006b23ae1b17
+EBUILD libapparmor-2.0_p132.ebuild 832 RMD160 b0dc473a86806f47adb4f7d18ad2b084764f2971 SHA1 a322be109eeb3bb78333b59183704b20c54c0960 SHA256 69087039002aa33d329eb1dbeab51b3fb638dde18afc1c3bf0683cd261b5df51
+MD5 29b073603effc975e61720b86b04644f libapparmor-2.0_p132.ebuild 832
+RMD160 b0dc473a86806f47adb4f7d18ad2b084764f2971 libapparmor-2.0_p132.ebuild 832
+SHA256 69087039002aa33d329eb1dbeab51b3fb638dde18afc1c3bf0683cd261b5df51 libapparmor-2.0_p132.ebuild 832
+MISC metadata.xml 450 RMD160 d535fe106e302ca44b57bb84c908879597d95391 SHA1 d1ab915420fa81974724847d4e1dbbcb4b6a2cd6 SHA256 ee835dc483681371f197a3a46241f0fc7ce54869b2578132c268a4dc171cf015
+MD5 61f0a7a9d59cc054a3542313d1515744 metadata.xml 450
+RMD160 d535fe106e302ca44b57bb84c908879597d95391 metadata.xml 450
+SHA256 ee835dc483681371f197a3a46241f0fc7ce54869b2578132c268a4dc171cf015 metadata.xml 450
+MD5 9913e4e3a663787501f86fe85c989cc6 files/digest-libapparmor-2.0_p132 256
+RMD160 efca71ce6079f9be02ca6bec4d0a3edea523f00a files/digest-libapparmor-2.0_p132 256
+SHA256 4d5fbabd865d64ab586b53e90f1fb7ad0ca8ac03dcb69e93fa6a105b7bdf8a9a files/digest-libapparmor-2.0_p132 256
diff --git a/sys-libs/libapparmor/files/digest-libapparmor-2.0_p132 b/sys-libs/libapparmor/files/digest-libapparmor-2.0_p132
new file mode 100644
index 0000000..20a2b08
--- /dev/null
+++ b/sys-libs/libapparmor/files/digest-libapparmor-2.0_p132
@@ -0,0 +1,3 @@
+MD5 6f62215d4e8d54ac1f79fd8d39c3bbd3 libapparmor-2.0-132.tar.gz 16744
+RMD160 c174a530fadb8c33f2858160f2cdcf5b76289940 libapparmor-2.0-132.tar.gz 16744
+SHA256 b4ac4f208b1db08339effaf3362da0e3b240e1b6126b8a367d54006b23ae1b17 libapparmor-2.0-132.tar.gz 16744
diff --git a/sys-libs/libapparmor/libapparmor-2.0_p132.ebuild b/sys-libs/libapparmor/libapparmor-2.0_p132.ebuild
new file mode 100644
index 0000000..fdd5285
--- /dev/null
+++ b/sys-libs/libapparmor/libapparmor-2.0_p132.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit eutils toolchain-funcs
+
+MY_P="${P/_p/-}"
+MONTH="October"
+DESCRIPTION="Primary support library and headers for AppArmor userspace"
+HOMEPAGE="http://forge.novell.com/modules/xfmod/project/?apparmor"
+SRC_URI="http://forgeftp.novell.com/apparmor/Development%20-%20${MONTH}%20Snapshot/${MY_P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE=""
+
+DEPEND="virtual/libc"
+RDEPEND="${DEPEND}"
+
+MY_S=${WORKDIR}/${P/_*/}
+
+src_unpack() {
+ unpack ${A}
+
+ cd ${MY_S}
+ # the Make.rules isn't needed for Gentoo
+ sed -i "s/^include Make.rules//g" Makefile
+}
+
+src_compile() {
+ cd ${MY_S}
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" || die
+}
+
+src_install() {
+ cd ${MY_S}
+ make DESTDIR="${D}" install || die
+}
diff --git a/sys-libs/libapparmor/metadata.xml b/sys-libs/libapparmor/metadata.xml
new file mode 100644
index 0000000..64682f5
--- /dev/null
+++ b/sys-libs/libapparmor/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>apparmor</herd>
+<maintainer>
+ <email>zeypher@gentoo.org</email>
+ <name>Matthew Snelham</name>
+ <description>Primary Maintainer</description>
+</maintainer>
+<longdescription lang="en">Apparmor shared libraries. Packaged separately due to license difference from primary apparmor code.</longdescription>
+</pkgmetadata>