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,111 **** --- 102,112 ---- { 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,384 **** --- 376,392 ---- { 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,407 **** --- 406,416 ---- &stack_layout, &sysset_layout, &timestruc_layout, &utsname_layout, &prfdinfo_layout, + &psecflags_layout, }; const sl_arch_layout_t * struct_layout_amd64(void)