eap: fix EAP-SIM/AKA/AKA' after settings change

These EAP methods do not store the identity inside the settings file
since it is obtained from the SIM card, then provided to IWD via
get_identity method. If the get_identity method is implemented, do
not fail the settings check when EAP-Identity is missing.
This commit is contained in:
James Prestwood 2018-04-20 11:28:14 -07:00 committed by Denis Kenzior
parent 099f2ecc12
commit d1a13036d2
1 changed files with 7 additions and 4 deletions

View File

@ -430,11 +430,14 @@ bool eap_check_settings(struct l_settings *settings, struct l_queue *secrets,
return false;
}
snprintf(setting, sizeof(setting), "%sIdentity", prefix);
if (!l_settings_get_value(settings, "Security", setting)) {
l_error("Property %s is missing", setting);
/* method may not store identity in settings file */
if (!method->get_identity) {
snprintf(setting, sizeof(setting), "%sIdentity", prefix);
if (!l_settings_get_value(settings, "Security", setting)) {
l_error("Property %s is missing", setting);
return false;
return false;
}
}
if (!method->check_settings)