ipc.h 637 B

12345678910111213141516171819202122232425262728293031323334
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #ifndef _LINUX_IPC_H
  3. #define _LINUX_IPC_H
  4. #include <linux/spinlock.h>
  5. #include <linux/uidgid.h>
  6. #include <linux/rhashtable-types.h>
  7. #include <uapi/linux/ipc.h>
  8. #include <linux/refcount.h>
  9. extern int harden_ipc;
  10. /* used by in-kernel data structures */
  11. struct kern_ipc_perm {
  12. spinlock_t lock;
  13. bool deleted;
  14. int id;
  15. key_t key;
  16. kuid_t uid;
  17. kgid_t gid;
  18. kuid_t cuid;
  19. kgid_t cgid;
  20. umode_t mode;
  21. unsigned long seq;
  22. void *security;
  23. struct rhash_head khtnode;
  24. struct rcu_head rcu;
  25. refcount_t refcount;
  26. } ____cacheline_aligned_in_smp __randomize_layout;
  27. #endif /* _LINUX_IPC_H */