From 0f5fb8a46751a1b4171314992b908864fedcc776 Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Tue, 7 Jul 2015 15:39:08 +0300 Subject: [PATCH] radiotap: Avoid ubsan warning on 1<<31 Use the BIT() macro and unsigned int to avoid ubsan warning on 1<<31 not fitting in an int. Signed-off-by: Jouni Malinen --- src/utils/radiotap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/utils/radiotap.c b/src/utils/radiotap.c index f8f815a86..c9a502335 100644 --- a/src/utils/radiotap.c +++ b/src/utils/radiotap.c @@ -123,13 +123,13 @@ int ieee80211_radiotap_iterator_init( /* find payload start allowing for extended bitmap(s) */ - if (iterator->_bitmap_shifter & (1<_bitmap_shifter & BIT(IEEE80211_RADIOTAP_EXT)) { if ((unsigned long)iterator->_arg - (unsigned long)iterator->_rtheader + sizeof(uint32_t) > (unsigned long)iterator->_max_length) return -EINVAL; while (get_unaligned_le32(iterator->_arg) & - (1 << IEEE80211_RADIOTAP_EXT)) { + BIT(IEEE80211_RADIOTAP_EXT)) { iterator->_arg += sizeof(uint32_t); /*