aboutsummaryrefslogtreecommitdiffstats
path: root/community/modemmanager/0002-sms-part-3gpp-add-flag-for-indicating-PDU-is-transfe.patch
diff options
context:
space:
mode:
Diffstat (limited to 'community/modemmanager/0002-sms-part-3gpp-add-flag-for-indicating-PDU-is-transfe.patch')
-rw-r--r--community/modemmanager/0002-sms-part-3gpp-add-flag-for-indicating-PDU-is-transfe.patch154
1 files changed, 0 insertions, 154 deletions
diff --git a/community/modemmanager/0002-sms-part-3gpp-add-flag-for-indicating-PDU-is-transfe.patch b/community/modemmanager/0002-sms-part-3gpp-add-flag-for-indicating-PDU-is-transfe.patch
deleted file mode 100644
index 488d71070de..00000000000
--- a/community/modemmanager/0002-sms-part-3gpp-add-flag-for-indicating-PDU-is-transfe.patch
+++ /dev/null
@@ -1,154 +0,0 @@
-From 62b440b34c8e00cd9e136c0c5d9cb0a11291511f Mon Sep 17 00:00:00 2001
-From: Clayton Craft <clayton@craftyguy.net>
-Date: Fri, 16 Apr 2021 20:42:15 -0700
-Subject: [PATCH 2/2] sms-part-3gpp: add flag for indicating PDU is
- transfer-route message
-
-When the message is a transfer-route MT, there is no SMSC address to
-parse out. This flag allows indicating when the PDU is one such message.
----
- src/mm-broadband-modem-mbim.c | 1 +
- src/mm-broadband-modem-qmi.c | 5 +++++
- src/mm-sms-part-3gpp.c | 42 +++++++++++++++++++----------------
- src/mm-sms-part-3gpp.h | 1 +
- 4 files changed, 30 insertions(+), 19 deletions(-)
-
-diff --git a/src/mm-broadband-modem-mbim.c b/src/mm-broadband-modem-mbim.c
-index df9fc15a..7513ab18 100644
---- a/src/mm-broadband-modem-mbim.c
-+++ b/src/mm-broadband-modem-mbim.c
-@@ -5361,6 +5361,7 @@ add_sms_part (MMBroadbandModemMbim *self,
- pdu->pdu_data,
- pdu->pdu_data_size,
- self,
-+ FALSE,
- &error);
- if (part) {
- mm_obj_dbg (self, "correctly parsed PDU (%d)", pdu->message_index);
-diff --git a/src/mm-broadband-modem-qmi.c b/src/mm-broadband-modem-qmi.c
-index 70d1ac57..21fe4118 100644
---- a/src/mm-broadband-modem-qmi.c
-+++ b/src/mm-broadband-modem-qmi.c
-@@ -5637,6 +5637,7 @@ add_new_read_sms_part (MMIfaceModemMessaging *self,
- guint32 index,
- QmiWmsMessageTagType tag,
- QmiWmsMessageFormat format,
-+ gboolean transfer_route,
- GArray *data)
- {
- MMSmsPart *part = NULL;
-@@ -5657,6 +5658,7 @@ add_new_read_sms_part (MMIfaceModemMessaging *self,
- (guint8 *)data->data,
- data->len,
- self,
-+ transfer_route,
- &error);
- break;
- case QMI_WMS_MESSAGE_FORMAT_MWI:
-@@ -5723,6 +5725,7 @@ wms_raw_read_ready (QmiClientWms *client,
- message->memory_index,
- tag,
- format,
-+ FALSE,
- data);
- }
-
-@@ -6073,6 +6076,7 @@ wms_indication_raw_read_ready (QmiClientWms *client,
- ctx->memory_index,
- tag,
- format,
-+ FALSE,
- data);
- }
-
-@@ -6160,6 +6164,7 @@ messaging_event_report_indication_cb (QmiClientNas *client,
- memory_index,
- tag,
- msg_format,
-+ TRUE,
- raw_data);
- return;
- }
-diff --git a/src/mm-sms-part-3gpp.c b/src/mm-sms-part-3gpp.c
-index fbf8e114..51f2cfeb 100644
---- a/src/mm-sms-part-3gpp.c
-+++ b/src/mm-sms-part-3gpp.c
-@@ -355,7 +355,7 @@ mm_sms_part_3gpp_new_from_pdu (guint index,
- return NULL;
- }
-
-- return mm_sms_part_3gpp_new_from_binary_pdu (index, pdu, pdu_len, log_object, error);
-+ return mm_sms_part_3gpp_new_from_binary_pdu (index, pdu, pdu_len, log_object, FALSE, error);
- }
-
- MMSmsPart *
-@@ -363,6 +363,7 @@ mm_sms_part_3gpp_new_from_binary_pdu (guint index,
- const guint8 *pdu,
- gsize pdu_len,
- gpointer log_object,
-+ gboolean transfer_route,
- GError **error)
- {
- MMSmsPart *sms_part;
-@@ -404,25 +405,28 @@ mm_sms_part_3gpp_new_from_binary_pdu (guint index,
-
- offset = 0;
-
-- /* ---------------------------------------------------------------------- */
-- /* SMSC, in address format, precedes the TPDU
-- * First byte represents the number of BYTES for the address value */
-- PDU_SIZE_CHECK (1, "cannot read SMSC address length");
-- smsc_addr_size_bytes = pdu[offset++];
-- if (smsc_addr_size_bytes > 0) {
-- PDU_SIZE_CHECK (offset + smsc_addr_size_bytes, "cannot read SMSC address");
-- /* SMSC may not be given in DELIVER PDUs */
-- address = sms_decode_address (&pdu[1], 2 * (smsc_addr_size_bytes - 1), error);
-- if (!address) {
-- g_prefix_error (error, "Couldn't read SMSC address: ");
-- mm_sms_part_free (sms_part);
-- return NULL;
-- }
-- mm_sms_part_take_smsc (sms_part, g_steal_pointer (&address));
-- mm_obj_dbg (log_object, " SMSC address parsed: '%s'", mm_sms_part_get_smsc (sms_part));
-- offset += smsc_addr_size_bytes;
-+ if (!transfer_route) {
-+ /* ---------------------------------------------------------------------- */
-+ /* SMSC, in address format, precedes the TPDU
-+ * First byte represents the number of BYTES for the address value */
-+ PDU_SIZE_CHECK (1, "cannot read SMSC address length");
-+ smsc_addr_size_bytes = pdu[offset++];
-+ if (smsc_addr_size_bytes > 0) {
-+ PDU_SIZE_CHECK (offset + smsc_addr_size_bytes, "cannot read SMSC address");
-+ /* SMSC may not be given in DELIVER PDUs */
-+ address = sms_decode_address (&pdu[1], 2 * (smsc_addr_size_bytes - 1), error);
-+ if (!address) {
-+ g_prefix_error (error, "Couldn't read SMSC address: ");
-+ mm_sms_part_free (sms_part);
-+ return NULL;
-+ }
-+ mm_sms_part_take_smsc (sms_part, g_steal_pointer (&address));
-+ mm_obj_dbg (log_object, " SMSC address parsed: '%s'", mm_sms_part_get_smsc (sms_part));
-+ offset += smsc_addr_size_bytes;
-+ } else
-+ mm_obj_dbg (log_object, " no SMSC address given");
- } else
-- mm_obj_dbg (log_object, " no SMSC address given");
-+ mm_obj_dbg (log_object, " This is a transfer-route message");
-
-
- /* ---------------------------------------------------------------------- */
-diff --git a/src/mm-sms-part-3gpp.h b/src/mm-sms-part-3gpp.h
-index bef416fa..c6f4cf3f 100644
---- a/src/mm-sms-part-3gpp.h
-+++ b/src/mm-sms-part-3gpp.h
-@@ -30,6 +30,7 @@ MMSmsPart *mm_sms_part_3gpp_new_from_binary_pdu (guint index,
- const guint8 *pdu,
- gsize pdu_len,
- gpointer log_object,
-+ gboolean transfer_route,
- GError **error);
- guint8 *mm_sms_part_3gpp_get_submit_pdu (MMSmsPart *part,
- guint *out_pdulen,
---
-2.31.1
-