Commit c5035c77 authored by Pablo Neira Ayuso's avatar Pablo Neira Ayuso

netfilter: nft_meta: fix cgroup matching

We have to stop iterating on the rule expressions if the cgroup
mismatches. Moreover, make sure a non-full socket from the input path
leads us to a crash.

Fixes: ce674173 ("netfilter: nft_meta: add cgroup support")
Signed-off-by: default avatarPablo Neira Ayuso <pablo@netfilter.org>
parent afb77180
...@@ -166,9 +166,8 @@ void nft_meta_get_eval(const struct nft_expr *expr, ...@@ -166,9 +166,8 @@ void nft_meta_get_eval(const struct nft_expr *expr,
dest->data[0] = out->group; dest->data[0] = out->group;
break; break;
case NFT_META_CGROUP: case NFT_META_CGROUP:
if (skb->sk == NULL) if (skb->sk == NULL || !sk_fullsock(skb->sk))
break; goto err;
dest->data[0] = skb->sk->sk_classid; dest->data[0] = skb->sk->sk_classid;
break; break;
default: default:
......
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