Print this page
7029 want per-process exploit mitigation features (secflags)
7030 want basic address space layout randomization (aslr)
7031 noexec_user_stack should be a secflag
7032 want a means to forbid mappings around NULL.


  73 #define RT_ATTR         9
  74 #define RT_DATASET      10
  75 #define RT_LIMITPRIV    11      /* really a property, but for info ... */
  76 #define RT_BOOTARGS     12      /* really a property, but for info ... */
  77 #define RT_BRAND        13      /* really a property, but for info ... */
  78 #define RT_DCPU         14
  79 #define RT_MCAP         15
  80 #define RT_MAXLWPS      16      /* really a rctl alias property, but for info */
  81 #define RT_MAXSHMMEM    17      /* really a rctl alias property, but for info */
  82 #define RT_MAXSHMIDS    18      /* really a rctl alias property, but for info */
  83 #define RT_MAXMSGIDS    19      /* really a rctl alias property, but for info */
  84 #define RT_MAXSEMIDS    20      /* really a rctl alias property, but for info */
  85 #define RT_SHARES       21      /* really a rctl alias property, but for info */
  86 #define RT_SCHED        22      /* really a property, but for info ... */
  87 #define RT_IPTYPE       23      /* really a property, but for info ... */
  88 #define RT_PCAP         24
  89 #define RT_HOSTID       25      /* really a property, but for info ... */
  90 #define RT_ADMIN        26
  91 #define RT_FS_ALLOWED   27
  92 #define RT_MAXPROCS     28      /* really a rctl alias property, but for info */

  93 
  94 #define RT_MIN          RT_UNKNOWN
  95 #define RT_MAX          RT_MAXPROCS
  96 
  97 /* property types: increment PT_MAX when expanding this list */
  98 #define PT_UNKNOWN      0
  99 #define PT_ZONENAME     1
 100 #define PT_ZONEPATH     2
 101 #define PT_AUTOBOOT     3
 102 #define PT_POOL         4
 103 #define PT_DIR          5
 104 #define PT_SPECIAL      6
 105 #define PT_TYPE         7
 106 #define PT_OPTIONS      8
 107 #define PT_ADDRESS      9
 108 #define PT_PHYSICAL     10
 109 #define PT_NAME         11
 110 #define PT_VALUE        12
 111 #define PT_MATCH        13
 112 #define PT_PRIV         14
 113 #define PT_LIMIT        15
 114 #define PT_ACTION       16
 115 #define PT_RAW          17


 120 #define PT_IMPORTANCE   22
 121 #define PT_SWAP         23
 122 #define PT_LOCKED       24
 123 #define PT_SHARES       25
 124 #define PT_MAXLWPS      26
 125 #define PT_MAXSHMMEM    27
 126 #define PT_MAXSHMIDS    28
 127 #define PT_MAXMSGIDS    29
 128 #define PT_MAXSEMIDS    30
 129 #define PT_MAXLOCKEDMEM 31
 130 #define PT_MAXSWAP      32
 131 #define PT_SCHED        33
 132 #define PT_IPTYPE       34
 133 #define PT_DEFROUTER    35
 134 #define PT_HOSTID       36
 135 #define PT_USER         37
 136 #define PT_AUTHS        38
 137 #define PT_FS_ALLOWED   39
 138 #define PT_MAXPROCS     40
 139 #define PT_ALLOWED_ADDRESS      41



 140 
 141 #define PT_MIN          PT_UNKNOWN
 142 #define PT_MAX          PT_ALLOWED_ADDRESS
 143 
 144 #define MAX_EQ_PROP_PAIRS       3
 145 
 146 #define PROP_VAL_SIMPLE         0
 147 #define PROP_VAL_COMPLEX        1
 148 #define PROP_VAL_LIST           2
 149 
 150 #define PROP_VAL_MIN            PROP_VAL_SIMPLE
 151 #define PROP_VAL_MAX            PROP_VAL_LIST
 152 
 153 /*
 154  * If any subcommand is ever modified to take more than three arguments,
 155  * this will need to be incremented.
 156  */
 157 #define MAX_SUBCMD_ARGS         3
 158 
 159 typedef struct complex_property {
 160         int     cp_type;        /* from the PT_* list above */
 161         char    *cp_value;
 162         struct complex_property *cp_next;




  73 #define RT_ATTR         9
  74 #define RT_DATASET      10
  75 #define RT_LIMITPRIV    11      /* really a property, but for info ... */
  76 #define RT_BOOTARGS     12      /* really a property, but for info ... */
  77 #define RT_BRAND        13      /* really a property, but for info ... */
  78 #define RT_DCPU         14
  79 #define RT_MCAP         15
  80 #define RT_MAXLWPS      16      /* really a rctl alias property, but for info */
  81 #define RT_MAXSHMMEM    17      /* really a rctl alias property, but for info */
  82 #define RT_MAXSHMIDS    18      /* really a rctl alias property, but for info */
  83 #define RT_MAXMSGIDS    19      /* really a rctl alias property, but for info */
  84 #define RT_MAXSEMIDS    20      /* really a rctl alias property, but for info */
  85 #define RT_SHARES       21      /* really a rctl alias property, but for info */
  86 #define RT_SCHED        22      /* really a property, but for info ... */
  87 #define RT_IPTYPE       23      /* really a property, but for info ... */
  88 #define RT_PCAP         24
  89 #define RT_HOSTID       25      /* really a property, but for info ... */
  90 #define RT_ADMIN        26
  91 #define RT_FS_ALLOWED   27
  92 #define RT_MAXPROCS     28      /* really a rctl alias property, but for info */
  93 #define RT_SECFLAGS     29
  94 
  95 #define RT_MIN          RT_UNKNOWN
  96 #define RT_MAX          RT_SECFLAGS
  97 
  98 /* property types: increment PT_MAX when expanding this list */
  99 #define PT_UNKNOWN      0
 100 #define PT_ZONENAME     1
 101 #define PT_ZONEPATH     2
 102 #define PT_AUTOBOOT     3
 103 #define PT_POOL         4
 104 #define PT_DIR          5
 105 #define PT_SPECIAL      6
 106 #define PT_TYPE         7
 107 #define PT_OPTIONS      8
 108 #define PT_ADDRESS      9
 109 #define PT_PHYSICAL     10
 110 #define PT_NAME         11
 111 #define PT_VALUE        12
 112 #define PT_MATCH        13
 113 #define PT_PRIV         14
 114 #define PT_LIMIT        15
 115 #define PT_ACTION       16
 116 #define PT_RAW          17


 121 #define PT_IMPORTANCE   22
 122 #define PT_SWAP         23
 123 #define PT_LOCKED       24
 124 #define PT_SHARES       25
 125 #define PT_MAXLWPS      26
 126 #define PT_MAXSHMMEM    27
 127 #define PT_MAXSHMIDS    28
 128 #define PT_MAXMSGIDS    29
 129 #define PT_MAXSEMIDS    30
 130 #define PT_MAXLOCKEDMEM 31
 131 #define PT_MAXSWAP      32
 132 #define PT_SCHED        33
 133 #define PT_IPTYPE       34
 134 #define PT_DEFROUTER    35
 135 #define PT_HOSTID       36
 136 #define PT_USER         37
 137 #define PT_AUTHS        38
 138 #define PT_FS_ALLOWED   39
 139 #define PT_MAXPROCS     40
 140 #define PT_ALLOWED_ADDRESS      41
 141 #define PT_DEFAULT      42
 142 #define PT_LOWER        43
 143 #define PT_UPPER        44
 144 
 145 #define PT_MIN          PT_UNKNOWN
 146 #define PT_MAX          PT_UPPER
 147 
 148 #define MAX_EQ_PROP_PAIRS       3
 149 
 150 #define PROP_VAL_SIMPLE         0
 151 #define PROP_VAL_COMPLEX        1
 152 #define PROP_VAL_LIST           2
 153 
 154 #define PROP_VAL_MIN            PROP_VAL_SIMPLE
 155 #define PROP_VAL_MAX            PROP_VAL_LIST
 156 
 157 /*
 158  * If any subcommand is ever modified to take more than three arguments,
 159  * this will need to be incremented.
 160  */
 161 #define MAX_SUBCMD_ARGS         3
 162 
 163 typedef struct complex_property {
 164         int     cp_type;        /* from the PT_* list above */
 165         char    *cp_value;
 166         struct complex_property *cp_next;