Author: colin Date: 2009-12-29 04:21:16 +0100 (Tue, 29 Dec 2009) New Revision: 34800 Changeset: http://dev.haiku-os.org/changeset/34800/haiku Modified: haiku/trunk/src/libs/compat/freebsd_wlan/net80211/Jamfile haiku/trunk/src/libs/compat/freebsd_wlan/net80211/ieee80211_crypto.c haiku/trunk/src/libs/compat/freebsd_wlan/net80211/ieee80211_crypto.h Log: Adding crypto support for ccmp (aka WPA2) to the wlan stack. Modified: haiku/trunk/src/libs/compat/freebsd_wlan/net80211/Jamfile =================================================================== --- haiku/trunk/src/libs/compat/freebsd_wlan/net80211/Jamfile 2009-12-29 03:15:29 UTC (rev 34799) +++ haiku/trunk/src/libs/compat/freebsd_wlan/net80211/Jamfile 2009-12-29 03:21:16 UTC (rev 34800) @@ -16,6 +16,8 @@ -Wno-unused -Wno-uninitialized ; +SEARCH_SOURCE += [ FDirName $(SUBDIR) .. crypto rijndael ] ; + KernelStaticLibrary libfreebsd_wlan.a : ieee80211.c ieee80211_action.c @@ -23,6 +25,7 @@ ieee80211_ageq.c ieee80211_amrr.c ieee80211_crypto.c + ieee80211_crypto_ccmp.c ieee80211_crypto_none.c ieee80211_crypto_tkip.c ieee80211_crypto_wep.c @@ -45,8 +48,11 @@ ieee80211_sta.c ieee80211_wds.c + # Rijndael (aka AES) cryptographic support for crypto_ccmp + rijndael-alg-fst.c + rijndael-api.c + # NOT SUPPORTED YET ieee80211_acl.c - # NOT SUPPORTED YET ieee80211_crypto_ccmp.c # NOT SUPPORTED YET ieee80211_ddb.c # NOT SUPPORTED YET ieee80211_hwmp.c # NOT SUPPORTED YET ieee80211_mesh.c Modified: haiku/trunk/src/libs/compat/freebsd_wlan/net80211/ieee80211_crypto.c =================================================================== --- haiku/trunk/src/libs/compat/freebsd_wlan/net80211/ieee80211_crypto.c 2009-12-29 03:15:29 UTC (rev 34799) +++ haiku/trunk/src/libs/compat/freebsd_wlan/net80211/ieee80211_crypto.c 2009-12-29 03:21:16 UTC (rev 34800) @@ -142,6 +142,7 @@ /* NB: we assume everything is pre-zero'd */ ciphers[IEEE80211_CIPHER_NONE] = &ieee80211_cipher_none; #if defined(__HAIKU__) + ieee80211_crypto_ccmp_load(); ieee80211_crypto_tkip_load(); ieee80211_crypto_wep_load(); #endif @@ -154,6 +155,7 @@ ieee80211_crypto_detach(struct ieee80211com *ic) { #if defined(__HAIKU__) + ieee80211_crypto_ccmp_unload(); ieee80211_crypto_tkip_unload(); ieee80211_crypto_wep_unload(); #endif Modified: haiku/trunk/src/libs/compat/freebsd_wlan/net80211/ieee80211_crypto.h =================================================================== --- haiku/trunk/src/libs/compat/freebsd_wlan/net80211/ieee80211_crypto.h 2009-12-29 03:15:29 UTC (rev 34799) +++ haiku/trunk/src/libs/compat/freebsd_wlan/net80211/ieee80211_crypto.h 2009-12-29 03:21:16 UTC (rev 34800) @@ -160,6 +160,8 @@ void ieee80211_crypto_reload_keys(struct ieee80211com *); #if defined (__HAIKU__) +void ieee80211_crypto_ccmp_load(void); +void ieee80211_crypto_ccmp_unload(void); void ieee80211_crypto_tkip_load(void); void ieee80211_crypto_tkip_unload(void); void ieee80211_crypto_wep_load(void);