summaryrefslogtreecommitdiffstats
path: root/samsung-ril.c
diff options
context:
space:
mode:
authorPaul Kocialkowski <contact@paulk.fr>2013-02-09 23:43:19 +0100
committerPaul Kocialkowski <contact@paulk.fr>2013-02-09 23:43:19 +0100
commitde38fb7cf9714b36af74aa603090c1cf58833217 (patch)
tree67369732a497927408d8952d66c0d485961403f1 /samsung-ril.c
parent1875ad88e925296397c93396871d7a3fd1c6ef79 (diff)
downloadhardware_replicant_libsamsung-ril-de38fb7cf9714b36af74aa603090c1cf58833217.tar.gz
hardware_replicant_libsamsung-ril-de38fb7cf9714b36af74aa603090c1cf58833217.tar.bz2
hardware_replicant_libsamsung-ril-de38fb7cf9714b36af74aa603090c1cf58833217.zip
sec: Handle various SIM I/O message formats based on SIM ICC type
Also make request id registration override older requests. Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
Diffstat (limited to 'samsung-ril.c')
-rw-r--r--samsung-ril.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/samsung-ril.c b/samsung-ril.c
index 8abb9a0..b10a624 100644
--- a/samsung-ril.c
+++ b/samsung-ril.c
@@ -199,6 +199,12 @@ int ril_request_get_id(RIL_Token t)
return request->id;
id = ril_request_id_get();
+
+ // Unregister a previous request with the same id
+ request = ril_request_info_find_id(id);
+ if (request != NULL)
+ ril_request_unregister(request);
+
rc = ril_request_register(t, id);
if (rc < 0)
return -1;
@@ -322,6 +328,9 @@ void ipc_fmt_dispatch(struct ipc_message_info *info)
case IPC_SEC_SIM_STATUS:
ipc_sec_sim_status(info);
break;
+ case IPC_SEC_SIM_ICC_TYPE:
+ ipc_sec_sim_icc_type(info);
+ break;
case IPC_SEC_LOCK_INFO:
ipc_sec_lock_info(info);
break;