libffi: backport incorrect detection of selinux
authorSergei Trofimovich <slyfox@community.haskell.org>
Tue, 8 Feb 2011 21:21:40 +0000 (21:21 +0000)
committerSergei Trofimovich <slyfox@community.haskell.org>
Tue, 8 Feb 2011 21:21:40 +0000 (21:21 +0000)
commit7bb9d7760929d1a0c4bbf37531919fe8169a80c7
treede8af3a164326a977743cd3c433c0d9fad66befa
parentfc2fdad3793706eeea4c8083551f00c2fb6ab812
libffi: backport incorrect detection of selinux

This patch unbreaks ghci on GRSEC kernels hardened with
TPE (Trusted Path Execution) protection.

TPE forbids mmap('rwx') files opened for writes:
    fd = open (a_file_in_tmp, O_RDWR);
    mmap (...,               PROT_READ | PROT_WRITE | PROT_EXEC, fd);

while allows anonymous RWX mappings:
    mmap (...MAP_ANONYMOUS , PROT_READ | PROT_WRITE | PROT_EXEC, -1);

Thanks to klondike for finding it out.

The result of a horrible typo.

(unreleased yet) upstream also has the patch:

http://github.com/atgreen/libffi/commit/eaf444eabc4c78703c0f98ac0197b1619c1b1bef
libffi/ghc.mk
libffi/libffi.selinux-detection-3.0.8.patch [new file with mode: 0644]