summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /app-admin/paxtest
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'app-admin/paxtest')
-rw-r--r--app-admin/paxtest/Manifest1
-rw-r--r--app-admin/paxtest/files/paxtest-0.9.13-Makefile.patch21
-rw-r--r--app-admin/paxtest/metadata.xml25
-rw-r--r--app-admin/paxtest/paxtest-0.9.13.ebuild80
4 files changed, 127 insertions, 0 deletions
diff --git a/app-admin/paxtest/Manifest b/app-admin/paxtest/Manifest
new file mode 100644
index 000000000000..7db4620501fb
--- /dev/null
+++ b/app-admin/paxtest/Manifest
@@ -0,0 +1 @@
+DIST paxtest-0.9.13.tar.gz 34451 SHA256 b1f9122e45927a05ea65ec9c3b8dad92377245e546c0eff08b0f8ad9ba6e4c75 SHA512 dc375f7b0c9dd3efcf22adae6cbf0724ae505c6b3a1c55de223665c454650f86014098a45226b3fc8e4b89d528152aaf458aa3b7d1c9ffc86b3be52f2af69d60 WHIRLPOOL 6d5066f759d01e7efd6b4e872bb9d9e1a7341f82f379e77dc8ae77139fa533abe004bdda9f8a35d90a1d2f4c8917d8ba4b1c56e65401522ccc1e99f99a158070
diff --git a/app-admin/paxtest/files/paxtest-0.9.13-Makefile.patch b/app-admin/paxtest/files/paxtest-0.9.13-Makefile.patch
new file mode 100644
index 000000000000..1f8a99a689b2
--- /dev/null
+++ b/app-admin/paxtest/files/paxtest-0.9.13-Makefile.patch
@@ -0,0 +1,21 @@
+diff -Naur paxtest-0.9.13.orig/Makefile paxtest-0.9.13/Makefile
+--- paxtest-0.9.13.orig/Makefile 2014-12-09 19:53:48.000000000 -0500
++++ paxtest-0.9.13/Makefile 2014-12-12 13:07:55.715099100 -0500
+@@ -52,12 +52,14 @@
+ endif
+
+ # for some reason the .c files need it, else GNU_STACK=RWE
+-OPT_FLAGS := -O2 $(ASFLAGS)
++# Gentoo's CFLAGS should be honored
++OPT_FLAGS := $(CFLAGS) $(ASFLAGS)
+ PTHREAD := -lpthread
+ # define stripping of binaries/libs here, or set these on make's commandline,
+ # else you'll loose the chpax flags!
+-LDFLAGS :=
+-SHLDFLAGS :=
++# Gentoo's LDFLAGS should be honored
++LDFLAGS := $(LDFLAGS)
++SHLDFLAGS := $(LDFLAGS)
+ ifndef RUNDIR
+ RUNDIR := .
+ endif
diff --git a/app-admin/paxtest/metadata.xml b/app-admin/paxtest/metadata.xml
new file mode 100644
index 000000000000..04475d3958f3
--- /dev/null
+++ b/app-admin/paxtest/metadata.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>hardened</herd>
+ <maintainer>
+ <email>blueness@gentoo.org</email>
+ <description>Primary Maintainer</description>
+ </maintainer>
+ <longdescription>Test suite for the PaX kernel patch
+ PaX is a Linux kernel patch which adds much stricter control on how memory
+ is being used by applications. A normal Linux kernel leaves the control to the
+ application and does not implement any enforcement. Especially buffer overflow
+ attacks benefit from the absense of kernel enforced memory control. PaX tries
+ to do its best to enforce this control of memory used by applications, thereby
+ making it harder to succesfully exploit buffer overflows.
+
+ Furthermore, it adds several randomisations, which also make it harder for
+ buffer overflows to succeed.
+
+ The test programs test all this functionality, but not all PaX functionality
+ is covered.
+
+ For more information about PaX, see http://pageexec.virtualave.net/.
+ </longdescription>
+</pkgmetadata>
diff --git a/app-admin/paxtest/paxtest-0.9.13.ebuild b/app-admin/paxtest/paxtest-0.9.13.ebuild
new file mode 100644
index 000000000000..117f41f52cbc
--- /dev/null
+++ b/app-admin/paxtest/paxtest-0.9.13.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="PaX regression test suite"
+HOMEPAGE="http://pax.grsecurity.net"
+SRC_URI="http://grsecurity.net/~spender/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+ sys-apps/paxctl"
+
+# EI_PAX flags are not strip safe.
+RESTRICT="strip"
+
+QA_EXECSTACK="usr/bin/${PN}
+ usr/$(get_libdir)/${PN}/getamap
+ usr/$(get_libdir)/${PN}/shlibtest2.so
+ usr/$(get_libdir)/${PN}/execheap
+ usr/$(get_libdir)/${PN}/mprotstack
+ usr/$(get_libdir)/${PN}/mprotdata
+ usr/$(get_libdir)/${PN}/mprotheap
+ usr/$(get_libdir)/${PN}/randshlib
+ usr/$(get_libdir)/${PN}/randmain1
+ usr/$(get_libdir)/${PN}/getshlib
+ usr/$(get_libdir)/${PN}/randheap2
+ usr/$(get_libdir)/${PN}/rettofunc2x
+ usr/$(get_libdir)/${PN}/shlibdata
+ usr/$(get_libdir)/${PN}/shlibbss
+ usr/$(get_libdir)/${PN}/getmain1
+ usr/$(get_libdir)/${PN}/execdata
+ usr/$(get_libdir)/${PN}/execstack
+ usr/$(get_libdir)/${PN}/rettofunc2
+ usr/$(get_libdir)/${PN}/mprotshdata
+ usr/$(get_libdir)/${PN}/getstack1
+ usr/$(get_libdir)/${PN}/randamap
+ usr/$(get_libdir)/${PN}/rettofunc1x
+ usr/$(get_libdir)/${PN}/getheap2
+ usr/$(get_libdir)/${PN}/getheap1
+ usr/$(get_libdir)/${PN}/randheap1
+ usr/$(get_libdir)/${PN}/getstack2
+ usr/$(get_libdir)/${PN}/getmain2
+ usr/$(get_libdir)/${PN}/rettofunc1
+ usr/$(get_libdir)/${PN}/randstack2
+ usr/$(get_libdir)/${PN}/mprotshbss
+ usr/$(get_libdir)/${PN}/randstack1
+ usr/$(get_libdir)/${PN}/mprotanon
+ usr/$(get_libdir)/${PN}/randmain2
+ usr/$(get_libdir)/${PN}/writetext
+ usr/$(get_libdir)/${PN}/mprotbss
+ usr/$(get_libdir)/${PN}/anonmap
+ usr/$(get_libdir)/${PN}/execbss
+ usr/$(get_libdir)/${PN}/shlibtest.so"
+
+src_prepare() {
+ mv Makefile.psm Makefile
+ epatch "${FILESDIR}/${P}-Makefile.patch"
+ sed -i "s/^CC := gcc/CC := $(tc-getCC)/" Makefile
+ sed -i "s/^LD := ld/LD := $(tc-getLD)/" Makefile
+}
+
+src_compile() {
+ emake RUNDIR=/usr/$(get_libdir)/paxtest || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" BINDIR=/usr/bin RUNDIR=/usr/$(get_libdir)/paxtest install || die
+
+ newman debian/manpage.1.ex paxtest.1 || die
+ dodoc ChangeLog README || die
+}