summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/gsm0408/gsm0408_test.c11
-rw-r--r--tests/gsm0408/gsm0408_test.ok4
2 files changed, 15 insertions, 0 deletions
diff --git a/tests/gsm0408/gsm0408_test.c b/tests/gsm0408/gsm0408_test.c
index b5f80614..db1d45ad 100644
--- a/tests/gsm0408/gsm0408_test.c
+++ b/tests/gsm0408/gsm0408_test.c
@@ -727,6 +727,17 @@ static const struct bcd_number_test {
.dec_ascii = "(none)",
.dec_rc = -EIO,
},
+ {
+ .test_name = "decoding buffer is one byte too small (OS#4049)",
+
+ /* Decoding test */
+ .dec_hex = "022143", /* "1234" */
+ .dec_ascii = "123", /* '4' was truncated */
+ .dec_rc = -ENOSPC,
+
+ /* Buffer length limitations */
+ .dec_buf_lim = 4,
+ },
};
static void test_bcd_number_encode_decode()
diff --git a/tests/gsm0408/gsm0408_test.ok b/tests/gsm0408/gsm0408_test.ok
index 844c2018..d343869f 100644
--- a/tests/gsm0408/gsm0408_test.ok
+++ b/tests/gsm0408/gsm0408_test.ok
@@ -186,6 +186,10 @@ BSD number encoding / decoding test
- Decoding HEX (buffer limit=0) ''...
- Expected: (rc=-5) '(none)'
- Actual: (rc=-5) '(none)'
+- Running test: decoding buffer is one byte too small (OS#4049)
+ - Decoding HEX (buffer limit=4) '022143'...
+ - Expected: (rc=-28) '123'
+ - Actual: (rc=-28) '123'
Constructed RA:
077-121-666-5