changed default authentication algorithm to CHAP

CHAP is almost universal nowadays, and so it is a better default
than PAP

Not changed for uBlox, that prefers an error if not specified,
and for Huawei, which uses NONE with user/pwd and has 2 CHAP choices
This commit is contained in:
Giacinto Cifelli
2020-07-24 16:34:40 +02:00
parent c70b355718
commit 4d58278d7f
8 changed files with 33 additions and 33 deletions
@@ -233,9 +233,9 @@ build_auth_string (MMBroadbandBearerCinterion *self,
if (!has_user && !has_passwd)
return NULL;
/* If user/passwd given, default to PAP */
mm_obj_dbg (self, "APN user/password given but no authentication type explicitly requested: defaulting to 'PAP'");
encoded_auth = BEARER_CINTERION_AUTH_PAP;
/* If user/passwd given, default to CHAP (more common than PAP) */
mm_obj_dbg (self, "APN user/password given but no authentication type explicitly requested: defaulting to 'CHAP'");
encoded_auth = BEARER_CINTERION_AUTH_CHAP;
}
quoted_user = mm_port_serial_at_quote_string (user ? user : "");
+6 -6
View File
@@ -391,17 +391,17 @@ connect_3gpp_context_step (GTask *task)
if (!user && !passwd)
command = g_strdup_printf ("AT^NDISDUP=1,1,\"%s\"",
apn == NULL ? "" : apn);
else if (encoded_auth == MM_BEARER_HUAWEI_AUTH_NONE)
command = g_strdup_printf ("AT^NDISDUP=1,1,\"%s\",\"%s\",\"%s\"",
apn == NULL ? "" : apn,
user == NULL ? "" : user,
passwd == NULL ? "" : passwd);
else
else {
if (encoded_auth == MM_BEARER_HUAWEI_AUTH_NONE) {
encoded_auth = MM_BEARER_HUAWEI_AUTH_CHAP;
mm_obj_dbg (self, "using default (CHAP) authentication method");
}
command = g_strdup_printf ("AT^NDISDUP=1,1,\"%s\",\"%s\",\"%s\",%d",
apn == NULL ? "" : apn,
user == NULL ? "" : user,
passwd == NULL ? "" : passwd,
encoded_auth);
}
mm_base_modem_at_command_full (ctx->modem,
ctx->primary,
+5 -5
View File
@@ -734,14 +734,14 @@ authenticate (GTask *task)
guint icera_auth;
if (allowed_auth == MM_BEARER_ALLOWED_AUTH_UNKNOWN) {
mm_obj_dbg (self, "using default (PAP) authentication method");
icera_auth = 1;
} else if (allowed_auth & MM_BEARER_ALLOWED_AUTH_PAP) {
mm_obj_dbg (self, "using PAP authentication method");
icera_auth = 1;
mm_obj_dbg (self, "using default (CHAP) authentication method");
icera_auth = 2;
} else if (allowed_auth & MM_BEARER_ALLOWED_AUTH_CHAP) {
mm_obj_dbg (self, "using CHAP authentication method");
icera_auth = 2;
} else if (allowed_auth & MM_BEARER_ALLOWED_AUTH_PAP) {
mm_obj_dbg (self, "using PAP authentication method");
icera_auth = 1;
} else {
gchar *str;
+5 -5
View File
@@ -526,14 +526,14 @@ authenticate (GTask *task)
guint hso_auth;
if (allowed_auth == MM_BEARER_ALLOWED_AUTH_UNKNOWN) {
mm_obj_dbg (self, "using default (PAP) authentication method");
hso_auth = 1;
} else if (allowed_auth & MM_BEARER_ALLOWED_AUTH_PAP) {
mm_obj_dbg (self, "using PAP authentication method");
hso_auth = 1;
mm_obj_dbg (self, "using default (CHAP) authentication method");
hso_auth = 2;
} else if (allowed_auth & MM_BEARER_ALLOWED_AUTH_CHAP) {
mm_obj_dbg (self, "using CHAP authentication method");
hso_auth = 2;
} else if (allowed_auth & MM_BEARER_ALLOWED_AUTH_PAP) {
mm_obj_dbg (self, "using PAP authentication method");
hso_auth = 1;
} else {
gchar *str;
+5 -5
View File
@@ -338,14 +338,14 @@ dial_3gpp_context_step (GTask *task)
guint sierra_auth;
if (allowed_auth == MM_BEARER_ALLOWED_AUTH_UNKNOWN) {
mm_obj_dbg (self, "using default (PAP) authentication method");
sierra_auth = 1;
} else if (allowed_auth & MM_BEARER_ALLOWED_AUTH_PAP) {
mm_obj_dbg (self, "using PAP authentication method");
sierra_auth = 1;
mm_obj_dbg (self, "using default (CHAP) authentication method");
sierra_auth = 2;
} else if (allowed_auth & MM_BEARER_ALLOWED_AUTH_CHAP) {
mm_obj_dbg (self, "using CHAP authentication method");
sierra_auth = 2;
} else if (allowed_auth & MM_BEARER_ALLOWED_AUTH_PAP) {
mm_obj_dbg (self, "using PAP authentication method");
sierra_auth = 1;
} else {
gchar *str;
+2 -2
View File
@@ -498,10 +498,10 @@ authenticate_3gpp (GTask *task)
mm_obj_dbg (self, "using automatic authentication method");
if (self->priv->allowed_auths & MM_UBLOX_BEARER_ALLOWED_AUTH_AUTO)
ublox_auth = 3;
else if (self->priv->allowed_auths & MM_UBLOX_BEARER_ALLOWED_AUTH_PAP)
ublox_auth = 1;
else if (self->priv->allowed_auths & MM_UBLOX_BEARER_ALLOWED_AUTH_CHAP)
ublox_auth = 2;
else if (self->priv->allowed_auths & MM_UBLOX_BEARER_ALLOWED_AUTH_PAP)
ublox_auth = 1;
else if (self->priv->allowed_auths & MM_UBLOX_BEARER_ALLOWED_AUTH_NONE)
ublox_auth = 0;
} else if (allowed_auth & MM_BEARER_ALLOWED_AUTH_PAP) {
+3 -3
View File
@@ -636,10 +636,10 @@ build_start_network_input (ConnectContext *ctx)
/* Need to add auth info? */
if (has_user || has_password || ctx->auth != QMI_WDS_AUTHENTICATION_NONE) {
/* We define a valid auth preference if we have either user or password, or an explicit
* request for one to be set. If no explicit one was given, default to PAP. */
* request for one to be set. If no explicit one was given, default to CHAP. */
qmi_message_wds_start_network_input_set_authentication_preference (
input,
(ctx->auth != QMI_WDS_AUTHENTICATION_NONE) ? ctx->auth : QMI_WDS_AUTHENTICATION_PAP,
(ctx->auth != QMI_WDS_AUTHENTICATION_NONE) ? ctx->auth : QMI_WDS_AUTHENTICATION_CHAP,
NULL);
if (has_user)
@@ -1740,7 +1740,7 @@ _connect (MMBaseBearer *_self,
g_object_unref (properties);
if (auth == MM_BEARER_ALLOWED_AUTH_UNKNOWN) {
/* We'll default to PAP later if needed */
/* We'll default to CHAP later if needed */
ctx->auth = QMI_WDS_AUTHENTICATION_NONE;
} else if (auth & (MM_BEARER_ALLOWED_AUTH_PAP |
MM_BEARER_ALLOWED_AUTH_CHAP |
+4 -4
View File
@@ -375,13 +375,13 @@ mm_bearer_allowed_auth_to_mbim_auth_protocol (MMBearerAllowedAuth bearer_auth,
/* NOTE: the input is a BITMASK, so we try to find a "best match" */
if (bearer_auth == MM_BEARER_ALLOWED_AUTH_UNKNOWN) {
mm_obj_dbg (log_object, "using default (PAP) authentication method");
return MBIM_AUTH_PROTOCOL_PAP;
mm_obj_dbg (log_object, "using default (CHAP) authentication method");
return MBIM_AUTH_PROTOCOL_CHAP;
}
if (bearer_auth & MM_BEARER_ALLOWED_AUTH_PAP)
return MBIM_AUTH_PROTOCOL_PAP;
if (bearer_auth & MM_BEARER_ALLOWED_AUTH_CHAP)
return MBIM_AUTH_PROTOCOL_CHAP;
if (bearer_auth & MM_BEARER_ALLOWED_AUTH_PAP)
return MBIM_AUTH_PROTOCOL_PAP;
if (bearer_auth & MM_BEARER_ALLOWED_AUTH_MSCHAPV2)
return MBIM_AUTH_PROTOCOL_MSCHAPV2;
if (bearer_auth & MM_BEARER_ALLOWED_AUTH_NONE)