ematch: Fix early ending of inverted containers.
The result of a negated container has to be inverted before checking for
early ending.
This fixes my previous attempt (17c9c82326
) to
make inverted containers work correctly.
Signed-off-by: Ignacy Gawędzki <ignacy.gawedzki@green-communications.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e87474a6e6
commit
34a419d4e2
@ -526,9 +526,10 @@ int __tcf_em_tree_match(struct sk_buff *skb, struct tcf_ematch_tree *tree,
|
||||
match_idx = stack[--stackp];
|
||||
cur_match = tcf_em_get_match(tree, match_idx);
|
||||
|
||||
if (tcf_em_is_inverted(cur_match))
|
||||
res = !res;
|
||||
|
||||
if (tcf_em_early_end(cur_match, res)) {
|
||||
if (tcf_em_is_inverted(cur_match))
|
||||
res = !res;
|
||||
goto pop_stack;
|
||||
} else {
|
||||
match_idx++;
|
||||
|
Loading…
Reference in New Issue
Block a user