sgsn: First PDP CTX ACT test: TC_attach_pdp_act
Change-Id: Ia1bfaca99a2a70bb097e2ee44f54e4a31b849a1b
diff --git a/library/GTP_Templates.ttcn b/library/GTP_Templates.ttcn
index 02a31b6..b64289b 100644
--- a/library/GTP_Templates.ttcn
+++ b/library/GTP_Templates.ttcn
@@ -280,6 +280,71 @@
sgsn_ip_data, msisdn, pco)), seq)
}
+
+ template NSAPI_GTPC ts_NSAPI(BIT4 nsapi) := {
+ type_gtpc := '14'O,
+ nsapi := nsapi,
+ unused := '0000'B
+ }
+
+ template ReorderingRequired ts_ReorderReq(boolean req := false) := {
+ type_gtpc := '08'O,
+ reordreq := bool2bit(req),
+ spare := '0000000'B
+ }
+
+ template GTPC_PDUs ts_CreatePdpRespPDU(OCT1 cause, OCT4 teid_data, OCT4 teid_ctrl, BIT4 nsapi,
+ octetstring ggsn_ip_sign, octetstring ggsn_ip_data,
+ template EndUserAddress eua := omit,
+ template ProtConfigOptions pco := omit) := {
+ createPDPContextResponse := {
+ cause := { '00'O, cause },
+ reorderingRequired := ts_ReorderReq(false),
+ recovery := omit,
+ teidDataI := {
+ type_gtpc := '00'O,
+ teidDataI := teid_data
+ },
+ teidControlPlane := {
+ type_gtpc := '00'O,
+ teidControlPlane := teid_ctrl
+ },
+ nsapi := ts_NSAPI(nsapi),
+ chargingID := omit,
+ endUserAddress := eua,
+ protConfigOptions := pco,
+ ggsn_addr_controlPlane := ts_GsnAddr(ggsn_ip_sign),
+ ggsn_addr_traffic := ts_GsnAddr(ggsn_ip_data),
+ alt_ggsn_addr_controlPane := omit,
+ alt_ggsn_addr_traffic := omit,
+ qualityOfServiceProfile := ts_QosDefault,
+ commonFlags := omit,
+ aPN_Restriction := omit,
+ mS_InfoChangeReportingAction := omit,
+ bearerControlMode := omit,
+ evolvedAllocationRetentionPriorityI := omit,
+ extendedCommonFlag := omit,
+ csg_information_reporting_action := omit,
+ aPN_AMBR := omit,
+ gGSN_BackOffTime := omit,
+ private_extension_gtpc := omit
+ }
+ }
+
+ template Gtp1cUnitdata ts_GTPC_CreatePdpResp(GtpPeer peer, uint16_t seq, OCT4 teid,
+ OCT1 cause,
+ OCT4 teid_ctrl, OCT4 teid_data,
+ BIT4 nsapi, octetstring ggsn_ip_sign,
+ octetstring ggsn_ip_data,
+ template EndUserAddress eua := omit,
+ template ProtConfigOptions pco := omit) := {
+ peer := peer,
+ gtpc := ts_GTP1C_PDU(createPDPContextResponse, teid,
+ valueof(ts_CreatePdpRespPDU(cause, teid_data, teid_ctrl, nsapi,
+ ggsn_ip_sign, ggsn_ip_data,
+ eua, pco)), seq)
+ }
+
/* PCO send base template */
template ProtConfigOptions ts_PCO := {
type_gtpc := '84'O,