personality.h raw

   1  #ifndef _PERSONALITY_H
   2  #define _PERSONALITY_H
   3  
   4  #ifdef __cplusplus
   5  extern "C" {
   6  #endif
   7  
   8  #define UNAME26            0x0020000
   9  #define ADDR_NO_RANDOMIZE  0x0040000
  10  #define FDPIC_FUNCPTRS     0x0080000
  11  #define MMAP_PAGE_ZERO     0x0100000
  12  #define ADDR_COMPAT_LAYOUT 0x0200000
  13  #define READ_IMPLIES_EXEC  0x0400000
  14  #define ADDR_LIMIT_32BIT   0x0800000
  15  #define SHORT_INODE        0x1000000
  16  #define WHOLE_SECONDS      0x2000000
  17  #define STICKY_TIMEOUTS    0x4000000
  18  #define ADDR_LIMIT_3GB     0x8000000
  19  
  20  #define PER_LINUX 0
  21  #define PER_LINUX_32BIT ADDR_LIMIT_32BIT
  22  #define PER_LINUX_FDPIC FDPIC_FUNCPTRS
  23  #define PER_SVR4 (1 | STICKY_TIMEOUTS | MMAP_PAGE_ZERO)
  24  #define PER_SVR3 (2 | STICKY_TIMEOUTS | SHORT_INODE)
  25  #define PER_SCOSVR3 (3 | STICKY_TIMEOUTS | WHOLE_SECONDS | SHORT_INODE)
  26  #define PER_OSR5 (3 | STICKY_TIMEOUTS | WHOLE_SECONDS)
  27  #define PER_WYSEV386 (4 | STICKY_TIMEOUTS | SHORT_INODE)
  28  #define PER_ISCR4 (5 | STICKY_TIMEOUTS)
  29  #define PER_BSD 6
  30  #define PER_SUNOS (6 | STICKY_TIMEOUTS)
  31  #define PER_XENIX (7 | STICKY_TIMEOUTS | SHORT_INODE)
  32  #define PER_LINUX32 8
  33  #define PER_LINUX32_3GB (8 | ADDR_LIMIT_3GB)
  34  #define PER_IRIX32 (9 | STICKY_TIMEOUTS)
  35  #define PER_IRIXN32 (0xa | STICKY_TIMEOUTS)
  36  #define PER_IRIX64 (0x0b | STICKY_TIMEOUTS)
  37  #define PER_RISCOS 0xc
  38  #define PER_SOLARIS (0xd | STICKY_TIMEOUTS)
  39  #define PER_UW7 (0xe | STICKY_TIMEOUTS | MMAP_PAGE_ZERO)
  40  #define PER_OSF4 0xf
  41  #define PER_HPUX 0x10
  42  #define PER_MASK 0xff
  43  
  44  int personality(unsigned long);
  45  
  46  #ifdef __cplusplus
  47  }
  48  #endif
  49  #endif
  50