gprscdr: Update to 3GPP TS 32.298 V15.4.0

Change-Id: I3f374191d6494fd77e3cb81299b8aed1eb926131
Reviewed-on: https://code.wireshark.org/review/30022
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:
Joakim Karlsson 2018-10-05 01:09:38 +08:00 committed by Anders Broman
parent cc9ca52edc
commit d073b210c9
4 changed files with 54 additions and 43 deletions

View File

@ -1,5 +1,5 @@
--
-- 3GPP TS 32.298 v15.3.0 (2018-06-18)
-- 3GPP TS 32.298 v15.4.0 (2018-09-21)
--
GPRSChargingDataTypes {itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) charging (5) gprsChargingDataTypes (2) asn1Module (0) version1 (0)}
DEFINITIONS IMPLICIT TAGS ::=
@ -44,36 +44,36 @@ SmsTpDestinationNumber,
SubscriptionID,
ThreeGPPPSDataOffStatus,
TimeStamp
FROM GenericChargingDataTypes {itu-t (0) identified-organization (4) etsi(0) mobileDomain (0) charging (5) genericChargingDataTypes (0) asn1Module (0) version1 (0)}
FROM GenericChargingDataTypes {itu-t (0) identified-organization (4) etsi(0) mobileDomain (0) charging (5) genericChargingDataTypes (0) asn1Module (0) version2 (1)}
DefaultGPRS-Handling,
DefaultSMS-Handling,
NotificationToMSUser,
ServiceKey
FROM MAP-MS-DataTypes {itu-t identified-organization (4) etsi (0) mobileDomain (0)
gsm-Network (1) modules (3) map-MS-DataTypes (11) version15 (15)}
gsm-Network (1) modules (3) map-MS-DataTypes (11) version18 (18)}
-- from TS 29.002 [214]
IMEI,
IMSI,
ISDN-AddressString,
RAIdentity
FROM MAP-CommonDataTypes {itu-t identified-organization (4) etsi (0) mobileDomain (0)gsm-Network (1) modules (3) map-CommonDataTypes (18) version15 (15)}
FROM MAP-CommonDataTypes {itu-t identified-organization (4) etsi (0) mobileDomain (0)gsm-Network (1) modules (3) map-CommonDataTypes (18) version18 (18)}
-- from TS 29.002 [214]
CallReferenceNumber
FROM MAP-CH-DataTypes {itu-t identified-organization (4) etsi (0) mobileDomain (0)gsm-Network (1) modules (3) map-CH-DataTypes (13) version15 (15)}
FROM MAP-CH-DataTypes {itu-t identified-organization (4) etsi (0) mobileDomain (0)gsm-Network (1) modules (3) map-CH-DataTypes (13) version18 (18)}
-- from TS 29.002 [214]
Ext-GeographicalInformation,
LCSClientType,
LCS-Priority,
LocationType
FROM MAP-LCS-DataTypes {itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3) map-LCS-DataTypes (25) version15 (15) }
FROM MAP-LCS-DataTypes {itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3) map-LCS-DataTypes (25) version18 (18) }
-- from TS 29.002 [214]
LocationMethod
FROM SS-DataTypes {itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Access (2) modules (3) ss-DataTypes (2) version15 (15)}
FROM SS-DataTypes {itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Access (2) modules (3) ss-DataTypes (2) version12 (12)}
-- from TS 24.080 [209]
;
@ -888,7 +888,7 @@ ChangeCondition ::= ENUMERATED
unusabilityOfAccess (16), -- NBIFOM "Unusability of Access"
indirectChangeCondition (17), -- NBIFOM "Indirect Change Condition"
userPlaneToUEChange (18), -- bearer modification. "Change of user plane to UE"
servingPLMNRateControlChange (19) ,
servingPLMNRateControlChange (19),
-- bearer modification "Serving PLMN Rate Control Change"
threeGPPPSDataOffStatusChange (20) -- "Change of 3GPP PS DataO ff Status"
@ -1239,7 +1239,8 @@ RANSecondaryRATUsageReport ::= SEQUENCE
dataVolumeDownlink [2] DataVolumeGPRS,
rANStartTime [3] TimeStamp,
rANEndTime [4] TimeStamp,
secondaryRATType [5] SecondaryRATType OPTIONAL
secondaryRATType [5] SecondaryRATType OPTIONAL,
chargingID [6] ChargingID OPTIONAL
}
@ -1291,9 +1292,8 @@ ResultCode ::= INTEGER
--
SecondaryRATType ::= INTEGER
{
reserved (0),
nR (1) -- New Radio 5G
{
nR (0) -- New Radio 5G
}
ServiceConditionChange ::= BIT STRING

View File

@ -1,4 +1,4 @@
-- 3GPP TS 32.298 v15.3.0 (2018-06-18)
-- 3GPP TS 32.298 v15.4.0 (2018-09-21)
GenericChargingDataTypes {itu-t (0) identified-organization (4) etsi(0) mobileDomain (0) charging (5) genericChargingDataTypes (0) asn1Module (0) version1 (0)}
DEFINITIONS IMPLICIT TAGS ::=
@ -13,12 +13,12 @@ AddressString,
ISDN-AddressString,
LCSClientExternalID,
LCSClientInternalID
FROM MAP-CommonDataTypes { itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3) map-CommonDataTypes (18) version15 (15) }
FROM MAP-CommonDataTypes { itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3) map-CommonDataTypes (18) version18 (18) }
-- from TS 29.002 [214]
PositionMethodFailure-Diagnostic,
UnauthorizedLCSClient-Diagnostic
FROM MAP-ER-DataTypes { itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3) map-ER-DataTypes (17) version15 (15)}
FROM MAP-ER-DataTypes { itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3) map-ER-DataTypes (17) version18 (18)}
-- from TS 29.002 [214]
ObjectInstance
@ -270,6 +270,11 @@ CivicAddressInformation ::= OCTET STRING
-- as defined in subclause 3.1 of IETF RFC 4776 [409] excluding the first 3 octets.
--
DataVolumeOctets ::= INTEGER
--
-- The volume of data transferred in octets.
--
CNIPMulticastDistribution ::= ENUMERATED
{
nO-IP-MULTICAST (0),
@ -651,17 +656,21 @@ aTCFRecord (91),
-- 32.253 [13]
--
cPDTSCERecord (105),
cPDTSNNRecord (106) , --
cPDTSNNRecord (106), --
-- Record values 110 to 111 are SMS specific. The contents are defined in TS
-- 32.274 [34]
--
sCDVTT4Record (110),
sCSMOT4Record (111) ,
sCSMOT4Record (111),
--
-- Record values120 are Exposure Function API specific. The contents are defined in TS
-- Record values 120 are Exposure Function API specific. The contents are defined in TS
-- 32.254 [14]
--
eASCERecord (120)
eASCERecord (120),
--
-- Record values from 200 are specific to Charging Function domain
--
chargingFunctionRecord (200)
--

View File

@ -9,6 +9,7 @@
CalledNumber
CauseForTerm
ChargeIndicator
DataVolumeOctets
MscNo
SystemType
NodeAddress

View File

@ -905,7 +905,7 @@ dissect_gprscdr_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
static int
dissect_gprscdr_T_information(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 45 "./asn1/gprscdr/gprscdr.cnf"
#line 46 "./asn1/gprscdr/gprscdr.cnf"
proto_tree *ext_tree;
ext_tree = proto_tree_add_subtree(tree, tvb, offset, -1, ett_gprscdr_managementextension_information, NULL, "Information");
@ -1451,7 +1451,7 @@ dissect_gprscdr_MSISDN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
static int
dissect_gprscdr_MSTimeZone(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 94 "./asn1/gprscdr/gprscdr.cnf"
#line 95 "./asn1/gprscdr/gprscdr.cnf"
/*
*
* 1.Octet: Time Zone and 2. Octet: Daylight saving time, see TS 29.060 [75]
@ -1613,6 +1613,7 @@ static const value_string gprscdr_RecordType_vals[] = {
{ 110, "sCDVTT4Record" },
{ 111, "sCSMOT4Record" },
{ 120, "eASCERecord" },
{ 200, "chargingFunctionRecord" },
{ 0, NULL }
};
@ -1750,7 +1751,7 @@ dissect_gprscdr_ThreeGPPPSDataOffStatus(gboolean implicit_tag _U_, tvbuff_t *tvb
static int
dissect_gprscdr_TimeStamp(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 55 "./asn1/gprscdr/gprscdr.cnf"
#line 56 "./asn1/gprscdr/gprscdr.cnf"
/*
*
* The contents of this field are a compact form of the UTCTime format
@ -1840,7 +1841,7 @@ dissect_gprscdr_AccessPointNameNI(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
static int
dissect_gprscdr_PDPType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 218 "./asn1/gprscdr/gprscdr.cnf"
#line 219 "./asn1/gprscdr/gprscdr.cnf"
proto_tree *ext_tree_pdp_pdn_type;
guint length;
@ -1896,7 +1897,7 @@ dissect_gprscdr_PDPAddress(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off
static int
dissect_gprscdr_QoSInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 133 "./asn1/gprscdr/gprscdr.cnf"
#line 134 "./asn1/gprscdr/gprscdr.cnf"
/* This octet string is a 1:1 copy of the contents (i.e. starting with octet 4) of the
* Quality of Service (QoS) Profile information element specified in 29.060, ch7.7.34.
@ -1960,7 +1961,7 @@ dissect_gprscdr_FailureHandlingContinue(gboolean implicit_tag _U_, tvbuff_t *tvb
static int
dissect_gprscdr_T_userLocationInformation_04(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 178 "./asn1/gprscdr/gprscdr.cnf"
#line 179 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 1);
@ -2292,7 +2293,7 @@ dissect_gprscdr_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o
static int
dissect_gprscdr_PLMN_Id(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 121 "./asn1/gprscdr/gprscdr.cnf"
#line 122 "./asn1/gprscdr/gprscdr.cnf"
tvbuff_t *parameter_tvb;
proto_tree *subtree;
@ -2315,7 +2316,7 @@ dissect_gprscdr_PLMN_Id(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
static int
dissect_gprscdr_T_userLocationInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 162 "./asn1/gprscdr/gprscdr.cnf"
#line 163 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 1);
@ -2580,7 +2581,7 @@ dissect_gprscdr_PSFurnishChargingInformation(gboolean implicit_tag _U_, tvbuff_t
static int
dissect_gprscdr_T_userLocationInformation_02(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 170 "./asn1/gprscdr/gprscdr.cnf"
#line 171 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 1);
@ -2788,7 +2789,7 @@ dissect_gprscdr_GPRSCallEventRecord(gboolean implicit_tag _U_, tvbuff_t *tvb _U_
static int
dissect_gprscdr_T_userLocationInformation_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 166 "./asn1/gprscdr/gprscdr.cnf"
#line 167 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 1);
@ -2845,7 +2846,7 @@ dissect_gprscdr_GGSNPDPRecordV750(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
static int
dissect_gprscdr_T_userLocationInformation_03(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 174 "./asn1/gprscdr/gprscdr.cnf"
#line 175 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 1);
@ -2967,7 +2968,7 @@ dissect_gprscdr_SEQUENCE_OF_AFRecordInformation(gboolean implicit_tag _U_, tvbuf
static int
dissect_gprscdr_T_userLocationInformation_05(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 182 "./asn1/gprscdr/gprscdr.cnf"
#line 183 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 1);
@ -3165,7 +3166,7 @@ dissect_gprscdr_ChangeCondition(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, in
static int
dissect_gprscdr_T_userLocationInformation_08(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 202 "./asn1/gprscdr/gprscdr.cnf"
#line 203 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 2);
@ -3178,7 +3179,7 @@ dissect_gprscdr_T_userLocationInformation_08(gboolean implicit_tag _U_, tvbuff_t
static int
dissect_gprscdr_T_aRP(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 145 "./asn1/gprscdr/gprscdr.cnf"
#line 146 "./asn1/gprscdr/gprscdr.cnf"
proto_tree *ext_tree_arp;
guint length;
@ -3346,7 +3347,7 @@ dissect_gprscdr_UWANUserLocationInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U
static int
dissect_gprscdr_T_userLocationInformation_10(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 210 "./asn1/gprscdr/gprscdr.cnf"
#line 211 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 2);
@ -3850,7 +3851,7 @@ dissect_gprscdr_GGSNMBMSRecord(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int
static int
dissect_gprscdr_T_userLocationInformation_06(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 186 "./asn1/gprscdr/gprscdr.cnf"
#line 187 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 2);
@ -3911,7 +3912,7 @@ dissect_gprscdr_PresenceReportingAreaInfo(gboolean implicit_tag _U_, tvbuff_t *t
static int
dissect_gprscdr_T_lastUserLocationInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 190 "./asn1/gprscdr/gprscdr.cnf"
#line 191 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 2);
@ -3956,8 +3957,7 @@ dissect_gprscdr_MOExceptionDataCounter(gboolean implicit_tag _U_, tvbuff_t *tvb
static const value_string gprscdr_SecondaryRATType_vals[] = {
{ 0, "reserved" },
{ 1, "nR" },
{ 0, "nR" },
{ 0, NULL }
};
@ -3977,6 +3977,7 @@ static const ber_sequence_t RANSecondaryRATUsageReport_sequence[] = {
{ &hf_gprscdr_rANStartTime, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_gprscdr_TimeStamp },
{ &hf_gprscdr_rANEndTime , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_gprscdr_TimeStamp },
{ &hf_gprscdr_secondaryRATType, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_SecondaryRATType },
{ &hf_gprscdr_chargingID , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprscdr_ChargingID },
{ NULL, 0, 0, 0, NULL }
};
@ -4074,7 +4075,7 @@ dissect_gprscdr_SGWRecord(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs
static int
dissect_gprscdr_T_userLocationInformation_07(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 194 "./asn1/gprscdr/gprscdr.cnf"
#line 195 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 2);
@ -4139,7 +4140,7 @@ dissect_gprscdr_ServiceConditionChange(gboolean implicit_tag _U_, tvbuff_t *tvb
static int
dissect_gprscdr_T_userLocationInformation_09(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 206 "./asn1/gprscdr/gprscdr.cnf"
#line 207 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 2);
@ -4176,7 +4177,7 @@ dissect_gprscdr_ADCRuleBaseName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, in
static int
dissect_gprscdr_T_userLocationInformation_11(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 214 "./asn1/gprscdr/gprscdr.cnf"
#line 215 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 2);
@ -4376,7 +4377,7 @@ dissect_gprscdr_SEQUENCE_OF_ChangeOfServiceCondition(gboolean implicit_tag _U_,
static int
dissect_gprscdr_T_lastUserLocationInformation_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 198 "./asn1/gprscdr/gprscdr.cnf"
#line 199 "./asn1/gprscdr/gprscdr.cnf"
offset = dissect_gprscdr_uli(tvb, actx, tree, 2);
@ -4870,7 +4871,7 @@ static const ber_choice_t GPRSRecord_choice[] = {
int
dissect_gprscdr_GPRSRecord(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 245 "./asn1/gprscdr/gprscdr.cnf"
#line 246 "./asn1/gprscdr/gprscdr.cnf"
proto_item *item;
gint branch_taken, t_offset = offset;
gint32 tag;