*/
int registrar;
+ /**
+ * er - Whether the local end is an external registrar
+ */
+ int er;
+
enum {
/* Enrollee states */
SEND_M1, RECV_M2, SEND_M3, RECV_M4, SEND_M5, RECV_M6, SEND_M7,
static int wps_process_ap_settings_r(struct wps_data *wps,
struct wps_parse_attr *attr)
{
- if (wps->wps->ap)
+ if (wps->wps->ap || wps->er)
return 0;
/* AP Settings Attributes in M7 when Enrollee is an AP */
decrypted = wps_decrypt_encr_settings(wps, attr->encr_settings,
attr->encr_settings_len);
if (decrypted == NULL) {
- wpa_printf(MSG_DEBUG, "WPS: Failed to decrypted Encrypted "
+ wpa_printf(MSG_DEBUG, "WPS: Failed to decrypt Encrypted "
"Settings attribute");
wps->state = SEND_WSC_NACK;
return WPS_CONTINUE;