[PATCH] osmocom-bb[master]: mobile/gsm48_rr.c: fix ACCH System Information parsing

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 Dec 5 21:05:23 UTC 2017


Review at  https://gerrit.osmocom.org/5204

mobile/gsm48_rr.c: fix ACCH System Information parsing

According to GSM 04.08, the System Information messages, such as
SI5, SI5ter, SI5bis and SI6 (described in sections 9.1.37-40),
have no the 'L2 Pseudo Length' (10.5.2.19) field, unlike others.

So, previously the ACCH SI messages were ignored due to an
implementation error - the gsm48_system_information_type_header
struct isn't applicable here, because it assumes the 'l2_plen'.

Since there is no (yet?) equivalent struct for the ACCH SI, this
change replaces the wrong struct by the 'gsm48_hdr', which
satisfies described requirements.

Change-Id: I9166996f146af7973bf02a8a1c965581dc58a4a5
---
M src/host/layer23/src/mobile/gsm48_rr.c
1 file changed, 3 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/04/5204/1

diff --git a/src/host/layer23/src/mobile/gsm48_rr.c b/src/host/layer23/src/mobile/gsm48_rr.c
index ac27214..994f26a 100644
--- a/src/host/layer23/src/mobile/gsm48_rr.c
+++ b/src/host/layer23/src/mobile/gsm48_rr.c
@@ -4748,7 +4748,7 @@
 	struct gsm48_rrlayer *rr = &ms->rrlayer;
 	struct gsm_settings *set = &ms->settings;
 	struct abis_rsl_rll_hdr *rllh = msgb_l2(msg);
-	struct gsm48_system_information_type_header *sih = msgb_l3(msg);
+	struct gsm48_hdr *sih = msgb_l3(msg);
 	uint8_t ind_ta, ind_tx_power;
 
 	if (msgb_l2len(msg) < sizeof(*rllh) + 2 + 2) {
@@ -4772,7 +4772,7 @@
 		rr->cd_now.ind_tx_power = ind_tx_power;
 	}
 
-	switch (sih->system_information) {
+	switch (sih->msg_type) {
 	case GSM48_MT_RR_SYSINFO_5:
 		return gsm48_rr_rx_sysinfo5(ms, msg);
 	case GSM48_MT_RR_SYSINFO_5bis:
@@ -4783,7 +4783,7 @@
 		return gsm48_rr_rx_sysinfo6(ms, msg);
 	default:
 		LOGP(DRR, LOGL_NOTICE, "ACCH message type 0x%02x unknown.\n",
-			sih->system_information);
+			sih->msg_type);
 		return -EINVAL;
 	}
 }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9166996f146af7973bf02a8a1c965581dc58a4a5
Gerrit-PatchSet: 1
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Owner: Vadim Yanitskiy <axilirator at gmail.com>



More information about the gerrit-log mailing list