]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/commit
iwlwifi: dvm: don't call << operator with a negative value
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Sat, 7 Jan 2017 17:57:46 +0000 (19:57 +0200)
committerLuca Coelho <luciano.coelho@intel.com>
Wed, 8 Feb 2017 15:54:20 +0000 (17:54 +0200)
commit1aa0ec5cdf60b23dfc152f0e9e205f58b0a546b2
tree800e63cc1524c42c4fb53030afa4774f64451520
parent6eac0e817aee2518a96b5ce9d02b904e0667f370
iwlwifi: dvm: don't call << operator with a negative value

In https://bugzilla.kernel.org/show_bug.cgi?id=177341 Bob
reported a UBSAN WARNING on rs.c.

Undefined behaviour in drivers/net/wireless/intel/iwlwifi/dvm/rs.c:746:18

This because
i = index - 1;
for (mask = (1 << i); i >= 0; i--, mask >>= 1)

is unsafe: i could be negative and hence we can call <<
on a negative value.
This bug doesn't have any real impact since the condition
of the for loop will prevent any usage of mask.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=177341
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/dvm/rs.c