Lines Matching full:ad

229 static void __ad_net_init(struct common_audit_data *ad,  in __ad_net_init()  argument
233 ad->type = LSM_AUDIT_DATA_NET; in __ad_net_init()
234 ad->u.net = net; in __ad_net_init()
240 static void ad_net_init_from_sk(struct common_audit_data *ad, in ad_net_init_from_sk() argument
244 __ad_net_init(ad, net, 0, sk, 0); in ad_net_init_from_sk()
247 static void ad_net_init_from_iif(struct common_audit_data *ad, in ad_net_init_from_iif() argument
251 __ad_net_init(ad, net, ifindex, NULL, family); in ad_net_init_from_iif()
1620 struct common_audit_data ad; in cred_has_capability() local
1627 ad.type = LSM_AUDIT_DATA_CAP; in cred_has_capability()
1628 ad.u.cap = cap; in cred_has_capability()
1645 int rc2 = avc_audit(sid, sid, sclass, av, &avd, rc, &ad); in cred_has_capability()
1682 struct common_audit_data ad; in dentry_has_perm() local
1684 ad.type = LSM_AUDIT_DATA_DENTRY; in dentry_has_perm()
1685 ad.u.dentry = dentry; in dentry_has_perm()
1687 return inode_has_perm(cred, inode, av, &ad); in dentry_has_perm()
1698 struct common_audit_data ad; in path_has_perm() local
1700 ad.type = LSM_AUDIT_DATA_PATH; in path_has_perm()
1701 ad.u.path = *path; in path_has_perm()
1703 return inode_has_perm(cred, inode, av, &ad); in path_has_perm()
1711 struct common_audit_data ad; in file_path_has_perm() local
1713 ad.type = LSM_AUDIT_DATA_FILE; in file_path_has_perm()
1714 ad.u.file = file; in file_path_has_perm()
1715 return inode_has_perm(cred, file_inode(file), av, &ad); in file_path_has_perm()
1736 struct common_audit_data ad; in file_has_perm() local
1740 ad.type = LSM_AUDIT_DATA_FILE; in file_has_perm()
1741 ad.u.file = file; in file_has_perm()
1747 &ad); in file_has_perm()
1761 rc = inode_has_perm(cred, inode, av, &ad); in file_has_perm()
1804 struct common_audit_data ad; in may_create() local
1812 ad.type = LSM_AUDIT_DATA_DENTRY; in may_create()
1813 ad.u.dentry = dentry; in may_create()
1817 &ad); in may_create()
1826 rc = avc_has_perm(sid, newsid, tclass, FILE__CREATE, &ad); in may_create()
1832 FILESYSTEM__ASSOCIATE, &ad); in may_create()
1846 struct common_audit_data ad; in may_link() local
1854 ad.type = LSM_AUDIT_DATA_DENTRY; in may_link()
1855 ad.u.dentry = dentry; in may_link()
1859 rc = avc_has_perm(sid, dsec->sid, SECCLASS_DIR, av, &ad); in may_link()
1879 rc = avc_has_perm(sid, isec->sid, isec->sclass, av, &ad); in may_link()
1889 struct common_audit_data ad; in may_rename() local
1900 ad.type = LSM_AUDIT_DATA_DENTRY; in may_rename()
1902 ad.u.dentry = old_dentry; in may_rename()
1904 DIR__REMOVE_NAME | DIR__SEARCH, &ad); in may_rename()
1908 old_isec->sclass, FILE__RENAME, &ad); in may_rename()
1913 old_isec->sclass, DIR__REPARENT, &ad); in may_rename()
1918 ad.u.dentry = new_dentry; in may_rename()
1922 rc = avc_has_perm(sid, new_dsec->sid, SECCLASS_DIR, av, &ad); in may_rename()
1930 (new_is_dir ? DIR__RMDIR : FILE__UNLINK), &ad); in may_rename()
1942 struct common_audit_data *ad) in superblock_has_perm() argument
1948 return avc_has_perm(sid, sbsec->sid, SECCLASS_FILESYSTEM, perms, ad); in superblock_has_perm()
2061 struct common_audit_data ad; in selinux_binder_transfer_file() local
2064 ad.type = LSM_AUDIT_DATA_PATH; in selinux_binder_transfer_file()
2065 ad.u.path = file->f_path; in selinux_binder_transfer_file()
2071 &ad); in selinux_binder_transfer_file()
2087 &ad); in selinux_binder_transfer_file()
2298 struct common_audit_data ad; in selinux_bprm_creds_for_exec() local
2344 ad.type = LSM_AUDIT_DATA_FILE; in selinux_bprm_creds_for_exec()
2345 ad.u.file = bprm->file; in selinux_bprm_creds_for_exec()
2349 SECCLASS_FILE, FILE__EXECUTE_NO_TRANS, &ad); in selinux_bprm_creds_for_exec()
2355 SECCLASS_PROCESS, PROCESS__TRANSITION, &ad); in selinux_bprm_creds_for_exec()
2360 SECCLASS_FILE, FILE__ENTRYPOINT, &ad); in selinux_bprm_creds_for_exec()
2727 struct common_audit_data ad; in selinux_sb_kern_mount() local
2729 ad.type = LSM_AUDIT_DATA_DENTRY; in selinux_sb_kern_mount()
2730 ad.u.dentry = sb->s_root; in selinux_sb_kern_mount()
2731 return superblock_has_perm(cred, sb, FILESYSTEM__MOUNT, &ad); in selinux_sb_kern_mount()
2737 struct common_audit_data ad; in selinux_sb_statfs() local
2739 ad.type = LSM_AUDIT_DATA_DENTRY; in selinux_sb_statfs()
2740 ad.u.dentry = dentry->d_sb->s_root; in selinux_sb_statfs()
2741 return superblock_has_perm(cred, dentry->d_sb, FILESYSTEM__GETATTR, &ad); in selinux_sb_statfs()
2953 struct common_audit_data ad; in selinux_inode_init_security_anon() local
2993 ad.type = LSM_AUDIT_DATA_ANONINODE; in selinux_inode_init_security_anon()
2994 ad.u.anonclass = name ? (const char *)name->name : "?"; in selinux_inode_init_security_anon()
3000 &ad); in selinux_inode_init_security_anon()
3055 struct common_audit_data ad; in selinux_inode_follow_link() local
3061 ad.type = LSM_AUDIT_DATA_DENTRY; in selinux_inode_follow_link()
3062 ad.u.dentry = dentry; in selinux_inode_follow_link()
3068 return avc_has_perm(sid, isec->sid, isec->sclass, FILE__READ, &ad); in selinux_inode_follow_link()
3075 struct common_audit_data ad; in audit_inode_permission() local
3078 ad.type = LSM_AUDIT_DATA_INODE; in audit_inode_permission()
3079 ad.u.inode = inode; in audit_inode_permission()
3082 audited, denied, result, &ad); in audit_inode_permission()
3182 struct common_audit_data ad; in selinux_inode_setxattr() local
3206 ad.type = LSM_AUDIT_DATA_DENTRY; in selinux_inode_setxattr()
3207 ad.u.dentry = dentry; in selinux_inode_setxattr()
3211 FILE__RELABELFROM, &ad); in selinux_inode_setxattr()
3251 FILE__RELABELTO, &ad); in selinux_inode_setxattr()
3264 &ad); in selinux_inode_setxattr()
3367 struct common_audit_data ad; in selinux_path_notify() local
3369 ad.type = LSM_AUDIT_DATA_PATH; in selinux_path_notify()
3370 ad.u.path = *path; in selinux_path_notify()
3383 FILESYSTEM__WATCH, &ad); in selinux_path_notify()
3653 struct common_audit_data ad; in ioctl_has_perm() local
3663 ad.type = LSM_AUDIT_DATA_IOCTL_OP; in ioctl_has_perm()
3664 ad.u.op = &ioctl; in ioctl_has_perm()
3665 ad.u.op->cmd = cmd; in ioctl_has_perm()
3666 ad.u.op->path = file->f_path; in ioctl_has_perm()
3672 &ad); in ioctl_has_perm()
3682 requested, driver, xperm, &ad); in ioctl_has_perm()
3791 struct common_audit_data ad; in selinux_mmap_file() local
3795 ad.type = LSM_AUDIT_DATA_FILE; in selinux_mmap_file()
3796 ad.u.file = file; in selinux_mmap_file()
3798 FILE__MAP, &ad); in selinux_mmap_file()
4037 struct common_audit_data ad; in selinux_kernel_module_request() local
4039 ad.type = LSM_AUDIT_DATA_KMOD; in selinux_kernel_module_request()
4040 ad.u.kmod_name = kmod_name; in selinux_kernel_module_request()
4043 SYSTEM__MODULE_REQUEST, &ad); in selinux_kernel_module_request()
4048 struct common_audit_data ad; in selinux_kernel_module_from_file() local
4061 ad.type = LSM_AUDIT_DATA_FILE; in selinux_kernel_module_from_file()
4062 ad.u.file = file; in selinux_kernel_module_from_file()
4066 rc = avc_has_perm(sid, fsec->sid, SECCLASS_FD, FD__USE, &ad); in selinux_kernel_module_from_file()
4073 SYSTEM__MODULE_LOAD, &ad); in selinux_kernel_module_from_file()
4243 struct common_audit_data *ad, u8 *proto) in selinux_parse_skb_ipv4() argument
4257 ad->u.net->v4info.saddr = ih->saddr; in selinux_parse_skb_ipv4()
4258 ad->u.net->v4info.daddr = ih->daddr; in selinux_parse_skb_ipv4()
4276 ad->u.net->sport = th->source; in selinux_parse_skb_ipv4()
4277 ad->u.net->dport = th->dest; in selinux_parse_skb_ipv4()
4292 ad->u.net->sport = uh->source; in selinux_parse_skb_ipv4()
4293 ad->u.net->dport = uh->dest; in selinux_parse_skb_ipv4()
4308 ad->u.net->sport = dh->dccph_sport; in selinux_parse_skb_ipv4()
4309 ad->u.net->dport = dh->dccph_dport; in selinux_parse_skb_ipv4()
4325 ad->u.net->sport = sh->source; in selinux_parse_skb_ipv4()
4326 ad->u.net->dport = sh->dest; in selinux_parse_skb_ipv4()
4341 struct common_audit_data *ad, u8 *proto) in selinux_parse_skb_ipv6() argument
4353 ad->u.net->v6info.saddr = ip6->saddr; in selinux_parse_skb_ipv6()
4354 ad->u.net->v6info.daddr = ip6->daddr; in selinux_parse_skb_ipv6()
4374 ad->u.net->sport = th->source; in selinux_parse_skb_ipv6()
4375 ad->u.net->dport = th->dest; in selinux_parse_skb_ipv6()
4386 ad->u.net->sport = uh->source; in selinux_parse_skb_ipv6()
4387 ad->u.net->dport = uh->dest; in selinux_parse_skb_ipv6()
4398 ad->u.net->sport = dh->dccph_sport; in selinux_parse_skb_ipv6()
4399 ad->u.net->dport = dh->dccph_dport; in selinux_parse_skb_ipv6()
4411 ad->u.net->sport = sh->source; in selinux_parse_skb_ipv6()
4412 ad->u.net->dport = sh->dest; in selinux_parse_skb_ipv6()
4426 static int selinux_parse_skb(struct sk_buff *skb, struct common_audit_data *ad, in selinux_parse_skb() argument
4432 switch (ad->u.net->family) { in selinux_parse_skb()
4434 ret = selinux_parse_skb_ipv4(skb, ad, proto); in selinux_parse_skb()
4437 addrp = (char *)(src ? &ad->u.net->v4info.saddr : in selinux_parse_skb()
4438 &ad->u.net->v4info.daddr); in selinux_parse_skb()
4443 ret = selinux_parse_skb_ipv6(skb, ad, proto); in selinux_parse_skb()
4446 addrp = (char *)(src ? &ad->u.net->v6info.saddr : in selinux_parse_skb()
4447 &ad->u.net->v6info.daddr); in selinux_parse_skb()
4550 struct common_audit_data ad; in sock_has_perm() local
4556 ad_net_init_from_sk(&ad, &net, sk); in sock_has_perm()
4559 &ad); in sock_has_perm()
4646 struct common_audit_data ad; in selinux_socket_bind() local
4691 ad.type = LSM_AUDIT_DATA_NET; in selinux_socket_bind()
4692 ad.u.net = &net; in selinux_socket_bind()
4693 ad.u.net->sport = htons(snum); in selinux_socket_bind()
4694 ad.u.net->family = family_sa; in selinux_socket_bind()
4709 SOCKET__NAME_BIND, &ad); in selinux_socket_bind()
4742 ad.u.net->v4info.saddr = addr4->sin_addr.s_addr; in selinux_socket_bind()
4744 ad.u.net->v6info.saddr = addr6->sin6_addr; in selinux_socket_bind()
4747 sksec->sclass, node_perm, &ad); in selinux_socket_bind()
4789 struct common_audit_data ad; in selinux_socket_connect_helper() local
4840 ad.type = LSM_AUDIT_DATA_NET; in selinux_socket_connect_helper()
4841 ad.u.net = &net; in selinux_socket_connect_helper()
4842 ad.u.net->dport = htons(snum); in selinux_socket_connect_helper()
4843 ad.u.net->family = address->sa_family; in selinux_socket_connect_helper()
4844 err = avc_has_perm(sksec->sid, sid, sksec->sclass, perm, &ad); in selinux_socket_connect_helper()
4948 struct common_audit_data ad; in selinux_socket_unix_stream_connect() local
4952 ad_net_init_from_sk(&ad, &net, other); in selinux_socket_unix_stream_connect()
4956 UNIX_STREAM_SOCKET__CONNECTTO, &ad); in selinux_socket_unix_stream_connect()
4978 struct common_audit_data ad; in selinux_socket_unix_may_send() local
4981 ad_net_init_from_sk(&ad, &net, other->sk); in selinux_socket_unix_may_send()
4984 &ad); in selinux_socket_unix_may_send()
4989 struct common_audit_data *ad) in selinux_inet_sys_rcv_skb() argument
4999 SECCLASS_NETIF, NETIF__INGRESS, ad); in selinux_inet_sys_rcv_skb()
5007 SECCLASS_NODE, NODE__RECVFROM, ad); in selinux_inet_sys_rcv_skb()
5016 struct common_audit_data ad; in selinux_sock_rcv_skb_compat() local
5020 ad_net_init_from_iif(&ad, &net, skb->skb_iif, family); in selinux_sock_rcv_skb_compat()
5021 err = selinux_parse_skb(skb, &ad, &addrp, 1, NULL); in selinux_sock_rcv_skb_compat()
5027 PACKET__RECV, &ad); in selinux_sock_rcv_skb_compat()
5032 err = selinux_netlbl_sock_rcv_skb(sksec, skb, family, &ad); in selinux_sock_rcv_skb_compat()
5035 err = selinux_xfrm_sock_rcv_skb(sksec->sid, skb, &ad); in selinux_sock_rcv_skb_compat()
5046 struct common_audit_data ad; in selinux_socket_sock_rcv_skb() local
5069 ad_net_init_from_iif(&ad, &net, skb->skb_iif, family); in selinux_socket_sock_rcv_skb()
5070 err = selinux_parse_skb(skb, &ad, &addrp, 1, NULL); in selinux_socket_sock_rcv_skb()
5081 addrp, family, peer_sid, &ad); in selinux_socket_sock_rcv_skb()
5087 PEER__RECV, &ad); in selinux_socket_sock_rcv_skb()
5096 PACKET__RECV, &ad); in selinux_socket_sock_rcv_skb()
5238 struct common_audit_data ad; in selinux_sctp_process_new_assoc() local
5275 ad_net_init_from_sk(&ad, &net, asoc->base.sk); in selinux_sctp_process_new_assoc()
5278 &ad); in selinux_sctp_process_new_assoc()
5619 struct common_audit_data ad; in selinux_ip_forward() local
5636 ad_net_init_from_iif(&ad, &net, ifindex, family); in selinux_ip_forward()
5637 if (selinux_parse_skb(skb, &ad, &addrp, 1, NULL) != 0) in selinux_ip_forward()
5644 addrp, family, peer_sid, &ad); in selinux_ip_forward()
5653 SECCLASS_PACKET, PACKET__FORWARD_IN, &ad)) in selinux_ip_forward()
5715 struct common_audit_data ad; in selinux_ip_postroute_compat() local
5724 ad_net_init_from_iif(&ad, &net, state->out->ifindex, state->pf); in selinux_ip_postroute_compat()
5725 if (selinux_parse_skb(skb, &ad, NULL, 0, &proto)) in selinux_ip_postroute_compat()
5730 SECCLASS_PACKET, PACKET__SEND, &ad)) in selinux_ip_postroute_compat()
5733 if (selinux_xfrm_postroute_last(sksec->sid, skb, &ad, proto)) in selinux_ip_postroute_compat()
5748 struct common_audit_data ad; in selinux_ip_postroute() local
5846 ad_net_init_from_iif(&ad, &net, ifindex, family); in selinux_ip_postroute()
5847 if (selinux_parse_skb(skb, &ad, &addrp, 0, NULL)) in selinux_ip_postroute()
5852 SECCLASS_PACKET, secmark_perm, &ad)) in selinux_ip_postroute()
5862 SECCLASS_NETIF, NETIF__EGRESS, &ad)) in selinux_ip_postroute()
5868 SECCLASS_NODE, NODE__SENDTO, &ad)) in selinux_ip_postroute()
5944 struct common_audit_data ad; in ipc_has_perm() local
5949 ad.type = LSM_AUDIT_DATA_IPC; in ipc_has_perm()
5950 ad.u.ipc_id = ipc_perms->key; in ipc_has_perm()
5952 return avc_has_perm(sid, isec->sid, isec->sclass, perms, &ad); in ipc_has_perm()
5969 struct common_audit_data ad; in selinux_msg_queue_alloc_security() local
5975 ad.type = LSM_AUDIT_DATA_IPC; in selinux_msg_queue_alloc_security()
5976 ad.u.ipc_id = msq->key; in selinux_msg_queue_alloc_security()
5979 MSGQ__CREATE, &ad); in selinux_msg_queue_alloc_security()
5985 struct common_audit_data ad; in selinux_msg_queue_associate() local
5990 ad.type = LSM_AUDIT_DATA_IPC; in selinux_msg_queue_associate()
5991 ad.u.ipc_id = msq->key; in selinux_msg_queue_associate()
5994 MSGQ__ASSOCIATE, &ad); in selinux_msg_queue_associate()
6029 struct common_audit_data ad; in selinux_msg_queue_msgsnd() local
6050 ad.type = LSM_AUDIT_DATA_IPC; in selinux_msg_queue_msgsnd()
6051 ad.u.ipc_id = msq->key; in selinux_msg_queue_msgsnd()
6055 MSGQ__WRITE, &ad); in selinux_msg_queue_msgsnd()
6059 MSG__SEND, &ad); in selinux_msg_queue_msgsnd()
6063 MSGQ__ENQUEUE, &ad); in selinux_msg_queue_msgsnd()
6074 struct common_audit_data ad; in selinux_msg_queue_msgrcv() local
6081 ad.type = LSM_AUDIT_DATA_IPC; in selinux_msg_queue_msgrcv()
6082 ad.u.ipc_id = msq->key; in selinux_msg_queue_msgrcv()
6085 SECCLASS_MSGQ, MSGQ__READ, &ad); in selinux_msg_queue_msgrcv()
6088 SECCLASS_MSG, MSG__RECEIVE, &ad); in selinux_msg_queue_msgrcv()
6096 struct common_audit_data ad; in selinux_shm_alloc_security() local
6102 ad.type = LSM_AUDIT_DATA_IPC; in selinux_shm_alloc_security()
6103 ad.u.ipc_id = shp->key; in selinux_shm_alloc_security()
6106 SHM__CREATE, &ad); in selinux_shm_alloc_security()
6112 struct common_audit_data ad; in selinux_shm_associate() local
6117 ad.type = LSM_AUDIT_DATA_IPC; in selinux_shm_associate()
6118 ad.u.ipc_id = shp->key; in selinux_shm_associate()
6121 SHM__ASSOCIATE, &ad); in selinux_shm_associate()
6174 struct common_audit_data ad; in selinux_sem_alloc_security() local
6180 ad.type = LSM_AUDIT_DATA_IPC; in selinux_sem_alloc_security()
6181 ad.u.ipc_id = sma->key; in selinux_sem_alloc_security()
6184 SEM__CREATE, &ad); in selinux_sem_alloc_security()
6190 struct common_audit_data ad; in selinux_sem_associate() local
6195 ad.type = LSM_AUDIT_DATA_IPC; in selinux_sem_associate()
6196 ad.u.ipc_id = sma->key; in selinux_sem_associate()
6199 SEM__ASSOCIATE, &ad); in selinux_sem_associate()
6636 struct common_audit_data ad; in selinux_ib_pkey_access() local
6646 ad.type = LSM_AUDIT_DATA_IBPKEY; in selinux_ib_pkey_access()
6649 ad.u.ibpkey = &ibpkey; in selinux_ib_pkey_access()
6652 INFINIBAND_PKEY__ACCESS, &ad); in selinux_ib_pkey_access()
6658 struct common_audit_data ad; in selinux_ib_endport_manage_subnet() local
6670 ad.type = LSM_AUDIT_DATA_IBENDPORT; in selinux_ib_endport_manage_subnet()
6673 ad.u.ibendport = &ibendport; in selinux_ib_endport_manage_subnet()
6676 INFINIBAND_ENDPORT__MANAGE_SUBNET, &ad); in selinux_ib_endport_manage_subnet()
6943 struct common_audit_data ad; in selinux_uring_cmd() local
6945 ad.type = LSM_AUDIT_DATA_FILE; in selinux_uring_cmd()
6946 ad.u.file = file; in selinux_uring_cmd()
6949 SECCLASS_IO_URING, IO_URING__CMD, &ad); in selinux_uring_cmd()