Home
last modified time | relevance | path

Searched refs:kern_ipc_perm (Results 1 – 18 of 18) sorted by relevance

/Linux-v5.4/ipc/
Dutil.h108 int (*associate)(struct kern_ipc_perm *, int);
109 int (*more_checks)(struct kern_ipc_perm *, struct ipc_params *);
133 int ipc_addid(struct ipc_ids *, struct kern_ipc_perm *, int);
136 void ipc_rmid(struct ipc_ids *, struct kern_ipc_perm *);
139 void ipc_set_key_private(struct ipc_ids *, struct kern_ipc_perm *);
142 int ipcperms(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp, short flg);
170 bool ipc_rcu_getref(struct kern_ipc_perm *ptr);
171 void ipc_rcu_putref(struct kern_ipc_perm *ptr,
174 struct kern_ipc_perm *ipc_obtain_object_idr(struct ipc_ids *ids, int id);
176 void kernel_to_ipc64_perm(struct kern_ipc_perm *in, struct ipc64_perm *out);
[all …]
Dutil.c101 .head_offset = offsetof(struct kern_ipc_perm, khtnode),
102 .key_offset = offsetof(struct kern_ipc_perm, key),
103 .key_len = FIELD_SIZEOF(struct kern_ipc_perm, key),
171 static struct kern_ipc_perm *ipc_findkey(struct ipc_ids *ids, key_t key) in ipc_findkey()
173 struct kern_ipc_perm *ipcp; in ipc_findkey()
201 static inline int ipc_idr_alloc(struct ipc_ids *ids, struct kern_ipc_perm *new) in ipc_idr_alloc()
277 int ipc_addid(struct ipc_ids *ids, struct kern_ipc_perm *new, int limit) in ipc_addid()
365 struct kern_ipc_perm *ipcp, in ipc_check_perms()
399 struct kern_ipc_perm *ipcp; in ipcget_public()
446 static void ipc_kht_remove(struct ipc_ids *ids, struct kern_ipc_perm *ipcp) in ipc_kht_remove()
[all …]
Dnamespace.c96 void (*free)(struct ipc_namespace *, struct kern_ipc_perm *)) in free_ipcs() argument
98 struct kern_ipc_perm *perm; in free_ipcs()
Dshm.c54 struct kern_ipc_perm shm_perm;
113 static void do_shm_rmid(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp) in do_shm_rmid()
158 struct kern_ipc_perm *ipcp = ipc_obtain_object_idr(&shm_ids(ns), id); in shm_obtain_object()
168 struct kern_ipc_perm *ipcp = ipc_obtain_object_check(&shm_ids(ns), id); in shm_obtain_object_check()
182 struct kern_ipc_perm *ipcp; in shm_lock()
220 struct kern_ipc_perm *ptr = container_of(head, struct kern_ipc_perm, in shm_rcu_free()
355 struct kern_ipc_perm *ipcp = p; in shm_try_destroy_orphaned()
714 static inline int shm_more_checks(struct kern_ipc_perm *ipcp, in shm_more_checks()
872 struct kern_ipc_perm *ipc; in shm_get_stat()
894 struct kern_ipc_perm *ipcp; in shmctl_down()
[all …]
Dmsg.c49 struct kern_ipc_perm q_perm;
93 struct kern_ipc_perm *ipcp = ipc_obtain_object_idr(&msg_ids(ns), id); in msq_obtain_object()
104 struct kern_ipc_perm *ipcp = ipc_obtain_object_check(&msg_ids(ns), id); in msq_obtain_object_check()
119 struct kern_ipc_perm *p = container_of(head, struct kern_ipc_perm, rcu); in msg_rcu_free()
253 static void freeque(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp) in freeque()
382 struct kern_ipc_perm *ipcp; in msgctl_down()
1291 struct kern_ipc_perm *ipcp = it; in sysvipc_msg_proc_show()
Dsem.c115 struct kern_ipc_perm sem_perm; /* permissions .. see ipc.h */
172 static void freeary(struct ipc_namespace *, struct kern_ipc_perm *);
300 struct kern_ipc_perm *p = container_of(head, struct kern_ipc_perm, rcu); in sem_rcu_free()
458 struct kern_ipc_perm *ipcp = ipc_obtain_object_idr(&sem_ids(ns), id); in sem_obtain_object()
469 struct kern_ipc_perm *ipcp = ipc_obtain_object_check(&sem_ids(ns), id); in sem_obtain_object_check()
569 static inline int sem_more_checks(struct kern_ipc_perm *ipcp, in sem_more_checks()
1124 static void freeary(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp) in freeary()
1588 struct kern_ipc_perm *ipcp; in semctl_down()
2417 struct kern_ipc_perm *ipcp = it; in sysvipc_sem_proc_show()
/Linux-v5.4/include/linux/
Dsecurity.h40 struct kern_ipc_perm;
408 int security_ipc_permission(struct kern_ipc_perm *ipcp, short flag);
409 void security_ipc_getsecid(struct kern_ipc_perm *ipcp, u32 *secid);
412 int security_msg_queue_alloc(struct kern_ipc_perm *msq);
413 void security_msg_queue_free(struct kern_ipc_perm *msq);
414 int security_msg_queue_associate(struct kern_ipc_perm *msq, int msqflg);
415 int security_msg_queue_msgctl(struct kern_ipc_perm *msq, int cmd);
416 int security_msg_queue_msgsnd(struct kern_ipc_perm *msq,
418 int security_msg_queue_msgrcv(struct kern_ipc_perm *msq, struct msg_msg *msg,
420 int security_shm_alloc(struct kern_ipc_perm *shp);
[all …]
Dlsm_hooks.h1656 int (*ipc_permission)(struct kern_ipc_perm *ipcp, short flag);
1657 void (*ipc_getsecid)(struct kern_ipc_perm *ipcp, u32 *secid);
1662 int (*msg_queue_alloc_security)(struct kern_ipc_perm *perm);
1663 void (*msg_queue_free_security)(struct kern_ipc_perm *perm);
1664 int (*msg_queue_associate)(struct kern_ipc_perm *perm, int msqflg);
1665 int (*msg_queue_msgctl)(struct kern_ipc_perm *perm, int cmd);
1666 int (*msg_queue_msgsnd)(struct kern_ipc_perm *perm, struct msg_msg *msg,
1668 int (*msg_queue_msgrcv)(struct kern_ipc_perm *perm, struct msg_msg *msg,
1672 int (*shm_alloc_security)(struct kern_ipc_perm *perm);
1673 void (*shm_free_security)(struct kern_ipc_perm *perm);
[all …]
Dipc.h12 struct kern_ipc_perm { struct
Daudit.h362 extern void __audit_ipc_obj(struct kern_ipc_perm *ipcp);
382 static inline void audit_ipc_obj(struct kern_ipc_perm *ipcp) in audit_ipc_obj()
576 static inline void audit_ipc_obj(struct kern_ipc_perm *ipcp) in audit_ipc_obj()
/Linux-v5.4/security/
Dsecurity.c591 static int lsm_ipc_alloc(struct kern_ipc_perm *kip) in lsm_ipc_alloc()
1730 int security_ipc_permission(struct kern_ipc_perm *ipcp, short flag) in security_ipc_permission()
1735 void security_ipc_getsecid(struct kern_ipc_perm *ipcp, u32 *secid) in security_ipc_getsecid()
1760 int security_msg_queue_alloc(struct kern_ipc_perm *msq) in security_msg_queue_alloc()
1772 void security_msg_queue_free(struct kern_ipc_perm *msq) in security_msg_queue_free()
1779 int security_msg_queue_associate(struct kern_ipc_perm *msq, int msqflg) in security_msg_queue_associate()
1784 int security_msg_queue_msgctl(struct kern_ipc_perm *msq, int cmd) in security_msg_queue_msgctl()
1789 int security_msg_queue_msgsnd(struct kern_ipc_perm *msq, in security_msg_queue_msgsnd()
1795 int security_msg_queue_msgrcv(struct kern_ipc_perm *msq, struct msg_msg *msg, in security_msg_queue_msgrcv()
1801 int security_shm_alloc(struct kern_ipc_perm *shp) in security_shm_alloc()
[all …]
/Linux-v5.4/Documentation/RCU/
DarrayRCU.txt77 new = ipc_rcu_alloc(sizeof(struct kern_ipc_perm *)*newsize +
83 sizeof(struct kern_ipc_perm *)*size +
117 struct kern_ipc_perm* ipc_lock(struct ipc_ids* ids, int id)
119 struct kern_ipc_perm* out;
/Linux-v5.4/security/smack/
Dsmack_lsm.c2914 static struct smack_known *smack_of_ipc(struct kern_ipc_perm *isp) in smack_of_ipc()
2927 static int smack_ipc_alloc_security(struct kern_ipc_perm *isp) in smack_ipc_alloc_security()
2942 static int smk_curacc_shm(struct kern_ipc_perm *isp, int access) in smk_curacc_shm()
2964 static int smack_shm_associate(struct kern_ipc_perm *isp, int shmflg) in smack_shm_associate()
2979 static int smack_shm_shmctl(struct kern_ipc_perm *isp, int cmd) in smack_shm_shmctl()
3015 static int smack_shm_shmat(struct kern_ipc_perm *isp, char __user *shmaddr, in smack_shm_shmat()
3031 static int smk_curacc_sem(struct kern_ipc_perm *isp, int access) in smk_curacc_sem()
3053 static int smack_sem_associate(struct kern_ipc_perm *isp, int semflg) in smack_sem_associate()
3068 static int smack_sem_semctl(struct kern_ipc_perm *isp, int cmd) in smack_sem_semctl()
3113 static int smack_sem_semop(struct kern_ipc_perm *isp, struct sembuf *sops, in smack_sem_semop()
[all …]
Dsmack.h370 static inline struct smack_known **smack_ipc(const struct kern_ipc_perm *ipc) in smack_ipc()
/Linux-v5.4/security/selinux/include/
Dobjsec.h173 const struct kern_ipc_perm *ipc) in selinux_ipc()
/Linux-v5.4/security/selinux/
Dhooks.c5895 static int ipc_has_perm(struct kern_ipc_perm *ipc_perms, in ipc_has_perm()
5917 static int selinux_msg_queue_alloc_security(struct kern_ipc_perm *msq) in selinux_msg_queue_alloc_security()
5936 static int selinux_msg_queue_associate(struct kern_ipc_perm *msq, int msqflg) in selinux_msg_queue_associate()
5952 static int selinux_msg_queue_msgctl(struct kern_ipc_perm *msq, int cmd) in selinux_msg_queue_msgctl()
5983 static int selinux_msg_queue_msgsnd(struct kern_ipc_perm *msq, struct msg_msg *msg, int msqflg) in selinux_msg_queue_msgsnd()
6029 static int selinux_msg_queue_msgrcv(struct kern_ipc_perm *msq, struct msg_msg *msg, in selinux_msg_queue_msgrcv()
6056 static int selinux_shm_alloc_security(struct kern_ipc_perm *shp) in selinux_shm_alloc_security()
6075 static int selinux_shm_associate(struct kern_ipc_perm *shp, int shmflg) in selinux_shm_associate()
6092 static int selinux_shm_shmctl(struct kern_ipc_perm *shp, int cmd) in selinux_shm_shmctl()
6127 static int selinux_shm_shmat(struct kern_ipc_perm *shp, in selinux_shm_shmat()
[all …]
/Linux-v5.4/Documentation/security/
Dlsm.rst79 security fields were added to :c:type:`struct kern_ipc_perm
80 <kern_ipc_perm>` and :c:type:`struct msg_msg
/Linux-v5.4/kernel/
Dauditsc.c2273 void __audit_ipc_obj(struct kern_ipc_perm *ipcp) in __audit_ipc_obj()