Commit 0e0e3677 authored by Paul Moore's avatar Paul Moore

netlabel: add address family checks to netlbl_{sock,req}_delattr()

It seems risky to always rely on the caller to ensure the socket's
address family is correct before passing it to the NetLabel kAPI,
especially since we see at least one LSM which didn't. Add address
family checks to the *_delattr() functions to help prevent future
problems.

Cc: <stable@vger.kernel.org>
Reported-by: default avatarManinder Singh <maninder1.s@samsung.com>
Signed-off-by: default avatarPaul Moore <paul@paul-moore.com>
parent 7ea59202
...@@ -824,7 +824,11 @@ int netlbl_sock_setattr(struct sock *sk, ...@@ -824,7 +824,11 @@ int netlbl_sock_setattr(struct sock *sk,
*/ */
void netlbl_sock_delattr(struct sock *sk) void netlbl_sock_delattr(struct sock *sk)
{ {
cipso_v4_sock_delattr(sk); switch (sk->sk_family) {
case AF_INET:
cipso_v4_sock_delattr(sk);
break;
}
} }
/** /**
...@@ -987,7 +991,11 @@ int netlbl_req_setattr(struct request_sock *req, ...@@ -987,7 +991,11 @@ int netlbl_req_setattr(struct request_sock *req,
*/ */
void netlbl_req_delattr(struct request_sock *req) void netlbl_req_delattr(struct request_sock *req)
{ {
cipso_v4_req_delattr(req); switch (req->rsk_ops->family) {
case AF_INET:
cipso_v4_req_delattr(req);
break;
}
} }
/** /**
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment