Lines Matching refs:ipcp
306 struct kern_ipc_perm *ipcp, in ipc_check_perms() argument
312 if (ipcperms(ns, ipcp, params->flg)) in ipc_check_perms()
315 err = ops->associate(ipcp, params->flg); in ipc_check_perms()
317 err = ipcp->id; in ipc_check_perms()
340 struct kern_ipc_perm *ipcp; in ipcget_public() local
349 ipcp = ipc_findkey(ids, params->key); in ipcget_public()
350 if (ipcp == NULL) { in ipcget_public()
364 err = ops->more_checks(ipcp, params); in ipcget_public()
370 err = ipc_check_perms(ns, ipcp, ops, params); in ipcget_public()
372 ipc_unlock(ipcp); in ipcget_public()
388 void ipc_rmid(struct ipc_ids *ids, struct kern_ipc_perm *ipcp) in ipc_rmid() argument
390 int lid = ipcid_to_idx(ipcp->id); in ipc_rmid()
394 ipcp->deleted = true; in ipc_rmid()
484 int ipcperms(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp, short flag) in ipcperms() argument
489 audit_ipc_obj(ipcp); in ipcperms()
491 granted_mode = ipcp->mode; in ipcperms()
492 if (uid_eq(euid, ipcp->cuid) || in ipcperms()
493 uid_eq(euid, ipcp->uid)) in ipcperms()
495 else if (in_group_p(ipcp->cgid) || in_group_p(ipcp->gid)) in ipcperms()
502 return security_ipc_permission(ipcp, flag); in ipcperms()
693 struct kern_ipc_perm *ipcp; in ipcctl_pre_down_nolock() local
695 ipcp = ipc_obtain_object_check(ids, id); in ipcctl_pre_down_nolock()
696 if (IS_ERR(ipcp)) { in ipcctl_pre_down_nolock()
697 err = PTR_ERR(ipcp); in ipcctl_pre_down_nolock()
701 audit_ipc_obj(ipcp); in ipcctl_pre_down_nolock()
707 if (uid_eq(euid, ipcp->cuid) || uid_eq(euid, ipcp->uid) || in ipcctl_pre_down_nolock()
709 return ipcp; /* successful lookup */ in ipcctl_pre_down_nolock()