1 Submitted By: Robert Connolly <robert at linuxfromscratch dot org> (ashes)
3 Initial Package Version: 2.5
4 Upstream Status: Not submitted - PaX specific. Will not be accepted upstream.
5 Origin: http://www.gtlib.cc.gatech.edu/pub/gentoo/gentoo-x86-portage/sys-libs/ \
6 glibc/files/2.3.3/glibc-2.3.3_pre20040117-pt_pax.diff
7 Description: This is needed for Pax. http://pax.grsecurity.net/
9 http://www.linuxfromscratch.org/hlfs/
11 diff -Naur glibc-2.5.orig/elf/elf.h glibc-2.5/elf/elf.h
12 --- glibc-2.5.orig/elf/elf.h 2006-07-10 21:54:02.000000000 +0000
13 +++ glibc-2.5/elf/elf.h 2006-10-11 21:30:02.000000000 +0000
15 #define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */
16 #define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */
17 #define PT_GNU_RELRO 0x6474e552 /* Read-only after relocation */
18 +#define PT_PAX_FLAGS 0x65041580 /* Indicates PaX flag markings */
19 #define PT_LOSUNW 0x6ffffffa
20 #define PT_SUNWBSS 0x6ffffffa /* Sun Specific segment */
21 #define PT_SUNWSTACK 0x6ffffffb /* Stack segment */
23 #define PF_X (1 << 0) /* Segment is executable */
24 #define PF_W (1 << 1) /* Segment is writable */
25 #define PF_R (1 << 2) /* Segment is readable */
26 +#define PF_PAGEEXEC (1 << 4) /* Enable PAGEEXEC */
27 +#define PF_NOPAGEEXEC (1 << 5) /* Disable PAGEEXEC */
28 +#define PF_SEGMEXEC (1 << 6) /* Enable SEGMEXEC */
29 +#define PF_NOSEGMEXEC (1 << 7) /* Disable SEGMEXEC */
30 +#define PF_MPROTECT (1 << 8) /* Enable MPROTECT */
31 +#define PF_NOMPROTECT (1 << 9) /* Disable MPROTECT */
32 +#define PF_RANDEXEC (1 << 10) /* Enable RANDEXEC */
33 +#define PF_NORANDEXEC (1 << 11) /* Disable RANDEXEC */
34 +#define PF_EMUTRAMP (1 << 12) /* Enable EMUTRAMP */
35 +#define PF_NOEMUTRAMP (1 << 13) /* Disable EMUTRAMP */
36 +#define PF_RANDMMAP (1 << 14) /* Enable RANDMMAP */
37 +#define PF_NORANDMMAP (1 << 15) /* Disable RANDMMAP */
38 #define PF_MASKOS 0x0ff00000 /* OS-specific */
39 #define PF_MASKPROC 0xf0000000 /* Processor-specific */