aboutsummaryrefslogtreecommitdiffstats
path: root/src/libbsc/system_information.c
diff options
context:
space:
mode:
authorMax <msuraev@sysmocom.de>2017-12-11 12:09:34 +0100
committerMax <msuraev@sysmocom.de>2017-12-11 12:27:49 +0100
commit4bd710d107786ecf838f568171a0175d157e809d (patch)
treeb40d93001d142552007d6646bcca37b6db2c627b /src/libbsc/system_information.c
parenteb79614f4e108f5d512bdee19aabb4af29a3f99b (diff)
Generate SI2ter Rest Octets
Previously we simply omitted SI2ter Rest Octets which is spec violation which lead to 'Malformed Packet' error in Wireshark RSL dissector. Fix this by generating empty 'no rest octets' with proper padding. Adjust test output accordingly. Change-Id: Ie4419aaaf93a462f501f8d8f7bf2677d37c58f94 Fixes: OS#2711
Diffstat (limited to 'src/libbsc/system_information.c')
-rw-r--r--src/libbsc/system_information.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/libbsc/system_information.c b/src/libbsc/system_information.c
index c1b0d49f6..4575454d4 100644
--- a/src/libbsc/system_information.c
+++ b/src/libbsc/system_information.c
@@ -764,7 +764,10 @@ static int generate_si2ter(enum osmo_sysinfo_type t, struct gsm_bts *bts)
if (!n)
bts->si_valid &= ~(1 << SYSINFO_TYPE_2ter);
- return sizeof(*si2t);
+ /* SI2ter Rest Octets as per 3GPP TS 44.018 ยง10.5.2.33a */
+ rc = rest_octets_si2ter(si2t->rest_octets);
+
+ return sizeof(*si2t) + rc;
}
/* SI2quater messages are optional - we only generate them when neighbor UARFCNs or EARFCNs are configured */