Lines Matching refs:rc

91 		       struct smack_known *oskp, int mode, int rc)  in smk_bu_note()  argument
95 if (rc <= 0) in smk_bu_note()
96 return rc; in smk_bu_note()
97 if (rc > SMACK_UNCONFINED_OBJECT) in smk_bu_note()
98 rc = 0; in smk_bu_note()
101 pr_info("Smack %s: (%s %s %s) %s\n", smk_bu_mess[rc], in smk_bu_note()
111 int mode, int rc) in smk_bu_current() argument
116 if (rc <= 0) in smk_bu_current()
117 return rc; in smk_bu_current()
118 if (rc > SMACK_UNCONFINED_OBJECT) in smk_bu_current()
119 rc = 0; in smk_bu_current()
122 pr_info("Smack %s: (%s %s %s) %s %s\n", smk_bu_mess[rc], in smk_bu_current()
132 static int smk_bu_task(struct task_struct *otp, int mode, int rc) in smk_bu_task() argument
138 if (rc <= 0) in smk_bu_task()
139 return rc; in smk_bu_task()
140 if (rc > SMACK_UNCONFINED_OBJECT) in smk_bu_task()
141 rc = 0; in smk_bu_task()
144 pr_info("Smack %s: (%s %s %s) %s to %s\n", smk_bu_mess[rc], in smk_bu_task()
154 static int smk_bu_inode(struct inode *inode, int mode, int rc) in smk_bu_inode() argument
164 if (rc <= 0) in smk_bu_inode()
165 return rc; in smk_bu_inode()
166 if (rc > SMACK_UNCONFINED_OBJECT) in smk_bu_inode()
167 rc = 0; in smk_bu_inode()
168 if (rc == SMACK_UNCONFINED_SUBJECT && in smk_bu_inode()
174 pr_info("Smack %s: (%s %s %s) inode=(%s %ld) %s\n", smk_bu_mess[rc], in smk_bu_inode()
184 static int smk_bu_file(struct file *file, int mode, int rc) in smk_bu_file() argument
196 if (rc <= 0) in smk_bu_file()
197 return rc; in smk_bu_file()
198 if (rc > SMACK_UNCONFINED_OBJECT) in smk_bu_file()
199 rc = 0; in smk_bu_file()
202 pr_info("Smack %s: (%s %s %s) file=(%s %ld %pD) %s\n", smk_bu_mess[rc], in smk_bu_file()
214 int mode, int rc) in smk_bu_credfile() argument
226 if (rc <= 0) in smk_bu_credfile()
227 return rc; in smk_bu_credfile()
228 if (rc > SMACK_UNCONFINED_OBJECT) in smk_bu_credfile()
229 rc = 0; in smk_bu_credfile()
232 pr_info("Smack %s: (%s %s %s) file=(%s %ld %pD) %s\n", smk_bu_mess[rc], in smk_bu_credfile()
254 int rc; in smk_fetch() local
265 rc = ip->i_op->getxattr(dp, name, buffer, SMK_LONGLABEL); in smk_fetch()
266 if (rc > 0) in smk_fetch()
267 skp = smk_import_entry(buffer, rc); in smk_fetch()
333 int rc = 0; in smk_copy_rules() local
340 rc = -ENOMEM; in smk_copy_rules()
346 return rc; in smk_copy_rules()
378 int rc; in smk_ptrace_rule_check() local
397 rc = 0; in smk_ptrace_rule_check()
399 rc = -EACCES; in smk_ptrace_rule_check()
401 rc = 0; in smk_ptrace_rule_check()
403 rc = -EACCES; in smk_ptrace_rule_check()
408 0, rc, saip); in smk_ptrace_rule_check()
411 return rc; in smk_ptrace_rule_check()
415 rc = smk_tskacc(tsp, tracee_known, smk_ptrace_mode(mode), saip); in smk_ptrace_rule_check()
418 return rc; in smk_ptrace_rule_check()
437 int rc; in smack_ptrace_access_check() local
440 rc = cap_ptrace_access_check(ctp, mode); in smack_ptrace_access_check()
441 if (rc != 0) in smack_ptrace_access_check()
442 return rc; in smack_ptrace_access_check()
446 rc = smk_ptrace_rule_check(current, skp, mode, __func__); in smack_ptrace_access_check()
447 return rc; in smack_ptrace_access_check()
460 int rc; in smack_ptrace_traceme() local
463 rc = cap_ptrace_traceme(ptp); in smack_ptrace_traceme()
464 if (rc != 0) in smack_ptrace_traceme()
465 return rc; in smack_ptrace_traceme()
469 rc = smk_ptrace_rule_check(ptp, skp, PTRACE_MODE_ATTACH, __func__); in smack_ptrace_traceme()
470 return rc; in smack_ptrace_traceme()
481 int rc = 0; in smack_syslog() local
488 rc = -EACCES; in smack_syslog()
490 return rc; in smack_syslog()
694 int rc; in smack_sb_statfs() local
700 rc = smk_curacc(sbp->smk_floor, MAY_READ, &ad); in smack_sb_statfs()
701 rc = smk_bu_current("statfs", sbp->smk_floor, MAY_READ, rc); in smack_sb_statfs()
702 return rc; in smack_sb_statfs()
720 int rc; in smack_bprm_set_creds() local
722 rc = cap_bprm_set_creds(bprm); in smack_bprm_set_creds()
723 if (rc != 0) in smack_bprm_set_creds()
724 return rc; in smack_bprm_set_creds()
735 rc = 0; in smack_bprm_set_creds()
740 rc = smk_ptrace_rule_check(tracer, in smack_bprm_set_creds()
746 if (rc != 0) in smack_bprm_set_creds()
747 return rc; in smack_bprm_set_creds()
885 int rc; in smack_inode_link() local
891 rc = smk_curacc(isp, MAY_WRITE, &ad); in smack_inode_link()
892 rc = smk_bu_inode(d_backing_inode(old_dentry), MAY_WRITE, rc); in smack_inode_link()
894 if (rc == 0 && d_is_positive(new_dentry)) { in smack_inode_link()
897 rc = smk_curacc(isp, MAY_WRITE, &ad); in smack_inode_link()
898 rc = smk_bu_inode(d_backing_inode(new_dentry), MAY_WRITE, rc); in smack_inode_link()
901 return rc; in smack_inode_link()
916 int rc; in smack_inode_unlink() local
924 rc = smk_curacc(smk_of_inode(ip), MAY_WRITE, &ad); in smack_inode_unlink()
925 rc = smk_bu_inode(ip, MAY_WRITE, rc); in smack_inode_unlink()
926 if (rc == 0) { in smack_inode_unlink()
932 rc = smk_curacc(smk_of_inode(dir), MAY_WRITE, &ad); in smack_inode_unlink()
933 rc = smk_bu_inode(dir, MAY_WRITE, rc); in smack_inode_unlink()
935 return rc; in smack_inode_unlink()
949 int rc; in smack_inode_rmdir() local
957 rc = smk_curacc(smk_of_inode(d_backing_inode(dentry)), MAY_WRITE, &ad); in smack_inode_rmdir()
958 rc = smk_bu_inode(d_backing_inode(dentry), MAY_WRITE, rc); in smack_inode_rmdir()
959 if (rc == 0) { in smack_inode_rmdir()
965 rc = smk_curacc(smk_of_inode(dir), MAY_WRITE, &ad); in smack_inode_rmdir()
966 rc = smk_bu_inode(dir, MAY_WRITE, rc); in smack_inode_rmdir()
969 return rc; in smack_inode_rmdir()
989 int rc; in smack_inode_rename() local
997 rc = smk_curacc(isp, MAY_READWRITE, &ad); in smack_inode_rename()
998 rc = smk_bu_inode(d_backing_inode(old_dentry), MAY_READWRITE, rc); in smack_inode_rename()
1000 if (rc == 0 && d_is_positive(new_dentry)) { in smack_inode_rename()
1003 rc = smk_curacc(isp, MAY_READWRITE, &ad); in smack_inode_rename()
1004 rc = smk_bu_inode(d_backing_inode(new_dentry), MAY_READWRITE, rc); in smack_inode_rename()
1006 return rc; in smack_inode_rename()
1022 int rc; in smack_inode_permission() local
1036 rc = smk_curacc(smk_of_inode(inode), mask, &ad); in smack_inode_permission()
1037 rc = smk_bu_inode(inode, mask, rc); in smack_inode_permission()
1038 return rc; in smack_inode_permission()
1051 int rc; in smack_inode_setattr() local
1061 rc = smk_curacc(smk_of_inode(d_backing_inode(dentry)), MAY_WRITE, &ad); in smack_inode_setattr()
1062 rc = smk_bu_inode(d_backing_inode(dentry), MAY_WRITE, rc); in smack_inode_setattr()
1063 return rc; in smack_inode_setattr()
1077 int rc; in smack_inode_getattr() local
1081 rc = smk_curacc(smk_of_inode(inode), MAY_READ, &ad); in smack_inode_getattr()
1082 rc = smk_bu_inode(inode, MAY_READ, rc); in smack_inode_getattr()
1083 return rc; in smack_inode_getattr()
1106 int rc = 0; in smack_inode_setxattr() local
1125 rc = -EINVAL; in smack_inode_setxattr()
1127 rc = cap_inode_setxattr(dentry, name, value, size, flags); in smack_inode_setxattr()
1130 rc = -EPERM; in smack_inode_setxattr()
1132 if (rc == 0 && check_import) { in smack_inode_setxattr()
1136 rc = -EINVAL; in smack_inode_setxattr()
1142 if (rc == 0) { in smack_inode_setxattr()
1143 rc = smk_curacc(smk_of_inode(d_backing_inode(dentry)), MAY_WRITE, &ad); in smack_inode_setxattr()
1144 rc = smk_bu_inode(d_backing_inode(dentry), MAY_WRITE, rc); in smack_inode_setxattr()
1147 return rc; in smack_inode_setxattr()
1205 int rc; in smack_inode_getxattr() local
1210 rc = smk_curacc(smk_of_inode(d_backing_inode(dentry)), MAY_READ, &ad); in smack_inode_getxattr()
1211 rc = smk_bu_inode(d_backing_inode(dentry), MAY_READ, rc); in smack_inode_getxattr()
1212 return rc; in smack_inode_getxattr()
1228 int rc = 0; in smack_inode_removexattr() local
1237 rc = -EPERM; in smack_inode_removexattr()
1239 rc = cap_inode_removexattr(dentry, name); in smack_inode_removexattr()
1241 if (rc != 0) in smack_inode_removexattr()
1242 return rc; in smack_inode_removexattr()
1247 rc = smk_curacc(smk_of_inode(d_backing_inode(dentry)), MAY_WRITE, &ad); in smack_inode_removexattr()
1248 rc = smk_bu_inode(d_backing_inode(dentry), MAY_WRITE, rc); in smack_inode_removexattr()
1249 if (rc != 0) in smack_inode_removexattr()
1250 return rc; in smack_inode_removexattr()
1288 int rc = 0; in smack_inode_getsecurity() local
1318 if (rc == 0) { in smack_inode_getsecurity()
1320 rc = ilen; in smack_inode_getsecurity()
1323 return rc; in smack_inode_getsecurity()
1426 int rc = 0; in smack_file_ioctl() local
1434 rc = smk_curacc(smk_of_inode(inode), MAY_WRITE, &ad); in smack_file_ioctl()
1435 rc = smk_bu_file(file, MAY_WRITE, rc); in smack_file_ioctl()
1438 if (rc == 0 && (_IOC_DIR(cmd) & _IOC_READ)) { in smack_file_ioctl()
1439 rc = smk_curacc(smk_of_inode(inode), MAY_READ, &ad); in smack_file_ioctl()
1440 rc = smk_bu_file(file, MAY_READ, rc); in smack_file_ioctl()
1443 return rc; in smack_file_ioctl()
1456 int rc; in smack_file_lock() local
1461 rc = smk_curacc(smk_of_inode(inode), MAY_LOCK, &ad); in smack_file_lock()
1462 rc = smk_bu_file(file, MAY_LOCK, rc); in smack_file_lock()
1463 return rc; in smack_file_lock()
1482 int rc = 0; in smack_file_fcntl() local
1492 rc = smk_curacc(smk_of_inode(inode), MAY_LOCK, &ad); in smack_file_fcntl()
1493 rc = smk_bu_file(file, MAY_LOCK, rc); in smack_file_fcntl()
1499 rc = smk_curacc(smk_of_inode(inode), MAY_WRITE, &ad); in smack_file_fcntl()
1500 rc = smk_bu_file(file, MAY_WRITE, rc); in smack_file_fcntl()
1506 return rc; in smack_file_fcntl()
1532 int rc; in smack_mmap_file() local
1544 rc = 0; in smack_mmap_file()
1585 rc = -EACCES; in smack_mmap_file()
1603 rc = -EACCES; in smack_mmap_file()
1610 return rc; in smack_mmap_file()
1640 int rc; in smack_file_send_sigiotask() local
1650 rc = smk_access(skp, tkp, MAY_WRITE, NULL); in smack_file_send_sigiotask()
1651 rc = smk_bu_note("sigiotask", skp, tkp, MAY_WRITE, rc); in smack_file_send_sigiotask()
1652 if (rc != 0 && has_capability(tsk, CAP_MAC_OVERRIDE)) in smack_file_send_sigiotask()
1653 rc = 0; in smack_file_send_sigiotask()
1657 smack_log(skp->smk_known, tkp->smk_known, MAY_WRITE, rc, &ad); in smack_file_send_sigiotask()
1658 return rc; in smack_file_send_sigiotask()
1669 int rc; in smack_file_receive() local
1684 rc = smk_curacc(smk_of_inode(inode), may, &ad); in smack_file_receive()
1685 rc = smk_bu_file(file, may, rc); in smack_file_receive()
1686 return rc; in smack_file_receive()
1706 int rc; in smack_file_open() local
1713 rc = smk_access(tsp->smk_task, smk_of_inode(inode), MAY_READ, &ad); in smack_file_open()
1714 rc = smk_bu_credfile(cred, file, MAY_READ, rc); in smack_file_open()
1716 return rc; in smack_file_open()
1783 int rc; in smack_cred_prepare() local
1789 rc = smk_copy_rules(&new_tsp->smk_rules, &old_tsp->smk_rules, gfp); in smack_cred_prepare()
1790 if (rc != 0) in smack_cred_prepare()
1791 return rc; in smack_cred_prepare()
1869 int rc; in smk_curacc_on_task() local
1873 rc = smk_curacc(skp, access, &ad); in smk_curacc_on_task()
1874 rc = smk_bu_task(p, access, rc); in smk_curacc_on_task()
1875 return rc; in smk_curacc_on_task()
1935 int rc; in smack_task_setnice() local
1937 rc = cap_task_setnice(p, nice); in smack_task_setnice()
1938 if (rc == 0) in smack_task_setnice()
1939 rc = smk_curacc_on_task(p, MAY_WRITE, __func__); in smack_task_setnice()
1940 return rc; in smack_task_setnice()
1952 int rc; in smack_task_setioprio() local
1954 rc = cap_task_setioprio(p, ioprio); in smack_task_setioprio()
1955 if (rc == 0) in smack_task_setioprio()
1956 rc = smk_curacc_on_task(p, MAY_WRITE, __func__); in smack_task_setioprio()
1957 return rc; in smack_task_setioprio()
1981 int rc; in smack_task_setscheduler() local
1983 rc = cap_task_setscheduler(p); in smack_task_setscheduler()
1984 if (rc == 0) in smack_task_setscheduler()
1985 rc = smk_curacc_on_task(p, MAY_WRITE, __func__); in smack_task_setscheduler()
1986 return rc; in smack_task_setscheduler()
2029 int rc; in smack_task_kill() local
2038 rc = smk_curacc(tkp, MAY_WRITE, &ad); in smack_task_kill()
2039 rc = smk_bu_task(p, MAY_WRITE, rc); in smack_task_kill()
2040 return rc; in smack_task_kill()
2048 rc = smk_access(skp, tkp, MAY_WRITE, &ad); in smack_task_kill()
2049 rc = smk_bu_note("USB signal", skp, tkp, MAY_WRITE, rc); in smack_task_kill()
2050 return rc; in smack_task_kill()
2181 int rc = 0; in smack_netlabel() local
2199 rc = netlbl_sock_setattr(sk, sk->sk_family, &skp->smk_netlabel); in smack_netlabel()
2205 return rc; in smack_netlabel()
2222 int rc; in smack_netlabel_send() local
2241 rc = smk_access(skp, hkp, MAY_WRITE, &ad); in smack_netlabel_send()
2242 rc = smk_bu_note("IPv4 host check", skp, hkp, MAY_WRITE, rc); in smack_netlabel_send()
2245 rc = 0; in smack_netlabel_send()
2248 if (rc != 0) in smack_netlabel_send()
2249 return rc; in smack_netlabel_send()
2346 int rc; in smk_ipv6_port_check() local
2400 rc = smk_access(skp, object, MAY_WRITE, &ad); in smk_ipv6_port_check()
2401 rc = smk_bu_note("IPv6 port check", skp, object, MAY_WRITE, rc); in smk_ipv6_port_check()
2402 return rc; in smk_ipv6_port_check()
2425 int rc = 0; in smack_inode_setsecurity() local
2456 rc = smack_netlabel(sock->sk, SMACK_CIPSO_SOCKET); in smack_inode_setsecurity()
2457 if (rc != 0) in smack_inode_setsecurity()
2460 __func__, -rc); in smack_inode_setsecurity()
2546 int rc = 0; in smack_socket_connect() local
2555 rc = smack_netlabel_send(sock->sk, (struct sockaddr_in *)sap); in smack_socket_connect()
2561 rc = smk_ipv6_port_check(sock->sk, (struct sockaddr_in6 *)sap, in smack_socket_connect()
2566 return rc; in smack_socket_connect()
2664 int rc; in smk_curacc_shm() local
2670 rc = smk_curacc(ssp, access, &ad); in smk_curacc_shm()
2671 rc = smk_bu_current("shm", ssp, access, rc); in smk_curacc_shm()
2672 return rc; in smk_curacc_shm()
2791 int rc; in smk_curacc_sem() local
2797 rc = smk_curacc(ssp, access, &ad); in smk_curacc_sem()
2798 rc = smk_bu_current("sem", ssp, access, rc); in smk_curacc_sem()
2799 return rc; in smk_curacc_sem()
2924 int rc; in smk_curacc_msq() local
2930 rc = smk_curacc(msp, access, &ad); in smk_curacc_msq()
2931 rc = smk_bu_current("msq", msp, access, rc); in smk_curacc_msq()
2932 return rc; in smk_curacc_msq()
3028 int rc; in smack_ipc_permission() local
3034 rc = smk_curacc(iskp, may, &ad); in smack_ipc_permission()
3035 rc = smk_bu_current("svipc", iskp, may, rc); in smack_ipc_permission()
3036 return rc; in smack_ipc_permission()
3068 int rc; in smack_d_instantiate() local
3223 rc = inode->i_op->setxattr(dp, in smack_d_instantiate()
3228 rc = inode->i_op->getxattr(dp, in smack_d_instantiate()
3231 if (rc >= 0 && strncmp(trattr, TRANS_TRUE, in smack_d_instantiate()
3233 rc = -EINVAL; in smack_d_instantiate()
3235 if (rc >= 0) in smack_d_instantiate()
3368 int rc = 0; in smack_unix_stream_connect() local
3380 rc = smk_access(skp, okp, MAY_WRITE, &ad); in smack_unix_stream_connect()
3381 rc = smk_bu_note("UDS connect", skp, okp, MAY_WRITE, rc); in smack_unix_stream_connect()
3382 if (rc == 0) { in smack_unix_stream_connect()
3385 rc = smk_access(okp, skp, MAY_WRITE, &ad); in smack_unix_stream_connect()
3386 rc = smk_bu_note("UDS connect", okp, skp, in smack_unix_stream_connect()
3387 MAY_WRITE, rc); in smack_unix_stream_connect()
3394 if (rc == 0) { in smack_unix_stream_connect()
3399 return rc; in smack_unix_stream_connect()
3415 int rc; in smack_unix_may_send() local
3427 rc = smk_access(ssp->smk_out, osp->smk_in, MAY_WRITE, &ad); in smack_unix_may_send()
3428 rc = smk_bu_note("UDS send", ssp->smk_out, osp->smk_in, MAY_WRITE, rc); in smack_unix_may_send()
3429 return rc; in smack_unix_may_send()
3449 int rc = 0; in smack_socket_sendmsg() local
3459 rc = smack_netlabel_send(sock->sk, sip); in smack_socket_sendmsg()
3463 rc = smk_ipv6_port_check(sock->sk, sap, SMK_SENDING); in smack_socket_sendmsg()
3467 return rc; in smack_socket_sendmsg()
3616 int rc = 0; in smack_socket_sock_rcv_skb() local
3644 rc = netlbl_skbuff_getattr(skb, sk->sk_family, &secattr); in smack_socket_sock_rcv_skb()
3645 if (rc == 0) in smack_socket_sock_rcv_skb()
3667 rc = smk_access(skp, ssp->smk_in, MAY_WRITE, &ad); in smack_socket_sock_rcv_skb()
3668 rc = smk_bu_note("IPv4 delivery", skp, ssp->smk_in, in smack_socket_sock_rcv_skb()
3669 MAY_WRITE, rc); in smack_socket_sock_rcv_skb()
3670 if (rc != 0) in smack_socket_sock_rcv_skb()
3671 netlbl_skbuff_err(skb, rc, 0); in smack_socket_sock_rcv_skb()
3689 rc = smk_access(skp, ssp->smk_in, MAY_WRITE, &ad); in smack_socket_sock_rcv_skb()
3690 rc = smk_bu_note("IPv6 delivery", skp, ssp->smk_in, in smack_socket_sock_rcv_skb()
3691 MAY_WRITE, rc); in smack_socket_sock_rcv_skb()
3693 rc = smk_ipv6_port_check(sk, &sadd, SMK_RECEIVING); in smack_socket_sock_rcv_skb()
3699 return rc; in smack_socket_sock_rcv_skb()
3718 int rc = 0; in smack_socket_getpeersec_stream() local
3727 rc = -ERANGE; in smack_socket_getpeersec_stream()
3729 rc = -EFAULT; in smack_socket_getpeersec_stream()
3732 rc = -EFAULT; in smack_socket_getpeersec_stream()
3734 return rc; in smack_socket_getpeersec_stream()
3755 int rc; in smack_socket_getpeersec_dgram() local
3785 rc = netlbl_skbuff_getattr(skb, family, &secattr); in smack_socket_getpeersec_dgram()
3786 if (rc == 0) { in smack_socket_getpeersec_dgram()
3848 int rc; in smack_inet_conn_request() local
3881 rc = netlbl_skbuff_getattr(skb, family, &secattr); in smack_inet_conn_request()
3882 if (rc == 0) in smack_inet_conn_request()
3902 rc = smk_access(skp, ssp->smk_in, MAY_WRITE, &ad); in smack_inet_conn_request()
3903 rc = smk_bu_note("IPv4 connect", skp, ssp->smk_in, MAY_WRITE, rc); in smack_inet_conn_request()
3904 if (rc != 0) in smack_inet_conn_request()
3905 return rc; in smack_inet_conn_request()
3925 rc = netlbl_req_setattr(req, &skp->smk_netlabel); in smack_inet_conn_request()
3929 return rc; in smack_inet_conn_request()
4007 int rc; in smack_key_permission() local
4032 rc = smk_access(tkp, keyp->security, request, &ad); in smack_key_permission()
4033 rc = smk_bu_note("key access", tkp, keyp->security, request, rc); in smack_key_permission()
4034 return rc; in smack_key_permission()