From: Dmitry Safonov <dima@xxxxxxxxxx> 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.