ggsn: Introduce test TC_pdp4_act_update_teid/teic
This test validates that changing the local TEID through UpdatePDPContext
is correctly followed by the GGSN.
Change-Id: Ic6af25866bf7efc2cabf029e49abaf15d5857592
diff --git a/library/GTP_Templates.ttcn b/library/GTP_Templates.ttcn
index 0a9c5e9..73d0bf0 100644
--- a/library/GTP_Templates.ttcn
+++ b/library/GTP_Templates.ttcn
@@ -394,6 +394,73 @@
}
+ template GTPC_PDUs ts_UpdatePdpPDU(hexstring imsi, OCT1 restart_ctr, OCT4 teid_data, OCT4 teid_ctrl,
+ BIT4 nsapi,
+ octetstring sgsn_ip_sign, octetstring sgsn_ip_data,
+ template ProtConfigOptions pco := omit,
+ template (omit) OCT1 ratType := omit,
+ template (omit) UserLocationInformation uli := omit) := {
+ updatePDPContextRequest := {
+ updatePDPContextRequestSGSN := {
+ imsi := ts_Imsi(imsi),
+ rai := omit,
+ recovery := ts_Recovery(restart_ctr),
+ teidDataI := {
+ type_gtpc := '00'O,
+ teidDataI := teid_data
+ },
+ teidControlPlane := {
+ type_gtpc := '00'O,
+ teidControlPlane := teid_ctrl
+ },
+ nsapi := {
+ type_gtpc := '00'O,
+ nsapi := nsapi,
+ unused := '0000'B
+ },
+ trace_ref := omit,
+ trace_type := omit,
+ protConfigOptions := pco,
+ sgsn_addr_controlPlane := ts_GsnAddr(sgsn_ip_sign),
+ sgsn_addr_traffic := ts_GsnAddr(sgsn_ip_data),
+ alt_ggsn_addr_controlPane := omit,
+ alt_ggsn_addr_traffic := omit,
+ qualityOfServiceProfile := ts_QosDefault,
+ tft := omit,
+ triggerId := omit,
+ omcId := omit,
+ commonFlags := omit,
+ ratType := f_ts_RATType(ratType),
+ userLocationInformation := uli,
+ mS_TimeZone := omit,
+ additionalTraceInfo := omit,
+ directTunnelFlags := omit,
+ evolvedAllocationRetentionPriorityI := omit,
+ extendedCommonFlags := omit,
+ userCSGInformation := omit,
+ aPN_AMBR := omit,
+ signallingPriorityIndication := omit,
+ cN_OperatorSelectionEntity := omit,
+ private_extension_gtpc := omit
+ }
+ }
+ }
+
+ template Gtp1cUnitdata ts_GTPC_UpdatePDP(GtpPeer peer, OCT4 teid, uint16_t seq, hexstring imsi,
+ OCT1 restart_ctr, OCT4 teid_data,
+ OCT4 teid_ctrl, BIT4 nsapi, octetstring sgsn_ip_sign,
+ octetstring sgsn_ip_data,
+ template ProtConfigOptions pco := omit,
+ template (omit) OCT1 ratType := omit,
+ template (omit) UserLocationInformation uli := omit) := {
+ peer := peer,
+ gtpc := ts_GTP1C_PDU(updatePDPContextRequest, teid,
+ valueof(ts_UpdatePdpPDU(imsi, restart_ctr, teid_data, teid_ctrl,
+ nsapi, sgsn_ip_sign,
+ sgsn_ip_data, pco, ratType, uli)), seq)
+ }
+
+
template NSAPI_GTPC ts_NSAPI(BIT4 nsapi) := {
type_gtpc := '14'O,
nsapi := nsapi,