summaryrefslogtreecommitdiffstats
path: root/include/linux/sem.h
diff options
context:
space:
mode:
authorKees Cook <keescook@chromium.org>2016-10-28 01:22:25 -0700
committerKees Cook <keescook@chromium.org>2017-06-30 12:00:51 -0700
commit3859a271a003aba01e45b85c9d8b355eb7bf25f9 (patch)
tree850c019e6a6449857e864b6a545b053ffe2f99a9 /include/linux/sem.h
parentffa47aa678cfaa9b88e8a26cfb115b4768325121 (diff)
downloadlinux-3859a271a003aba01e45b85c9d8b355eb7bf25f9.tar.gz
linux-3859a271a003aba01e45b85c9d8b355eb7bf25f9.tar.bz2
linux-3859a271a003aba01e45b85c9d8b355eb7bf25f9.zip
randstruct: Mark various structs for randomization
This marks many critical kernel structures for randomization. These are structures that have been targeted in the past in security exploits, or contain functions pointers, pointers to function pointer tables, lists, workqueues, ref-counters, credentials, permissions, or are otherwise sensitive. This initial list was extracted from Brad Spengler/PaX Team's code in the last public patch of grsecurity/PaX based on my understanding of the code. Changes or omissions from the original code are mine and don't reflect the original grsecurity/PaX code. Left out of this list is task_struct, which requires special handling and will be covered in a subsequent patch. Signed-off-by: Kees Cook <keescook@chromium.org>
Diffstat (limited to 'include/linux/sem.h')
-rw-r--r--include/linux/sem.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/sem.h b/include/linux/sem.h
index 9edec926e9d9..23bcbdfad4a6 100644
--- a/include/linux/sem.h
+++ b/include/linux/sem.h
@@ -21,7 +21,7 @@ struct sem_array {
int sem_nsems; /* no. of semaphores in array */
int complex_count; /* pending complex operations */
unsigned int use_global_lock;/* >0: global lock required */
-};
+} __randomize_layout;
#ifdef CONFIG_SYSVIPC