Lines Matching refs:isec
279 struct inode_security_struct *isec = selinux_inode(inode); in __inode_security_revalidate() local
284 isec->initialized != LABEL_INITIALIZED) { in __inode_security_revalidate()
342 struct inode_security_struct *isec = selinux_inode(inode); in inode_free_security() local
345 if (!isec) in inode_free_security()
358 if (!list_empty_careful(&isec->list)) { in inode_free_security()
360 list_del_init(&isec->list); in inode_free_security()
579 struct inode_security_struct *isec = in sb_finish_set_opts() local
582 struct inode *inode = isec->inode; in sb_finish_set_opts()
583 list_del_init(&isec->list); in sb_finish_set_opts()
1105 struct inode_security_struct *isec = backing_inode_security(root); in selinux_sb_show_options() local
1108 rc = show_sid(m, isec->sid); in selinux_sb_show_options()
1410 struct inode_security_struct *isec = selinux_inode(inode); in inode_doinit_with_dentry() local
1416 if (isec->initialized == LABEL_INITIALIZED) in inode_doinit_with_dentry()
1419 spin_lock(&isec->lock); in inode_doinit_with_dentry()
1420 if (isec->initialized == LABEL_INITIALIZED) in inode_doinit_with_dentry()
1423 if (isec->sclass == SECCLASS_FILE) in inode_doinit_with_dentry()
1424 isec->sclass = inode_mode_to_security_class(inode->i_mode); in inode_doinit_with_dentry()
1432 if (list_empty(&isec->list)) in inode_doinit_with_dentry()
1433 list_add(&isec->list, &sbsec->isec_head); in inode_doinit_with_dentry()
1438 sclass = isec->sclass; in inode_doinit_with_dentry()
1439 task_sid = isec->task_sid; in inode_doinit_with_dentry()
1440 sid = isec->sid; in inode_doinit_with_dentry()
1441 isec->initialized = LABEL_PENDING; in inode_doinit_with_dentry()
1442 spin_unlock(&isec->lock); in inode_doinit_with_dentry()
1561 spin_lock(&isec->lock); in inode_doinit_with_dentry()
1562 if (isec->initialized == LABEL_PENDING) { in inode_doinit_with_dentry()
1564 isec->initialized = LABEL_INVALID; in inode_doinit_with_dentry()
1567 isec->initialized = LABEL_INITIALIZED; in inode_doinit_with_dentry()
1568 isec->sid = sid; in inode_doinit_with_dentry()
1572 spin_unlock(&isec->lock); in inode_doinit_with_dentry()
1576 spin_lock(&isec->lock); in inode_doinit_with_dentry()
1577 if (isec->initialized == LABEL_PENDING) { in inode_doinit_with_dentry()
1578 isec->initialized = LABEL_INVALID; in inode_doinit_with_dentry()
1579 isec->sid = sid; in inode_doinit_with_dentry()
1581 spin_unlock(&isec->lock); in inode_doinit_with_dentry()
1660 struct inode_security_struct *isec; in inode_has_perm() local
1669 isec = selinux_inode(inode); in inode_has_perm()
1671 return avc_has_perm(sid, isec->sid, isec->sclass, perms, adp); in inode_has_perm()
1845 struct inode_security_struct *dsec, *isec; in may_link() local
1852 isec = backing_inode_security(dentry); in may_link()
1879 rc = avc_has_perm(sid, isec->sid, isec->sclass, av, &ad); in may_link()
2060 struct inode_security_struct *isec; in selinux_binder_transfer_file() local
2085 isec = backing_inode_security(dentry); in selinux_binder_transfer_file()
2086 return avc_has_perm(sid, isec->sid, isec->sclass, file_to_av(file), in selinux_binder_transfer_file()
2297 struct inode_security_struct *isec; in selinux_bprm_creds_for_exec() local
2307 isec = inode_security(inode); in selinux_bprm_creds_for_exec()
2330 isec->sid, SECCLASS_PROCESS, NULL, in selinux_bprm_creds_for_exec()
2348 rc = avc_has_perm(old_tsec->sid, isec->sid, in selinux_bprm_creds_for_exec()
2359 rc = avc_has_perm(new_tsec->sid, isec->sid, in selinux_bprm_creds_for_exec()
2840 struct inode_security_struct *isec = selinux_inode(inode); in selinux_inode_alloc_security() local
2843 spin_lock_init(&isec->lock); in selinux_inode_alloc_security()
2844 INIT_LIST_HEAD(&isec->list); in selinux_inode_alloc_security()
2845 isec->inode = inode; in selinux_inode_alloc_security()
2846 isec->sid = SECINITSID_UNLABELED; in selinux_inode_alloc_security()
2847 isec->sclass = SECCLASS_FILE; in selinux_inode_alloc_security()
2848 isec->task_sid = sid; in selinux_inode_alloc_security()
2849 isec->initialized = LABEL_INVALID; in selinux_inode_alloc_security()
2925 struct inode_security_struct *isec = selinux_inode(inode); in selinux_inode_init_security() local
2926 isec->sclass = inode_mode_to_security_class(inode->i_mode); in selinux_inode_init_security()
2927 isec->sid = newsid; in selinux_inode_init_security()
2928 isec->initialized = LABEL_INITIALIZED; in selinux_inode_init_security()
2954 struct inode_security_struct *isec; in selinux_inode_init_security_anon() local
2960 isec = selinux_inode(inode); in selinux_inode_init_security_anon()
2976 isec->sclass = context_isec->sclass; in selinux_inode_init_security_anon()
2977 isec->sid = context_isec->sid; in selinux_inode_init_security_anon()
2979 isec->sclass = SECCLASS_ANON_INODE; in selinux_inode_init_security_anon()
2982 isec->sclass, name, &isec->sid); in selinux_inode_init_security_anon()
2987 isec->initialized = LABEL_INITIALIZED; in selinux_inode_init_security_anon()
2997 isec->sid, in selinux_inode_init_security_anon()
2998 isec->sclass, in selinux_inode_init_security_anon()
3056 struct inode_security_struct *isec; in selinux_inode_follow_link() local
3064 isec = inode_security_rcu(inode, rcu); in selinux_inode_follow_link()
3065 if (IS_ERR(isec)) in selinux_inode_follow_link()
3066 return PTR_ERR(isec); in selinux_inode_follow_link()
3068 return avc_has_perm(sid, isec->sid, isec->sclass, FILE__READ, &ad); in selinux_inode_follow_link()
3076 struct inode_security_struct *isec = selinux_inode(inode); in audit_inode_permission() local
3081 return slow_avc_audit(current_sid(), isec->sid, isec->sclass, perms, in audit_inode_permission()
3091 struct inode_security_struct *isec; in selinux_inode_permission() local
3112 isec = inode_security_rcu(inode, no_block); in selinux_inode_permission()
3113 if (IS_ERR(isec)) in selinux_inode_permission()
3114 return PTR_ERR(isec); in selinux_inode_permission()
3116 rc = avc_has_perm_noaudit(sid, isec->sid, isec->sclass, perms, 0, in selinux_inode_permission()
3180 struct inode_security_struct *isec; in selinux_inode_setxattr() local
3209 isec = backing_inode_security(dentry); in selinux_inode_setxattr()
3210 rc = avc_has_perm(sid, isec->sid, isec->sclass, in selinux_inode_setxattr()
3250 rc = avc_has_perm(sid, newsid, isec->sclass, in selinux_inode_setxattr()
3255 rc = security_validate_transition(isec->sid, newsid, in selinux_inode_setxattr()
3256 sid, isec->sclass); in selinux_inode_setxattr()
3291 struct inode_security_struct *isec; in selinux_inode_post_setxattr() local
3318 isec = backing_inode_security(dentry); in selinux_inode_post_setxattr()
3319 spin_lock(&isec->lock); in selinux_inode_post_setxattr()
3320 isec->sclass = inode_mode_to_security_class(inode->i_mode); in selinux_inode_post_setxattr()
3321 isec->sid = newsid; in selinux_inode_post_setxattr()
3322 isec->initialized = LABEL_INITIALIZED; in selinux_inode_post_setxattr()
3323 spin_unlock(&isec->lock); in selinux_inode_post_setxattr()
3417 struct inode_security_struct *isec; in selinux_inode_getsecurity() local
3436 isec = inode_security(inode); in selinux_inode_getsecurity()
3438 error = security_sid_to_context_force(isec->sid, &context, in selinux_inode_getsecurity()
3441 error = security_sid_to_context(isec->sid, in selinux_inode_getsecurity()
3458 struct inode_security_struct *isec = inode_security_novalidate(inode); in selinux_inode_setsecurity() local
3478 spin_lock(&isec->lock); in selinux_inode_setsecurity()
3479 isec->sclass = inode_mode_to_security_class(inode->i_mode); in selinux_inode_setsecurity()
3480 isec->sid = newsid; in selinux_inode_setsecurity()
3481 isec->initialized = LABEL_INITIALIZED; in selinux_inode_setsecurity()
3482 spin_unlock(&isec->lock); in selinux_inode_setsecurity()
3500 struct inode_security_struct *isec = inode_security_novalidate(inode); in selinux_inode_getsecid() local
3501 *secid = isec->sid; in selinux_inode_getsecid()
3619 struct inode_security_struct *isec; in selinux_file_permission() local
3626 isec = inode_security(inode); in selinux_file_permission()
3627 if (sid == fsec->sid && fsec->isid == isec->sid && in selinux_file_permission()
3656 struct inode_security_struct *isec; in ioctl_has_perm() local
3680 isec = inode_security(inode); in ioctl_has_perm()
3681 rc = avc_has_extended_perms(ssid, isec->sid, isec->sclass, in ioctl_has_perm()
3928 struct inode_security_struct *isec; in selinux_file_open() local
3931 isec = inode_security(file_inode(file)); in selinux_file_open()
3939 fsec->isid = isec->sid; in selinux_file_open()
4020 struct inode_security_struct *isec = inode_security(inode); in selinux_kernel_create_files_as() local
4025 ret = avc_has_perm(sid, isec->sid, in selinux_kernel_create_files_as()
4031 tsec->create_sid = isec->sid; in selinux_kernel_create_files_as()
4049 struct inode_security_struct *isec; in selinux_kernel_module_from_file() local
4071 isec = inode_security(file_inode(file)); in selinux_kernel_module_from_file()
4072 return avc_has_perm(sid, isec->sid, SECCLASS_SYSTEM, in selinux_kernel_module_from_file()
4223 struct inode_security_struct *isec = selinux_inode(inode); in selinux_task_to_inode() local
4226 spin_lock(&isec->lock); in selinux_task_to_inode()
4227 isec->sclass = inode_mode_to_security_class(inode->i_mode); in selinux_task_to_inode()
4228 isec->sid = sid; in selinux_task_to_inode()
4229 isec->initialized = LABEL_INITIALIZED; in selinux_task_to_inode()
4230 spin_unlock(&isec->lock); in selinux_task_to_inode()
4585 struct inode_security_struct *isec = inode_security_novalidate(SOCK_INODE(sock)); in selinux_socket_post_create() local
4597 isec->sclass = sclass; in selinux_socket_post_create()
4598 isec->sid = sid; in selinux_socket_post_create()
4599 isec->initialized = LABEL_INITIALIZED; in selinux_socket_post_create()
4874 struct inode_security_struct *isec; in selinux_socket_accept() local
4883 isec = inode_security_novalidate(SOCK_INODE(sock)); in selinux_socket_accept()
4884 spin_lock(&isec->lock); in selinux_socket_accept()
4885 sclass = isec->sclass; in selinux_socket_accept()
4886 sid = isec->sid; in selinux_socket_accept()
4887 spin_unlock(&isec->lock); in selinux_socket_accept()
5143 struct inode_security_struct *isec; in selinux_socket_getpeersec_dgram() local
5155 isec = inode_security_novalidate(SOCK_INODE(sock)); in selinux_socket_getpeersec_dgram()
5156 peer_secid = isec->sid; in selinux_socket_getpeersec_dgram()
5218 struct inode_security_struct *isec = in selinux_sock_graft() local
5224 isec->sid = sksec->sid; in selinux_sock_graft()
5225 sksec->sclass = isec->sclass; in selinux_sock_graft()
5934 static void ipc_init_security(struct ipc_security_struct *isec, u16 sclass) in ipc_init_security() argument
5936 isec->sclass = sclass; in ipc_init_security()
5937 isec->sid = current_sid(); in ipc_init_security()
5943 struct ipc_security_struct *isec; in ipc_has_perm() local
5947 isec = selinux_ipc(ipc_perms); in ipc_has_perm()
5952 return avc_has_perm(sid, isec->sid, isec->sclass, perms, &ad); in ipc_has_perm()
5968 struct ipc_security_struct *isec; in selinux_msg_queue_alloc_security() local
5972 isec = selinux_ipc(msq); in selinux_msg_queue_alloc_security()
5973 ipc_init_security(isec, SECCLASS_MSGQ); in selinux_msg_queue_alloc_security()
5978 return avc_has_perm(sid, isec->sid, SECCLASS_MSGQ, in selinux_msg_queue_alloc_security()
5984 struct ipc_security_struct *isec; in selinux_msg_queue_associate() local
5988 isec = selinux_ipc(msq); in selinux_msg_queue_associate()
5993 return avc_has_perm(sid, isec->sid, SECCLASS_MSGQ, in selinux_msg_queue_associate()
6027 struct ipc_security_struct *isec; in selinux_msg_queue_msgsnd() local
6033 isec = selinux_ipc(msq); in selinux_msg_queue_msgsnd()
6044 rc = security_transition_sid(sid, isec->sid, in selinux_msg_queue_msgsnd()
6054 rc = avc_has_perm(sid, isec->sid, SECCLASS_MSGQ, in selinux_msg_queue_msgsnd()
6062 rc = avc_has_perm(msec->sid, isec->sid, SECCLASS_MSGQ, in selinux_msg_queue_msgsnd()
6072 struct ipc_security_struct *isec; in selinux_msg_queue_msgrcv() local
6078 isec = selinux_ipc(msq); in selinux_msg_queue_msgrcv()
6084 rc = avc_has_perm(sid, isec->sid, in selinux_msg_queue_msgrcv()
6095 struct ipc_security_struct *isec; in selinux_shm_alloc_security() local
6099 isec = selinux_ipc(shp); in selinux_shm_alloc_security()
6100 ipc_init_security(isec, SECCLASS_SHM); in selinux_shm_alloc_security()
6105 return avc_has_perm(sid, isec->sid, SECCLASS_SHM, in selinux_shm_alloc_security()
6111 struct ipc_security_struct *isec; in selinux_shm_associate() local
6115 isec = selinux_ipc(shp); in selinux_shm_associate()
6120 return avc_has_perm(sid, isec->sid, SECCLASS_SHM, in selinux_shm_associate()
6173 struct ipc_security_struct *isec; in selinux_sem_alloc_security() local
6177 isec = selinux_ipc(sma); in selinux_sem_alloc_security()
6178 ipc_init_security(isec, SECCLASS_SEM); in selinux_sem_alloc_security()
6183 return avc_has_perm(sid, isec->sid, SECCLASS_SEM, in selinux_sem_alloc_security()
6189 struct ipc_security_struct *isec; in selinux_sem_associate() local
6193 isec = selinux_ipc(sma); in selinux_sem_associate()
6198 return avc_has_perm(sid, isec->sid, SECCLASS_SEM, in selinux_sem_associate()
6277 struct ipc_security_struct *isec = selinux_ipc(ipcp); in selinux_ipc_getsecid() local
6278 *secid = isec->sid; in selinux_ipc_getsecid()
6495 struct inode_security_struct *isec = selinux_inode(inode); in selinux_inode_invalidate_secctx() local
6497 spin_lock(&isec->lock); in selinux_inode_invalidate_secctx()
6498 isec->initialized = LABEL_INVALID; in selinux_inode_invalidate_secctx()
6499 spin_unlock(&isec->lock); in selinux_inode_invalidate_secctx()
6942 struct inode_security_struct *isec = selinux_inode(inode); in selinux_uring_cmd() local
6948 return avc_has_perm(current_sid(), isec->sid, in selinux_uring_cmd()