From: Jan Engelhardt Date: Sat, 24 Jul 2010 08:57:03 +0000 (+0200) Subject: xt_length2: IPv6 jumbogram support X-Git-Tag: v1.28~5 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4d48511f014c88e13850dfd65fe55bdf0ce31a72;p=thirdparty%2Fxtables-addons.git xt_length2: IPv6 jumbogram support --- diff --git a/doc/changelog.txt b/doc/changelog.txt index c978450..802d9eb 100644 --- a/doc/changelog.txt +++ b/doc/changelog.txt @@ -3,6 +3,7 @@ HEAD ==== - RAWNAT: IPv6 variants erroneously rejected masks /33-/128 - new target xt_CHECKSUM +- xt_length2: add support for IPv6 jumbograms Xtables-addons 1.27 (May 16 2010) diff --git a/extensions/xt_length2.c b/extensions/xt_length2.c index 08e5519..e8c8916 100644 --- a/extensions/xt_length2.c +++ b/extensions/xt_length2.c @@ -207,7 +207,11 @@ length2_mt6(const struct sk_buff *skb, struct xt_action_param *par) bool hit = true; if (info->flags & XT_LENGTH_LAYER3) { - len = sizeof(struct ipv6hdr) + ntohs(iph->payload_len); + if (iph->payload_len == 0) + /* Jumbogram */ + len = skb->len; + else + len = sizeof(struct ipv6hdr) + ntohs(iph->payload_len); } else { l4proto = llayer4_proto(skb, &thoff, &par->hotdrop); if (l4proto == NEXTHDR_MAX)