helpers-qmi: 'illegal' card application state is fatal

No need to retry checking card status when the application state is
illegal, just treat the SIM card as unusable right away.

  https://forum.sierrawireless.com/t/uim-card-application-state-illegal/21842
This commit is contained in:
Aleksander Morgado
2020-10-29 23:04:08 +01:00
parent 9c1843c381
commit fb14d0dbb2

View File

@@ -1924,6 +1924,16 @@ mm_qmi_uim_get_card_status_output_parse (gpointer log_
return FALSE;
}
/* Illegal application state is fatal, consider it as a failed SIM right
* away and don't even attempt to retry */
if (app->state == QMI_UIM_CARD_APPLICATION_STATE_ILLEGAL) {
g_set_error (error,
MM_MOBILE_EQUIPMENT_ERROR,
MM_MOBILE_EQUIPMENT_ERROR_SIM_WRONG,
"Illegal SIM/USIM application state");
return FALSE;
}
/* If card not ready yet, return RETRY error.
* If the application state reports needing PIN/PUk, consider that ready as
* well, and let the logic fall down to check PIN1/PIN2. */