From c2d93e16fd9da553bf3e15865c88d383b4114e52 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Fri, 12 Aug 2011 15:44:27 +0200 Subject: [PATCH] xt_SYSRQ: fix UDPLITE header lookup in IPv6 --- doc/changelog.txt | 1 + extensions/xt_SYSRQ.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/doc/changelog.txt b/doc/changelog.txt index 860f9a6..0afcdba 100644 --- a/doc/changelog.txt +++ b/doc/changelog.txt @@ -2,6 +2,7 @@ HEAD ==== - xt_CHECKSUM: abort build when the feature is already provided by mainline +- xt_SYSRQ: fix UDPLITE header lookup in IPv6 - xt_TARPIT: fix kernel warning about RTAX_HOPLIMIT being used - xt_TEE: abort build when the feature is already provided by mainline - xt_pknock: support UDPLITE diff --git a/extensions/xt_SYSRQ.c b/extensions/xt_SYSRQ.c index 1d08fa1..e4356d5 100644 --- a/extensions/xt_SYSRQ.c +++ b/extensions/xt_SYSRQ.c @@ -244,7 +244,8 @@ sysrq_tg6(struct sk_buff **pskb, const struct xt_action_param *par) return NF_DROP; iph = ipv6_hdr(skb); - if (ipv6_find_hdr(skb, &th_off, IPPROTO_UDP, &frag_off) < 0 || + if ((ipv6_find_hdr(skb, &th_off, IPPROTO_UDP, &frag_off) < 0 && + ipv6_find_hdr(skb, &th_off, IPPROTO_UDPLITE, &frag_off) < 0) || frag_off > 0) return NF_DROP;