Home
last modified time | relevance | path

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

/linux/ipc/
H A Dutil.h107 int (*associate)(struct kern_ipc_perm *, int);
108 int (*more_checks)(struct kern_ipc_perm *, struct ipc_params *);
132 int ipc_addid(struct ipc_ids *, struct kern_ipc_perm *, int);
135 void ipc_rmid(struct ipc_ids *, struct kern_ipc_perm *);
138 void ipc_set_key_private(struct ipc_ids *, struct kern_ipc_perm *);
141 int ipcperms(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp, short flg);
172 bool ipc_rcu_getref(struct kern_ipc_perm *ptr);
173 void ipc_rcu_putref(struct kern_ipc_perm *ptr,
176 struct kern_ipc_perm *ipc_obtain_object_idr(struct ipc_ids *ids, int id);
178 void kernel_to_ipc64_perm(struct kern_ipc_perm *in, struct ipc64_perm *out);
[all …]
H A Dutil.c22 * obtain the ipc object (kern_ipc_perm) by looking up the id in an idr
28 * acquire the ipc lock (kern_ipc_perm.lock) through
43 * Note that sems have a special fast path that avoids kern_ipc_perm.lock -
102 .head_offset = offsetof(struct kern_ipc_perm, khtnode),
103 .key_offset = offsetof(struct kern_ipc_perm, key),
104 .key_len = sizeof_field(struct kern_ipc_perm, key),
172 static struct kern_ipc_perm *ipc_findkey(struct ipc_ids *ids, key_t key) in ipc_findkey()
174 struct kern_ipc_perm *ipcp; in ipc_findkey()
193 * All accesses must be done after getting kern_ipc_perm.lock.
195 * The caller must own kern_ipc_perm
[all...]
H A Dshm.c55 struct kern_ipc_perm shm_perm;
123 static void do_shm_rmid(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp) in do_shm_rmid()
169 struct kern_ipc_perm *ipcp = ipc_obtain_object_idr(&shm_ids(ns), id); in shm_obtain_object()
179 struct kern_ipc_perm *ipcp = ipc_obtain_object_check(&shm_ids(ns), id); in shm_obtain_object_check()
193 struct kern_ipc_perm *ipcp; in shm_lock()
231 struct kern_ipc_perm *ptr = container_of(head, struct kern_ipc_perm, in shm_rcu_free()
412 struct kern_ipc_perm *ipcp = p; in shm_try_destroy_orphaned()
812 static int shm_more_checks(struct kern_ipc_perm *ipcp, struct ipc_params *params) in shm_more_checks()
969 struct kern_ipc_perm *ipc; in shm_get_stat()
991 struct kern_ipc_perm *ipcp; in shmctl_down()
[all …]
H A Dnamespace.c126 void (*free)(struct ipc_namespace *, struct kern_ipc_perm *)) in free_ipcs() argument
128 struct kern_ipc_perm *perm; in free_ipcs()
H A Dmsg.c50 struct kern_ipc_perm q_perm;
104 struct kern_ipc_perm *ipcp = ipc_obtain_object_idr(&msg_ids(ns), id); in msq_obtain_object()
115 struct kern_ipc_perm *ipcp = ipc_obtain_object_check(&msg_ids(ns), id); in msq_obtain_object_check()
130 struct kern_ipc_perm *p = container_of(head, struct kern_ipc_perm, rcu); in msg_rcu_free()
273 static void freeque(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp) in freeque()
404 struct kern_ipc_perm *ipcp; in msgctl_down()
1345 struct kern_ipc_perm *ipcp = it; in sysvipc_msg_proc_show()
H A Dsem.c115 struct kern_ipc_perm sem_perm; /* permissions .. see ipc.h */
172 static void freeary(struct ipc_namespace *, struct kern_ipc_perm *);
325 struct kern_ipc_perm *p = container_of(head, struct kern_ipc_perm, rcu); in sem_rcu_free()
480 struct kern_ipc_perm *ipcp = ipc_obtain_object_idr(&sem_ids(ns), id); in sem_obtain_object()
491 struct kern_ipc_perm *ipcp = ipc_obtain_object_check(&sem_ids(ns), id); in sem_obtain_object_check()
591 static int sem_more_checks(struct kern_ipc_perm *ipcp, struct ipc_params *params) in sem_more_checks()
1143 static void freeary(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp) in freeary()
1606 struct kern_ipc_perm *ipcp; in semctl_down()
2452 struct kern_ipc_perm *ipcp = it; in sysvipc_sem_proc_show()
/linux/include/linux/
H A Dsecurity.h47 struct kern_ipc_perm;
535 int security_ipc_permission(struct kern_ipc_perm *ipcp, short flag);
536 void security_ipc_getlsmprop(struct kern_ipc_perm *ipcp, struct lsm_prop *prop);
539 int security_msg_queue_alloc(struct kern_ipc_perm *msq);
540 void security_msg_queue_free(struct kern_ipc_perm *msq);
541 int security_msg_queue_associate(struct kern_ipc_perm *msq, int msqflg);
542 int security_msg_queue_msgctl(struct kern_ipc_perm *msq, int cmd);
543 int security_msg_queue_msgsnd(struct kern_ipc_perm *msq,
545 int security_msg_queue_msgrcv(struct kern_ipc_perm *msq, struct msg_msg *msg,
547 int security_shm_alloc(struct kern_ipc_perm *sh
[all...]
H A Dipc.h12 struct kern_ipc_perm { struct
H A Daudit.h39 struct kern_ipc_perm;
404 extern void __audit_ipc_obj(struct kern_ipc_perm *ipcp);
427 static inline void audit_ipc_obj(struct kern_ipc_perm *ipcp) in audit_ipc_obj()
631 static inline void audit_ipc_obj(struct kern_ipc_perm *ipcp) in audit_ipc_obj()
/linux/security/
H A Dsecurity.c782 static int lsm_ipc_alloc(struct kern_ipc_perm *kip) in lsm_ipc_alloc()
3745 int security_ipc_permission(struct kern_ipc_perm *ipcp, short flag) in security_ipc_permission()
3758 void security_ipc_getlsmprop(struct kern_ipc_perm *ipcp, struct lsm_prop *prop) in security_ipc_getlsmprop()
3807 int security_msg_queue_alloc(struct kern_ipc_perm *msq) in security_msg_queue_alloc()
3825 void security_msg_queue_free(struct kern_ipc_perm *msq) in security_msg_queue_free()
3843 int security_msg_queue_associate(struct kern_ipc_perm *msq, int msqflg) in security_msg_queue_associate()
3858 int security_msg_queue_msgctl(struct kern_ipc_perm *msq, int cmd) in security_msg_queue_msgctl()
3874 int security_msg_queue_msgsnd(struct kern_ipc_perm *msq, in security_msg_queue_msgsnd()
3895 int security_msg_queue_msgrcv(struct kern_ipc_perm *msq, struct msg_msg *msg, in security_msg_queue_msgrcv()
3910 int security_shm_alloc(struct kern_ipc_perm *shp) in security_shm_alloc()
[all …]
/linux/security/selinux/include/
H A Dobjsec.h177 selinux_ipc(const struct kern_ipc_perm *ipc) in selinux_ipc()
/linux/Documentation/security/
H A Dlsm.rst82 security fields were added to :c:type:`struct kern_ipc_perm
83 <kern_ipc_perm>` and :c:type:`struct msg_msg
/linux/security/selinux/
H A Dhooks.c6028 static int ipc_has_perm(struct kern_ipc_perm *ipc_perms, in ipc_has_perm()
6054 static int selinux_msg_queue_alloc_security(struct kern_ipc_perm *msq) in selinux_msg_queue_alloc_security()
6070 static int selinux_msg_queue_associate(struct kern_ipc_perm *msq, int msqflg) in selinux_msg_queue_associate()
6085 static int selinux_msg_queue_msgctl(struct kern_ipc_perm *msq, int cmd) in selinux_msg_queue_msgctl()
6113 static int selinux_msg_queue_msgsnd(struct kern_ipc_perm *msq, struct msg_msg *msg, int msqflg) in selinux_msg_queue_msgsnd()
6156 static int selinux_msg_queue_msgrcv(struct kern_ipc_perm *msq, struct msg_msg *msg, in selinux_msg_queue_msgrcv()
6181 static int selinux_shm_alloc_security(struct kern_ipc_perm *shp) in selinux_shm_alloc_security()
6197 static int selinux_shm_associate(struct kern_ipc_perm *shp, int shmflg) in selinux_shm_associate()
6213 static int selinux_shm_shmctl(struct kern_ipc_perm *shp, int cmd) in selinux_shm_shmctl()
6245 static int selinux_shm_shmat(struct kern_ipc_perm *shp, in selinux_shm_shmat()
[all …]
/linux/kernel/
H A Dauditsc.c2623 void __audit_ipc_obj(struct kern_ipc_perm *ipcp) in __audit_ipc_obj()