Change in osmo-msc[master]: libmsc/db.c: warn user about SMS text truncation

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Vadim Yanitskiy gerrit-no-reply at lists.osmocom.org
Tue Apr 2 11:32:01 UTC 2019


Vadim Yanitskiy has uploaded this change for review. ( https://gerrit.osmocom.org/13489


Change subject: libmsc/db.c: warn user about SMS text truncation
......................................................................

libmsc/db.c: warn user about SMS text truncation

In general, neither TP-User-Data nor decoded text should be
truncated. If the SMSC's database for some reason does contain
such weird messages, let's at least let the user know about it.

Change-Id: I75e852ebe44ba4784572cbffa029e13f0d3c430c
---
M src/libmsc/db.c
1 file changed, 10 insertions(+), 0 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/89/13489/1

diff --git a/src/libmsc/db.c b/src/libmsc/db.c
index bf57ec8..6cd8493 100644
--- a/src/libmsc/db.c
+++ b/src/libmsc/db.c
@@ -229,6 +229,7 @@
 {
 	const unsigned char *user_data;
 	unsigned int user_data_len;
+	unsigned int text_len;
 	const char *text;
 
 	/* Retrieve TP-UDL (User-Data-Length) in octets (regardless of DCS) */
@@ -245,6 +246,15 @@
 	user_data = dbi_result_get_binary(result, "user_data");
 	memcpy(sms->user_data, user_data, user_data_len);
 
+	/* Retrieve the text length (excluding '\0') */
+	text_len = dbi_result_get_field_length(result, "text");
+	if (text_len >= sizeof(sms->text)) {
+		LOGP(DDB, LOGL_ERROR,
+		     "SMS text length %u is too big, truncating to %zu\n",
+		     text_len, sizeof(sms->text) - 1);
+		/* OSMO_STRLCPY_ARRAY() does truncation for us */
+	}
+
 	/* Retrieve the text parsed from TP-UD (User-Data) */
 	text = dbi_result_get_string(result, "text");
 	if (text)

-- 
To view, visit https://gerrit.osmocom.org/13489
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I75e852ebe44ba4784572cbffa029e13f0d3c430c
Gerrit-Change-Number: 13489
Gerrit-PatchSet: 1
Gerrit-Owner: Vadim Yanitskiy <axilirator at gmail.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20190402/49a20c0e/attachment.htm>


More information about the gerrit-log mailing list