Some modems do not support CSIM lock/unlock, but they do support
querying SIM unlock retries through +CSIM command.

If CSIM lock returns with "unsupported command" do not propagate
the error and continue with the other CSIM queries instead.
---

Sorry for not having caught this problem earlier,
when reviewing the CSIM lock patch.

---

 plugins/telit/mm-broadband-modem-telit.c | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/plugins/telit/mm-broadband-modem-telit.c 
b/plugins/telit/mm-broadband-modem-telit.c
index cce0229..3680a8a 100644
--- a/plugins/telit/mm-broadband-modem-telit.c
+++ b/plugins/telit/mm-broadband-modem-telit.c
@@ -591,10 +591,17 @@ csim_lock_ready (MMBaseModem              *self,
 
     response = mm_base_modem_at_command_finish (self, res, &error);
     if (!response) {
-        g_prefix_error (&error, "Couldn't lock SIM card: ");
-        g_simple_async_result_take_error (ctx->result, error);
-        load_unlock_retries_context_complete_and_free (ctx);
-        return;
+        if (g_error_matches (error,
+                             MM_MOBILE_EQUIPMENT_ERROR,
+                             MM_MOBILE_EQUIPMENT_ERROR_NOT_SUPPORTED)) {
+            mm_warn ("Couldn't lock SIM card: %s. Continuing as well...", 
error->message);
+            g_error_free (error);
+        } else {
+            g_prefix_error (&error, "Couldn't lock SIM card: ");
+            g_simple_async_result_take_error (ctx->result, error);
+            load_unlock_retries_context_complete_and_free (ctx);
+            return;
+        }
     }
 
     ctx->step++;
-- 
2.7.4

_______________________________________________
ModemManager-devel mailing list
ModemManager-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel

Reply via email to