inetdevice: fixed signed integer overflow
authorVincent BENAYOUN <vincent.benayoun@trust-in-soft.com>
Thu, 13 Nov 2014 12:47:26 +0000 (13:47 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 14 Nov 2014 22:08:58 +0000 (17:08 -0500)
There could be a signed overflow in the following code.

The expression, (32-logmask) is comprised between 0 and 31 included.
It may be equal to 31.
In such a case the left shift will produce a signed integer overflow.
According to the C99 Standard, this is an undefined behavior.
A simple fix is to replace the signed int 1 with the unsigned int 1U.

Signed-off-by: Vincent BENAYOUN <vincent.benayoun@trust-in-soft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/inetdevice.h

Simple merge