Logs filled by "WEP decryption failed"

Pavel Roskin proski
Wed Mar 24 16:27:50 PST 2004


If I use hostap with 802.1x and WEP enabled, the kernel log is filled with
messages like this:

wifi0: WEP decryption failed (not set) (SA=00:60:1d:f0:e6:27)
wifi0: WEP decryption failed (not set) (SA=00:02:2d:0d:1a:ac)
wifi0: WEP decryption failed (not set) (SA=00:02:2d:0d:1a:ac)
wifi0: WEP decryption failed (not set) (SA=00:60:1d:f0:34:d2)

If I print frame_control for those frames, it's always 0x4208 (data with
WEP enabled, from DS).  The data is not sent to our AP and the senders
have no relationship with the AP.  It's just some encrypted data that we
are not supposed to see.

The problem is that such messages fill the kernel log and make it hard to
find more important messages.

I'm using CVS hostap with hostapd and Prism2 card with 1.7.1 firmware.
The messages keep coming even if I stop hostapd.

The message is printed in hostap_80211_rx() if host_decrypt is enabled.
Also, hostap does something to enable those messages.  It there any
legitimate need in that message?  Are we supposed to receive data frames
from other APs?  Do we need to decrypt them?  Is it a firmware bug?

I'm attaching a patch that is good as a stopgap measure, but I don't think
it should be applied without understanding the problem.

Pavel Roskin
-------------- next part --------------
--- driver/modules/hostap_80211_rx.c
+++ driver/modules/hostap_80211_rx.c
@@ -753,7 +753,11 @@ void hostap_80211_rx(struct net_device *
 			      crypt->ops->decrypt_mpdu == NULL))
 			crypt = NULL;
 		if (!crypt && (fc & WLAN_FC_ISWEP)) {
+			if ((fc & WLAN_FC_FROMDS) && (type == WLAN_FC_TYPE_DATA))
+				goto rx_dropped;
 			printk(KERN_DEBUG "%s: WEP decryption failed (not set)"
 			       " (SA=" MACSTR ")\n",
 			       local->dev->name, MAC2STR(hdr->addr2));

More information about the Hostap mailing list