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

abis_rsl: do not allow SACCH in MF mode on SAPI=0

osmo-msc does currently not check if an MS attemts to establish an
SACCH link on SAPI=0. This combination is not permitted and should
be dropped.

- Make sure that establish indication for SAPI=0 and channel-type=SACCH
  is not permitted

See also TTCN3 Testcase:
BSC_Tests.TC_rll_est_ind_inval_sacch

Change-Id: I12962072c0ea689d2b9b5c2899ffb59be9310dcb
Closes: OS#2750
---
M src/libbsc/abis_rsl.c
1 file changed, 11 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/06/6306/1

diff --git a/src/libbsc/abis_rsl.c b/src/libbsc/abis_rsl.c
index ff8b980..a43712c 100644
--- a/src/libbsc/abis_rsl.c
+++ b/src/libbsc/abis_rsl.c
@@ -2190,6 +2190,17 @@
                        break;
                }
 
+               /* Note: Check for MF SACCH on SAPI=0 (not permitted). By
+                * definition we establish a link in multiframe (MF) mode.
+                * (see also 3GPP TS 48.058, chapter 3.1. However, on SAPI=0
+                * SACCH is only allowed in UL mode, not in MF mode.
+                * (see also 3GPP TS 44.005, figure 5) So we have to drop such
+                * Establish Indications */
+               if (sapi == 0 && (rllh->link_id >> 6 & 0x03) == 1) {
+                       DEBUGPC(DRLL, "MS attempted to establish an SACCH in MF 
mode on SAPI=0 (not permitted)");
+                       break;
+               }
+
                msg->lchan->sapis[rllh->link_id & 0x7] = LCHAN_SAPI_MS;
                osmo_timer_del(&msg->lchan->T3101);
                if (msgb_l2len(msg) >

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I12962072c0ea689d2b9b5c2899ffb59be9310dcb
Gerrit-PatchSet: 1
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Owner: dexter <[email protected]>

Reply via email to