From eded9ad5781d36f5198cd02252052384538c6440 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sat, 17 Feb 2018 20:57:34 +0100 Subject: sgsn: First PDP CTX ACT test: TC_attach_pdp_act Change-Id: Ia1bfaca99a2a70bb097e2ee44f54e4a31b849a1b --- library/GSUP_Types.ttcn | 50 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 48 insertions(+), 2 deletions(-) (limited to 'library/GSUP_Types.ttcn') diff --git a/library/GSUP_Types.ttcn b/library/GSUP_Types.ttcn index 0a219992..5e6b20a3 100644 --- a/library/GSUP_Types.ttcn +++ b/library/GSUP_Types.ttcn @@ -105,7 +105,12 @@ type record GSUP_IE { msisdn, tag = OSMO_GSUP_MSISDN_IE; hlr_number, tag = OSMO_GSUP_HLR_NUMBER_IE; cn_domain, tag = OSMO_GSUP_CN_DOMAIN_IE; - charg_char, tag = OSMO_GSUP_CHARG_CHAR_IE)" + pdp_info, tag = OSMO_GSUP_PDP_INFO_IE; + apn, tag = OSMO_GSUP_ACCESS_POINT_NAME_IE; + pdp_qos, tag = OSMO_GSUP_PDP_QOS_IE; + pdp_type, tag = OSMO_GSUP_PDP_TYPE_IE; + charg_char, tag = OSMO_GSUP_CHARG_CHAR_IE; + )" }; type record of GSUP_IE GSUP_IEs; @@ -116,7 +121,6 @@ type union GSUP_IeValue { GSUP_CancelType cancel_type, //boolean pdp_info_compl, //boolean freeze_ptmsi, - GSUP_IEs pdp_info, GSUP_IEs auth_tuple, octetstring auts, octetstring rand, @@ -129,6 +133,11 @@ type union GSUP_IeValue { GSUP_MSISDN msisdn, octetstring hlr_number, GSUP_CnDomain cn_domain, + /* PDP context + nested IEs */ + GSUP_IEs pdp_info, + octetstring apn, + octetstring pdp_qos, + OCT2 pdp_type, octetstring charg_char }; @@ -217,6 +226,35 @@ template GSUP_IE ts_GSUP_IE_AuthTuple2G3G(octetstring rand, octetstring sres, } } +template GSUP_IE ts_GSUP_IE_PdpInfo(octetstring apn, octetstring pdp_type, octetstring pdp_qos) := { + tag := OSMO_GSUP_PDP_INFO_IE, + len := 0, /* overwritten */ + val := { + pdp_info := { + valueof(ts_GSUP_IE_APN(apn)), + valueof(ts_GSUP_IE_PDP_TYPE(pdp_type)), + valueof(ts_GSUP_IE_PDP_QOS(pdp_qos)) + } + } +} + +template (value) GSUP_IE ts_GSUP_IE_PDP_TYPE(OCT2 pdp_type) := { + tag := OSMO_GSUP_PDP_TYPE_IE, + len := 0, + val := { + pdp_type := pdp_type + } +} + +template (value) GSUP_IE ts_GSUP_IE_PDP_QOS(octetstring pdp_qos) := { + tag := OSMO_GSUP_PDP_QOS_IE, + len := 0, + val := { + pdp_qos := pdp_qos + } +} + + template GSUP_PDU tr_GSUP(template GSUP_MessageType msgt := ?, template GSUP_IEs ies := *) := { msg_type := msgt, ies := ies @@ -428,6 +466,14 @@ template (value) GSUP_IE ts_GSUP_IE_RES(octetstring res) := { } } +template (value) GSUP_IE ts_GSUP_IE_APN(octetstring apn) := { + tag := OSMO_GSUP_ACCESS_POINT_NAME_IE, + len := 0, /* overwritten */ + val := { + apn := apn + } +} + } with { encode "RAW"; variant "FIELDORDER(msb)" } -- cgit v1.2.3