Hello Max, Jenkins Builder,

I'd like you to reexamine a change.  Please visit

    https://gerrit.osmocom.org/4641

to look at the new patch set (#2).

mobile/gsm480_ss.c: use secure gsm_7bit_(en|de)code_n_ussd

Since some 'gsm_7bit_*' functions were deprecated and replaced by
more secure ones with the '_n_' suffix in names, it's better to
use the updated functions.

Change-Id: If8a1983592f5800e3981f29962eb333ac9473f40
---
M src/host/layer23/src/mobile/gsm480_ss.c
1 file changed, 2 insertions(+), 6 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/41/4641/2

diff --git a/src/host/layer23/src/mobile/gsm480_ss.c 
b/src/host/layer23/src/mobile/gsm480_ss.c
index 8d025e9..ff90faa 100644
--- a/src/host/layer23/src/mobile/gsm480_ss.c
+++ b/src/host/layer23/src/mobile/gsm480_ss.c
@@ -532,7 +532,7 @@
        }
 
        /* Encode service request */
-       length = gsm_7bit_encode(msg->data, text);
+       gsm_7bit_encode_n_ussd(msg->data, msgb_tailroom(msg), text, &length);
        msgb_put(msg, length);
 
        /* Then wrap it as an Octet String */
@@ -772,11 +772,7 @@
                return -EINVAL;
        }
        num_chars = tag_len * 8 / 7;
-       /* Prevent a mobile-originated buffer-overrun! */
-       if (num_chars > sizeof(text) - 1)
-               num_chars = sizeof(text) - 1;
-       text[sizeof(text) - 1] = '\0';
-       gsm_7bit_decode(text, tag_data, num_chars);
+       gsm_7bit_decode_n_ussd(text, sizeof(text), tag_data, num_chars);
 
        for (i = 0; text[i]; i++) {
                if (text[i] == '\r')

-- 
To view, visit https://gerrit.osmocom.org/4641
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: If8a1983592f5800e3981f29962eb333ac9473f40
Gerrit-PatchSet: 2
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Owner: Vadim Yanitskiy <axilira...@gmail.com>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Max <msur...@sysmocom.de>

Reply via email to