[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180804.170856.2031275734761112973.davem@davemloft.net>
Date: Sat, 04 Aug 2018 17:08:56 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: dima@...sta.com
Cc: linux-kernel@...r.kernel.org, natechancellor@...il.com,
herbert@...dor.apana.org.au, steffen.klassert@...unet.com,
netdev@...r.kernel.org, stable@...r.kernel.org
Subject: Re: [PATCH] netlink: Don't shift on 64 for ngroups
From: Dmitry Safonov <dima@...sta.com>
Date: Sun, 5 Aug 2018 00:55:44 +0100
> @@ -1011,8 +1011,8 @@ static int netlink_bind(struct socket *sock, struct sockaddr *addr,
>
> if (nlk->ngroups == 0)
> groups = 0;
> - else
> - groups &= (1ULL << nlk->ngroups) - 1;
> + else if (nlk->ngroups < sizeof(long unsigned int))
> + groups &= (1UL << nlk->ngroups) - 1;
Sizeof is in bytes, you want to compare against bits.
Powered by blists - more mailing lists