diff options
author | 2012-07-26 16:29:52 +0000 | |
---|---|---|
committer | 2012-07-26 16:29:52 +0000 | |
commit | 61a1389068f52dc841d1cb291538d6f620ef9af2 (patch) | |
tree | f50b1ec11ef25b74805203713bbab9294b671a48 /emacs/24.1 | |
parent | Fix compilation with glibc-2.16. (diff) | |
download | emacs-patches-61a1389068f52dc841d1cb291538d6f620ef9af2.tar.gz emacs-patches-61a1389068f52dc841d1cb291538d6f620ef9af2.tar.bz2 emacs-patches-61a1389068f52dc841d1cb291538d6f620ef9af2.zip |
Run paxctl only if the toolchain supports PT_PAX_FLAGS, bug 426394.emacs-23.4-patches-5
Diffstat (limited to 'emacs/24.1')
-rw-r--r-- | emacs/24.1/02_all_paxctl.patch | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/emacs/24.1/02_all_paxctl.patch b/emacs/24.1/02_all_paxctl.patch index 02c00cb..1f659e6 100644 --- a/emacs/24.1/02_all_paxctl.patch +++ b/emacs/24.1/02_all_paxctl.patch @@ -1,19 +1,29 @@ -Disable memory randomization for the temacs binary via PaX flags -if the paxctl utility is available. +On grsecurity/PaX systems, unexec will fail due to a gap between +the bss section and the heap. This can be prevented by disabling +memory randomization in temacs with "paxctl -r". https://bugs.gentoo.org/411439 +https://bugs.gentoo.org/426394 http://debbugs.gnu.org/11398 --- emacs-24.1-orig/configure.in +++ emacs-24.1/configure.in -@@ -756,6 +756,8 @@ - AC_PATH_PROG(INSTALL_INFO, install-info,:, /sbin) +@@ -757,6 +757,16 @@ dnl Don't use GZIP, which is used by gzip for additional parameters. AC_PATH_PROG(GZIP_PROG, gzip) -+AC_PATH_PROG(PAXCTL, paxctl,, -+ [$PATH$PATH_SEPARATOR/sbin$PATH_SEPARATOR/usr/sbin]) ++if test $opsys = gnu-linux; then ++ AC_PATH_PROG(PAXCTL, paxctl,, ++ [$PATH$PATH_SEPARATOR/sbin$PATH_SEPARATOR/usr/sbin]) ++ if test "X$PAXCTL" != X; then ++ AC_MSG_CHECKING([whether binaries have a PT_PAX_FLAGS header]) ++ AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], ++ [if $PAXCTL -v conftest$EXEEXT >/dev/null 2>&1; then AC_MSG_RESULT(yes) ++ else AC_MSG_RESULT(no); PAXCTL=""; fi]) ++ fi ++fi ## Need makeinfo >= 4.6 (?) to build the manuals. + AC_PATH_PROG(MAKEINFO, makeinfo, no) --- emacs-24.1-orig/src/Makefile.in +++ emacs-24.1/src/Makefile.in @@ -116,6 +116,12 @@ |