OSDN Git Service

ipv4: frags: precedence bug in ip_expire()
authorDan Carpenter <dan.carpenter@oracle.com>
Wed, 10 Oct 2018 19:30:17 +0000 (12:30 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 18 Oct 2018 07:13:26 +0000 (09:13 +0200)
(commit 70837ffe3085c9a91488b52ca13ac84424da1042 upstream)

We accidentally removed the parentheses here, but they are required
because '!' has higher precedence than '&'.

Fixes: fa0f527358bd ("ip: use rb trees for IP frag queue.")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/ipv4/ip_fragment.c

index 09565b1..cc8c6ac 100644 (file)
@@ -203,7 +203,7 @@ static void ip_expire(unsigned long arg)
        __IP_INC_STATS(net, IPSTATS_MIB_REASMFAILS);
        __IP_INC_STATS(net, IPSTATS_MIB_REASMTIMEOUT);
 
-       if (!qp->q.flags & INET_FRAG_FIRST_IN)
+       if (!(qp->q.flags & INET_FRAG_FIRST_IN))
                goto out;
 
        /* sk_buff::dev and sk_buff::rbnode are unionized. So we