DPP2: Allow Controller to be configured to require QR mutual auth

Extend the DPP_CONTROLLER_START command to accept the optional qr=mutual
parameter similarly to the DPP_LISTEN case.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
This commit is contained in:
Jouni Malinen 2020-08-12 11:41:52 +03:00 committed by Jouni Malinen
parent 61c249c490
commit e4e95aabbf
3 changed files with 4 additions and 1 deletions

View file

@ -384,6 +384,7 @@ struct dpp_controller_config {
const char *configurator_params; const char *configurator_params;
int tcp_port; int tcp_port;
u8 allowed_roles; u8 allowed_roles;
int qr_mutual;
}; };
#ifdef CONFIG_TESTING_OPTIONS #ifdef CONFIG_TESTING_OPTIONS

View file

@ -1622,7 +1622,7 @@ int dpp_controller_start(struct dpp_global *dpp,
os_strdup(config->configurator_params); os_strdup(config->configurator_params);
dl_list_init(&ctrl->conn); dl_list_init(&ctrl->conn);
ctrl->allowed_roles = config->allowed_roles; ctrl->allowed_roles = config->allowed_roles;
ctrl->qr_mutual = 0; ctrl->qr_mutual = config->qr_mutual;
ctrl->sock = socket(AF_INET, SOCK_STREAM, 0); ctrl->sock = socket(AF_INET, SOCK_STREAM, 0);
if (ctrl->sock < 0) if (ctrl->sock < 0)

View file

@ -3350,6 +3350,8 @@ int wpas_dpp_controller_start(struct wpa_supplicant *wpa_s, const char *cmd)
else else
return -1; return -1;
} }
config.qr_mutual = os_strstr(cmd, " qr=mutual") != NULL;
} }
config.configurator_params = wpa_s->dpp_configurator_params; config.configurator_params = wpa_s->dpp_configurator_params;
return dpp_controller_start(wpa_s->dpp, &config); return dpp_controller_start(wpa_s->dpp, &config);