netfilter: conntrack: comparison of unsigned in cthelper confirmation
authorPablo Neira Ayuso <pablo@netfilter.org>
Wed, 27 May 2020 10:17:34 +0000 (12:17 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 3 Jun 2020 06:21:38 +0000 (08:21 +0200)
commit 94945ad2b330207cded0fd8d4abebde43a776dfb upstream.

net/netfilter/nf_conntrack_core.c: In function nf_confirm_cthelper:
net/netfilter/nf_conntrack_core.c:2117:15: warning: comparison of unsigned expression in < 0 is always false [-Wtype-limits]
 2117 |   if (protoff < 0 || (frag_off & htons(~0x7)) != 0)
      |               ^

ipv6_skip_exthdr() returns a signed integer.

Reported-by: Colin Ian King <colin.king@canonical.com>
Fixes: 703acd70f249 ("netfilter: nfnetlink_cthelper: unbreak userspace helper support")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/netfilter/nf_conntrack_core.c

index e4fd4f3..ce54508 100644 (file)
@@ -1955,7 +1955,7 @@ static int nf_confirm_cthelper(struct sk_buff *skb, struct nf_conn *ct,
 {
        const struct nf_conntrack_helper *helper;
        const struct nf_conn_help *help;
-       unsigned int protoff;
+       int protoff;
 
        help = nfct_help(ct);
        if (!help)