diff options
Diffstat (limited to 'net/ipv6')
-rw-r--r-- | net/ipv6/netfilter/ip6_tables.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/net/ipv6/netfilter/ip6_tables.c b/net/ipv6/netfilter/ip6_tables.c index a6c2213f821e..d01b8a39fbd8 100644 --- a/net/ipv6/netfilter/ip6_tables.c +++ b/net/ipv6/netfilter/ip6_tables.c | |||
@@ -386,15 +386,12 @@ ip6t_do_table(struct sk_buff *skb, | |||
386 | IP_NF_ASSERT(e); | 386 | IP_NF_ASSERT(e); |
387 | IP_NF_ASSERT(back); | 387 | IP_NF_ASSERT(back); |
388 | if (!ip6_packet_match(skb, indev, outdev, &e->ipv6, | 388 | if (!ip6_packet_match(skb, indev, outdev, &e->ipv6, |
389 | &mtpar.thoff, &mtpar.fragoff, &hotdrop)) { | 389 | &mtpar.thoff, &mtpar.fragoff, &hotdrop) || |
390 | no_match: | 390 | IP6T_MATCH_ITERATE(e, do_match, skb, &mtpar) != 0) { |
391 | e = ip6t_next_entry(e); | 391 | e = ip6t_next_entry(e); |
392 | continue; | 392 | continue; |
393 | } | 393 | } |
394 | 394 | ||
395 | if (IP6T_MATCH_ITERATE(e, do_match, skb, &mtpar) != 0) | ||
396 | goto no_match; | ||
397 | |||
398 | ADD_COUNTER(e->counters, | 395 | ADD_COUNTER(e->counters, |
399 | ntohs(ipv6_hdr(skb)->payload_len) + | 396 | ntohs(ipv6_hdr(skb)->payload_len) + |
400 | sizeof(struct ipv6hdr), 1); | 397 | sizeof(struct ipv6hdr), 1); |