selinux: provide socketpair callback
Make sure to implement the new socketpair callback so the SO_PEERSEC call on socketpair(2)s will return correct information. Acked-by: Serge Hallyn <serge@hallyn.com> Acked-by: Stephen Smalley <sds@tycho.nsa.gov> Signed-off-by: Tom Gundersen <teg@jklm.no> Signed-off-by: David Herrmann <dh.herrmann@gmail.com> Signed-off-by: James Morris <james.morris@microsoft.com>
This commit is contained in:
parent
d47cd9450d
commit
0b811db2cb
|
@ -4569,6 +4569,18 @@ static int selinux_socket_post_create(struct socket *sock, int family,
|
|||
return err;
|
||||
}
|
||||
|
||||
static int selinux_socket_socketpair(struct socket *socka,
|
||||
struct socket *sockb)
|
||||
{
|
||||
struct sk_security_struct *sksec_a = socka->sk->sk_security;
|
||||
struct sk_security_struct *sksec_b = sockb->sk->sk_security;
|
||||
|
||||
sksec_a->peer_sid = sksec_b->sid;
|
||||
sksec_b->peer_sid = sksec_a->sid;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Range of port numbers used to automatically bind.
|
||||
Need to determine whether we should perform a name_bind
|
||||
permission check between the socket and the port number. */
|
||||
|
@ -6999,6 +7011,7 @@ static struct security_hook_list selinux_hooks[] __lsm_ro_after_init = {
|
|||
|
||||
LSM_HOOK_INIT(socket_create, selinux_socket_create),
|
||||
LSM_HOOK_INIT(socket_post_create, selinux_socket_post_create),
|
||||
LSM_HOOK_INIT(socket_socketpair, selinux_socket_socketpair),
|
||||
LSM_HOOK_INIT(socket_bind, selinux_socket_bind),
|
||||
LSM_HOOK_INIT(socket_connect, selinux_socket_connect),
|
||||
LSM_HOOK_INIT(socket_listen, selinux_socket_listen),
|
||||
|
|
Loading…
Reference in New Issue