Print this page
uts: Allow for address space randomisation.
Randomise the base addresses of shared objects, non-fixed mappings, the
stack and the heap.  Introduce a service, svc:/system/process-security,
and a tool psecflags(1) to control and observe it

@@ -102,10 +102,11 @@
         { 304,  1,      0,      0 },            /* pr_dmodel */
         { 308,  4,      0,      1 },            /* pr_taskid */
         { 312,  4,      0,      1 },            /* pr_projid */
         { 316,  4,      0,      1 },            /* pr_nzomb */
         { 320,  4,      0,      1 },            /* pr_zoneid */
+        { 324,  8,      0,      0 },            /* pr_secflags */
         { 384,  1296,   0,      0 },            /* pr_lwp */
 };
 
 
 static const sl_prstatus_layout_t prstatus_layout = {

@@ -375,10 +376,17 @@
         { 60,   4,      0,      0 },            /* pr_fdflags */
         { 64,   1,      1024,   0 },            /* pr_path[] */
 };
 
 
+static const sl_psecflags_layout_t psecflags_layout = {
+        { 0,    8,      0,      0 },            /* sizeof (psecflags_t) */
+        { 0,    4,      0,      0 },            /* psf_effective */
+        { 4,    4,      0,      0 },            /* psf_inherit */
+};
+
+
 
 
 static const sl_arch_layout_t layout_amd64 = {
         &auxv_layout,
         &fltset_layout,

@@ -398,10 +406,11 @@
         &stack_layout,
         &sysset_layout,
         &timestruc_layout,
         &utsname_layout,
         &prfdinfo_layout,
+        &psecflags_layout,
 };
 
 
 const sl_arch_layout_t *
 struct_layout_amd64(void)