pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28219 )
Change subject: DIAMETER: Send QoS AVPs in Gx CCA ......................................................................
DIAMETER: Send QoS AVPs in Gx CCA
This way we can trigger code paths in GGSN/PGW parsing those.
Change-Id: Ib758d4e3acc331954aca6423372410cb1e341ebd --- M library/DIAMETER_Templates.ttcn 1 file changed, 50 insertions(+), 8 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/19/28219/1
diff --git a/library/DIAMETER_Templates.ttcn b/library/DIAMETER_Templates.ttcn index 2bc9e77..03d136c 100644 --- a/library/DIAMETER_Templates.ttcn +++ b/library/DIAMETER_Templates.ttcn @@ -869,11 +869,47 @@ } }
-template (value) GenericAVP ts_AVP_3GPP_QosClassId(uint32_t id) := { +template (value) GenericAVP ts_AVP_PCC_3GPP_QoS_Information(template (value) AVP_list list) := { + avp := { + avp_header := ts_DIA_Hdr_3GPP(c_AVP_Code_PCC_3GPP_QoS_Information), + avp_data := { + avp_PCC_3GPP_QoS_Information := list + } + } +} + +template (value) GenericAVP ts_AVP_PCC_3GPP_APN_Aggregate_Max_Bitrate_DL(uint32_t val) := { + avp := { + avp_header := ts_DIA_Hdr_3GPP(c_AVP_Code_PCC_3GPP_APN_Aggregate_Max_Bitrate_DL), + avp_data := { + avp_PCC_3GPP_APN_Aggregate_Max_Bitrate_DL := int2oct(val, 4) + } + } +} + +template (value) GenericAVP ts_AVP_PCC_3GPP_APN_Aggregate_Max_Bitrate_UL(uint32_t val) := { + avp := { + avp_header := ts_DIA_Hdr_3GPP(c_AVP_Code_PCC_3GPP_APN_Aggregate_Max_Bitrate_UL), + avp_data := { + avp_PCC_3GPP_APN_Aggregate_Max_Bitrate_UL := int2oct(val, 4) + } + } +} + +template (value) GenericAVP ts_AVP_PCC_3GPP_Default_EPS_Bearer_QoS(template (value) AVP_list list) := { + avp := { + avp_header := ts_DIA_Hdr_3GPP(c_AVP_Code_PCC_3GPP_Default_EPS_Bearer_QoS), + avp_data := { + avp_PCC_3GPP_Default_EPS_Bearer_QoS := list + } + } +} + +template (value) GenericAVP ts_AVP_PCC_3GPP_QoS_Class_Identifier(uint32_t val) := { avp := { avp_header := ts_DIA_Hdr_3GPP(c_AVP_Code_PCC_3GPP_QoS_Class_Identifier), avp_data := { - avp_PCC_3GPP_QoS_Class_Identifier := int2oct(id, 4) + avp_PCC_3GPP_QoS_Class_Identifier := int2oct(val, 4) } } } @@ -887,8 +923,7 @@ } }
- -template (value) GenericAVP ts_AVP_3GPP_AllocRetenPrio(uint32_t prio) := { +template (value) GenericAVP ts_AVP_PCC_3GPP_AllocRetenPrio(uint32_t prio) := { avp := { avp_header := ts_DIA_Hdr_3GPP(c_AVP_Code_PCC_3GPP_Allocation_Retention_Priority), avp_data := { @@ -906,8 +941,8 @@ avp_header := ts_DIA_Hdr_3GPP(c_AVP_Code_AAA_3GPP_EPS_Subscribed_QoS_Profile), avp_data := { avp_AAA_3GPP_EPS_Subscribed_QoS_Profile := { - ts_AVP_3GPP_QosClassId(qos_class), - ts_AVP_3GPP_AllocRetenPrio(prio) + ts_AVP_PCC_3GPP_QoS_Class_Identifier(qos_class), + ts_AVP_PCC_3GPP_AllocRetenPrio(prio) } } } @@ -1494,8 +1529,15 @@ ts_AVP_OriginRealm("localdomain"), ts_AVP_AuthAppId(int2oct(c_DIAMETER_3GPP_Gx_AID, 4)), ts_AVP_CcReqType(req_type), - ts_AVP_CcReqNum(req_num)//, - // qos + ts_AVP_CcReqNum(req_num), + ts_AVP_PCC_3GPP_QoS_Information({ + ts_AVP_PCC_3GPP_APN_Aggregate_Max_Bitrate_UL(33554432), + ts_AVP_PCC_3GPP_APN_Aggregate_Max_Bitrate_DL(52428800) + }), + ts_AVP_PCC_3GPP_Default_EPS_Bearer_QoS({ + ts_AVP_PCC_3GPP_QoS_Class_Identifier(9), + ts_AVP_PCC_3GPP_AllocRetenPrio(2) + }) // default eps bearer qos // supported features // origin