Commit 40e4f26e authored by Flavio Leitner's avatar Flavio Leitner Committed by Pablo Neira Ayuso

netfilter: xt_socket: check sk before checking for netns.

Only check for the network namespace if the socket is available.

Fixes: f5646501 ("netfilter: check if the socket netns is correct.")
Reported-by: default avatarGuenter Roeck <linux@roeck-us.net>
Tested-by: default avatarGuenter Roeck <linux@roeck-us.net>
Signed-off-by: default avatarFlavio Leitner <fbl@redhat.com>
Signed-off-by: default avatarPablo Neira Ayuso <pablo@netfilter.org>
parent 421c119f
...@@ -56,7 +56,7 @@ socket_match(const struct sk_buff *skb, struct xt_action_param *par, ...@@ -56,7 +56,7 @@ socket_match(const struct sk_buff *skb, struct xt_action_param *par,
struct sk_buff *pskb = (struct sk_buff *)skb; struct sk_buff *pskb = (struct sk_buff *)skb;
struct sock *sk = skb->sk; struct sock *sk = skb->sk;
if (!net_eq(xt_net(par), sock_net(sk))) if (sk && !net_eq(xt_net(par), sock_net(sk)))
sk = NULL; sk = NULL;
if (!sk) if (!sk)
...@@ -117,7 +117,7 @@ socket_mt6_v1_v2_v3(const struct sk_buff *skb, struct xt_action_param *par) ...@@ -117,7 +117,7 @@ socket_mt6_v1_v2_v3(const struct sk_buff *skb, struct xt_action_param *par)
struct sk_buff *pskb = (struct sk_buff *)skb; struct sk_buff *pskb = (struct sk_buff *)skb;
struct sock *sk = skb->sk; struct sock *sk = skb->sk;
if (!net_eq(xt_net(par), sock_net(sk))) if (sk && !net_eq(xt_net(par), sock_net(sk)))
sk = NULL; sk = NULL;
if (!sk) if (!sk)
......
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