>       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,
>                      req->auth_data_len - 4);
>               auth_data->data_len += req->auth_data_len - 4;

Hmm. Do we really want to still skip the first four bytes of the data
userspace passed? That seems a bit strange to me. The docs in nl80211.h
do say it that way now, but should we really include a dummy
Authentication transaction sequence number field?

johannes

Reply via email to