Date: Fri, 3 Dec 2004 01:02:15 GMT From: Sam Leffler <sam@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 66290 for review Message-ID: <200412030102.iB312FJR024490@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=66290 Change 66290 by sam@sam_ebb on 2004/12/03 01:02:08 hack: reorder the unicast cipher selectors in WPA/RSN ie's to match that used by hostapd; otherwise the supplicant may barf if it blindly compares the ie in the probe response to the ie in the PTK handshake Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211_output.c#19 edit Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211_output.c#19 (text+ko) ==== @@ -683,14 +683,14 @@ /* unicast cipher list */ selcnt = frm; ADDSHORT(frm, 0); /* selector count */ + if (rsn->rsn_ucastcipherset & (1<<IEEE80211_CIPHER_AES_CCM)) { + selcnt[0]++; + ADDSELECTOR(frm, cipher_suite[IEEE80211_CIPHER_AES_CCM]); + } if (rsn->rsn_ucastcipherset & (1<<IEEE80211_CIPHER_TKIP)) { selcnt[0]++; ADDSELECTOR(frm, cipher_suite[IEEE80211_CIPHER_TKIP]); } - if (rsn->rsn_ucastcipherset & (1<<IEEE80211_CIPHER_AES_CCM)) { - selcnt[0]++; - ADDSELECTOR(frm, cipher_suite[IEEE80211_CIPHER_AES_CCM]); - } /* authenticator selector list */ selcnt = frm; @@ -766,14 +766,14 @@ /* unicast cipher list */ selcnt = frm; ADDSHORT(frm, 0); /* selector count */ + if (rsn->rsn_ucastcipherset & (1<<IEEE80211_CIPHER_AES_CCM)) { + selcnt[0]++; + ADDSELECTOR(frm, cipher_suite[IEEE80211_CIPHER_AES_CCM]); + } if (rsn->rsn_ucastcipherset & (1<<IEEE80211_CIPHER_TKIP)) { selcnt[0]++; ADDSELECTOR(frm, cipher_suite[IEEE80211_CIPHER_TKIP]); } - if (rsn->rsn_ucastcipherset & (1<<IEEE80211_CIPHER_AES_CCM)) { - selcnt[0]++; - ADDSELECTOR(frm, cipher_suite[IEEE80211_CIPHER_AES_CCM]); - } /* authenticator selector list */ selcnt = frm; @@ -811,10 +811,10 @@ { KASSERT(ic->ic_flags & IEEE80211_F_WPA, ("no WPA/RSN!")); + if (ic->ic_flags & IEEE80211_F_WPA2) + frm = ieee80211_setup_rsn_ie(ic, frm); if (ic->ic_flags & IEEE80211_F_WPA1) frm = ieee80211_setup_wpa_ie(ic, frm); - if (ic->ic_flags & IEEE80211_F_WPA2) - frm = ieee80211_setup_rsn_ie(ic, frm); return frm; }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200412030102.iB312FJR024490>