Lines Matching refs:ad
1542 struct common_audit_data ad; in cred_has_capability() local
1549 ad.type = LSM_AUDIT_DATA_CAP; in cred_has_capability()
1550 ad.u.cap = cap; in cred_has_capability()
1568 int rc2 = avc_audit(sid, sid, sclass, av, &avd, rc, &ad); in cred_has_capability()
1615 struct common_audit_data ad; in dentry_has_perm() local
1617 ad.type = LSM_AUDIT_DATA_DENTRY; in dentry_has_perm()
1618 ad.u.dentry = dentry; in dentry_has_perm()
1619 return inode_has_perm(cred, inode, av, &ad); in dentry_has_perm()
1630 struct common_audit_data ad; in path_has_perm() local
1632 ad.type = LSM_AUDIT_DATA_PATH; in path_has_perm()
1633 ad.u.path = *path; in path_has_perm()
1634 return inode_has_perm(cred, inode, av, &ad); in path_has_perm()
1642 struct common_audit_data ad; in file_path_has_perm() local
1644 ad.type = LSM_AUDIT_DATA_PATH; in file_path_has_perm()
1645 ad.u.path = file->f_path; in file_path_has_perm()
1646 return inode_has_perm(cred, file_inode(file), av, &ad); in file_path_has_perm()
1663 struct common_audit_data ad; in file_has_perm() local
1667 ad.type = LSM_AUDIT_DATA_PATH; in file_has_perm()
1668 ad.u.path = file->f_path; in file_has_perm()
1674 &ad); in file_has_perm()
1682 rc = inode_has_perm(cred, inode, av, &ad); in file_has_perm()
1697 struct common_audit_data ad; in may_create() local
1706 ad.type = LSM_AUDIT_DATA_DENTRY; in may_create()
1707 ad.u.dentry = dentry; in may_create()
1711 &ad); in may_create()
1722 rc = avc_has_perm(sid, newsid, tclass, FILE__CREATE, &ad); in may_create()
1728 FILESYSTEM__ASSOCIATE, &ad); in may_create()
1751 struct common_audit_data ad; in may_link() local
1759 ad.type = LSM_AUDIT_DATA_DENTRY; in may_link()
1760 ad.u.dentry = dentry; in may_link()
1764 rc = avc_has_perm(sid, dsec->sid, SECCLASS_DIR, av, &ad); in may_link()
1784 rc = avc_has_perm(sid, isec->sid, isec->sclass, av, &ad); in may_link()
1794 struct common_audit_data ad; in may_rename() local
1805 ad.type = LSM_AUDIT_DATA_DENTRY; in may_rename()
1807 ad.u.dentry = old_dentry; in may_rename()
1809 DIR__REMOVE_NAME | DIR__SEARCH, &ad); in may_rename()
1813 old_isec->sclass, FILE__RENAME, &ad); in may_rename()
1818 old_isec->sclass, DIR__REPARENT, &ad); in may_rename()
1823 ad.u.dentry = new_dentry; in may_rename()
1827 rc = avc_has_perm(sid, new_dsec->sid, SECCLASS_DIR, av, &ad); in may_rename()
1835 (new_is_dir ? DIR__RMDIR : FILE__UNLINK), &ad); in may_rename()
1847 struct common_audit_data *ad) in superblock_has_perm() argument
1853 return avc_has_perm(sid, sbsec->sid, SECCLASS_FILESYSTEM, perms, ad); in superblock_has_perm()
1969 struct common_audit_data ad; in selinux_binder_transfer_file() local
1972 ad.type = LSM_AUDIT_DATA_PATH; in selinux_binder_transfer_file()
1973 ad.u.path = file->f_path; in selinux_binder_transfer_file()
1979 &ad); in selinux_binder_transfer_file()
1988 &ad); in selinux_binder_transfer_file()
2193 struct common_audit_data ad; in selinux_bprm_set_creds() local
2245 ad.type = LSM_AUDIT_DATA_PATH; in selinux_bprm_set_creds()
2246 ad.u.path = bprm->file->f_path; in selinux_bprm_set_creds()
2250 SECCLASS_FILE, FILE__EXECUTE_NO_TRANS, &ad); in selinux_bprm_set_creds()
2256 SECCLASS_PROCESS, PROCESS__TRANSITION, &ad); in selinux_bprm_set_creds()
2261 SECCLASS_FILE, FILE__ENTRYPOINT, &ad); in selinux_bprm_set_creds()
2662 struct common_audit_data ad; in selinux_sb_kern_mount() local
2673 ad.type = LSM_AUDIT_DATA_DENTRY; in selinux_sb_kern_mount()
2674 ad.u.dentry = sb->s_root; in selinux_sb_kern_mount()
2675 return superblock_has_perm(cred, sb, FILESYSTEM__MOUNT, &ad); in selinux_sb_kern_mount()
2681 struct common_audit_data ad; in selinux_sb_statfs() local
2683 ad.type = LSM_AUDIT_DATA_DENTRY; in selinux_sb_statfs()
2684 ad.u.dentry = dentry->d_sb->s_root; in selinux_sb_statfs()
2685 return superblock_has_perm(cred, dentry->d_sb, FILESYSTEM__GETATTR, &ad); in selinux_sb_statfs()
2877 struct common_audit_data ad; in audit_inode_permission() local
2881 ad.type = LSM_AUDIT_DATA_INODE; in audit_inode_permission()
2882 ad.u.inode = inode; in audit_inode_permission()
2885 audited, denied, result, &ad, flags); in audit_inode_permission()
2989 struct common_audit_data ad; in selinux_inode_setxattr() local
3003 ad.type = LSM_AUDIT_DATA_DENTRY; in selinux_inode_setxattr()
3004 ad.u.dentry = dentry; in selinux_inode_setxattr()
3007 FILE__RELABELFROM, &ad); in selinux_inode_setxattr()
3043 FILE__RELABELTO, &ad); in selinux_inode_setxattr()
3056 &ad); in selinux_inode_setxattr()
3611 struct common_audit_data ad; in selinux_kernel_module_request() local
3615 ad.type = LSM_AUDIT_DATA_KMOD; in selinux_kernel_module_request()
3616 ad.u.kmod_name = kmod_name; in selinux_kernel_module_request()
3619 SYSTEM__MODULE_REQUEST, &ad); in selinux_kernel_module_request()
3740 struct common_audit_data *ad, u8 *proto) in selinux_parse_skb_ipv4() argument
3754 ad->u.net->v4info.saddr = ih->saddr; in selinux_parse_skb_ipv4()
3755 ad->u.net->v4info.daddr = ih->daddr; in selinux_parse_skb_ipv4()
3773 ad->u.net->sport = th->source; in selinux_parse_skb_ipv4()
3774 ad->u.net->dport = th->dest; in selinux_parse_skb_ipv4()
3789 ad->u.net->sport = uh->source; in selinux_parse_skb_ipv4()
3790 ad->u.net->dport = uh->dest; in selinux_parse_skb_ipv4()
3805 ad->u.net->sport = dh->dccph_sport; in selinux_parse_skb_ipv4()
3806 ad->u.net->dport = dh->dccph_dport; in selinux_parse_skb_ipv4()
3821 struct common_audit_data *ad, u8 *proto) in selinux_parse_skb_ipv6() argument
3833 ad->u.net->v6info.saddr = ip6->saddr; in selinux_parse_skb_ipv6()
3834 ad->u.net->v6info.daddr = ip6->daddr; in selinux_parse_skb_ipv6()
3854 ad->u.net->sport = th->source; in selinux_parse_skb_ipv6()
3855 ad->u.net->dport = th->dest; in selinux_parse_skb_ipv6()
3866 ad->u.net->sport = uh->source; in selinux_parse_skb_ipv6()
3867 ad->u.net->dport = uh->dest; in selinux_parse_skb_ipv6()
3878 ad->u.net->sport = dh->dccph_sport; in selinux_parse_skb_ipv6()
3879 ad->u.net->dport = dh->dccph_dport; in selinux_parse_skb_ipv6()
3893 static int selinux_parse_skb(struct sk_buff *skb, struct common_audit_data *ad, in selinux_parse_skb() argument
3899 switch (ad->u.net->family) { in selinux_parse_skb()
3901 ret = selinux_parse_skb_ipv4(skb, ad, proto); in selinux_parse_skb()
3904 addrp = (char *)(src ? &ad->u.net->v4info.saddr : in selinux_parse_skb()
3905 &ad->u.net->v4info.daddr); in selinux_parse_skb()
3910 ret = selinux_parse_skb_ipv6(skb, ad, proto); in selinux_parse_skb()
3913 addrp = (char *)(src ? &ad->u.net->v6info.saddr : in selinux_parse_skb()
3914 &ad->u.net->v6info.daddr); in selinux_parse_skb()
4015 struct common_audit_data ad; in sock_has_perm() local
4022 ad.type = LSM_AUDIT_DATA_NET; in sock_has_perm()
4023 ad.u.net = &net; in sock_has_perm()
4024 ad.u.net->sk = sk; in sock_has_perm()
4026 return avc_has_perm(tsid, sksec->sid, sksec->sclass, perms, &ad); in sock_has_perm()
4101 struct common_audit_data ad; in selinux_socket_bind() local
4128 ad.type = LSM_AUDIT_DATA_NET; in selinux_socket_bind()
4129 ad.u.net = &net; in selinux_socket_bind()
4130 ad.u.net->sport = htons(snum); in selinux_socket_bind()
4131 ad.u.net->family = family; in selinux_socket_bind()
4134 SOCKET__NAME_BIND, &ad); in selinux_socket_bind()
4162 ad.type = LSM_AUDIT_DATA_NET; in selinux_socket_bind()
4163 ad.u.net = &net; in selinux_socket_bind()
4164 ad.u.net->sport = htons(snum); in selinux_socket_bind()
4165 ad.u.net->family = family; in selinux_socket_bind()
4168 ad.u.net->v4info.saddr = addr4->sin_addr.s_addr; in selinux_socket_bind()
4170 ad.u.net->v6info.saddr = addr6->sin6_addr; in selinux_socket_bind()
4173 sksec->sclass, node_perm, &ad); in selinux_socket_bind()
4196 struct common_audit_data ad; in selinux_socket_connect() local
4222 ad.type = LSM_AUDIT_DATA_NET; in selinux_socket_connect()
4223 ad.u.net = &net; in selinux_socket_connect()
4224 ad.u.net->dport = htons(snum); in selinux_socket_connect()
4225 ad.u.net->family = sk->sk_family; in selinux_socket_connect()
4226 err = avc_has_perm(sksec->sid, sid, sksec->sclass, perm, &ad); in selinux_socket_connect()
4313 struct common_audit_data ad; in selinux_socket_unix_stream_connect() local
4317 ad.type = LSM_AUDIT_DATA_NET; in selinux_socket_unix_stream_connect()
4318 ad.u.net = &net; in selinux_socket_unix_stream_connect()
4319 ad.u.net->sk = other; in selinux_socket_unix_stream_connect()
4323 UNIX_STREAM_SOCKET__CONNECTTO, &ad); in selinux_socket_unix_stream_connect()
4345 struct common_audit_data ad; in selinux_socket_unix_may_send() local
4348 ad.type = LSM_AUDIT_DATA_NET; in selinux_socket_unix_may_send()
4349 ad.u.net = &net; in selinux_socket_unix_may_send()
4350 ad.u.net->sk = other->sk; in selinux_socket_unix_may_send()
4353 &ad); in selinux_socket_unix_may_send()
4358 struct common_audit_data *ad) in selinux_inet_sys_rcv_skb() argument
4368 SECCLASS_NETIF, NETIF__INGRESS, ad); in selinux_inet_sys_rcv_skb()
4376 SECCLASS_NODE, NODE__RECVFROM, ad); in selinux_inet_sys_rcv_skb()
4385 struct common_audit_data ad; in selinux_sock_rcv_skb_compat() local
4389 ad.type = LSM_AUDIT_DATA_NET; in selinux_sock_rcv_skb_compat()
4390 ad.u.net = &net; in selinux_sock_rcv_skb_compat()
4391 ad.u.net->netif = skb->skb_iif; in selinux_sock_rcv_skb_compat()
4392 ad.u.net->family = family; in selinux_sock_rcv_skb_compat()
4393 err = selinux_parse_skb(skb, &ad, &addrp, 1, NULL); in selinux_sock_rcv_skb_compat()
4399 PACKET__RECV, &ad); in selinux_sock_rcv_skb_compat()
4404 err = selinux_netlbl_sock_rcv_skb(sksec, skb, family, &ad); in selinux_sock_rcv_skb_compat()
4407 err = selinux_xfrm_sock_rcv_skb(sksec->sid, skb, &ad); in selinux_sock_rcv_skb_compat()
4418 struct common_audit_data ad; in selinux_socket_sock_rcv_skb() local
4443 ad.type = LSM_AUDIT_DATA_NET; in selinux_socket_sock_rcv_skb()
4444 ad.u.net = &net; in selinux_socket_sock_rcv_skb()
4445 ad.u.net->netif = skb->skb_iif; in selinux_socket_sock_rcv_skb()
4446 ad.u.net->family = family; in selinux_socket_sock_rcv_skb()
4447 err = selinux_parse_skb(skb, &ad, &addrp, 1, NULL); in selinux_socket_sock_rcv_skb()
4458 addrp, family, peer_sid, &ad); in selinux_socket_sock_rcv_skb()
4464 PEER__RECV, &ad); in selinux_socket_sock_rcv_skb()
4473 PACKET__RECV, &ad); in selinux_socket_sock_rcv_skb()
4799 struct common_audit_data ad; in selinux_ip_forward() local
4817 ad.type = LSM_AUDIT_DATA_NET; in selinux_ip_forward()
4818 ad.u.net = &net; in selinux_ip_forward()
4819 ad.u.net->netif = indev->ifindex; in selinux_ip_forward()
4820 ad.u.net->family = family; in selinux_ip_forward()
4821 if (selinux_parse_skb(skb, &ad, &addrp, 1, NULL) != 0) in selinux_ip_forward()
4826 addrp, family, peer_sid, &ad); in selinux_ip_forward()
4835 SECCLASS_PACKET, PACKET__FORWARD_IN, &ad)) in selinux_ip_forward()
4920 struct common_audit_data ad; in selinux_ip_postroute_compat() local
4929 ad.type = LSM_AUDIT_DATA_NET; in selinux_ip_postroute_compat()
4930 ad.u.net = &net; in selinux_ip_postroute_compat()
4931 ad.u.net->netif = ifindex; in selinux_ip_postroute_compat()
4932 ad.u.net->family = family; in selinux_ip_postroute_compat()
4933 if (selinux_parse_skb(skb, &ad, &addrp, 0, &proto)) in selinux_ip_postroute_compat()
4938 SECCLASS_PACKET, PACKET__SEND, &ad)) in selinux_ip_postroute_compat()
4941 if (selinux_xfrm_postroute_last(sksec->sid, skb, &ad, proto)) in selinux_ip_postroute_compat()
4955 struct common_audit_data ad; in selinux_ip_postroute() local
5050 ad.type = LSM_AUDIT_DATA_NET; in selinux_ip_postroute()
5051 ad.u.net = &net; in selinux_ip_postroute()
5052 ad.u.net->netif = ifindex; in selinux_ip_postroute()
5053 ad.u.net->family = family; in selinux_ip_postroute()
5054 if (selinux_parse_skb(skb, &ad, &addrp, 0, NULL)) in selinux_ip_postroute()
5059 SECCLASS_PACKET, secmark_perm, &ad)) in selinux_ip_postroute()
5069 SECCLASS_NETIF, NETIF__EGRESS, &ad)) in selinux_ip_postroute()
5075 SECCLASS_NODE, NODE__SENDTO, &ad)) in selinux_ip_postroute()
5163 struct common_audit_data ad; in ipc_has_perm() local
5168 ad.type = LSM_AUDIT_DATA_IPC; in ipc_has_perm()
5169 ad.u.ipc_id = ipc_perms->key; in ipc_has_perm()
5171 return avc_has_perm(sid, isec->sid, isec->sclass, perms, &ad); in ipc_has_perm()
5188 struct common_audit_data ad; in selinux_msg_queue_alloc_security() local
5198 ad.type = LSM_AUDIT_DATA_IPC; in selinux_msg_queue_alloc_security()
5199 ad.u.ipc_id = msq->q_perm.key; in selinux_msg_queue_alloc_security()
5202 MSGQ__CREATE, &ad); in selinux_msg_queue_alloc_security()
5218 struct common_audit_data ad; in selinux_msg_queue_associate() local
5223 ad.type = LSM_AUDIT_DATA_IPC; in selinux_msg_queue_associate()
5224 ad.u.ipc_id = msq->q_perm.key; in selinux_msg_queue_associate()
5227 MSGQ__ASSOCIATE, &ad); in selinux_msg_queue_associate()
5262 struct common_audit_data ad; in selinux_msg_queue_msgsnd() local
5283 ad.type = LSM_AUDIT_DATA_IPC; in selinux_msg_queue_msgsnd()
5284 ad.u.ipc_id = msq->q_perm.key; in selinux_msg_queue_msgsnd()
5288 MSGQ__WRITE, &ad); in selinux_msg_queue_msgsnd()
5292 MSG__SEND, &ad); in selinux_msg_queue_msgsnd()
5296 MSGQ__ENQUEUE, &ad); in selinux_msg_queue_msgsnd()
5307 struct common_audit_data ad; in selinux_msg_queue_msgrcv() local
5314 ad.type = LSM_AUDIT_DATA_IPC; in selinux_msg_queue_msgrcv()
5315 ad.u.ipc_id = msq->q_perm.key; in selinux_msg_queue_msgrcv()
5318 SECCLASS_MSGQ, MSGQ__READ, &ad); in selinux_msg_queue_msgrcv()
5321 SECCLASS_MSG, MSG__RECEIVE, &ad); in selinux_msg_queue_msgrcv()
5329 struct common_audit_data ad; in selinux_shm_alloc_security() local
5339 ad.type = LSM_AUDIT_DATA_IPC; in selinux_shm_alloc_security()
5340 ad.u.ipc_id = shp->shm_perm.key; in selinux_shm_alloc_security()
5343 SHM__CREATE, &ad); in selinux_shm_alloc_security()
5359 struct common_audit_data ad; in selinux_shm_associate() local
5364 ad.type = LSM_AUDIT_DATA_IPC; in selinux_shm_associate()
5365 ad.u.ipc_id = shp->shm_perm.key; in selinux_shm_associate()
5368 SHM__ASSOCIATE, &ad); in selinux_shm_associate()
5421 struct common_audit_data ad; in selinux_sem_alloc_security() local
5431 ad.type = LSM_AUDIT_DATA_IPC; in selinux_sem_alloc_security()
5432 ad.u.ipc_id = sma->sem_perm.key; in selinux_sem_alloc_security()
5435 SEM__CREATE, &ad); in selinux_sem_alloc_security()
5451 struct common_audit_data ad; in selinux_sem_associate() local
5456 ad.type = LSM_AUDIT_DATA_IPC; in selinux_sem_associate()
5457 ad.u.ipc_id = sma->sem_perm.key; in selinux_sem_associate()
5460 SEM__ASSOCIATE, &ad); in selinux_sem_associate()