diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2013-04-11 20:03:39 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2013-04-17 15:19:40 +0200 |
commit | 6024142facf549f90a5aafb3782434ef19398947 (patch) | |
tree | b562da392c707ca2b91649f1b99f4ffb9a38e230 | |
parent | cd610fb6207ecc683ea9d8104f4774a993e5f7ee (diff) | |
download | ModemManager-6024142facf549f90a5aafb3782434ef19398947.tar.gz |
sim-mbim: these modems don't allow to enable/disable/change PIN if locked
-rw-r--r-- | src/mm-sim-mbim.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/src/mm-sim-mbim.c b/src/mm-sim-mbim.c index ab41a1639..12dbe8b06 100644 --- a/src/mm-sim-mbim.c +++ b/src/mm-sim-mbim.c @@ -272,9 +272,16 @@ pin_set_enable_ready (MbimDevice *device, mbim_message_unref (response); } - if (error) + if (error) { + if (g_error_matches (error, MBIM_STATUS_ERROR, MBIM_STATUS_ERROR_PIN_REQUIRED)) { + g_error_free (error); + error = g_error_new (MM_CORE_ERROR, + MM_CORE_ERROR_WRONG_STATE, + "Need to be unlocked to allow enabling/disabling PIN"); + } + g_simple_async_result_take_error (simple, error); - else + } else g_simple_async_result_set_op_res_gboolean (simple, TRUE); g_simple_async_result_complete (simple); g_object_unref (simple); @@ -345,9 +352,16 @@ pin_set_change_ready (MbimDevice *device, mbim_message_unref (response); } - if (error) + if (error) { + if (g_error_matches (error, MBIM_STATUS_ERROR, MBIM_STATUS_ERROR_PIN_REQUIRED)) { + g_error_free (error); + error = g_error_new (MM_CORE_ERROR, + MM_CORE_ERROR_WRONG_STATE, + "Need to be unlocked to allow changing PIN"); + } + g_simple_async_result_take_error (simple, error); - else + } else g_simple_async_result_set_op_res_gboolean (simple, TRUE); g_simple_async_result_complete (simple); g_object_unref (simple); |