wpa_supplicant reports:
WPA: Installing PTK to the driver.
wpa_driver_madwifi_set_key: alg=CCMP key_idx=0 set_tx=1 seq_len=6 key_len=16
ioctl[IEEE80211_IOCTL_SETKEY]: No such device or address
WPA: Failed to set PTK to the driver.
Setting 80211debug +crypto +wpa revels only:
ath0: ieee80211_crypto_newkey: unable to attach cipher AES-CCM
But wlan_ccmp module is loaded.
Did some digging... and then added some more verbose debug messages to net80211/ieee80211_crypto_ccmp.c. From this I discovered wlan_ccmp was not able to load AES crypto support; I simply didn't have it compiled in my kernel - blah!
Since it took WAY to long to discover this, it might be a good idea to keep debug info similar to the following in net80211/ieee80211_crypto_ccmp.c (aka I did not realize wlan_ccmp would need to load AES crypto support outside of the madwifi modules):
--- ieee80211_crypto_ccmp.c 2006-04-28 11:26:29.000000000 -0700
+++ ieee80211_crypto_ccmp.c-nick 2006-04-28 11:26:19.000000000 -0700
@@ -107,6 +110,9 @@
ctx->cc_ic = vap->iv_ic;
ctx->cc_tfm = crypto_alloc_tfm("aes", 0);
if (ctx->cc_tfm == NULL) {
+ IEEE80211_DPRINTF(vap, IEEE80211_MSG_CRYPTO,
+ "%s: unable to load kernel AES crypto support\n",
+ __func__);
FREE(ctx, M_DEVBUF);
_MOD_DEC_USE(THIS_MODULE);
return NULL;