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/.
Harald Welte gerrit-no-reply at lists.osmocom.org
Review at https://gerrit.osmocom.org/6578
BSSGP_Emulation: Add SNDCP decoding support
Change-Id: Icd2e8feed9173b0a2729b7ee1cfac37a86eca6cf
---
M gprs_gb/gen_links.sh
M library/BSSGP_Emulation.ttcn
M library/LLC_Templates.ttcn
M sgsn/SGSN_Tests.ttcn
M sgsn/gen_links.sh
5 files changed, 47 insertions(+), 5 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/78/6578/1
diff --git a/gprs_gb/gen_links.sh b/gprs_gb/gen_links.sh
index 85a35ab..5cbaaae 100755
--- a/gprs_gb/gen_links.sh
+++ b/gprs_gb/gen_links.sh
@@ -47,6 +47,11 @@
FILES="LLC_EncDec.cc LLC_Types.ttcn"
gen_links $DIR $FILES
+DIR=$BASEDIR/titan.ProtocolModules.SNDCP_v7.0.0/src
+FILES="SNDCP_Types.ttcn"
+gen_links $DIR $FILES
+
+
DIR=../library
FILES="General_Types.ttcn GSM_Types.ttcn GSM_RR_Types.ttcn Osmocom_Types.ttcn RLCMAC_Types.ttcn RLCMAC_CSN1_Types.ttcn RLCMAC_EncDec.cc L1CTL_Types.ttcn L1CTL_PortType.ttcn LAPDm_RAW_PT.ttcn LAPDm_Types.ttcn "
FILES+="NS_Emulation.ttcn NS_CodecPort.ttcn NS_CodecPort_CtrlFunct.ttcn NS_CodecPort_CtrlFunctDef.cc "
diff --git a/library/BSSGP_Emulation.ttcn b/library/BSSGP_Emulation.ttcn
index 0be12e8..a26e01f 100644
--- a/library/BSSGP_Emulation.ttcn
+++ b/library/BSSGP_Emulation.ttcn
@@ -14,6 +14,8 @@
import from LLC_Types all;
import from LLC_Templates all;
+import from SNDCP_Types all;
+
/***********************************************************************
* Communication between Client Components and Main Component
***********************************************************************/
@@ -601,7 +603,8 @@
PDU_BSSGP bssgp,
PDU_LLC llc optional,
PDU_L3_MS_SGSN l3_mo optional,
- PDU_L3_SGSN_MS l3_mt optional
+ PDU_L3_SGSN_MS l3_mt optional,
+ PDU_SN sndcp optional
}
/* Decode a PDU_BSSGP into a BssgpDecoded (i.e. with LLC/L3 decoded, as applicable) */
@@ -610,7 +613,8 @@
bssgp := bssgp,
llc := omit,
l3_mo := omit,
- l3_mt := omit
+ l3_mt := omit,
+ sndcp := omit
};
/* Decode LLC, if it is a PDU that contains LLC */
@@ -627,6 +631,11 @@
} else {
dec.l3_mt := dec_PDU_L3_SGSN_MS(dec.llc.pDU_LLC_UI.information_field_UI);
}
+ }
+
+ /* Decode SNDCP, if it is a LLC PDU containing user plane data */
+ if (isvalue(dec.llc) and match(dec.llc, tr_LLC_UI_USER)) {
+ dec.sndcp := dec_PDU_SN(dec.llc.pDU_LLC_UI.information_field_UI);
}
return dec;
}
@@ -657,21 +666,32 @@
bssgp := bg,
llc := *,
l3_mo := *,
- l3_mt := *
+ l3_mt := *,
+ sndcp := *
+}
+
+template BssgpDecoded tr_BD_LLC(template PDU_LLC llc) := {
+ bssgp := ?,
+ llc := llc,
+ l3_mo := *,
+ l3_mt := *,
+ sndcp := *
}
template BssgpDecoded tr_BD_L3_MT(template PDU_L3_SGSN_MS mt) := {
bssgp := ?,
llc := ?,
l3_mo := omit,
- l3_mt := mt
+ l3_mt := mt,
+ sndcp := omit
}
template BssgpDecoded tr_BD_L3_MO(template PDU_L3_MS_SGSN mo) := {
bssgp := ?,
llc := ?,
l3_mo := mo,
- l3_mt := omit
+ l3_mt := omit,
+ sndcp := omit
}
diff --git a/library/LLC_Templates.ttcn b/library/LLC_Templates.ttcn
index cfe97f8..7bc4088 100644
--- a/library/LLC_Templates.ttcn
+++ b/library/LLC_Templates.ttcn
@@ -68,5 +68,12 @@
/* LLC UI frame with SAPI for L3 payload */
template PDU_LLC tr_LLC_UI_L3 := ( tr_LLC_UI(?, c_LLC_SAPI_LLGMM) );
+/* LLC UI frame with SAPI for User payload */
+template PDU_LLC tr_LLC_UI_USER := tr_LLC_UI(?, (c_LLC_SAPI_LL3,
+ c_LLC_SAPI_LL5,
+ c_LLC_SAPI_LL9,
+ c_LLC_SAPI_LL11)
+ );
+
}
diff --git a/sgsn/SGSN_Tests.ttcn b/sgsn/SGSN_Tests.ttcn
index 6dd56ae..a381692 100644
--- a/sgsn/SGSN_Tests.ttcn
+++ b/sgsn/SGSN_Tests.ttcn
@@ -24,6 +24,11 @@
import from GTPC_Types all;
import from GTPU_Types all;
+import from LLC_Types all;
+import from LLC_Templates all;
+
+import from SNDCP_Types all;
+
import from TELNETasp_PortType all;
import from Osmocom_VTY_Functions all;
diff --git a/sgsn/gen_links.sh b/sgsn/gen_links.sh
index b450288..c398779 100755
--- a/sgsn/gen_links.sh
+++ b/sgsn/gen_links.sh
@@ -59,6 +59,11 @@
FILES="LLC_EncDec.cc LLC_Types.ttcn"
gen_links $DIR $FILES
+DIR=$BASEDIR/titan.ProtocolModules.SNDCP_v7.0.0/src
+FILES="SNDCP_Types.ttcn"
+gen_links $DIR $FILES
+
+
DIR=$BASEDIR/titan.ProtocolModules.MobileL3_v13.4.0/src
FILES="MobileL3_CC_Types.ttcn MobileL3_CommonIE_Types.ttcn MobileL3_GMM_SM_Types.ttcn MobileL3_MM_Types.ttcn MobileL3_RRM_Types.ttcn MobileL3_SMS_Types.ttcn MobileL3_SS_Types.ttcn MobileL3_Types.ttcn"
gen_links $DIR $FILES
--
To view, visit https://gerrit.osmocom.org/6578
To unsubscribe, visit https://gerrit.osmocom.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Icd2e8feed9173b0a2729b7ee1cfac37a86eca6cf
Gerrit-PatchSet: 1
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <laforge at gnumonks.org>