diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2012-08-08 10:13:19 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2012-08-29 17:26:44 +0200 |
commit | 7ce6b1296288271c02dbb7d2a85651f87bd244fb (patch) | |
tree | 258c81c95c75a14f25d5c5923f26da23f299888a | |
parent | 51678e141b74eab4303414db2f3837d02a39a587 (diff) |
broadband-modem: validate operator ID before trying to register to it
-rw-r--r-- | src/mm-broadband-modem.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/mm-broadband-modem.c b/src/mm-broadband-modem.c index 02f2d304..d2cd9692 100644 --- a/src/mm-broadband-modem.c +++ b/src/mm-broadband-modem.c @@ -2823,6 +2823,17 @@ modem_3gpp_register_in_network (MMIfaceModem3gpp *self, MMBroadbandModem *broadband = MM_BROADBAND_MODEM (self); RegisterIn3gppNetworkContext *ctx; gchar *command = NULL; + GError *error = NULL; + + /* Validate input MCC/MNC */ + if (operator_id && !mm_3gpp_parse_operator_id (operator_id, NULL, NULL, &error)) { + g_assert (error != NULL); + g_simple_async_report_take_gerror_in_idle (G_OBJECT (self), + callback, + user_data, + error); + return; + } /* (Try to) cancel previous registration request */ if (broadband->priv->modem_3gpp_pending_registration_cancellable) { |