int mac_socket_check_accepted(kauth_cred_t cred, struct socket *so) { struct sockaddr *sockaddr; int error; if (!mac_socket_enforce) return 0; if (sock_getaddr((socket_t)so, &sockaddr, 1) != 0) { error = ECONNABORTED; } else { MAC_CHECK(socket_check_accepted, cred, (socket_t)so, so->so_label, sockaddr); sock_freeaddr(sockaddr); } return (error); }
int mac_socket_check_accepted(kauth_cred_t cred, struct socket *so) { struct sockaddr *sockaddr; int error; #if SECURITY_MAC_CHECK_ENFORCE /* 21167099 - only check if we allow write */ if (!mac_socket_enforce) return 0; #endif if (sock_getaddr((socket_t)so, &sockaddr, 1) != 0) { error = ECONNABORTED; } else { MAC_CHECK(socket_check_accepted, cred, (socket_t)so, so->so_label, sockaddr); sock_freeaddr(sockaddr); } return (error); }