aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony G. Basile <blueness@gentoo.org>2014-07-30 15:40:36 -0400
committerAnthony G. Basile <blueness@gentoo.org>2014-07-30 15:40:36 -0400
commitc206aab32dce7db944996628f160a3dcbaeb6c6f (patch)
tree808d1e0bd0877f367182b1ffc072fa9c4f9a5da0
parentconfigure.ac: replace tabs with 4 spaces (diff)
downloadelfix-c206aab32dce7db944996628f160a3dcbaeb6c6f.tar.gz
elfix-c206aab32dce7db944996628f160a3dcbaeb6c6f.tar.bz2
elfix-c206aab32dce7db944996628f160a3dcbaeb6c6f.zip
Split misc/ into misc/ for production and poc/ for experimental stuff.
-rw-r--r--README32
-rw-r--r--pocs/change-interp/.gitignore (renamed from misc/change-interp/.gitignore)0
-rw-r--r--pocs/change-interp/Makefile (renamed from misc/change-interp/Makefile)0
-rw-r--r--pocs/change-interp/change-interp.c (renamed from misc/change-interp/change-interp.c)0
-rw-r--r--pocs/eclass/pax-utils.eclass (renamed from misc/pax-utils.eclass)8
-rw-r--r--pocs/elf-manipulate/.gitignore (renamed from misc/elf-manipulate/.gitignore)0
-rw-r--r--pocs/elf-manipulate/Makefile (renamed from misc/elf-manipulate/Makefile)0
-rw-r--r--pocs/elf-manipulate/clear-dt-path.c (renamed from misc/elf-manipulate/clear-dt-path.c)0
-rw-r--r--pocs/elf-manipulate/parse-elf.c (renamed from misc/elf-manipulate/parse-elf.c)0
-rw-r--r--pocs/elf-manipulate/print-sections.c (renamed from misc/elf-manipulate/print-sections.c)0
-rw-r--r--pocs/elf-manipulate/remove-ptpax.c (renamed from misc/elf-manipulate/remove-ptpax.c)0
-rwxr-xr-xpocs/ldd/ldd.py (renamed from misc/ldd/ldd.py)0
-rwxr-xr-xpocs/link-maps/link_map.py (renamed from misc/link-maps/link_map.py)0
-rwxr-xr-xpocs/link-maps/link_map_test (renamed from misc/link-maps/link_map_test)0
-rw-r--r--pocs/mangle-paxflags/.gitignore (renamed from misc/mangle-paxflags/.gitignore)0
-rw-r--r--pocs/mangle-paxflags/Makefile (renamed from misc/mangle-paxflags/Makefile)0
-rw-r--r--pocs/mangle-paxflags/bad-mmap.c (renamed from misc/mangle-paxflags/bad-mmap.c)0
-rw-r--r--pocs/mangle-paxflags/mangle-paxflags.c (renamed from misc/mangle-paxflags/mangle-paxflags.c)0
-rwxr-xr-xpocs/mangle-paxflags/poc.sh (renamed from misc/mangle-paxflags/poc.sh)0
-rw-r--r--pocs/paxmark-libs/Makefile.am (renamed from misc/paxmark-libs/Makefile.am)0
-rwxr-xr-xpocs/paxmark-libs/autogen.sh (renamed from misc/paxmark-libs/autogen.sh)0
-rw-r--r--pocs/paxmark-libs/configure.ac (renamed from misc/paxmark-libs/configure.ac)0
-rw-r--r--pocs/paxmark-libs/libmypax.c (renamed from misc/paxmark-libs/libmypax.c)0
-rw-r--r--pocs/paxmark-libs/testdlpax.c (renamed from misc/paxmark-libs/testdlpax.c)0
-rw-r--r--pocs/paxmark-libs/testpax.c (renamed from misc/paxmark-libs/testpax.c)0
-rwxr-xr-xpocs/revdep-pax-ng/revdep-pax-ng (renamed from misc/revdep-pax-ng)0
26 files changed, 36 insertions, 4 deletions
diff --git a/README b/README
index 354a4c7..21ec330 100644
--- a/README
+++ b/README
@@ -1,3 +1,35 @@
Utilities to modify Elf binaries to work with PaX hardened kernel.
+There are several utilities in here, to help you navigate:
+
+Directories src/ scripts/ doc/ test/ are integral parts of the elfix package.
+These are distributed as one source tarball with `make dist` run in the top
+diretory.
+ * paxctl-ng - C utility for doing XT_PAX and/or PT_PAX markings.
+ * pypaxctl - python utility for doing XT_PAX and/or PT_PAX markings. Depends on pax.so.
+ * migrate-pax - python utility for migrating from XT_PAX flags to PT_PAX. Depends on pax.so.
+ * revdep-pax - python utility for mapping ELF libraries to/from the ELF objects that link
+ against them and migrating PAX flags between them. Depends on pax.so.
+ * paxmark.sh - Bash script that does intelligent pax-marking like the pax-utils.eclass.
+ * paxmodule.c - C code for python module pax.so
+
+Directories under misc/ are independant packages from one another and from the
+elfix package. They are NOT distributed with elfix when running `make dist` in
+the top directory. Each directory supplies its own build system.
+ * install-xattr - C wrapper to coreutils' install which preserves file system extended attributes.
+
+Directory pocs/ - Very experimental stuff.
+ * change-interp - C utility to the dynamic linker, INTERP as reported by `readelf -l`.
+ * eclass - a local copy of the pax-utils.eclass
+ * elf-manipulate - some dirty utilities to
+ * clear-dt-path.c - remove RPATH and RUNPATH
+ * parse-elf.c - print out the ELF header, sections headers and program headers.
+ * print-sections.c - print out the contents of the section headers
+ * remove-ptpax.c - change a PT_PAX_FLAGS phdr to PT_NULL
+ * ldd - python script to reproduce ldd's output using pyelftools
+ * link-maps - use VDB information to produce a full linkage map of the system
+ * mangle-paxflags - printout old EI_PAX flags and PT_PAX flags
+ * paxmark-libs - test how PAX flags migrate from libraries and plugins to their consumers
+ * revdep-pax-ng - same as revdep-pax but using information obtained from `ldd` and
+ not VDB information.
diff --git a/misc/change-interp/.gitignore b/pocs/change-interp/.gitignore
index 2460008..2460008 100644
--- a/misc/change-interp/.gitignore
+++ b/pocs/change-interp/.gitignore
diff --git a/misc/change-interp/Makefile b/pocs/change-interp/Makefile
index c5d8fcb..c5d8fcb 100644
--- a/misc/change-interp/Makefile
+++ b/pocs/change-interp/Makefile
diff --git a/misc/change-interp/change-interp.c b/pocs/change-interp/change-interp.c
index 3c21c26..3c21c26 100644
--- a/misc/change-interp/change-interp.c
+++ b/pocs/change-interp/change-interp.c
diff --git a/misc/pax-utils.eclass b/pocs/eclass/pax-utils.eclass
index 547d6ac..719e15b 100644
--- a/misc/pax-utils.eclass
+++ b/pocs/eclass/pax-utils.eclass
@@ -1,6 +1,6 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/pax-utils.eclass,v 1.21 2013/05/18 13:43:20 zorry Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/pax-utils.eclass,v 1.22 2014/07/11 08:21:58 ulm Exp $
# @ECLASS: pax-utils.eclass
# @MAINTAINER:
@@ -22,8 +22,8 @@
# to contain either "PT", "XT" or "none". The default is to attempt both
# PT_PAX and XATTR_PAX.
-if [[ ${___ECLASS_ONCE_PAX_UTILS} != "recur -_+^+_- spank" ]] ; then
-___ECLASS_ONCE_PAX_UTILS="recur -_+^+_- spank"
+if [[ -z ${_PAX_UTILS_ECLASS} ]]; then
+_PAX_UTILS_ECLASS=1
# @ECLASS-VARIABLE: PAX_MARKINGS
# @DESCRIPTION:
diff --git a/misc/elf-manipulate/.gitignore b/pocs/elf-manipulate/.gitignore
index 2460008..2460008 100644
--- a/misc/elf-manipulate/.gitignore
+++ b/pocs/elf-manipulate/.gitignore
diff --git a/misc/elf-manipulate/Makefile b/pocs/elf-manipulate/Makefile
index 265cf25..265cf25 100644
--- a/misc/elf-manipulate/Makefile
+++ b/pocs/elf-manipulate/Makefile
diff --git a/misc/elf-manipulate/clear-dt-path.c b/pocs/elf-manipulate/clear-dt-path.c
index ae5ff9a..ae5ff9a 100644
--- a/misc/elf-manipulate/clear-dt-path.c
+++ b/pocs/elf-manipulate/clear-dt-path.c
diff --git a/misc/elf-manipulate/parse-elf.c b/pocs/elf-manipulate/parse-elf.c
index 1ba8024..1ba8024 100644
--- a/misc/elf-manipulate/parse-elf.c
+++ b/pocs/elf-manipulate/parse-elf.c
diff --git a/misc/elf-manipulate/print-sections.c b/pocs/elf-manipulate/print-sections.c
index ba8d4ee..ba8d4ee 100644
--- a/misc/elf-manipulate/print-sections.c
+++ b/pocs/elf-manipulate/print-sections.c
diff --git a/misc/elf-manipulate/remove-ptpax.c b/pocs/elf-manipulate/remove-ptpax.c
index ba441a5..ba441a5 100644
--- a/misc/elf-manipulate/remove-ptpax.c
+++ b/pocs/elf-manipulate/remove-ptpax.c
diff --git a/misc/ldd/ldd.py b/pocs/ldd/ldd.py
index 447614e..447614e 100755
--- a/misc/ldd/ldd.py
+++ b/pocs/ldd/ldd.py
diff --git a/misc/link-maps/link_map.py b/pocs/link-maps/link_map.py
index 5b0e822..5b0e822 100755
--- a/misc/link-maps/link_map.py
+++ b/pocs/link-maps/link_map.py
diff --git a/misc/link-maps/link_map_test b/pocs/link-maps/link_map_test
index 9a1af8e..9a1af8e 100755
--- a/misc/link-maps/link_map_test
+++ b/pocs/link-maps/link_map_test
diff --git a/misc/mangle-paxflags/.gitignore b/pocs/mangle-paxflags/.gitignore
index 2460008..2460008 100644
--- a/misc/mangle-paxflags/.gitignore
+++ b/pocs/mangle-paxflags/.gitignore
diff --git a/misc/mangle-paxflags/Makefile b/pocs/mangle-paxflags/Makefile
index 9c2789d..9c2789d 100644
--- a/misc/mangle-paxflags/Makefile
+++ b/pocs/mangle-paxflags/Makefile
diff --git a/misc/mangle-paxflags/bad-mmap.c b/pocs/mangle-paxflags/bad-mmap.c
index 04df26d..04df26d 100644
--- a/misc/mangle-paxflags/bad-mmap.c
+++ b/pocs/mangle-paxflags/bad-mmap.c
diff --git a/misc/mangle-paxflags/mangle-paxflags.c b/pocs/mangle-paxflags/mangle-paxflags.c
index 5e41cd1..5e41cd1 100644
--- a/misc/mangle-paxflags/mangle-paxflags.c
+++ b/pocs/mangle-paxflags/mangle-paxflags.c
diff --git a/misc/mangle-paxflags/poc.sh b/pocs/mangle-paxflags/poc.sh
index f268f33..f268f33 100755
--- a/misc/mangle-paxflags/poc.sh
+++ b/pocs/mangle-paxflags/poc.sh
diff --git a/misc/paxmark-libs/Makefile.am b/pocs/paxmark-libs/Makefile.am
index 3e87910..3e87910 100644
--- a/misc/paxmark-libs/Makefile.am
+++ b/pocs/paxmark-libs/Makefile.am
diff --git a/misc/paxmark-libs/autogen.sh b/pocs/paxmark-libs/autogen.sh
index 917d1a7..917d1a7 100755
--- a/misc/paxmark-libs/autogen.sh
+++ b/pocs/paxmark-libs/autogen.sh
diff --git a/misc/paxmark-libs/configure.ac b/pocs/paxmark-libs/configure.ac
index bedcbbb..bedcbbb 100644
--- a/misc/paxmark-libs/configure.ac
+++ b/pocs/paxmark-libs/configure.ac
diff --git a/misc/paxmark-libs/libmypax.c b/pocs/paxmark-libs/libmypax.c
index a53b62e..a53b62e 100644
--- a/misc/paxmark-libs/libmypax.c
+++ b/pocs/paxmark-libs/libmypax.c
diff --git a/misc/paxmark-libs/testdlpax.c b/pocs/paxmark-libs/testdlpax.c
index fde3245..fde3245 100644
--- a/misc/paxmark-libs/testdlpax.c
+++ b/pocs/paxmark-libs/testdlpax.c
diff --git a/misc/paxmark-libs/testpax.c b/pocs/paxmark-libs/testpax.c
index dd1c0b7..dd1c0b7 100644
--- a/misc/paxmark-libs/testpax.c
+++ b/pocs/paxmark-libs/testpax.c
diff --git a/misc/revdep-pax-ng b/pocs/revdep-pax-ng/revdep-pax-ng
index 7767563..7767563 100755
--- a/misc/revdep-pax-ng
+++ b/pocs/revdep-pax-ng/revdep-pax-ng