3
0
mirror of https://git.kernel.org/pub/scm/network/wireless/iwd.git synced 2024-11-26 10:39:23 +01:00

hotspot: allow HESSID without NAIRealmNames

The original idea was to allow the provisioning file to include HESSID
without the NAIRealmNames. Configuring this way would allow for ANQP
to be skipped completely, assuming the AP advertises its HESSID.

The way the code was written still required NAIRealmNames to be
provided in the provisioning file.
This commit is contained in:
James Prestwood 2019-07-03 10:32:26 -07:00 committed by Denis Kenzior
parent 7ed51a2d95
commit e8d91f15a1

View File

@ -70,7 +70,7 @@ static struct hs20_config *hs20_config_new(struct l_settings *settings,
{ {
struct hs20_config *config; struct hs20_config *config;
char *str; char *str;
char **nai_realms; char **nai_realms = NULL;
config = l_new(struct hs20_config, 1); config = l_new(struct hs20_config, 1);
@ -79,9 +79,10 @@ static struct hs20_config *hs20_config_new(struct l_settings *settings,
if (str) { if (str) {
util_string_to_address(str, config->hessid); util_string_to_address(str, config->hessid);
l_free(str); l_free(str);
goto done;
} }
/* NAI realms are required */ /* NAI realms are required if HESSID is not included */
nai_realms = l_settings_get_string_list(settings, "Hotspot", nai_realms = l_settings_get_string_list(settings, "Hotspot",
"NAIRealmNames", ','); "NAIRealmNames", ',');
if (!nai_realms) { if (!nai_realms) {
@ -89,6 +90,7 @@ static struct hs20_config *hs20_config_new(struct l_settings *settings,
return NULL; return NULL;
} }
done:
config->nai_realms = nai_realms; config->nai_realms = nai_realms;
config->filename = l_strdup(filename); config->filename = l_strdup(filename);