DPP: Network profile parameters for DPP AKM

Extend wpa_supplicant network profile to include parameters needed for
the DPP AKM: dpp_connector, dpp_netaccesskey, dpp_netaccesskey_expiry,
dpp_csign, dpp_csign_expiry.

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
Jouni Malinen 2017-06-18 13:48:57 +03:00 committed by Jouni Malinen
parent 0c52953b0f
commit b979caae57
3 changed files with 56 additions and 0 deletions

View file

@ -2239,6 +2239,13 @@ static const struct parse_data ssid_fields[] = {
{ INT_RANGE(pbss, 0, 2) },
{ INT_RANGE(wps_disabled, 0, 1) },
{ INT_RANGE(fils_dh_group, 0, 65535) },
#ifdef CONFIG_DPP
{ STR(dpp_connector) },
{ STR_LEN(dpp_netaccesskey) },
{ INT(dpp_netaccesskey_expiry) },
{ STR_LEN(dpp_csign) },
{ INT(dpp_csign_expiry) },
#endif /* CONFIG_DPP */
};
#undef OFFSET
@ -2424,6 +2431,9 @@ void wpa_config_free_ssid(struct wpa_ssid *ssid)
#ifdef CONFIG_MESH
os_free(ssid->mesh_basic_rates);
#endif /* CONFIG_MESH */
os_free(ssid->dpp_connector);
bin_clear_free(ssid->dpp_netaccesskey, ssid->dpp_netaccesskey_len);
os_free(ssid->dpp_csign);
while ((psk = dl_list_first(&ssid->psk_list, struct psk_list_entry,
list))) {
dl_list_del(&psk->list);

View file

@ -849,6 +849,13 @@ static void wpa_config_write_network(FILE *f, struct wpa_ssid *ssid)
INT(wpa_ptk_rekey);
INT(group_rekey);
INT(ignore_broadcast_ssid);
#ifdef CONFIG_DPP
STR(dpp_connector),
STR(dpp_netaccesskey),
INT(dpp_netaccesskey_expiry),
STR(dpp_csign),
INT(dpp_csign_expiry),
#endif /* CONFIG_DPP */
#ifdef CONFIG_HT_OVERRIDES
INT_DEF(disable_ht, DEFAULT_DISABLE_HT);
INT_DEF(disable_ht40, DEFAULT_DISABLE_HT40);

View file

@ -845,6 +845,45 @@ struct wpa_ssid {
* 1-65535 DH Group to use for FILS PFS
*/
int fils_dh_group;
/**
* dpp_connector - DPP Connector (signedConnector as string)
*/
char *dpp_connector;
/**
* dpp_netaccesskey - DPP netAccessKey (own private key)
*/
u8 *dpp_netaccesskey;
/**
* dpp_netaccesskey_len - DPP netAccessKey length in octets
*/
size_t dpp_netaccesskey_len;
/**
* net_access_key_expiry - DPP netAccessKey expiry in UNIX time stamp
*
* 0 indicates no expiration.
*/
unsigned int dpp_netaccesskey_expiry;
/**
* dpp_csign - C-sign-key (Configurator public key)
*/
u8 *dpp_csign;
/**
* dpp_csign_len - C-sign-key length in octets
*/
size_t dpp_csign_len;
/**
* dpp_csign_expiry - C-sign-key expiry in UNIX time stamp
*
* 0 indicates no expiration.
*/
unsigned int dpp_csign_expiry;
};
#endif /* CONFIG_SSID_H */