WPS: Reduce struct wps_parse_attr size
[mech_eap.git] / src / wps / wps_registrar.c
index 8bcf2b3..4ca3a42 100644 (file)
@@ -2605,13 +2605,16 @@ static enum wps_process_res wps_process_m1(struct wps_data *wps,
                token = wps_get_nfc_pw_token(
                        &wps->wps->registrar->nfc_pw_tokens, wps->dev_pw_id);
                if (token && token->peer_pk_hash_known) {
+                       size_t len;
+
                        wpa_printf(MSG_DEBUG, "WPS: Found matching NFC "
                                   "Password Token");
                        dl_list_del(&token->list);
                        wps->nfc_pw_token = token;
 
                        addr[0] = attr->public_key;
-                       sha256_vector(1, addr, &attr->public_key_len, hash);
+                       len = attr->public_key_len;
+                       sha256_vector(1, addr, &len, hash);
                        if (os_memcmp_const(hash,
                                            wps->nfc_pw_token->pubkey_hash,
                                            WPS_OOB_PUBKEY_HASH_LEN) != 0) {