Commit 9f6ed032 authored by Daniel Borkmann's avatar Daniel Borkmann Committed by David S. Miller

net, cls: also reject deleting all filters when TCA_KIND present

When we check for RTM_DELTFILTER, we should also reject the request
for deleting all filters under a given parent when TCA_KIND attribute
is present. If present, it's currently just ignored but there's also
no point to let it pass in the first place either since this doesn't
have any meaning with wild-card removal.

Fixes: ea7f8277 ("net, cls: allow for deleting all filters for given parent")
Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 5b706e5c
...@@ -169,7 +169,7 @@ static int tc_ctl_tfilter(struct sk_buff *skb, struct nlmsghdr *n) ...@@ -169,7 +169,7 @@ static int tc_ctl_tfilter(struct sk_buff *skb, struct nlmsghdr *n)
if (prio == 0) { if (prio == 0) {
switch (n->nlmsg_type) { switch (n->nlmsg_type) {
case RTM_DELTFILTER: case RTM_DELTFILTER:
if (protocol || t->tcm_handle) if (protocol || t->tcm_handle || tca[TCA_KIND])
return -ENOENT; return -ENOENT;
break; break;
case RTM_NEWTFILTER: case RTM_NEWTFILTER:
......
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