DIAMETER: Introduce and rework some AVP templates
All the AVP ecosystem in DIAMETER is quite a mess. There's AVPs defined in several different specs, sometimes even with the same name and different AVP code and vendor. Hence, as we add more templates it becomes important to start using the prefix in order to differentiate where they come from. Change-Id: Iec7c51dae136629d6b754de4dd798e988ac51f6b
This commit is contained in:
parent
6be4cf414b
commit
6477d7358a
|
@ -531,7 +531,7 @@ module GGSN_Tests {
|
|||
tr_AVP_Multiple_Services_Credit_Control(content := superset(
|
||||
tr_AVP_Requested_Service_Unit,
|
||||
tr_AVP_Used_Service_Unit,
|
||||
tr_AVP_3GPP_QoS_Information,
|
||||
tr_AVP_PCC_3GPP_QoS_Information,
|
||||
tr_AVP_GI_3GPP_RatType(rat_type)
|
||||
)),
|
||||
tr_AVP_3GPP_ServiceInformation(content := superset(
|
||||
|
@ -578,7 +578,7 @@ module GGSN_Tests {
|
|||
tr_AVP_Requested_Service_Unit,
|
||||
tr_AVP_Used_Service_Unit,
|
||||
/* tr_AVP_3GPP_Reporting_Reason, can be sometimes inside UsedServiceUnit */
|
||||
tr_AVP_3GPP_QoS_Information,
|
||||
tr_AVP_PCC_3GPP_QoS_Information,
|
||||
tr_AVP_GI_3GPP_RatType(rat_type)
|
||||
)),
|
||||
tr_AVP_3GPP_ServiceInformation(content := superset(
|
||||
|
@ -626,7 +626,7 @@ module GGSN_Tests {
|
|||
/* tr_AVP_Requested_Service_Unit, Only in INIT and UPDATE */
|
||||
tr_AVP_Used_Service_Unit,
|
||||
tr_AVP_3GPP_Reporting_Reason(FINAL),
|
||||
tr_AVP_3GPP_QoS_Information,
|
||||
tr_AVP_PCC_3GPP_QoS_Information,
|
||||
tr_AVP_GI_3GPP_RatType(rat_type)
|
||||
)),
|
||||
tr_AVP_3GPP_ServiceInformation(content := superset(
|
||||
|
|
|
@ -860,7 +860,7 @@ template (value) GenericAVP ts_AVP_ServiceSelection(charstring apn) := {
|
|||
}
|
||||
}
|
||||
|
||||
template (present) GenericAVP tr_AVP_3GPP_QoS_Information(template (present) AVP_list list := ?) := {
|
||||
template (present) GenericAVP tr_AVP_PCC_3GPP_QoS_Information(template (present) AVP_list list := ?) := {
|
||||
avp := {
|
||||
avp_header := tr_DIA_Hdr_3GPP(c_AVP_Code_PCC_3GPP_QoS_Information),
|
||||
avp_data := {
|
||||
|
@ -869,11 +869,47 @@ template (present) GenericAVP tr_AVP_3GPP_QoS_Information(template (present) AVP
|
|||
}
|
||||
}
|
||||
|
||||
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_PriorityLevel(uint32_t prio) := {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
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 @@ template (value) GenericAVP ts_AVP_3GPP_EpsSubscrQosProfile(uint32_t qos_class,
|
|||
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)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -361,7 +361,7 @@ runs on PGW_Session_CT return template (present) PDU_DIAMETER
|
|||
tr_AVP_Multiple_Services_Credit_Control(content := superset(
|
||||
tr_AVP_Requested_Service_Unit,
|
||||
tr_AVP_Used_Service_Unit,
|
||||
tr_AVP_3GPP_QoS_Information,
|
||||
tr_AVP_PCC_3GPP_QoS_Information,
|
||||
tr_AVP_GI_3GPP_RatType(rat_type)
|
||||
)),
|
||||
tr_AVP_3GPP_ServiceInformation(content := superset(
|
||||
|
@ -410,7 +410,7 @@ runs on PGW_Session_CT return template (present) PDU_DIAMETER
|
|||
tr_AVP_Requested_Service_Unit,
|
||||
tr_AVP_Used_Service_Unit,
|
||||
/* tr_AVP_3GPP_Reporting_Reason, can be sometimes inside UsedServiceUnit */
|
||||
tr_AVP_3GPP_QoS_Information,
|
||||
tr_AVP_PCC_3GPP_QoS_Information,
|
||||
tr_AVP_GI_3GPP_RatType(rat_type)
|
||||
)),
|
||||
tr_AVP_3GPP_ServiceInformation(content := superset(
|
||||
|
@ -460,7 +460,7 @@ runs on PGW_Session_CT return template (present) PDU_DIAMETER
|
|||
/* tr_AVP_Requested_Service_Unit, Only in INIT and UPDATE */
|
||||
tr_AVP_Used_Service_Unit,
|
||||
tr_AVP_3GPP_Reporting_Reason(FINAL),
|
||||
tr_AVP_3GPP_QoS_Information,
|
||||
tr_AVP_PCC_3GPP_QoS_Information,
|
||||
tr_AVP_GI_3GPP_RatType(rat_type)
|
||||
)),
|
||||
tr_AVP_3GPP_ServiceInformation(content := superset(
|
||||
|
|
Loading…
Reference in New Issue