diff --git a/plugins/mbpi.c b/plugins/mbpi.c index ae92c762..433f1b55 100644 --- a/plugins/mbpi.c +++ b/plugins/mbpi.c @@ -325,6 +325,8 @@ static void apn_handler(GMarkupParseContext *context, struct gsm_data *gsm, ap->apn = g_strdup(apn); ap->type = OFONO_GPRS_CONTEXT_TYPE_INTERNET; ap->proto = OFONO_GPRS_PROTO_IP; + + /* pre-select default authentication method */ ap->auth_method = OFONO_GPRS_AUTH_METHOD_CHAP; g_markup_parse_context_push(context, &apn_parser, ap); @@ -395,6 +397,10 @@ static void gsm_end(GMarkupParseContext *context, const gchar *element_name, if (ap == NULL) return; + /* select authentication method NONE if fit */ + if (!ap->username || !ap->password) + ap->auth_method = OFONO_GPRS_AUTH_METHOD_NONE; + if (gsm->allow_duplicates == FALSE) { GSList *l;