diff --git a/src/wps/wps_defs.h b/src/wps/wps_defs.h index 3421ac5f8..124960641 100644 --- a/src/wps/wps_defs.h +++ b/src/wps/wps_defs.h @@ -215,7 +215,9 @@ enum wps_config_error { WPS_CFG_SETUP_LOCKED = 15, WPS_CFG_MSG_TIMEOUT = 16, WPS_CFG_REG_SESS_TIMEOUT = 17, - WPS_CFG_DEV_PASSWORD_AUTH_FAILURE = 18 + WPS_CFG_DEV_PASSWORD_AUTH_FAILURE = 18, + WPS_CFG_60G_CHAN_NOT_SUPPORTED = 19, + WPS_CFG_PUBLIC_KEY_HASH_MISMATCH = 20 }; /* Vendor specific Error Indication for WPS event messages */ diff --git a/src/wps/wps_registrar.c b/src/wps/wps_registrar.c index 19490a15f..61bb6415b 100644 --- a/src/wps/wps_registrar.c +++ b/src/wps/wps_registrar.c @@ -2558,7 +2558,10 @@ static enum wps_process_res wps_process_m1(struct wps_data *wps, WPS_OOB_PUBKEY_HASH_LEN) != 0) { wpa_printf(MSG_ERROR, "WPS: Public Key hash " "mismatch"); - return WPS_FAILURE; + wps->state = SEND_M2D; + wps->config_error = + WPS_CFG_PUBLIC_KEY_HASH_MISMATCH; + return WPS_CONTINUE; } } }