gprscdr: Update to 3GPP TS 32.298 V15.7.0
Change-Id: Id67fd508619d63a5c6cbd5857551493b77c41019 Reviewed-on: https://code.wireshark.org/review/33848 Petri-Dish: Anders Broman <a.broman58@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
This commit is contained in:
parent
6726196afd
commit
d560f76401
|
@ -1,5 +1,5 @@
|
|||
--
|
||||
-- 3GPP TS 32.298 v15.5.1 (2018-12-26)
|
||||
-- 3GPP TS 32.298 v15.7.0 (2019-06-12)
|
||||
--
|
||||
GPRSChargingDataTypes {itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) charging (5) gprsChargingDataTypes (2) asn1Module (0) version2 (1)}
|
||||
DEFINITIONS IMPLICIT TAGS ::=
|
||||
|
@ -901,7 +901,8 @@ ChangeCondition ::= ENUMERATED
|
|||
userPlaneToUEChange (18), -- bearer modification. "Change of user plane to UE"
|
||||
servingPLMNRateControlChange (19),
|
||||
-- bearer modification "Serving PLMN Rate Control Change"
|
||||
threeGPPPSDataOffStatusChange (20) -- "Change of 3GPP PS DataO ff Status"
|
||||
threeGPPPSDataOffStatusChange (20), -- "Change of 3GPP PS DataO ff Status"
|
||||
aPNRateControlChange (21) -- bearer modification. "APN Rate ControlChange
|
||||
|
||||
}
|
||||
|
||||
|
@ -913,29 +914,31 @@ ChangeOfCharCondition ::= SEQUENCE
|
|||
-- chargingID used in PGW-CDR only when Charging per IP-CAN session is active
|
||||
-- accessAvailabilityChangeReason and relatedChangeOfCharCondition applicable only in PGW-CDR
|
||||
-- cPCIoTOptimisationIndicator is used in SGW-CDR only
|
||||
-- aPNRateControl is valid for PGW-CDR only
|
||||
--
|
||||
{
|
||||
qosRequested [1] QoSInformation OPTIONAL,
|
||||
qosNegotiated [2] QoSInformation OPTIONAL,
|
||||
dataVolumeGPRSUplink [3] DataVolumeGPRS OPTIONAL,
|
||||
dataVolumeGPRSDownlink [4] DataVolumeGPRS OPTIONAL,
|
||||
changeCondition [5] ChangeCondition,
|
||||
changeTime [6] TimeStamp,
|
||||
userLocationInformation [8] OCTET STRING OPTIONAL,
|
||||
ePCQoSInformation [9] EPCQoSInformation OPTIONAL,
|
||||
chargingID [10] ChargingID OPTIONAL,
|
||||
presenceReportingAreaStatus [11] PresenceReportingAreaStatus OPTIONAL,
|
||||
userCSGInformation [12] UserCSGInformation OPTIONAL,
|
||||
diagnostics [13] Diagnostics OPTIONAL,
|
||||
enhancedDiagnostics [14] EnhancedDiagnostics OPTIONAL,
|
||||
rATType [15] RATType OPTIONAL,
|
||||
accessAvailabilityChangeReason [16] AccessAvailabilityChangeReason OPTIONAL,
|
||||
uWANUserLocationInformation [17] UWANUserLocationInfo OPTIONAL,
|
||||
relatedChangeOfCharCondition [18] RelatedChangeOfCharCondition OPTIONAL,
|
||||
cPCIoTEPSOptimisationIndicator [19] CPCIoTEPSOptimisationIndicator OPTIONAL,
|
||||
servingPLMNRateControl [20] ServingPLMNRateControl OPTIONAL,
|
||||
threeGPPPSDataOffStatus [21] ThreeGPPPSDataOffStatus OPTIONAL,
|
||||
listOfPresenceReportingAreaInformation [22] SEQUENCE OF PresenceReportingAreaInfo OPTIONAL
|
||||
qosRequested [1] QoSInformation OPTIONAL,
|
||||
qosNegotiated [2] QoSInformation OPTIONAL,
|
||||
dataVolumeGPRSUplink [3] DataVolumeGPRS OPTIONAL,
|
||||
dataVolumeGPRSDownlink [4] DataVolumeGPRS OPTIONAL,
|
||||
changeCondition [5] ChangeCondition,
|
||||
changeTime [6] TimeStamp,
|
||||
userLocationInformation [8] OCTET STRING OPTIONAL,
|
||||
ePCQoSInformation [9] EPCQoSInformation OPTIONAL,
|
||||
chargingID [10] ChargingID OPTIONAL,
|
||||
presenceReportingAreaStatus [11] PresenceReportingAreaStatus OPTIONAL,
|
||||
userCSGInformation [12] UserCSGInformation OPTIONAL,
|
||||
diagnostics [13] Diagnostics OPTIONAL,
|
||||
enhancedDiagnostics [14] EnhancedDiagnostics OPTIONAL,
|
||||
rATType [15] RATType OPTIONAL,
|
||||
accessAvailabilityChangeReason [16] AccessAvailabilityChangeReason OPTIONAL,
|
||||
uWANUserLocationInformation [17] UWANUserLocationInfo OPTIONAL,
|
||||
relatedChangeOfCharCondition [18] RelatedChangeOfCharCondition OPTIONAL,
|
||||
cPCIoTEPSOptimisationIndicator [19] CPCIoTEPSOptimisationIndicator OPTIONAL,
|
||||
servingPLMNRateControl [20] ServingPLMNRateControl OPTIONAL,
|
||||
threeGPPPSDataOffStatus [21] ThreeGPPPSDataOffStatus OPTIONAL,
|
||||
listOfPresenceReportingAreaInformation [22] SEQUENCE OF PresenceReportingAreaInfo OPTIONAL,
|
||||
aPNRateControl [23] APNRateControl OPTIONAL
|
||||
|
||||
}
|
||||
|
||||
|
@ -1194,7 +1197,8 @@ PDPPDNTypeExtension ::= INTEGER
|
|||
|
||||
PresenceReportingAreaElementsList ::= OCTET STRING
|
||||
--
|
||||
-- See Presence-Reporting-Area-Elements-List AVP defined in TS 29.212 [220]
|
||||
-- For EPC see Presence-Reporting-Area-Elements-List AVP defined in TS 29.212 [220]
|
||||
-- For 5GC see PresenceInfo defined in TS 29.571 [249] excluding praId and presenceState
|
||||
--
|
||||
|
||||
|
||||
|
@ -1220,7 +1224,8 @@ PresenceReportingAreaStatus ::= ENUMERATED
|
|||
{
|
||||
insideArea (0),
|
||||
outsideArea (1),
|
||||
inactive (2)
|
||||
inactive (2),
|
||||
unknown (3)
|
||||
|
||||
}
|
||||
|
||||
|
@ -1426,8 +1431,8 @@ TrafficSteeringPolicyIDUplink ::= OCTET STRING
|
|||
|
||||
TWANUserLocationInfo ::= SEQUENCE
|
||||
{
|
||||
sSID [0] OCTET STRING, -- see format in IEEE Std 802.11-2012 [408]
|
||||
bSSID [1] OCTET STRING OPTIONAL, -- see format in IEEE Std 802.11-2012 [408]
|
||||
sSID [0] OCTET STRING, -- see format in IEEE Std 802.11-2012 [408]
|
||||
bSSID [1] OCTET STRING OPTIONAL, -- see format in IEEE Std 802.11-2012 [408]
|
||||
civicAddressInformation [2] CivicAddressInformation OPTIONAL,
|
||||
wLANOperatorId [3] WLANOperatorId OPTIONAL,
|
||||
logicalAccessID [4] OCTET STRING OPTIONAL
|
||||
|
@ -1445,10 +1450,10 @@ UserCSGInformation ::= SEQUENCE
|
|||
|
||||
UWANUserLocationInfo ::= SEQUENCE
|
||||
{
|
||||
uELocalIPAddress [0] IPAddress,
|
||||
uDPSourcePort [1] OCTET STRING (SIZE(2)) OPTIONAL,
|
||||
sSID [2] OCTET STRING OPTIONAL, -- see format in IEEE Std 802.11-2012 [408]
|
||||
bSSID [3] OCTET STRING OPTIONAL, -- see format in IEEE Std 802.11-2012 [408]
|
||||
uELocalIPAddress [0] IPAddress,
|
||||
uDPSourcePort [1] OCTET STRING (SIZE(2)) OPTIONAL,
|
||||
sSID [2] OCTET STRING OPTIONAL, -- see format in IEEE Std 802.11-2012 [408]
|
||||
bSSID [3] OCTET STRING OPTIONAL, -- see format in IEEE Std 802.11-2012 [408]
|
||||
tCPSourcePort [4] OCTET STRING (SIZE(2)) OPTIONAL,
|
||||
civicAddressInformation [5] CivicAddressInformation OPTIONAL,
|
||||
wLANOperatorId [6] WLANOperatorId OPTIONAL,
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
-- 3GPP TS 32.298 v15.5.1 (2018-12-26)
|
||||
-- 3GPP TS 32.298 v15.7.0 (2019-06-12)
|
||||
GenericChargingDataTypes {itu-t (0) identified-organization (4) etsi(0) mobileDomain (0) charging (5) genericChargingDataTypes (0) asn1Module (0) version2 (1)}
|
||||
|
||||
DEFINITIONS IMPLICIT TAGS ::=
|
||||
|
|
|
@ -3164,6 +3164,7 @@ static const value_string gprscdr_ChangeCondition_vals[] = {
|
|||
{ 18, "userPlaneToUEChange" },
|
||||
{ 19, "servingPLMNRateControlChange" },
|
||||
{ 20, "threeGPPPSDataOffStatusChange" },
|
||||
{ 21, "aPNRateControlChange" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
|
@ -3247,6 +3248,7 @@ static const value_string gprscdr_PresenceReportingAreaStatus_vals[] = {
|
|||
{ 0, "insideArea" },
|
||||
{ 1, "outsideArea" },
|
||||
{ 2, "inactive" },
|
||||
{ 3, "unknown" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
|
@ -3471,6 +3473,73 @@ dissect_gprscdr_SEQUENCE_OF_PresenceReportingAreaInfo(gboolean implicit_tag _U_,
|
|||
}
|
||||
|
||||
|
||||
static const value_string gprscdr_AdditionalExceptionReports_vals[] = {
|
||||
{ 0, "notAllowed" },
|
||||
{ 1, "allowed" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
|
||||
static int
|
||||
dissect_gprscdr_AdditionalExceptionReports(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
|
||||
NULL);
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
||||
|
||||
static const value_string gprscdr_RateControlTimeUnit_vals[] = {
|
||||
{ 0, "unrestricted" },
|
||||
{ 1, "minute" },
|
||||
{ 2, "hour" },
|
||||
{ 3, "day" },
|
||||
{ 4, "week" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
|
||||
static int
|
||||
dissect_gprscdr_RateControlTimeUnit(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
|
||||
NULL);
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
||||
|
||||
static const ber_sequence_t APNRateControlParameters_sequence[] = {
|
||||
{ &hf_gprscdr_additionalExceptionReports, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_AdditionalExceptionReports },
|
||||
{ &hf_gprscdr_rateControlTimeUnit, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_RateControlTimeUnit },
|
||||
{ &hf_gprscdr_rateControlMaxRate, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_INTEGER },
|
||||
{ &hf_gprscdr_rateControlMaxMessageSize, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_DataVolumeGPRS },
|
||||
{ NULL, 0, 0, 0, NULL }
|
||||
};
|
||||
|
||||
static int
|
||||
dissect_gprscdr_APNRateControlParameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
||||
APNRateControlParameters_sequence, hf_index, ett_gprscdr_APNRateControlParameters);
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
||||
|
||||
static const ber_sequence_t APNRateControl_sequence[] = {
|
||||
{ &hf_gprscdr_aPNRateControlUplink, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_APNRateControlParameters },
|
||||
{ &hf_gprscdr_aPNRateControlDownlink, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_APNRateControlParameters },
|
||||
{ NULL, 0, 0, 0, NULL }
|
||||
};
|
||||
|
||||
static int
|
||||
dissect_gprscdr_APNRateControl(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
||||
APNRateControl_sequence, hf_index, ett_gprscdr_APNRateControl);
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
||||
|
||||
static const ber_sequence_t ChangeOfCharCondition_sequence[] = {
|
||||
{ &hf_gprscdr_qosRequested, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_QoSInformation },
|
||||
{ &hf_gprscdr_qosNegotiated, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_QoSInformation },
|
||||
|
@ -3493,6 +3562,7 @@ static const ber_sequence_t ChangeOfCharCondition_sequence[] = {
|
|||
{ &hf_gprscdr_servingPLMNRateControl, BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_ServingPLMNRateControl },
|
||||
{ &hf_gprscdr_threeGPPPSDataOffStatus, BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_ThreeGPPPSDataOffStatus },
|
||||
{ &hf_gprscdr_listOfPresenceReportingAreaInformation, BER_CLASS_CON, 22, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_SEQUENCE_OF_PresenceReportingAreaInfo },
|
||||
{ &hf_gprscdr_aPNRateControl, BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_APNRateControl },
|
||||
{ NULL, 0, 0, 0, NULL }
|
||||
};
|
||||
|
||||
|
@ -4252,73 +4322,6 @@ dissect_gprscdr_RelatedChangeOfServiceCondition(gboolean implicit_tag _U_, tvbuf
|
|||
}
|
||||
|
||||
|
||||
static const value_string gprscdr_AdditionalExceptionReports_vals[] = {
|
||||
{ 0, "notAllowed" },
|
||||
{ 1, "allowed" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
|
||||
static int
|
||||
dissect_gprscdr_AdditionalExceptionReports(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
|
||||
NULL);
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
||||
|
||||
static const value_string gprscdr_RateControlTimeUnit_vals[] = {
|
||||
{ 0, "unrestricted" },
|
||||
{ 1, "minute" },
|
||||
{ 2, "hour" },
|
||||
{ 3, "day" },
|
||||
{ 4, "week" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
|
||||
static int
|
||||
dissect_gprscdr_RateControlTimeUnit(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
|
||||
NULL);
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
||||
|
||||
static const ber_sequence_t APNRateControlParameters_sequence[] = {
|
||||
{ &hf_gprscdr_additionalExceptionReports, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_AdditionalExceptionReports },
|
||||
{ &hf_gprscdr_rateControlTimeUnit, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_RateControlTimeUnit },
|
||||
{ &hf_gprscdr_rateControlMaxRate, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_INTEGER },
|
||||
{ &hf_gprscdr_rateControlMaxMessageSize, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_DataVolumeGPRS },
|
||||
{ NULL, 0, 0, 0, NULL }
|
||||
};
|
||||
|
||||
static int
|
||||
dissect_gprscdr_APNRateControlParameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
||||
APNRateControlParameters_sequence, hf_index, ett_gprscdr_APNRateControlParameters);
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
||||
|
||||
static const ber_sequence_t APNRateControl_sequence[] = {
|
||||
{ &hf_gprscdr_aPNRateControlUplink, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_APNRateControlParameters },
|
||||
{ &hf_gprscdr_aPNRateControlDownlink, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_APNRateControlParameters },
|
||||
{ NULL, 0, 0, 0, NULL }
|
||||
};
|
||||
|
||||
static int
|
||||
dissect_gprscdr_APNRateControl(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
||||
APNRateControl_sequence, hf_index, ett_gprscdr_APNRateControl);
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
||||
|
||||
|
||||
static int
|
||||
dissect_gprscdr_TrafficSteeringPolicyIDDownlink(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
|
|
Loading…
Reference in New Issue