Green shading in the line number column means the source is part of the translation unit, red means it is conditionally excluded. Highlighted line numbers link to the translation unit page. Highlighted macros link to the macro page.
1: #ifndef _UAPI_LINUX_PERSONALITY_H 2: #define _UAPI_LINUX_PERSONALITY_H 3: 4: 5: /* 6: * Flags for bug emulation. 7: * 8: * These occupy the top three bytes. 9: */ 10: enum { 11: UNAME26 = 0x0020000, 12: ADDR_NO_RANDOMIZE = 0x0040000, /* disable randomization of VA space */ 13: FDPIC_FUNCPTRS = 0x0080000, /* userspace function ptrs point to descriptors 14: * (signal handling) 15: */ 16: MMAP_PAGE_ZERO = 0x0100000, 17: ADDR_COMPAT_LAYOUT = 0x0200000, 18: READ_IMPLIES_EXEC = 0x0400000, 19: ADDR_LIMIT_32BIT = 0x0800000, 20: SHORT_INODE = 0x1000000, 21: WHOLE_SECONDS = 0x2000000, 22: STICKY_TIMEOUTS = 0x4000000, 23: ADDR_LIMIT_3GB = 0x8000000, 24: }; 25: 26: /* 27: * Security-relevant compatibility flags that must be 28: * cleared upon setuid or setgid exec: 29: */ 30: #define PER_CLEAR_ON_SETID (READ_IMPLIES_EXEC | \ 31: ADDR_NO_RANDOMIZE | \ 32: ADDR_COMPAT_LAYOUT | \ 33: MMAP_PAGE_ZERO) 34: 35: /* 36: * Personality types. 37: * 38: * These go in the low byte. Avoid using the top bit, it will 39: * conflict with error returns. 40: */ 41: enum { 42: PER_LINUX = 0x0000, 43: PER_LINUX_32BIT = 0x0000 | ADDR_LIMIT_32BIT, 44: PER_LINUX_FDPIC = 0x0000 | FDPIC_FUNCPTRS, 45: PER_SVR4 = 0x0001 | STICKY_TIMEOUTS | MMAP_PAGE_ZERO, 46: PER_SVR3 = 0x0002 | STICKY_TIMEOUTS | SHORT_INODE, 47: PER_SCOSVR3 = 0x0003 | STICKY_TIMEOUTS | 48: WHOLE_SECONDS | SHORT_INODE, 49: PER_OSR5 = 0x0003 | STICKY_TIMEOUTS | WHOLE_SECONDS, 50: PER_WYSEV386 = 0x0004 | STICKY_TIMEOUTS | SHORT_INODE, 51: PER_ISCR4 = 0x0005 | STICKY_TIMEOUTS, 52: PER_BSD = 0x0006, 53: PER_SUNOS = 0x0006 | STICKY_TIMEOUTS, 54: PER_XENIX = 0x0007 | STICKY_TIMEOUTS | SHORT_INODE, 55: PER_LINUX32 = 0x0008, 56: PER_LINUX32_3GB = 0x0008 | ADDR_LIMIT_3GB, 57: PER_IRIX32 = 0x0009 | STICKY_TIMEOUTS,/* IRIX5 32-bit */ 58: PER_IRIXN32 = 0x000a | STICKY_TIMEOUTS,/* IRIX6 new 32-bit */ 59: PER_IRIX64 = 0x000b | STICKY_TIMEOUTS,/* IRIX6 64-bit */ 60: PER_RISCOS = 0x000c, 61: PER_SOLARIS = 0x000d | STICKY_TIMEOUTS, 62: PER_UW7 = 0x000e | STICKY_TIMEOUTS | MMAP_PAGE_ZERO, 63: PER_OSF4 = 0x000f, /* OSF/1 v4 */ 64: PER_HPUX = 0x0010, 65: PER_MASK = 0x00ff, 66: }; 67: 68: 69: #endif /* _UAPI_LINUX_PERSONALITY_H */ 70: