diff options
author | Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> | 2022-04-08 19:08:24 +0200 |
---|---|---|
committer | Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> | 2022-05-25 03:03:44 +0200 |
commit | 82d5fbffc9c8853326cad56232edc9dc02faa9a1 (patch) | |
tree | d254d0f50d4e091eb1febef7f9a78d64807f9e31 | |
parent | 63d7c7cb75e49abe7acd9f1e8c7207e76a6a89c3 (diff) | |
download | hardware_replicant_libsamsung-ipc-82d5fbffc9c8853326cad56232edc9dc02faa9a1.tar.gz hardware_replicant_libsamsung-ipc-82d5fbffc9c8853326cad56232edc9dc02faa9a1.tar.bz2 hardware_replicant_libsamsung-ipc-82d5fbffc9c8853326cad56232edc9dc02faa9a1.zip |
Quick test
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
-rw-r--r-- | tools/ipc-modem/ipc-modem.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/tools/ipc-modem/ipc-modem.c b/tools/ipc-modem/ipc-modem.c index 0bc2e1c..e81fdde 100644 --- a/tools/ipc-modem/ipc-modem.c +++ b/tools/ipc-modem/ipc-modem.c @@ -266,9 +266,9 @@ static void modem_response_sms(struct ipc_modem_data *data, break; case IPC_SMS_INCOMING_MSG: struct ipc_sms_incoming_msg_header *header = resp->data; - const void *pdu; + const void *pdu = NULL; char *sms_text; - size_t pdu_size; + size_t pdu_size = 0; int rc; ipc_modem_log( @@ -288,8 +288,11 @@ static void modem_response_sms(struct ipc_modem_data *data, if (header->msg_type != IPC_SMS_MSG_TYPE_SINGLE) break; - ipc_modem_print_sms_pdu(data, pdu, pdu_size); - + /* TODO: + * - handle the 8 bytes before the SMS + * - Handle the arguments like pdu that is passed in + * functions before being defined + */ pdu_size = ipc_sms_incoming_msg_pdu_size_extract(resp->data, resp->size); ipc_modem_log( @@ -311,7 +314,12 @@ static void modem_response_sms(struct ipc_modem_data *data, if (pdu == NULL) break; - rc = ipc_modem_parse_sms_pdu(data, pdu, pdu_size, NULL, &sms_text); + if (pdu_size < 8) + break; + + ipc_modem_print_sms_pdu(data, pdu + 8, pdu_size - 8); + + rc = ipc_modem_parse_sms_pdu(data, pdu + 8, pdu_size - 8, NULL, &sms_text); if (rc < 0) break; |