Change in osmo-ttcn3-hacks[master]: lib: L3_Templates: Fix DEACT PDP REQ msg type and make tearDownInd op...

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/.

Pau Espin Pedrol gerrit-no-reply at lists.osmocom.org
Fri Jul 13 17:16:27 UTC 2018


Pau Espin Pedrol has uploaded this change for review. ( https://gerrit.osmocom.org/9991


Change subject: lib: L3_Templates: Fix DEACT PDP REQ msg type and make tearDownInd optional
......................................................................

lib: L3_Templates: Fix DEACT PDP REQ msg type and make tearDownInd optional

Specs state in 3GPP TS 24.008 that TearDownInd IE is optional, so allow
possibility to omit it.

Also fix protocolConfigOpts being passed as parameter but not being used
in template tr_SM_DEACT_PDP_REQ_MT.

Change-Id: I006d64f51c17a22a42a225ddfa4119933e48a022
---
M library/L3_Templates.ttcn
1 file changed, 33 insertions(+), 34 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/91/9991/1

diff --git a/library/L3_Templates.ttcn b/library/L3_Templates.ttcn
index 9d6d3c3..44d9e73 100644
--- a/library/L3_Templates.ttcn
+++ b/library/L3_Templates.ttcn
@@ -2254,6 +2254,22 @@
 	}
 }
 
+function ts_TearDownIndicatorTV(in template (omit) boolean ind)
+					return template (omit) TearDownIndicatorTV {
+	if (istemplatekind(ind, "omit")) {
+		return omit;
+	} else {
+		var template (omit) TearDownIndicatorTV ret := {
+			tearDownIndicatorV := {
+				tdi_flag := bool2bit(valueof(ind)),
+				spare := '000'B
+			},
+			elementIdentifier := '1001'B
+		}
+		return ret;
+	}
+}
+
 template (value) PDU_L3_MS_SGSN ts_SM_ACT_PDP_REQ(BIT3 tid, BIT4 nsapi, BIT4 sapi, QoSV qos,
 						  PDPAddressV addr,
 						  template (omit) octetstring apn := omit,
@@ -2348,10 +2364,11 @@
 	}
 }
 
-template (value) PDU_L3_MS_SGSN ts_SM_DEACT_PDP_REQ_MO(BIT3 tid, OCT1 cause, boolean tdown := false,
+template (value) PDU_L3_MS_SGSN ts_SM_DEACT_PDP_REQ_MO(BIT3 tid, OCT1 cause,
+						  template (omit) boolean tdown := omit,
 						  template (omit) ProtocolConfigOptionsV pco := omit
 						) := {
-	discriminator := '0000'B, /* overwritten */
+	discriminator := '1010'B,
 	tiOrSkip := {
 		transactionId := {
 			tio := tid,
@@ -2362,15 +2379,9 @@
 	msgs := {
 		gprs_sm := {
 			deactivatePDPContextRequest := {
-				messageType := '00000000'B, /* overwritten */
+				messageType := '01000110'B,
 				smCause := cause,
-				tearDownIndicator := {
-					tearDownIndicatorV := {
-						tdi_flag := bool2bit(tdown),
-						spare := '000'B
-					},
-					elementIdentifier := '1001'B
-				},
+				tearDownIndicator := ts_TearDownIndicatorTV(tdown),
 				protocolConfigOpts := ts_PcoTLV(pco),
 				mBMSprotocolConfigOptions := omit,
 				t3396 := omit,
@@ -2381,10 +2392,11 @@
 	}
 }
 
-template (value) PDU_L3_SGSN_MS ts_SM_DEACT_PDP_REQ_MT(BIT3 tid, OCT1 cause, boolean tdown := false,
+template (value) PDU_L3_SGSN_MS ts_SM_DEACT_PDP_REQ_MT(BIT3 tid, OCT1 cause,
+						  template (omit) boolean tdown := omit,
 						  template (omit) ProtocolConfigOptionsV pco := omit
 						) := {
-	discriminator := '0000'B, /* overwritten */
+	discriminator := '1010'B,
 	tiOrSkip := {
 		transactionId := {
 			tio := tid,
@@ -2395,15 +2407,9 @@
 	msgs := {
 		gprs_sm := {
 			deactivatePDPContextRequest := {
-				messageType := '00000000'B, /* overwritten */
+				messageType := '01000110'B,
 				smCause := cause,
-				tearDownIndicator := {
-					tearDownIndicatorV := {
-						tdi_flag := bool2bit(tdown),
-						spare := '000'B
-					},
-					elementIdentifier := '1001'B
-				},
+				tearDownIndicator := ts_TearDownIndicatorTV(tdown),
 				protocolConfigOpts := ts_PcoTLV(pco),
 				mBMSprotocolConfigOptions := omit,
 				t3396 := omit,
@@ -2415,10 +2421,10 @@
 }
 
 template PDU_L3_SGSN_MS tr_SM_DEACT_PDP_REQ_MT(template BIT3 tid, template OCT1 cause,
-						template boolean tdown := false,
-						  template (omit) ProtocolConfigOptionsV pco := omit
-						) := {
-	discriminator := '0000'B, /* overwritten */
+						template (omit) boolean tdown := omit,
+						template (omit) ProtocolConfigOptionsV pco := omit
+					) := {
+	discriminator := '1010'B,
 	tiOrSkip := {
 		transactionId := {
 			tio := tid,
@@ -2429,16 +2435,10 @@
 	msgs := {
 		gprs_sm := {
 			deactivatePDPContextRequest := {
-				messageType := '00000000'B, /* overwritten */
+				messageType := '01000110'B,
 				smCause := cause,
-				tearDownIndicator := {
-					tearDownIndicatorV := {
-						tdi_flag := bool2bit_tmpl(tdown),
-						spare := '000'B
-					},
-					elementIdentifier := '1001'B
-				},
-				protocolConfigOpts := *,
+				tearDownIndicator := ts_TearDownIndicatorTV(tdown),
+				protocolConfigOpts := ts_PcoTLV(pco),
 				mBMSprotocolConfigOptions := *,
 				t3396 := *,
 				wLANOffloadIndication := *,
@@ -2448,7 +2448,6 @@
 	}
 }
 
-
 template PDU_L3_SGSN_MS tr_SM_DEACT_PDP_ACCEPT_MT(template BIT3 tid := ?)
 := {
 	discriminator := '1010'B,

-- 
To view, visit https://gerrit.osmocom.org/9991
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I006d64f51c17a22a42a225ddfa4119933e48a022
Gerrit-Change-Number: 9991
Gerrit-PatchSet: 1
Gerrit-Owner: Pau Espin Pedrol <pespin at sysmocom.de>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20180713/844a4777/attachment.htm>


More information about the gerrit-log mailing list