diff --git a/drivers/net/wireless/airo.c b/drivers/net/wireless/airo.c
index 4eec87c3be2b5703ff7dd99a10aa1ef8a1f01685..4331d675fcc62d2550d6036ec0672ef2c093e109 100644
--- a/drivers/net/wireless/airo.c
+++ b/drivers/net/wireless/airo.c
@@ -4806,7 +4806,7 @@ static int airo_config_commit(struct net_device *dev,
 
 static inline int sniffing_mode(struct airo_info *ai)
 {
-	return le16_to_cpu(ai->config.rmode & RXMODE_MASK) >=
+	return (le16_to_cpu(ai->config.rmode) & le16_to_cpu(RXMODE_MASK)) >=
 		le16_to_cpu(RXMODE_RFMON);
 }