summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrpaulo <rpaulo@FreeBSD.org>2014-04-12 23:48:02 +0000
committerrpaulo <rpaulo@FreeBSD.org>2014-04-12 23:48:02 +0000
commit760b289b96dac468901132905078f3668a9b187e (patch)
treef8df01e788b783b7e584d3ebbf6df6864ef1dddf
parent54852c44324dd686278ddb9d308bc654118aed9e (diff)
downloadFreeBSD-src-760b289b96dac468901132905078f3668a9b187e.zip
FreeBSD-src-760b289b96dac468901132905078f3668a9b187e.tar.gz
MFC r263925
Enable all cryptocaps because net80211 can do software encryption.
-rw-r--r--contrib/wpa/src/drivers/driver_bsd.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/contrib/wpa/src/drivers/driver_bsd.c b/contrib/wpa/src/drivers/driver_bsd.c
index 13ca628..d3bca6f 100644
--- a/contrib/wpa/src/drivers/driver_bsd.c
+++ b/contrib/wpa/src/drivers/driver_bsd.c
@@ -1446,6 +1446,17 @@ static int wpa_driver_bsd_capa(struct bsd_driver_data *drv)
drv->capa.key_mgmt = WPA_DRIVER_CAPA_KEY_MGMT_WPA2 |
WPA_DRIVER_CAPA_KEY_MGMT_WPA2_PSK;
+#ifdef __FreeBSD__
+ drv->capa.enc |= WPA_DRIVER_CAPA_ENC_WEP40 |
+ WPA_DRIVER_CAPA_ENC_WEP104 |
+ WPA_DRIVER_CAPA_ENC_TKIP |
+ WPA_DRIVER_CAPA_ENC_CCMP;
+#else
+ /*
+ * XXX
+ * FreeBSD exports hardware cryptocaps. These have no meaning for wpa
+ * since net80211 performs software crypto.
+ */
if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_WEP)
drv->capa.enc |= WPA_DRIVER_CAPA_ENC_WEP40 |
WPA_DRIVER_CAPA_ENC_WEP104;
@@ -1453,6 +1464,7 @@ static int wpa_driver_bsd_capa(struct bsd_driver_data *drv)
drv->capa.enc |= WPA_DRIVER_CAPA_ENC_TKIP;
if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_AES_CCM)
drv->capa.enc |= WPA_DRIVER_CAPA_ENC_CCMP;
+#endif
if (devcaps.dc_drivercaps & IEEE80211_C_HOSTAP)
drv->capa.flags |= WPA_DRIVER_FLAGS_AP;
OpenPOWER on IntegriCloud