|
@@ -4491,9 +4491,12 @@ int ieee80211_mgd_auth(struct ieee80211_sub_if_data *sdata,
|
|
|
auth_data->bss = req->bss;
|
|
auth_data->bss = req->bss;
|
|
|
|
|
|
|
|
if (req->auth_data_len >= 4) {
|
|
if (req->auth_data_len >= 4) {
|
|
|
- __le16 *pos = (__le16 *) req->auth_data;
|
|
|
|
|
- auth_data->sae_trans = le16_to_cpu(pos[0]);
|
|
|
|
|
- auth_data->sae_status = le16_to_cpu(pos[1]);
|
|
|
|
|
|
|
+ if (req->auth_type == NL80211_AUTHTYPE_SAE) {
|
|
|
|
|
+ __le16 *pos = (__le16 *) req->auth_data;
|
|
|
|
|
+
|
|
|
|
|
+ auth_data->sae_trans = le16_to_cpu(pos[0]);
|
|
|
|
|
+ auth_data->sae_status = le16_to_cpu(pos[1]);
|
|
|
|
|
+ }
|
|
|
memcpy(auth_data->data, req->auth_data + 4,
|
|
memcpy(auth_data->data, req->auth_data + 4,
|
|
|
req->auth_data_len - 4);
|
|
req->auth_data_len - 4);
|
|
|
auth_data->data_len += req->auth_data_len - 4;
|
|
auth_data->data_len += req->auth_data_len - 4;
|