aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>2005-11-29 17:23:50 +0000
committeretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>2005-11-29 17:23:50 +0000
commit86b093b3b60c0d8c51750a5eae4ce54f1f8dc750 (patch)
tree38af0fb0103ae83df1498b229025daa6a87b8140
parente29068a53e7cd1edbbb7a0bebdbf520b1e4bf05f (diff)
ISUP - Export functions used by INAP and Camel
Gsmmap - Export asn1 structs used by Camel Camel - Use functions from GSMMAp and ISUP INAP - Rewrite of the asn1 code to correspond more to CS1 data types Let ISUP and Q931 dissect apropriate stuff. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@16624 f5534014-38df-0310-8fa8-9805f1628bb7
-rw-r--r--asn1/camel/camel.asn7
-rw-r--r--asn1/camel/camel.cnf61
-rw-r--r--asn1/gsmmap/gsm_map-exp.cnf38
-rw-r--r--asn1/inap/inap.asn2021
-rw-r--r--asn1/inap/inap.cnf114
-rw-r--r--asn1/inap/packet-inap-template.c206
-rw-r--r--epan/dissectors/packet-camel.c2760
-rw-r--r--epan/dissectors/packet-gsm_map.c42
-rw-r--r--epan/dissectors/packet-gsm_map.h21
-rw-r--r--epan/dissectors/packet-inap.c4621
-rw-r--r--epan/dissectors/packet-isup.c13
-rw-r--r--epan/dissectors/packet-isup.h4
12 files changed, 6556 insertions, 3352 deletions
diff --git a/asn1/camel/camel.asn b/asn1/camel/camel.asn
index d75badcb26..05f8e8effa 100644
--- a/asn1/camel/camel.asn
+++ b/asn1/camel/camel.asn
@@ -440,10 +440,11 @@ BCSM-Failure ::= SEQUENCE {
-- locally refd 2 times, import refd 0 times
BearerCapability ::= CHOICE
{
- bearerCap [0]
-
-OCTET STRING (SIZE (2..cAPSpecificBoundSetmaxBearerCapabilityLength ))
+ bearerCap [0] BearerCap
}
+
+BearerCap ::= OCTET STRING (SIZE (2..cAPSpecificBoundSetmaxBearerCapabilityLength ))
+
-- Indicates the type of bearer capability connection to the user. For bearerCap, the ISUP User
-- Service Information, ETSI EN 300 356-1 [23]
-- encoding shall be used.
diff --git a/asn1/camel/camel.cnf b/asn1/camel/camel.cnf
index dd80dca8f1..49aa9122e6 100644
--- a/asn1/camel/camel.cnf
+++ b/asn1/camel/camel.cnf
@@ -216,6 +216,67 @@ tvbuff_t *parameter_tvb;
return 7; /* 7 octets eaten*/
+#.FN_PARS BearerCap
+
+ VAL_PTR = &parameter_tvb
+
+#.FN_BODY BearerCap
+
+ tvbuff_t *parameter_tvb;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+
+ dissect_q931_bearer_capability_ie(parameter_tvb, 0, tvb_length_remaining(parameter_tvb,0), tree);
+
+#.FN_PARS RedirectionInformation
+
+ VAL_PTR = &parameter_tvb
+
+#.FN_BODY RedirectionInformation
+
+ tvbuff_t *parameter_tvb;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+
+ dissect_isup_redirection_information_parameter(parameter_tvb, tree, NULL);
+
+#.FN_PARS OriginalCalledPartyID
+
+ VAL_PTR = &parameter_tvb
+
+#.FN_BODY OriginalCalledPartyID
+
+ tvbuff_t *parameter_tvb;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+ dissect_isup_original_called_number_parameter(parameter_tvb, tree, NULL);
+
+#.FN_PARS RedirectingPartyID
+
+ VAL_PTR = &parameter_tvb
+
+#.FN_BODY RedirectingPartyID
+
+ tvbuff_t *parameter_tvb;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+ dissect_isup_redirecting_number_parameter(parameter_tvb, tree, NULL);
+
+
+#.TYPE_ATTR
+CallingPartysCategory TYPE = FT_UINT16 DISPLAY = BASE_DEC STRINGS = VALS(isup_calling_partys_category_value)
#.END
diff --git a/asn1/gsmmap/gsm_map-exp.cnf b/asn1/gsmmap/gsm_map-exp.cnf
index fd1ca37e31..5b9e21253b 100644
--- a/asn1/gsmmap/gsm_map-exp.cnf
+++ b/asn1/gsmmap/gsm_map-exp.cnf
@@ -1,11 +1,27 @@
#.IMPORT_TAG
+SupportedCamelPhases BER_CLASS_UNI BER_UNI_TAG_BITSTRING
ISDN-AddressString BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
+QoS-Subscribed BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
+Ext-QoS-Subscribed BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
+Ext2-QoS-Subscribed BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
+LSAIdentity BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
SS-Status BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
+CUG-Info BER_CLASS_UNI BER_UNI_TAG_SEQUENCE
CUG-Index BER_CLASS_UNI BER_UNI_TAG_INTEGER
+CUG-Interlock BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
NotificationToMSUser BER_CLASS_UNI BER_UNI_TAG_ENUMERATED
AlertingPattern BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
+IMSI BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
+IMEI BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
LCSClientExternalID BER_CLASS_UNI BER_UNI_TAG_SEQUENCE
LCSServiceTypeID BER_CLASS_UNI BER_UNI_TAG_INTEGER
+CellGlobalIdOrServiceAreaIdFixedLength BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
+LocationInformation BER_CLASS_UNI BER_UNI_TAG_SEQUENCE
+RAIdentity BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
+GeographicalInformation BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
+SubscriberState BER_CLASS_ANY/*choice*/ -1/*choice*/
+GPRSChargingID BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
+UU-Data BER_CLASS_UNI BER_UNI_TAG_SEQUENCE
RegisterSS-Arg BER_CLASS_UNI BER_UNI_TAG_SEQUENCE
SS-Info BER_CLASS_ANY/*choice*/ -1/*choice*/
InterrogateSS-Res BER_CLASS_ANY/*choice*/ -1/*choice*/
@@ -20,9 +36,12 @@ CurrentPassword BER_CLASS_UNI BER_UNI_TAG_NumericString
RegisterCC-EntryRes BER_CLASS_UNI BER_UNI_TAG_SEQUENCE
EraseCC-EntryArg BER_CLASS_UNI BER_UNI_TAG_SEQUENCE
EraseCC-EntryRes BER_CLASS_UNI BER_UNI_TAG_SEQUENCE
+MS-Classmark2 BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
+OfferedCamel4Functionalities BER_CLASS_UNI BER_UNI_TAG_BITSTRING
SS-ForBS-Code BER_CLASS_UNI BER_UNI_TAG_SEQUENCE
CCBS-Feature BER_CLASS_UNI BER_UNI_TAG_SEQUENCE
AgeOfLocationInformation BER_CLASS_UNI BER_UNI_TAG_INTEGER
+Ext-BasicServiceCode BER_CLASS_ANY/*choice*/ -1/*choice*/
AddressString BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
ISDN-SubaddressString BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
GSN-Address BER_CLASS_UNI BER_UNI_TAG_OCTETSTRING
@@ -43,13 +62,29 @@ ExtensionContainer BER_CLASS_UNI BER_UNI_TAG_SEQUENCE
#.END
#.TYPE_ATTR
+SupportedCamelPhases TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
ISDN-AddressString TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
+QoS-Subscribed TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
+Ext-QoS-Subscribed TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
+Ext2-QoS-Subscribed TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
+LSAIdentity TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
SS-Status TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
+CUG-Info TYPE = FT_NONE DISPLAY = BASE_NONE STRINGS = NULL BITMASK = 0
CUG-Index TYPE = FT_UINT32 DISPLAY = BASE_DEC STRINGS = NULL BITMASK = 0
+CUG-Interlock TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
NotificationToMSUser TYPE = FT_UINT32 DISPLAY = BASE_DEC STRINGS = VALS(gsm_map_NotificationToMSUser_vals) BITMASK = 0
AlertingPattern TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
+IMSI TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
+IMEI TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
LCSClientExternalID TYPE = FT_NONE DISPLAY = BASE_NONE STRINGS = NULL BITMASK = 0
LCSServiceTypeID TYPE = FT_UINT32 DISPLAY = BASE_DEC STRINGS = NULL BITMASK = 0
+CellGlobalIdOrServiceAreaIdFixedLength TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
+LocationInformation TYPE = FT_NONE DISPLAY = BASE_NONE STRINGS = NULL BITMASK = 0
+RAIdentity TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
+GeographicalInformation TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
+SubscriberState TYPE = FT_UINT32 DISPLAY = BASE_DEC STRINGS = VALS(gsm_map_SubscriberState_vals) BITMASK = 0
+GPRSChargingID TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
+UU-Data TYPE = FT_NONE DISPLAY = BASE_NONE STRINGS = NULL BITMASK = 0
RegisterSS-Arg TYPE = FT_NONE DISPLAY = BASE_NONE STRINGS = NULL BITMASK = 0
SS-Info TYPE = FT_UINT32 DISPLAY = BASE_DEC STRINGS = VALS(gsm_map_SS_Info_vals) BITMASK = 0
InterrogateSS-Res TYPE = FT_UINT32 DISPLAY = BASE_DEC STRINGS = VALS(gsm_map_InterrogateSS_Res_vals) BITMASK = 0
@@ -64,9 +99,12 @@ CurrentPassword TYPE = FT_STRING DISPLAY = BASE_NONE STRINGS = NULL
RegisterCC-EntryRes TYPE = FT_NONE DISPLAY = BASE_NONE STRINGS = NULL BITMASK = 0
EraseCC-EntryArg TYPE = FT_NONE DISPLAY = BASE_NONE STRINGS = NULL BITMASK = 0
EraseCC-EntryRes TYPE = FT_NONE DISPLAY = BASE_NONE STRINGS = NULL BITMASK = 0
+MS-Classmark2 TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
+OfferedCamel4Functionalities TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
SS-ForBS-Code TYPE = FT_NONE DISPLAY = BASE_NONE STRINGS = NULL BITMASK = 0
CCBS-Feature TYPE = FT_NONE DISPLAY = BASE_NONE STRINGS = NULL BITMASK = 0
AgeOfLocationInformation TYPE = FT_UINT32 DISPLAY = BASE_DEC STRINGS = NULL BITMASK = 0
+Ext-BasicServiceCode TYPE = FT_UINT32 DISPLAY = BASE_DEC STRINGS = VALS(gsm_map_Ext_BasicServiceCode_vals) BITMASK = 0
AddressString TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
ISDN-SubaddressString TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
GSN-Address TYPE = FT_BYTES DISPLAY = BASE_HEX STRINGS = NULL BITMASK = 0
diff --git a/asn1/inap/inap.asn b/asn1/inap/inap.asn
index 8e2e8057d5..824ec3e74a 100644
--- a/asn1/inap/inap.asn
+++ b/asn1/inap/inap.asn
@@ -41,10 +41,7 @@ HoldCallPartyConnectionArg ::= SEQUENCE {
callID [0] CallID OPTIONAL,
legID [1] LegID
}
-LegID ::= CHOICE {
- sendingSideID [0] IMPLICIT OCTET STRING (SIZE (1)),
- receivingSideID [1] IMPLICIT OCTET STRING (SIZE (1))}
--- OPTIONAL denotes network operator specific use.
+
ReconnectArg ::= SEQUENCE {
callID [0] CallID OPTIONAL,
heldLegID [1] LegID
@@ -59,9 +56,7 @@ ReleaseCallPartyConnectionArg ::= SEQUENCE {
CallID ::= INTEGER
-- Indicates an identifier to reference an instance of a Call accessible to the SCF. Refer to
-- 4.2.2.1/Q.1214 for a description of Call Segment.
-Cause ::= OCTET STRING
--- Indicates the cause for interface related information. Refer to the Q.763 Cause parameter
--- for encoding.
+
LegInformation ::= SEQUENCE {
legID [0] LegID,
legStatus [1] LegStatus
@@ -87,69 +82,7 @@ releaseCallPartyConnection ReleaseCallPartyConnection ::= ffs
attach Attach ::= ffs
detach Detach ::= ffs
-VariableParts ::= SEQUENCE SIZE (1..5) OF
- CHOICE {
- integer [0] IMPLICIT INTEGER (0..2147483647),
- number [1] IMPLICIT OCTET STRING ,
- time [2] IMPLICIT OCTET STRING ,
- date [3] IMPLICIT OCTET STRING ,
- price [4] IMPLICIT OCTET STRING }
-
-VariableMessage ::= SEQUENCE {
- elementaryMessageID [0] IMPLICIT INTEGER (0..2147483647),
- variableParts [1] IMPLICIT VariableParts }
-
-TriggerType ::= ENUMERATED {
- featureActivation (0),
- verticalServiceCode (1),
- customizedAccess (2),
- customizedIntercom (3),
- emergencyService (12),
- aFR (13),
- sharedIOTrunk (14),
- offHookDelay (17),
- channelSetupPRI (18),
- tNoAnswer (25),
- tBusy (26),
- oCalledPartyBusy (27),
- oNoAnswer (29),
- originationAttemptAuthorized (30),
- oAnswer (31),
- oDisconnect (32),
- termAttemptAuthorized (33),
- tAnswer (34),
- tDisconnect (35)}
-
-Tone ::= SEQUENCE {
- toneID [0] IMPLICIT INTEGER (0..2147483647),
- tduration [1] IMPLICIT INTEGER (0..2147483647) OPTIONAL}
-Text ::= SEQUENCE {
- messageContent [0] IMPLICIT IA5String ,
- attributes [1] IMPLICIT OCTET STRING OPTIONAL}
-MessageID ::= CHOICE {
- elementaryMessageID [0] IMPLICIT INTEGER (0..2147483647),
- text [1] IMPLICIT Text,
- elementaryMessageIDs [29] IMPLICIT SEQUENCE SIZE (1..10) OF
- INTEGER (0..2147483647),
- variableMessage [30] IMPLICIT VariableMessage}
-
- InformationToSend ::= CHOICE {
- inbandInfo [0] IMPLICIT SEQUENCE {
- messageID [0] MessageID,
- numberOfRepetitions [1] IMPLICIT INTEGER (1..127) OPTIONAL,
- mduration [2] IMPLICIT INTEGER (0..32767) OPTIONAL,
- interval [3] IMPLICIT INTEGER (0..32767) OPTIONAL},
- tone [1] IMPLICIT Tone,
- displayInformation [2] IMPLICIT IA5String }
-FilteringCriteria ::= CHOICE {
- dialledNumber [0] IMPLICIT OCTET STRING ,
- callingLineID [1] IMPLICIT OCTET STRING ,
- serviceKey [2] IMPLICIT INTEGER (0..2147483647),
- addressAndService [30] IMPLICIT SEQUENCE {
- calledAddressValue [0] IMPLICIT OCTET STRING ,
- serviceKey [1] IMPLICIT INTEGER (0..2147483647),
- callingAddressValue [2] IMPLICIT OCTET STRING OPTIONAL,
- locationNumber [3] IMPLICIT OCTET STRING OPTIONAL}}
+
Extensions ::= SEQUENCE SIZE (1..10) OF
SEQUENCE {
type INTEGER,
@@ -157,494 +90,381 @@ Extensions ::= SEQUENCE SIZE (1..10) OF
ignore (0),
abort (1)} DEFAULT ignore ,
value [1] IMPLICIT OCTET STRING }
+
+-- IN-CS-1-Datatypes {itu-t recommendation q 1218 modules(0) cs-1-datatypes(2) version1(0)}
-ActivateServiceFilteringarg ::= SEQUENCE {
- filteredCallTreatment [0] IMPLICIT SEQUENCE {
- sFBillingChargingCharacteristics [0] IMPLICIT OCTET STRING ,
- informationToSend [1] InformationToSend OPTIONAL,
- maximumNumberOfCounters [2] IMPLICIT INTEGER OPTIONAL,
- releaseCause [3] IMPLICIT Cause OPTIONAL},
- filteringCharacteristics [1] CHOICE {
- interval [0] IMPLICIT INTEGER (0..32767),
- numberOfCalls [1] IMPLICIT INTEGER (0..2147483647)},
- filteringTimeOut [2] CHOICE {
- aduration [0] IMPLICIT INTEGER (-2..86400),
- stopTime [1] IMPLICIT OCTET STRING (SIZE (6))},
- filteringCriteria [3] FilteringCriteria,
- startTime [4] IMPLICIT OCTET STRING (SIZE (6)) OPTIONAL,
- extensions [5] IMPLICIT Extensions OPTIONAL}
-
-MiscCallInfo ::= SEQUENCE {
- messageType [0] IMPLICIT ENUMERATED {
- request (0),
- notification (1)},
-
- dpAssignment [1] IMPLICIT ENUMERATED {
- individualLine (0),
- groupBased (1),
- officeBased (2)} OPTIONAL}
-
-ServiceAddressInformation ::= SEQUENCE {
- serviceKey [0] IMPLICIT INTEGER (0..2147483647) OPTIONAL,
- miscCallInfo [1] IMPLICIT MiscCallInfo,
- triggerType [2] IMPLICIT TriggerType OPTIONAL}
-
-TerminalType ::= ENUMERATED {
- unknown (0),
- dialPulse (1),
- dtmf (2),
- isdn (3),
- isdnNoDtmf (4),
- spare (16)}
-RouteList ::= SEQUENCE SIZE (1..3) OF OCTET STRING
-CGEncountered ::= ENUMERATED {
- noCGencountered (0),
- manualCGencountered (1),
- scpOverload (2)}
-BearerCapability ::= CHOICE {
- bearerCap[0] IMPLICIT OCTET STRING,
- tmr [1] IMPLICIT OCTET STRING (SIZE(1))}
-DpSpecificCommonParameters ::= SEQUENCE {
- serviceAddressInformation [0] IMPLICIT ServiceAddressInformation ,
- bearerCapability [1] BearerCapability OPTIONAL,
- calledPartyNumber [2] IMPLICIT OCTET STRING OPTIONAL,
- callingPartyNumber [3] IMPLICIT OCTET STRING OPTIONAL,
- callingPartysCategory [4] IMPLICIT OCTET STRING (SIZE (1)) OPTIONAL,
- iPSSPCapabilities [5] IMPLICIT OCTET STRING OPTIONAL,
- iPAvailable [6] IMPLICIT OCTET STRING OPTIONAL,
- iSDNAccessRelatedInformation [7] IMPLICIT OCTET STRING OPTIONAL,
- cGEncountered [8] IMPLICIT CGEncountered OPTIONAL,
- locationNumber [9] IMPLICIT OCTET STRING OPTIONAL,
- serviceProfileIdentifier [10] IMPLICIT OCTET STRING OPTIONAL,
- terminalType [11] IMPLICIT TerminalType OPTIONAL,
- extensions [12] IMPLICIT Extensions OPTIONAL,
- chargeNumber [13] IMPLICIT OCTET STRING OPTIONAL,
- servingAreaID [14] IMPLICIT OCTET STRING OPTIONAL}
-
-CallingFacilityGroup ::= CHOICE {
- trunkGroupID [0] IMPLICIT INTEGER,
- privateFacilityID [1] IMPLICIT INTEGER,
- huntGroup [2] IMPLICIT OCTET STRING,
- routeIndex [3] IMPLICIT OCTET STRING}
+ActivateServiceFilteringArg ::= SEQUENCE {
+ filteredCallTreatment [0] FilteredCallTreatment,
+ filteringCharacteristics [1] FilteringCharacteristics,
+ filteringTimeOut [2] FilteringTimeOut,
+ filteringCriteria [3] FilteringCriteria,
+ startTime [4] DateAndTime OPTIONAL,
+ extensions [5] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+
AnalysedInformationarg ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- dialledDigits [1] IMPLICIT OCTET STRING OPTIONAL,
- callingPartyBusinessGroupID [2] IMPLICIT OCTET STRING OPTIONAL,
- callingPartySubaddress [3] IMPLICIT OCTET STRING OPTIONAL,
- callingFacilityGroup [4] CallingFacilityGroup OPTIONAL,
- callingFacilityGroupMember [5] IMPLICIT INTEGER OPTIONAL,
- originalCalledPartyID [6] IMPLICIT OCTET STRING OPTIONAL,
- prefix [7] IMPLICIT OCTET STRING OPTIONAL,
- redirectingPartyID [8] IMPLICIT OCTET STRING OPTIONAL,
- redirectionInformation [9] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL,
- routeList [10] IMPLICIT RouteList OPTIONAL,
- travellingClassMark [11] IMPLICIT OCTET STRING OPTIONAL,
- extensions [12] IMPLICIT Extensions OPTIONAL,
- featureCode [13] IMPLICIT OCTET STRING OPTIONAL,
- accessCode [14] IMPLICIT OCTET STRING OPTIONAL,
- carrier [15] IMPLICIT OCTET STRING OPTIONAL}
-DestinationAddress ::= OCTET STRING
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ dialledDigits [1] CalledPartyNumber OPTIONAL,
+ callingPartyBusinessGroupID [2] CallingPartyBusinessGroupID OPTIONAL,
+ callingPartySubaddress [3] CallingPartySubaddress OPTIONAL,
+ callingFacilityGroup [4] FacilityGroup OPTIONAL,
+ callingFacilityGroupMember [5] FacilityGroupMember OPTIONAL,
+ originalCalledPartyID [6] OriginalCalledPartyID OPTIONAL,
+ prefix [7] Digits OPTIONAL,
+ redirectingPartyID [8] RedirectingPartyID OPTIONAL,
+ redirectionInformation [9] RedirectionInformation OPTIONAL,
+ routeList [10] RouteList OPTIONAL,
+ travellingClassMark [11] TravellingClassMark OPTIONAL,
+ extensions [12] IMPLICIT Extensions OPTIONAL,
+ featureCode [13] FeatureCode OPTIONAL,
+ accessCode [14] AccessCode OPTIONAL,
+ carrier [15] Carrier OPTIONAL,
+ ...
+ }
+
AnalyseInformationarg ::= SEQUENCE {
- destinationRoutingAddress [0] IMPLICIT SEQUENCE SIZE (1..3) OF DestinationAddress,
- alertingPattern [1] IMPLICIT OCTET STRING (SIZE (3)) OPTIONAL,
- iSDNAccessRelatedInformation [2] IMPLICIT OCTET STRING OPTIONAL,
- originalCalledPartyID [3] IMPLICIT OCTET STRING OPTIONAL,
- extensions [4] IMPLICIT Extensions OPTIONAL,
- callingPartyNumber [5] IMPLICIT OCTET STRING OPTIONAL,
- callingPartysCategory [6] IMPLICIT OCTET STRING (SIZE (1)) OPTIONAL,
- calledPartyNumber [7] IMPLICIT OCTET STRING OPTIONAL,
- chargeNumber [8] IMPLICIT OCTET STRING OPTIONAL,
- travellingClassMark [9] IMPLICIT OCTET STRING OPTIONAL,
- carrier [10] IMPLICIT OCTET STRING OPTIONAL}
-PartyToCharge ::= CHOICE {
- sendingSideID [0] IMPLICIT OCTET STRING (SIZE (1)),
- receivingSideID [1] IMPLICIT OCTET STRING (SIZE (1))}
-ApplyChargingarg ::= SEQUENCE {
- aChBillingChargingCharacteristics [0] IMPLICIT OCTET STRING ,
- partyToCharge [2] PartyToCharge OPTIONAL,
- extensions [3] IMPLICIT Extensions OPTIONAL}
-
-ApplyChargingReportarg ::= OCTET STRING
-AssistRequestInstructionsarg ::= SEQUENCE {
- correlationID [0] IMPLICIT OCTET STRING ,
- iPAvailable [1] IMPLICIT OCTET STRING OPTIONAL,
- iPSSPCapabilities [2] IMPLICIT OCTET STRING OPTIONAL,
- extensions [3] IMPLICIT Extensions OPTIONAL}
-
-CallGaparg ::= SEQUENCE {
- gapCriteria [0] CHOICE {
- calledAddressValue [0] IMPLICIT OCTET STRING ,
- gapOnService [2] IMPLICIT SEQUENCE {
- serviceKey [0] IMPLICIT INTEGER (0..2147483647),
- dpCriteria [1] IMPLICIT ENUMERATED {
- origAttemptAuthorized (1),
- collectedInfo (2),
- analysedInformation (3),
- routeSelectFailure (4),
- oCalledPartyBusy (5),
- oNoAnswer (6),
- oAnswer (7),
- oMidCall (8),
- oDisconnect (9),
- oAbandon (10),
- termAttemptAuthorized (12),
- tBusy (13),
- tNoAnswer (14),
-
- tAnswer (15),
- tMidCall (16),
- tDisconnect (17),
- tAbandon (18)} OPTIONAL},
- calledAddressAndService [29] IMPLICIT SEQUENCE {
- calledAddressValue [0] IMPLICIT OCTET STRING ,
- serviceKey [1] IMPLICIT INTEGER (0..2147483647)},
- callingAddressAndService [30] IMPLICIT SEQUENCE {
- callingAddressValue [0] IMPLICIT OCTET STRING ,
- serviceKey [1] IMPLICIT INTEGER (0..2147483647),
- locationNumber [2] IMPLICIT OCTET STRING OPTIONAL}},
- gapIndicators [1] IMPLICIT SEQUENCE {
- cgduration [0] IMPLICIT INTEGER (-2..86400),
- gapInterval [1] IMPLICIT INTEGER (-1..60000)},
- controlType [2] IMPLICIT ENUMERATED {
- sCPOverloaded (0),
- manuallyInitiated (1),
- destinationOverload (2)} OPTIONAL,
- gapTreatment [3] CHOICE {
- informationToSend [0] InformationToSend,
- releaseCause [1] IMPLICIT Cause,
- both [2] IMPLICIT Both} OPTIONAL,
- extensions [4] IMPLICIT Extensions OPTIONAL}
-Both ::= SEQUENCE {
- informationToSend [0] InformationToSend,
- releaseCause [1] IMPLICIT Cause}
-CallInformationReportarg ::= SEQUENCE {
- requestedInformationList [0] IMPLICIT SEQUENCE SIZE (1..5) OF
- SEQUENCE {
- requestedInformationType [0] IMPLICIT ENUMERATED {
- callAttemptElapsedTime (0),
- callStopTime (1),
- callConnectedElapsedTime (2),
- calledAddress (3),
- releaseCause (30)},
- requestedInformationValue [1] CHOICE {
- callAttemptElapsedTimeValue [0] IMPLICIT INTEGER (0..255),
- callStopTimeValue [1] IMPLICIT OCTET STRING (SIZE (6)),
- callConnectedElapsedTimeValue [2] IMPLICIT INTEGER (0..2147483647),
- calledAddressValue [3] IMPLICIT OCTET STRING ,
- releaseCauseValue [30] IMPLICIT Cause }},
- correlationID [1] IMPLICIT OCTET STRING OPTIONAL,
- extensions [2] IMPLICIT Extensions OPTIONAL}
-
-CallInformationRequestarg ::= SEQUENCE {
- requestedInformationTypeList [0] IMPLICIT SEQUENCE SIZE (1..5) OF
- ENUMERATED {
- callAttemptElapsedTime (0),
- callStopTime (1),
- callConnectedElapsedTime (2),
- calledAddress (3),
- releaseCause (30)},
- correlationID [1] IMPLICIT OCTET STRING OPTIONAL,
- extensions [2] IMPLICIT Extensions OPTIONAL,
- legID [3] LegID OPTIONAL }
+ destinationRoutingAddress [0] DestinationRoutingAddress,
+ alertingPattern [1] AlertingPattern OPTIONAL,
+ iSDNAccessRelatedInformation [2] ISDNAccessRelatedInformation OPTIONAL,
+ originalCalledPartyID [3] OriginalCalledPartyID OPTIONAL,
+ extensions [4] IMPLICIT Extensions OPTIONAL,
+ callingPartyNumber [5] CallingPartyNumber OPTIONAL,
+ callingPartysCategory [6] CallingPartysCategory OPTIONAL,
+ calledPartyNumber [7] CalledPartyNumber OPTIONAL,
+ chargeNumber [8] ChargeNumber OPTIONAL,
+ travellingClassMark [9] TravellingClassMark OPTIONAL,
+ carrier [10] Carrier OPTIONAL,
+ ...
+ }
+
+ApplyChargingArg ::= SEQUENCE {
+ aChBillingChargingCharacteristics [0] AChBillingChargingCharacteristics,
+ partyToCharge [2] LegID OPTIONAL,
+ extensions [3] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+ApplyChargingReportArg ::=
+ CallResult
+
+AssistRequestInstructionsArg ::= SEQUENCE {
+ correlationID [0] CorrelationID,
+ iPAvailable [1] IPAvailable OPTIONAL,
+ iPSSPCapabilities [2] IPSSPCapabilities OPTIONAL,
+ extensions [3] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+CallGapArg ::= SEQUENCE {
+ gapCriteria [0] GapCriteria,
+ gapIndicators [1] GapIndicators,
+ controlType [2] ControlType OPTIONAL,
+ gapTreatment [3] GapTreatment OPTIONAL,
+ extensions [4] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+CallInformationReportArg ::= SEQUENCE {
+ requestedInformationTypeList [0] RequestedInformationTypeList,
+ correlationID [1] CorrelationID OPTIONAL,
+ extensions [2] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+CallInformationRequestArg ::= SEQUENCE {
+ requestedInformationTypeList [0] RequestedInformationTypeList,
+ correlationID [1] CorrelationID OPTIONAL,
+ extensions [2] IMPLICIT Extensions OPTIONAL,
+ legID [3] LegID OPTIONAL
+ }
-Cancelarg ::= CHOICE {
- invokeID [0] IMPLICIT INTEGER (-128..127),
- allRequests [1] IMPLICIT NULL}
-
-FacilityGroupID ::= CHOICE {
- trunkGroupID [0] IMPLICIT INTEGER,
- privateFacilityID [1] IMPLICIT INTEGER,
- huntGroup [2] IMPLICIT OCTET STRING,
- routeIndex [3] IMPLICIT OCTET STRING}
-
-ResourceID ::= CHOICE {
- lineID [0] IMPLICIT OCTET STRING ,
- facilityGroupID [1] FacilityGroupID,
- facilityGroupMemberID [2] IMPLICIT INTEGER,
- trunkGroupID [3] IMPLICIT INTEGER}
-CancelStatusReportRequestarg ::= SEQUENCE {
+
+CancelArg ::= CHOICE {invokeID [0] InvokeID,
+ allRequests [1] NULL
+}
+
+CancelStatusReportRequestArg ::= SEQUENCE {
resourceID [0] ResourceID OPTIONAL,
- extensions [1] IMPLICIT Extensions OPTIONAL}
-CollectedInformationarg ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- dialledDigits [1] IMPLICIT OCTET STRING OPTIONAL,
- callingPartyBusinessGroupID [2] IMPLICIT OCTET STRING OPTIONAL,
- callingPartySubaddress [3] IMPLICIT OCTET STRING OPTIONAL,
- callingFacilityGroup [4] CallingFacilityGroup OPTIONAL,
- callingFacilityGroupMember [5] IMPLICIT INTEGER OPTIONAL,
- originalCalledPartyID [6] IMPLICIT OCTET STRING OPTIONAL,
- prefix [7] IMPLICIT OCTET STRING OPTIONAL,
- redirectingPartyID [8] IMPLICIT OCTET STRING OPTIONAL,
- redirectionInformation [9] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL,
- travellingClassMark [10] IMPLICIT OCTET STRING OPTIONAL,
- extensions [11] IMPLICIT Extensions OPTIONAL,
- featureCode [12] IMPLICIT OCTET STRING OPTIONAL,
- accessCode [13] IMPLICIT OCTET STRING OPTIONAL,
- carrier [14] IMPLICIT OCTET STRING OPTIONAL}
-CollectInformationarg ::= SEQUENCE {
- alertingPattern [0] IMPLICIT OCTET STRING (SIZE (3)) OPTIONAL,
- numberingPlan [1] IMPLICIT OCTET STRING (SIZE (1)) OPTIONAL,
- originalCalledPartyID [2] IMPLICIT OCTET STRING OPTIONAL,
- travellingClassMark [3] IMPLICIT OCTET STRING OPTIONAL,
- extensions [4] IMPLICIT Extensions OPTIONAL,
- callingPartyNumber [5] IMPLICIT OCTET STRING OPTIONAL,
- dialledDigits [6] IMPLICIT OCTET STRING OPTIONAL}
-Connectarg ::= SEQUENCE {
- destinationRoutingAddress [0] IMPLICIT SEQUENCE SIZE (1..3) OF DestinationAddress ,
- alertingPattern [1] IMPLICIT OCTET STRING (SIZE (3)) OPTIONAL,
- correlationID [2] IMPLICIT OCTET STRING OPTIONAL,
- cutAndPaste [3] IMPLICIT INTEGER (0..22) OPTIONAL,
- forwardingCondition [4] IMPLICIT ENUMERATED {
- busy (0),
- noanswer (1)} OPTIONAL,
- iSDNAccessRelatedInformation [5] IMPLICIT OCTET STRING OPTIONAL,
- originalCalledPartyID [6] IMPLICIT OCTET STRING OPTIONAL,
- routeList [7] IMPLICIT RouteList OPTIONAL,
- scfID [8] IMPLICIT OCTET STRING OPTIONAL,
- travellingClassMark [9] IMPLICIT OCTET STRING OPTIONAL,
- extensions [10] IMPLICIT Extensions OPTIONAL,
- carrier [11] IMPLICIT OCTET STRING OPTIONAL,
- serviceInteractionIndicators [26] IMPLICIT OCTET STRING OPTIONAL,
- callingPartyNumber [27] IMPLICIT OCTET STRING OPTIONAL,
- callingPartysCategory [28] IMPLICIT OCTET STRING (SIZE (1)) OPTIONAL,
- redirectingPartyID [29] IMPLICIT OCTET STRING OPTIONAL,
- redirectionInformation [30] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL}
-
-ConnectToResource ::= SEQUENCE {
- resourceAddress CHOICE {
- ipRoutingAddress [0] IMPLICIT OCTET STRING ,
- legID [1] LegID,
- both [2] IMPLICIT Both,
- none [3] IMPLICIT NULL},
- extensions [4] IMPLICIT Extensions OPTIONAL,
- serviceInteractionIndicators [30] IMPLICIT OCTET STRING OPTIONAL}
-EstablishTemporaryConnection ::= SEQUENCE {
- assistingSSPIPRoutingAddress [0] IMPLICIT OCTET STRING ,
- correlationID [1] IMPLICIT OCTET STRING OPTIONAL,
- legID [2] LegID OPTIONAL,
- scfID [3] IMPLICIT OCTET STRING OPTIONAL,
- extensions [4] IMPLICIT Extensions OPTIONAL,
- carrier [5] IMPLICIT OCTET STRING OPTIONAL,
- serviceInteractionIndicators [30] IMPLICIT OCTET STRING OPTIONAL}
+ extensions [1] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+CollectedInformationArg ::= SEQUENCE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ dialledDigits [1] CalledPartyNumber OPTIONAL,
+ callingPartyBusinessGroupID [2] CallingPartyBusinessGroupID OPTIONAL,
+ callingPartySubaddress [3] CallingPartySubaddress OPTIONAL,
+ callingFacilityGroup [4] FacilityGroup OPTIONAL,
+ callingFacilityGroupMember [5] FacilityGroupMember OPTIONAL,
+ originalCalledPartyID [6] OriginalCalledPartyID OPTIONAL,
+ prefix [7] Digits OPTIONAL,
+ redirectingPartyID [8] RedirectingPartyID OPTIONAL,
+ redirectionInformation [9] RedirectionInformation OPTIONAL,
+ travellingClassMark [10] TravellingClassMark OPTIONAL,
+ extensions [11] IMPLICIT Extensions OPTIONAL,
+ featureCode [12] FeatureCode OPTIONAL,
+ accessCode [13] AccessCode OPTIONAL,
+ carrier [14] Carrier OPTIONAL,
+ ...
+}
+
+CollectInformationArg ::= SEQUENCE {
+ alertingPattern [0] AlertingPattern OPTIONAL,
+ numberingPlan [1] NumberingPlan OPTIONAL,
+ originalCalledPartyID [2] OriginalCalledPartyID OPTIONAL,
+ travellingClassMark [3] TravellingClassMark OPTIONAL,
+ extensions [4] IMPLICIT Extensions OPTIONAL,
+ callingPartyNumber [5] CallingPartyNumber OPTIONAL,
+ dialledDigits [6] CalledPartyNumber OPTIONAL,
+ ...
+ }
+
+
+ConnectArg ::= SEQUENCE {
+ destinationRoutingAddress [0] DestinationRoutingAddress,
+ alertingPattern [1] AlertingPattern OPTIONAL,
+ correlationID [2] CorrelationID OPTIONAL,
+ cutAndPaste [3] CutAndPaste OPTIONAL,
+ forwardingCondition [4] ForwardingCondition OPTIONAL,
+ iSDNAccessRelatedInformation [5] ISDNAccessRelatedInformation OPTIONAL,
+ originalCalledPartyID [6] OriginalCalledPartyID OPTIONAL,
+ routeList [7] RouteList OPTIONAL,
+ scfID [8] ScfID OPTIONAL,
+ travellingClassMark [9] TravellingClassMark OPTIONAL,
+ extensions [10] IMPLICIT Extensions OPTIONAL,
+ carrier [11] Carrier OPTIONAL,
+ serviceInteractionIndicators [26] ServiceInteractionIndicators OPTIONAL,
+ callingPartyNumber [27] CallingPartyNumber OPTIONAL,
+ callingPartysCategory [28] CallingPartysCategory OPTIONAL,
+ redirectingPartyID [29] RedirectingPartyID OPTIONAL,
+ redirectionInformation [30] RedirectionInformation OPTIONAL,
+ ...
+}
+
+ConnectToResourceArg ::= SEQUENCE {
+ resourceAddress
+ CHOICE {ipRoutingAddress [0] IPRoutingAddress,
+ legID [1] LegID,
+ both2
+ [2] SEQUENCE {ipRoutingAddress [0] IPRoutingAddress,
+ legID [1] LegID},
+ none [3] NULL},
+ extensions [4] Extensions,
+ serviceInteractionIndicators [30] ServiceInteractionIndicators OPTIONAL,
+ ...
+}
+
+DpSpecificCommonParameters ::= SEQUENCE {
+ serviceAddressInformation [0] ServiceAddressInformation,
+ bearerCapability [1] BearerCapability OPTIONAL,
+ calledPartyNumber [2] CalledPartyNumber OPTIONAL,
+ callingPartyNumber [3] CallingPartyNumber OPTIONAL,
+ callingPartysCategory [4] CallingPartysCategory OPTIONAL,
+ iPSSPCapabilities [5] IPSSPCapabilities OPTIONAL,
+ iPAvailable [6] IPAvailable OPTIONAL,
+ iSDNAccessRelatedInformation [7] ISDNAccessRelatedInformation OPTIONAL,
+ cGEncountered [8] CGEncountered OPTIONAL,
+ locationNumber [9] LocationNumber OPTIONAL,
+ serviceProfileIdentifier [10] ServiceProfileIdentifier OPTIONAL,
+ terminalType [11] TerminalType OPTIONAL,
+ extensions [12] IMPLICIT Extensions OPTIONAL,
+ chargeNumber [13] ChargeNumber OPTIONAL,
+ servingAreaID [14] ServingAreaID OPTIONAL,
+ ...
+}
+
+EstablishTemporaryConnectionArg ::= SEQUENCE {
+ assistingSSPIPRoutingAddress [0] AssistingSSPIPRoutingAddress,
+ correlationID [1] CorrelationID OPTIONAL,
+ legID [2] LegID OPTIONAL,
+ scfID [3] ScfID OPTIONAL,
+ extensions [4] IMPLICIT Extensions OPTIONAL,
+ carrier [5] Carrier OPTIONAL,
+ serviceInteractionIndicators [30] ServiceInteractionIndicators OPTIONAL,
+ ...
+}
- MonitorMode ::= ENUMERATED {
- interrupted (0),
- notifyAndContinue (1),
- transparent (2)}
+EventNotificationChargingArg ::= SEQUENCE {
+ eventTypeCharging [0] EventTypeCharging,
+ eventSpecificInformationCharging [1] EventSpecificInformationCharging OPTIONAL,
+ legID [2] LegID OPTIONAL,
+ extensions [3] IMPLICIT Extensions OPTIONAL,
+ monitorMode [30] MonitorMode DEFAULT notifyAndContinue,
+ ...
+}
+
+EventReportBCSMArg ::= SEQUENCE {
+ eventTypeBCSM [0] EventTypeBCSM,
+ bcsmEventCorrelationID [1] CorrelationID OPTIONAL,
+ eventSpecificInformationBCSM [2] EventSpecificInformationBCSM OPTIONAL,
+ legID [3] LegID OPTIONAL,
+ miscCallInfo [4] MiscCallInfo DEFAULT {messageType request},
+ extensions [5] IMPLICIT Extensions OPTIONAL
+ }
-EventNotificationChargingarg ::= SEQUENCE {
- eventTypeCharging [0] IMPLICIT OCTET STRING ,
- eventSpecificInformationCharging [1] IMPLICIT OCTET STRING OPTIONAL,
- legID [2] LegID OPTIONAL,
- extensions [3] IMPLICIT Extensions OPTIONAL,
- monitorMode [30] IMPLICIT MonitorMode}
- EventTypeBCSM ::= ENUMERATED {
- origAttemptAuthorized (1),
- collectedInfo (2),
- analysedInformation (3),
- routeSelectFailure (4),
- oCalledPartyBusy (5),
- oNoAnswer (6),
- oAnswer (7),
- oMidCall (8),
- oDisconnect (9),
- oAbandon (10),
- termAttemptAuthorized (12),
- tBusy (13),
- tNoAnswer (14),
- tAnswer (15),
- tMidCall (16),
- tDisconnect (17),
- tAbandon (18)}
-EventReportBCSM ::= SEQUENCE {
- eventTypeBCSM [0] IMPLICIT EventTypeBCSM,
- bcsmEventCorrelationID [1] IMPLICIT OCTET STRING OPTIONAL,
- eventSpecificInformationBCSM [2] CHOICE {
- collectedInfoSpecificInfo [0] IMPLICIT SEQUENCE {
- calledPartynumber [0] IMPLICIT OCTET STRING },
- analyzedInfoSpecificInfo [1] IMPLICIT SEQUENCE {
- calledPartynumber [0] IMPLICIT OCTET STRING },
- routeSelectFailureSpecificInfo [2] IMPLICIT SEQUENCE {
- failureCause [0] IMPLICIT OCTET STRING (SIZE (2..10)) OPTIONAL},
- oCalledPartyBusySpecificInfo [3] IMPLICIT SEQUENCE {
- busyCause [0] IMPLICIT OCTET STRING (SIZE (2..10)) OPTIONAL},
- oNoAnswerSpecificInfo [4] IMPLICIT SEQUENCE {},
- oAnswerSpecificInfo [5] IMPLICIT SEQUENCE {},
- oMidCallSpecificInfo [6] IMPLICIT SEQUENCE {
- connectTime [0] IMPLICIT INTEGER (0..2147483647) OPTIONAL},
- oDisconnectSpecificInfo [7] IMPLICIT SEQUENCE {
- releaseCause [0] IMPLICIT Cause OPTIONAL,
- connectTime [1] IMPLICIT INTEGER (0..2147483647) OPTIONAL},
- tBusySpecificInfo [8] IMPLICIT SEQUENCE {
- busyCause [0] IMPLICIT OCTET STRING (SIZE (2..10)) OPTIONAL},
- tNoAnswerSpecificInfo [9] IMPLICIT SEQUENCE {},
- tAnswerSpecificInfo [10] IMPLICIT SEQUENCE {},
- tMidCallSpecificInfo [11] IMPLICIT SEQUENCE {
- connectTime [0] IMPLICIT INTEGER (0..2147483647) OPTIONAL},
- tDisconnectSpecificInfo [12] IMPLICIT SEQUENCE {
- releaseCause [0] IMPLICIT Cause OPTIONAL,
- connectTime [1] IMPLICIT INTEGER (0..2147483647) OPTIONAL}} OPTIONAL,
-
- legID [3] LegID OPTIONAL,
- miscCallInfo [4] IMPLICIT MiscCallInfo,
- extensions [5] IMPLICIT Extensions OPTIONAL}
-
-FurnishChargingInformationarg ::= OCTET STRING
-HoldCallInNetworkarg ::= CHOICE {
- holdcause [0] IMPLICIT OCTET STRING,
- empty [1] IMPLICIT NULL}
+FurnishChargingInformationArg ::= FCIBillingChargingCharacteristics
+
+HoldCallInNetworkArg ::= CHOICE {
+ holdcause [0] HoldCause,
+ empty [1] NULL
+}
+
InitialDP ::= SEQUENCE {
- serviceKey [0] IMPLICIT INTEGER (0..2147483647) OPTIONAL,
- dialledDigits [1] IMPLICIT OCTET STRING OPTIONAL,
- calledPartyNumber [2] IMPLICIT OCTET STRING OPTIONAL,
- callingPartyNumber [3] IMPLICIT OCTET STRING OPTIONAL,
- callingPartyBusinessGroupID [4] IMPLICIT OCTET STRING OPTIONAL,
- callingPartysCategory [5] IMPLICIT OCTET STRING (SIZE (1)) OPTIONAL,
- callingPartySubaddress [6] IMPLICIT OCTET STRING OPTIONAL,
- cGEncountered [7] IMPLICIT CGEncountered OPTIONAL,
- iPSSPCapabilities [8] IMPLICIT OCTET STRING OPTIONAL,
- iPAvailable [9] IMPLICIT OCTET STRING OPTIONAL,
- locationNumber [10] IMPLICIT OCTET STRING OPTIONAL,
- miscCallInfo [11] IMPLICIT MiscCallInfo OPTIONAL,
- originalCalledPartyID [12] IMPLICIT OCTET STRING OPTIONAL,
- serviceProfileIdentifier [13] IMPLICIT OCTET STRING OPTIONAL,
- terminalType [14] IMPLICIT TerminalType OPTIONAL,
- extensions [15] IMPLICIT Extensions OPTIONAL,
- triggerType [16] IMPLICIT TriggerType OPTIONAL,
- highLayerCompatibility [23] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL,
- serviceInteractionIndicators [24] IMPLICIT OCTET STRING OPTIONAL,
- additionalCallingPartyNumber [25] IMPLICIT OCTET STRING OPTIONAL,
- forwardCallIndicators [26] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL,
- bearerCapability [27] BearerCapability OPTIONAL,
- eventTypeBCSM [28] IMPLICIT EventTypeBCSM OPTIONAL,
- redirectingPartyID [29] IMPLICIT OCTET STRING OPTIONAL,
- redirectionInformation [30] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL}
-
-InitiateCallAttempt ::= SEQUENCE {
- destinationRoutingAddress [0] IMPLICIT SEQUENCE SIZE (1..3) OF DestinationAddress,
- alertingPattern [1] IMPLICIT OCTET STRING (SIZE (3)) OPTIONAL,
- iSDNAccessRelatedInformation [2] IMPLICIT OCTET STRING OPTIONAL,
- travellingClassMark [3] IMPLICIT OCTET STRING OPTIONAL,
- extensions [4] IMPLICIT Extensions OPTIONAL,
- serviceInteractionIndicators [29] IMPLICIT OCTET STRING OPTIONAL,
- callingPartyNumber [30] IMPLICIT OCTET STRING OPTIONAL}
- OAnswer ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- callingPartyBusinessGroupID [1] IMPLICIT OCTET STRING OPTIONAL,
- callingPartySubaddress [2] IMPLICIT OCTET STRING OPTIONAL,
- callingFacilityGroup [3] CallingFacilityGroup OPTIONAL,
- callingFacilityGroupMember [4] IMPLICIT INTEGER OPTIONAL,
- originalCalledPartyID [5] IMPLICIT OCTET STRING OPTIONAL,
- redirectingPartyID [6] IMPLICIT OCTET STRING OPTIONAL,
- redirectionInformation [7] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL,
- routeList [8] IMPLICIT RouteList OPTIONAL,
- travellingClassMark [9] IMPLICIT OCTET STRING OPTIONAL,
- extensions [10] IMPLICIT Extensions OPTIONAL}
-
-OCalledPartyBusy ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- busyCause [1] IMPLICIT OCTET STRING (SIZE (2..10)) OPTIONAL,
- callingPartyBusinessGroupID [2] IMPLICIT OCTET STRING OPTIONAL,
- callingPartySubaddress [3] IMPLICIT OCTET STRING OPTIONAL,
- callingFacilityGroup [4] CallingFacilityGroup OPTIONAL,
- callingFacilityGroupMember [5] IMPLICIT INTEGER OPTIONAL,
- originalCalledPartyID [6] IMPLICIT OCTET STRING OPTIONAL,
- prefix [7] IMPLICIT OCTET STRING OPTIONAL,
- redirectingPartyID [8] IMPLICIT OCTET STRING OPTIONAL,
- redirectionInformation [9] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL,
- routeList [10] IMPLICIT RouteList OPTIONAL,
- travellingClassMark [11] IMPLICIT OCTET STRING OPTIONAL,
- extensions [12] IMPLICIT Extensions OPTIONAL,
- carrier [13] IMPLICIT OCTET STRING OPTIONAL}
-ODisconnect ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- callingPartyBusinessGroupID [1] IMPLICIT OCTET STRING OPTIONAL,
- callingPartySubaddress [2] IMPLICIT OCTET STRING OPTIONAL,
- callingFacilityGroup [3] CallingFacilityGroup OPTIONAL,
- callingFacilityGroupMember [4] IMPLICIT INTEGER OPTIONAL,
- releaseCause [5] IMPLICIT Cause OPTIONAL,
- routeList [6] IMPLICIT RouteList OPTIONAL,
- extensions [7] IMPLICIT Extensions OPTIONAL,
- carrier [8] IMPLICIT OCTET STRING OPTIONAL,
- connectTime [9] IMPLICIT INTEGER (0..2147483647) OPTIONAL}
-
-
- FeatureRequestIndicator ::= ENUMERATED {
- hold (0),
- retrieve (1),
- featureActivation (2),
- spare1 (3),
-
- sparen (127)}
-OMidCall ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- calledPartyBusinessGroupID [1] IMPLICIT OCTET STRING OPTIONAL,
- calledPartySubaddress [2] IMPLICIT OCTET STRING OPTIONAL,
- callingPartyBusinessGroupID [3] IMPLICIT OCTET STRING OPTIONAL,
- callingPartySubaddress [4] IMPLICIT OCTET STRING OPTIONAL,
- featureRequestIndicator [5] IMPLICIT FeatureRequestIndicator OPTIONAL,
- extensions [6] IMPLICIT Extensions OPTIONAL,
- carrier [7] IMPLICIT OCTET STRING OPTIONAL}
+ serviceKey [0] ServiceKey OPTIONAL,
+ dialledDigits [1] CalledPartyNumber OPTIONAL,
+ calledPartyNumber [2] CalledPartyNumber OPTIONAL,
+ callingPartyNumber [3] CallingPartyNumber OPTIONAL,
+ callingPartyBusinessGroupID [4] CallingPartyBusinessGroupID OPTIONAL,
+ callingPartysCategory [5] CallingPartysCategory OPTIONAL,
+ callingPartySubaddress [6] CallingPartySubaddress OPTIONAL,
+ cGEncountered [7] CGEncountered OPTIONAL,
+ iPSSPCapabilities [8] IPSSPCapabilities OPTIONAL,
+ iPAvailable [9] IPAvailable OPTIONAL,
+ locationNumber [10] LocationNumber OPTIONAL,
+ miscCallInfo [11] MiscCallInfo OPTIONAL,
+ originalCalledPartyID [12] OriginalCalledPartyID OPTIONAL,
+ serviceProfileIdentifier [13] ServiceProfileIdentifier OPTIONAL,
+ terminalType [14] TerminalType OPTIONAL,
+ extensions [15] IMPLICIT Extensions OPTIONAL,
+ triggerType [16] TriggerType OPTIONAL,
+ highLayerCompatibility [23] HighLayerCompatibility OPTIONAL,
+ serviceInteractionIndicators [24] ServiceInteractionIndicators OPTIONAL,
+ additionalCallingPartyNumber [25] AdditionalCallingPartyNumber OPTIONAL,
+ forwardCallIndicators [26] ForwardCallIndicators OPTIONAL,
+ bearerCapability [27] BearerCapability OPTIONAL,
+ eventTypeBCSM [28] EventTypeBCSM OPTIONAL,
+ redirectingPartyID [29] RedirectingPartyID OPTIONAL,
+ redirectionInformation [30] RedirectionInformation OPTIONAL,
+ ...
+}
+
+InitiateCallAttemptArg ::= SEQUENCE {
+ destinationRoutingAddress [0] DestinationRoutingAddress,
+ alertingPattern [1] AlertingPattern OPTIONAL,
+ iSDNAccessRelatedInformation [2] ISDNAccessRelatedInformation OPTIONAL,
+ travellingClassMark [3] TravellingClassMark OPTIONAL,
+ extensions [4] IMPLICIT Extensions OPTIONAL,
+ serviceInteractionIndicators [29] ServiceInteractionIndicators OPTIONAL,
+ callingPartyNumber [30] CallingPartyNumber OPTIONAL,
+ ...
+ }
+
+MidCallArg ::= SEQUENCE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ calledPartyBusinessGroupID [1] CalledPartyBusinessGroupID OPTIONAL,
+ calledPartySubaddress [2] CalledPartySubaddress OPTIONAL,
+ callingPartyBusinessGroupID [3] CallingPartyBusinessGroupID OPTIONAL,
+ callingPartySubaddress [4] CallingPartySubaddress OPTIONAL,
+ featureRequestIndicator [5] FeatureRequestIndicator OPTIONAL,
+ extensions [6] IMPLICIT Extensions OPTIONAL,
+ carrier [7] Carrier OPTIONAL,
+ ...
+}
+
+
+OAnswerArg ::= SEQUENCE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ callingPartyBusinessGroupID [1] CallingPartyBusinessGroupID OPTIONAL,
+ callingPartySubaddress [2] CallingPartySubaddress OPTIONAL,
+ callingFacilityGroup [3] FacilityGroup OPTIONAL,
+ callingFacilityGroupMember [4] FacilityGroupMember OPTIONAL,
+ originalCalledPartyID [5] OriginalCalledPartyID OPTIONAL,
+ redirectingPartyID [6] RedirectingPartyID OPTIONAL,
+ redirectionInformation [7] RedirectionInformation OPTIONAL,
+ routeList [8] RouteList OPTIONAL,
+ travellingClassMark [9] TravellingClassMark OPTIONAL,
+ extensions [10] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+OCalledPartyBusyArg ::= SEQUENCE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ busyCause [1] Cause OPTIONAL,
+ callingPartyBusinessGroupID [2] CallingPartyBusinessGroupID OPTIONAL,
+ callingPartySubaddress [3] CallingPartySubaddress OPTIONAL,
+ callingFacilityGroup [4] FacilityGroup OPTIONAL,
+ callingFacilityGroupMember [5] FacilityGroupMember OPTIONAL,
+ originalCalledPartyID [6] OriginalCalledPartyID OPTIONAL,
+ prefix [7] Digits OPTIONAL,
+ redirectingPartyID [8] RedirectingPartyID OPTIONAL,
+ redirectionInformation [9] RedirectionInformation OPTIONAL,
+ routeList [10] RouteList OPTIONAL,
+ travellingClassMark [11] TravellingClassMark OPTIONAL,
+ extensions [12] IMPLICIT Extensions OPTIONAL,
+ carrier [13] Carrier OPTIONAL,
+ ...
+}
+
+
+
+
+ODisconnectArg ::= SEQUENCE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ callingPartyBusinessGroupID [1] CallingPartyBusinessGroupID OPTIONAL,
+ callingPartySubaddress [2] CallingPartySubaddress OPTIONAL,
+ callingFacilityGroup [3] FacilityGroup OPTIONAL,
+ callingFacilityGroupMember [4] FacilityGroupMember OPTIONAL,
+ releaseCause [5] Cause OPTIONAL,
+ routeList [6] RouteList OPTIONAL,
+ extensions [7] IMPLICIT Extensions OPTIONAL,
+ carrier [8] Carrier OPTIONAL,
+ connectTime [9] Integer4 OPTIONAL,
+ ...
+}
+
ONoAnswer ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- callingPartyBusinessGroupID [1] IMPLICIT OCTET STRING OPTIONAL,
- callingPartySubaddress [2] IMPLICIT OCTET STRING OPTIONAL,
- callingFacilityGroup [3] CallingFacilityGroup OPTIONAL,
- callingFacilityGroupMember [4] IMPLICIT INTEGER OPTIONAL,
- originalCalledPartyID [5] IMPLICIT OCTET STRING OPTIONAL,
- prefix [6] IMPLICIT OCTET STRING OPTIONAL,
- redirectingPartyID [7] IMPLICIT OCTET STRING OPTIONAL,
- redirectionInformation [8] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL,
- routeList [9] IMPLICIT RouteList OPTIONAL,
- travellingClassMark [10] IMPLICIT OCTET STRING OPTIONAL,
- extensions [11] IMPLICIT Extensions OPTIONAL,
- carrier [12] IMPLICIT OCTET STRING OPTIONAL}
-OriginationAttemptAuthorized ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- dialledDigits [1] IMPLICIT OCTET STRING OPTIONAL,
- callingPartyBusinessGroupID [2] IMPLICIT OCTET STRING OPTIONAL,
- callingPartySubaddress [3] IMPLICIT OCTET STRING OPTIONAL,
- callingFacilityGroup [4] CallingFacilityGroup OPTIONAL,
- callingFacilityGroupMember [5] IMPLICIT INTEGER OPTIONAL,
- travellingClassMark [6] IMPLICIT OCTET STRING OPTIONAL,
- extensions [7] IMPLICIT Extensions OPTIONAL,
- carrier [8] IMPLICIT OCTET STRING OPTIONAL}
-
-PlayAnnouncement ::= SEQUENCE {
- informationToSend [0] InformationToSend,
- disconnectFromIPForbidden [1] IMPLICIT BOOLEAN DEFAULT TRUE,
- requestAnnouncementComplete [2] IMPLICIT BOOLEAN DEFAULT TRUE,
- extensions [3] IMPLICIT Extensions OPTIONAL}
-PromptAndCollectUserInformationarg ::= SEQUENCE {
- collectedInfo [0] CHOICE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ callingPartyBusinessGroupID [1] CallingPartyBusinessGroupID OPTIONAL,
+ callingPartySubaddress [2] CallingPartySubaddress OPTIONAL,
+ callingFacilityGroup [3] FacilityGroup OPTIONAL,
+ callingFacilityGroupMember [4] FacilityGroupMember OPTIONAL,
+ originalCalledPartyID [5] OriginalCalledPartyID OPTIONAL,
+ prefix [6] Digits OPTIONAL,
+ redirectingPartyID [7] RedirectingPartyID OPTIONAL,
+ redirectionInformation [8] RedirectionInformation OPTIONAL,
+ routeList [9] RouteList OPTIONAL,
+ travellingClassMark [10] TravellingClassMark OPTIONAL,
+ extensions [11] IMPLICIT Extensions OPTIONAL,
+ carrier [12] Carrier OPTIONAL,
+ ...
+}
+
+OriginationAttemptAuthorizedArg ::= SEQUENCE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ dialledDigits [1] CalledPartyNumber OPTIONAL,
+ callingPartyBusinessGroupID [2] CallingPartyBusinessGroupID OPTIONAL,
+ callingPartySubaddress [3] CallingPartySubaddress OPTIONAL,
+ callingFacilityGroup [4] FacilityGroup OPTIONAL,
+ callingFacilityGroupMember [5] FacilityGroupMember OPTIONAL,
+ travellingClassMark [6] TravellingClassMark OPTIONAL,
+ extensions [7] IMPLICIT Extensions OPTIONAL,
+ carrier [8] Carrier OPTIONAL,
+ ...
+}
- collectedDigits [0] IMPLICIT SEQUENCE {
- minimumNbOfDigits [0] IMPLICIT INTEGER (1..127) DEFAULT 1,
- maximumNbOfDigits [1] IMPLICIT INTEGER (1..127),
- endOfReplyDigit [2] IMPLICIT OCTET STRING (SIZE (1..2)) OPTIONAL,
- cancelDigit [3] IMPLICIT OCTET STRING (SIZE (1..2)) OPTIONAL,
- startDigit [4] IMPLICIT OCTET STRING (SIZE (1..2)) OPTIONAL,
- firstDigitTimeOut [5] IMPLICIT INTEGER (1..127) OPTIONAL,
- interDigitTimeOut [6] IMPLICIT INTEGER (1..127) OPTIONAL,
- errorTreatment [7] IMPLICIT ENUMERATED {
- reportErrorToScf (0),
- help (1),
- repeatPrompt (2)} DEFAULT reportErrorToScf ,
- interruptableAnnInd [8] IMPLICIT BOOLEAN DEFAULT TRUE,
- voiceInformation [9] IMPLICIT BOOLEAN DEFAULT FALSE,
- voiceBack [10] IMPLICIT BOOLEAN DEFAULT FALSE},
- iA5Information [1] IMPLICIT BOOLEAN},
- disconnectFromIPForbidden [1] IMPLICIT BOOLEAN DEFAULT TRUE,
- informationToSend [2] InformationToSend OPTIONAL,
- extensions [3] IMPLICIT Extensions OPTIONAL}
-PromptAndCollectUserInformationres ::= CHOICE {
- digitsResponse [0] IMPLICIT OCTET STRING ,
- iA5Response [1] IMPLICIT IA5String }
- ResourceStatus ::= ENUMERATED {
- busy (0),
- idle (1)}
-
-ReleaseCall ::= OCTET STRING (SIZE (2..10))
+PlayAnnouncementArg ::= SEQUENCE {
+ informationToSend [0] InformationToSend,
+ disconnectFromIPForbidden [1] BOOLEAN DEFAULT TRUE,
+ requestAnnouncementComplete [2] BOOLEAN DEFAULT TRUE,
+ extensions [3] IMPLICIT Extensions OPTIONAL
+ }
+
+PromptAndCollectUserInformationArg ::= SEQUENCE {
+ collectedInfo [0] CollectedInfo,
+ disconnectFromIPForbidden [1] BOOLEAN DEFAULT TRUE,
+ informationToSend [2] InformationToSend OPTIONAL,
+ extensions [3] IMPLICIT Extensions OPTIONAL
+ }
+
+ReceivedInformationArg ::= CHOICE {
+ digitsResponse [0] Digits,
+ iA5Response [1] IA5String
+}
+
+
+--ReleaseCallArg ::= Cause
ReleaseCallArg ::= CHOICE {
initialCallSegment Cause ,
@@ -652,177 +472,956 @@ ReleaseCallArg ::= CHOICE {
releaseCause [0] Cause OPTIONAL }
}
-RequestCurrentStatusReportarg ::= CHOICE {
- lineID [0] IMPLICIT OCTET STRING ,
- facilityGroupID [1] FacilityGroupID,
- facilityGroupMemberID [2] IMPLICIT INTEGER,
- trunkGroupID [3] IMPLICIT INTEGER}
-RequestCurrentStatusReportres ::= SEQUENCE {
- resourceStatus [0] IMPLICIT ResourceStatus,
- resourceID [1] ResourceID OPTIONAL,
- extensions [2] IMPLICIT Extensions OPTIONAL}
-RequestEveryStatusChangeReport ::= SEQUENCE {
- resourceID [0] ResourceID,
- correlationID [1] IMPLICIT OCTET STRING OPTIONAL,
- monitorDuration [2] IMPLICIT INTEGER (-2..86400) OPTIONAL,
- extensions [3] IMPLICIT Extensions OPTIONAL}
+RequestCurrentStatusReportArg ::= ResourceID
+
+
+RequestCurrentStatusReportResultArg ::= SEQUENCE {
+ resourceStatus [0] ResourceStatus,
+ resourceID [1] ResourceID OPTIONAL,
+ extensions [2] Extensions,
+ ...
+}
+
+
+RequestEveryStatusChangeReportArg ::= SEQUENCE {
+ resourceID [0] ResourceID,
+ correlationID [1] CorrelationID OPTIONAL,
+ monitorDuration [2] Duration OPTIONAL,
+ extensions [3] IMPLICIT Extensions OPTIONAL
+ }
-RequestFirstStatusMatchReport ::= SEQUENCE {
- resourceID [0] ResourceID OPTIONAL,
- resourceStatus [1] IMPLICIT ResourceStatus OPTIONAL,
- correlationID [2] IMPLICIT OCTET STRING OPTIONAL,
- monitorDuration [3] IMPLICIT INTEGER (-2..86400) OPTIONAL,
- extensions [4] IMPLICIT Extensions OPTIONAL,
- bearerCapability [5] BearerCapability OPTIONAL}
+RequestFirstStatusMatchReportArg ::= SEQUENCE {
+ resourceID [0] ResourceID OPTIONAL,
+ resourceStatus [1] ResourceStatus OPTIONAL,
+ correlationID [2] CorrelationID OPTIONAL,
+ monitorDuration [3] Duration OPTIONAL,
+ extensions [4] IMPLICIT Extensions OPTIONAL,
+ bearerCapability [5] BearerCapability OPTIONAL,
+ ...
+}
+
+
RequestNotificationChargingEvent ::= SEQUENCE SIZE (1..10) OF
SEQUENCE {
- eventTypeCharging [0] IMPLICIT OCTET STRING ,
+ eventTypeCharging2 [0] IMPLICIT OCTET STRING ,
monitorMode [1] IMPLICIT MonitorMode,
legID [2] LegID OPTIONAL}
-RequestReportBCSMEvent ::= SEQUENCE {
- bcsmEvents [0] IMPLICIT SEQUENCE SIZE (1..10) OF
- SEQUENCE {
- eventTypeBCSM [0] IMPLICIT EventTypeBCSM,
- monitorMode [1] IMPLICIT MonitorMode,
- legID [2] LegID OPTIONAL,
- dpSpecificCriteria [30] CHOICE {
- numberOfDigits [0] IMPLICIT INTEGER (1..255),
- applicationTimer [1] IMPLICIT INTEGER (0..2047)} OPTIONAL},
- bcsmEventCorrelationID [1] IMPLICIT OCTET STRING OPTIONAL,
- extensions [2] IMPLICIT Extensions OPTIONAL}
-ResetTimer ::= SEQUENCE {
- timerID [0] IMPLICIT ENUMERATED {
- tssf (0)} DEFAULT tssf ,
- timervalue [1] IMPLICIT INTEGER (0..2147483647),
- extensions [2] IMPLICIT Extensions OPTIONAL}
-
-RouteSelectFailure ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- dialledDigits [1] IMPLICIT OCTET STRING OPTIONAL,
- callingPartyBusinessGroupID [2] IMPLICIT OCTET STRING OPTIONAL,
- callingPartySubaddress [3] IMPLICIT OCTET STRING OPTIONAL,
- callingFacilityGroup [4] CallingFacilityGroup OPTIONAL,
- callingFacilityGroupMember [5] IMPLICIT INTEGER OPTIONAL,
- failureCause [6] IMPLICIT OCTET STRING (SIZE (2..10)) OPTIONAL,
- originalCalledPartyID [7] IMPLICIT OCTET STRING OPTIONAL,
- prefix [8] IMPLICIT OCTET STRING OPTIONAL,
- redirectingPartyID [9] IMPLICIT OCTET STRING OPTIONAL,
- redirectionInformation [10] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL,
- routeList [11] IMPLICIT RouteList OPTIONAL,
- travellingClassMark [12] IMPLICIT OCTET STRING OPTIONAL,
- extensions [13] IMPLICIT Extensions OPTIONAL,
- carrier [14] IMPLICIT OCTET STRING OPTIONAL}
-
-CalledFacilityGroup ::= CHOICE {
- trunkGroupID [0] IMPLICIT INTEGER,
- privateFacilityID [1] IMPLICIT INTEGER,
- huntGroup [2] IMPLICIT OCTET STRING,
- routeIndex [3] IMPLICIT OCTET STRING}
-
-SelectFacility ::= SEQUENCE {
- alertingPattern [0] IMPLICIT OCTET STRING (SIZE (3)) OPTIONAL,
- destinationNumberRoutingAddress [1] IMPLICIT OCTET STRING OPTIONAL,
- iSDNAccessRelatedInformation [2] IMPLICIT OCTET STRING OPTIONAL,
- calledFacilityGroup [3] CalledFacilityGroup OPTIONAL,
- calledFacilityGroupMember [4] IMPLICIT INTEGER OPTIONAL,
- originalCalledPartyID [5] IMPLICIT OCTET STRING OPTIONAL,
- extensions [6] IMPLICIT Extensions OPTIONAL}
-SelectRoute ::= SEQUENCE {
- destinationRoutingAddress [0] IMPLICIT SEQUENCE SIZE (1..3) OF DestinationAddress ,
- alertingPattern [1] IMPLICIT OCTET STRING (SIZE (3)) OPTIONAL,
- correlationID [2] IMPLICIT OCTET STRING OPTIONAL,
- iSDNAccessRelatedInformation [3] IMPLICIT OCTET STRING OPTIONAL,
- originalCalledPartyID [4] IMPLICIT OCTET STRING OPTIONAL,
- routeList [5] IMPLICIT RouteList OPTIONAL,
- scfID [6] IMPLICIT OCTET STRING OPTIONAL,
- travellingClassMark [7] IMPLICIT OCTET STRING OPTIONAL,
- extensions [8] IMPLICIT Extensions OPTIONAL,
- carrier [9] IMPLICIT OCTET STRING OPTIONAL}
-SendChargingInformation ::= SEQUENCE {
- sCIBillingChargingCharacteristics [0] IMPLICIT OCTET STRING ,
- partyToCharge [1] PartyToCharge,
- extensions [2] IMPLICIT Extensions OPTIONAL}
-ServiceFilteringResponse ::= SEQUENCE {
- countersValue [0] IMPLICIT SEQUENCE SIZE (0..100) OF
- SEQUENCE {
- counterID [0] IMPLICIT INTEGER (0..99),
- counterValue [1] IMPLICIT INTEGER (0..2147483647)},
-
- filteringCriteria [1] FilteringCriteria,
- extensions [2] IMPLICIT Extensions OPTIONAL,
- responseCondition [3] IMPLICIT ENUMERATED {
- intermediateResponse (0),
- lastResponse (1)} OPTIONAL}
+
+RequestReportBCSMEventArg ::= SEQUENCE {
+ bcsmEvents [0] SEQUENCE SIZE (1..numOfBCSMEvents) OF BCSMEvent,
+ bcsmEventCorrelationID [1] CorrelationID OPTIONAL,
+ extensions [2] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+ResetTimerArg ::= SEQUENCE {
+ timerID [0] TimerID DEFAULT tssf,
+ timervalue [1] TimerValue,
+ extensions [2] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
-StatusReport ::= SEQUENCE {
- resourceStatus [0] IMPLICIT ResourceStatus OPTIONAL,
- correlationID [1] IMPLICIT OCTET STRING OPTIONAL,
- resourceID [2] ResourceID OPTIONAL,
- extensions [3] IMPLICIT Extensions OPTIONAL,
- reportCondition [4] IMPLICIT ENUMERATED {
- statusReport (0),
- timerExpired (1),
- canceled (2)} OPTIONAL}
+RouteSelectFailureArg ::= SEQUENCE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ dialledDigits [1] CalledPartyNumber OPTIONAL,
+ callingPartyBusinessGroupID [2] CallingPartyBusinessGroupID OPTIONAL,
+ callingPartySubaddress [3] CallingPartySubaddress OPTIONAL,
+ callingFacilityGroup [4] FacilityGroup OPTIONAL,
+ callingFacilityGroupMember [5] FacilityGroupMember OPTIONAL,
+ failureCause [6] Cause OPTIONAL,
+ originalCalledPartyID [7] OriginalCalledPartyID OPTIONAL,
+ prefix [8] Digits OPTIONAL,
+ redirectingPartyID [9] RedirectingPartyID OPTIONAL,
+ redirectionInformation [10] RedirectionInformation OPTIONAL,
+ routeList [11] RouteList OPTIONAL,
+ travellingClassMark [12] TravellingClassMark OPTIONAL,
+ extensions [13] IMPLICIT Extensions OPTIONAL,
+ carrier [14] Carrier OPTIONAL,
+ ...
+}
+
+SelectFacilityArg ::= SEQUENCE {
+ alertingPattern [0] AlertingPattern OPTIONAL,
+ destinationNumberRoutingAddress [1] CalledPartyNumber OPTIONAL,
+ iSDNAccessRelatedInformation [2] ISDNAccessRelatedInformation OPTIONAL,
+ calledFacilityGroup [3] FacilityGroup OPTIONAL,
+ calledFacilityGroupMember [4] FacilityGroupMember OPTIONAL,
+ originalCalledPartyID [5] OriginalCalledPartyID OPTIONAL,
+ extensions [6] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+SelectRouteArg ::= SEQUENCE {
+ destinationRoutingAddress [0] DestinationRoutingAddress,
+ alertingPattern [1] AlertingPattern OPTIONAL,
+ correlationID [2] CorrelationID OPTIONAL,
+ iSDNAccessRelatedInformation [3] ISDNAccessRelatedInformation OPTIONAL,
+ originalCalledPartyID [4] OriginalCalledPartyID OPTIONAL,
+ routeList [5] RouteList OPTIONAL,
+ scfID [6] ScfID OPTIONAL,
+ travellingClassMark [7] TravellingClassMark OPTIONAL,
+ extensions [8] IMPLICIT Extensions OPTIONAL,
+ carrier [9] Carrier OPTIONAL,
+ ...
+}
+
+
+SendChargingInformationArg ::= SEQUENCE {
+ sCIBillingChargingCharacteristics [0] SCIBillingChargingCharacteristics,
+ partyToCharge [1] LegID,
+ extensions [2] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+
+ServiceFilteringResponseArg ::= SEQUENCE {
+ countersValue [0] CountersValue,
+ filteringCriteria [1] FilteringCriteria,
+ extensions [2] IMPLICIT Extensions OPTIONAL,
+ responseCondition [3] ResponseCondition OPTIONAL,
+ ...
+}
+SpecializedResourceReportArg ::= NULL
+
+StatusReportArg ::= SEQUENCE {
+ resourceStatus [0] ResourceStatus OPTIONAL,
+ correlationID [1] CorrelationID OPTIONAL,
+ resourceID [2] ResourceID OPTIONAL,
+ extensions [3] IMPLICIT Extensions OPTIONAL,
+ reportCondition [4] ReportCondition OPTIONAL,
+ ...
+}
-TAnswer ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- calledPartyBusinessGroupID [1] IMPLICIT OCTET STRING OPTIONAL,
- calledPartySubaddress [2] IMPLICIT OCTET STRING OPTIONAL,
- calledFacilityGroup [3] CalledFacilityGroup OPTIONAL,
- calledFacilityGroupMember [4] IMPLICIT INTEGER OPTIONAL,
- extensions [5] IMPLICIT Extensions OPTIONAL}
+TAnswerArg ::= SEQUENCE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ calledPartyBusinessGroupID [1] CalledPartyBusinessGroupID OPTIONAL,
+ calledPartySubaddress [2] CalledPartySubaddress OPTIONAL,
+ calledFacilityGroup [3] FacilityGroup OPTIONAL,
+ calledFacilityGroupMember [4] FacilityGroupMember OPTIONAL,
+ extensions [5] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
-TBusy ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- busyCause [1] IMPLICIT OCTET STRING (SIZE (2..10)) OPTIONAL,
- calledPartyBusinessGroupID [2] IMPLICIT OCTET STRING OPTIONAL,
- calledPartySubaddress [3] IMPLICIT OCTET STRING OPTIONAL,
- originalCalledPartyID [4] IMPLICIT OCTET STRING OPTIONAL,
- redirectingPartyID [5] IMPLICIT OCTET STRING OPTIONAL,
- redirectionInformation [6] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL,
- routeList [7] IMPLICIT RouteList OPTIONAL,
- travellingClassMark [8] IMPLICIT OCTET STRING OPTIONAL,
- extensions [9] IMPLICIT Extensions OPTIONAL}
-TDisconnect ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- calledPartyBusinessGroupID [1] IMPLICIT OCTET STRING OPTIONAL,
- calledPartySubaddress [2] IMPLICIT OCTET STRING OPTIONAL,
- calledFacilityGroup [3] CalledFacilityGroup OPTIONAL,
- calledFacilityGroupMember [4] IMPLICIT INTEGER OPTIONAL,
- releaseCause [5] IMPLICIT Cause OPTIONAL,
- extensions [6] IMPLICIT Extensions OPTIONAL,
- connectTime [7] IMPLICIT INTEGER (0..2147483647) OPTIONAL}
-TermAttemptAuthorized ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- calledPartyBusinessGroupID [1] IMPLICIT OCTET STRING OPTIONAL,
- calledPartySubaddress [2] IMPLICIT OCTET STRING OPTIONAL,
- callingPartyBusinessGroupID [3] IMPLICIT OCTET STRING OPTIONAL,
- originalCalledPartyID [4] IMPLICIT OCTET STRING OPTIONAL,
- redirectingPartyID [5] IMPLICIT OCTET STRING OPTIONAL,
- redirectionInformation [6] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL,
- routeList [7] IMPLICIT RouteList OPTIONAL,
- travellingClassMark [8] IMPLICIT OCTET STRING OPTIONAL,
- extensions [9] IMPLICIT Extensions OPTIONAL}
-TMidCall ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- calledPartyBusinessGroupID [1] IMPLICIT OCTET STRING OPTIONAL,
- calledPartySubaddress [2] IMPLICIT OCTET STRING OPTIONAL,
- callingPartyBusinessGroupID [3] IMPLICIT OCTET STRING OPTIONAL,
- callingPartySubaddress [4] IMPLICIT OCTET STRING OPTIONAL,
- featureRequestIndicator [5] IMPLICIT FeatureRequestIndicator OPTIONAL,
- extensions [6] IMPLICIT Extensions OPTIONAL,
- carrier [7] IMPLICIT OCTET STRING OPTIONAL}
-TNoAnswer ::= SEQUENCE {
- dpSpecificCommonParameters [0] IMPLICIT DpSpecificCommonParameters,
- calledPartyBusinessGroupID [1] IMPLICIT OCTET STRING OPTIONAL,
- calledPartySubaddress [2] IMPLICIT OCTET STRING OPTIONAL,
- calledFacilityGroup [3] CalledFacilityGroup OPTIONAL,
- calledFacilityGroupMember [4] IMPLICIT INTEGER OPTIONAL,
- originalCalledPartyID [5] IMPLICIT OCTET STRING OPTIONAL,
- redirectingPartyID [6] IMPLICIT OCTET STRING OPTIONAL,
- redirectionInformation [7] IMPLICIT OCTET STRING (SIZE (2)) OPTIONAL,
- travellingClassMark [8] IMPLICIT OCTET STRING OPTIONAL,
- extensions [9] IMPLICIT Extensions OPTIONAL}
+TTBusyArg ::= SEQUENCE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ busyCause [1] Cause OPTIONAL,
+ calledPartyBusinessGroupID [2] CalledPartyBusinessGroupID OPTIONAL,
+ calledPartySubaddress [3] CalledPartySubaddress OPTIONAL,
+ originalCalledPartyID [4] OriginalCalledPartyID OPTIONAL,
+ redirectingPartyID [5] RedirectingPartyID OPTIONAL,
+ redirectionInformation [6] RedirectionInformation OPTIONAL,
+ routeList [7] RouteList OPTIONAL,
+ travellingClassMark [8] TravellingClassMark OPTIONAL,
+ extensions [9] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+TDisconnectArg ::= SEQUENCE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ calledPartyBusinessGroupID [1] CalledPartyBusinessGroupID OPTIONAL,
+ calledPartySubaddress [2] CalledPartySubaddress OPTIONAL,
+ calledFacilityGroup [3] FacilityGroup OPTIONAL,
+ calledFacilityGroupMember [4] FacilityGroupMember OPTIONAL,
+ releaseCause [5] Cause OPTIONAL,
+ extensions [6] IMPLICIT Extensions OPTIONAL,
+ connectTime [7] Integer4 OPTIONAL,
+ ...
+}
+
+TermAttemptAuthorizedArg ::= SEQUENCE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ calledPartyBusinessGroupID [1] CalledPartyBusinessGroupID OPTIONAL,
+ calledPartySubaddress [2] CalledPartySubaddress OPTIONAL,
+ callingPartyBusinessGroupID [3] CallingPartyBusinessGroupID OPTIONAL,
+ originalCalledPartyID [4] OriginalCalledPartyID OPTIONAL,
+ redirectingPartyID [5] RedirectingPartyID OPTIONAL,
+ redirectionInformation [6] RedirectionInformation OPTIONAL,
+ routeList [7] RouteList OPTIONAL,
+ travellingClassMark [8] TravellingClassMark OPTIONAL,
+ extensions [9] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+TNoAnswerArg ::= SEQUENCE {
+ dpSpecificCommonParameters [0] DpSpecificCommonParameters,
+ calledPartyBusinessGroupID [1] CalledPartyBusinessGroupID OPTIONAL,
+ calledPartySubaddress [2] CalledPartySubaddress OPTIONAL,
+ calledFacilityGroup [3] FacilityGroup OPTIONAL,
+ calledFacilityGroupMember [4] FacilityGroupMember OPTIONAL,
+ originalCalledPartyID [5] OriginalCalledPartyID OPTIONAL,
+ redirectingPartyID [6] RedirectingPartyID OPTIONAL,
+ redirectionInformation [7] RedirectionInformation OPTIONAL,
+ travellingClassMark [8] TravellingClassMark OPTIONAL,
+ extensions [9] IMPLICIT Extensions OPTIONAL,
+ ...
+ }
+
+-- The Definition of Common Data Types
+AccessCode ::= LocationNumber
+
+-- An access code from a business group dialling plan attendant access codes, access codes to escape
+-- to the public network, access code to access a private facility/network, and feature access codes.
+-- Uses the LocationNumber format which is based on the Q.763 Location Number format.
+-- The Nature of Address indicator field shall be set to "Spare" (value 00000000).
+-- The Numbering Plan Indicator field shall be set to "Spare" (value 000).
+-- Of local significance.
+
+AChBillingChargingCharacteristics ::=
+ OCTET STRING(SIZE (minAChBillingChargingLength..maxAChBillingChargingLength))
+
+-- The AChBillingChargingCharacteristics parameter specifies the charging related information
+-- to be provided by the SSF and the conditions on which this information has to be reported
+-- back to the SCF with the ApplyChargingReport operation.
+-- Examples of charging related information to be provided by the SSF may be: bulk counter
+-- values, costs, tariff change and time of charge, time stamps, durations, etc.
+-- Examples of conditions on which the charging related information are to be reported may be:
+-- threshold value reached, timer expiration, tariff change, end of connection configuration, etc.
+AdditionalCallingPartyNumber ::=
+ Digits
+
+-- Indicates the Additional Calling Party Number. Refer to Recommendation Q.763 for encoding.
+AlertingPattern ::= OCTET STRING(SIZE (3))
+
+-- Indicates a specific pattern that is used to alert a subscriber (e.g. distinctive ringing, tones, etc.).
+-- Only applies if SSF is the terminating local exchange for the subscriber. Refer to the Q.931
+-- Signal parameter for encoding.
+ApplicationTimer ::= INTEGER(0..2047)
+
+-- Used by the SCF to set a timer in the SSF. The timer is in seconds.
+AssistingSSPIPRoutingAddress ::=
+ Digits
+
+-- Indicates the destination address of the SRF for the assist procedure.
+
+BCSMEvent ::= SEQUENCE {
+ eventTypeBCSM [0] EventTypeBCSM,
+ monitorMode [1] MonitorMode,
+ legID [2] LegID OPTIONAL,
+ dpSpecificCriteria [30] DpSpecificCriteria OPTIONAL
+}
+
+BearerCapability ::= CHOICE {
+ bearerCap [0] IMPLICIT BearerCap,
+ tmr [1] IMPLICIT OCTET STRING (SIZE(1))}
+
+BearerCap ::= OCTET STRING
+-- Indicates the type of bearer capability connection to the user. For bearerCapability, either
+-- DSS 1 (Q.931) or the ISUP User Service Information (Q.763) encoding can be used. Refer
+-- to the Q.763 Transmission Medium Requirement parameter for tmr encoding.
+
+-- Indicates the type of bearer capability connection to the user. For bearerCapability, either
+-- DSS 1 (Q.931) or the ISUP User Service Information (Q.763) encoding can be used. Refer
+-- to the Q.763 Transmission Medium Requirement parameter for tmr encoding.
+CalledPartyBusinessGroupID ::= OCTET STRING
+
+-- Indicates the business group of the called party. The value of this octet string is network
+-- operator specific.
+CalledPartyNumber ::=
+ OCTET STRING(SIZE (minCalledPartyNumberLength..maxCalledPartyNumberLength))
+
+-- Indicates the Called Party Number. Refer to Recommendation Q.763 for encoding.
+CalledPartySubaddress ::= OCTET STRING
+
+-- Indicates the Called Party Subaddress. Refer to Recommendation Q.931 for encoding.
+CallingPartyBusinessGroupID ::= OCTET STRING
+
+-- Indicates the business group of the calling party. The value of this octet string is network
+-- operator specific.
+CallingPartyNumber ::=
+ OCTET STRING(SIZE (minCallingPartyNumberLength..maxCallingPartyNumberLength))
+
+-- Indicates the Calling Party Number. Refer to Recommendation Q.763 for encoding.
+CallingPartySubaddress ::= OCTET STRING
+
+-- Indicates the Calling Party Subaddress. Refer to Recommendation Q.931 for encoding.
+CallingPartysCategory ::= OCTET STRING(SIZE (1))
+
+-- Indicates the type of calling party (e.g. operator, payphone, ordinary subscriber).
+-- Refer to Recommendation Q.763 for encoding.
+CallResult ::= OCTET STRING(SIZE (minCallResultLength..maxCallResultLength))
+
+-- This parameter provides the SCF with the charging related information previously requested
+-- using the ApplyCharging operation. This shall include the partyToCharge parameter as
+-- received in the related ApplyCharging operation to correlate the result to the request.
+-- The remaining content is network operator specific.
+-- Examples of charging related information to be provided by the SSF may be: bulk counter values,
+-- costs, tariff change and time of change, time stamps, durations, etc.
+-- Examples of conditions on which the charging related information are to be reported may be:
+-- threshold value reached, timer expiration, tariff change, end of connection configuration, etc.
+Carrier ::= OCTET STRING
+
+-- Contains the carrier selection and carrier ID fields.
+-- Carrier selection is one octet and is encoded as:
+-- 00000000 No indication
+-- 00000001 Selected carrier code pre subscribed and not input by calling party
+-- 00000010 Selected carrier identification code pre subscribed and input by calling party
+-- 00000011 Selected carrier identification code pre subscribed, no indication of whether input by calling party
+-- 00000100 Selected carrier identification code not pre subscribed and input by calling party
+-- 00000101
+-- to Spare
+-- 11111110
+-- 11111111 Reserved
+--
+-- Carrier ID has a one octet field indicating the number of digits followed by the digits encoded using BCD.
+-- Detailed coding is for further study. It is of local significance and carrying it through the ISUP is for further
+-- study.
+
+Cause ::= OCTET STRING
+-- Indicates the cause for interface related information. Refer to the Q.763 Cause parameter
+-- for encoding.
+
+CGEncountered ::= ENUMERATED {
+ noCGencountered(0), manualCGencountered(1), scpOverload(2)}
+
+-- Indicates the type of automatic call gapping encountered, if any.
+ChargeNumber ::=
+ LocationNumber
+
+-- Information sent in either direction indicating the chargeable number for the call and consisting
+-- of the odd/even indicator, nature of address indicator, numbering plan indicator, and address signals.
+-- Uses the LocationNumber format which is based on the Q.763 Location Number format.
+-- For example, the ChargeNumber may be a third party number to which a call is billed for the 3rd party
+-- billing service. In this case, the calling party may request operator assistance to charge the call to,
+-- for example, their home number.
+ChargingEvent ::= SEQUENCE {
+ eventTypeCharging [0] EventTypeCharging,
+ monitorMode [1] MonitorMode,
+ legID [2] LegID OPTIONAL
+}
+
+-- This parameter indicates the charging event type and corresponding
+-- monitor mode and LedID.
+
+CollectedDigits ::= SEQUENCE {
+ minimumNbOfDigits [0] INTEGER(1..127) DEFAULT 1,
+ maximumNbOfDigits [1] INTEGER(1..127),
+ endOfReplyDigit [2] OCTET STRING(SIZE (1..2)) OPTIONAL,
+ cancelDigit [3] OCTET STRING(SIZE (1..2)) OPTIONAL,
+ startDigit [4] OCTET STRING(SIZE (1..2)) OPTIONAL,
+ firstDigitTimeOut [5] INTEGER(1..127) OPTIONAL,
+ interDigitTimeOut [6] INTEGER(1..127) OPTIONAL,
+ errorTreatment [7] ErrorTreatment DEFAULT reportErrorToScf,
+ interruptableAnnInd [8] BOOLEAN DEFAULT TRUE,
+ voiceInformation [9] BOOLEAN DEFAULT FALSE,
+ voiceBack [10] BOOLEAN DEFAULT FALSE
+}
+
+-- The use of voiceBack is network operator specific.
+-- The endOfReplyDigit, cancelDigit, and startDigit parameters have been designated as OCTET STRING,
+-- and are to be encoded as BCD, one digit per octet only, contained
+-- in the four least significant bits of each OCTET. The usage is service dependent.
+CollectedInfo ::= CHOICE {
+ collectedDigits [0] CollectedDigits,
+ iA5Information [1] BOOLEAN
+}
+
+ControlType ::= ENUMERATED {
+ sCPOverloaded(0), manuallyInitiated(1), destinationOverload(2)
+ -- other values FFS
+ }
+
+CorrelationID ::= Digits
+
+-- used by SCF for correlation with a previous operation. Refer to clause 3 for a description of the
+-- procedures associated with this parameter.
+CounterAndValue ::= SEQUENCE {
+ counterID [0] CounterID,
+ counterValue [1] Integer4
+}
+
+CounterID ::= INTEGER(0..99)
+
+-- Indicates the counters to be incremented.
+-- The counterIDs can be addressed by using the last digits of the dialled number.
+CountersValue ::= SEQUENCE SIZE (0..numOfCounters) OF CounterAndValue
+
+CutAndPaste ::= INTEGER(0..22)
+
+-- Indicates the number of digits to be deleted. Refer to 6.4.2.16/Q.1214 for additional information.
+
+DateAndTime ::= OCTET STRING(SIZE (6))
+
+-- Indicates, amongst others, the start time for activate service filtering. Coded as YYMMDDHHMMSS
+-- with each digit coded BCD.
+-- The first octet contains YY and the remaining items are sequenced following.
+-- For example, 1993 September 30th, 12:15:01 would be encoded as:
+-- Bits HGFE DCBA
+-- leading octet 3 9
+-- 9 0
+-- 0 3
+-- 2 1
+-- 5 1
+-- 1 0
+DestinationRoutingAddress ::= SEQUENCE SIZE (1..3) OF CalledPartyNumber
+
+-- Indicates the list of Called Party Numbers (primary and alternates).
+Digits ::= OCTET STRING(SIZE (minDigitsLength..maxDigitsLength))
+
+-- Indicates the address signalling digits. Refer to the Q.763 Generic Number and Generic Digits parameters
+-- for encoding. The coding of the subfields 'NumberQualifier' in Generic Number and 'TypeOfDigits' in
+-- Generic Digits are irrelevant to the INAP, the ASN.1 tags are sufficient to identify the parameter.
+-- The ISUP format does not allow to exclude these subfields, therefore the value is network operator specific.
+-- The following parameters should use Generic Number:
+-- CorrelationID for AssistRequestInstructions, AssistingSSPIPRoutingAddress for
+-- EstablishTemporaryConnection, calledAddressValue for all occurrences, callingAddressValue for all
+-- occurrences. The following parameters should use Generic Digits: prefix, all
+-- other CorrelationID occurrences, dialledNumber filtering criteria, callingLineID filtering criteria, lineID
+-- for ResourceID type, digitResponse for ReceivedInformationArg.
+DisplayInformation ::=
+ IA5String(SIZE (minDisplayInformationLength..maxDisplayInformationLength))
+
+-- Indicates the display information.
+DpSpecificCriteria ::= CHOICE {
+ numberOfDigits [0] NumberOfDigits,
+ applicationTimer [1] ApplicationTimer
+}
+
+-- The SCF may specify the number of digits to be collected by the SSF for the CollectedInfo event.
+-- When all digits are collected, the SSF reports the event to the SCF.
+-- The SCF may set a timer in the SSF for the No Answer event. If the user does not answer the call
+-- within the allotted time, the SSF reports the event to the SCF.
+Duration ::= INTEGER(-2..86400)
+
+-- Values are seconds.
+ErrorTreatment ::= ENUMERATED {reportErrorToScf(0), help(1), repeatPrompt(2)
+}
+
+-- reportErrorToScf means returning the "ImproperCallerResponse" error in the event of an error
+-- condition during collection of user info.
+EventSpecificInformationBCSM ::= CHOICE {
+ collectedInfoSpecificInfo
+ [0] SEQUENCE {calledPartynumber [0] CalledPartyNumber,
+ ...},
+ analyzedInfoSpecificInfo
+ [1] SEQUENCE {calledPartynumber [0] CalledPartyNumber,
+ ...},
+ routeSelectFailureSpecificInfo
+ [2] SEQUENCE {failureCause [0] Cause OPTIONAL,
+ ...},
+ oCalledPartyBusySpecificInfo
+ [3] SEQUENCE {busyCause [0] Cause OPTIONAL,
+ ...},
+ oNoAnswerSpecificInfo
+ [4] SEQUENCE {-- no specific info defined
+ ...},
+ oAnswerSpecificInfo
+ [5] SEQUENCE {-- no specific info defined
+ ...},
+ oMidCallSpecificInfo
+ [6] SEQUENCE {connectTime [0] Integer4 OPTIONAL,
+ ...},
+ oDisconnectSpecificInfo
+ [7] SEQUENCE {releaseCause [0] Cause OPTIONAL,
+ connectTime [1] Integer4 OPTIONAL,
+ ...},
+ tBusySpecificInfo
+ [8] SEQUENCE {busyCause [0] Cause OPTIONAL,
+ ...},
+ tNoAnswerSpecificInfo
+ [9] SEQUENCE {-- no specific info defined
+ ...},
+ tAnswerSpecificInfo
+ [10] SEQUENCE {-- no specific info defined
+ ...},
+ tMidCallSpecificInfo
+ [11] SEQUENCE {connectTime [0] Integer4 OPTIONAL,
+ ...},
+ tDisconnectSpecificInfo
+ [12] SEQUENCE {releaseCause [0] Cause OPTIONAL,
+ connectTime [1] Integer4 OPTIONAL,
+ ...}
+}
+
+-- Indicates the call related information specific to the event.
+-- The connectTime indicates the duration between the received answer indication from the called party side
+-- and the release of the connection for ODisconnect, OException, TDisconnect, or TException events.
+-- The unit for the connectTime is 100 milliseconds.
+EventSpecificInformationCharging ::=
+ OCTET STRING
+ (SIZE (minEventSpecificInformationChargingLength..
+ maxEventSpecificInformationChargingLength))
+
+-- defined by network operator.
+-- Indicates the charging related information specific to the event.
+-- An example data type definition for this parameter is given below:
+-- chargePulses [0] Integer4,
+-- chargeMessages [1] OCTET STRING (SIZE (min..max))
+EventTypeBCSM ::= ENUMERATED {
+ origAttemptAuthorized(1), collectedInfo(2), analysedInformation(3),
+ routeSelectFailure(4), oCalledPartyBusy(5), oNoAnswer(6), oAnswer(7),
+ oMidCall(8), oDisconnect(9), oAbandon(10), termAttemptAuthorized(12),
+ tBusy(13), tNoAnswer(14), tAnswer(15), tMidCall(16), tDisconnect(17),
+ tAbandon(18)}
+
+-- Indicates the BCSM detection point event. Refer to 4.2.2.2/Q.1214 for additional information on the
+-- events. Values origAttemptAuthorized and termAttemptAuthorized can only be used for TDPs.
+EventTypeCharging ::=
+ OCTET STRING(SIZE (minEventTypeChargingLength..maxEventTypeChargingLength))
+
+-- This parameter indicates the charging event type. Its content is network operator specific.
+--
+-- An example data type definition for this parameter is given below:
+-- EventTypeCharging ::= ENUMERATED {
+-- chargePulses (0),
+-- chargeMessages (1)
+-- }
+
+
+FacilityGroup ::= CHOICE {
+ trunkGroupID [0] INTEGER,
+ privateFacilityID [1] INTEGER,
+ huntGroup [2] OCTET STRING,
+ routeIndex [3] OCTET STRING
+}
+
+-- Indicates the particular group of facilities to route the call. huntGroup and routeIndex are encoded as
+-- network operator specific.
+
+FacilityGroupMember ::= INTEGER
+
+-- Indicates the specific member of a trunk group or multi-line hunt group.
+FCIBillingChargingCharacteristics ::=
+ OCTET STRING(SIZE (minFCIBillingChargingLength..maxFCIBillingChargingLength))
+
+-- This parameter indicates the billing and/or charging characteristics. Its content is network operator
+-- specific. An example datatype definition for this parameter is given below:
+-- FCIBillingChargingCharacteristics ::= CHOICE {
+-- completeChargingrecord [0] OCTET STRING (SIZE (min..max)),
+-- correlationID [1] CorrelationID,
+-- scenario2Dot3 [2] SEQUENCE {
+-- chargeParty [0] LegID OPTIONAL,
+-- chargeLevel [1] OCTET STRING (SIZE (min..max))
+-- OPTIONAL,
+-- chargeItems [2] SET OF Attribute OPTIONAL
+-- }
+-- }
+-- Depending on the applied charging scenario, the following information elements can be included
+-- (refer to Q.1214 Appendix II):
+-- complete charging record (scenario 2.2)
+-- charge party (scenario 2.3)
+-- charge level (scenario 2.3)
+-- charge items (scenario 2.3)
+-- correlationID (scenario 2.4)
+FeatureCode ::=
+ LocationNumber
+
+-- The two-digit feature code preceded by "*" or "11".
+-- Uses the LocationNumber format which is based on the Q.763 Location Number format.
+-- The Nature of Address indicator field shall be set to "Spare" (value 00000000).
+-- The Numbering Plan Indicator field shall be set to "Spare" (value 000).
+-- Used for stimulus signalling (Q.932).
+FeatureRequestIndicator ::= ENUMERATED {
+ hold(0), retrieve(1), featureActivation(2), spare1(3), sparen(127)}
+
+-- Indicates the feature activated (e.g. a switch-hook flash, feature activation). Spare values reserved
+-- for future use.
+FilteredCallTreatment ::= SEQUENCE {
+ sFBillingChargingCharacteristics [0] SFBillingChargingCharacteristics,
+ informationToSend [1] InformationToSend OPTIONAL,
+ maximumNumberOfCounters [2] MaximumNumberOfCounters OPTIONAL,
+ releaseCause [3] Cause OPTIONAL
+}
+
+-- If releaseCause is not present, the default value is the same as the ISUP cause value decimal 31.
+-- If informationToSend is present, the call will be released after the end of the announcement
+-- with the indicated or default releaseCause.
+-- If maximumNumberOfCounters is not present, ServiceFilteringResponse will be sent with
+-- CountersValue::= SEQUENCE SIZE (0) OF CountersAndValue.
+FilteringCharacteristics ::= CHOICE {
+ interval1 [0] INTEGER(-1..32000),
+ numberOfCalls [1] Integer4
+}
+
+-- Indicates the severity of the filtering and the point in time when the ServiceFilteringResponse is to be sent.
+-- If = interval, every interval of time the next call leads to an InitialDP and a ServiceFilteringResponse is
+-- sent to the SCF. The interval is specified in seconds.
+-- If = NumberOfCalls, every N calls the Nth call leads to an InitialDP and a ServiceFilteringResponse
+-- is sent to the SCF.
+-- If ActivateServiceFiltering implies several counters - filtering on several dialled numbers -,
+-- the numberOfCalls would include calls to all the dialled numbers.
+FilteringCriteria ::= CHOICE {
+ dialledNumber [0] Digits,
+ callingLineID [1] Digits,
+ serviceKey [2] ServiceKey,
+ addressAndService
+ [30] SEQUENCE {calledAddressValue [0] Digits,
+ serviceKey [1] ServiceKey,
+ callingAddressValue [2] Digits OPTIONAL,
+ locationNumber [3] LocationNumber OPTIONAL
+ }
+}
+
+-- In case calledAddressValue is specified, the numbers to be filtered are from calledAddressValue
+-- up to and including calledAddressValue + maximumNumberOfCounters-1.
+-- The last two digits of calledAddressvalue can not exceed 100-maximumNumberOfCounters.
+FilteringTimeOut ::= CHOICE {
+ duration [0] Duration,
+ stopTime [1] DateAndTime
+}
+
+-- Indicates the maximum duration of the filtering. When the timer expires, a ServiceFilteringResponse
+-- is sent to the SCF.
+ForwardCallIndicators ::= OCTET STRING(SIZE (2))
+
+-- Indicates the Forward Call Indicators. Refer to Recommendation Q.763 for encoding.
+ForwardingCondition ::= ENUMERATED {busy(0), noanswer(1), any(2)}
+
+-- Indicates the condition that must be met to complete the connect.
+
+
+GapCriteria ::= CHOICE {
+ calledAddressValue [0] Digits,
+ gapOnService [2] GapOnService,
+ calledAddressAndService
+ [29] SEQUENCE {calledAddressValue [0] Digits,
+ serviceKey [1] ServiceKey},
+ callingAddressAndService
+ [30] SEQUENCE {callingAddressValue [0] Digits,
+ serviceKey [1] ServiceKey,
+ locationNumber [2] LocationNumber OPTIONAL
+ }
+}
+
+-- Both calledAddressValue and callingAddressValue can be
+-- incomplete numbers, in the sense that a limited amount of digits can be given.
+--
+-- For the handling of numbers starting with the same digit string, refer to the detailed procedure
+-- of the CallGap operation in 3.3.
+GapOnService ::= SEQUENCE {
+ serviceKey [0] ServiceKey,
+ dpCriteria [1] EventTypeBCSM OPTIONAL
+}
+
+--Recommendation Q.1218 (10/95)
+GapIndicators ::= SEQUENCE {
+ duration [0] Duration,
+ gapInterval [1] Interval
+}
+
+-- Indicates the gapping characteristics. No gapping when gapInterval equals 0, and gap all calls when
+-- gapInterval equals 1.
+GapTreatment ::= CHOICE {
+ informationToSend [0] InformationToSend,
+ releaseCause [1] Cause,
+ both
+ [2] SEQUENCE {informationToSend [0] InformationToSend,
+ releaseCause [1] Cause}
+}
+
+-- The default value for Cause is the same as in ISUP.
+HighLayerCompatibility ::= OCTET STRING(SIZE (highLayerCompatibilityLength))
+
+-- Indicates the teleservice. For encoding, DSS 1 (Q.931) is used.
+HoldCause ::= OCTET STRING -- defined by network operator.
+
+-- Indicates the cause for holding the call.
+InbandInfo ::= SEQUENCE {
+ messageID [0] MessageID,
+ numberOfRepetitions [1] INTEGER(1..127) OPTIONAL,
+ duration3 [2] INTEGER(0..32767) OPTIONAL,
+ interval [3] INTEGER(0..32767) OPTIONAL
+}
+
+-- Interval is the time in seconds between each repeated announcement. Duration is the total
+-- amount of time in seconds, including repetitions and intervals.
+-- The end of announcement is either the end of duration or numberOfRepetitions, whatever comes first.
+-- Duration with value 0 indicates infinite duration.
+InformationToSend ::= CHOICE {
+ inbandInfo [0] InbandInfo,
+ tone [1] Tone,
+ displayInformation [2] DisplayInformation
+}
+
+Integer4 ::= INTEGER(0..2147483647)
+
+Interval ::= INTEGER(-1..60000)
+
+-- Units are milliseconds. A -1 value denotes infinite.
+InvokeID ::= INTEGER
+
+-- Operation invoke identifier.
+IPAvailable ::= OCTET STRING(SIZE (minIPAvailableLength..maxIPAvailableLength))
+
+-- defined by network operator.
+-- Indicates that the resource is available.
+IPRoutingAddress ::=
+ CalledPartyNumber
+
+-- Indicates the routing address for the IP.
+IPSSPCapabilities ::=
+ OCTET STRING(SIZE (minIPSSPCapabilitiesLength..maxIPSSPCapabilitiesLength))
+
+-- defined by network operator.
+-- Indicates the SRF resources available at the SSP.
+ISDNAccessRelatedInformation ::= OCTET STRING
+
+-- Indicates the destination user network interface related information. Refer to the Q.763 Access
+-- Transport parameter for encoding.
+LegID ::= CHOICE {sendingSideID [0] LegType,
+ receivingSideID [1] LegType
+}
+
+-- Indicates a reference to a specific party in a call. OPTIONAL denotes network operator specific use
+-- with a choice of unilateral ID assignment or bilateral ID assignment.
+-- OPTIONAL for LegID also denotes the following:
+-- - when only one party exists in the call, this parameter is not needed (as no ambiguity exists);
+-- - when more than one party exists in the call, one of the following alternatives applies:
+-- 1. LegID is present and indicates which party is concerned.
+-- 2. LegID is not present and a default value is assumed (e.g. calling party in the case of the
+-- ApplyCharging operation).
+-- Choice between these two alternatives is kept a network operator option.
+LegType ::= OCTET STRING(SIZE (1))
+
+leg1 LegType ::= '01'H
+
+leg2 LegType ::= '02'H
+
+LocationNumber ::=
+ OCTET STRING(SIZE (minLocationNumberLength..maxLocationNumberLength))
+
+-- Indicates the Location Number for the calling party. Refer to Recommendation Q.763 (White book) for encoding.
+MaximumNumberOfCounters ::= INTEGER(1..numOfCounters)
+
+MessageID ::= CHOICE {
+ elementaryMessageID [0] Integer4,
+ text
+ [1] SEQUENCE {messageContent
+ [0] IA5String
+ (SIZE (minMessageContentLength..
+ maxMessageContentLength)),
+ attributes
+ [1] OCTET STRING
+ (SIZE (minAttributesLength..maxAttributesLength))
+ OPTIONAL},
+ elementaryMessageIDs [29] SEQUENCE SIZE (1..numOfMessageIDs) OF Integer4,
+ variableMessage
+ [30] SEQUENCE {elementaryMessageID [0] Integer4,
+ variableParts
+ [1] SEQUENCE SIZE (1..5) OF VariablePart}
+}
+
+-- OPTIONAL denotes network operator specific use.
+MiscCallInfo ::= SEQUENCE {
+ messageType [0] ENUMERATED {request(0), notification(1)},
+ dpAssignment
+ [1] ENUMERATED {individualLine(0), groupBased(1), officeBased(2)} OPTIONAL
+}
+
+-- Indicates detection point related information.
+MonitorMode ::= ENUMERATED {
+ interrupted(0), notifyAndContinue(1), transparent(2)}
+
+-- Indicates the event is relayed and/or processed by the SSP.
+-- If this parameter is used in the context of charging events, the following definitions apply for the
+-- handling of charging events:
+-- Interrupted means that the SSF notifies the SCF of the charging event using
+-- EventNotificationCharging, does not process the event but discard it.
+-- NotifyAndContinue means that SSF notifies the SCF of the charging event using
+-- EventNotificationCharging, and continues processing the event or signal without waiting for SCF
+-- instructions. Transparent means that the SSF does not notify the SCF of the event. This value is used to
+-- end the monitoring of a previously requested charging event. Previously requested charging events are
+-- monitored until ended by a transparent monitor mode, or until the end of the connection configuration.
+-- For the use of this parameter in the context of BCSM events refer to 3.3.39.
+NumberingPlan ::= OCTET STRING(SIZE (1))
+
+-- Indicates the numbering plan for collecting the user information. Refer to the Q.763 Numbering Plan.
+-- Indicator field for encoding.
+NumberOfDigits ::= INTEGER(1..255)
+
+-- Indicates the number of digits to be collected
+OriginalCalledPartyID ::=
+ OCTET STRING
+ (SIZE (minOriginalCalledPartyIDLength..maxOriginalCalledPartyIDLength))
+
+-- Indicates the original called number. Refer to the Q.763 Original Called Number for encoding.
+RedirectingPartyID ::=
+ OCTET STRING(SIZE (minRedirectingPartyIDLength..maxRedirectingPartyIDLength))
+
+-- Indicates redirecting number. Refer to the Q.763 Redirecting number for encoding.
+RedirectionInformation ::= OCTET STRING(SIZE (2))
+
+-- Indicates redirection information. Refer to the Q.763 Redirection Information for encoding.
+ReportCondition ::= ENUMERATED {statusReport(0), timerExpired(1), canceled(2)
+}
+
+-- ReportCondition specifies the cause of sending "StatusReport" operation to the SCF.
+RequestedInformationList ::=
+ SEQUENCE SIZE (1..numOfInfoItems) OF RequestedInformation
+
+RequestedInformationTypeList ::=
+ SEQUENCE SIZE (1..numOfInfoItems) OF RequestedInformationType
+
+RequestedInformation ::= SEQUENCE {
+ requestedInformationType [0] RequestedInformationType,
+ requestedInformationValue [1] RequestedInformationValue
+}
+
+RequestedInformationType ::= ENUMERATED {
+ callAttemptElapsedTime(0), callStopTime(1), callConnectedElapsedTime(2),
+ calledAddress(3), releaseCause(30)}
+
+RequestedInformationValue ::= CHOICE {
+ callAttemptElapsedTimeValue [0] INTEGER(0..255),
+ callStopTimeValue [1] DateAndTime,
+ callConnectedElapsedTimeValue [2] Integer4,
+ calledAddressValue [3] Digits,
+ releaseCauseValue [30] Cause
+}
+
+
+-- The callAttemptElapsedTimeValue is specified in seconds. The unit for the
+-- callConnectedElapsedTimeValue is 100 milliseconds.
+ResourceID ::= CHOICE {
+ lineID [0] Digits,
+ facilityGroupID [1] FacilityGroup,
+ facilityGroupMemberID [2] INTEGER,
+ trunkGroupID [3] INTEGER
+}
+
+-- Indicates a logical identifier for the physical termination resource.
+ResourceStatus ::= ENUMERATED {busy(0), idle(1)}
+
+ResponseCondition ::= ENUMERATED {intermediateResponse(0), lastResponse(1)
+
+-- additional values are for further study.
+}
+
+-- ResponseCondition is used to identify the reason why ServiceFilteringResponse operation is sent.
+-- intermediateresponse identifies that service filtering is running and the interval time is expired and
+-- a call is received, or that service filtering is running and the threshold value is reached.
+-- lastResponse identifies that the duration time is expired and service filtering has been finished or
+-- that the stop time is met and service filtering has been finished.
+RouteList ::= SEQUENCE SIZE (1..3) OF OCTET STRING
+
+-- Indicates a list of trunk groups or a route index. See Recommendation Q.1214 for additional information on this item.
+ScfID ::= OCTET STRING(SIZE (minScfIDLength..maxScfIDLength))
+
+-- defined by network operator.
+-- Indicates the SCF identifier.
+SCIBillingChargingCharacteristics ::=
+ OCTET STRING(SIZE (minSCIBillingChargingLength..maxSCIBillingChargingLength))
+
+-- This parameter indicates the billing and/or charging characteristics. Its content is network operator
+-- specific. An example datatype definition for this parameter is given below:
+-- SCIBillingChargingCharacteristics ::= CHOICE {
+-- chargeLevel [0] OCTET STRING (SIZE (min..max),
+-- chargePulses [1] Integer4,
+-- chargeMessages [2] OCTET STRING (SIZE (min..max)
+-- }
+-- Depending on the applied charging scenario the following information elements
+-- can be included (refer to Appendix II/Q.1214):
+-- chargeLevel (scenario 3.2)
+-- chargePulses (scenario 3.2)
+-- chargeMessages (scenario 3.2)
+ServiceAddressInformation ::= SEQUENCE {
+ serviceKey [0] ServiceKey OPTIONAL,
+ miscCallInfo [1] MiscCallInfo,
+ triggerType [2] TriggerType OPTIONAL
+}
+
+-- Information that represents the result of trigger analysis and allows the SCF to choose the appropriate
+-- service logic.
+ServiceInteractionIndicators ::=
+ OCTET STRING
+ (SIZE (minServiceInteractionIndicatorsLength..
+ maxServiceInteractionIndicatorsLength))
+
+-- Indicators which are exchanged between SSP and SCP to resolve interactions between IN based services
+-- and network based services, respectively between different IN based services.
+-- The contents are network specific and identified as a subject for further study with respect to INAP.
+-- The following example is listed to illustrate the use of this parameter:
+-- CallToBeDiverted Allowed/NotAllowed Indicator
+-- If the CallToBeDiverted indicator is set to NotAllowed, the destination exchange shall not allow any
+-- divertion on the subjected call. By this, each service can pass the applicable indicators to inform the
+-- destination exchange of how specific services are to be handled.
+ServiceKey ::=
+ Integer4
+
+-- Information that allows the SCF to choose the appropriate service logic.
+ServiceProfileIdentifier ::= OCTET STRING
+
+-- Indicates a particular ISDN terminal. Refer to Recommendation Q.932 for encoding.
+ServingAreaID ::=
+ LocationNumber
+
+-- Identifies the local serving area where a network provider operates. Uses the LocationNumber
+-- format which is based on the Q.763 Location Number format.
+-- The Nature of Address indicator field shall be set to "Spare" (value 00000000).
+-- The Numbering Plan Indicator field shall be set to "Spare" (value 000).
+-- Defined by the network operator.
+SFBillingChargingCharacteristics ::=
+ OCTET STRING(SIZE (minSFBillingChargingLength..maxSFBillingChargingLength))
+
+-- This parameter indicates the billing and/or charging characteristics for filtered calls.
+-- Its content is network operator specific.
+TerminalType ::= ENUMERATED {
+ unknown(0), dialPulse(1), dtmf(2), isdn(3), isdnNoDtmf(4), spare(16)
+}
+
+-- Identifies the terminal type so that the SCF can specify, to the SRF, the appropriate type of capability
+-- (voice recognition, DTMF, display capability, etc.). Since present signalling systems do not convey
+-- terminal type, this parameter applies only at originating or terminating local exchanges.
+TimerID ::= ENUMERATED {tssf(0)
+ -- others ffs
+ }
+
+-- Indicates the timer to be reset.
+TimerValue ::= Integer4
+
+-- Indicates the timer value (in seconds).
+Tone ::= SEQUENCE {toneID [0] Integer4,
+ tone-duration [1] Integer4 OPTIONAL
+}
+
+-- The duration specifies the length of the tone in seconds, value 0 indicates infinite duration.
+TravellingClassMark ::=
+ LocationNumber
+
+-- Indicates travelling class mark information.
+-- Uses the LocationNumber format which is based on the Q.763 Location Number format.
+-- The Nature of Address indicator field shall be set to "Spare" (value 00000000).
+-- The Numbering Plan Indicator field shall be set to "Spare" (value 000).
+-- Maximum 2 digits.
+TriggerType ::= ENUMERATED {
+ featureActivation(0), verticalServiceCode(1), customizedAccess(2),
+ customizedIntercom(3), emergencyService(12), aFR(13), sharedIOTrunk(14),
+ offHookDelay(17), channelSetupPRI(18), tNoAnswer(25), tBusy(26),
+ oCalledPartyBusy(27), oNoAnswer(29), originationAttemptAuthorized(30),
+ oAnswer(31), oDisconnect(32), termAttemptAuthorized(33), tAnswer(34),
+ tDisconnect(35)
+ -- Private (ffs)
+ }
+
+-- The type of trigger which caused call suspension
+-- 4-11: Reserved; 15,16: Reserved; 19-24: Reserved
+UnavailableNetworkResource ::= ENUMERATED {
+ unavailableResources(0), componentFailure(1),
+ basicCallProcessingException(2), resourceStatusFailure(3), endUserFailure(4)
+}
+
+-- Indicates the network resource that failed.
+VariablePart ::= CHOICE {
+ integer [0] Integer4,
+ number [1] Digits, -- Generic digits
+ time [2] OCTET STRING(SIZE (2)), -- HH:MM, BCD coded
+ date2 [3] OCTET STRING(SIZE (3)), -- YYMMDD, BCD coded
+ price [4] OCTET STRING(SIZE (4))
+}
+
+-- Indicates the variable part of the message.
+-- BCD coded variable parts are encoded as described in the examples below.
+-- For example, time = 12:15 would be encoded as:
+-- Bits HGFE DCBA
+-- leading octet 2 1
+-- 5 1
+-- date = 1993 September 30th would be encoded as:
+-- Bits HGFE DCBA
+-- leading octet 3 9
+-- 9 0
+-- 0 3
+
+
+
--Canceled ::= localValue 0
CancelFailed ::= SEQUENCE {
diff --git a/asn1/inap/inap.cnf b/asn1/inap/inap.cnf
index 1814cf0751..a479658358 100644
--- a/asn1/inap/inap.cnf
+++ b/asn1/inap/inap.cnf
@@ -17,35 +17,95 @@
#.FIELD_RENAME
-#.FN_BODY Connectarg/redirectingPartyIDXX
-
-proto_item* parameter_item;
- guint8 class;
- gboolean pc, ind;
- guint32 tag;
- guint32 len;
-tvbuff_t *cgpn_tvb;
-
-offset = dissect_ber_identifier(pinfo, tree, tvb, offset, &class, &pc, &tag);
-offset = dissect_ber_length(pinfo, tree, tvb, offset, &len, &ind);
-cgpn_tvb = tvb_new_subset(tvb, 2, len, len );
-parameter_item = proto_tree_add_text(tree, cgpn_tvb, offset,-1,"");
- dissect_isup_called_party_number_parameter(cgpn_tvb, tree, parameter_item);
- offset+=len;
-
-#.FN_BODY InitialDP/dialledDigitsxxx
- proto_item* parameter_item;
- proto_item* parameter_tree;
- guint8 class;
- tvbuff_t *cgpn_tvb;
-parameter_item = proto_tree_add_item(tree, hf_index, tvb, offset, -1, FALSE);
-parameter_tree = proto_item_add_subtree(parameter_item, ett_inapisup_parameter);
-cgpn_tvb = tvb_new_subset(tvb, offset,-1 , -1 );
-dissect_isup_called_party_number_parameter(cgpn_tvb, parameter_tree, parameter_item);
+#.FN_PARS CalledPartyNumber
+VAL_PTR = &parameter_tvb
+
+#.FN_BODY CalledPartyNumber
+ tvbuff_t *parameter_tvb;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+
+dissect_isup_called_party_number_parameter(parameter_tvb, tree, NULL);
+
+#.FN_PARS CallingPartyNumber
+
+VAL_PTR = &parameter_tvb
+
+#.FN_BODY CallingPartyNumber
+ tvbuff_t *parameter_tvb;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+
+ dissect_isup_calling_party_number_parameter(parameter_tvb, tree, NULL);
+
+
+#.FN_PARS BearerCap
+
+ VAL_PTR = &parameter_tvb
+
+#.FN_BODY BearerCap
+
+ tvbuff_t *parameter_tvb;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+
+ dissect_q931_bearer_capability_ie(parameter_tvb, 0, tvb_length_remaining(parameter_tvb,0), tree);
+
+#.FN_PARS RedirectionInformation
+
+ VAL_PTR = &parameter_tvb
+
+#.FN_BODY RedirectionInformation
+
+ tvbuff_t *parameter_tvb;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+
+ dissect_isup_redirection_information_parameter(parameter_tvb, tree, NULL);
+
+#.FN_PARS OriginalCalledPartyID
+
+ VAL_PTR = &parameter_tvb
+
+#.FN_BODY OriginalCalledPartyID
+
+ tvbuff_t *parameter_tvb;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+ dissect_isup_original_called_number_parameter(parameter_tvb, tree, NULL);
+
+#.FN_PARS RedirectingPartyID
+
+ VAL_PTR = &parameter_tvb
+
+#.FN_BODY RedirectingPartyID
+
+ tvbuff_t *parameter_tvb;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+ dissect_isup_redirecting_number_parameter(parameter_tvb, tree, NULL);
+
#.TYPE_ATTR
-#Ss-Code TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(ssCode_vals)
-#Teleservice TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(Teleservice_vals)
+CallingPartysCategory TYPE = FT_UINT16 DISPLAY = BASE_DEC STRINGS = VALS(isup_calling_partys_category_value)
#.END
diff --git a/asn1/inap/packet-inap-template.c b/asn1/inap/packet-inap-template.c
index cc833ce886..0a8e152e60 100644
--- a/asn1/inap/packet-inap-template.c
+++ b/asn1/inap/packet-inap-template.c
@@ -22,6 +22,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
* References: ETSI 300 374
+ * ITU Q.1218
*/
#ifdef HAVE_CONFIG_H
@@ -40,8 +41,9 @@
#include "packet-inap.h"
#include "packet-q931.h"
#include "packet-e164.h"
+#include "packet-isup.h"
-#define PNAME "INAP"
+#define PNAME "Intelligent Network Application Protocol"
#define PSNAME "INAP"
#define PFNAME "inap"
@@ -53,8 +55,8 @@ static int hf_inap_linkedid = -1; /* INTEGER */
static int hf_inap_absent = -1; /* NULL */
static int hf_inap_invokeId = -1; /* InvokeId */
static int hf_inap_invoke = -1; /* InvokePDU */
-static int hf_inap_ReturnError = -1; /* InvokePDU */
-static int hf_inap_returnResult = -1; /* InvokePDU */
+static int hf_inap_ReturnError = -1; /* InvokePDU */
+static int hf_inap_returnResult = -1; /* InvokePDU */
static int hf_inap_returnResult_result = -1;
static int hf_inap_getPassword = -1;
static int hf_inap_currentPassword = -1;
@@ -86,25 +88,61 @@ static int dissect_invokeCmd(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv
const value_string inap_opr_code_strings[] = {
-{16, "AssistRequestInstructions"},
-{44, "CallInformationReport"},
-{45, "CallInformationRequest"},
-{53, "Cancel"},
-{20, "Connect"},
-{18, "DisconnectForwardConnection"},
- {19,"ConnectToResource"},
+ {0,"InitialDP"},
+ {1, "OriginationAttemptAuthorized"},
+ {2, "CollectedInformation"},
+ {3, "AnalysedInformation"},
+ {4, "RouteSelectFailure"},
+ {5, "oCalledPartyBusy"},
+ {6, "oNoAnswer"},
+ {7, "oAnswer"},
+ {8, "oDisconnect"},
+ {9, "TermAttemptAuthorized"},
+ {10, "tBusy"},
+ {11, "tNoAnswer"},
+ {12, "tAnswer"},
+ {13, "tDisconnect"},
+ {14, "oMidCall"},
+ {15, "tMidCall"},
+ {16, "AssistRequestInstructions"},
{17,"EstablishTemporaryConnection"},
+ {18, "DisconnectForwardConnection"},
+ {19,"ConnectToResource"},
+ {20, "Connect"},
+ {21,"HoldCallInNetwork"},
+ {22, "ReleaseCall"},
+ {23, "RequestReportBCSMEven"},
+ {23,"RequestReportBCSMEvent"},
{24,"EventReportBCSM"},
+ {25, "RequestNotificationChargingEvent"},
+ {26, "EventNotificationCharging"},
+ {27, "CollectInformation"},
+ {28, "AnalyseInformation"},
+ {29, "SelectRoute"},
+ {30, "SelectFacility"},
+ {31, "Continue"},
+ {32, "InitiateCallAttempt"},
+ {33,"ResetTimer"},
{34,"FurnishChargingInformation"},
- {0,"InitialDP"},
+ {35, "ApplyCharging"},
+ {36, "ApplyChargingReport"},
+ {37, "RequestCurrentStatusReport"},
+ {38, "RequestEveryStatusChangeReport"},
+ {39, "RequestFirstStatusMatchReport"},
+ {40, "StatusReport"},
+ {41, "CallGap"},
+ {42, "ActivateServiceFiltering"},
+ {43, "ServiceFilteringResponse"},
+ {44, "CallInformationReport"},
+ {45, "CallInformationRequest"},
+ {46, "SendChargingInformation"},
{47,"PlayAnnouncement"},
{48,"PromptAndCollectUserInformation"},
- {99,"ReceivedInformation"}, /*???????*/
- {33,"ResetTimer"},
- {23,"RequestReportBCSMEvent"},
{49,"SpecializedResourceReport"},
- {22,"ReleaseCall"},
-{0, NULL}
+ {53, "Cancel"},
+ {55, "ActivityTest"},
+ {99,"ReceivedInformation"}, /*???????*/
+ {0, NULL}
};
const value_string inap_error_code_strings[] = {
@@ -124,6 +162,7 @@ const value_string inap_error_code_strings[] = {
{15,"UnexpectedDataValue"},
{16,"UnexpectedParameter"},
{17,"UnknownLegID"},
+{18,"UnknownResource"},
{0, NULL}
};
@@ -162,59 +201,114 @@ dissect_inap_errorCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, pac
return offset;
}
+/*
+TC-Invokable OPERATION ::=
+ {activateServiceFiltering | activityTest | analysedInformation |
+ analyseInformation | applyCharging | applyChargingReport |
+ assistRequestInstructions | callGap | callInformationReport |
+ callInformationRequest | cancel | cancelStatusReportRequest |
+ collectedInformation | collectInformation | connect | connectToResource |
+ continue | disconnectForwardConnection | establishTemporaryConnection |
+ eventNotificationCharging | eventReportBCSM | furnishChargingInformation |
+ holdCallInNetwork | initialDP | initiateCallAttempt | oAnswer |
+ oCalledPartyBusy | oDisconnect | oMidCall | oNoAnswer |
+ originationAttemptAuthorized | releaseCall | requestCurrentStatusReport |
+ requestEveryStatusChangeReport | requestFirstStatusMatchReport |
+ requestNotificationChargingEvent | requestReportBCSMEvent | resetTimer |
+ routeSelectFailure | selectFacility | selectRoute | sendChargingInformation
+ | serviceFilteringResponse | statusReport | tAnswer | tBusy | tDisconnect |
+ termAttemptAuthorized | tMidCall | tNoAnswer | playAnnouncement |
+ promptAndCollectUserInformation}
+*/
static int dissect_invokeData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
switch(opcode){
- case 16: /*AssistRequestInstructions*/
- offset=dissect_inap_AssistRequestInstructionsarg(FALSE, tvb, offset, pinfo, tree, -1);
- break;
- case 44: /*CallInformationReport*/
- offset=dissect_inap_CallInformationReportarg(FALSE, tvb, offset, pinfo, tree, -1);
- break;
- case 45: /*CallInformationRequest*/
- offset=dissect_inap_CallInformationRequestarg(FALSE, tvb, offset, pinfo, tree, -1);
+ case 0: /*InitialDP*/
+ offset=dissect_inap_InitialDP(FALSE, tvb, offset, pinfo, tree, -1);
break;
- case 53: /*Cancel*/
- offset=dissect_inap_Cancelarg(FALSE, tvb, offset, pinfo, tree, -1);
+ /*1 OriginationAttemptAuthorized */
+ /*2 CollectedInformation */
+ /*3 AnalysedInformation */
+ /*4 RouteSelectFailure */
+ /*5 oCalledPartyBusy */
+ /*6 oNoAnswer */
+ /*7 oAnswer */
+ /*8 oDisconnect */
+ /*9 TermAttemptAuthorized */
+ /*10 tBusy */
+ /*11 tNoAnswer */
+ /*12 tAnswer */
+ /*13 tDisconnect */
+ /*14 oMidCall */
+ /*15 tMidCall */
+ case 16: /*AssistRequestInstructions*/
+ offset=dissect_inap_AssistRequestInstructionsArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
- case 20: /*Connect*/
- offset=dissect_inap_Connectarg(FALSE, tvb, offset, pinfo, tree, -1);
+ case 17: /*EstablishTemporaryConnection*/
+ offset=dissect_inap_EstablishTemporaryConnectionArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
case 18: /*DisconnectForwardConnections*/
proto_tree_add_text(tree, tvb, offset, -1, "Disconnect Forward Connection");
break;
case 19: /*ConnectToResource*/
- offset=dissect_inap_ConnectToResource(FALSE, tvb, offset, pinfo, tree, -1);
+ offset=dissect_inap_ConnectToResourceArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
- case 17: /*EstablishTemporaryConnection*/
- offset=dissect_inap_EstablishTemporaryConnection(FALSE, tvb, offset, pinfo, tree, -1);
+ case 20: /*Connect*/
+ offset=dissect_inap_ConnectArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
+ /* 21 HoldCallInNetwork */
+
+ case 22: /*ReleaseCall*/
+ offset=dissect_inap_ReleaseCallArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
+ case 23: /*InitialDP*/
+ offset=dissect_inap_RequestReportBCSMEventArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
case 24: /*EventReportBCSM*/
- offset=dissect_inap_EventReportBCSM(FALSE, tvb, offset, pinfo, tree, -1);
+ offset=dissect_inap_EventReportBCSMArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
- case 34: /*FurnishChargingInformation*/
- offset=dissect_inap_FurnishChargingInformationarg(FALSE, tvb, offset, pinfo, tree, -1);
+ /*24,"EventReportBCSM */
+ /*25, "RequestNotificationChargingEvent */
+ /*26, "EventNotificationCharging */
+ /*27, "CollectInformation */
+ /*28, "AnalyseInformation */
+ /*29, "SelectRoute */
+ /*30, "SelectFacility */
+ /*31, "Continue */
+ /*32, "InitiateCallAttempt*/
+ case 33: /*ResetTimer*/
+ offset=dissect_inap_ResetTimerArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
- case 0: /*InitialDP*/
- offset=dissect_inap_InitialDP(FALSE, tvb, offset, pinfo, tree, -1);
+ case 34: /*FurnishChargingInformation*/
+ offset=dissect_inap_FurnishChargingInformationArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
+ /*35, "ApplyCharging */
+ /*36, "ApplyChargingReport */
+ /*37, "RequestCurrentStatusReport */
+ /*38, "RequestEveryStatusChangeReport */
+ /*39, "RequestFirstStatusMatchReport */
+ /*40, "StatusReport */
+ /*41, "CallGap */
+ /*42, "ActivateServiceFiltering */
+ /*43, "ServiceFilteringResponse */
- case 23: /*InitialDP*/
- offset=dissect_inap_RequestReportBCSMEvent(FALSE, tvb, offset, pinfo, tree, -1);
+ case 44: /*CallInformationReport*/
+ offset=dissect_inap_CallInformationReportArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
+ case 45: /*CallInformationRequest*/
+ offset=dissect_inap_CallInformationRequestArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
-
case 47: /*PlayAnnouncement*/
- offset=dissect_inap_PlayAnnouncement(FALSE, tvb, offset, pinfo, tree, -1);
+ offset=dissect_inap_PlayAnnouncementArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
case 48: /*PromptAndCollectUserInformation*/
- offset=dissect_inap_PromptAndCollectUserInformationarg(FALSE, tvb, offset, pinfo, tree, -1);
- break;
- case 33: /*ResetTimer*/
- offset=dissect_inap_ResetTimer(FALSE, tvb, offset, pinfo, tree, -1);
+ offset=dissect_inap_PromptAndCollectUserInformationArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
- case 22: /*ResetTimer*/
- offset=dissect_inap_ReleaseCallArg(FALSE, tvb, offset, pinfo, tree, -1);
+ /* 49 SpecializedResourceReport */
+ case 53: /*Cancel*/
+ offset=dissect_inap_CancelArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
+ /*55 ActivityTest*/
default:
proto_tree_add_text(tree, tvb, offset, -1, "Unknown invokeData blob");
/* todo call the asn.1 dissector */
@@ -222,11 +316,27 @@ static int dissect_invokeData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv
return offset;
}
-
+/*
+TC-Returnable OPERATION ::=
+ {activateServiceFiltering | activityTest | requestCurrentStatusReport |
+ requestEveryStatusChangeReport | requestFirstStatusMatchReport |
+ promptAndCollectUserInformation}
+
+ activateServiceFiltering - No arg
+ activityTest - No Arg
+ requestCurrentStatusReport - RESULT RequestCurrentStatusReportResultArg
+ requestEveryStatusChangeReport - No arg
+ requestFirstStatusMatchReport - No Arg
+ promptAndCollectUserInformation - RESULT ReceivedInformationArg
+
+*/
static int dissect_returnResultData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
switch(opcode){
+ case 37: /*requestCurrentStatusReport*/
+ offset=dissect_inap_RequestCurrentStatusReportResultArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
case 48: /*PromptAndCollectUserInformation*/
- offset=dissect_inap_PromptAndCollectUserInformationres(FALSE, tvb, offset, pinfo, tree, -1);
+ offset=dissect_inap_ReceivedInformationArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
default:
proto_tree_add_text(tree, tvb, offset, -1, "Unknown returnResultData blob");
diff --git a/epan/dissectors/packet-camel.c b/epan/dissectors/packet-camel.c
index 36f04ecea5..96bb4d76d1 100644
--- a/epan/dissectors/packet-camel.c
+++ b/epan/dissectors/packet-camel.c
@@ -10,6 +10,8 @@
* Copyright 2004, Tim Endean <endeant@hotmail.com>
* Copyright 2005, Olivier Jacques <olivier.jacques@hp.com>
* Copyright 2005, Javier AcuÇña <javier.acuna@sixbell.com>
+ * Updated to ETSI TS 129 078 V6.4.0 (2004-3GPP TS 29.078 version 6.4.0 Release 6 1 12)
+ * Copyright 2005, Anders Broman <anders.broman@ericsson.com>
* Built from the gsm-map dissector Copyright 2004, Anders Broman <anders.broman@ericsson.com>
*
* $Id$
@@ -144,9 +146,13 @@ static int hf_camel_releaseIfdurationExceeded = -1; /* BOOLEAN */
static int hf_camel_tariffSwitchInterval = -1; /* INTEGER_1_86400 */
static int hf_camel_actone = -1; /* BOOLEAN */
static int hf_camel_extensions = -1; /* ExtensionsArray */
+static int hf_camel_legID = -1; /* LegID */
+static int hf_camel_srfConnection = -1; /* CallSegmentID */
static int hf_camel_aOCInitial = -1; /* CAI_Gsm0224 */
static int hf_camel_aOCSubsequent = -1; /* AOCSubsequent */
static int hf_camel_cAI_GSM0224 = -1; /* CAI_Gsm0224 */
+static int hf_camel_tone = -1; /* BOOLEAN */
+static int hf_camel_burstList = -1; /* BurstList */
static int hf_camel_conferenceTreatmentIndicator = -1; /* OCTET_STRING_SIZE_1 */
static int hf_camel_callCompletionTreatmentIndicator = -1; /* OCTET_STRING_SIZE_1 */
static int hf_camel_calledAddressValue = -1; /* Digits */
@@ -159,7 +165,16 @@ static int hf_camel_eventTypeBCSM = -1; /* EventTypeBCSM */
static int hf_camel_monitorMode = -1; /* MonitorMode */
static int hf_camel_legID6 = -1; /* LegID */
static int hf_camel_dpSpecificCriteria = -1; /* DpSpecificCriteria */
-static int hf_camel_bearerCap = -1; /* OCTET_STRING_SIZE_2_cAPSpecificBoundSetmaxBearerCapabilityLength */
+static int hf_camel_automaticRearm = -1; /* NULL */
+static int hf_camel_cause = -1; /* Cause */
+static int hf_camel_bearerCap = -1; /* BearerCap */
+static int hf_camel_numberOfBursts = -1; /* INTEGER_1_3 */
+static int hf_camel_burstInterval = -1; /* INTEGER_1_1200 */
+static int hf_camel_numberOfTonesInBurst = -1; /* INTEGER_1_3 */
+static int hf_camel_toneDuration = -1; /* INTEGER_1_20 */
+static int hf_camel_toneInterval = -1; /* INTEGER_1_20 */
+static int hf_camel_warningPeriod = -1; /* INTEGER_1_1200 */
+static int hf_camel_bursts = -1; /* Burst */
static int hf_camel_e1 = -1; /* INTEGER_0_8191 */
static int hf_camel_e2 = -1; /* INTEGER_0_8191 */
static int hf_camel_e3 = -1; /* INTEGER_0_8191 */
@@ -167,12 +182,17 @@ static int hf_camel_e4 = -1; /* INTEGER_0_8191 */
static int hf_camel_e5 = -1; /* INTEGER_0_8191 */
static int hf_camel_e6 = -1; /* INTEGER_0_8191 */
static int hf_camel_e7 = -1; /* INTEGER_0_8191 */
+static int hf_camel_callSegmentID = -1; /* CallSegmentID */
+static int hf_camel_invokeID = -1; /* InvokeID */
static int hf_camel_timeDurationCharging = -1; /* T_timeDurationCharging */
+static int hf_camel_audibleIndicator = -1; /* AudibleIndicator */
static int hf_camel_timeDurationChargingResult = -1; /* T_timeDurationChargingResult */
-static int hf_camel_partyToCharge3 = -1; /* ReceivingSideID */
+static int hf_camel_partyToCharge = -1; /* ReceivingSideID */
static int hf_camel_timeInformation = -1; /* TimeInformation */
-static int hf_camel_callActive = -1; /* BOOLEAN */
-static int hf_camel_callReleasedAtTcpExpiry = -1; /* NULL */
+static int hf_camel_legActive = -1; /* BOOLEAN */
+static int hf_camel_callLegReleasedAtTcpExpiry = -1; /* NULL */
+static int hf_camel_extensions1 = -1; /* Extensions */
+static int hf_camel_aChChargingAddress = -1; /* AChChargingAddress */
static int hf_camel_fCIBCCCAMELsequence1 = -1; /* T_fCIBCCCAMELsequence1 */
static int hf_camel_freeFormatData = -1; /* FreeFormatData */
static int hf_camel_partyToCharge4 = -1; /* SendingSideID */
@@ -182,7 +202,16 @@ static int hf_camel_pDPID = -1; /* PDPId */
static int hf_camel_fCIBCCCAMELsequence3 = -1; /* T_fCIBCCCAMELsequence3 */
static int hf_camel_aOCBeforeAnswer = -1; /* AOCBeforeAnswer */
static int hf_camel_aOCAfterAnswer = -1; /* AOCSubsequent */
+static int hf_camel_aOC_extension = -1; /* CAMEL_SCIBillingChargingCharacteristicsAlt */
static int hf_camel_aOCGPRS = -1; /* AOCGprs */
+static int hf_camel_ChangeOfPositionControlInfo_item = -1; /* ChangeOfLocation */
+static int hf_camel_cellGlobalId = -1; /* CellGlobalIdOrServiceAreaIdFixedLength */
+static int hf_camel_serviceAreaId = -1; /* CellGlobalIdOrServiceAreaIdFixedLength */
+static int hf_camel_locationAreaId = -1; /* LAIFixedLength */
+static int hf_camel_inter_SystemHandOver = -1; /* NULL */
+static int hf_camel_inter_PLMNHandOver = -1; /* NULL */
+static int hf_camel_inter_MSCHandOver = -1; /* NULL */
+static int hf_camel_changeOfLocationAlt = -1; /* ChangeOfLocationAlt */
static int hf_camel_maxTransferredVolume = -1; /* INTEGER_1_2147483647 */
static int hf_camel_maxElapsedTime = -1; /* INTEGER_1_86400 */
static int hf_camel_transferredVolume = -1; /* TransferredVolume */
@@ -205,6 +234,12 @@ static int hf_camel_basicGapCriteria = -1; /* BasicGapCriteria */
static int hf_camel_scfID = -1; /* ScfID */
static int hf_camel_DestinationRoutingAddress_item = -1; /* CalledPartyNumber */
static int hf_camel_applicationTimer = -1; /* ApplicationTimer */
+static int hf_camel_midCallControlInfo = -1; /* MidCallControlInfo */
+static int hf_camel_dpSpecificCriteriaAlt = -1; /* DpSpecificCriteriaAlt */
+static int hf_camel_changeOfPositionControlInfo = -1; /* ChangeOfPositionControlInfo */
+static int hf_camel_oServiceChangeSpecificInfo = -1; /* T_oServiceChangeSpecificInfo */
+static int hf_camel_ext_basicServiceCode = -1; /* Ext_BasicServiceCode */
+static int hf_camel_tServiceChangeSpecificInfo = -1; /* T_tServiceChangeSpecificInfo */
static int hf_camel_timeGPRSIfNoTariffSwitch = -1; /* INTEGER_0_86400 */
static int hf_camel_timeGPRSIfTariffSwitch = -1; /* T_timeGPRSIfTariffSwitch */
static int hf_camel_timeGPRSSinceLastTariffSwitch = -1; /* INTEGER_0_86400 */
@@ -221,22 +256,42 @@ static int hf_camel_failureCause = -1; /* Cause */
static int hf_camel_oCalledPartyBusySpecificInfo = -1; /* T_oCalledPartyBusySpecificInfo */
static int hf_camel_busyCause = -1; /* Cause */
static int hf_camel_oNoAnswerSpecificInfo = -1; /* T_oNoAnswerSpecificInfo */
-static int hf_camel_foo = -1; /* INTEGER_0 */
static int hf_camel_oAnswerSpecificInfo = -1; /* T_oAnswerSpecificInfo */
static int hf_camel_destinationAddress = -1; /* CalledPartyNumber */
static int hf_camel_or_Call = -1; /* NULL */
static int hf_camel_forwardedCall = -1; /* NULL */
+static int hf_camel_chargeIndicator = -1; /* ChargeIndicator */
+static int hf_camel_ext_basicServiceCode2 = -1; /* Ext_BasicServiceCode */
+static int hf_camel_oMidCallSpecificInfo = -1; /* T_oMidCallSpecificInfo */
+static int hf_camel_midCallEvents = -1; /* T_midCallEvents */
+static int hf_camel_dTMFDigitsCompleted = -1; /* Digits */
+static int hf_camel_dTMFDigitsTimeOut = -1; /* Digits */
static int hf_camel_oDisconnectSpecificInfo = -1; /* T_oDisconnectSpecificInfo */
static int hf_camel_releaseCause = -1; /* Cause */
static int hf_camel_tBusySpecificInfo = -1; /* T_tBusySpecificInfo */
static int hf_camel_callForwarded = -1; /* NULL */
static int hf_camel_routeNotPermitted = -1; /* NULL */
+static int hf_camel_forwardingDestinationNumber = -1; /* CalledPartyNumber */
static int hf_camel_tNoAnswerSpecificInfo = -1; /* T_tNoAnswerSpecificInfo */
static int hf_camel_tAnswerSpecificInfo = -1; /* T_tAnswerSpecificInfo */
+static int hf_camel_tMidCallSpecificInfo = -1; /* T_tMidCallSpecificInfo */
+static int hf_camel_midCallEvents1 = -1; /* T_midCallEvents1 */
static int hf_camel_tDisconnectSpecificInfo = -1; /* T_tDisconnectSpecificInfo */
+static int hf_camel_oTermSeizedSpecificInfo = -1; /* T_oTermSeizedSpecificInfo */
+static int hf_camel_locationInformation = -1; /* LocationInformation */
+static int hf_camel_callAcceptedSpecificInfo = -1; /* T_callAcceptedSpecificInfo */
+static int hf_camel_oAbandonSpecificInfo = -1; /* T_oAbandonSpecificInfo */
+static int hf_camel_oChangeOfPositionSpecificInfo = -1; /* T_oChangeOfPositionSpecificInfo */
+static int hf_camel_metDPCriteriaList = -1; /* MetDPCriteriaList */
+static int hf_camel_tChangeOfPositionSpecificInfo = -1; /* T_tChangeOfPositionSpecificInfo */
+static int hf_camel_dpSpecificInfoAlt = -1; /* DpSpecificInfoAlt */
static int hf_camel_o_smsFailureSpecificInfo = -1; /* T_o_smsFailureSpecificInfo */
-static int hf_camel_smsfailureCause = -1; /* SMSCause */
+static int hf_camel_smsfailureCause = -1; /* MO_SMSCause */
static int hf_camel_o_smsSubmittedSpecificInfo = -1; /* T_o_smsSubmittedSpecificInfo */
+static int hf_camel_foo = -1; /* INTEGER_0 */
+static int hf_camel_t_smsFailureSpecificInfo = -1; /* T_t_smsFailureSpecificInfo */
+static int hf_camel_failureCause1 = -1; /* MT_SMSCause */
+static int hf_camel_t_smsDeliverySpecificInfo = -1; /* T_t_smsDeliverySpecificInfo */
static int hf_camel_Extensions_item = -1; /* ExtensionField */
static int hf_camel_callDiversionTreatmentIndicator = -1; /* OCTET_STRING_SIZE_1 */
static int hf_camel_callingPartyRestrictionIndicator = -1; /* OCTET_STRING_SIZE_1 */
@@ -247,6 +302,7 @@ static int hf_camel_informationToSend = -1; /* InformationToSend */
static int hf_camel_GenericNumbers_item = -1; /* GenericNumber */
static int hf_camel_short_QoS_format = -1; /* QoS_Subscribed */
static int hf_camel_long_QoS_format = -1; /* Ext_QoS_Subscribed */
+static int hf_camel_supplement_to_long_QoS_format = -1; /* Ext2_QoS_Subscribed */
static int hf_camel_gPRSEventType = -1; /* GPRSEventType */
static int hf_camel_attachChangeOfPositionSpecificInformation = -1; /* T_attachChangeOfPositionSpecificInformation */
static int hf_camel_locationInformationGPRS = -1; /* LocationInformationGPRS */
@@ -272,7 +328,7 @@ static int hf_camel_numberOfRepetitions = -1; /* INTEGER_1_127 */
static int hf_camel_duration2 = -1; /* INTEGER_0_32767 */
static int hf_camel_interval = -1; /* INTEGER_0_32767 */
static int hf_camel_inbandInfo = -1; /* InbandInfo */
-static int hf_camel_tone = -1; /* Tone */
+static int hf_camel_tone1 = -1; /* Tone */
static int hf_camel_cellGlobalIdOrServiceAreaIdOrLAI = -1; /* CellGlobalIdOrServiceAreaIdOrLAI */
static int hf_camel_routeingAreaIdentity = -1; /* RAIdentity */
static int hf_camel_geographicalInformation = -1; /* GeographicalInformation */
@@ -288,9 +344,25 @@ static int hf_camel_elementaryMessageIDs = -1; /* SEQUENCE_SIZE_1_16_OF_Integ
static int hf_camel_elementaryMessageIDs_item = -1; /* Integer4 */
static int hf_camel_variableMessage = -1; /* T_variableMessage */
static int hf_camel_variableParts = -1; /* VariablePartsArray */
+static int hf_camel_MetDPCriteriaList_item = -1; /* MetDPCriterion */
+static int hf_camel_enteringCellGlobalId = -1; /* CellGlobalIdOrServiceAreaIdFixedLength */
+static int hf_camel_leavingCellGlobalId = -1; /* CellGlobalIdOrServiceAreaIdFixedLength */
+static int hf_camel_enteringServiceAreaId = -1; /* CellGlobalIdOrServiceAreaIdFixedLength */
+static int hf_camel_leavingServiceAreaId = -1; /* CellGlobalIdOrServiceAreaIdFixedLength */
+static int hf_camel_enteringLocationAreaId = -1; /* LAIFixedLength */
+static int hf_camel_leavingLocationAreaId = -1; /* LAIFixedLength */
+static int hf_camel_inter_SystemHandOverToUMTS = -1; /* NULL */
+static int hf_camel_inter_SystemHandOverToGSM = -1; /* NULL */
+static int hf_camel_metDPCriterionAlt = -1; /* MetDPCriterionAlt */
+static int hf_camel_minimumNumberOfDigits = -1; /* INTEGER_1_30 */
+static int hf_camel_maximumNumberOfDigits = -1; /* INTEGER_1_30 */
+static int hf_camel_interDigitTimeout = -1; /* INTEGER_1_127 */
static int hf_camel_requested_QoS = -1; /* GPRS_QoS */
static int hf_camel_subscribed_QoS = -1; /* GPRS_QoS */
static int hf_camel_negotiated_QoS = -1; /* GPRS_QoS */
+static int hf_camel_requested_QoS_Extension = -1; /* GPRS_QoS_Extension */
+static int hf_camel_subscribed_QoS_Extension = -1; /* GPRS_QoS_Extension */
+static int hf_camel_negotiated_QoS_Extension = -1; /* GPRS_QoS_Extension */
static int hf_camel_receivingSideID = -1; /* LegType */
static int hf_camel_RequestedInformationList_item = -1; /* RequestedInformation */
static int hf_camel_RequestedInformationTypeList_item = -1; /* RequestedInformationType */
@@ -310,10 +382,10 @@ static int hf_camel_holdTreatmentIndicator = -1; /* OCTET_STRING_SIZE_1 */
static int hf_camel_cwTreatmentIndicator = -1; /* OCTET_STRING_SIZE_1 */
static int hf_camel_ectTreatmentIndicator = -1; /* OCTET_STRING_SIZE_1 */
static int hf_camel_eventTypeSMS = -1; /* EventTypeSMS */
-static int hf_camel_timeIfNoTariffSwitch = -1; /* TimeIfNoTariffSwitch */
-static int hf_camel_timeIfTariffSwitch = -1; /* TimeIfTariffSwitch */
static int hf_camel_timeSinceTariffSwitch = -1; /* INTEGER_0_864000 */
static int hf_camel_tttariffSwitchInterval = -1; /* INTEGER_1_864000 */
+static int hf_camel_timeIfNoTariffSwitch = -1; /* TimeIfNoTariffSwitch */
+static int hf_camel_timeIfTariffSwitch = -1; /* TimeIfTariffSwitch */
static int hf_camel_toneID = -1; /* Integer4 */
static int hf_camel_duration3 = -1; /* Integer4 */
static int hf_camel_volumeIfNoTariffSwitch = -1; /* INTEGER_0_2147483647 */
@@ -335,8 +407,8 @@ static int hf_camel_messageType = -1; /* T_messageType */
static int hf_camel_firstExtensionExtensionType = -1; /* NULL */
static int hf_camel_extId = -1; /* ExtensionSetextensionId */
static int hf_camel_callresultOctet = -1; /* CallresultoctetPDU */
-static int hf_camel_invokeID = -1; /* InvokeID */
static int hf_camel_allRequests = -1; /* NULL */
+static int hf_camel_callSegmentToCancel = -1; /* CallSegmentToCancel */
static int hf_camel_digitsResponse = -1; /* Digits */
static int hf_camel_pdpID = -1; /* PDPId */
static int hf_camel_gPRSCause = -1; /* GPRSCause */
@@ -351,18 +423,27 @@ static int hf_camel_notProvidedFromVLR = -1; /* NULL */
static int hf_camel_PrivateExtensionList_item = -1; /* PrivateExtension */
static int hf_camel_cellIdFixedLength = -1; /* CellIdFixedLength */
static int hf_camel_laiFixedLength = -1; /* LAIFixedLength */
-static int hf_camel_ext_BearerService = -1; /* Ext_BearerServiceCode */
-static int hf_camel_ext_Teleservice = -1; /* Ext_TeleserviceCode */
static int hf_camel_VariablePartsArray_item = -1; /* VariablePart */
static int hf_camel_gmscAddress = -1; /* ISDN_AddressString */
-static int hf_camel_ageOfLocationInformation = -1; /* AgeOfLocationInformation */
-static int hf_camel_vlr_number = -1; /* ISDN_AddressString */
-static int hf_camel_locationNumber = -1; /* LocationNumber */
-static int hf_camel_cellIdOrLAI = -1; /* CellIdOrLAI */
-static int hf_camel_selectedLSA_Id = -1; /* LSAIdentity */
-static int hf_camel_msc_number = -1; /* ISDN_AddressString */
-static int hf_camel_geodeticInformation = -1; /* GeodeticInformation */
-static int hf_camel_currentLocationRetrieved = -1; /* NULL */
+static int hf_camel_ms_Classmark2 = -1; /* MS_Classmark2 */
+static int hf_camel_iMEI = -1; /* IMEI */
+static int hf_camel_supportedCamelPhases = -1; /* SupportedCamelPhases */
+static int hf_camel_offeredCamel4Functionalities = -1; /* OfferedCamel4Functionalities */
+static int hf_camel_bearerCapability2 = -1; /* BearerCapability */
+static int hf_camel_highLayerCompatibility2 = -1; /* HighLayerCompatibility */
+static int hf_camel_lowLayerCompatibility = -1; /* LowLayerCompatibility */
+static int hf_camel_lowLayerCompatibility2 = -1; /* LowLayerCompatibility */
+static int hf_camel_enhancedDialledServicesAllowed = -1; /* NULL */
+static int hf_camel_uu_Data = -1; /* UU_Data */
+static int hf_camel_destinationRoutingAddress = -1; /* DestinationRoutingAddress */
+static int hf_camel_legToBeCreated = -1; /* LegID */
+static int hf_camel_newCallSegment = -1; /* CallSegmentID */
+static int hf_camel_callingPartyNumber = -1; /* CallingPartyNumber */
+static int hf_camel_callReferenceNumber = -1; /* CallReferenceNumber */
+static int hf_camel_gsmSCFAddress = -1; /* ISDN_AddressString */
+static int hf_camel_suppress_T_CSI = -1; /* NULL */
+static int hf_camel_legIDToMove = -1; /* LegID */
+static int hf_camel_legOrCallSegment = -1; /* LegOrCallSegment */
static int hf_camel_miscGPRSInfo = -1; /* MiscCallInfo */
static int hf_camel_gPRSEventSpecificInformation = -1; /* GPRSEventSpecificInformation */
static int hf_camel_type = -1; /* SupportedExtensionsid */
@@ -375,7 +456,6 @@ static int hf_camel_correlationID = -1; /* CorrelationID */
static int hf_camel_iPSSPCapabilities = -1; /* IPSSPCapabilities */
static int hf_camel_requestedInformationTypeList = -1; /* RequestedInformationTypeList */
static int hf_camel_legID3 = -1; /* SendingSideID */
-static int hf_camel_destinationRoutingAddress = -1; /* DestinationRoutingAddress */
static int hf_camel_alertingPattern = -1; /* AlertingPattern */
static int hf_camel_originalCalledPartyID = -1; /* OriginalCalledPartyID */
static int hf_camel_carrier = -1; /* Carrier */
@@ -390,9 +470,18 @@ static int hf_camel_cug_OutgoingAccess = -1; /* NULL */
static int hf_camel_suppressionOfAnnouncement = -1; /* SuppressionOfAnnouncement */
static int hf_camel_oCSIApplicable = -1; /* OCSIApplicable */
static int hf_camel_naOliInfo = -1; /* NAOliInfo */
+static int hf_camel_bor_InterrogationRequested = -1; /* NULL */
static int hf_camel_resourceAddress = -1; /* T_resourceAddress */
static int hf_camel_ipRoutingAddress = -1; /* IPRoutingAddress */
static int hf_camel_none = -1; /* NULL */
+static int hf_camel_suppress_O_CSI = -1; /* NULL */
+static int hf_camel_continueWithArgumentArgExtension = -1; /* ContinueWithArgumentArgExtension */
+static int hf_camel_suppress_D_CSI = -1; /* NULL */
+static int hf_camel_suppress_N_CSI = -1; /* NULL */
+static int hf_camel_suppressOutgoingCallBarring = -1; /* NULL */
+static int hf_camel_legToBeReleased = -1; /* LegID */
+static int hf_camel_callSegmentFailure = -1; /* CallSegmentFailure */
+static int hf_camel_bCSM_Failure = -1; /* BCSM_Failure */
static int hf_camel_assistingSSPIPRoutingAddress = -1; /* AssistingSSPIPRoutingAddress */
static int hf_camel_eventSpecificInformationBCSM = -1; /* EventSpecificInformationBCSM */
static int hf_camel_legID4 = -1; /* ReceivingSideID */
@@ -401,6 +490,7 @@ static int hf_camel_timerID = -1; /* TimerID */
static int hf_camel_timervalue = -1; /* TimerValue */
static int hf_camel_sCIBillingChargingCharacteristics = -1; /* SCIBillingChargingCharacteristics */
static int hf_camel_partyToCharge2 = -1; /* SendingSideID */
+static int hf_camel_legToBeSplit = -1; /* LegID */
static int hf_camel_destinationReference = -1; /* Integer4 */
static int hf_camel_originationReference = -1; /* Integer4 */
static int hf_camel_eventSpecificInformationSMS = -1; /* EventSpecificInformationSMS */
@@ -425,17 +515,13 @@ static int hf_camel_gapIndicators = -1; /* GapIndicators */
static int hf_camel_controlType = -1; /* ControlType */
static int hf_camel_gapTreatment = -1; /* GapTreatment */
static int hf_camel_calledPartyNumber = -1; /* CalledPartyNumber */
-static int hf_camel_callingPartyNumber = -1; /* CallingPartyNumber */
static int hf_camel_cGEncountered = -1; /* CGEncountered */
+static int hf_camel_locationNumber = -1; /* LocationNumber */
static int hf_camel_highLayerCompatibility = -1; /* HighLayerCompatibility */
static int hf_camel_additionalCallingPartyNumber = -1; /* AdditionalCallingPartyNumber */
static int hf_camel_bearerCapability = -1; /* BearerCapability */
-static int hf_camel_cause = -1; /* Cause */
static int hf_camel_cug_Index = -1; /* CUG_Index */
static int hf_camel_subscriberState = -1; /* SubscriberState */
-static int hf_camel_locationInformation = -1; /* LocationInformation */
-static int hf_camel_ext_basicServiceCode = -1; /* Ext_BasicServiceCode */
-static int hf_camel_callReferenceNumber = -1; /* CallReferenceNumber */
static int hf_camel_mscAddress = -1; /* ISDN_AddressString */
static int hf_camel_calledPartyBCDNumber = -1; /* CalledPartyBCDNumber */
static int hf_camel_timeAndTimezone = -1; /* TimeAndTimezone */
@@ -457,6 +543,30 @@ static int hf_camel_active = -1; /* BOOLEAN */
static int hf_camel_chargingRollOver = -1; /* ChargingRollOver */
static int hf_camel_problem = -1; /* T_problem */
static int hf_camel_operation = -1; /* InvokeID */
+/* named bits */
+static int hf_camel_SupportedCamelPhases_phase1 = -1;
+static int hf_camel_SupportedCamelPhases_phase2 = -1;
+static int hf_camel_SupportedCamelPhases_phase3 = -1;
+static int hf_camel_SupportedCamelPhases_phase4 = -1;
+static int hf_camel_OfferedCamel4Functionalities_initiateCallAttempt = -1;
+static int hf_camel_OfferedCamel4Functionalities_splitLeg = -1;
+static int hf_camel_OfferedCamel4Functionalities_moveLeg = -1;
+static int hf_camel_OfferedCamel4Functionalities_disconnectLeg = -1;
+static int hf_camel_OfferedCamel4Functionalities_entityReleased = -1;
+static int hf_camel_OfferedCamel4Functionalities_dfc_WithArgument = -1;
+static int hf_camel_OfferedCamel4Functionalities_playTone = -1;
+static int hf_camel_OfferedCamel4Functionalities_dtmf_MidCall = -1;
+static int hf_camel_OfferedCamel4Functionalities_chargingIndicator = -1;
+static int hf_camel_OfferedCamel4Functionalities_alertingDP = -1;
+static int hf_camel_OfferedCamel4Functionalities_locationAtAlerting = -1;
+static int hf_camel_OfferedCamel4Functionalities_changeOfPositionDP = -1;
+static int hf_camel_OfferedCamel4Functionalities_or_Interactions = -1;
+static int hf_camel_OfferedCamel4Functionalities_warningToneEnhancements = -1;
+static int hf_camel_OfferedCamel4Functionalities_cf_Enhancements = -1;
+static int hf_camel_OfferedCamel4Functionalities_subscribedEnhancedDialledServices = -1;
+static int hf_camel_OfferedCamel4Functionalities_servingNetworkEnhancedDialledServices = -1;
+static int hf_camel_OfferedCamel4Functionalities_criteriaForChangeOfPositionDP = -1;
+static int hf_camel_OfferedCamel4Functionalities_serviceChangeDP = -1;
/*--- End of included file: packet-camel-hf.c ---*/
@@ -490,28 +600,39 @@ static gint ett_camel_PBLocationNumber = -1;
static gint ett_camel_PBCalledPartyBCDNumber = -1;
static gint ett_camel_AChBillingChargingCharacteristics = -1;
static gint ett_camel_T_actimeDurationCharging = -1;
+static gint ett_camel_AChChargingAddress = -1;
static gint ett_camel_AOCBeforeAnswer = -1;
static gint ett_camel_AOCGprs = -1;
static gint ett_camel_AOCSubsequent = -1;
+static gint ett_camel_AudibleIndicator = -1;
static gint ett_camel_BackwardServiceInteractionInd = -1;
static gint ett_camel_BasicGapCriteria = -1;
static gint ett_camel_T_calledAddressAndService = -1;
static gint ett_camel_T_callingAddressAndService = -1;
static gint ett_camel_BCSMEvent = -1;
+static gint ett_camel_BCSM_Failure = -1;
static gint ett_camel_BearerCapability = -1;
+static gint ett_camel_Burst = -1;
+static gint ett_camel_BurstList = -1;
static gint ett_camel_CAI_Gsm0224 = -1;
-static gint ett_camel_CamelAChBillingChargingCharacteristics = -1;
+static gint ett_camel_CallSegmentFailure = -1;
+static gint ett_camel_CallSegmentToCancel = -1;
+static gint ett_camel_CAMEL_AChBillingChargingCharacteristics = -1;
static gint ett_camel_T_timeDurationCharging = -1;
-static gint ett_camel_CamelCallResult = -1;
+static gint ett_camel_CAMEL_CallResult = -1;
static gint ett_camel_T_timeDurationChargingResult = -1;
-static gint ett_camel_CamelFCIBillingChargingCharacteristics = -1;
+static gint ett_camel_CAMEL_FCIBillingChargingCharacteristics = -1;
static gint ett_camel_T_fCIBCCCAMELsequence1 = -1;
-static gint ett_camel_CamelFCIGPRSBillingChargingCharacteristics = -1;
+static gint ett_camel_CAMEL_FCIGPRSBillingChargingCharacteristics = -1;
static gint ett_camel_T_fCIBCCCAMELsequence2 = -1;
-static gint ett_camel_CamelFCISMSBillingChargingCharacteristics = -1;
+static gint ett_camel_CAMEL_FCISMSBillingChargingCharacteristics = -1;
static gint ett_camel_T_fCIBCCCAMELsequence3 = -1;
-static gint ett_camel_CamelSCIBillingChargingCharacteristics = -1;
+static gint ett_camel_CAMEL_SCIBillingChargingCharacteristics = -1;
+static gint ett_camel_CAMEL_SCIBillingChargingCharacteristicsAlt = -1;
static gint ett_camel_CamelSCIGPRSBillingChargingCharacteristics = -1;
+static gint ett_camel_ChangeOfPositionControlInfo = -1;
+static gint ett_camel_ChangeOfLocation = -1;
+static gint ett_camel_ChangeOfLocationAlt = -1;
static gint ett_camel_ChargingCharacteristics = -1;
static gint ett_camel_ChargingResult = -1;
static gint ett_camel_ChargingRollOver = -1;
@@ -520,6 +641,10 @@ static gint ett_camel_CollectedInfo = -1;
static gint ett_camel_CompoundCriteria = -1;
static gint ett_camel_DestinationRoutingAddress = -1;
static gint ett_camel_DpSpecificCriteria = -1;
+static gint ett_camel_DpSpecificCriteriaAlt = -1;
+static gint ett_camel_DpSpecificInfoAlt = -1;
+static gint ett_camel_T_oServiceChangeSpecificInfo = -1;
+static gint ett_camel_T_tServiceChangeSpecificInfo = -1;
static gint ett_camel_ElapsedTime = -1;
static gint ett_camel_T_timeGPRSIfTariffSwitch = -1;
static gint ett_camel_ElapsedTimeRollOver = -1;
@@ -530,14 +655,25 @@ static gint ett_camel_T_routeSelectFailureSpecificInfo = -1;
static gint ett_camel_T_oCalledPartyBusySpecificInfo = -1;
static gint ett_camel_T_oNoAnswerSpecificInfo = -1;
static gint ett_camel_T_oAnswerSpecificInfo = -1;
+static gint ett_camel_T_oMidCallSpecificInfo = -1;
+static gint ett_camel_T_midCallEvents = -1;
static gint ett_camel_T_oDisconnectSpecificInfo = -1;
static gint ett_camel_T_tBusySpecificInfo = -1;
static gint ett_camel_T_tNoAnswerSpecificInfo = -1;
static gint ett_camel_T_tAnswerSpecificInfo = -1;
+static gint ett_camel_T_tMidCallSpecificInfo = -1;
+static gint ett_camel_T_midCallEvents1 = -1;
static gint ett_camel_T_tDisconnectSpecificInfo = -1;
+static gint ett_camel_T_oTermSeizedSpecificInfo = -1;
+static gint ett_camel_T_callAcceptedSpecificInfo = -1;
+static gint ett_camel_T_oAbandonSpecificInfo = -1;
+static gint ett_camel_T_oChangeOfPositionSpecificInfo = -1;
+static gint ett_camel_T_tChangeOfPositionSpecificInfo = -1;
static gint ett_camel_EventSpecificInformationSMS = -1;
static gint ett_camel_T_o_smsFailureSpecificInfo = -1;
static gint ett_camel_T_o_smsSubmittedSpecificInfo = -1;
+static gint ett_camel_T_t_smsFailureSpecificInfo = -1;
+static gint ett_camel_T_t_smsDeliverySpecificInfo = -1;
static gint ett_camel_Extensions = -1;
static gint ett_camel_ForwardServiceInteractionInd = -1;
static gint ett_camel_GapCriteria = -1;
@@ -546,6 +682,7 @@ static gint ett_camel_GapOnService = -1;
static gint ett_camel_GapTreatment = -1;
static gint ett_camel_GenericNumbers = -1;
static gint ett_camel_GPRS_QoS = -1;
+static gint ett_camel_GPRS_QoS_Extension = -1;
static gint ett_camel_GPRSEvent = -1;
static gint ett_camel_GPRSEventSpecificInformation = -1;
static gint ett_camel_T_attachChangeOfPositionSpecificInformation = -1;
@@ -557,11 +694,16 @@ static gint ett_camel_T_pDPContextEstablishmentAcknowledgementSpecificInformatio
static gint ett_camel_GPRSMSClass = -1;
static gint ett_camel_InbandInfo = -1;
static gint ett_camel_InformationToSend = -1;
+static gint ett_camel_LegOrCallSegment = -1;
static gint ett_camel_LocationInformationGPRS = -1;
static gint ett_camel_MessageID = -1;
static gint ett_camel_T_text = -1;
static gint ett_camel_SEQUENCE_SIZE_1_16_OF_Integer4 = -1;
static gint ett_camel_T_variableMessage = -1;
+static gint ett_camel_MetDPCriteriaList = -1;
+static gint ett_camel_MetDPCriterion = -1;
+static gint ett_camel_MetDPCriterionAlt = -1;
+static gint ett_camel_MidCallControlInfo = -1;
static gint ett_camel_QualityOfService = -1;
static gint ett_camel_ReceivingSideID = -1;
static gint ett_camel_RequestedInformationList = -1;
@@ -571,8 +713,8 @@ static gint ett_camel_RequestedInformationValue = -1;
static gint ett_camel_SendingSideID = -1;
static gint ett_camel_ServiceInteractionIndicatorsTwo = -1;
static gint ett_camel_SMSEvent = -1;
-static gint ett_camel_TimeInformation = -1;
static gint ett_camel_TimeIfTariffSwitch = -1;
+static gint ett_camel_TimeInformation = -1;
static gint ett_camel_Tone = -1;
static gint ett_camel_TransferredVolume = -1;
static gint ett_camel_T_volumeIfTariffSwitch = -1;
@@ -597,11 +739,15 @@ static gint ett_camel_SendChargingInformationGPRSArg = -1;
static gint ett_camel_SubscriberState = -1;
static gint ett_camel_PrivateExtensionList = -1;
static gint ett_camel_CellIdOrLAI = -1;
-static gint ett_camel_Ext_BasicServiceCode = -1;
static gint ett_camel_LegID = -1;
static gint ett_camel_VariablePartsArray = -1;
static gint ett_camel_InitialDPArgExtension = -1;
-static gint ett_camel_LocationInformation = -1;
+static gint ett_camel_InitiateCallAttemptArg = -1;
+static gint ett_camel_InitiateCallAttemptRes = -1;
+static gint ett_camel_MoveLegArg = -1;
+static gint ett_camel_PlayToneArg = -1;
+static gint ett_camel_SupportedCamelPhases = -1;
+static gint ett_camel_OfferedCamel4Functionalities = -1;
static gint ett_camel_EventReportGPRSArg = -1;
static gint ett_camel_ExtensionField = -1;
static gint ett_camel_ApplyChargingArg = -1;
@@ -612,10 +758,15 @@ static gint ett_camel_ConnectArg = -1;
static gint ett_camel_ConnectToResourceArg = -1;
static gint ett_camel_T_resourceAddress = -1;
static gint ett_camel_ContinueWithArgumentArg = -1;
+static gint ett_camel_ContinueWithArgumentArgExtension = -1;
+static gint ett_camel_DisconnectLegArg = -1;
+static gint ett_camel_EntityReleasedArg = -1;
+static gint ett_camel_DisconnectForwardConnectionWithArgumentArg = -1;
static gint ett_camel_EstablishTemporaryConnectionArg = -1;
static gint ett_camel_EventReportBCSMArg = -1;
static gint ett_camel_ResetTimerArg = -1;
static gint ett_camel_SendChargingInformationArg = -1;
+static gint ett_camel_SplitLegArg = -1;
static gint ett_camel_CAPGPRSReferenceNumber = -1;
static gint ett_camel_EventReportSMSArg = -1;
static gint ett_camel_RequestReportSMSEventArg = -1;
@@ -720,6 +871,66 @@ static const value_string camel_number_plan_values[] = {
/*--- Fields for imported types ---*/
+static int dissect_cellGlobalId_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_CellGlobalIdOrServiceAreaIdFixedLength(TRUE, tvb, offset, pinfo, tree, hf_camel_cellGlobalId);
+}
+static int dissect_serviceAreaId_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_CellGlobalIdOrServiceAreaIdFixedLength(TRUE, tvb, offset, pinfo, tree, hf_camel_serviceAreaId);
+}
+static int dissect_ext_basicServiceCode_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_Ext_BasicServiceCode(TRUE, tvb, offset, pinfo, tree, hf_camel_ext_basicServiceCode);
+}
+static int dissect_ext_basicServiceCode2_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_Ext_BasicServiceCode(TRUE, tvb, offset, pinfo, tree, hf_camel_ext_basicServiceCode2);
+}
+static int dissect_locationInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_LocationInformation(TRUE, tvb, offset, pinfo, tree, hf_camel_locationInformation);
+}
+static int dissect_short_QoS_format_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_QoS_Subscribed(TRUE, tvb, offset, pinfo, tree, hf_camel_short_QoS_format);
+}
+static int dissect_long_QoS_format_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_Ext_QoS_Subscribed(TRUE, tvb, offset, pinfo, tree, hf_camel_long_QoS_format);
+}
+static int dissect_supplement_to_long_QoS_format_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_Ext2_QoS_Subscribed(TRUE, tvb, offset, pinfo, tree, hf_camel_supplement_to_long_QoS_format);
+}
+static int dissect_chargingID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_GPRSChargingID(TRUE, tvb, offset, pinfo, tree, hf_camel_chargingID);
+}
+static int dissect_routeingAreaIdentity_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_RAIdentity(TRUE, tvb, offset, pinfo, tree, hf_camel_routeingAreaIdentity);
+}
+static int dissect_geographicalInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_GeographicalInformation(TRUE, tvb, offset, pinfo, tree, hf_camel_geographicalInformation);
+}
+static int dissect_selectedLSAIdentity_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_LSAIdentity(TRUE, tvb, offset, pinfo, tree, hf_camel_selectedLSAIdentity);
+}
+static int dissect_enteringCellGlobalId_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_CellGlobalIdOrServiceAreaIdFixedLength(TRUE, tvb, offset, pinfo, tree, hf_camel_enteringCellGlobalId);
+}
+static int dissect_leavingCellGlobalId_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_CellGlobalIdOrServiceAreaIdFixedLength(TRUE, tvb, offset, pinfo, tree, hf_camel_leavingCellGlobalId);
+}
+static int dissect_enteringServiceAreaId_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_CellGlobalIdOrServiceAreaIdFixedLength(TRUE, tvb, offset, pinfo, tree, hf_camel_enteringServiceAreaId);
+}
+static int dissect_leavingServiceAreaId_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_CellGlobalIdOrServiceAreaIdFixedLength(TRUE, tvb, offset, pinfo, tree, hf_camel_leavingServiceAreaId);
+}
+static int dissect_ms_Classmark2_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_MS_Classmark2(TRUE, tvb, offset, pinfo, tree, hf_camel_ms_Classmark2);
+}
+static int dissect_iMEI_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_IMEI(TRUE, tvb, offset, pinfo, tree, hf_camel_iMEI);
+}
+static int dissect_uu_Data_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_UU_Data(TRUE, tvb, offset, pinfo, tree, hf_camel_uu_Data);
+}
+static int dissect_locationInformationMSC_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_gsm_map_LocationInformation(TRUE, tvb, offset, pinfo, tree, hf_camel_locationInformationMSC);
+}
@@ -1371,8 +1582,11 @@ static int dissect_releaseIfdurationExceeded_impl(packet_info *pinfo, proto_tree
static int dissect_actone_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_camel_actone);
}
-static int dissect_callActive_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_camel_callActive);
+static int dissect_tone(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_camel_tone);
+}
+static int dissect_legActive_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_camel_legActive);
}
static int dissect_interruptableAnnInd_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_camel_interruptableAnnInd);
@@ -1482,8 +1696,20 @@ dissect_camel_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_
return offset;
}
-static int dissect_callReleasedAtTcpExpiry_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_callReleasedAtTcpExpiry);
+static int dissect_automaticRearm_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_automaticRearm);
+}
+static int dissect_callLegReleasedAtTcpExpiry_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_callLegReleasedAtTcpExpiry);
+}
+static int dissect_inter_SystemHandOver_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_inter_SystemHandOver);
+}
+static int dissect_inter_PLMNHandOver_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_inter_PLMNHandOver);
+}
+static int dissect_inter_MSCHandOver_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_inter_MSCHandOver);
}
static int dissect_or_Call_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_or_Call);
@@ -1506,6 +1732,12 @@ static int dissect_secondaryPDPContext_impl(packet_info *pinfo, proto_tree *tree
static int dissect_saiPresent_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_saiPresent);
}
+static int dissect_inter_SystemHandOverToUMTS_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_inter_SystemHandOverToUMTS);
+}
+static int dissect_inter_SystemHandOverToGSM_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_inter_SystemHandOverToGSM);
+}
static int dissect_nonCUGCall_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_nonCUGCall);
}
@@ -1524,15 +1756,33 @@ static int dissect_camelBusy_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t
static int dissect_notProvidedFromVLR_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_notProvidedFromVLR);
}
-static int dissect_currentLocationRetrieved_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_currentLocationRetrieved);
+static int dissect_enhancedDialledServicesAllowed_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_enhancedDialledServicesAllowed);
+}
+static int dissect_suppress_T_CSI_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_suppress_T_CSI);
}
static int dissect_cug_OutgoingAccess_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_cug_OutgoingAccess);
}
+static int dissect_bor_InterrogationRequested_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_bor_InterrogationRequested);
+}
static int dissect_none_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_none);
}
+static int dissect_suppress_O_CSI_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_suppress_O_CSI);
+}
+static int dissect_suppress_D_CSI_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_suppress_D_CSI);
+}
+static int dissect_suppress_N_CSI_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_suppress_N_CSI);
+}
+static int dissect_suppressOutgoingCallBarring_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_suppressOutgoingCallBarring);
+}
static int dissect_gsm_ForwardingPending_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_NULL(TRUE, tvb, offset, pinfo, tree, hf_camel_gsm_ForwardingPending);
}
@@ -1645,6 +1895,106 @@ static int dissect_aChBillingChargingCharacteristics_impl(packet_info *pinfo, pr
static int
+dissect_camel_LegType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_receivingSideID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LegType(TRUE, tvb, offset, pinfo, tree, hf_camel_receivingSideID);
+}
+static int dissect_sendingSideID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LegType(TRUE, tvb, offset, pinfo, tree, hf_camel_sendingSideID);
+}
+
+
+static const value_string camel_LegID_vals[] = {
+ { 0, "sendingSideID" },
+ { 1, "receivingSideID" },
+ { 0, NULL }
+};
+
+static const ber_choice_t LegID_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_sendingSideID_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_receivingSideID_impl },
+ { 0, 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_LegID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ LegID_choice, hf_index, ett_camel_LegID,
+ NULL);
+
+ return offset;
+}
+static int dissect_legID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LegID(TRUE, tvb, offset, pinfo, tree, hf_camel_legID);
+}
+static int dissect_legID6_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LegID(TRUE, tvb, offset, pinfo, tree, hf_camel_legID6);
+}
+static int dissect_legToBeCreated_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LegID(TRUE, tvb, offset, pinfo, tree, hf_camel_legToBeCreated);
+}
+static int dissect_legIDToMove_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LegID(TRUE, tvb, offset, pinfo, tree, hf_camel_legIDToMove);
+}
+static int dissect_legToBeReleased_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LegID(TRUE, tvb, offset, pinfo, tree, hf_camel_legToBeReleased);
+}
+static int dissect_legToBeSplit_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LegID(TRUE, tvb, offset, pinfo, tree, hf_camel_legToBeSplit);
+}
+
+
+
+static int
+dissect_camel_CallSegmentID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_srfConnection_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_CallSegmentID(TRUE, tvb, offset, pinfo, tree, hf_camel_srfConnection);
+}
+static int dissect_callSegmentID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_CallSegmentID(TRUE, tvb, offset, pinfo, tree, hf_camel_callSegmentID);
+}
+static int dissect_newCallSegment_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_CallSegmentID(TRUE, tvb, offset, pinfo, tree, hf_camel_newCallSegment);
+}
+
+
+static const value_string camel_AChChargingAddress_vals[] = {
+ { 2, "legID" },
+ { 50, "srfConnection" },
+ { 0, NULL }
+};
+
+static const ber_choice_t AChChargingAddress_choice[] = {
+ { 2, BER_CLASS_CON, 2, 0, dissect_legID_impl },
+ { 50, BER_CLASS_CON, 50, 0, dissect_srfConnection_impl },
+ { 0, 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_AChChargingAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ AChChargingAddress_choice, hf_index, ett_camel_AChChargingAddress,
+ NULL);
+
+ return offset;
+}
+static int dissect_aChChargingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_AChChargingAddress(TRUE, tvb, offset, pinfo, tree, hf_camel_aChChargingAddress);
+}
+
+
+
+static int
dissect_camel_Digits(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -1657,6 +2007,12 @@ static int dissect_calledAddressValue_impl(packet_info *pinfo, proto_tree *tree,
static int dissect_callingAddressValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_Digits(TRUE, tvb, offset, pinfo, tree, hf_camel_callingAddressValue);
}
+static int dissect_dTMFDigitsCompleted_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_Digits(TRUE, tvb, offset, pinfo, tree, hf_camel_dTMFDigitsCompleted);
+}
+static int dissect_dTMFDigitsTimeOut_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_Digits(TRUE, tvb, offset, pinfo, tree, hf_camel_dTMFDigitsTimeOut);
+}
static int dissect_number_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_Digits(TRUE, tvb, offset, pinfo, tree, hf_camel_number);
}
@@ -1848,6 +2204,118 @@ static int dissect_assistingSSPIPRoutingAddress_impl(packet_info *pinfo, proto_t
}
+
+static int
+dissect_camel_INTEGER_1_1200(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_burstInterval_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_1200(TRUE, tvb, offset, pinfo, tree, hf_camel_burstInterval);
+}
+static int dissect_warningPeriod_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_1200(TRUE, tvb, offset, pinfo, tree, hf_camel_warningPeriod);
+}
+
+
+
+static int
+dissect_camel_INTEGER_1_3(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_numberOfBursts_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_3(TRUE, tvb, offset, pinfo, tree, hf_camel_numberOfBursts);
+}
+static int dissect_numberOfTonesInBurst_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_3(TRUE, tvb, offset, pinfo, tree, hf_camel_numberOfTonesInBurst);
+}
+
+
+
+static int
+dissect_camel_INTEGER_1_20(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_toneDuration_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_20(TRUE, tvb, offset, pinfo, tree, hf_camel_toneDuration);
+}
+static int dissect_toneInterval_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_20(TRUE, tvb, offset, pinfo, tree, hf_camel_toneInterval);
+}
+
+
+static const ber_sequence_t Burst_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_numberOfBursts_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_burstInterval_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_numberOfTonesInBurst_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_toneDuration_impl },
+ { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_toneInterval_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_Burst(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ Burst_sequence, hf_index, ett_camel_Burst);
+
+ return offset;
+}
+static int dissect_bursts_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_Burst(TRUE, tvb, offset, pinfo, tree, hf_camel_bursts);
+}
+
+
+static const ber_sequence_t BurstList_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_warningPeriod_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_bursts_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_BurstList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ BurstList_sequence, hf_index, ett_camel_BurstList);
+
+ return offset;
+}
+static int dissect_burstList_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_BurstList(TRUE, tvb, offset, pinfo, tree, hf_camel_burstList);
+}
+
+
+static const value_string camel_AudibleIndicator_vals[] = {
+ { 0, "tone" },
+ { 1, "burstList" },
+ { 0, NULL }
+};
+
+static const ber_choice_t AudibleIndicator_choice[] = {
+ { 0, BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_NOOWNTAG, dissect_tone },
+ { 1, BER_CLASS_CON, 1, 0, dissect_burstList_impl },
+ { 0, 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_AudibleIndicator(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ AudibleIndicator_choice, hf_index, ett_camel_AudibleIndicator,
+ NULL);
+
+ return offset;
+}
+static int dissect_audibleIndicator_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_AudibleIndicator(TRUE, tvb, offset, pinfo, tree, hf_camel_audibleIndicator);
+}
+
+
static const ber_sequence_t BackwardServiceInteractionInd_sequence[] = {
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_conferenceTreatmentIndicator_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callCompletionTreatmentIndicator_impl },
@@ -1966,19 +2434,28 @@ static int dissect_basicGapCriteria_impl(packet_info *pinfo, proto_tree *tree, t
static const value_string camel_EventTypeBCSM_vals[] = {
{ 2, "collectedInfo" },
+ { 2, "collectedInfo" },
{ 3, "analyzedInformation" },
{ 4, "routeSelectFailure" },
{ 5, "oCalledPartyBusy" },
{ 6, "oNoAnswer" },
{ 7, "oAnswer" },
+ { 8, "oMidCall" },
{ 9, "oDisconnect" },
{ 10, "oAbandon" },
{ 12, "termAttemptAuthorized" },
{ 13, "tBusy" },
{ 14, "tNoAnswer" },
{ 15, "tAnswer" },
+ { 16, "tMidCall" },
{ 17, "tDisconnect" },
{ 18, "tAbandon" },
+ { 19, "oTermSeized" },
+ { 27, "callAccepted" },
+ { 50, "oChangeOfPosition" },
+ { 51, "tChangeOfPosition" },
+ { 52, "oServiceChange" },
+ { 53, "tServiceChange" },
{ 0, NULL }
};
@@ -2017,52 +2494,206 @@ static int dissect_monitorMode_impl(packet_info *pinfo, proto_tree *tree, tvbuff
static int
-dissect_camel_LegType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_INTEGER_1_30(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_minimumNbOfDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_30(TRUE, tvb, offset, pinfo, tree, hf_camel_minimumNbOfDigits);
+}
+static int dissect_maximumNbOfDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_30(TRUE, tvb, offset, pinfo, tree, hf_camel_maximumNbOfDigits);
+}
+static int dissect_minimumNumberOfDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_30(TRUE, tvb, offset, pinfo, tree, hf_camel_minimumNumberOfDigits);
+}
+static int dissect_maximumNumberOfDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_30(TRUE, tvb, offset, pinfo, tree, hf_camel_maximumNumberOfDigits);
+}
+
+
+
+static int
+dissect_camel_OCTET_STRING_SIZE_1_2(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
-static int dissect_receivingSideID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_LegType(TRUE, tvb, offset, pinfo, tree, hf_camel_receivingSideID);
+static int dissect_endOfReplyDigit_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_OCTET_STRING_SIZE_1_2(TRUE, tvb, offset, pinfo, tree, hf_camel_endOfReplyDigit);
}
-static int dissect_sendingSideID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_LegType(TRUE, tvb, offset, pinfo, tree, hf_camel_sendingSideID);
+static int dissect_cancelDigit_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_OCTET_STRING_SIZE_1_2(TRUE, tvb, offset, pinfo, tree, hf_camel_cancelDigit);
+}
+static int dissect_startDigit_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_OCTET_STRING_SIZE_1_2(TRUE, tvb, offset, pinfo, tree, hf_camel_startDigit);
}
-static const value_string camel_LegID_vals[] = {
- { 0, "sendingSideID" },
- { 1, "receivingSideID" },
+
+static int
+dissect_camel_INTEGER_1_127(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_firstDigitTimeOut_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_camel_firstDigitTimeOut);
+}
+static int dissect_interDigitTimeOut_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_camel_interDigitTimeOut);
+}
+static int dissect_numberOfRepetitions_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_camel_numberOfRepetitions);
+}
+static int dissect_interDigitTimeout_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_camel_interDigitTimeout);
+}
+
+
+static const ber_sequence_t MidCallControlInfo_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_minimumNumberOfDigits_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_maximumNumberOfDigits_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_endOfReplyDigit_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cancelDigit_impl },
+ { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_startDigit_impl },
+ { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_interDigitTimeout_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_MidCallControlInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ MidCallControlInfo_sequence, hf_index, ett_camel_MidCallControlInfo);
+
+ return offset;
+}
+static int dissect_midCallControlInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_MidCallControlInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_midCallControlInfo);
+}
+
+
+
+static int
+dissect_camel_LAIFixedLength(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_locationAreaId_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LAIFixedLength(TRUE, tvb, offset, pinfo, tree, hf_camel_locationAreaId);
+}
+static int dissect_enteringLocationAreaId_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LAIFixedLength(TRUE, tvb, offset, pinfo, tree, hf_camel_enteringLocationAreaId);
+}
+static int dissect_leavingLocationAreaId_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LAIFixedLength(TRUE, tvb, offset, pinfo, tree, hf_camel_leavingLocationAreaId);
+}
+static int dissect_laiFixedLength_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LAIFixedLength(TRUE, tvb, offset, pinfo, tree, hf_camel_laiFixedLength);
+}
+
+
+static const ber_sequence_t ChangeOfLocationAlt_sequence[] = {
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_ChangeOfLocationAlt(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ ChangeOfLocationAlt_sequence, hf_index, ett_camel_ChangeOfLocationAlt);
+
+ return offset;
+}
+static int dissect_changeOfLocationAlt_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_ChangeOfLocationAlt(TRUE, tvb, offset, pinfo, tree, hf_camel_changeOfLocationAlt);
+}
+
+
+static const value_string camel_ChangeOfLocation_vals[] = {
+ { 0, "cellGlobalId" },
+ { 1, "serviceAreaId" },
+ { 2, "locationAreaId" },
+ { 3, "inter-SystemHandOver" },
+ { 4, "inter-PLMNHandOver" },
+ { 5, "inter-MSCHandOver" },
+ { 6, "changeOfLocationAlt" },
{ 0, NULL }
};
-static const ber_choice_t LegID_choice[] = {
- { 0, BER_CLASS_CON, 0, 0, dissect_sendingSideID_impl },
- { 1, BER_CLASS_CON, 1, 0, dissect_receivingSideID_impl },
+static const ber_choice_t ChangeOfLocation_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_cellGlobalId_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_serviceAreaId_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_locationAreaId_impl },
+ { 3, BER_CLASS_CON, 3, 0, dissect_inter_SystemHandOver_impl },
+ { 4, BER_CLASS_CON, 4, 0, dissect_inter_PLMNHandOver_impl },
+ { 5, BER_CLASS_CON, 5, 0, dissect_inter_MSCHandOver_impl },
+ { 6, BER_CLASS_CON, 6, 0, dissect_changeOfLocationAlt_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_camel_LegID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_ChangeOfLocation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- LegID_choice, hf_index, ett_camel_LegID,
+ ChangeOfLocation_choice, hf_index, ett_camel_ChangeOfLocation,
NULL);
return offset;
}
-static int dissect_legID6_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_LegID(TRUE, tvb, offset, pinfo, tree, hf_camel_legID6);
+static int dissect_ChangeOfPositionControlInfo_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_ChangeOfLocation(FALSE, tvb, offset, pinfo, tree, hf_camel_ChangeOfPositionControlInfo_item);
+}
+
+
+static const ber_sequence_t ChangeOfPositionControlInfo_sequence_of[1] = {
+ { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ChangeOfPositionControlInfo_item },
+};
+
+static int
+dissect_camel_ChangeOfPositionControlInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
+ ChangeOfPositionControlInfo_sequence_of, hf_index, ett_camel_ChangeOfPositionControlInfo);
+
+ return offset;
+}
+static int dissect_changeOfPositionControlInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_ChangeOfPositionControlInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_changeOfPositionControlInfo);
+}
+
+
+static const ber_sequence_t DpSpecificCriteriaAlt_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_changeOfPositionControlInfo_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_DpSpecificCriteriaAlt(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ DpSpecificCriteriaAlt_sequence, hf_index, ett_camel_DpSpecificCriteriaAlt);
+
+ return offset;
+}
+static int dissect_dpSpecificCriteriaAlt_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_DpSpecificCriteriaAlt(TRUE, tvb, offset, pinfo, tree, hf_camel_dpSpecificCriteriaAlt);
}
static const value_string camel_DpSpecificCriteria_vals[] = {
{ 1, "applicationTimer" },
+ { 2, "midCallControlInfo" },
+ { 3, "dpSpecificCriteriaAlt" },
{ 0, NULL }
};
static const ber_choice_t DpSpecificCriteria_choice[] = {
{ 1, BER_CLASS_CON, 1, 0, dissect_applicationTimer_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_midCallControlInfo_impl },
+ { 3, BER_CLASS_CON, 3, 0, dissect_dpSpecificCriteriaAlt_impl },
{ 0, 0, 0, 0, NULL }
};
@@ -2084,6 +2715,7 @@ static const ber_sequence_t BCSMEvent_sequence[] = {
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_monitorMode_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID6_impl },
{ BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_dpSpecificCriteria_impl },
+ { BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_automaticRearm_impl },
{ 0, 0, 0, NULL }
};
@@ -2101,14 +2733,67 @@ static int dissect_BCSMEventArray_item(packet_info *pinfo, proto_tree *tree, tvb
static int
-dissect_camel_OCTET_STRING_SIZE_2_cAPSpecificBoundSetmaxBearerCapabilityLength(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_Cause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
+static int dissect_cause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_Cause(TRUE, tvb, offset, pinfo, tree, hf_camel_cause);
+}
+static int dissect_failureCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_Cause(TRUE, tvb, offset, pinfo, tree, hf_camel_failureCause);
+}
+static int dissect_busyCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_Cause(TRUE, tvb, offset, pinfo, tree, hf_camel_busyCause);
+}
+static int dissect_releaseCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_Cause(TRUE, tvb, offset, pinfo, tree, hf_camel_releaseCause);
+}
+static int dissect_releaseCauseValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_Cause(TRUE, tvb, offset, pinfo, tree, hf_camel_releaseCauseValue);
+}
+
+
+static const ber_sequence_t BCSM_Failure_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cause_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_BCSM_Failure(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ BCSM_Failure_sequence, hf_index, ett_camel_BCSM_Failure);
+
+ return offset;
+}
+static int dissect_bCSM_Failure_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_BCSM_Failure(TRUE, tvb, offset, pinfo, tree, hf_camel_bCSM_Failure);
+}
+
+
+
+static int
+dissect_camel_BearerCap(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+
+ tvbuff_t *parameter_tvb;
+
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ &parameter_tvb);
+
+
+ if (!parameter_tvb)
+ return offset;
+
+ dissect_q931_bearer_capability_ie(parameter_tvb, 0, tvb_length_remaining(parameter_tvb,0), tree);
+
+
+ return offset;
+}
static int dissect_bearerCap_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_OCTET_STRING_SIZE_2_cAPSpecificBoundSetmaxBearerCapabilityLength(TRUE, tvb, offset, pinfo, tree, hf_camel_bearerCap);
+ return dissect_camel_BearerCap(TRUE, tvb, offset, pinfo, tree, hf_camel_bearerCap);
}
@@ -2130,6 +2815,9 @@ dissect_camel_BearerCapability(gboolean implicit_tag _U_, tvbuff_t *tvb, int off
return offset;
}
+static int dissect_bearerCapability2_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_BearerCapability(TRUE, tvb, offset, pinfo, tree, hf_camel_bearerCapability2);
+}
static int dissect_bearerCapability_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_BearerCapability(TRUE, tvb, offset, pinfo, tree, hf_camel_bearerCapability);
}
@@ -2164,11 +2852,8 @@ static int dissect_sgsn_Number_impl(packet_info *pinfo, proto_tree *tree, tvbuff
static int dissect_gmscAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_ISDN_AddressString(TRUE, tvb, offset, pinfo, tree, hf_camel_gmscAddress);
}
-static int dissect_vlr_number_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_ISDN_AddressString(TRUE, tvb, offset, pinfo, tree, hf_camel_vlr_number);
-}
-static int dissect_msc_number_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_ISDN_AddressString(TRUE, tvb, offset, pinfo, tree, hf_camel_msc_number);
+static int dissect_gsmSCFAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_ISDN_AddressString(TRUE, tvb, offset, pinfo, tree, hf_camel_gsmSCFAddress);
}
static int dissect_callingPartysNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_ISDN_AddressString(TRUE, tvb, offset, pinfo, tree, hf_camel_callingPartysNumber);
@@ -2231,6 +2916,9 @@ static int dissect_DestinationRoutingAddress_item(packet_info *pinfo, proto_tree
static int dissect_destinationAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_CalledPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_camel_destinationAddress);
}
+static int dissect_forwardingDestinationNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_CalledPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_camel_forwardingDestinationNumber);
+}
static int dissect_calledPartyNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_CalledPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_camel_calledPartyNumber);
}
@@ -2278,8 +2966,8 @@ dissect_camel_ReceivingSideID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offs
return offset;
}
-static int dissect_partyToCharge3_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_ReceivingSideID(TRUE, tvb, offset, pinfo, tree, hf_camel_partyToCharge3);
+static int dissect_partyToCharge_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_ReceivingSideID(TRUE, tvb, offset, pinfo, tree, hf_camel_partyToCharge);
}
static int dissect_legID4_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_ReceivingSideID(TRUE, tvb, offset, pinfo, tree, hf_camel_legID4);
@@ -2358,12 +3046,29 @@ static int dissect_timeInformation_impl(packet_info *pinfo, proto_tree *tree, tv
}
+static const ber_sequence_t Extensions_sequence_of[1] = {
+ { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_Extensions_item },
+};
+
+static int
+dissect_camel_Extensions(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
+ Extensions_sequence_of, hf_index, ett_camel_Extensions);
+
+ return offset;
+}
+static int dissect_extensions1_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_Extensions(TRUE, tvb, offset, pinfo, tree, hf_camel_extensions1);
+}
+
+
static const ber_sequence_t T_timeDurationChargingResult_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_partyToCharge3_impl },
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_partyToCharge_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_timeInformation_impl },
- { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callActive_impl },
- { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callReleasedAtTcpExpiry_impl },
- { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_legActive_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callLegReleasedAtTcpExpiry_impl },
+ { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions1_impl },
+ { BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_aChChargingAddress_impl },
{ 0, 0, 0, NULL }
};
@@ -2379,20 +3084,20 @@ static int dissect_timeDurationChargingResult_impl(packet_info *pinfo, proto_tre
}
-static const value_string camel_CamelCallResult_vals[] = {
+static const value_string camel_CAMEL_CallResult_vals[] = {
{ 0, "timeDurationChargingResult" },
{ 0, NULL }
};
-static const ber_choice_t CamelCallResult_choice[] = {
+static const ber_choice_t CAMEL_CallResult_choice[] = {
{ 0, BER_CLASS_CON, 0, 0, dissect_timeDurationChargingResult_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_camel_CamelCallResult(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_CAMEL_CallResult(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- CamelCallResult_choice, hf_index, ett_camel_CamelCallResult,
+ CAMEL_CallResult_choice, hf_index, ett_camel_CAMEL_CallResult,
NULL);
return offset;
@@ -2402,17 +3107,78 @@ dissect_camel_CamelCallResult(gboolean implicit_tag _U_, tvbuff_t *tvb, int offs
static int
dissect_camel_CallResult(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_camel_CamelCallResult(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+ offset = dissect_camel_CAMEL_CallResult(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+
+
+static const ber_sequence_t CallSegmentFailure_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callSegmentID_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cause_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_CallSegmentFailure(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ CallSegmentFailure_sequence, hf_index, ett_camel_CallSegmentFailure);
+
+ return offset;
+}
+static int dissect_callSegmentFailure_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_CallSegmentFailure(TRUE, tvb, offset, pinfo, tree, hf_camel_callSegmentFailure);
+}
+
+
+
+static int
+dissect_camel_TCInvokeIdSet(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+
+
+
+static int
+dissect_camel_InvokeID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_camel_TCInvokeIdSet(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+static int dissect_invokeID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_InvokeID(TRUE, tvb, offset, pinfo, tree, hf_camel_invokeID);
+}
+static int dissect_operation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_InvokeID(TRUE, tvb, offset, pinfo, tree, hf_camel_operation);
+}
+
+
+static const ber_sequence_t CallSegmentToCancel_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_invokeID_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callSegmentID_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_CallSegmentToCancel(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ CallSegmentToCancel_sequence, hf_index, ett_camel_CallSegmentToCancel);
return offset;
}
+static int dissect_callSegmentToCancel_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_CallSegmentToCancel(TRUE, tvb, offset, pinfo, tree, hf_camel_callSegmentToCancel);
+}
static const ber_sequence_t T_timeDurationCharging_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_maxCallPeriodDuration_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseIfdurationExceeded_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_tariffSwitchInterval_impl },
- { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_actone_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_audibleIndicator_impl },
{ BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
{ 0, 0, 0, NULL }
};
@@ -2429,20 +3195,20 @@ static int dissect_timeDurationCharging_impl(packet_info *pinfo, proto_tree *tre
}
-static const value_string camel_CamelAChBillingChargingCharacteristics_vals[] = {
+static const value_string camel_CAMEL_AChBillingChargingCharacteristics_vals[] = {
{ 0, "timeDurationCharging" },
{ 0, NULL }
};
-static const ber_choice_t CamelAChBillingChargingCharacteristics_choice[] = {
+static const ber_choice_t CAMEL_AChBillingChargingCharacteristics_choice[] = {
{ 0, BER_CLASS_CON, 0, 0, dissect_timeDurationCharging_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_camel_CamelAChBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_CAMEL_AChBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- CamelAChBillingChargingCharacteristics_choice, hf_index, ett_camel_CamelAChBillingChargingCharacteristics,
+ CAMEL_AChBillingChargingCharacteristics_choice, hf_index, ett_camel_CAMEL_AChBillingChargingCharacteristics,
NULL);
return offset;
@@ -2513,20 +3279,20 @@ static int dissect_fCIBCCCAMELsequence1_impl(packet_info *pinfo, proto_tree *tre
}
-static const value_string camel_CamelFCIBillingChargingCharacteristics_vals[] = {
+static const value_string camel_CAMEL_FCIBillingChargingCharacteristics_vals[] = {
{ 0, "fCIBCCCAMELsequence1" },
{ 0, NULL }
};
-static const ber_choice_t CamelFCIBillingChargingCharacteristics_choice[] = {
+static const ber_choice_t CAMEL_FCIBillingChargingCharacteristics_choice[] = {
{ 0, BER_CLASS_CON, 0, 0, dissect_fCIBCCCAMELsequence1_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_camel_CamelFCIBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_CAMEL_FCIBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- CamelFCIBillingChargingCharacteristics_choice, hf_index, ett_camel_CamelFCIBillingChargingCharacteristics,
+ CAMEL_FCIBillingChargingCharacteristics_choice, hf_index, ett_camel_CAMEL_FCIBillingChargingCharacteristics,
NULL);
return offset;
@@ -2568,15 +3334,15 @@ static int dissect_fCIBCCCAMELsequence2_impl(packet_info *pinfo, proto_tree *tre
}
-static const ber_sequence_t CamelFCIGPRSBillingChargingCharacteristics_sequence[] = {
+static const ber_sequence_t CAMEL_FCIGPRSBillingChargingCharacteristics_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_fCIBCCCAMELsequence2_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_camel_CamelFCIGPRSBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_CAMEL_FCIGPRSBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- CamelFCIGPRSBillingChargingCharacteristics_sequence, hf_index, ett_camel_CamelFCIGPRSBillingChargingCharacteristics);
+ CAMEL_FCIGPRSBillingChargingCharacteristics_sequence, hf_index, ett_camel_CAMEL_FCIGPRSBillingChargingCharacteristics);
return offset;
}
@@ -2600,42 +3366,60 @@ static int dissect_fCIBCCCAMELsequence3_impl(packet_info *pinfo, proto_tree *tre
}
-static const value_string camel_CamelFCISMSBillingChargingCharacteristics_vals[] = {
+static const value_string camel_CAMEL_FCISMSBillingChargingCharacteristics_vals[] = {
{ 0, "fCIBCCCAMELsequence3" },
{ 0, NULL }
};
-static const ber_choice_t CamelFCISMSBillingChargingCharacteristics_choice[] = {
+static const ber_choice_t CAMEL_FCISMSBillingChargingCharacteristics_choice[] = {
{ 0, BER_CLASS_CON, 0, 0, dissect_fCIBCCCAMELsequence3_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_camel_CamelFCISMSBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_CAMEL_FCISMSBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- CamelFCISMSBillingChargingCharacteristics_choice, hf_index, ett_camel_CamelFCISMSBillingChargingCharacteristics,
+ CAMEL_FCISMSBillingChargingCharacteristics_choice, hf_index, ett_camel_CAMEL_FCISMSBillingChargingCharacteristics,
NULL);
return offset;
}
-static const value_string camel_CamelSCIBillingChargingCharacteristics_vals[] = {
+static const ber_sequence_t CAMEL_SCIBillingChargingCharacteristicsAlt_sequence[] = {
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_CAMEL_SCIBillingChargingCharacteristicsAlt(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ CAMEL_SCIBillingChargingCharacteristicsAlt_sequence, hf_index, ett_camel_CAMEL_SCIBillingChargingCharacteristicsAlt);
+
+ return offset;
+}
+static int dissect_aOC_extension_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_CAMEL_SCIBillingChargingCharacteristicsAlt(TRUE, tvb, offset, pinfo, tree, hf_camel_aOC_extension);
+}
+
+
+static const value_string camel_CAMEL_SCIBillingChargingCharacteristics_vals[] = {
{ 0, "aOCBeforeAnswer" },
{ 1, "aOCAfterAnswer" },
+ { 2, "aOC-extension" },
{ 0, NULL }
};
-static const ber_choice_t CamelSCIBillingChargingCharacteristics_choice[] = {
+static const ber_choice_t CAMEL_SCIBillingChargingCharacteristics_choice[] = {
{ 0, BER_CLASS_CON, 0, 0, dissect_aOCBeforeAnswer_impl },
{ 1, BER_CLASS_CON, 1, 0, dissect_aOCAfterAnswer_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_aOC_extension_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_camel_CamelSCIBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_CAMEL_SCIBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- CamelSCIBillingChargingCharacteristics_choice, hf_index, ett_camel_CamelSCIBillingChargingCharacteristics,
+ CAMEL_SCIBillingChargingCharacteristics_choice, hf_index, ett_camel_CAMEL_SCIBillingChargingCharacteristics,
NULL);
return offset;
@@ -2692,6 +3476,19 @@ static int dissect_cGEncountered_impl(packet_info *pinfo, proto_tree *tree, tvbu
static int
+dissect_camel_ChargeIndicator(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_chargeIndicator_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_ChargeIndicator(TRUE, tvb, offset, pinfo, tree, hf_camel_chargeIndicator);
+}
+
+
+
+static int
dissect_camel_LocationNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -3044,60 +3841,6 @@ static int dissect_chargingRollOver_impl(packet_info *pinfo, proto_tree *tree, t
}
-
-static int
-dissect_camel_INTEGER_1_30(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_minimumNbOfDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_INTEGER_1_30(TRUE, tvb, offset, pinfo, tree, hf_camel_minimumNbOfDigits);
-}
-static int dissect_maximumNbOfDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_INTEGER_1_30(TRUE, tvb, offset, pinfo, tree, hf_camel_maximumNbOfDigits);
-}
-
-
-
-static int
-dissect_camel_OCTET_STRING_SIZE_1_2(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_endOfReplyDigit_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_OCTET_STRING_SIZE_1_2(TRUE, tvb, offset, pinfo, tree, hf_camel_endOfReplyDigit);
-}
-static int dissect_cancelDigit_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_OCTET_STRING_SIZE_1_2(TRUE, tvb, offset, pinfo, tree, hf_camel_cancelDigit);
-}
-static int dissect_startDigit_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_OCTET_STRING_SIZE_1_2(TRUE, tvb, offset, pinfo, tree, hf_camel_startDigit);
-}
-
-
-
-static int
-dissect_camel_INTEGER_1_127(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_firstDigitTimeOut_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_camel_firstDigitTimeOut);
-}
-static int dissect_interDigitTimeOut_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_camel_interDigitTimeOut);
-}
-static int dissect_numberOfRepetitions_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_camel_numberOfRepetitions);
-}
-
-
static const value_string camel_ErrorTreatment_vals[] = {
{ 0, "stdErrorAndInfo" },
{ 1, "help" },
@@ -3372,57 +4115,84 @@ static int dissect_destinationRoutingAddress_impl(packet_info *pinfo, proto_tree
}
+static const ber_sequence_t T_oServiceChangeSpecificInfo_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ext_basicServiceCode_impl },
+ { 0, 0, 0, NULL }
+};
static int
-dissect_camel_OCTET_STRING_SIZE_1_63(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+dissect_camel_T_oServiceChangeSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ T_oServiceChangeSpecificInfo_sequence, hf_index, ett_camel_T_oServiceChangeSpecificInfo);
return offset;
}
-static int dissect_pDPAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_OCTET_STRING_SIZE_1_63(TRUE, tvb, offset, pinfo, tree, hf_camel_pDPAddress);
+static int dissect_oServiceChangeSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_oServiceChangeSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_oServiceChangeSpecificInfo);
}
-static const ber_sequence_t EndUserAddress_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_pDPTypeOrganization_impl },
- { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_pDPTypeNumber_impl },
- { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_pDPAddress_impl },
+static const ber_sequence_t T_tServiceChangeSpecificInfo_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ext_basicServiceCode_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_camel_EndUserAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_T_tServiceChangeSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- EndUserAddress_sequence, hf_index, ett_camel_EndUserAddress);
+ T_tServiceChangeSpecificInfo_sequence, hf_index, ett_camel_T_tServiceChangeSpecificInfo);
return offset;
}
+static int dissect_tServiceChangeSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_tServiceChangeSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_tServiceChangeSpecificInfo);
+}
+static const ber_sequence_t DpSpecificInfoAlt_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_oServiceChangeSpecificInfo_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_tServiceChangeSpecificInfo_impl },
+ { 0, 0, 0, NULL }
+};
static int
-dissect_camel_Cause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+dissect_camel_DpSpecificInfoAlt(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ DpSpecificInfoAlt_sequence, hf_index, ett_camel_DpSpecificInfoAlt);
return offset;
}
-static int dissect_failureCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_Cause(TRUE, tvb, offset, pinfo, tree, hf_camel_failureCause);
-}
-static int dissect_busyCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_Cause(TRUE, tvb, offset, pinfo, tree, hf_camel_busyCause);
+static int dissect_dpSpecificInfoAlt_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_DpSpecificInfoAlt(TRUE, tvb, offset, pinfo, tree, hf_camel_dpSpecificInfoAlt);
}
-static int dissect_releaseCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_Cause(TRUE, tvb, offset, pinfo, tree, hf_camel_releaseCause);
+
+
+
+static int
+dissect_camel_OCTET_STRING_SIZE_1_63(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
}
-static int dissect_releaseCauseValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_Cause(TRUE, tvb, offset, pinfo, tree, hf_camel_releaseCauseValue);
+static int dissect_pDPAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_OCTET_STRING_SIZE_1_63(TRUE, tvb, offset, pinfo, tree, hf_camel_pDPAddress);
}
-static int dissect_cause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_Cause(TRUE, tvb, offset, pinfo, tree, hf_camel_cause);
+
+
+static const ber_sequence_t EndUserAddress_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_pDPTypeOrganization_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_pDPTypeNumber_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_pDPAddress_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_EndUserAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ EndUserAddress_sequence, hf_index, ett_camel_EndUserAddress);
+
+ return offset;
}
@@ -3461,7 +4231,6 @@ static int dissect_oCalledPartyBusySpecificInfo_impl(packet_info *pinfo, proto_t
static const ber_sequence_t T_oNoAnswerSpecificInfo_sequence[] = {
- { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_foo },
{ 0, 0, 0, NULL }
};
@@ -3481,6 +4250,9 @@ static const ber_sequence_t T_oAnswerSpecificInfo_sequence[] = {
{ BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_destinationAddress_impl },
{ BER_CLASS_CON, 51, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_or_Call_impl },
{ BER_CLASS_CON, 52, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_forwardedCall_impl },
+ { BER_CLASS_CON, 53, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_chargeIndicator_impl },
+ { BER_CLASS_CON, 54, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ext_basicServiceCode_impl },
+ { BER_CLASS_CON, 55, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ext_basicServiceCode2_impl },
{ 0, 0, 0, NULL }
};
@@ -3496,6 +4268,48 @@ static int dissect_oAnswerSpecificInfo_impl(packet_info *pinfo, proto_tree *tree
}
+static const value_string camel_T_midCallEvents_vals[] = {
+ { 3, "dTMFDigitsCompleted" },
+ { 4, "dTMFDigitsTimeOut" },
+ { 0, NULL }
+};
+
+static const ber_choice_t T_midCallEvents_choice[] = {
+ { 3, BER_CLASS_CON, 3, 0, dissect_dTMFDigitsCompleted_impl },
+ { 4, BER_CLASS_CON, 4, 0, dissect_dTMFDigitsTimeOut_impl },
+ { 0, 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_T_midCallEvents(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ T_midCallEvents_choice, hf_index, ett_camel_T_midCallEvents,
+ NULL);
+
+ return offset;
+}
+static int dissect_midCallEvents_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_midCallEvents(TRUE, tvb, offset, pinfo, tree, hf_camel_midCallEvents);
+}
+
+
+static const ber_sequence_t T_oMidCallSpecificInfo_sequence[] = {
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_midCallEvents_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_T_oMidCallSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ T_oMidCallSpecificInfo_sequence, hf_index, ett_camel_T_oMidCallSpecificInfo);
+
+ return offset;
+}
+static int dissect_oMidCallSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_oMidCallSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_oMidCallSpecificInfo);
+}
+
+
static const ber_sequence_t T_oDisconnectSpecificInfo_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
{ 0, 0, 0, NULL }
@@ -3517,6 +4331,7 @@ static const ber_sequence_t T_tBusySpecificInfo_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_busyCause_impl },
{ BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callForwarded_impl },
{ BER_CLASS_CON, 51, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeNotPermitted_impl },
+ { BER_CLASS_CON, 52, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_forwardingDestinationNumber_impl },
{ 0, 0, 0, NULL }
};
@@ -3534,6 +4349,7 @@ static int dissect_tBusySpecificInfo_impl(packet_info *pinfo, proto_tree *tree,
static const ber_sequence_t T_tNoAnswerSpecificInfo_sequence[] = {
{ BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callForwarded_impl },
+ { BER_CLASS_CON, 52, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_forwardingDestinationNumber_impl },
{ 0, 0, 0, NULL }
};
@@ -3553,6 +4369,9 @@ static const ber_sequence_t T_tAnswerSpecificInfo_sequence[] = {
{ BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_destinationAddress_impl },
{ BER_CLASS_CON, 51, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_or_Call_impl },
{ BER_CLASS_CON, 52, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_forwardedCall_impl },
+ { BER_CLASS_CON, 53, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_chargeIndicator_impl },
+ { BER_CLASS_CON, 54, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ext_basicServiceCode_impl },
+ { BER_CLASS_CON, 55, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ext_basicServiceCode2_impl },
{ 0, 0, 0, NULL }
};
@@ -3568,6 +4387,48 @@ static int dissect_tAnswerSpecificInfo_impl(packet_info *pinfo, proto_tree *tree
}
+static const value_string camel_T_midCallEvents1_vals[] = {
+ { 3, "dTMFDigitsCompleted" },
+ { 4, "dTMFDigitsTimeOut" },
+ { 0, NULL }
+};
+
+static const ber_choice_t T_midCallEvents1_choice[] = {
+ { 3, BER_CLASS_CON, 3, 0, dissect_dTMFDigitsCompleted_impl },
+ { 4, BER_CLASS_CON, 4, 0, dissect_dTMFDigitsTimeOut_impl },
+ { 0, 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_T_midCallEvents1(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ T_midCallEvents1_choice, hf_index, ett_camel_T_midCallEvents1,
+ NULL);
+
+ return offset;
+}
+static int dissect_midCallEvents1_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_midCallEvents1(TRUE, tvb, offset, pinfo, tree, hf_camel_midCallEvents1);
+}
+
+
+static const ber_sequence_t T_tMidCallSpecificInfo_sequence[] = {
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_midCallEvents1_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_T_tMidCallSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ T_tMidCallSpecificInfo_sequence, hf_index, ett_camel_T_tMidCallSpecificInfo);
+
+ return offset;
+}
+static int dissect_tMidCallSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_tMidCallSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_tMidCallSpecificInfo);
+}
+
+
static const ber_sequence_t T_tDisconnectSpecificInfo_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
{ 0, 0, 0, NULL }
@@ -3585,16 +4446,186 @@ static int dissect_tDisconnectSpecificInfo_impl(packet_info *pinfo, proto_tree *
}
+static const ber_sequence_t T_oTermSeizedSpecificInfo_sequence[] = {
+ { BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationInformation_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_T_oTermSeizedSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ T_oTermSeizedSpecificInfo_sequence, hf_index, ett_camel_T_oTermSeizedSpecificInfo);
+
+ return offset;
+}
+static int dissect_oTermSeizedSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_oTermSeizedSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_oTermSeizedSpecificInfo);
+}
+
+
+static const ber_sequence_t T_callAcceptedSpecificInfo_sequence[] = {
+ { BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationInformation_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_T_callAcceptedSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ T_callAcceptedSpecificInfo_sequence, hf_index, ett_camel_T_callAcceptedSpecificInfo);
+
+ return offset;
+}
+static int dissect_callAcceptedSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_callAcceptedSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_callAcceptedSpecificInfo);
+}
+
+
+static const ber_sequence_t T_oAbandonSpecificInfo_sequence[] = {
+ { BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeNotPermitted_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_T_oAbandonSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ T_oAbandonSpecificInfo_sequence, hf_index, ett_camel_T_oAbandonSpecificInfo);
+
+ return offset;
+}
+static int dissect_oAbandonSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_oAbandonSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_oAbandonSpecificInfo);
+}
+
+
+static const ber_sequence_t MetDPCriterionAlt_sequence[] = {
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_MetDPCriterionAlt(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ MetDPCriterionAlt_sequence, hf_index, ett_camel_MetDPCriterionAlt);
+
+ return offset;
+}
+static int dissect_metDPCriterionAlt_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_MetDPCriterionAlt(TRUE, tvb, offset, pinfo, tree, hf_camel_metDPCriterionAlt);
+}
+
+
+static const value_string camel_MetDPCriterion_vals[] = {
+ { 0, "enteringCellGlobalId" },
+ { 1, "leavingCellGlobalId" },
+ { 2, "enteringServiceAreaId" },
+ { 3, "leavingServiceAreaId" },
+ { 4, "enteringLocationAreaId" },
+ { 5, "leavingLocationAreaId" },
+ { 6, "inter-SystemHandOverToUMTS" },
+ { 7, "inter-SystemHandOverToGSM" },
+ { 8, "inter-PLMNHandOver" },
+ { 9, "inter-MSCHandOver" },
+ { 10, "metDPCriterionAlt" },
+ { 0, NULL }
+};
+
+static const ber_choice_t MetDPCriterion_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_enteringCellGlobalId_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_leavingCellGlobalId_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_enteringServiceAreaId_impl },
+ { 3, BER_CLASS_CON, 3, 0, dissect_leavingServiceAreaId_impl },
+ { 4, BER_CLASS_CON, 4, 0, dissect_enteringLocationAreaId_impl },
+ { 5, BER_CLASS_CON, 5, 0, dissect_leavingLocationAreaId_impl },
+ { 6, BER_CLASS_CON, 6, 0, dissect_inter_SystemHandOverToUMTS_impl },
+ { 7, BER_CLASS_CON, 7, 0, dissect_inter_SystemHandOverToGSM_impl },
+ { 8, BER_CLASS_CON, 8, 0, dissect_inter_PLMNHandOver_impl },
+ { 9, BER_CLASS_CON, 9, 0, dissect_inter_MSCHandOver_impl },
+ { 10, BER_CLASS_CON, 10, 0, dissect_metDPCriterionAlt_impl },
+ { 0, 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_MetDPCriterion(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ MetDPCriterion_choice, hf_index, ett_camel_MetDPCriterion,
+ NULL);
+
+ return offset;
+}
+static int dissect_MetDPCriteriaList_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_MetDPCriterion(FALSE, tvb, offset, pinfo, tree, hf_camel_MetDPCriteriaList_item);
+}
+
+
+static const ber_sequence_t MetDPCriteriaList_sequence_of[1] = {
+ { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_MetDPCriteriaList_item },
+};
+
+static int
+dissect_camel_MetDPCriteriaList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
+ MetDPCriteriaList_sequence_of, hf_index, ett_camel_MetDPCriteriaList);
+
+ return offset;
+}
+static int dissect_metDPCriteriaList_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_MetDPCriteriaList(TRUE, tvb, offset, pinfo, tree, hf_camel_metDPCriteriaList);
+}
+
+
+static const ber_sequence_t T_oChangeOfPositionSpecificInfo_sequence[] = {
+ { BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationInformation_impl },
+ { BER_CLASS_CON, 51, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_metDPCriteriaList_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_T_oChangeOfPositionSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ T_oChangeOfPositionSpecificInfo_sequence, hf_index, ett_camel_T_oChangeOfPositionSpecificInfo);
+
+ return offset;
+}
+static int dissect_oChangeOfPositionSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_oChangeOfPositionSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_oChangeOfPositionSpecificInfo);
+}
+
+
+static const ber_sequence_t T_tChangeOfPositionSpecificInfo_sequence[] = {
+ { BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationInformation_impl },
+ { BER_CLASS_CON, 51, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_metDPCriteriaList_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_T_tChangeOfPositionSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ T_tChangeOfPositionSpecificInfo_sequence, hf_index, ett_camel_T_tChangeOfPositionSpecificInfo);
+
+ return offset;
+}
+static int dissect_tChangeOfPositionSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_tChangeOfPositionSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_tChangeOfPositionSpecificInfo);
+}
+
+
static const value_string camel_EventSpecificInformationBCSM_vals[] = {
{ 2, "routeSelectFailureSpecificInfo" },
{ 3, "oCalledPartyBusySpecificInfo" },
{ 4, "oNoAnswerSpecificInfo" },
{ 5, "oAnswerSpecificInfo" },
+ { 6, "oMidCallSpecificInfo" },
{ 7, "oDisconnectSpecificInfo" },
{ 8, "tBusySpecificInfo" },
{ 9, "tNoAnswerSpecificInfo" },
{ 10, "tAnswerSpecificInfo" },
+ { 11, "tMidCallSpecificInfo" },
{ 12, "tDisconnectSpecificInfo" },
+ { 13, "oTermSeizedSpecificInfo" },
+ { 20, "callAcceptedSpecificInfo" },
+ { 21, "oAbandonSpecificInfo" },
+ { 50, "oChangeOfPositionSpecificInfo" },
+ { 51, "tChangeOfPositionSpecificInfo" },
+ { 52, "dpSpecificInfoAlt" },
{ 0, NULL }
};
@@ -3603,11 +4634,19 @@ static const ber_choice_t EventSpecificInformationBCSM_choice[] = {
{ 3, BER_CLASS_CON, 3, 0, dissect_oCalledPartyBusySpecificInfo_impl },
{ 4, BER_CLASS_CON, 4, 0, dissect_oNoAnswerSpecificInfo_impl },
{ 5, BER_CLASS_CON, 5, 0, dissect_oAnswerSpecificInfo_impl },
+ { 6, BER_CLASS_CON, 6, 0, dissect_oMidCallSpecificInfo_impl },
{ 7, BER_CLASS_CON, 7, 0, dissect_oDisconnectSpecificInfo_impl },
{ 8, BER_CLASS_CON, 8, 0, dissect_tBusySpecificInfo_impl },
{ 9, BER_CLASS_CON, 9, 0, dissect_tNoAnswerSpecificInfo_impl },
{ 10, BER_CLASS_CON, 10, 0, dissect_tAnswerSpecificInfo_impl },
+ { 11, BER_CLASS_CON, 11, 0, dissect_tMidCallSpecificInfo_impl },
{ 12, BER_CLASS_CON, 12, 0, dissect_tDisconnectSpecificInfo_impl },
+ { 13, BER_CLASS_CON, 13, 0, dissect_oTermSeizedSpecificInfo_impl },
+ { 20, BER_CLASS_CON, 20, 0, dissect_callAcceptedSpecificInfo_impl },
+ { 21, BER_CLASS_CON, 21, 0, dissect_oAbandonSpecificInfo_impl },
+ { 50, BER_CLASS_CON, 50, 0, dissect_oChangeOfPositionSpecificInfo_impl },
+ { 51, BER_CLASS_CON, 51, 0, dissect_tChangeOfPositionSpecificInfo_impl },
+ { 52, BER_CLASS_CON, 52, 0, dissect_dpSpecificInfoAlt_impl },
{ 0, 0, 0, 0, NULL }
};
@@ -3624,9 +4663,9 @@ static int dissect_eventSpecificInformationBCSM_impl(packet_info *pinfo, proto_t
}
-static const value_string camel_SMSCause_vals[] = {
- { 0, "systemFailureEnum" },
- { 1, "unexpectedDataValueEnum" },
+static const value_string camel_MO_SMSCause_vals[] = {
+ { 0, "systemFailure" },
+ { 1, "unexpectedDataValue" },
{ 2, "facilityNotSupported" },
{ 3, "sM-DeliveryFailure" },
{ 4, "releaseFromRadioInterface" },
@@ -3635,14 +4674,14 @@ static const value_string camel_SMSCause_vals[] = {
static int
-dissect_camel_SMSCause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_MO_SMSCause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_smsfailureCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_SMSCause(TRUE, tvb, offset, pinfo, tree, hf_camel_smsfailureCause);
+ return dissect_camel_MO_SMSCause(TRUE, tvb, offset, pinfo, tree, hf_camel_smsfailureCause);
}
@@ -3680,15 +4719,65 @@ static int dissect_o_smsSubmittedSpecificInfo_impl(packet_info *pinfo, proto_tre
}
+
+static int
+dissect_camel_MT_SMSCause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_failureCause1_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_MT_SMSCause(TRUE, tvb, offset, pinfo, tree, hf_camel_failureCause1);
+}
+
+
+static const ber_sequence_t T_t_smsFailureSpecificInfo_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_failureCause1_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_T_t_smsFailureSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ T_t_smsFailureSpecificInfo_sequence, hf_index, ett_camel_T_t_smsFailureSpecificInfo);
+
+ return offset;
+}
+static int dissect_t_smsFailureSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_t_smsFailureSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_t_smsFailureSpecificInfo);
+}
+
+
+static const ber_sequence_t T_t_smsDeliverySpecificInfo_sequence[] = {
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_T_t_smsDeliverySpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ T_t_smsDeliverySpecificInfo_sequence, hf_index, ett_camel_T_t_smsDeliverySpecificInfo);
+
+ return offset;
+}
+static int dissect_t_smsDeliverySpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_T_t_smsDeliverySpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_camel_t_smsDeliverySpecificInfo);
+}
+
+
static const value_string camel_EventSpecificInformationSMS_vals[] = {
{ 0, "o-smsFailureSpecificInfo" },
{ 1, "o-smsSubmittedSpecificInfo" },
+ { 2, "t-smsFailureSpecificInfo" },
+ { 3, "t-smsDeliverySpecificInfo" },
{ 0, NULL }
};
static const ber_choice_t EventSpecificInformationSMS_choice[] = {
{ 0, BER_CLASS_CON, 0, 0, dissect_o_smsFailureSpecificInfo_impl },
{ 1, BER_CLASS_CON, 1, 0, dissect_o_smsSubmittedSpecificInfo_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_t_smsFailureSpecificInfo_impl },
+ { 3, BER_CLASS_CON, 3, 0, dissect_t_smsDeliverySpecificInfo_impl },
{ 0, 0, 0, 0, NULL }
};
@@ -3708,7 +4797,10 @@ static int dissect_eventSpecificInformationSMS_impl(packet_info *pinfo, proto_tr
static const value_string camel_EventTypeSMS_vals[] = {
{ 1, "sms-CollectedInfo" },
{ 2, "o-smsFailure" },
- { 3, "o-smsSubmitted" },
+ { 3, "o-smsSubmission" },
+ { 11, "sms-DeliveryRequested" },
+ { 12, "t-smsFailure" },
+ { 13, "t-smsDelivery" },
{ 0, NULL }
};
@@ -3725,23 +4817,10 @@ static int dissect_eventTypeSMS_impl(packet_info *pinfo, proto_tree *tree, tvbuf
}
-static const ber_sequence_t Extensions_sequence_of[1] = {
- { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_Extensions_item },
-};
-
-static int
-dissect_camel_Extensions(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
- Extensions_sequence_of, hf_index, ett_camel_Extensions);
-
- return offset;
-}
-
-
static int
dissect_camel_FCIBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_camel_CamelFCIBillingChargingCharacteristics(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+ offset = dissect_camel_CAMEL_FCIBillingChargingCharacteristics(implicit_tag, tvb, offset, pinfo, tree, hf_index);
return offset;
}
@@ -3750,7 +4829,7 @@ dissect_camel_FCIBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuf
static int
dissect_camel_FCIGPRSBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_camel_CamelFCIGPRSBillingChargingCharacteristics(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+ offset = dissect_camel_CAMEL_FCIGPRSBillingChargingCharacteristics(implicit_tag, tvb, offset, pinfo, tree, hf_index);
return offset;
}
@@ -4121,8 +5200,8 @@ dissect_camel_Tone(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_
return offset;
}
-static int dissect_tone_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_Tone(TRUE, tvb, offset, pinfo, tree, hf_camel_tone);
+static int dissect_tone1_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_Tone(TRUE, tvb, offset, pinfo, tree, hf_camel_tone1);
}
@@ -4134,7 +5213,7 @@ static const value_string camel_InformationToSend_vals[] = {
static const ber_choice_t InformationToSend_choice[] = {
{ 0, BER_CLASS_CON, 0, 0, dissect_inbandInfo_impl },
- { 1, BER_CLASS_CON, 1, 0, dissect_tone_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_tone1_impl },
{ 0, 0, 0, 0, NULL }
};
@@ -4205,32 +5284,6 @@ static int dissect_genericNumbers_impl(packet_info *pinfo, proto_tree *tree, tvb
}
-
-static int
-dissect_camel_QoS_Subscribed(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_short_QoS_format_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_QoS_Subscribed(TRUE, tvb, offset, pinfo, tree, hf_camel_short_QoS_format);
-}
-
-
-
-static int
-dissect_camel_Ext_QoS_Subscribed(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_long_QoS_format_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_Ext_QoS_Subscribed(TRUE, tvb, offset, pinfo, tree, hf_camel_long_QoS_format);
-}
-
-
static const value_string camel_GPRS_QoS_vals[] = {
{ 0, "short-QoS-format" },
{ 1, "long-QoS-format" },
@@ -4262,32 +5315,42 @@ static int dissect_negotiated_QoS_impl(packet_info *pinfo, proto_tree *tree, tvb
}
+static const ber_sequence_t GPRS_QoS_Extension_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_supplement_to_long_QoS_format_impl },
+ { 0, 0, 0, NULL }
+};
static int
-dissect_camel_GPRSCause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+dissect_camel_GPRS_QoS_Extension(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ GPRS_QoS_Extension_sequence, hf_index, ett_camel_GPRS_QoS_Extension);
return offset;
}
-static int dissect_gPRSCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_GPRSCause(TRUE, tvb, offset, pinfo, tree, hf_camel_gPRSCause);
+static int dissect_requested_QoS_Extension_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_GPRS_QoS_Extension(TRUE, tvb, offset, pinfo, tree, hf_camel_requested_QoS_Extension);
}
-static int dissect_gprsCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_GPRSCause(TRUE, tvb, offset, pinfo, tree, hf_camel_gprsCause);
+static int dissect_subscribed_QoS_Extension_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_GPRS_QoS_Extension(TRUE, tvb, offset, pinfo, tree, hf_camel_subscribed_QoS_Extension);
+}
+static int dissect_negotiated_QoS_Extension_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_GPRS_QoS_Extension(TRUE, tvb, offset, pinfo, tree, hf_camel_negotiated_QoS_Extension);
}
static int
-dissect_camel_GPRSChargingID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_GPRSCause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
-static int dissect_chargingID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_GPRSChargingID(TRUE, tvb, offset, pinfo, tree, hf_camel_chargingID);
+static int dissect_gPRSCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_GPRSCause(TRUE, tvb, offset, pinfo, tree, hf_camel_gPRSCause);
+}
+static int dissect_gprsCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_GPRSCause(TRUE, tvb, offset, pinfo, tree, hf_camel_gprsCause);
}
@@ -4348,48 +5411,6 @@ static int dissect_cellGlobalIdOrServiceAreaIdOrLAI_impl(packet_info *pinfo, pro
static int
-dissect_camel_RAIdentity(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_routeingAreaIdentity_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_RAIdentity(TRUE, tvb, offset, pinfo, tree, hf_camel_routeingAreaIdentity);
-}
-
-
-
-static int
-dissect_camel_GeographicalInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_geographicalInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_GeographicalInformation(TRUE, tvb, offset, pinfo, tree, hf_camel_geographicalInformation);
-}
-
-
-
-static int
-dissect_camel_LSAIdentity(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_selectedLSAIdentity_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_LSAIdentity(TRUE, tvb, offset, pinfo, tree, hf_camel_selectedLSAIdentity);
-}
-static int dissect_selectedLSA_Id_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_LSAIdentity(TRUE, tvb, offset, pinfo, tree, hf_camel_selectedLSA_Id);
-}
-
-
-
-static int
dissect_camel_ExtensionSetextensionId(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_object_identifier(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL);
@@ -4531,6 +5552,9 @@ static const ber_sequence_t QualityOfService_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_requested_QoS_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_subscribed_QoS_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_negotiated_QoS_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_requested_QoS_Extension_impl },
+ { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_subscribed_QoS_Extension_impl },
+ { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_negotiated_QoS_Extension_impl },
{ 0, 0, 0, NULL }
};
@@ -4599,7 +5623,7 @@ static int dissect_pdp_ContextchangeOfPositionSpecificInformation_impl(packet_in
static const value_string camel_InitiatingEntity_vals[] = {
- { 0, "ms" },
+ { 0, "mobileStation" },
{ 1, "sgsn" },
{ 2, "hlr" },
{ 3, "ggsn" },
@@ -4799,51 +5823,67 @@ static int dissect_gPRSMSClass_impl(packet_info *pinfo, proto_tree *tree, tvbuff
static int
-dissect_camel_TCInvokeIdSet(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+dissect_camel_IPRoutingAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_camel_CalledPartyNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
return offset;
}
+static int dissect_ipRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_IPRoutingAddress(TRUE, tvb, offset, pinfo, tree, hf_camel_ipRoutingAddress);
+}
static int
-dissect_camel_InvokeID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_camel_TCInvokeIdSet(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+dissect_camel_IPSSPCapabilities(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
-static int dissect_invokeID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_InvokeID(TRUE, tvb, offset, pinfo, tree, hf_camel_invokeID);
-}
-static int dissect_operation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_InvokeID(TRUE, tvb, offset, pinfo, tree, hf_camel_operation);
+static int dissect_iPSSPCapabilities_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_IPSSPCapabilities(TRUE, tvb, offset, pinfo, tree, hf_camel_iPSSPCapabilities);
}
+static const value_string camel_LegOrCallSegment_vals[] = {
+ { 0, "callSegmentID" },
+ { 1, "legID" },
+ { 0, NULL }
+};
+
+static const ber_choice_t LegOrCallSegment_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_callSegmentID_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_legID_impl },
+ { 0, 0, 0, 0, NULL }
+};
static int
-dissect_camel_IPRoutingAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_camel_CalledPartyNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+dissect_camel_LegOrCallSegment(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ LegOrCallSegment_choice, hf_index, ett_camel_LegOrCallSegment,
+ NULL);
return offset;
}
-static int dissect_ipRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_IPRoutingAddress(TRUE, tvb, offset, pinfo, tree, hf_camel_ipRoutingAddress);
+static int dissect_legOrCallSegment_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LegOrCallSegment(TRUE, tvb, offset, pinfo, tree, hf_camel_legOrCallSegment);
}
static int
-dissect_camel_IPSSPCapabilities(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_LowLayerCompatibility(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
-static int dissect_iPSSPCapabilities_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_IPSSPCapabilities(TRUE, tvb, offset, pinfo, tree, hf_camel_iPSSPCapabilities);
+static int dissect_lowLayerCompatibility_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LowLayerCompatibility(TRUE, tvb, offset, pinfo, tree, hf_camel_lowLayerCompatibility);
+}
+static int dissect_lowLayerCompatibility2_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_LowLayerCompatibility(TRUE, tvb, offset, pinfo, tree, hf_camel_lowLayerCompatibility2);
}
@@ -4862,34 +5902,53 @@ static int dissect_naOliInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t
static int
-dissect_camel_OriginalCalledPartyID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+dissect_camel_OCSIApplicable(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_null(implicit_tag, pinfo, tree, tvb, offset, hf_index);
return offset;
}
-static int dissect_originalCalledPartyID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_OriginalCalledPartyID(TRUE, tvb, offset, pinfo, tree, hf_camel_originalCalledPartyID);
+static int dissect_oCSIApplicable_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_OCSIApplicable(TRUE, tvb, offset, pinfo, tree, hf_camel_oCSIApplicable);
}
static int
-dissect_camel_OCSIApplicable(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_null(implicit_tag, pinfo, tree, tvb, offset, hf_index);
+dissect_camel_OriginalCalledPartyID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+
+ tvbuff_t *parameter_tvb;
+
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ &parameter_tvb);
+
+
+ if (!parameter_tvb)
+ return offset;
+ dissect_isup_original_called_number_parameter(parameter_tvb, tree, NULL);
+
return offset;
}
-static int dissect_oCSIApplicable_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_OCSIApplicable(TRUE, tvb, offset, pinfo, tree, hf_camel_oCSIApplicable);
+static int dissect_originalCalledPartyID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_OriginalCalledPartyID(TRUE, tvb, offset, pinfo, tree, hf_camel_originalCalledPartyID);
}
static int
dissect_camel_RedirectingPartyID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+
+ tvbuff_t *parameter_tvb;
+
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+ &parameter_tvb);
+
+
+ if (!parameter_tvb)
+ return offset;
+ dissect_isup_redirecting_number_parameter(parameter_tvb, tree, NULL);
+
+
return offset;
}
@@ -5093,6 +6152,25 @@ static int dissect_sGSNCapabilities_impl(packet_info *pinfo, proto_tree *tree, t
}
+
+static int
+dissect_camel_AddressString(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+
+
+
+static int
+dissect_camel_SMS_AddressString(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_camel_AddressString(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+
+
static const ber_sequence_t SMSEvent_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventTypeSMS_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_monitorMode_impl },
@@ -5111,6 +6189,16 @@ static int dissect_SMSEventArray_item(packet_info *pinfo, proto_tree *tree, tvbu
}
+
+static int
+dissect_camel_TariffSwitchInterval(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+
+
static const value_string camel_TimerID_vals[] = {
{ 0, "tssf" },
{ 0, NULL }
@@ -5169,6 +6257,16 @@ static int dissect_tPProtocolIdentifier_impl(packet_info *pinfo, proto_tree *tre
static int
+dissect_camel_TPShortMessageSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+
+
+
+static int
dissect_camel_TPShortMessageSubmissionInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -5314,19 +6412,6 @@ dissect_camel_AgeOfLocationInformation(gboolean implicit_tag _U_, tvbuff_t *tvb,
return offset;
}
-static int dissect_ageOfLocationInformation(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_AgeOfLocationInformation(FALSE, tvb, offset, pinfo, tree, hf_camel_ageOfLocationInformation);
-}
-
-
-
-static int
-dissect_camel_AddressString(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
@@ -5344,28 +6429,12 @@ static int dissect_cellIdFixedLength_impl(packet_info *pinfo, proto_tree *tree,
static int
-dissect_camel_LAIFixedLength(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_laiFixedLength_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_LAIFixedLength(TRUE, tvb, offset, pinfo, tree, hf_camel_laiFixedLength);
-}
-
-
-
-static int
dissect_camel_Ext_TeleserviceCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
-static int dissect_ext_Teleservice_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_Ext_TeleserviceCode(TRUE, tvb, offset, pinfo, tree, hf_camel_ext_Teleservice);
-}
@@ -5376,9 +6445,6 @@ dissect_camel_Ext_BearerServiceCode(gboolean implicit_tag _U_, tvbuff_t *tvb, in
return offset;
}
-static int dissect_ext_BearerService_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_Ext_BearerServiceCode(TRUE, tvb, offset, pinfo, tree, hf_camel_ext_BearerService);
-}
@@ -5421,8 +6487,18 @@ static int dissect_callingPartysCategory_impl(packet_info *pinfo, proto_tree *tr
static int
dissect_camel_RedirectionInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+
+ tvbuff_t *parameter_tvb;
+
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+ &parameter_tvb);
+
+
+ if (!parameter_tvb)
+ return offset;
+
+ dissect_isup_redirection_information_parameter(parameter_tvb, tree, NULL);
+
return offset;
}
@@ -5439,6 +6515,9 @@ dissect_camel_HighLayerCompatibility(gboolean implicit_tag _U_, tvbuff_t *tvb, i
return offset;
}
+static int dissect_highLayerCompatibility2_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_HighLayerCompatibility(TRUE, tvb, offset, pinfo, tree, hf_camel_highLayerCompatibility2);
+}
static int dissect_highLayerCompatibility_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_camel_HighLayerCompatibility(TRUE, tvb, offset, pinfo, tree, hf_camel_highLayerCompatibility);
}
@@ -5492,7 +6571,7 @@ tvbuff_t *parameter_tvb;
if (!parameter_tvb)
return offset;
- dissect_camel_CamelCallResult(implicit_tag, parameter_tvb, 0, pinfo, tree, -1);
+ dissect_camel_CAMEL_CallResult(implicit_tag, parameter_tvb, 0, pinfo, tree, -1);
return offset;
@@ -5519,12 +6598,14 @@ dissect_camel_ApplyChargingReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, i
static const value_string camel_CancelArg_vals[] = {
{ 0, "invokeID" },
{ 1, "allRequests" },
+ { 2, "callSegmentToCancel" },
{ 0, NULL }
};
static const ber_choice_t CancelArg_choice[] = {
{ 0, BER_CLASS_CON, 0, 0, dissect_invokeID_impl },
{ 1, BER_CLASS_CON, 1, 0, dissect_allRequests_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_callSegmentToCancel_impl },
{ 0, 0, 0, 0, NULL }
};
@@ -5541,7 +6622,7 @@ dissect_camel_CancelArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, pa
static int
dissect_camel_FurnishChargingInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_camel_CamelFCIBillingChargingCharacteristics(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+ offset = dissect_camel_CAMEL_FCIBillingChargingCharacteristics(implicit_tag, tvb, offset, pinfo, tree, hf_index);
return offset;
}
@@ -5637,7 +6718,7 @@ dissect_camel_EntityReleasedGPRSArg(gboolean implicit_tag _U_, tvbuff_t *tvb, in
static int
dissect_camel_FurnishChargingInformationGPRSArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_camel_CamelFCIGPRSBillingChargingCharacteristics(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+ offset = dissect_camel_CAMEL_FCIGPRSBillingChargingCharacteristics(implicit_tag, tvb, offset, pinfo, tree, hf_index);
return offset;
}
@@ -5752,38 +6833,79 @@ dissect_camel_CellIdOrLAI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset,
return offset;
}
-static int dissect_cellIdOrLAI_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_CellIdOrLAI(TRUE, tvb, offset, pinfo, tree, hf_camel_cellIdOrLAI);
-}
-static const value_string camel_Ext_BasicServiceCode_vals[] = {
- { 2, "ext-BearerService" },
- { 3, "ext-Teleservice" },
- { 0, NULL }
+static const asn_namedbit SupportedCamelPhases_bits[] = {
+ { 0, &hf_camel_SupportedCamelPhases_phase1, -1, -1, "phase1", NULL },
+ { 1, &hf_camel_SupportedCamelPhases_phase2, -1, -1, "phase2", NULL },
+ { 2, &hf_camel_SupportedCamelPhases_phase3, -1, -1, "phase3", NULL },
+ { 3, &hf_camel_SupportedCamelPhases_phase4, -1, -1, "phase4", NULL },
+ { 0, NULL, 0, 0, NULL, NULL }
};
-static const ber_choice_t Ext_BasicServiceCode_choice[] = {
- { 2, BER_CLASS_CON, 2, 0, dissect_ext_BearerService_impl },
- { 3, BER_CLASS_CON, 3, 0, dissect_ext_Teleservice_impl },
- { 0, 0, 0, 0, NULL }
+static int
+dissect_camel_SupportedCamelPhases(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
+ SupportedCamelPhases_bits, hf_index, ett_camel_SupportedCamelPhases,
+ NULL);
+
+ return offset;
+}
+static int dissect_supportedCamelPhases_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_SupportedCamelPhases(TRUE, tvb, offset, pinfo, tree, hf_camel_supportedCamelPhases);
+}
+
+
+static const asn_namedbit OfferedCamel4Functionalities_bits[] = {
+ { 0, &hf_camel_OfferedCamel4Functionalities_initiateCallAttempt, -1, -1, "initiateCallAttempt", NULL },
+ { 1, &hf_camel_OfferedCamel4Functionalities_splitLeg, -1, -1, "splitLeg", NULL },
+ { 2, &hf_camel_OfferedCamel4Functionalities_moveLeg, -1, -1, "moveLeg", NULL },
+ { 3, &hf_camel_OfferedCamel4Functionalities_disconnectLeg, -1, -1, "disconnectLeg", NULL },
+ { 4, &hf_camel_OfferedCamel4Functionalities_entityReleased, -1, -1, "entityReleased", NULL },
+ { 5, &hf_camel_OfferedCamel4Functionalities_dfc_WithArgument, -1, -1, "dfc-WithArgument", NULL },
+ { 6, &hf_camel_OfferedCamel4Functionalities_playTone, -1, -1, "playTone", NULL },
+ { 7, &hf_camel_OfferedCamel4Functionalities_dtmf_MidCall, -1, -1, "dtmf-MidCall", NULL },
+ { 8, &hf_camel_OfferedCamel4Functionalities_chargingIndicator, -1, -1, "chargingIndicator", NULL },
+ { 9, &hf_camel_OfferedCamel4Functionalities_alertingDP, -1, -1, "alertingDP", NULL },
+ { 10, &hf_camel_OfferedCamel4Functionalities_locationAtAlerting, -1, -1, "locationAtAlerting", NULL },
+ { 11, &hf_camel_OfferedCamel4Functionalities_changeOfPositionDP, -1, -1, "changeOfPositionDP", NULL },
+ { 12, &hf_camel_OfferedCamel4Functionalities_or_Interactions, -1, -1, "or-Interactions", NULL },
+ { 13, &hf_camel_OfferedCamel4Functionalities_warningToneEnhancements, -1, -1, "warningToneEnhancements", NULL },
+ { 14, &hf_camel_OfferedCamel4Functionalities_cf_Enhancements, -1, -1, "cf-Enhancements", NULL },
+ { 15, &hf_camel_OfferedCamel4Functionalities_subscribedEnhancedDialledServices, -1, -1, "subscribedEnhancedDialledServices", NULL },
+ { 16, &hf_camel_OfferedCamel4Functionalities_servingNetworkEnhancedDialledServices, -1, -1, "servingNetworkEnhancedDialledServices", NULL },
+ { 17, &hf_camel_OfferedCamel4Functionalities_criteriaForChangeOfPositionDP, -1, -1, "criteriaForChangeOfPositionDP", NULL },
+ { 18, &hf_camel_OfferedCamel4Functionalities_serviceChangeDP, -1, -1, "serviceChangeDP", NULL },
+ { 0, NULL, 0, 0, NULL, NULL }
};
static int
-dissect_camel_Ext_BasicServiceCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- Ext_BasicServiceCode_choice, hf_index, ett_camel_Ext_BasicServiceCode,
- NULL);
+dissect_camel_OfferedCamel4Functionalities(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
+ OfferedCamel4Functionalities_bits, hf_index, ett_camel_OfferedCamel4Functionalities,
+ NULL);
return offset;
}
-static int dissect_ext_basicServiceCode_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_Ext_BasicServiceCode(TRUE, tvb, offset, pinfo, tree, hf_camel_ext_basicServiceCode);
+static int dissect_offeredCamel4Functionalities_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_OfferedCamel4Functionalities(TRUE, tvb, offset, pinfo, tree, hf_camel_offeredCamel4Functionalities);
}
static const ber_sequence_t InitialDPArgExtension_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gmscAddress_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_forwardingDestinationNumber_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ms_Classmark2_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iMEI_impl },
+ { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_supportedCamelPhases_impl },
+ { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_offeredCamel4Functionalities_impl },
+ { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_bearerCapability2_impl },
+ { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ext_basicServiceCode2_impl },
+ { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_highLayerCompatibility2_impl },
+ { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_lowLayerCompatibility_impl },
+ { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_lowLayerCompatibility2_impl },
+ { BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_enhancedDialledServicesAllowed_impl },
+ { BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_uu_Data_impl },
{ 0, 0, 0, NULL }
};
@@ -5799,46 +6921,81 @@ static int dissect_initialDPArgExtension_impl(packet_info *pinfo, proto_tree *tr
}
+static const ber_sequence_t InitiateCallAttemptArg_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_destinationRoutingAddress_impl },
+ { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions1_impl },
+ { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legToBeCreated_impl },
+ { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_newCallSegment_impl },
+ { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyNumber_impl },
+ { BER_CLASS_CON, 51, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callReferenceNumber_impl },
+ { BER_CLASS_CON, 52, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gsmSCFAddress_impl },
+ { BER_CLASS_CON, 53, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_suppress_T_CSI_impl },
+ { 0, 0, 0, NULL }
+};
static int
-dissect_camel_GeodeticInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+dissect_camel_InitiateCallAttemptArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ InitiateCallAttemptArg_sequence, hf_index, ett_camel_InitiateCallAttemptArg);
return offset;
}
-static int dissect_geodeticInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_GeodeticInformation(TRUE, tvb, offset, pinfo, tree, hf_camel_geodeticInformation);
+
+
+static const ber_sequence_t InitiateCallAttemptRes_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_supportedCamelPhases_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_offeredCamel4Functionalities_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions1_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_InitiateCallAttemptRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ InitiateCallAttemptRes_sequence, hf_index, ett_camel_InitiateCallAttemptRes);
+
+ return offset;
}
-static const ber_sequence_t LocationInformation_sequence[] = {
- { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ageOfLocationInformation },
- { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_geographicalInformation_impl },
- { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_vlr_number_impl },
- { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationNumber_impl },
- { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_cellIdOrLAI_impl },
- { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl },
- { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_selectedLSA_Id_impl },
- { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_msc_number_impl },
- { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_geodeticInformation_impl },
- { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_currentLocationRetrieved_impl },
- { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_saiPresent_impl },
+static const ber_sequence_t MoveLegArg_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legIDToMove_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions1_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_camel_LocationInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_camel_MoveLegArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- LocationInformation_sequence, hf_index, ett_camel_LocationInformation);
+ MoveLegArg_sequence, hf_index, ett_camel_MoveLegArg);
return offset;
}
-static int dissect_locationInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_LocationInformation(TRUE, tvb, offset, pinfo, tree, hf_camel_locationInformation);
+
+
+static const ber_sequence_t PlayToneArg_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legOrCallSegment_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_bursts_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions1_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_PlayToneArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ PlayToneArg_sequence, hf_index, ett_camel_PlayToneArg);
+
+ return offset;
}
-static int dissect_locationInformationMSC_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_camel_LocationInformation(TRUE, tvb, offset, pinfo, tree, hf_camel_locationInformationMSC);
+
+
+
+static int
+dissect_camel_GeodeticInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
}
@@ -5863,6 +7020,7 @@ static const ber_sequence_t ApplyChargingArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_aChBillingChargingCharacteristics_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_partyToCharge1_impl },
{ BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
+ { BER_CLASS_CON, 50, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_aChChargingAddress_impl },
{ 0, 0, 0, NULL }
};
@@ -5924,6 +7082,7 @@ static const ber_sequence_t ConnectArg_sequence[] = {
{ BER_CLASS_CON, 55, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_suppressionOfAnnouncement_impl },
{ BER_CLASS_CON, 56, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_oCSIApplicable_impl },
{ BER_CLASS_CON, 57, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_naOliInfo_impl },
+ { BER_CLASS_CON, 58, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_bor_InterrogationRequested_impl },
{ 0, 0, 0, NULL }
};
@@ -5965,6 +7124,7 @@ static const ber_sequence_t ConnectToResourceArg_sequence[] = {
{ BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceAddress },
{ BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
{ BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceInteractionIndicatorsTwo_impl },
+ { BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callSegmentID_impl },
{ 0, 0, 0, NULL }
};
@@ -5977,6 +7137,26 @@ dissect_camel_ConnectToResourceArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int
}
+static const ber_sequence_t ContinueWithArgumentArgExtension_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_suppress_D_CSI_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_suppress_N_CSI_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_suppressOutgoingCallBarring_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legOrCallSegment_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_ContinueWithArgumentArgExtension(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ ContinueWithArgumentArgExtension_sequence, hf_index, ett_camel_ContinueWithArgumentArgExtension);
+
+ return offset;
+}
+static int dissect_continueWithArgumentArgExtension_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_camel_ContinueWithArgumentArgExtension(TRUE, tvb, offset, pinfo, tree, hf_camel_continueWithArgumentArgExtension);
+}
+
+
static const ber_sequence_t ContinueWithArgumentArg_sequence[] = {
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alertingPattern_impl },
{ BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
@@ -5989,6 +7169,9 @@ static const ber_sequence_t ContinueWithArgumentArg_sequence[] = {
{ BER_CLASS_CON, 52, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
{ BER_CLASS_CON, 55, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_suppressionOfAnnouncement_impl },
{ BER_CLASS_CON, 56, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_naOliInfo_impl },
+ { BER_CLASS_CON, 57, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_bor_InterrogationRequested_impl },
+ { BER_CLASS_CON, 58, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_suppress_O_CSI_impl },
+ { BER_CLASS_CON, 59, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_continueWithArgumentArgExtension_impl },
{ 0, 0, 0, NULL }
};
@@ -6001,6 +7184,59 @@ dissect_camel_ContinueWithArgumentArg(gboolean implicit_tag _U_, tvbuff_t *tvb,
}
+static const ber_sequence_t DisconnectLegArg_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legToBeReleased_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions1_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_DisconnectLegArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ DisconnectLegArg_sequence, hf_index, ett_camel_DisconnectLegArg);
+
+ return offset;
+}
+
+
+static const value_string camel_EntityReleasedArg_vals[] = {
+ { 0, "callSegmentFailure" },
+ { 1, "bCSM-Failure" },
+ { 0, NULL }
+};
+
+static const ber_choice_t EntityReleasedArg_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_callSegmentFailure_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_bCSM_Failure_impl },
+ { 0, 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_EntityReleasedArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ EntityReleasedArg_choice, hf_index, ett_camel_EntityReleasedArg,
+ NULL);
+
+ return offset;
+}
+
+
+static const ber_sequence_t DisconnectForwardConnectionWithArgumentArg_sequence[] = {
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callSegmentID_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions1_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_DisconnectForwardConnectionWithArgumentArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ DisconnectForwardConnectionWithArgumentArg_sequence, hf_index, ett_camel_DisconnectForwardConnectionWithArgumentArg);
+
+ return offset;
+}
+
+
static const ber_sequence_t EstablishTemporaryConnectionArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_assistingSSPIPRoutingAddress_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
@@ -6010,6 +7246,8 @@ static const ber_sequence_t EstablishTemporaryConnectionArg_sequence[] = {
{ BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceInteractionIndicatorsTwo_impl },
{ BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_naOliInfo_impl },
{ BER_CLASS_CON, 51, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_chargeNumber_impl },
+ { BER_CLASS_CON, 52, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
+ { BER_CLASS_CON, 53, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyNumber_impl },
{ 0, 0, 0, NULL }
};
@@ -6043,7 +7281,8 @@ dissect_camel_EventReportBCSMArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int o
static const ber_sequence_t ResetTimerArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_timerID_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_timervalue_impl },
- { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions1_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callSegmentID_impl },
{ 0, 0, 0, NULL }
};
@@ -6072,6 +7311,22 @@ dissect_camel_SendChargingInformationArg(gboolean implicit_tag _U_, tvbuff_t *tv
}
+static const ber_sequence_t SplitLegArg_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legToBeSplit_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_newCallSegment_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions1_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_camel_SplitLegArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ SplitLegArg_sequence, hf_index, ett_camel_SplitLegArg);
+
+ return offset;
+}
+
+
static const ber_sequence_t CAPGPRSReferenceNumber_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_destinationReference },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_originationReference },
@@ -6322,7 +7577,7 @@ static const ber_sequence_t InitialDPArg_sequence[] = {
{ BER_CLASS_CON, 50, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iMSI_impl },
{ BER_CLASS_CON, 51, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_subscriberState_impl },
{ BER_CLASS_CON, 52, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationInformation_impl },
- { BER_CLASS_CON, 53, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_ext_basicServiceCode_impl },
+ { BER_CLASS_CON, 53, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ext_basicServiceCode_impl },
{ BER_CLASS_CON, 54, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callReferenceNumber_impl },
{ BER_CLASS_CON, 55, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mscAddress_impl },
{ BER_CLASS_CON, 56, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBCDNumber_impl },
@@ -6531,7 +7786,7 @@ dissect_camel_TaskRefusedPARAM(gboolean implicit_tag _U_, tvbuff_t *tvb, int off
const value_string camel_opr_code_strings[] = {
- {0, "InitialDP"},
+ {0, "InitialDP"},
{16, "AssistRequestInstructions"},
{17, "EstablishTemporaryConnection"},
{18, "DisconnectForwardConnection"},
@@ -6541,6 +7796,7 @@ const value_string camel_opr_code_strings[] = {
{23, "RequestReportBCSMEvent"},
{24, "EventReportBCSM"},
{31, "Continue"},
+ {32, "InitiateCallAttempt"},
{33, "ResetTimer"},
{34, "FurnishChargingInformation"},
{35, "ApplyCharging"},
@@ -6577,6 +7833,13 @@ const value_string camel_opr_code_strings[] = {
{81, "RequestReportGPRSEvent"},
{82, "ResetTimerGPRS"},
{83, "SendChargingInformationGPRS"},
+ {86, "DFCWithArgument"},
+ {88, "ContinueWithArgument"},
+ {90, "DisconnectLeg"},
+ {93, "MoveLeg"},
+ {95, "SplitLeg"},
+ {96, "EntityReleased"},
+ {97, "PlayTone"},
{0, NULL}
};
@@ -6634,6 +7897,9 @@ static int dissect_invokeData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv
case 31: /*Continue*/
/* Continue: no arguments - do nothing */
break;
+ case 32: /*initiateCallAttempt*/
+ offset=dissect_camel_InitiateCallAttemptArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
case 33: /*ResetTimer*/
offset=dissect_camel_ResetTimerArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
@@ -6727,6 +7993,28 @@ static int dissect_invokeData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv
case 83: /*SendChargingInformationGPRS*/
offset=dissect_camel_SendChargingInformationGPRSArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
+ case 86: /*DFCWithArgument*/
+ offset= dissect_camel_DisconnectForwardConnectionWithArgumentArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
+ case 88: /*ContinueWithArgument*/
+ /* XXX Same as opcode 56 ??? */
+ offset= dissect_camel_ContinueWithArgumentArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
+ case 90: /*DisconnectLeg*/
+ offset= dissect_camel_DisconnectLegArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
+ case 93: /*MoveLeg*/
+ offset= dissect_camel_MoveLegArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
+ case 95: /*SplitLeg*/
+ offset= dissect_camel_SplitLegArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
+ case 96: /*EntityReleased*/
+ offset= dissect_camel_EntityReleasedArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
+ case 97: /*PlayTone*/
+ offset= dissect_camel_PlayToneArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
default:
proto_tree_add_text(tree, tvb, offset, -1, "Unknown invokeData blob");
/* todo call the asn.1 dissector */
@@ -6737,6 +8025,9 @@ static int dissect_invokeData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv
static int dissect_returnResultData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
switch(opcode){
+ case 32: /*initiateCallAttempt*/
+ offset=dissect_camel_InitiateCallAttemptRes(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
case 48: /*PromptAndCollectUserInformation*/
offset=dissect_camel_ReceivedInformationArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
@@ -7243,11 +8534,19 @@ void proto_register_camel(void) {
{ &hf_camel_actone,
{ "actone", "camel.actone",
FT_BOOLEAN, 8, NULL, 0,
- "", HFILL }},
+ "AChBillingChargingCharacteristics/actimeDurationCharging/actone", HFILL }},
{ &hf_camel_extensions,
{ "extensions", "camel.extensions",
FT_UINT32, BASE_DEC, NULL, 0,
"", HFILL }},
+ { &hf_camel_legID,
+ { "legID", "camel.legID",
+ FT_UINT32, BASE_DEC, VALS(camel_LegID_vals), 0,
+ "", HFILL }},
+ { &hf_camel_srfConnection,
+ { "srfConnection", "camel.srfConnection",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "AChChargingAddress/srfConnection", HFILL }},
{ &hf_camel_aOCInitial,
{ "aOCInitial", "camel.aOCInitial",
FT_NONE, BASE_NONE, NULL, 0,
@@ -7260,6 +8559,14 @@ void proto_register_camel(void) {
{ "cAI-GSM0224", "camel.cAI_GSM0224",
FT_NONE, BASE_NONE, NULL, 0,
"AOCSubsequent/cAI-GSM0224", HFILL }},
+ { &hf_camel_tone,
+ { "tone", "camel.tone",
+ FT_BOOLEAN, 8, NULL, 0,
+ "AudibleIndicator/tone", HFILL }},
+ { &hf_camel_burstList,
+ { "burstList", "camel.burstList",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "AudibleIndicator/burstList", HFILL }},
{ &hf_camel_conferenceTreatmentIndicator,
{ "conferenceTreatmentIndicator", "camel.conferenceTreatmentIndicator",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -7308,10 +8615,46 @@ void proto_register_camel(void) {
{ "dpSpecificCriteria", "camel.dpSpecificCriteria",
FT_UINT32, BASE_DEC, VALS(camel_DpSpecificCriteria_vals), 0,
"BCSMEvent/dpSpecificCriteria", HFILL }},
+ { &hf_camel_automaticRearm,
+ { "automaticRearm", "camel.automaticRearm",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "BCSMEvent/automaticRearm", HFILL }},
+ { &hf_camel_cause,
+ { "cause", "camel.cause",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
{ &hf_camel_bearerCap,
{ "bearerCap", "camel.bearerCap",
FT_BYTES, BASE_HEX, NULL, 0,
"BearerCapability/bearerCap", HFILL }},
+ { &hf_camel_numberOfBursts,
+ { "numberOfBursts", "camel.numberOfBursts",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "Burst/numberOfBursts", HFILL }},
+ { &hf_camel_burstInterval,
+ { "burstInterval", "camel.burstInterval",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "Burst/burstInterval", HFILL }},
+ { &hf_camel_numberOfTonesInBurst,
+ { "numberOfTonesInBurst", "camel.numberOfTonesInBurst",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "Burst/numberOfTonesInBurst", HFILL }},
+ { &hf_camel_toneDuration,
+ { "toneDuration", "camel.toneDuration",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "Burst/toneDuration", HFILL }},
+ { &hf_camel_toneInterval,
+ { "toneInterval", "camel.toneInterval",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "Burst/toneInterval", HFILL }},
+ { &hf_camel_warningPeriod,
+ { "warningPeriod", "camel.warningPeriod",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "BurstList/warningPeriod", HFILL }},
+ { &hf_camel_bursts,
+ { "bursts", "camel.bursts",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
{ &hf_camel_e1,
{ "e1", "camel.e1",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -7340,34 +8683,54 @@ void proto_register_camel(void) {
{ "e7", "camel.e7",
FT_UINT32, BASE_DEC, NULL, 0,
"CAI-Gsm0224/e7", HFILL }},
+ { &hf_camel_callSegmentID,
+ { "callSegmentID", "camel.callSegmentID",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_invokeID,
+ { "invokeID", "camel.invokeID",
+ FT_INT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
{ &hf_camel_timeDurationCharging,
{ "timeDurationCharging", "camel.timeDurationCharging",
FT_NONE, BASE_NONE, NULL, 0,
- "CamelAChBillingChargingCharacteristics/timeDurationCharging", HFILL }},
+ "CAMEL-AChBillingChargingCharacteristics/timeDurationCharging", HFILL }},
+ { &hf_camel_audibleIndicator,
+ { "audibleIndicator", "camel.audibleIndicator",
+ FT_UINT32, BASE_DEC, VALS(camel_AudibleIndicator_vals), 0,
+ "CAMEL-AChBillingChargingCharacteristics/timeDurationCharging/audibleIndicator", HFILL }},
{ &hf_camel_timeDurationChargingResult,
{ "timeDurationChargingResult", "camel.timeDurationChargingResult",
FT_NONE, BASE_NONE, NULL, 0,
- "CamelCallResult/timeDurationChargingResult", HFILL }},
- { &hf_camel_partyToCharge3,
- { "partyToCharge3", "camel.partyToCharge3",
+ "CAMEL-CallResult/timeDurationChargingResult", HFILL }},
+ { &hf_camel_partyToCharge,
+ { "partyToCharge", "camel.partyToCharge",
FT_UINT32, BASE_DEC, VALS(camel_ReceivingSideID_vals), 0,
- "CamelCallResult/timeDurationChargingResult/partyToCharge3", HFILL }},
+ "CAMEL-CallResult/timeDurationChargingResult/partyToCharge", HFILL }},
{ &hf_camel_timeInformation,
{ "timeInformation", "camel.timeInformation",
FT_UINT32, BASE_DEC, VALS(camel_TimeInformation_vals), 0,
- "CamelCallResult/timeDurationChargingResult/timeInformation", HFILL }},
- { &hf_camel_callActive,
- { "callActive", "camel.callActive",
+ "CAMEL-CallResult/timeDurationChargingResult/timeInformation", HFILL }},
+ { &hf_camel_legActive,
+ { "legActive", "camel.legActive",
FT_BOOLEAN, 8, NULL, 0,
- "CamelCallResult/timeDurationChargingResult/callActive", HFILL }},
- { &hf_camel_callReleasedAtTcpExpiry,
- { "callReleasedAtTcpExpiry", "camel.callReleasedAtTcpExpiry",
+ "CAMEL-CallResult/timeDurationChargingResult/legActive", HFILL }},
+ { &hf_camel_callLegReleasedAtTcpExpiry,
+ { "callLegReleasedAtTcpExpiry", "camel.callLegReleasedAtTcpExpiry",
FT_NONE, BASE_NONE, NULL, 0,
- "CamelCallResult/timeDurationChargingResult/callReleasedAtTcpExpiry", HFILL }},
+ "CAMEL-CallResult/timeDurationChargingResult/callLegReleasedAtTcpExpiry", HFILL }},
+ { &hf_camel_extensions1,
+ { "extensions", "camel.extensions",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_aChChargingAddress,
+ { "aChChargingAddress", "camel.aChChargingAddress",
+ FT_UINT32, BASE_DEC, VALS(camel_AChChargingAddress_vals), 0,
+ "", HFILL }},
{ &hf_camel_fCIBCCCAMELsequence1,
{ "fCIBCCCAMELsequence1", "camel.fCIBCCCAMELsequence1",
FT_NONE, BASE_NONE, NULL, 0,
- "CamelFCIBillingChargingCharacteristics/fCIBCCCAMELsequence1", HFILL }},
+ "CAMEL-FCIBillingChargingCharacteristics/fCIBCCCAMELsequence1", HFILL }},
{ &hf_camel_freeFormatData,
{ "freeFormatData", "camel.freeFormatData",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -7375,7 +8738,7 @@ void proto_register_camel(void) {
{ &hf_camel_partyToCharge4,
{ "partyToCharge4", "camel.partyToCharge4",
FT_UINT32, BASE_DEC, VALS(camel_SendingSideID_vals), 0,
- "CamelFCIBillingChargingCharacteristics/fCIBCCCAMELsequence1/partyToCharge4", HFILL }},
+ "CAMEL-FCIBillingChargingCharacteristics/fCIBCCCAMELsequence1/partyToCharge4", HFILL }},
{ &hf_camel_appendFreeFormatData,
{ "appendFreeFormatData", "camel.appendFreeFormatData",
FT_UINT32, BASE_DEC, VALS(camel_AppendFreeFormatData_vals), 0,
@@ -7383,7 +8746,7 @@ void proto_register_camel(void) {
{ &hf_camel_fCIBCCCAMELsequence2,
{ "fCIBCCCAMELsequence2", "camel.fCIBCCCAMELsequence2",
FT_NONE, BASE_NONE, NULL, 0,
- "CamelFCIGPRSBillingChargingCharacteristics/fCIBCCCAMELsequence2", HFILL }},
+ "CAMEL-FCIGPRSBillingChargingCharacteristics/fCIBCCCAMELsequence2", HFILL }},
{ &hf_camel_pDPID,
{ "pDPID", "camel.pDPID",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -7391,19 +8754,55 @@ void proto_register_camel(void) {
{ &hf_camel_fCIBCCCAMELsequence3,
{ "fCIBCCCAMELsequence3", "camel.fCIBCCCAMELsequence3",
FT_NONE, BASE_NONE, NULL, 0,
- "CamelFCISMSBillingChargingCharacteristics/fCIBCCCAMELsequence3", HFILL }},
+ "CAMEL-FCISMSBillingChargingCharacteristics/fCIBCCCAMELsequence3", HFILL }},
{ &hf_camel_aOCBeforeAnswer,
{ "aOCBeforeAnswer", "camel.aOCBeforeAnswer",
FT_NONE, BASE_NONE, NULL, 0,
- "CamelSCIBillingChargingCharacteristics/aOCBeforeAnswer", HFILL }},
+ "CAMEL-SCIBillingChargingCharacteristics/aOCBeforeAnswer", HFILL }},
{ &hf_camel_aOCAfterAnswer,
{ "aOCAfterAnswer", "camel.aOCAfterAnswer",
FT_NONE, BASE_NONE, NULL, 0,
- "CamelSCIBillingChargingCharacteristics/aOCAfterAnswer", HFILL }},
+ "CAMEL-SCIBillingChargingCharacteristics/aOCAfterAnswer", HFILL }},
+ { &hf_camel_aOC_extension,
+ { "aOC-extension", "camel.aOC_extension",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "CAMEL-SCIBillingChargingCharacteristics/aOC-extension", HFILL }},
{ &hf_camel_aOCGPRS,
{ "aOCGPRS", "camel.aOCGPRS",
FT_NONE, BASE_NONE, NULL, 0,
"CamelSCIGPRSBillingChargingCharacteristics/aOCGPRS", HFILL }},
+ { &hf_camel_ChangeOfPositionControlInfo_item,
+ { "Item", "camel.ChangeOfPositionControlInfo_item",
+ FT_UINT32, BASE_DEC, VALS(camel_ChangeOfLocation_vals), 0,
+ "ChangeOfPositionControlInfo/_item", HFILL }},
+ { &hf_camel_cellGlobalId,
+ { "cellGlobalId", "camel.cellGlobalId",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "ChangeOfLocation/cellGlobalId", HFILL }},
+ { &hf_camel_serviceAreaId,
+ { "serviceAreaId", "camel.serviceAreaId",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "ChangeOfLocation/serviceAreaId", HFILL }},
+ { &hf_camel_locationAreaId,
+ { "locationAreaId", "camel.locationAreaId",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "ChangeOfLocation/locationAreaId", HFILL }},
+ { &hf_camel_inter_SystemHandOver,
+ { "inter-SystemHandOver", "camel.inter_SystemHandOver",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "ChangeOfLocation/inter-SystemHandOver", HFILL }},
+ { &hf_camel_inter_PLMNHandOver,
+ { "inter-PLMNHandOver", "camel.inter_PLMNHandOver",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_inter_MSCHandOver,
+ { "inter-MSCHandOver", "camel.inter_MSCHandOver",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_changeOfLocationAlt,
+ { "changeOfLocationAlt", "camel.changeOfLocationAlt",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "ChangeOfLocation/changeOfLocationAlt", HFILL }},
{ &hf_camel_maxTransferredVolume,
{ "maxTransferredVolume", "camel.maxTransferredVolume",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -7439,15 +8838,15 @@ void proto_register_camel(void) {
{ &hf_camel_endOfReplyDigit,
{ "endOfReplyDigit", "camel.endOfReplyDigit",
FT_BYTES, BASE_HEX, NULL, 0,
- "CollectedDigits/endOfReplyDigit", HFILL }},
+ "", HFILL }},
{ &hf_camel_cancelDigit,
{ "cancelDigit", "camel.cancelDigit",
FT_BYTES, BASE_HEX, NULL, 0,
- "CollectedDigits/cancelDigit", HFILL }},
+ "", HFILL }},
{ &hf_camel_startDigit,
{ "startDigit", "camel.startDigit",
FT_BYTES, BASE_HEX, NULL, 0,
- "CollectedDigits/startDigit", HFILL }},
+ "", HFILL }},
{ &hf_camel_firstDigitTimeOut,
{ "firstDigitTimeOut", "camel.firstDigitTimeOut",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -7492,6 +8891,30 @@ void proto_register_camel(void) {
{ "applicationTimer", "camel.applicationTimer",
FT_UINT32, BASE_DEC, NULL, 0,
"DpSpecificCriteria/applicationTimer", HFILL }},
+ { &hf_camel_midCallControlInfo,
+ { "midCallControlInfo", "camel.midCallControlInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "DpSpecificCriteria/midCallControlInfo", HFILL }},
+ { &hf_camel_dpSpecificCriteriaAlt,
+ { "dpSpecificCriteriaAlt", "camel.dpSpecificCriteriaAlt",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "DpSpecificCriteria/dpSpecificCriteriaAlt", HFILL }},
+ { &hf_camel_changeOfPositionControlInfo,
+ { "changeOfPositionControlInfo", "camel.changeOfPositionControlInfo",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "DpSpecificCriteriaAlt/changeOfPositionControlInfo", HFILL }},
+ { &hf_camel_oServiceChangeSpecificInfo,
+ { "oServiceChangeSpecificInfo", "camel.oServiceChangeSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "DpSpecificInfoAlt/oServiceChangeSpecificInfo", HFILL }},
+ { &hf_camel_ext_basicServiceCode,
+ { "ext-basicServiceCode", "camel.ext_basicServiceCode",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_tServiceChangeSpecificInfo,
+ { "tServiceChangeSpecificInfo", "camel.tServiceChangeSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "DpSpecificInfoAlt/tServiceChangeSpecificInfo", HFILL }},
{ &hf_camel_timeGPRSIfNoTariffSwitch,
{ "timeGPRSIfNoTariffSwitch", "camel.timeGPRSIfNoTariffSwitch",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -7556,10 +8979,6 @@ void proto_register_camel(void) {
{ "oNoAnswerSpecificInfo", "camel.oNoAnswerSpecificInfo",
FT_NONE, BASE_NONE, NULL, 0,
"EventSpecificInformationBCSM/oNoAnswerSpecificInfo", HFILL }},
- { &hf_camel_foo,
- { "foo", "camel.foo",
- FT_UINT32, BASE_DEC, NULL, 0,
- "", HFILL }},
{ &hf_camel_oAnswerSpecificInfo,
{ "oAnswerSpecificInfo", "camel.oAnswerSpecificInfo",
FT_NONE, BASE_NONE, NULL, 0,
@@ -7576,6 +8995,30 @@ void proto_register_camel(void) {
{ "forwardedCall", "camel.forwardedCall",
FT_NONE, BASE_NONE, NULL, 0,
"", HFILL }},
+ { &hf_camel_chargeIndicator,
+ { "chargeIndicator", "camel.chargeIndicator",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_ext_basicServiceCode2,
+ { "ext-basicServiceCode2", "camel.ext_basicServiceCode2",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_oMidCallSpecificInfo,
+ { "oMidCallSpecificInfo", "camel.oMidCallSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/oMidCallSpecificInfo", HFILL }},
+ { &hf_camel_midCallEvents,
+ { "midCallEvents", "camel.midCallEvents",
+ FT_UINT32, BASE_DEC, VALS(camel_T_midCallEvents_vals), 0,
+ "EventSpecificInformationBCSM/oMidCallSpecificInfo/midCallEvents", HFILL }},
+ { &hf_camel_dTMFDigitsCompleted,
+ { "dTMFDigitsCompleted", "camel.dTMFDigitsCompleted",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_dTMFDigitsTimeOut,
+ { "dTMFDigitsTimeOut", "camel.dTMFDigitsTimeOut",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
{ &hf_camel_oDisconnectSpecificInfo,
{ "oDisconnectSpecificInfo", "camel.oDisconnectSpecificInfo",
FT_NONE, BASE_NONE, NULL, 0,
@@ -7595,7 +9038,11 @@ void proto_register_camel(void) {
{ &hf_camel_routeNotPermitted,
{ "routeNotPermitted", "camel.routeNotPermitted",
FT_NONE, BASE_NONE, NULL, 0,
- "EventSpecificInformationBCSM/tBusySpecificInfo/routeNotPermitted", HFILL }},
+ "", HFILL }},
+ { &hf_camel_forwardingDestinationNumber,
+ { "forwardingDestinationNumber", "camel.forwardingDestinationNumber",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
{ &hf_camel_tNoAnswerSpecificInfo,
{ "tNoAnswerSpecificInfo", "camel.tNoAnswerSpecificInfo",
FT_NONE, BASE_NONE, NULL, 0,
@@ -7604,22 +9051,78 @@ void proto_register_camel(void) {
{ "tAnswerSpecificInfo", "camel.tAnswerSpecificInfo",
FT_NONE, BASE_NONE, NULL, 0,
"EventSpecificInformationBCSM/tAnswerSpecificInfo", HFILL }},
+ { &hf_camel_tMidCallSpecificInfo,
+ { "tMidCallSpecificInfo", "camel.tMidCallSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/tMidCallSpecificInfo", HFILL }},
+ { &hf_camel_midCallEvents1,
+ { "midCallEvents", "camel.midCallEvents",
+ FT_UINT32, BASE_DEC, VALS(camel_T_midCallEvents1_vals), 0,
+ "EventSpecificInformationBCSM/tMidCallSpecificInfo/midCallEvents", HFILL }},
{ &hf_camel_tDisconnectSpecificInfo,
{ "tDisconnectSpecificInfo", "camel.tDisconnectSpecificInfo",
FT_NONE, BASE_NONE, NULL, 0,
"EventSpecificInformationBCSM/tDisconnectSpecificInfo", HFILL }},
+ { &hf_camel_oTermSeizedSpecificInfo,
+ { "oTermSeizedSpecificInfo", "camel.oTermSeizedSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/oTermSeizedSpecificInfo", HFILL }},
+ { &hf_camel_locationInformation,
+ { "locationInformation", "camel.locationInformation",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_callAcceptedSpecificInfo,
+ { "callAcceptedSpecificInfo", "camel.callAcceptedSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/callAcceptedSpecificInfo", HFILL }},
+ { &hf_camel_oAbandonSpecificInfo,
+ { "oAbandonSpecificInfo", "camel.oAbandonSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/oAbandonSpecificInfo", HFILL }},
+ { &hf_camel_oChangeOfPositionSpecificInfo,
+ { "oChangeOfPositionSpecificInfo", "camel.oChangeOfPositionSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/oChangeOfPositionSpecificInfo", HFILL }},
+ { &hf_camel_metDPCriteriaList,
+ { "metDPCriteriaList", "camel.metDPCriteriaList",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_tChangeOfPositionSpecificInfo,
+ { "tChangeOfPositionSpecificInfo", "camel.tChangeOfPositionSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/tChangeOfPositionSpecificInfo", HFILL }},
+ { &hf_camel_dpSpecificInfoAlt,
+ { "dpSpecificInfoAlt", "camel.dpSpecificInfoAlt",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/dpSpecificInfoAlt", HFILL }},
{ &hf_camel_o_smsFailureSpecificInfo,
{ "o-smsFailureSpecificInfo", "camel.o_smsFailureSpecificInfo",
FT_NONE, BASE_NONE, NULL, 0,
"EventSpecificInformationSMS/o-smsFailureSpecificInfo", HFILL }},
{ &hf_camel_smsfailureCause,
{ "smsfailureCause", "camel.smsfailureCause",
- FT_UINT32, BASE_DEC, VALS(camel_SMSCause_vals), 0,
+ FT_UINT32, BASE_DEC, VALS(camel_MO_SMSCause_vals), 0,
"EventSpecificInformationSMS/o-smsFailureSpecificInfo/smsfailureCause", HFILL }},
{ &hf_camel_o_smsSubmittedSpecificInfo,
{ "o-smsSubmittedSpecificInfo", "camel.o_smsSubmittedSpecificInfo",
FT_NONE, BASE_NONE, NULL, 0,
"EventSpecificInformationSMS/o-smsSubmittedSpecificInfo", HFILL }},
+ { &hf_camel_foo,
+ { "foo", "camel.foo",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_t_smsFailureSpecificInfo,
+ { "t-smsFailureSpecificInfo", "camel.t_smsFailureSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationSMS/t-smsFailureSpecificInfo", HFILL }},
+ { &hf_camel_failureCause1,
+ { "failureCause", "camel.failureCause",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "EventSpecificInformationSMS/t-smsFailureSpecificInfo/failureCause", HFILL }},
+ { &hf_camel_t_smsDeliverySpecificInfo,
+ { "t-smsDeliverySpecificInfo", "camel.t_smsDeliverySpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationSMS/t-smsDeliverySpecificInfo", HFILL }},
{ &hf_camel_Extensions_item,
{ "Item", "camel.Extensions_item",
FT_NONE, BASE_NONE, NULL, 0,
@@ -7654,12 +9157,16 @@ void proto_register_camel(void) {
"GenericNumbers/_item", HFILL }},
{ &hf_camel_short_QoS_format,
{ "short-QoS-format", "camel.short_QoS_format",
- FT_BYTES, BASE_HEX, NULL, 0,
+ FT_NONE, BASE_NONE, NULL, 0,
"GPRS-QoS/short-QoS-format", HFILL }},
{ &hf_camel_long_QoS_format,
{ "long-QoS-format", "camel.long_QoS_format",
- FT_BYTES, BASE_HEX, NULL, 0,
+ FT_NONE, BASE_NONE, NULL, 0,
"GPRS-QoS/long-QoS-format", HFILL }},
+ { &hf_camel_supplement_to_long_QoS_format,
+ { "supplement-to-long-QoS-format", "camel.supplement_to_long_QoS_format",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "GPRS-QoS-Extension/supplement-to-long-QoS-format", HFILL }},
{ &hf_camel_gPRSEventType,
{ "gPRSEventType", "camel.gPRSEventType",
FT_UINT32, BASE_DEC, VALS(camel_GPRSEventType_vals), 0,
@@ -7682,7 +9189,7 @@ void proto_register_camel(void) {
"", HFILL }},
{ &hf_camel_chargingID,
{ "chargingID", "camel.chargingID",
- FT_BYTES, BASE_HEX, NULL, 0,
+ FT_NONE, BASE_NONE, NULL, 0,
"", HFILL }},
{ &hf_camel_pDPType,
{ "pDPType", "camel.pDPType",
@@ -7760,7 +9267,7 @@ void proto_register_camel(void) {
{ "inbandInfo", "camel.inbandInfo",
FT_NONE, BASE_NONE, NULL, 0,
"InformationToSend/inbandInfo", HFILL }},
- { &hf_camel_tone,
+ { &hf_camel_tone1,
{ "tone", "camel.tone",
FT_NONE, BASE_NONE, NULL, 0,
"InformationToSend/tone", HFILL }},
@@ -7770,28 +9277,28 @@ void proto_register_camel(void) {
"LocationInformationGPRS/cellGlobalIdOrServiceAreaIdOrLAI", HFILL }},
{ &hf_camel_routeingAreaIdentity,
{ "routeingAreaIdentity", "camel.routeingAreaIdentity",
- FT_BYTES, BASE_HEX, NULL, 0,
+ FT_NONE, BASE_NONE, NULL, 0,
"", HFILL }},
{ &hf_camel_geographicalInformation,
{ "geographicalInformation", "camel.geographicalInformation",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
+ FT_NONE, BASE_NONE, NULL, 0,
+ "LocationInformationGPRS/geographicalInformation", HFILL }},
{ &hf_camel_sgsn_Number,
{ "sgsn-Number", "camel.sgsn_Number",
FT_BYTES, BASE_HEX, NULL, 0,
"LocationInformationGPRS/sgsn-Number", HFILL }},
{ &hf_camel_selectedLSAIdentity,
{ "selectedLSAIdentity", "camel.selectedLSAIdentity",
- FT_BYTES, BASE_HEX, NULL, 0,
+ FT_NONE, BASE_NONE, NULL, 0,
"LocationInformationGPRS/selectedLSAIdentity", HFILL }},
{ &hf_camel_extensionContainer,
{ "extensionContainer", "camel.extensionContainer",
FT_NONE, BASE_NONE, NULL, 0,
- "", HFILL }},
+ "LocationInformationGPRS/extensionContainer", HFILL }},
{ &hf_camel_saiPresent,
{ "saiPresent", "camel.saiPresent",
FT_NONE, BASE_NONE, NULL, 0,
- "", HFILL }},
+ "LocationInformationGPRS/saiPresent", HFILL }},
{ &hf_camel_elementaryMessageID,
{ "elementaryMessageID", "camel.elementaryMessageID",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -7824,6 +9331,58 @@ void proto_register_camel(void) {
{ "variableParts", "camel.variableParts",
FT_UINT32, BASE_DEC, NULL, 0,
"MessageID/variableMessage/variableParts", HFILL }},
+ { &hf_camel_MetDPCriteriaList_item,
+ { "Item", "camel.MetDPCriteriaList_item",
+ FT_UINT32, BASE_DEC, VALS(camel_MetDPCriterion_vals), 0,
+ "MetDPCriteriaList/_item", HFILL }},
+ { &hf_camel_enteringCellGlobalId,
+ { "enteringCellGlobalId", "camel.enteringCellGlobalId",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MetDPCriterion/enteringCellGlobalId", HFILL }},
+ { &hf_camel_leavingCellGlobalId,
+ { "leavingCellGlobalId", "camel.leavingCellGlobalId",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MetDPCriterion/leavingCellGlobalId", HFILL }},
+ { &hf_camel_enteringServiceAreaId,
+ { "enteringServiceAreaId", "camel.enteringServiceAreaId",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MetDPCriterion/enteringServiceAreaId", HFILL }},
+ { &hf_camel_leavingServiceAreaId,
+ { "leavingServiceAreaId", "camel.leavingServiceAreaId",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MetDPCriterion/leavingServiceAreaId", HFILL }},
+ { &hf_camel_enteringLocationAreaId,
+ { "enteringLocationAreaId", "camel.enteringLocationAreaId",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "MetDPCriterion/enteringLocationAreaId", HFILL }},
+ { &hf_camel_leavingLocationAreaId,
+ { "leavingLocationAreaId", "camel.leavingLocationAreaId",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "MetDPCriterion/leavingLocationAreaId", HFILL }},
+ { &hf_camel_inter_SystemHandOverToUMTS,
+ { "inter-SystemHandOverToUMTS", "camel.inter_SystemHandOverToUMTS",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MetDPCriterion/inter-SystemHandOverToUMTS", HFILL }},
+ { &hf_camel_inter_SystemHandOverToGSM,
+ { "inter-SystemHandOverToGSM", "camel.inter_SystemHandOverToGSM",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MetDPCriterion/inter-SystemHandOverToGSM", HFILL }},
+ { &hf_camel_metDPCriterionAlt,
+ { "metDPCriterionAlt", "camel.metDPCriterionAlt",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MetDPCriterion/metDPCriterionAlt", HFILL }},
+ { &hf_camel_minimumNumberOfDigits,
+ { "minimumNumberOfDigits", "camel.minimumNumberOfDigits",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "MidCallControlInfo/minimumNumberOfDigits", HFILL }},
+ { &hf_camel_maximumNumberOfDigits,
+ { "maximumNumberOfDigits", "camel.maximumNumberOfDigits",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "MidCallControlInfo/maximumNumberOfDigits", HFILL }},
+ { &hf_camel_interDigitTimeout,
+ { "interDigitTimeout", "camel.interDigitTimeout",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "MidCallControlInfo/interDigitTimeout", HFILL }},
{ &hf_camel_requested_QoS,
{ "requested-QoS", "camel.requested_QoS",
FT_UINT32, BASE_DEC, VALS(camel_GPRS_QoS_vals), 0,
@@ -7836,6 +9395,18 @@ void proto_register_camel(void) {
{ "negotiated-QoS", "camel.negotiated_QoS",
FT_UINT32, BASE_DEC, VALS(camel_GPRS_QoS_vals), 0,
"QualityOfService/negotiated-QoS", HFILL }},
+ { &hf_camel_requested_QoS_Extension,
+ { "requested-QoS-Extension", "camel.requested_QoS_Extension",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "QualityOfService/requested-QoS-Extension", HFILL }},
+ { &hf_camel_subscribed_QoS_Extension,
+ { "subscribed-QoS-Extension", "camel.subscribed_QoS_Extension",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "QualityOfService/subscribed-QoS-Extension", HFILL }},
+ { &hf_camel_negotiated_QoS_Extension,
+ { "negotiated-QoS-Extension", "camel.negotiated_QoS_Extension",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "QualityOfService/negotiated-QoS-Extension", HFILL }},
{ &hf_camel_receivingSideID,
{ "receivingSideID", "camel.receivingSideID",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -7912,14 +9483,6 @@ void proto_register_camel(void) {
{ "eventTypeSMS", "camel.eventTypeSMS",
FT_UINT32, BASE_DEC, VALS(camel_EventTypeSMS_vals), 0,
"", HFILL }},
- { &hf_camel_timeIfNoTariffSwitch,
- { "timeIfNoTariffSwitch", "camel.timeIfNoTariffSwitch",
- FT_UINT32, BASE_DEC, NULL, 0,
- "TimeInformation/timeIfNoTariffSwitch", HFILL }},
- { &hf_camel_timeIfTariffSwitch,
- { "timeIfTariffSwitch", "camel.timeIfTariffSwitch",
- FT_NONE, BASE_NONE, NULL, 0,
- "TimeInformation/timeIfTariffSwitch", HFILL }},
{ &hf_camel_timeSinceTariffSwitch,
{ "timeSinceTariffSwitch", "camel.timeSinceTariffSwitch",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -7928,6 +9491,14 @@ void proto_register_camel(void) {
{ "tttariffSwitchInterval", "camel.tttariffSwitchInterval",
FT_UINT32, BASE_DEC, NULL, 0,
"TimeIfTariffSwitch/tttariffSwitchInterval", HFILL }},
+ { &hf_camel_timeIfNoTariffSwitch,
+ { "timeIfNoTariffSwitch", "camel.timeIfNoTariffSwitch",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "TimeInformation/timeIfNoTariffSwitch", HFILL }},
+ { &hf_camel_timeIfTariffSwitch,
+ { "timeIfTariffSwitch", "camel.timeIfTariffSwitch",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "TimeInformation/timeIfTariffSwitch", HFILL }},
{ &hf_camel_toneID,
{ "toneID", "camel.toneID",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -8012,14 +9583,14 @@ void proto_register_camel(void) {
{ "callresultOctet", "camel.callresultOctet",
FT_BYTES, BASE_HEX, NULL, 0,
"ApplyChargingReportArg/callresultOctet", HFILL }},
- { &hf_camel_invokeID,
- { "invokeID", "camel.invokeID",
- FT_INT32, BASE_DEC, NULL, 0,
- "CancelArg/invokeID", HFILL }},
{ &hf_camel_allRequests,
{ "allRequests", "camel.allRequests",
FT_NONE, BASE_NONE, NULL, 0,
"CancelArg/allRequests", HFILL }},
+ { &hf_camel_callSegmentToCancel,
+ { "callSegmentToCancel", "camel.callSegmentToCancel",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "CancelArg/callSegmentToCancel", HFILL }},
{ &hf_camel_digitsResponse,
{ "digitsResponse", "camel.digitsResponse",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -8076,14 +9647,6 @@ void proto_register_camel(void) {
{ "laiFixedLength", "camel.laiFixedLength",
FT_BYTES, BASE_HEX, NULL, 0,
"CellIdOrLAI/laiFixedLength", HFILL }},
- { &hf_camel_ext_BearerService,
- { "ext-BearerService", "camel.ext_BearerService",
- FT_BYTES, BASE_HEX, NULL, 0,
- "Ext-BasicServiceCode/ext-BearerService", HFILL }},
- { &hf_camel_ext_Teleservice,
- { "ext-Teleservice", "camel.ext_Teleservice",
- FT_BYTES, BASE_HEX, NULL, 0,
- "Ext-BasicServiceCode/ext-Teleservice", HFILL }},
{ &hf_camel_VariablePartsArray_item,
{ "Item", "camel.VariablePartsArray_item",
FT_UINT32, BASE_DEC, VALS(camel_VariablePart_vals), 0,
@@ -8092,38 +9655,82 @@ void proto_register_camel(void) {
{ "gmscAddress", "camel.gmscAddress",
FT_BYTES, BASE_HEX, NULL, 0,
"InitialDPArgExtension/gmscAddress", HFILL }},
- { &hf_camel_ageOfLocationInformation,
- { "ageOfLocationInformation", "camel.ageOfLocationInformation",
- FT_UINT32, BASE_DEC, NULL, 0,
- "LocationInformation/ageOfLocationInformation", HFILL }},
- { &hf_camel_vlr_number,
- { "vlr-number", "camel.vlr_number",
+ { &hf_camel_ms_Classmark2,
+ { "ms-Classmark2", "camel.ms_Classmark2",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "InitialDPArgExtension/ms-Classmark2", HFILL }},
+ { &hf_camel_iMEI,
+ { "iMEI", "camel.iMEI",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "InitialDPArgExtension/iMEI", HFILL }},
+ { &hf_camel_supportedCamelPhases,
+ { "supportedCamelPhases", "camel.supportedCamelPhases",
FT_BYTES, BASE_HEX, NULL, 0,
- "LocationInformation/vlr-number", HFILL }},
- { &hf_camel_locationNumber,
- { "locationNumber", "camel.locationNumber",
+ "", HFILL }},
+ { &hf_camel_offeredCamel4Functionalities,
+ { "offeredCamel4Functionalities", "camel.offeredCamel4Functionalities",
FT_BYTES, BASE_HEX, NULL, 0,
"", HFILL }},
- { &hf_camel_cellIdOrLAI,
- { "cellIdOrLAI", "camel.cellIdOrLAI",
- FT_UINT32, BASE_DEC, VALS(camel_CellIdOrLAI_vals), 0,
- "LocationInformation/cellIdOrLAI", HFILL }},
- { &hf_camel_selectedLSA_Id,
- { "selectedLSA-Id", "camel.selectedLSA_Id",
+ { &hf_camel_bearerCapability2,
+ { "bearerCapability2", "camel.bearerCapability2",
+ FT_UINT32, BASE_DEC, VALS(camel_BearerCapability_vals), 0,
+ "InitialDPArgExtension/bearerCapability2", HFILL }},
+ { &hf_camel_highLayerCompatibility2,
+ { "highLayerCompatibility2", "camel.highLayerCompatibility2",
FT_BYTES, BASE_HEX, NULL, 0,
- "LocationInformation/selectedLSA-Id", HFILL }},
- { &hf_camel_msc_number,
- { "msc-number", "camel.msc_number",
+ "InitialDPArgExtension/highLayerCompatibility2", HFILL }},
+ { &hf_camel_lowLayerCompatibility,
+ { "lowLayerCompatibility", "camel.lowLayerCompatibility",
FT_BYTES, BASE_HEX, NULL, 0,
- "LocationInformation/msc-number", HFILL }},
- { &hf_camel_geodeticInformation,
- { "geodeticInformation", "camel.geodeticInformation",
+ "InitialDPArgExtension/lowLayerCompatibility", HFILL }},
+ { &hf_camel_lowLayerCompatibility2,
+ { "lowLayerCompatibility2", "camel.lowLayerCompatibility2",
FT_BYTES, BASE_HEX, NULL, 0,
- "LocationInformation/geodeticInformation", HFILL }},
- { &hf_camel_currentLocationRetrieved,
- { "currentLocationRetrieved", "camel.currentLocationRetrieved",
+ "InitialDPArgExtension/lowLayerCompatibility2", HFILL }},
+ { &hf_camel_enhancedDialledServicesAllowed,
+ { "enhancedDialledServicesAllowed", "camel.enhancedDialledServicesAllowed",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "InitialDPArgExtension/enhancedDialledServicesAllowed", HFILL }},
+ { &hf_camel_uu_Data,
+ { "uu-Data", "camel.uu_Data",
FT_NONE, BASE_NONE, NULL, 0,
- "LocationInformation/currentLocationRetrieved", HFILL }},
+ "InitialDPArgExtension/uu-Data", HFILL }},
+ { &hf_camel_destinationRoutingAddress,
+ { "destinationRoutingAddress", "camel.destinationRoutingAddress",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_legToBeCreated,
+ { "legToBeCreated", "camel.legToBeCreated",
+ FT_UINT32, BASE_DEC, VALS(camel_LegID_vals), 0,
+ "InitiateCallAttemptArg/legToBeCreated", HFILL }},
+ { &hf_camel_newCallSegment,
+ { "newCallSegment", "camel.newCallSegment",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_callingPartyNumber,
+ { "callingPartyNumber", "camel.callingPartyNumber",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_callReferenceNumber,
+ { "callReferenceNumber", "camel.callReferenceNumber",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_camel_gsmSCFAddress,
+ { "gsmSCFAddress", "camel.gsmSCFAddress",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "InitiateCallAttemptArg/gsmSCFAddress", HFILL }},
+ { &hf_camel_suppress_T_CSI,
+ { "suppress-T-CSI", "camel.suppress_T_CSI",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "InitiateCallAttemptArg/suppress-T-CSI", HFILL }},
+ { &hf_camel_legIDToMove,
+ { "legIDToMove", "camel.legIDToMove",
+ FT_UINT32, BASE_DEC, VALS(camel_LegID_vals), 0,
+ "MoveLegArg/legIDToMove", HFILL }},
+ { &hf_camel_legOrCallSegment,
+ { "legOrCallSegment", "camel.legOrCallSegment",
+ FT_UINT32, BASE_DEC, VALS(camel_LegOrCallSegment_vals), 0,
+ "", HFILL }},
{ &hf_camel_miscGPRSInfo,
{ "miscGPRSInfo", "camel.miscGPRSInfo",
FT_NONE, BASE_NONE, NULL, 0,
@@ -8172,10 +9779,6 @@ void proto_register_camel(void) {
{ "legID3", "camel.legID3",
FT_UINT32, BASE_DEC, VALS(camel_SendingSideID_vals), 0,
"CallInformationRequestArg/legID3", HFILL }},
- { &hf_camel_destinationRoutingAddress,
- { "destinationRoutingAddress", "camel.destinationRoutingAddress",
- FT_UINT32, BASE_DEC, NULL, 0,
- "ConnectArg/destinationRoutingAddress", HFILL }},
{ &hf_camel_alertingPattern,
{ "alertingPattern", "camel.alertingPattern",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -8190,7 +9793,7 @@ void proto_register_camel(void) {
"", HFILL }},
{ &hf_camel_callingPartysCategory,
{ "callingPartysCategory", "camel.callingPartysCategory",
- FT_BYTES, BASE_HEX, NULL, 0,
+ FT_UINT16, BASE_DEC, VALS(isup_calling_partys_category_value), 0,
"", HFILL }},
{ &hf_camel_redirectingPartyID,
{ "redirectingPartyID", "camel.redirectingPartyID",
@@ -8232,6 +9835,10 @@ void proto_register_camel(void) {
{ "naOliInfo", "camel.naOliInfo",
FT_BYTES, BASE_HEX, NULL, 0,
"", HFILL }},
+ { &hf_camel_bor_InterrogationRequested,
+ { "bor-InterrogationRequested", "camel.bor_InterrogationRequested",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
{ &hf_camel_resourceAddress,
{ "resourceAddress", "camel.resourceAddress",
FT_UINT32, BASE_DEC, VALS(camel_T_resourceAddress_vals), 0,
@@ -8244,6 +9851,38 @@ void proto_register_camel(void) {
{ "none", "camel.none",
FT_NONE, BASE_NONE, NULL, 0,
"ConnectToResourceArg/resourceAddress/none", HFILL }},
+ { &hf_camel_suppress_O_CSI,
+ { "suppress-O-CSI", "camel.suppress_O_CSI",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "ContinueWithArgumentArg/suppress-O-CSI", HFILL }},
+ { &hf_camel_continueWithArgumentArgExtension,
+ { "continueWithArgumentArgExtension", "camel.continueWithArgumentArgExtension",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "ContinueWithArgumentArg/continueWithArgumentArgExtension", HFILL }},
+ { &hf_camel_suppress_D_CSI,
+ { "suppress-D-CSI", "camel.suppress_D_CSI",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "ContinueWithArgumentArgExtension/suppress-D-CSI", HFILL }},
+ { &hf_camel_suppress_N_CSI,
+ { "suppress-N-CSI", "camel.suppress_N_CSI",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "ContinueWithArgumentArgExtension/suppress-N-CSI", HFILL }},
+ { &hf_camel_suppressOutgoingCallBarring,
+ { "suppressOutgoingCallBarring", "camel.suppressOutgoingCallBarring",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "ContinueWithArgumentArgExtension/suppressOutgoingCallBarring", HFILL }},
+ { &hf_camel_legToBeReleased,
+ { "legToBeReleased", "camel.legToBeReleased",
+ FT_UINT32, BASE_DEC, VALS(camel_LegID_vals), 0,
+ "DisconnectLegArg/legToBeReleased", HFILL }},
+ { &hf_camel_callSegmentFailure,
+ { "callSegmentFailure", "camel.callSegmentFailure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EntityReleasedArg/callSegmentFailure", HFILL }},
+ { &hf_camel_bCSM_Failure,
+ { "bCSM-Failure", "camel.bCSM_Failure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EntityReleasedArg/bCSM-Failure", HFILL }},
{ &hf_camel_assistingSSPIPRoutingAddress,
{ "assistingSSPIPRoutingAddress", "camel.assistingSSPIPRoutingAddress",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -8276,6 +9915,10 @@ void proto_register_camel(void) {
{ "partyToCharge2", "camel.partyToCharge2",
FT_UINT32, BASE_DEC, VALS(camel_SendingSideID_vals), 0,
"SendChargingInformationArg/partyToCharge2", HFILL }},
+ { &hf_camel_legToBeSplit,
+ { "legToBeSplit", "camel.legToBeSplit",
+ FT_UINT32, BASE_DEC, VALS(camel_LegID_vals), 0,
+ "SplitLegArg/legToBeSplit", HFILL }},
{ &hf_camel_destinationReference,
{ "destinationReference", "camel.destinationReference",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -8372,14 +10015,14 @@ void proto_register_camel(void) {
{ "calledPartyNumber", "camel.calledPartyNumber",
FT_BYTES, BASE_HEX, NULL, 0,
"InitialDPArg/calledPartyNumber", HFILL }},
- { &hf_camel_callingPartyNumber,
- { "callingPartyNumber", "camel.callingPartyNumber",
- FT_BYTES, BASE_HEX, NULL, 0,
- "InitialDPArg/callingPartyNumber", HFILL }},
{ &hf_camel_cGEncountered,
{ "cGEncountered", "camel.cGEncountered",
FT_UINT32, BASE_DEC, VALS(camel_CGEncountered_vals), 0,
"InitialDPArg/cGEncountered", HFILL }},
+ { &hf_camel_locationNumber,
+ { "locationNumber", "camel.locationNumber",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "InitialDPArg/locationNumber", HFILL }},
{ &hf_camel_highLayerCompatibility,
{ "highLayerCompatibility", "camel.highLayerCompatibility",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -8392,10 +10035,6 @@ void proto_register_camel(void) {
{ "bearerCapability", "camel.bearerCapability",
FT_UINT32, BASE_DEC, VALS(camel_BearerCapability_vals), 0,
"InitialDPArg/bearerCapability", HFILL }},
- { &hf_camel_cause,
- { "cause", "camel.cause",
- FT_BYTES, BASE_HEX, NULL, 0,
- "InitialDPArg/cause", HFILL }},
{ &hf_camel_cug_Index,
{ "cug-Index", "camel.cug_Index",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -8404,18 +10043,6 @@ void proto_register_camel(void) {
{ "subscriberState", "camel.subscriberState",
FT_UINT32, BASE_DEC, VALS(camel_SubscriberState_vals), 0,
"InitialDPArg/subscriberState", HFILL }},
- { &hf_camel_locationInformation,
- { "locationInformation", "camel.locationInformation",
- FT_NONE, BASE_NONE, NULL, 0,
- "InitialDPArg/locationInformation", HFILL }},
- { &hf_camel_ext_basicServiceCode,
- { "ext-basicServiceCode", "camel.ext_basicServiceCode",
- FT_UINT32, BASE_DEC, VALS(camel_Ext_BasicServiceCode_vals), 0,
- "InitialDPArg/ext-basicServiceCode", HFILL }},
- { &hf_camel_callReferenceNumber,
- { "callReferenceNumber", "camel.callReferenceNumber",
- FT_BYTES, BASE_HEX, NULL, 0,
- "InitialDPArg/callReferenceNumber", HFILL }},
{ &hf_camel_mscAddress,
{ "mscAddress", "camel.mscAddress",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -8500,6 +10127,98 @@ void proto_register_camel(void) {
{ "operation", "camel.operation",
FT_INT32, BASE_DEC, NULL, 0,
"CancelFailedPARAM/operation", HFILL }},
+ { &hf_camel_SupportedCamelPhases_phase1,
+ { "phase1", "camel.phase1",
+ FT_BOOLEAN, 8, NULL, 0x80,
+ "", HFILL }},
+ { &hf_camel_SupportedCamelPhases_phase2,
+ { "phase2", "camel.phase2",
+ FT_BOOLEAN, 8, NULL, 0x40,
+ "", HFILL }},
+ { &hf_camel_SupportedCamelPhases_phase3,
+ { "phase3", "camel.phase3",
+ FT_BOOLEAN, 8, NULL, 0x20,
+ "", HFILL }},
+ { &hf_camel_SupportedCamelPhases_phase4,
+ { "phase4", "camel.phase4",
+ FT_BOOLEAN, 8, NULL, 0x10,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_initiateCallAttempt,
+ { "initiateCallAttempt", "camel.initiateCallAttempt",
+ FT_BOOLEAN, 8, NULL, 0x80,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_splitLeg,
+ { "splitLeg", "camel.splitLeg",
+ FT_BOOLEAN, 8, NULL, 0x40,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_moveLeg,
+ { "moveLeg", "camel.moveLeg",
+ FT_BOOLEAN, 8, NULL, 0x20,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_disconnectLeg,
+ { "disconnectLeg", "camel.disconnectLeg",
+ FT_BOOLEAN, 8, NULL, 0x10,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_entityReleased,
+ { "entityReleased", "camel.entityReleased",
+ FT_BOOLEAN, 8, NULL, 0x08,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_dfc_WithArgument,
+ { "dfc-WithArgument", "camel.dfc-WithArgument",
+ FT_BOOLEAN, 8, NULL, 0x04,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_playTone,
+ { "playTone", "camel.playTone",
+ FT_BOOLEAN, 8, NULL, 0x02,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_dtmf_MidCall,
+ { "dtmf-MidCall", "camel.dtmf-MidCall",
+ FT_BOOLEAN, 8, NULL, 0x01,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_chargingIndicator,
+ { "chargingIndicator", "camel.chargingIndicator",
+ FT_BOOLEAN, 8, NULL, 0x80,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_alertingDP,
+ { "alertingDP", "camel.alertingDP",
+ FT_BOOLEAN, 8, NULL, 0x40,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_locationAtAlerting,
+ { "locationAtAlerting", "camel.locationAtAlerting",
+ FT_BOOLEAN, 8, NULL, 0x20,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_changeOfPositionDP,
+ { "changeOfPositionDP", "camel.changeOfPositionDP",
+ FT_BOOLEAN, 8, NULL, 0x10,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_or_Interactions,
+ { "or-Interactions", "camel.or-Interactions",
+ FT_BOOLEAN, 8, NULL, 0x08,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_warningToneEnhancements,
+ { "warningToneEnhancements", "camel.warningToneEnhancements",
+ FT_BOOLEAN, 8, NULL, 0x04,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_cf_Enhancements,
+ { "cf-Enhancements", "camel.cf-Enhancements",
+ FT_BOOLEAN, 8, NULL, 0x02,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_subscribedEnhancedDialledServices,
+ { "subscribedEnhancedDialledServices", "camel.subscribedEnhancedDialledServices",
+ FT_BOOLEAN, 8, NULL, 0x01,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_servingNetworkEnhancedDialledServices,
+ { "servingNetworkEnhancedDialledServices", "camel.servingNetworkEnhancedDialledServices",
+ FT_BOOLEAN, 8, NULL, 0x80,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_criteriaForChangeOfPositionDP,
+ { "criteriaForChangeOfPositionDP", "camel.criteriaForChangeOfPositionDP",
+ FT_BOOLEAN, 8, NULL, 0x40,
+ "", HFILL }},
+ { &hf_camel_OfferedCamel4Functionalities_serviceChangeDP,
+ { "serviceChangeDP", "camel.serviceChangeDP",
+ FT_BOOLEAN, 8, NULL, 0x20,
+ "", HFILL }},
/*--- End of included file: packet-camel-hfarr.c ---*/
@@ -8534,28 +10253,39 @@ void proto_register_camel(void) {
&ett_camel_PBCalledPartyBCDNumber,
&ett_camel_AChBillingChargingCharacteristics,
&ett_camel_T_actimeDurationCharging,
+ &ett_camel_AChChargingAddress,
&ett_camel_AOCBeforeAnswer,
&ett_camel_AOCGprs,
&ett_camel_AOCSubsequent,
+ &ett_camel_AudibleIndicator,
&ett_camel_BackwardServiceInteractionInd,
&ett_camel_BasicGapCriteria,
&ett_camel_T_calledAddressAndService,
&ett_camel_T_callingAddressAndService,
&ett_camel_BCSMEvent,
+ &ett_camel_BCSM_Failure,
&ett_camel_BearerCapability,
+ &ett_camel_Burst,
+ &ett_camel_BurstList,
&ett_camel_CAI_Gsm0224,
- &ett_camel_CamelAChBillingChargingCharacteristics,
+ &ett_camel_CallSegmentFailure,
+ &ett_camel_CallSegmentToCancel,
+ &ett_camel_CAMEL_AChBillingChargingCharacteristics,
&ett_camel_T_timeDurationCharging,
- &ett_camel_CamelCallResult,
+ &ett_camel_CAMEL_CallResult,
&ett_camel_T_timeDurationChargingResult,
- &ett_camel_CamelFCIBillingChargingCharacteristics,
+ &ett_camel_CAMEL_FCIBillingChargingCharacteristics,
&ett_camel_T_fCIBCCCAMELsequence1,
- &ett_camel_CamelFCIGPRSBillingChargingCharacteristics,
+ &ett_camel_CAMEL_FCIGPRSBillingChargingCharacteristics,
&ett_camel_T_fCIBCCCAMELsequence2,
- &ett_camel_CamelFCISMSBillingChargingCharacteristics,
+ &ett_camel_CAMEL_FCISMSBillingChargingCharacteristics,
&ett_camel_T_fCIBCCCAMELsequence3,
- &ett_camel_CamelSCIBillingChargingCharacteristics,
+ &ett_camel_CAMEL_SCIBillingChargingCharacteristics,
+ &ett_camel_CAMEL_SCIBillingChargingCharacteristicsAlt,
&ett_camel_CamelSCIGPRSBillingChargingCharacteristics,
+ &ett_camel_ChangeOfPositionControlInfo,
+ &ett_camel_ChangeOfLocation,
+ &ett_camel_ChangeOfLocationAlt,
&ett_camel_ChargingCharacteristics,
&ett_camel_ChargingResult,
&ett_camel_ChargingRollOver,
@@ -8564,6 +10294,10 @@ void proto_register_camel(void) {
&ett_camel_CompoundCriteria,
&ett_camel_DestinationRoutingAddress,
&ett_camel_DpSpecificCriteria,
+ &ett_camel_DpSpecificCriteriaAlt,
+ &ett_camel_DpSpecificInfoAlt,
+ &ett_camel_T_oServiceChangeSpecificInfo,
+ &ett_camel_T_tServiceChangeSpecificInfo,
&ett_camel_ElapsedTime,
&ett_camel_T_timeGPRSIfTariffSwitch,
&ett_camel_ElapsedTimeRollOver,
@@ -8574,14 +10308,25 @@ void proto_register_camel(void) {
&ett_camel_T_oCalledPartyBusySpecificInfo,
&ett_camel_T_oNoAnswerSpecificInfo,
&ett_camel_T_oAnswerSpecificInfo,
+ &ett_camel_T_oMidCallSpecificInfo,
+ &ett_camel_T_midCallEvents,
&ett_camel_T_oDisconnectSpecificInfo,
&ett_camel_T_tBusySpecificInfo,
&ett_camel_T_tNoAnswerSpecificInfo,
&ett_camel_T_tAnswerSpecificInfo,
+ &ett_camel_T_tMidCallSpecificInfo,
+ &ett_camel_T_midCallEvents1,
&ett_camel_T_tDisconnectSpecificInfo,
+ &ett_camel_T_oTermSeizedSpecificInfo,
+ &ett_camel_T_callAcceptedSpecificInfo,
+ &ett_camel_T_oAbandonSpecificInfo,
+ &ett_camel_T_oChangeOfPositionSpecificInfo,
+ &ett_camel_T_tChangeOfPositionSpecificInfo,
&ett_camel_EventSpecificInformationSMS,
&ett_camel_T_o_smsFailureSpecificInfo,
&ett_camel_T_o_smsSubmittedSpecificInfo,
+ &ett_camel_T_t_smsFailureSpecificInfo,
+ &ett_camel_T_t_smsDeliverySpecificInfo,
&ett_camel_Extensions,
&ett_camel_ForwardServiceInteractionInd,
&ett_camel_GapCriteria,
@@ -8590,6 +10335,7 @@ void proto_register_camel(void) {
&ett_camel_GapTreatment,
&ett_camel_GenericNumbers,
&ett_camel_GPRS_QoS,
+ &ett_camel_GPRS_QoS_Extension,
&ett_camel_GPRSEvent,
&ett_camel_GPRSEventSpecificInformation,
&ett_camel_T_attachChangeOfPositionSpecificInformation,
@@ -8601,11 +10347,16 @@ void proto_register_camel(void) {
&ett_camel_GPRSMSClass,
&ett_camel_InbandInfo,
&ett_camel_InformationToSend,
+ &ett_camel_LegOrCallSegment,
&ett_camel_LocationInformationGPRS,
&ett_camel_MessageID,
&ett_camel_T_text,
&ett_camel_SEQUENCE_SIZE_1_16_OF_Integer4,
&ett_camel_T_variableMessage,
+ &ett_camel_MetDPCriteriaList,
+ &ett_camel_MetDPCriterion,
+ &ett_camel_MetDPCriterionAlt,
+ &ett_camel_MidCallControlInfo,
&ett_camel_QualityOfService,
&ett_camel_ReceivingSideID,
&ett_camel_RequestedInformationList,
@@ -8615,8 +10366,8 @@ void proto_register_camel(void) {
&ett_camel_SendingSideID,
&ett_camel_ServiceInteractionIndicatorsTwo,
&ett_camel_SMSEvent,
- &ett_camel_TimeInformation,
&ett_camel_TimeIfTariffSwitch,
+ &ett_camel_TimeInformation,
&ett_camel_Tone,
&ett_camel_TransferredVolume,
&ett_camel_T_volumeIfTariffSwitch,
@@ -8641,11 +10392,15 @@ void proto_register_camel(void) {
&ett_camel_SubscriberState,
&ett_camel_PrivateExtensionList,
&ett_camel_CellIdOrLAI,
- &ett_camel_Ext_BasicServiceCode,
&ett_camel_LegID,
&ett_camel_VariablePartsArray,
&ett_camel_InitialDPArgExtension,
- &ett_camel_LocationInformation,
+ &ett_camel_InitiateCallAttemptArg,
+ &ett_camel_InitiateCallAttemptRes,
+ &ett_camel_MoveLegArg,
+ &ett_camel_PlayToneArg,
+ &ett_camel_SupportedCamelPhases,
+ &ett_camel_OfferedCamel4Functionalities,
&ett_camel_EventReportGPRSArg,
&ett_camel_ExtensionField,
&ett_camel_ApplyChargingArg,
@@ -8656,10 +10411,15 @@ void proto_register_camel(void) {
&ett_camel_ConnectToResourceArg,
&ett_camel_T_resourceAddress,
&ett_camel_ContinueWithArgumentArg,
+ &ett_camel_ContinueWithArgumentArgExtension,
+ &ett_camel_DisconnectLegArg,
+ &ett_camel_EntityReleasedArg,
+ &ett_camel_DisconnectForwardConnectionWithArgumentArg,
&ett_camel_EstablishTemporaryConnectionArg,
&ett_camel_EventReportBCSMArg,
&ett_camel_ResetTimerArg,
&ett_camel_SendChargingInformationArg,
+ &ett_camel_SplitLegArg,
&ett_camel_CAPGPRSReferenceNumber,
&ett_camel_EventReportSMSArg,
&ett_camel_RequestReportSMSEventArg,
diff --git a/epan/dissectors/packet-gsm_map.c b/epan/dissectors/packet-gsm_map.c
index f87d9066a6..a162472aa4 100644
--- a/epan/dissectors/packet-gsm_map.c
+++ b/epan/dissectors/packet-gsm_map.c
@@ -1563,7 +1563,7 @@ static const asn_namedbit SupportedCamelPhases_bits[] = {
{ 0, NULL, 0, 0, NULL, NULL }
};
-static int
+int
dissect_gsm_map_SupportedCamelPhases(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
SupportedCamelPhases_bits, hf_index, ett_gsm_map_SupportedCamelPhases,
@@ -1595,7 +1595,7 @@ static int dissect_supportedCAMELPhases_impl(packet_info *pinfo, proto_tree *tre
-static int
+int
dissect_gsm_map_IMSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
tvbuff_t *parameter_tvb;
@@ -2322,7 +2322,7 @@ dissect_gsm_map_TBCD_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset
-static int
+int
dissect_gsm_map_IMEI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_gsm_map_TBCD_STRING(implicit_tag, tvb, offset, pinfo, tree, hf_index);
@@ -4610,7 +4610,7 @@ static int dissect_SS_EventList_item(packet_info *pinfo, proto_tree *tree, tvbuf
}
-static const value_string gsm_map_Ext_BasicServiceCode_vals[] = {
+const value_string gsm_map_Ext_BasicServiceCode_vals[] = {
{ 2, "ext-BearerService" },
{ 3, "ext-Teleservice" },
{ 0, NULL }
@@ -4622,7 +4622,7 @@ static const ber_choice_t Ext_BasicServiceCode_choice[] = {
{ 0, 0, 0, 0, NULL }
};
-static int
+int
dissect_gsm_map_Ext_BasicServiceCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
Ext_BasicServiceCode_choice, hf_index, ett_gsm_map_Ext_BasicServiceCode,
@@ -4934,7 +4934,7 @@ static int dissect_preferentialCUG_Indicator(packet_info *pinfo, proto_tree *tre
-static int
+int
dissect_gsm_map_CUG_Interlock(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -5075,7 +5075,7 @@ static const ber_sequence_t CUG_Info_sequence[] = {
{ 0, 0, 0, NULL }
};
-static int
+int
dissect_gsm_map_CUG_Info(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
CUG_Info_sequence, hf_index, ett_gsm_map_CUG_Info);
@@ -6197,7 +6197,7 @@ static int dissect_pdp_Address_impl(packet_info *pinfo, proto_tree *tree, tvbuff
-static int
+int
dissect_gsm_map_QoS_Subscribed(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
tvbuff_t *parameter_tvb;
@@ -6242,7 +6242,7 @@ static int dissect_lcsAPN_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *t
-static int
+int
dissect_gsm_map_Ext_QoS_Subscribed(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
tvbuff_t *parameter_tvb;
@@ -6290,7 +6290,7 @@ static int dissect_pdp_ChargingCharacteristics_impl(packet_info *pinfo, proto_tr
-static int
+int
dissect_gsm_map_Ext2_QoS_Subscribed(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -6412,7 +6412,7 @@ static int dissect_lsaOnlyAccessIndicator_impl(packet_info *pinfo, proto_tree *t
-static int
+int
dissect_gsm_map_LSAIdentity(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -8206,7 +8206,7 @@ static int dissect_ageOfLocationEstimate_impl(packet_info *pinfo, proto_tree *tr
-static int
+int
dissect_gsm_map_GeographicalInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -8235,7 +8235,7 @@ static int dissect_locationNumber_impl(packet_info *pinfo, proto_tree *tree, tvb
-static int
+int
dissect_gsm_map_CellGlobalIdOrServiceAreaIdFixedLength(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -8309,7 +8309,7 @@ static const ber_sequence_t LocationInformation_sequence[] = {
{ 0, 0, 0, NULL }
};
-static int
+int
dissect_gsm_map_LocationInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
LocationInformation_sequence, hf_index, ett_gsm_map_LocationInformation);
@@ -8321,7 +8321,7 @@ static int dissect_locationInformation_impl(packet_info *pinfo, proto_tree *tree
}
-static const value_string gsm_map_SubscriberState_vals[] = {
+const value_string gsm_map_SubscriberState_vals[] = {
{ 0, "assumedIdle" },
{ 1, "camelBusy" },
{ 2, "notProvidedFromVLR" },
@@ -8335,7 +8335,7 @@ static const ber_choice_t SubscriberState_choice[] = {
{ 0, 0, 0, 0, NULL }
};
-static int
+int
dissect_gsm_map_SubscriberState(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
SubscriberState_choice, hf_index, ett_gsm_map_SubscriberState,
@@ -8349,7 +8349,7 @@ static int dissect_subscriberState(packet_info *pinfo, proto_tree *tree, tvbuff_
-static int
+int
dissect_gsm_map_RAIdentity(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -8433,7 +8433,7 @@ static int dissect_teid_ForIu_impl(packet_info *pinfo, proto_tree *tree, tvbuff_
-static int
+int
dissect_gsm_map_GPRSChargingID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -8558,7 +8558,7 @@ static int dissect_ps_SubscriberState_impl(packet_info *pinfo, proto_tree *tree,
-static int
+int
dissect_gsm_map_MS_Classmark2(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -8991,7 +8991,7 @@ static const ber_sequence_t UU_Data_sequence[] = {
{ 0, 0, 0, NULL }
};
-static int
+int
dissect_gsm_map_UU_Data(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
UU_Data_sequence, hf_index, ett_gsm_map_UU_Data);
@@ -10858,7 +10858,7 @@ static const asn_namedbit OfferedCamel4Functionalities_bits[] = {
{ 0, NULL, 0, 0, NULL, NULL }
};
-static int
+int
dissect_gsm_map_OfferedCamel4Functionalities(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
OfferedCamel4Functionalities_bits, hf_index, ett_gsm_map_OfferedCamel4Functionalities,
diff --git a/epan/dissectors/packet-gsm_map.h b/epan/dissectors/packet-gsm_map.h
index 692d4d8eda..a52a3c73a2 100644
--- a/epan/dissectors/packet-gsm_map.h
+++ b/epan/dissectors/packet-gsm_map.h
@@ -50,16 +50,34 @@ extern const value_string ssCode_vals[];
/*--- Included file: packet-gsm_map-exp.h ---*/
extern const value_string gsm_map_NotificationToMSUser_vals[];
+extern const value_string gsm_map_SubscriberState_vals[];
extern const value_string gsm_map_SS_Info_vals[];
extern const value_string gsm_map_InterrogateSS_Res_vals[];
extern const value_string gsm_map_GetPasswordArg_vals[];
+extern const value_string gsm_map_Ext_BasicServiceCode_vals[];
+int dissect_gsm_map_SupportedCamelPhases(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_ISDN_AddressString(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_QoS_Subscribed(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_Ext_QoS_Subscribed(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_Ext2_QoS_Subscribed(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_LSAIdentity(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_SS_Status(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_CUG_Info(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_CUG_Index(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_CUG_Interlock(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_NotificationToMSUser(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_AlertingPattern(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_IMSI(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_IMEI(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_LCSClientExternalID(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_LCSServiceTypeID(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_CellGlobalIdOrServiceAreaIdFixedLength(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_LocationInformation(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_RAIdentity(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_GeographicalInformation(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_SubscriberState(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_GPRSChargingID(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_UU_Data(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_RegisterSS_Arg(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_SS_Info(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_InterrogateSS_Res(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
@@ -74,9 +92,12 @@ int dissect_gsm_map_CurrentPassword(gboolean implicit_tag, tvbuff_t *tvb, int of
int dissect_gsm_map_RegisterCC_EntryRes(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_EraseCC_EntryArg(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_EraseCC_EntryRes(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_MS_Classmark2(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_OfferedCamel4Functionalities(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_SS_ForBS_Code(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_CCBS_Feature(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_AgeOfLocationInformation(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_gsm_map_Ext_BasicServiceCode(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_AddressString(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_ISDN_SubaddressString(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
int dissect_gsm_map_GSN_Address(gboolean implicit_tag, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
diff --git a/epan/dissectors/packet-inap.c b/epan/dissectors/packet-inap.c
index 3cf7f4f790..bfd995c96e 100644
--- a/epan/dissectors/packet-inap.c
+++ b/epan/dissectors/packet-inap.c
@@ -29,6 +29,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
* References: ETSI 300 374
+ * ITU Q.1218
*/
#ifdef HAVE_CONFIG_H
@@ -47,8 +48,9 @@
#include "packet-inap.h"
#include "packet-q931.h"
#include "packet-e164.h"
+#include "packet-isup.h"
-#define PNAME "INAP"
+#define PNAME "Intelligent Network Application Protocol"
#define PSNAME "INAP"
#define PFNAME "inap"
@@ -60,8 +62,8 @@ static int hf_inap_linkedid = -1; /* INTEGER */
static int hf_inap_absent = -1; /* NULL */
static int hf_inap_invokeId = -1; /* InvokeId */
static int hf_inap_invoke = -1; /* InvokePDU */
-static int hf_inap_ReturnError = -1; /* InvokePDU */
-static int hf_inap_returnResult = -1; /* InvokePDU */
+static int hf_inap_ReturnError = -1; /* InvokePDU */
+static int hf_inap_returnResult = -1; /* InvokePDU */
static int hf_inap_returnResult_result = -1;
static int hf_inap_getPassword = -1;
static int hf_inap_currentPassword = -1;
@@ -79,174 +81,118 @@ static int hf_inap_targetCallID = -1; /* CallID */
static int hf_inap_legToBeConnectedID = -1; /* OCTET_STRING */
static int hf_inap_legToBeDetached = -1; /* OCTET_STRING */
static int hf_inap_legID = -1; /* LegID */
-static int hf_inap_sendingSideID = -1; /* OCTET_STRING_SIZE_1 */
-static int hf_inap_receivingSideID = -1; /* OCTET_STRING_SIZE_1 */
static int hf_inap_heldLegID = -1; /* LegID */
static int hf_inap_legToBeReleased = -1; /* LegID */
static int hf_inap_releaseCause = -1; /* Cause */
static int hf_inap_legStatus = -1; /* LegStatus */
-static int hf_inap_VariableParts_item = -1; /* VariableParts_item */
-static int hf_inap_integer = -1; /* INTEGER_0_2147483647 */
-static int hf_inap_number = -1; /* OCTET_STRING */
-static int hf_inap_time = -1; /* OCTET_STRING */
-static int hf_inap_date = -1; /* OCTET_STRING */
-static int hf_inap_price = -1; /* OCTET_STRING */
-static int hf_inap_elementaryMessageID = -1; /* INTEGER_0_2147483647 */
-static int hf_inap_variableParts = -1; /* VariableParts */
-static int hf_inap_toneID = -1; /* INTEGER_0_2147483647 */
-static int hf_inap_tduration = -1; /* INTEGER_0_2147483647 */
-static int hf_inap_messageContent = -1; /* IA5String */
-static int hf_inap_attributes = -1; /* OCTET_STRING */
-static int hf_inap_text = -1; /* Text */
-static int hf_inap_elementaryMessageIDs = -1; /* T_elementaryMessageIDs */
-static int hf_inap_elementaryMessageIDs_item = -1; /* INTEGER_0_2147483647 */
-static int hf_inap_variableMessage = -1; /* VariableMessage */
-static int hf_inap_inbandInfo = -1; /* T_inbandInfo */
-static int hf_inap_messageID = -1; /* MessageID */
-static int hf_inap_numberOfRepetitions = -1; /* INTEGER_1_127 */
-static int hf_inap_mduration = -1; /* INTEGER_0_32767 */
-static int hf_inap_interval = -1; /* INTEGER_0_32767 */
-static int hf_inap_tone = -1; /* Tone */
-static int hf_inap_displayInformation = -1; /* IA5String */
-static int hf_inap_dialledNumber = -1; /* OCTET_STRING */
-static int hf_inap_callingLineID = -1; /* OCTET_STRING */
-static int hf_inap_serviceKey = -1; /* INTEGER_0_2147483647 */
-static int hf_inap_addressAndService = -1; /* T_addressAndService */
-static int hf_inap_calledAddressValue = -1; /* OCTET_STRING */
-static int hf_inap_callingAddressValue = -1; /* OCTET_STRING */
-static int hf_inap_locationNumber = -1; /* OCTET_STRING */
static int hf_inap_Extensions_item = -1; /* Extensions_item */
static int hf_inap_type = -1; /* INTEGER */
static int hf_inap_criticality = -1; /* T_criticality */
static int hf_inap_value = -1; /* OCTET_STRING */
-static int hf_inap_filteredCallTreatment = -1; /* T_filteredCallTreatment */
-static int hf_inap_sFBillingChargingCharacteristics = -1; /* OCTET_STRING */
-static int hf_inap_informationToSend = -1; /* InformationToSend */
-static int hf_inap_maximumNumberOfCounters = -1; /* INTEGER */
-static int hf_inap_filteringCharacteristics = -1; /* T_filteringCharacteristics */
-static int hf_inap_numberOfCalls = -1; /* INTEGER_0_2147483647 */
-static int hf_inap_filteringTimeOut = -1; /* T_filteringTimeOut */
-static int hf_inap_aduration = -1; /* INTEGER_M2_86400 */
-static int hf_inap_stopTime = -1; /* OCTET_STRING_SIZE_6 */
+static int hf_inap_filteredCallTreatment = -1; /* FilteredCallTreatment */
+static int hf_inap_filteringCharacteristics = -1; /* FilteringCharacteristics */
+static int hf_inap_filteringTimeOut = -1; /* FilteringTimeOut */
static int hf_inap_filteringCriteria = -1; /* FilteringCriteria */
-static int hf_inap_startTime = -1; /* OCTET_STRING_SIZE_6 */
+static int hf_inap_startTime = -1; /* DateAndTime */
static int hf_inap_extensions = -1; /* Extensions */
-static int hf_inap_messageType = -1; /* T_messageType */
-static int hf_inap_dpAssignment = -1; /* T_dpAssignment */
-static int hf_inap_miscCallInfo = -1; /* MiscCallInfo */
-static int hf_inap_triggerType = -1; /* TriggerType */
-static int hf_inap_RouteList_item = -1; /* OCTET_STRING */
-static int hf_inap_bearerCap = -1; /* OCTET_STRING */
-static int hf_inap_tmr = -1; /* OCTET_STRING_SIZE_1 */
-static int hf_inap_serviceAddressInformation = -1; /* ServiceAddressInformation */
-static int hf_inap_bearerCapability = -1; /* BearerCapability */
-static int hf_inap_calledPartyNumber = -1; /* OCTET_STRING */
-static int hf_inap_callingPartyNumber = -1; /* OCTET_STRING */
-static int hf_inap_callingPartysCategory = -1; /* OCTET_STRING_SIZE_1 */
-static int hf_inap_iPSSPCapabilities = -1; /* OCTET_STRING */
-static int hf_inap_iPAvailable = -1; /* OCTET_STRING */
-static int hf_inap_iSDNAccessRelatedInformation = -1; /* OCTET_STRING */
-static int hf_inap_cGEncountered = -1; /* CGEncountered */
-static int hf_inap_serviceProfileIdentifier = -1; /* OCTET_STRING */
-static int hf_inap_terminalType = -1; /* TerminalType */
-static int hf_inap_chargeNumber = -1; /* OCTET_STRING */
-static int hf_inap_servingAreaID = -1; /* OCTET_STRING */
-static int hf_inap_trunkGroupID = -1; /* INTEGER */
-static int hf_inap_privateFacilityID = -1; /* INTEGER */
-static int hf_inap_huntGroup = -1; /* OCTET_STRING */
-static int hf_inap_routeIndex = -1; /* OCTET_STRING */
static int hf_inap_dpSpecificCommonParameters = -1; /* DpSpecificCommonParameters */
-static int hf_inap_dialledDigits = -1; /* OCTET_STRING */
-static int hf_inap_callingPartyBusinessGroupID = -1; /* OCTET_STRING */
-static int hf_inap_callingPartySubaddress = -1; /* OCTET_STRING */
-static int hf_inap_callingFacilityGroup = -1; /* CallingFacilityGroup */
-static int hf_inap_callingFacilityGroupMember = -1; /* INTEGER */
-static int hf_inap_originalCalledPartyID = -1; /* OCTET_STRING */
-static int hf_inap_prefix = -1; /* OCTET_STRING */
-static int hf_inap_redirectingPartyID = -1; /* OCTET_STRING */
-static int hf_inap_redirectionInformation = -1; /* OCTET_STRING_SIZE_2 */
+static int hf_inap_dialledDigits = -1; /* CalledPartyNumber */
+static int hf_inap_callingPartyBusinessGroupID = -1; /* CallingPartyBusinessGroupID */
+static int hf_inap_callingPartySubaddress = -1; /* CallingPartySubaddress */
+static int hf_inap_callingFacilityGroup = -1; /* FacilityGroup */
+static int hf_inap_callingFacilityGroupMember = -1; /* FacilityGroupMember */
+static int hf_inap_originalCalledPartyID = -1; /* OriginalCalledPartyID */
+static int hf_inap_prefix = -1; /* Digits */
+static int hf_inap_redirectingPartyID = -1; /* RedirectingPartyID */
+static int hf_inap_redirectionInformation = -1; /* RedirectionInformation */
static int hf_inap_routeList = -1; /* RouteList */
-static int hf_inap_travellingClassMark = -1; /* OCTET_STRING */
-static int hf_inap_featureCode = -1; /* OCTET_STRING */
-static int hf_inap_accessCode = -1; /* OCTET_STRING */
-static int hf_inap_carrier = -1; /* OCTET_STRING */
-static int hf_inap_destinationRoutingAddress = -1; /* SEQUENCE_SIZE_1_3_OF_DestinationAddress */
-static int hf_inap_destinationRoutingAddress_item = -1; /* DestinationAddress */
-static int hf_inap_alertingPattern = -1; /* OCTET_STRING_SIZE_3 */
-static int hf_inap_aChBillingChargingCharacteristics = -1; /* OCTET_STRING */
-static int hf_inap_partyToCharge = -1; /* PartyToCharge */
-static int hf_inap_correlationID = -1; /* OCTET_STRING */
-static int hf_inap_gapCriteria = -1; /* T_gapCriteria */
-static int hf_inap_gapOnService = -1; /* T_gapOnService */
-static int hf_inap_dpCriteria = -1; /* T_dpCriteria */
-static int hf_inap_calledAddressAndService = -1; /* T_calledAddressAndService */
-static int hf_inap_callingAddressAndService = -1; /* T_callingAddressAndService */
-static int hf_inap_gapIndicators = -1; /* T_gapIndicators */
-static int hf_inap_cgduration = -1; /* INTEGER_M2_86400 */
-static int hf_inap_gapInterval = -1; /* INTEGER_M1_60000 */
-static int hf_inap_controlType = -1; /* T_controlType */
-static int hf_inap_gapTreatment = -1; /* T_gapTreatment */
-static int hf_inap_both = -1; /* Both */
-static int hf_inap_requestedInformationList = -1; /* T_requestedInformationList */
-static int hf_inap_requestedInformationList_item = -1; /* T_requestedInformationList_item */
-static int hf_inap_requestedInformationType = -1; /* T_requestedInformationType */
-static int hf_inap_requestedInformationValue = -1; /* T_requestedInformationValue */
-static int hf_inap_callAttemptElapsedTimeValue = -1; /* INTEGER_0_255 */
-static int hf_inap_callStopTimeValue = -1; /* OCTET_STRING_SIZE_6 */
-static int hf_inap_callConnectedElapsedTimeValue = -1; /* INTEGER_0_2147483647 */
-static int hf_inap_releaseCauseValue = -1; /* Cause */
-static int hf_inap_requestedInformationTypeList = -1; /* T_requestedInformationTypeList */
-static int hf_inap_requestedInformationTypeList_item = -1; /* T_requestedInformationTypeList_item */
-static int hf_inap_invokeID = -1; /* INTEGER_M128_127 */
+static int hf_inap_travellingClassMark = -1; /* TravellingClassMark */
+static int hf_inap_featureCode = -1; /* FeatureCode */
+static int hf_inap_accessCode = -1; /* AccessCode */
+static int hf_inap_carrier = -1; /* Carrier */
+static int hf_inap_destinationRoutingAddress = -1; /* DestinationRoutingAddress */
+static int hf_inap_alertingPattern = -1; /* AlertingPattern */
+static int hf_inap_iSDNAccessRelatedInformation = -1; /* ISDNAccessRelatedInformation */
+static int hf_inap_callingPartyNumber = -1; /* CallingPartyNumber */
+static int hf_inap_callingPartysCategory = -1; /* CallingPartysCategory */
+static int hf_inap_calledPartyNumber = -1; /* CalledPartyNumber */
+static int hf_inap_chargeNumber = -1; /* ChargeNumber */
+static int hf_inap_aChBillingChargingCharacteristics = -1; /* AChBillingChargingCharacteristics */
+static int hf_inap_partyToCharge = -1; /* LegID */
+static int hf_inap_correlationID = -1; /* CorrelationID */
+static int hf_inap_iPAvailable = -1; /* IPAvailable */
+static int hf_inap_iPSSPCapabilities = -1; /* IPSSPCapabilities */
+static int hf_inap_gapCriteria = -1; /* GapCriteria */
+static int hf_inap_gapIndicators = -1; /* GapIndicators */
+static int hf_inap_controlType = -1; /* ControlType */
+static int hf_inap_gapTreatment = -1; /* GapTreatment */
+static int hf_inap_requestedInformationTypeList = -1; /* RequestedInformationTypeList */
+static int hf_inap_invokeID = -1; /* InvokeID */
static int hf_inap_allRequests = -1; /* NULL */
-static int hf_inap_lineID = -1; /* OCTET_STRING */
-static int hf_inap_facilityGroupID = -1; /* FacilityGroupID */
-static int hf_inap_facilityGroupMemberID = -1; /* INTEGER */
static int hf_inap_resourceID = -1; /* ResourceID */
-static int hf_inap_numberingPlan = -1; /* OCTET_STRING_SIZE_1 */
-static int hf_inap_cutAndPaste = -1; /* INTEGER_0_22 */
-static int hf_inap_forwardingCondition = -1; /* T_forwardingCondition */
-static int hf_inap_scfID = -1; /* OCTET_STRING */
-static int hf_inap_serviceInteractionIndicators = -1; /* OCTET_STRING */
+static int hf_inap_numberingPlan = -1; /* NumberingPlan */
+static int hf_inap_cutAndPaste = -1; /* CutAndPaste */
+static int hf_inap_forwardingCondition = -1; /* ForwardingCondition */
+static int hf_inap_scfID = -1; /* ScfID */
+static int hf_inap_serviceInteractionIndicators = -1; /* ServiceInteractionIndicators */
static int hf_inap_resourceAddress = -1; /* T_resourceAddress */
-static int hf_inap_ipRoutingAddress = -1; /* OCTET_STRING */
+static int hf_inap_ipRoutingAddress = -1; /* IPRoutingAddress */
+static int hf_inap_both2 = -1; /* T_both2 */
static int hf_inap_none = -1; /* NULL */
-static int hf_inap_assistingSSPIPRoutingAddress = -1; /* OCTET_STRING */
-static int hf_inap_eventTypeCharging = -1; /* OCTET_STRING */
-static int hf_inap_eventSpecificInformationCharging = -1; /* OCTET_STRING */
+static int hf_inap_serviceAddressInformation = -1; /* ServiceAddressInformation */
+static int hf_inap_bearerCapability = -1; /* BearerCapability */
+static int hf_inap_cGEncountered = -1; /* CGEncountered */
+static int hf_inap_locationNumber = -1; /* LocationNumber */
+static int hf_inap_serviceProfileIdentifier = -1; /* ServiceProfileIdentifier */
+static int hf_inap_terminalType = -1; /* TerminalType */
+static int hf_inap_servingAreaID = -1; /* ServingAreaID */
+static int hf_inap_assistingSSPIPRoutingAddress = -1; /* AssistingSSPIPRoutingAddress */
+static int hf_inap_eventTypeCharging = -1; /* EventTypeCharging */
+static int hf_inap_eventSpecificInformationCharging = -1; /* EventSpecificInformationCharging */
static int hf_inap_monitorMode = -1; /* MonitorMode */
static int hf_inap_eventTypeBCSM = -1; /* EventTypeBCSM */
-static int hf_inap_bcsmEventCorrelationID = -1; /* OCTET_STRING */
-static int hf_inap_eventSpecificInformationBCSM = -1; /* T_eventSpecificInformationBCSM */
-static int hf_inap_collectedInfoSpecificInfo = -1; /* T_collectedInfoSpecificInfo */
-static int hf_inap_calledPartynumber = -1; /* OCTET_STRING */
-static int hf_inap_analyzedInfoSpecificInfo = -1; /* T_analyzedInfoSpecificInfo */
-static int hf_inap_routeSelectFailureSpecificInfo = -1; /* T_routeSelectFailureSpecificInfo */
-static int hf_inap_failureCause = -1; /* OCTET_STRING_SIZE_2_10 */
-static int hf_inap_oCalledPartyBusySpecificInfo = -1; /* T_oCalledPartyBusySpecificInfo */
-static int hf_inap_busyCause = -1; /* OCTET_STRING_SIZE_2_10 */
-static int hf_inap_oNoAnswerSpecificInfo = -1; /* T_oNoAnswerSpecificInfo */
-static int hf_inap_oAnswerSpecificInfo = -1; /* T_oAnswerSpecificInfo */
-static int hf_inap_oMidCallSpecificInfo = -1; /* T_oMidCallSpecificInfo */
-static int hf_inap_connectTime = -1; /* INTEGER_0_2147483647 */
-static int hf_inap_oDisconnectSpecificInfo = -1; /* T_oDisconnectSpecificInfo */
-static int hf_inap_tBusySpecificInfo = -1; /* T_tBusySpecificInfo */
-static int hf_inap_tNoAnswerSpecificInfo = -1; /* T_tNoAnswerSpecificInfo */
-static int hf_inap_tAnswerSpecificInfo = -1; /* T_tAnswerSpecificInfo */
-static int hf_inap_tMidCallSpecificInfo = -1; /* T_tMidCallSpecificInfo */
-static int hf_inap_tDisconnectSpecificInfo = -1; /* T_tDisconnectSpecificInfo */
-static int hf_inap_holdcause = -1; /* OCTET_STRING */
+static int hf_inap_bcsmEventCorrelationID = -1; /* CorrelationID */
+static int hf_inap_eventSpecificInformationBCSM = -1; /* EventSpecificInformationBCSM */
+static int hf_inap_miscCallInfo = -1; /* MiscCallInfo */
+static int hf_inap_holdcause = -1; /* HoldCause */
static int hf_inap_empty = -1; /* NULL */
-static int hf_inap_highLayerCompatibility = -1; /* OCTET_STRING_SIZE_2 */
-static int hf_inap_additionalCallingPartyNumber = -1; /* OCTET_STRING */
-static int hf_inap_forwardCallIndicators = -1; /* OCTET_STRING_SIZE_2 */
-static int hf_inap_calledPartyBusinessGroupID = -1; /* OCTET_STRING */
-static int hf_inap_calledPartySubaddress = -1; /* OCTET_STRING */
+static int hf_inap_serviceKey = -1; /* ServiceKey */
+static int hf_inap_triggerType = -1; /* TriggerType */
+static int hf_inap_highLayerCompatibility = -1; /* HighLayerCompatibility */
+static int hf_inap_additionalCallingPartyNumber = -1; /* AdditionalCallingPartyNumber */
+static int hf_inap_forwardCallIndicators = -1; /* ForwardCallIndicators */
+static int hf_inap_calledPartyBusinessGroupID = -1; /* CalledPartyBusinessGroupID */
+static int hf_inap_calledPartySubaddress = -1; /* CalledPartySubaddress */
static int hf_inap_featureRequestIndicator = -1; /* FeatureRequestIndicator */
+static int hf_inap_busyCause = -1; /* Cause */
+static int hf_inap_connectTime = -1; /* Integer4 */
+static int hf_inap_informationToSend = -1; /* InformationToSend */
static int hf_inap_disconnectFromIPForbidden = -1; /* BOOLEAN */
static int hf_inap_requestAnnouncementComplete = -1; /* BOOLEAN */
-static int hf_inap_collectedInfo = -1; /* T_collectedInfo */
-static int hf_inap_collectedDigits = -1; /* T_collectedDigits */
+static int hf_inap_collectedInfo = -1; /* CollectedInfo */
+static int hf_inap_digitsResponse = -1; /* Digits */
+static int hf_inap_iA5Response = -1; /* IA5String */
+static int hf_inap_initialCallSegment = -1; /* Cause */
+static int hf_inap_allCallSegments = -1; /* T_allCallSegments */
+static int hf_inap_resourceStatus = -1; /* ResourceStatus */
+static int hf_inap_monitorDuration = -1; /* Duration */
+static int hf_inap_RequestNotificationChargingEvent_item = -1; /* RequestNotificationChargingEvent_item */
+static int hf_inap_eventTypeCharging2 = -1; /* OCTET_STRING */
+static int hf_inap_bcsmEvents = -1; /* SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent */
+static int hf_inap_bcsmEvents_item = -1; /* BCSMEvent */
+static int hf_inap_timerID = -1; /* TimerID */
+static int hf_inap_timervalue = -1; /* TimerValue */
+static int hf_inap_failureCause = -1; /* Cause */
+static int hf_inap_destinationNumberRoutingAddress = -1; /* CalledPartyNumber */
+static int hf_inap_calledFacilityGroup = -1; /* FacilityGroup */
+static int hf_inap_calledFacilityGroupMember = -1; /* FacilityGroupMember */
+static int hf_inap_sCIBillingChargingCharacteristics = -1; /* SCIBillingChargingCharacteristics */
+static int hf_inap_countersValue = -1; /* CountersValue */
+static int hf_inap_responseCondition = -1; /* ResponseCondition */
+static int hf_inap_reportCondition = -1; /* ReportCondition */
+static int hf_inap_dpSpecificCriteria = -1; /* DpSpecificCriteria */
+static int hf_inap_bearerCap = -1; /* BearerCap */
+static int hf_inap_tmr = -1; /* OCTET_STRING_SIZE_1 */
static int hf_inap_minimumNbOfDigits = -1; /* INTEGER_1_127 */
static int hf_inap_maximumNbOfDigits = -1; /* INTEGER_1_127 */
static int hf_inap_endOfReplyDigit = -1; /* OCTET_STRING_SIZE_1_2 */
@@ -254,35 +200,92 @@ static int hf_inap_cancelDigit = -1; /* OCTET_STRING_SIZE_1_2 */
static int hf_inap_startDigit = -1; /* OCTET_STRING_SIZE_1_2 */
static int hf_inap_firstDigitTimeOut = -1; /* INTEGER_1_127 */
static int hf_inap_interDigitTimeOut = -1; /* INTEGER_1_127 */
-static int hf_inap_errorTreatment = -1; /* T_errorTreatment */
+static int hf_inap_errorTreatment = -1; /* ErrorTreatment */
static int hf_inap_interruptableAnnInd = -1; /* BOOLEAN */
static int hf_inap_voiceInformation = -1; /* BOOLEAN */
static int hf_inap_voiceBack = -1; /* BOOLEAN */
+static int hf_inap_collectedDigits = -1; /* CollectedDigits */
static int hf_inap_iA5Information = -1; /* BOOLEAN */
-static int hf_inap_digitsResponse = -1; /* OCTET_STRING */
-static int hf_inap_iA5Response = -1; /* IA5String */
-static int hf_inap_initialCallSegment = -1; /* Cause */
-static int hf_inap_allCallSegments = -1; /* T_allCallSegments */
-static int hf_inap_resourceStatus = -1; /* ResourceStatus */
-static int hf_inap_monitorDuration = -1; /* INTEGER_M2_86400 */
-static int hf_inap_RequestNotificationChargingEvent_item = -1; /* RequestNotificationChargingEvent_item */
-static int hf_inap_bcsmEvents = -1; /* T_bcsmEvents */
-static int hf_inap_bcsmEvents_item = -1; /* T_bcsmEvents_item */
-static int hf_inap_dpSpecificCriteria = -1; /* T_dpSpecificCriteria */
-static int hf_inap_numberOfDigits = -1; /* INTEGER_1_255 */
-static int hf_inap_applicationTimer = -1; /* INTEGER_0_2047 */
-static int hf_inap_timerID = -1; /* T_timerID */
-static int hf_inap_timervalue = -1; /* INTEGER_0_2147483647 */
-static int hf_inap_destinationNumberRoutingAddress = -1; /* OCTET_STRING */
-static int hf_inap_calledFacilityGroup = -1; /* CalledFacilityGroup */
-static int hf_inap_calledFacilityGroupMember = -1; /* INTEGER */
-static int hf_inap_sCIBillingChargingCharacteristics = -1; /* OCTET_STRING */
-static int hf_inap_countersValue = -1; /* T_countersValue */
-static int hf_inap_countersValue_item = -1; /* T_countersValue_item */
-static int hf_inap_counterID = -1; /* INTEGER_0_99 */
-static int hf_inap_counterValue = -1; /* INTEGER_0_2147483647 */
-static int hf_inap_responseCondition = -1; /* T_responseCondition */
-static int hf_inap_reportCondition = -1; /* T_reportCondition */
+static int hf_inap_counterID = -1; /* CounterID */
+static int hf_inap_counterValue = -1; /* Integer4 */
+static int hf_inap_CountersValue_item = -1; /* CounterAndValue */
+static int hf_inap_DestinationRoutingAddress_item = -1; /* CalledPartyNumber */
+static int hf_inap_numberOfDigits = -1; /* NumberOfDigits */
+static int hf_inap_applicationTimer = -1; /* ApplicationTimer */
+static int hf_inap_collectedInfoSpecificInfo = -1; /* T_collectedInfoSpecificInfo */
+static int hf_inap_calledPartynumber = -1; /* CalledPartyNumber */
+static int hf_inap_analyzedInfoSpecificInfo = -1; /* T_analyzedInfoSpecificInfo */
+static int hf_inap_routeSelectFailureSpecificInfo = -1; /* T_routeSelectFailureSpecificInfo */
+static int hf_inap_oCalledPartyBusySpecificInfo = -1; /* T_oCalledPartyBusySpecificInfo */
+static int hf_inap_oNoAnswerSpecificInfo = -1; /* T_oNoAnswerSpecificInfo */
+static int hf_inap_oAnswerSpecificInfo = -1; /* T_oAnswerSpecificInfo */
+static int hf_inap_oMidCallSpecificInfo = -1; /* T_oMidCallSpecificInfo */
+static int hf_inap_oDisconnectSpecificInfo = -1; /* T_oDisconnectSpecificInfo */
+static int hf_inap_tBusySpecificInfo = -1; /* T_tBusySpecificInfo */
+static int hf_inap_tNoAnswerSpecificInfo = -1; /* T_tNoAnswerSpecificInfo */
+static int hf_inap_tAnswerSpecificInfo = -1; /* T_tAnswerSpecificInfo */
+static int hf_inap_tMidCallSpecificInfo = -1; /* T_tMidCallSpecificInfo */
+static int hf_inap_tDisconnectSpecificInfo = -1; /* T_tDisconnectSpecificInfo */
+static int hf_inap_trunkGroupID = -1; /* INTEGER */
+static int hf_inap_privateFacilityID = -1; /* INTEGER */
+static int hf_inap_huntGroup = -1; /* OCTET_STRING */
+static int hf_inap_routeIndex = -1; /* OCTET_STRING */
+static int hf_inap_sFBillingChargingCharacteristics = -1; /* SFBillingChargingCharacteristics */
+static int hf_inap_maximumNumberOfCounters = -1; /* MaximumNumberOfCounters */
+static int hf_inap_interval1 = -1; /* INTEGER_M1_32000 */
+static int hf_inap_numberOfCalls = -1; /* Integer4 */
+static int hf_inap_dialledNumber = -1; /* Digits */
+static int hf_inap_callingLineID = -1; /* Digits */
+static int hf_inap_addressAndService = -1; /* T_addressAndService */
+static int hf_inap_calledAddressValue = -1; /* Digits */
+static int hf_inap_callingAddressValue = -1; /* Digits */
+static int hf_inap_duration = -1; /* Duration */
+static int hf_inap_stopTime = -1; /* DateAndTime */
+static int hf_inap_gapOnService = -1; /* GapOnService */
+static int hf_inap_calledAddressAndService = -1; /* T_calledAddressAndService */
+static int hf_inap_callingAddressAndService = -1; /* T_callingAddressAndService */
+static int hf_inap_dpCriteria = -1; /* EventTypeBCSM */
+static int hf_inap_gapInterval = -1; /* Interval */
+static int hf_inap_both = -1; /* T_both */
+static int hf_inap_messageID = -1; /* MessageID */
+static int hf_inap_numberOfRepetitions = -1; /* INTEGER_1_127 */
+static int hf_inap_duration3 = -1; /* INTEGER_0_32767 */
+static int hf_inap_interval = -1; /* INTEGER_0_32767 */
+static int hf_inap_inbandInfo = -1; /* InbandInfo */
+static int hf_inap_tone = -1; /* Tone */
+static int hf_inap_displayInformation = -1; /* DisplayInformation */
+static int hf_inap_sendingSideID = -1; /* LegType */
+static int hf_inap_receivingSideID = -1; /* LegType */
+static int hf_inap_elementaryMessageID = -1; /* Integer4 */
+static int hf_inap_text = -1; /* T_text */
+static int hf_inap_messageContent = -1; /* IA5String_SIZE_minMessageContentLength_maxMessageContentLength */
+static int hf_inap_attributes = -1; /* OCTET_STRING_SIZE_minAttributesLength_maxAttributesLength */
+static int hf_inap_elementaryMessageIDs = -1; /* SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4 */
+static int hf_inap_elementaryMessageIDs_item = -1; /* Integer4 */
+static int hf_inap_variableMessage = -1; /* T_variableMessage */
+static int hf_inap_variableParts = -1; /* SEQUENCE_SIZE_1_5_OF_VariablePart */
+static int hf_inap_variableParts_item = -1; /* VariablePart */
+static int hf_inap_messageType = -1; /* T_messageType */
+static int hf_inap_dpAssignment = -1; /* T_dpAssignment */
+static int hf_inap_RequestedInformationList_item = -1; /* RequestedInformation */
+static int hf_inap_RequestedInformationTypeList_item = -1; /* RequestedInformationType */
+static int hf_inap_requestedInformationType = -1; /* RequestedInformationType */
+static int hf_inap_requestedInformationValue = -1; /* RequestedInformationValue */
+static int hf_inap_callAttemptElapsedTimeValue = -1; /* INTEGER_0_255 */
+static int hf_inap_callStopTimeValue = -1; /* DateAndTime */
+static int hf_inap_callConnectedElapsedTimeValue = -1; /* Integer4 */
+static int hf_inap_releaseCauseValue = -1; /* Cause */
+static int hf_inap_lineID = -1; /* Digits */
+static int hf_inap_facilityGroupID = -1; /* FacilityGroup */
+static int hf_inap_facilityGroupMemberID = -1; /* INTEGER */
+static int hf_inap_RouteList_item = -1; /* OCTET_STRING */
+static int hf_inap_toneID = -1; /* Integer4 */
+static int hf_inap_tone_duration = -1; /* Integer4 */
+static int hf_inap_integer = -1; /* Integer4 */
+static int hf_inap_number = -1; /* Digits */
+static int hf_inap_time = -1; /* OCTET_STRING_SIZE_2 */
+static int hf_inap_date2 = -1; /* OCTET_STRING_SIZE_3 */
+static int hf_inap_price = -1; /* OCTET_STRING_SIZE_4 */
static int hf_inap_problem = -1; /* T_problem */
static int hf_inap_operation = -1; /* INTEGER_M128_127 */
static int hf_inap_rinvokeID = -1; /* T_rinvokeID */
@@ -322,66 +325,74 @@ static gint ett_inap_CallPartyHandlingResultsArg = -1;
static gint ett_inap_ChangePartiesArg = -1;
static gint ett_inap_DetachArg = -1;
static gint ett_inap_HoldCallPartyConnectionArg = -1;
-static gint ett_inap_LegID = -1;
static gint ett_inap_ReconnectArg = -1;
static gint ett_inap_ReleaseCallPartyConnectionArg = -1;
static gint ett_inap_LegInformation = -1;
-static gint ett_inap_VariableParts = -1;
-static gint ett_inap_VariableParts_item = -1;
-static gint ett_inap_VariableMessage = -1;
-static gint ett_inap_Tone = -1;
-static gint ett_inap_Text = -1;
-static gint ett_inap_MessageID = -1;
-static gint ett_inap_T_elementaryMessageIDs = -1;
-static gint ett_inap_InformationToSend = -1;
-static gint ett_inap_T_inbandInfo = -1;
-static gint ett_inap_FilteringCriteria = -1;
-static gint ett_inap_T_addressAndService = -1;
static gint ett_inap_Extensions = -1;
static gint ett_inap_Extensions_item = -1;
-static gint ett_inap_ActivateServiceFilteringarg = -1;
-static gint ett_inap_T_filteredCallTreatment = -1;
-static gint ett_inap_T_filteringCharacteristics = -1;
-static gint ett_inap_T_filteringTimeOut = -1;
-static gint ett_inap_MiscCallInfo = -1;
-static gint ett_inap_ServiceAddressInformation = -1;
-static gint ett_inap_RouteList = -1;
-static gint ett_inap_BearerCapability = -1;
-static gint ett_inap_DpSpecificCommonParameters = -1;
-static gint ett_inap_CallingFacilityGroup = -1;
+static gint ett_inap_ActivateServiceFilteringArg = -1;
static gint ett_inap_AnalysedInformationarg = -1;
static gint ett_inap_AnalyseInformationarg = -1;
-static gint ett_inap_SEQUENCE_SIZE_1_3_OF_DestinationAddress = -1;
-static gint ett_inap_PartyToCharge = -1;
-static gint ett_inap_ApplyChargingarg = -1;
-static gint ett_inap_AssistRequestInstructionsarg = -1;
-static gint ett_inap_CallGaparg = -1;
-static gint ett_inap_T_gapCriteria = -1;
-static gint ett_inap_T_gapOnService = -1;
-static gint ett_inap_T_calledAddressAndService = -1;
-static gint ett_inap_T_callingAddressAndService = -1;
-static gint ett_inap_T_gapIndicators = -1;
-static gint ett_inap_T_gapTreatment = -1;
-static gint ett_inap_Both = -1;
-static gint ett_inap_CallInformationReportarg = -1;
-static gint ett_inap_T_requestedInformationList = -1;
-static gint ett_inap_T_requestedInformationList_item = -1;
-static gint ett_inap_T_requestedInformationValue = -1;
-static gint ett_inap_CallInformationRequestarg = -1;
-static gint ett_inap_T_requestedInformationTypeList = -1;
-static gint ett_inap_Cancelarg = -1;
-static gint ett_inap_FacilityGroupID = -1;
-static gint ett_inap_ResourceID = -1;
-static gint ett_inap_CancelStatusReportRequestarg = -1;
-static gint ett_inap_CollectedInformationarg = -1;
-static gint ett_inap_CollectInformationarg = -1;
-static gint ett_inap_Connectarg = -1;
-static gint ett_inap_ConnectToResource = -1;
+static gint ett_inap_ApplyChargingArg = -1;
+static gint ett_inap_AssistRequestInstructionsArg = -1;
+static gint ett_inap_CallGapArg = -1;
+static gint ett_inap_CallInformationReportArg = -1;
+static gint ett_inap_CallInformationRequestArg = -1;
+static gint ett_inap_CancelArg = -1;
+static gint ett_inap_CancelStatusReportRequestArg = -1;
+static gint ett_inap_CollectedInformationArg = -1;
+static gint ett_inap_CollectInformationArg = -1;
+static gint ett_inap_ConnectArg = -1;
+static gint ett_inap_ConnectToResourceArg = -1;
static gint ett_inap_T_resourceAddress = -1;
-static gint ett_inap_EstablishTemporaryConnection = -1;
-static gint ett_inap_EventNotificationChargingarg = -1;
-static gint ett_inap_EventReportBCSM = -1;
-static gint ett_inap_T_eventSpecificInformationBCSM = -1;
+static gint ett_inap_T_both2 = -1;
+static gint ett_inap_DpSpecificCommonParameters = -1;
+static gint ett_inap_EstablishTemporaryConnectionArg = -1;
+static gint ett_inap_EventNotificationChargingArg = -1;
+static gint ett_inap_EventReportBCSMArg = -1;
+static gint ett_inap_HoldCallInNetworkArg = -1;
+static gint ett_inap_InitialDP = -1;
+static gint ett_inap_InitiateCallAttemptArg = -1;
+static gint ett_inap_MidCallArg = -1;
+static gint ett_inap_OAnswerArg = -1;
+static gint ett_inap_OCalledPartyBusyArg = -1;
+static gint ett_inap_ODisconnectArg = -1;
+static gint ett_inap_ONoAnswer = -1;
+static gint ett_inap_OriginationAttemptAuthorizedArg = -1;
+static gint ett_inap_PlayAnnouncementArg = -1;
+static gint ett_inap_PromptAndCollectUserInformationArg = -1;
+static gint ett_inap_ReceivedInformationArg = -1;
+static gint ett_inap_ReleaseCallArg = -1;
+static gint ett_inap_T_allCallSegments = -1;
+static gint ett_inap_RequestCurrentStatusReportResultArg = -1;
+static gint ett_inap_RequestEveryStatusChangeReportArg = -1;
+static gint ett_inap_RequestFirstStatusMatchReportArg = -1;
+static gint ett_inap_RequestNotificationChargingEvent = -1;
+static gint ett_inap_RequestNotificationChargingEvent_item = -1;
+static gint ett_inap_RequestReportBCSMEventArg = -1;
+static gint ett_inap_SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent = -1;
+static gint ett_inap_ResetTimerArg = -1;
+static gint ett_inap_RouteSelectFailureArg = -1;
+static gint ett_inap_SelectFacilityArg = -1;
+static gint ett_inap_SelectRouteArg = -1;
+static gint ett_inap_SendChargingInformationArg = -1;
+static gint ett_inap_ServiceFilteringResponseArg = -1;
+static gint ett_inap_StatusReportArg = -1;
+static gint ett_inap_TAnswerArg = -1;
+static gint ett_inap_TTBusyArg = -1;
+static gint ett_inap_TDisconnectArg = -1;
+static gint ett_inap_TermAttemptAuthorizedArg = -1;
+static gint ett_inap_TNoAnswerArg = -1;
+static gint ett_inap_BCSMEvent = -1;
+static gint ett_inap_BearerCapability = -1;
+static gint ett_inap_ChargingEvent = -1;
+static gint ett_inap_CollectedDigits = -1;
+static gint ett_inap_CollectedInfo = -1;
+static gint ett_inap_CounterAndValue = -1;
+static gint ett_inap_CountersValue = -1;
+static gint ett_inap_DestinationRoutingAddress = -1;
+static gint ett_inap_DpSpecificCriteria = -1;
+static gint ett_inap_EventSpecificInformationBCSM = -1;
static gint ett_inap_T_collectedInfoSpecificInfo = -1;
static gint ett_inap_T_analyzedInfoSpecificInfo = -1;
static gint ett_inap_T_routeSelectFailureSpecificInfo = -1;
@@ -395,48 +406,37 @@ static gint ett_inap_T_tNoAnswerSpecificInfo = -1;
static gint ett_inap_T_tAnswerSpecificInfo = -1;
static gint ett_inap_T_tMidCallSpecificInfo = -1;
static gint ett_inap_T_tDisconnectSpecificInfo = -1;
-static gint ett_inap_HoldCallInNetworkarg = -1;
-static gint ett_inap_InitialDP = -1;
-static gint ett_inap_InitiateCallAttempt = -1;
-static gint ett_inap_OAnswer = -1;
-static gint ett_inap_OCalledPartyBusy = -1;
-static gint ett_inap_ODisconnect = -1;
-static gint ett_inap_OMidCall = -1;
-static gint ett_inap_ONoAnswer = -1;
-static gint ett_inap_OriginationAttemptAuthorized = -1;
-static gint ett_inap_PlayAnnouncement = -1;
-static gint ett_inap_PromptAndCollectUserInformationarg = -1;
-static gint ett_inap_T_collectedInfo = -1;
-static gint ett_inap_T_collectedDigits = -1;
-static gint ett_inap_PromptAndCollectUserInformationres = -1;
-static gint ett_inap_ReleaseCallArg = -1;
-static gint ett_inap_T_allCallSegments = -1;
-static gint ett_inap_RequestCurrentStatusReportarg = -1;
-static gint ett_inap_RequestCurrentStatusReportres = -1;
-static gint ett_inap_RequestEveryStatusChangeReport = -1;
-static gint ett_inap_RequestFirstStatusMatchReport = -1;
-static gint ett_inap_RequestNotificationChargingEvent = -1;
-static gint ett_inap_RequestNotificationChargingEvent_item = -1;
-static gint ett_inap_RequestReportBCSMEvent = -1;
-static gint ett_inap_T_bcsmEvents = -1;
-static gint ett_inap_T_bcsmEvents_item = -1;
-static gint ett_inap_T_dpSpecificCriteria = -1;
-static gint ett_inap_ResetTimer = -1;
-static gint ett_inap_RouteSelectFailure = -1;
-static gint ett_inap_CalledFacilityGroup = -1;
-static gint ett_inap_SelectFacility = -1;
-static gint ett_inap_SelectRoute = -1;
-static gint ett_inap_SendChargingInformation = -1;
-static gint ett_inap_ServiceFilteringResponse = -1;
-static gint ett_inap_T_countersValue = -1;
-static gint ett_inap_T_countersValue_item = -1;
-static gint ett_inap_StatusReport = -1;
-static gint ett_inap_TAnswer = -1;
-static gint ett_inap_TBusy = -1;
-static gint ett_inap_TDisconnect = -1;
-static gint ett_inap_TermAttemptAuthorized = -1;
-static gint ett_inap_TMidCall = -1;
-static gint ett_inap_TNoAnswer = -1;
+static gint ett_inap_FacilityGroup = -1;
+static gint ett_inap_FilteredCallTreatment = -1;
+static gint ett_inap_FilteringCharacteristics = -1;
+static gint ett_inap_FilteringCriteria = -1;
+static gint ett_inap_T_addressAndService = -1;
+static gint ett_inap_FilteringTimeOut = -1;
+static gint ett_inap_GapCriteria = -1;
+static gint ett_inap_T_calledAddressAndService = -1;
+static gint ett_inap_T_callingAddressAndService = -1;
+static gint ett_inap_GapOnService = -1;
+static gint ett_inap_GapIndicators = -1;
+static gint ett_inap_GapTreatment = -1;
+static gint ett_inap_T_both = -1;
+static gint ett_inap_InbandInfo = -1;
+static gint ett_inap_InformationToSend = -1;
+static gint ett_inap_LegID = -1;
+static gint ett_inap_MessageID = -1;
+static gint ett_inap_T_text = -1;
+static gint ett_inap_SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4 = -1;
+static gint ett_inap_T_variableMessage = -1;
+static gint ett_inap_SEQUENCE_SIZE_1_5_OF_VariablePart = -1;
+static gint ett_inap_MiscCallInfo = -1;
+static gint ett_inap_RequestedInformationList = -1;
+static gint ett_inap_RequestedInformationTypeList = -1;
+static gint ett_inap_RequestedInformation = -1;
+static gint ett_inap_RequestedInformationValue = -1;
+static gint ett_inap_ResourceID = -1;
+static gint ett_inap_RouteList = -1;
+static gint ett_inap_ServiceAddressInformation = -1;
+static gint ett_inap_Tone = -1;
+static gint ett_inap_VariablePart = -1;
static gint ett_inap_CancelFailed = -1;
static gint ett_inap_RejectPDU = -1;
static gint ett_inap_T_rinvokeID = -1;
@@ -511,71 +511,11 @@ static int dissect_legToBeConnectedID_impl(packet_info *pinfo, proto_tree *tree,
static int dissect_legToBeDetached_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_legToBeDetached);
}
-static int dissect_number_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_number);
-}
-static int dissect_time_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_time);
-}
-static int dissect_date_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_date);
-}
-static int dissect_price_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_price);
-}
-static int dissect_attributes_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_attributes);
-}
-static int dissect_dialledNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_dialledNumber);
-}
-static int dissect_callingLineID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_callingLineID);
-}
-static int dissect_calledAddressValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_calledAddressValue);
-}
-static int dissect_callingAddressValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_callingAddressValue);
-}
-static int dissect_locationNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_locationNumber);
-}
static int dissect_value_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_value);
}
-static int dissect_sFBillingChargingCharacteristics_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_sFBillingChargingCharacteristics);
-}
-static int dissect_RouteList_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(FALSE, tvb, offset, pinfo, tree, hf_inap_RouteList_item);
-}
-static int dissect_bearerCap_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_bearerCap);
-}
-static int dissect_calledPartyNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_calledPartyNumber);
-}
-static int dissect_callingPartyNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_callingPartyNumber);
-}
-static int dissect_iPSSPCapabilities_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_iPSSPCapabilities);
-}
-static int dissect_iPAvailable_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_iPAvailable);
-}
-static int dissect_iSDNAccessRelatedInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_iSDNAccessRelatedInformation);
-}
-static int dissect_serviceProfileIdentifier_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_serviceProfileIdentifier);
-}
-static int dissect_chargeNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_chargeNumber);
-}
-static int dissect_servingAreaID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_servingAreaID);
+static int dissect_eventTypeCharging2_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_eventTypeCharging2);
}
static int dissect_huntGroup_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_huntGroup);
@@ -583,89 +523,8 @@ static int dissect_huntGroup_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t
static int dissect_routeIndex_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_routeIndex);
}
-static int dissect_dialledDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_dialledDigits);
-}
-static int dissect_callingPartyBusinessGroupID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_callingPartyBusinessGroupID);
-}
-static int dissect_callingPartySubaddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_callingPartySubaddress);
-}
-static int dissect_originalCalledPartyID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_originalCalledPartyID);
-}
-static int dissect_prefix_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_prefix);
-}
-static int dissect_redirectingPartyID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_redirectingPartyID);
-}
-static int dissect_travellingClassMark_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_travellingClassMark);
-}
-static int dissect_featureCode_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_featureCode);
-}
-static int dissect_accessCode_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_accessCode);
-}
-static int dissect_carrier_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_carrier);
-}
-static int dissect_aChBillingChargingCharacteristics_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_aChBillingChargingCharacteristics);
-}
-static int dissect_correlationID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_correlationID);
-}
-static int dissect_lineID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_lineID);
-}
-static int dissect_scfID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_scfID);
-}
-static int dissect_serviceInteractionIndicators_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_serviceInteractionIndicators);
-}
-static int dissect_ipRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_ipRoutingAddress);
-}
-static int dissect_assistingSSPIPRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_assistingSSPIPRoutingAddress);
-}
-static int dissect_eventTypeCharging_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_eventTypeCharging);
-}
-static int dissect_eventSpecificInformationCharging_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_eventSpecificInformationCharging);
-}
-static int dissect_bcsmEventCorrelationID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_bcsmEventCorrelationID);
-}
-static int dissect_calledPartynumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_calledPartynumber);
-}
-static int dissect_holdcause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_holdcause);
-}
-static int dissect_additionalCallingPartyNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_additionalCallingPartyNumber);
-}
-static int dissect_calledPartyBusinessGroupID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_calledPartyBusinessGroupID);
-}
-static int dissect_calledPartySubaddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_calledPartySubaddress);
-}
-static int dissect_digitsResponse_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_digitsResponse);
-}
-static int dissect_destinationNumberRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_destinationNumberRoutingAddress);
-}
-static int dissect_sCIBillingChargingCharacteristics_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_sCIBillingChargingCharacteristics);
+static int dissect_RouteList_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_OCTET_STRING(FALSE, tvb, offset, pinfo, tree, hf_inap_RouteList_item);
}
@@ -686,26 +545,17 @@ dissect_inap_AttachArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, pac
static int
-dissect_inap_OCTET_STRING_SIZE_1(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_LegType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_sendingSideID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_1(TRUE, tvb, offset, pinfo, tree, hf_inap_sendingSideID);
+ return dissect_inap_LegType(TRUE, tvb, offset, pinfo, tree, hf_inap_sendingSideID);
}
static int dissect_receivingSideID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_1(TRUE, tvb, offset, pinfo, tree, hf_inap_receivingSideID);
-}
-static int dissect_tmr_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_1(TRUE, tvb, offset, pinfo, tree, hf_inap_tmr);
-}
-static int dissect_callingPartysCategory_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_1(TRUE, tvb, offset, pinfo, tree, hf_inap_callingPartysCategory);
-}
-static int dissect_numberingPlan_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_1(TRUE, tvb, offset, pinfo, tree, hf_inap_numberingPlan);
+ return dissect_inap_LegType(TRUE, tvb, offset, pinfo, tree, hf_inap_receivingSideID);
}
@@ -716,8 +566,8 @@ static const value_string inap_LegID_vals[] = {
};
static const ber_choice_t LegID_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_sendingSideID_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_receivingSideID_impl },
+ { 0, BER_CLASS_CON, 0, 0, dissect_sendingSideID_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_receivingSideID_impl },
{ 0, 0, 0, 0, NULL }
};
@@ -738,6 +588,9 @@ static int dissect_heldLegID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t
static int dissect_legToBeReleased_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_inap_LegID(TRUE, tvb, offset, pinfo, tree, hf_inap_legToBeReleased);
}
+static int dissect_partyToCharge_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_LegID(TRUE, tvb, offset, pinfo, tree, hf_inap_partyToCharge);
+}
static const value_string inap_LegStatus_vals[] = {
@@ -864,12 +717,18 @@ dissect_inap_Cause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_
static int dissect_releaseCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_inap_Cause(TRUE, tvb, offset, pinfo, tree, hf_inap_releaseCause);
}
-static int dissect_releaseCauseValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_Cause(TRUE, tvb, offset, pinfo, tree, hf_inap_releaseCauseValue);
+static int dissect_busyCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Cause(TRUE, tvb, offset, pinfo, tree, hf_inap_busyCause);
}
static int dissect_initialCallSegment(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_inap_Cause(FALSE, tvb, offset, pinfo, tree, hf_inap_initialCallSegment);
}
+static int dissect_failureCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Cause(TRUE, tvb, offset, pinfo, tree, hf_inap_failureCause);
+}
+static int dissect_releaseCauseValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Cause(TRUE, tvb, offset, pinfo, tree, hf_inap_releaseCauseValue);
+}
static const ber_sequence_t ReleaseCallPartyConnectionArg_sequence[] = {
@@ -890,169 +749,133 @@ dissect_inap_ReleaseCallPartyConnectionArg(gboolean implicit_tag _U_, tvbuff_t *
static int
-dissect_inap_INTEGER_0_2147483647(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
-static int dissect_integer_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_2147483647(TRUE, tvb, offset, pinfo, tree, hf_inap_integer);
-}
-static int dissect_elementaryMessageID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_2147483647(TRUE, tvb, offset, pinfo, tree, hf_inap_elementaryMessageID);
-}
-static int dissect_toneID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_2147483647(TRUE, tvb, offset, pinfo, tree, hf_inap_toneID);
-}
-static int dissect_tduration_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_2147483647(TRUE, tvb, offset, pinfo, tree, hf_inap_tduration);
-}
-static int dissect_elementaryMessageIDs_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_2147483647(FALSE, tvb, offset, pinfo, tree, hf_inap_elementaryMessageIDs_item);
-}
-static int dissect_serviceKey_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_2147483647(TRUE, tvb, offset, pinfo, tree, hf_inap_serviceKey);
-}
-static int dissect_numberOfCalls_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_2147483647(TRUE, tvb, offset, pinfo, tree, hf_inap_numberOfCalls);
-}
-static int dissect_callConnectedElapsedTimeValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_2147483647(TRUE, tvb, offset, pinfo, tree, hf_inap_callConnectedElapsedTimeValue);
+static int dissect_type(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_inap_type);
}
-static int dissect_connectTime_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_2147483647(TRUE, tvb, offset, pinfo, tree, hf_inap_connectTime);
+static int dissect_trunkGroupID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_inap_trunkGroupID);
}
-static int dissect_timervalue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_2147483647(TRUE, tvb, offset, pinfo, tree, hf_inap_timervalue);
+static int dissect_privateFacilityID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_inap_privateFacilityID);
}
-static int dissect_counterValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_2147483647(TRUE, tvb, offset, pinfo, tree, hf_inap_counterValue);
+static int dissect_facilityGroupMemberID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_inap_facilityGroupMemberID);
}
-static const value_string inap_VariableParts_item_vals[] = {
- { 0, "integer" },
- { 1, "number" },
- { 2, "time" },
- { 3, "date" },
- { 4, "price" },
+static const value_string inap_T_criticality_vals[] = {
+ { 0, "ignore" },
+ { 1, "abort" },
{ 0, NULL }
};
-static const ber_choice_t VariableParts_item_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_integer_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_number_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_time_impl },
- { 3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_date_impl },
- { 4, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_price_impl },
- { 0, 0, 0, 0, NULL }
-};
static int
-dissect_inap_VariableParts_item(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- VariableParts_item_choice, hf_index, ett_inap_VariableParts_item,
- NULL);
+dissect_inap_T_criticality(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
-static int dissect_VariableParts_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_VariableParts_item(FALSE, tvb, offset, pinfo, tree, hf_inap_VariableParts_item);
+static int dissect_criticality(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_T_criticality(FALSE, tvb, offset, pinfo, tree, hf_inap_criticality);
}
-static const ber_sequence_t VariableParts_sequence_of[1] = {
- { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_VariableParts_item },
+static const ber_sequence_t Extensions_item_sequence[] = {
+ { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_type },
+ { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_criticality },
+ { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_value_impl },
+ { 0, 0, 0, NULL }
};
static int
-dissect_inap_VariableParts(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
- VariableParts_sequence_of, hf_index, ett_inap_VariableParts);
+dissect_inap_Extensions_item(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ Extensions_item_sequence, hf_index, ett_inap_Extensions_item);
return offset;
}
-static int dissect_variableParts_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_VariableParts(TRUE, tvb, offset, pinfo, tree, hf_inap_variableParts);
+static int dissect_Extensions_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Extensions_item(FALSE, tvb, offset, pinfo, tree, hf_inap_Extensions_item);
}
-static const ber_sequence_t VariableMessage_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_elementaryMessageID_impl },
- { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_variableParts_impl },
- { 0, 0, 0, NULL }
+static const ber_sequence_t Extensions_sequence_of[1] = {
+ { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_Extensions_item },
};
static int
-dissect_inap_VariableMessage(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- VariableMessage_sequence, hf_index, ett_inap_VariableMessage);
+dissect_inap_Extensions(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
+ Extensions_sequence_of, hf_index, ett_inap_Extensions);
return offset;
}
-static int dissect_variableMessage_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_VariableMessage(TRUE, tvb, offset, pinfo, tree, hf_inap_variableMessage);
+static int dissect_extensions_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Extensions(TRUE, tvb, offset, pinfo, tree, hf_inap_extensions);
}
-static const value_string inap_TriggerType_vals[] = {
- { 0, "featureActivation" },
- { 1, "verticalServiceCode" },
- { 2, "customizedAccess" },
- { 3, "customizedIntercom" },
- { 12, "emergencyService" },
- { 13, "aFR" },
- { 14, "sharedIOTrunk" },
- { 17, "offHookDelay" },
- { 18, "channelSetupPRI" },
- { 25, "tNoAnswer" },
- { 26, "tBusy" },
- { 27, "oCalledPartyBusy" },
- { 29, "oNoAnswer" },
- { 30, "originationAttemptAuthorized" },
- { 31, "oAnswer" },
- { 32, "oDisconnect" },
- { 33, "termAttemptAuthorized" },
- { 34, "tAnswer" },
- { 35, "tDisconnect" },
- { 0, NULL }
-};
-
static int
-dissect_inap_TriggerType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+dissect_inap_SFBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
-static int dissect_triggerType_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_TriggerType(TRUE, tvb, offset, pinfo, tree, hf_inap_triggerType);
+static int dissect_sFBillingChargingCharacteristics_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_SFBillingChargingCharacteristics(TRUE, tvb, offset, pinfo, tree, hf_inap_sFBillingChargingCharacteristics);
}
-static const ber_sequence_t Tone_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_toneID_impl },
- { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_tduration_impl },
- { 0, 0, 0, NULL }
-};
static int
-dissect_inap_Tone(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- Tone_sequence, hf_index, ett_inap_Tone);
+dissect_inap_Integer4(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
-static int dissect_tone_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_Tone(TRUE, tvb, offset, pinfo, tree, hf_inap_tone);
+static int dissect_connectTime_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_connectTime);
+}
+static int dissect_counterValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_counterValue);
+}
+static int dissect_numberOfCalls_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_numberOfCalls);
+}
+static int dissect_elementaryMessageID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_elementaryMessageID);
+}
+static int dissect_elementaryMessageIDs_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Integer4(FALSE, tvb, offset, pinfo, tree, hf_inap_elementaryMessageIDs_item);
+}
+static int dissect_callConnectedElapsedTimeValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_callConnectedElapsedTimeValue);
+}
+static int dissect_toneID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_toneID);
+}
+static int dissect_tone_duration_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_tone_duration);
+}
+static int dissect_integer_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_integer);
}
static int
-dissect_inap_IA5String(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_IA5String_SIZE_minMessageContentLength_maxMessageContentLength(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -1060,47 +883,192 @@ dissect_inap_IA5String(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, pac
return offset;
}
static int dissect_messageContent_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_IA5String(TRUE, tvb, offset, pinfo, tree, hf_inap_messageContent);
+ return dissect_inap_IA5String_SIZE_minMessageContentLength_maxMessageContentLength(TRUE, tvb, offset, pinfo, tree, hf_inap_messageContent);
}
-static int dissect_displayInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_IA5String(TRUE, tvb, offset, pinfo, tree, hf_inap_displayInformation);
+
+
+
+static int
+dissect_inap_OCTET_STRING_SIZE_minAttributesLength_maxAttributesLength(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
}
-static int dissect_iA5Response_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_IA5String(TRUE, tvb, offset, pinfo, tree, hf_inap_iA5Response);
+static int dissect_attributes_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_OCTET_STRING_SIZE_minAttributesLength_maxAttributesLength(TRUE, tvb, offset, pinfo, tree, hf_inap_attributes);
}
-static const ber_sequence_t Text_sequence[] = {
+static const ber_sequence_t T_text_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_messageContent_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_attributes_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_Text(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_T_text(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- Text_sequence, hf_index, ett_inap_Text);
+ T_text_sequence, hf_index, ett_inap_T_text);
return offset;
}
static int dissect_text_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_Text(TRUE, tvb, offset, pinfo, tree, hf_inap_text);
+ return dissect_inap_T_text(TRUE, tvb, offset, pinfo, tree, hf_inap_text);
}
-static const ber_sequence_t T_elementaryMessageIDs_sequence_of[1] = {
+static const ber_sequence_t SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4_sequence_of[1] = {
{ BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_elementaryMessageIDs_item },
};
static int
-dissect_inap_T_elementaryMessageIDs(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
- T_elementaryMessageIDs_sequence_of, hf_index, ett_inap_T_elementaryMessageIDs);
+ SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4_sequence_of, hf_index, ett_inap_SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4);
return offset;
}
static int dissect_elementaryMessageIDs_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_elementaryMessageIDs(TRUE, tvb, offset, pinfo, tree, hf_inap_elementaryMessageIDs);
+ return dissect_inap_SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_elementaryMessageIDs);
+}
+
+
+
+static int
+dissect_inap_Digits(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_prefix_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_prefix);
+}
+static int dissect_digitsResponse_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_digitsResponse);
+}
+static int dissect_dialledNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_dialledNumber);
+}
+static int dissect_callingLineID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_callingLineID);
+}
+static int dissect_calledAddressValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_calledAddressValue);
+}
+static int dissect_callingAddressValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_callingAddressValue);
+}
+static int dissect_lineID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_lineID);
+}
+static int dissect_number_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_number);
+}
+
+
+
+static int
+dissect_inap_OCTET_STRING_SIZE_2(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_time_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_OCTET_STRING_SIZE_2(TRUE, tvb, offset, pinfo, tree, hf_inap_time);
+}
+
+
+
+static int
+dissect_inap_OCTET_STRING_SIZE_3(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_date2_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_OCTET_STRING_SIZE_3(TRUE, tvb, offset, pinfo, tree, hf_inap_date2);
+}
+
+
+
+static int
+dissect_inap_OCTET_STRING_SIZE_4(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_price_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_OCTET_STRING_SIZE_4(TRUE, tvb, offset, pinfo, tree, hf_inap_price);
+}
+
+
+static const value_string inap_VariablePart_vals[] = {
+ { 0, "integer" },
+ { 1, "number" },
+ { 2, "time" },
+ { 3, "date2" },
+ { 4, "price" },
+ { 0, NULL }
+};
+
+static const ber_choice_t VariablePart_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_integer_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_number_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_time_impl },
+ { 3, BER_CLASS_CON, 3, 0, dissect_date2_impl },
+ { 4, BER_CLASS_CON, 4, 0, dissect_price_impl },
+ { 0, 0, 0, 0, NULL }
+};
+
+static int
+dissect_inap_VariablePart(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ VariablePart_choice, hf_index, ett_inap_VariablePart,
+ NULL);
+
+ return offset;
+}
+static int dissect_variableParts_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_VariablePart(FALSE, tvb, offset, pinfo, tree, hf_inap_variableParts_item);
+}
+
+
+static const ber_sequence_t SEQUENCE_SIZE_1_5_OF_VariablePart_sequence_of[1] = {
+ { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_variableParts_item },
+};
+
+static int
+dissect_inap_SEQUENCE_SIZE_1_5_OF_VariablePart(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
+ SEQUENCE_SIZE_1_5_OF_VariablePart_sequence_of, hf_index, ett_inap_SEQUENCE_SIZE_1_5_OF_VariablePart);
+
+ return offset;
+}
+static int dissect_variableParts_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_SEQUENCE_SIZE_1_5_OF_VariablePart(TRUE, tvb, offset, pinfo, tree, hf_inap_variableParts);
+}
+
+
+static const ber_sequence_t T_variableMessage_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_elementaryMessageID_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_variableParts_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_inap_T_variableMessage(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ T_variableMessage_sequence, hf_index, ett_inap_T_variableMessage);
+
+ return offset;
+}
+static int dissect_variableMessage_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_T_variableMessage(TRUE, tvb, offset, pinfo, tree, hf_inap_variableMessage);
}
@@ -1113,10 +1081,10 @@ static const value_string inap_MessageID_vals[] = {
};
static const ber_choice_t MessageID_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_elementaryMessageID_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_text_impl },
- { 29, BER_CLASS_CON, 29, BER_FLAGS_IMPLTAG, dissect_elementaryMessageIDs_impl },
- { 30, BER_CLASS_CON, 30, BER_FLAGS_IMPLTAG, dissect_variableMessage_impl },
+ { 0, BER_CLASS_CON, 0, 0, dissect_elementaryMessageID_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_text_impl },
+ { 29, BER_CLASS_CON, 29, 0, dissect_elementaryMessageIDs_impl },
+ { 30, BER_CLASS_CON, 30, 0, dissect_variableMessage_impl },
{ 0, 0, 0, 0, NULL }
};
@@ -1141,9 +1109,6 @@ dissect_inap_INTEGER_1_127(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset,
return offset;
}
-static int dissect_numberOfRepetitions_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_inap_numberOfRepetitions);
-}
static int dissect_minimumNbOfDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_inap_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_inap_minimumNbOfDigits);
}
@@ -1156,6 +1121,9 @@ static int dissect_firstDigitTimeOut_impl(packet_info *pinfo, proto_tree *tree,
static int dissect_interDigitTimeOut_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_inap_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_inap_interDigitTimeOut);
}
+static int dissect_numberOfRepetitions_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_inap_numberOfRepetitions);
+}
@@ -1166,307 +1134,302 @@ dissect_inap_INTEGER_0_32767(gboolean implicit_tag _U_, tvbuff_t *tvb, int offse
return offset;
}
-static int dissect_mduration_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_32767(TRUE, tvb, offset, pinfo, tree, hf_inap_mduration);
+static int dissect_duration3_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_INTEGER_0_32767(TRUE, tvb, offset, pinfo, tree, hf_inap_duration3);
}
static int dissect_interval_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
return dissect_inap_INTEGER_0_32767(TRUE, tvb, offset, pinfo, tree, hf_inap_interval);
}
-static const ber_sequence_t T_inbandInfo_sequence[] = {
+static const ber_sequence_t InbandInfo_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_messageID_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_numberOfRepetitions_impl },
- { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mduration_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_duration3_impl },
{ BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_interval_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_T_inbandInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_InbandInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- T_inbandInfo_sequence, hf_index, ett_inap_T_inbandInfo);
+ InbandInfo_sequence, hf_index, ett_inap_InbandInfo);
return offset;
}
static int dissect_inbandInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_inbandInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_inbandInfo);
+ return dissect_inap_InbandInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_inbandInfo);
}
-static const value_string inap_InformationToSend_vals[] = {
- { 0, "inbandInfo" },
- { 1, "tone" },
- { 2, "displayInformation" },
- { 0, NULL }
-};
-
-static const ber_choice_t InformationToSend_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_inbandInfo_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_tone_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_displayInformation_impl },
- { 0, 0, 0, 0, NULL }
+static const ber_sequence_t Tone_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_toneID_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_tone_duration_impl },
+ { 0, 0, 0, NULL }
};
static int
-dissect_inap_InformationToSend(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- InformationToSend_choice, hf_index, ett_inap_InformationToSend,
- NULL);
+dissect_inap_Tone(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ Tone_sequence, hf_index, ett_inap_Tone);
return offset;
}
-static int dissect_informationToSend_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_InformationToSend(TRUE, tvb, offset, pinfo, tree, hf_inap_informationToSend);
+static int dissect_tone_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Tone(TRUE, tvb, offset, pinfo, tree, hf_inap_tone);
}
-static const ber_sequence_t T_addressAndService_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_calledAddressValue_impl },
- { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_serviceKey_impl },
- { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingAddressValue_impl },
- { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationNumber_impl },
- { 0, 0, 0, NULL }
-};
static int
-dissect_inap_T_addressAndService(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- T_addressAndService_sequence, hf_index, ett_inap_T_addressAndService);
+dissect_inap_DisplayInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
+ pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
-static int dissect_addressAndService_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_addressAndService(TRUE, tvb, offset, pinfo, tree, hf_inap_addressAndService);
+static int dissect_displayInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_DisplayInformation(TRUE, tvb, offset, pinfo, tree, hf_inap_displayInformation);
}
-static const value_string inap_FilteringCriteria_vals[] = {
- { 0, "dialledNumber" },
- { 1, "callingLineID" },
- { 2, "serviceKey" },
- { 30, "addressAndService" },
+static const value_string inap_InformationToSend_vals[] = {
+ { 0, "inbandInfo" },
+ { 1, "tone" },
+ { 2, "displayInformation" },
{ 0, NULL }
};
-static const ber_choice_t FilteringCriteria_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dialledNumber_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_callingLineID_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_serviceKey_impl },
- { 30, BER_CLASS_CON, 30, BER_FLAGS_IMPLTAG, dissect_addressAndService_impl },
+static const ber_choice_t InformationToSend_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_inbandInfo_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_tone_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_displayInformation_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_inap_FilteringCriteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_InformationToSend(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- FilteringCriteria_choice, hf_index, ett_inap_FilteringCriteria,
+ InformationToSend_choice, hf_index, ett_inap_InformationToSend,
NULL);
return offset;
}
-static int dissect_filteringCriteria_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_FilteringCriteria(TRUE, tvb, offset, pinfo, tree, hf_inap_filteringCriteria);
+static int dissect_informationToSend_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_InformationToSend(TRUE, tvb, offset, pinfo, tree, hf_inap_informationToSend);
}
static int
-dissect_inap_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_MaximumNumberOfCounters(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
-static int dissect_type(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_inap_type);
-}
static int dissect_maximumNumberOfCounters_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_inap_maximumNumberOfCounters);
-}
-static int dissect_trunkGroupID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_inap_trunkGroupID);
-}
-static int dissect_privateFacilityID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_inap_privateFacilityID);
-}
-static int dissect_callingFacilityGroupMember_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_inap_callingFacilityGroupMember);
-}
-static int dissect_facilityGroupMemberID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_inap_facilityGroupMemberID);
-}
-static int dissect_calledFacilityGroupMember_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_inap_calledFacilityGroupMember);
+ return dissect_inap_MaximumNumberOfCounters(TRUE, tvb, offset, pinfo, tree, hf_inap_maximumNumberOfCounters);
}
-static const value_string inap_T_criticality_vals[] = {
- { 0, "ignore" },
- { 1, "abort" },
- { 0, NULL }
+static const ber_sequence_t FilteredCallTreatment_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_sFBillingChargingCharacteristics_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_informationToSend_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_maximumNumberOfCounters_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
+ { 0, 0, 0, NULL }
};
+static int
+dissect_inap_FilteredCallTreatment(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ FilteredCallTreatment_sequence, hf_index, ett_inap_FilteredCallTreatment);
+
+ return offset;
+}
+static int dissect_filteredCallTreatment_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_FilteredCallTreatment(TRUE, tvb, offset, pinfo, tree, hf_inap_filteredCallTreatment);
+}
+
+
static int
-dissect_inap_T_criticality(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_INTEGER_M1_32000(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
-static int dissect_criticality(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_criticality(FALSE, tvb, offset, pinfo, tree, hf_inap_criticality);
+static int dissect_interval1_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_INTEGER_M1_32000(TRUE, tvb, offset, pinfo, tree, hf_inap_interval1);
}
-static const ber_sequence_t Extensions_item_sequence[] = {
- { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_type },
- { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_criticality },
- { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_value_impl },
- { 0, 0, 0, NULL }
+static const value_string inap_FilteringCharacteristics_vals[] = {
+ { 0, "interval1" },
+ { 1, "numberOfCalls" },
+ { 0, NULL }
+};
+
+static const ber_choice_t FilteringCharacteristics_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_interval1_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_numberOfCalls_impl },
+ { 0, 0, 0, 0, NULL }
};
static int
-dissect_inap_Extensions_item(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- Extensions_item_sequence, hf_index, ett_inap_Extensions_item);
+dissect_inap_FilteringCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ FilteringCharacteristics_choice, hf_index, ett_inap_FilteringCharacteristics,
+ NULL);
return offset;
}
-static int dissect_Extensions_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_Extensions_item(FALSE, tvb, offset, pinfo, tree, hf_inap_Extensions_item);
+static int dissect_filteringCharacteristics_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_FilteringCharacteristics(TRUE, tvb, offset, pinfo, tree, hf_inap_filteringCharacteristics);
}
-static const ber_sequence_t Extensions_sequence_of[1] = {
- { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_Extensions_item },
-};
static int
-dissect_inap_Extensions(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
- Extensions_sequence_of, hf_index, ett_inap_Extensions);
+dissect_inap_Duration(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
-static int dissect_extensions_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_Extensions(TRUE, tvb, offset, pinfo, tree, hf_inap_extensions);
+static int dissect_monitorDuration_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Duration(TRUE, tvb, offset, pinfo, tree, hf_inap_monitorDuration);
+}
+static int dissect_duration_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Duration(TRUE, tvb, offset, pinfo, tree, hf_inap_duration);
}
-static const ber_sequence_t T_filteredCallTreatment_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_sFBillingChargingCharacteristics_impl },
- { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_informationToSend_impl },
- { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_maximumNumberOfCounters_impl },
- { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
- { 0, 0, 0, NULL }
-};
static int
-dissect_inap_T_filteredCallTreatment(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- T_filteredCallTreatment_sequence, hf_index, ett_inap_T_filteredCallTreatment);
+dissect_inap_DateAndTime(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
-static int dissect_filteredCallTreatment_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_filteredCallTreatment(TRUE, tvb, offset, pinfo, tree, hf_inap_filteredCallTreatment);
+static int dissect_startTime_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_DateAndTime(TRUE, tvb, offset, pinfo, tree, hf_inap_startTime);
+}
+static int dissect_stopTime_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_DateAndTime(TRUE, tvb, offset, pinfo, tree, hf_inap_stopTime);
+}
+static int dissect_callStopTimeValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_DateAndTime(TRUE, tvb, offset, pinfo, tree, hf_inap_callStopTimeValue);
}
-static const value_string inap_T_filteringCharacteristics_vals[] = {
- { 0, "interval" },
- { 1, "numberOfCalls" },
+static const value_string inap_FilteringTimeOut_vals[] = {
+ { 0, "duration" },
+ { 1, "stopTime" },
{ 0, NULL }
};
-static const ber_choice_t T_filteringCharacteristics_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_interval_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_numberOfCalls_impl },
+static const ber_choice_t FilteringTimeOut_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_duration_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_stopTime_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_inap_T_filteringCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_FilteringTimeOut(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- T_filteringCharacteristics_choice, hf_index, ett_inap_T_filteringCharacteristics,
+ FilteringTimeOut_choice, hf_index, ett_inap_FilteringTimeOut,
NULL);
return offset;
}
-static int dissect_filteringCharacteristics_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_filteringCharacteristics(TRUE, tvb, offset, pinfo, tree, hf_inap_filteringCharacteristics);
+static int dissect_filteringTimeOut_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_FilteringTimeOut(TRUE, tvb, offset, pinfo, tree, hf_inap_filteringTimeOut);
}
static int
-dissect_inap_INTEGER_M2_86400(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+dissect_inap_ServiceKey(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_Integer4(implicit_tag, tvb, offset, pinfo, tree, hf_index);
return offset;
}
-static int dissect_aduration_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_M2_86400(TRUE, tvb, offset, pinfo, tree, hf_inap_aduration);
-}
-static int dissect_cgduration_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_M2_86400(TRUE, tvb, offset, pinfo, tree, hf_inap_cgduration);
-}
-static int dissect_monitorDuration_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_M2_86400(TRUE, tvb, offset, pinfo, tree, hf_inap_monitorDuration);
+static int dissect_serviceKey_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_ServiceKey(TRUE, tvb, offset, pinfo, tree, hf_inap_serviceKey);
}
static int
-dissect_inap_OCTET_STRING_SIZE_6(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_LocationNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
-static int dissect_stopTime_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_6(TRUE, tvb, offset, pinfo, tree, hf_inap_stopTime);
+static int dissect_locationNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_LocationNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_locationNumber);
}
-static int dissect_startTime_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_6(TRUE, tvb, offset, pinfo, tree, hf_inap_startTime);
+
+
+static const ber_sequence_t T_addressAndService_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_calledAddressValue_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_serviceKey_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingAddressValue_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationNumber_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_inap_T_addressAndService(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ T_addressAndService_sequence, hf_index, ett_inap_T_addressAndService);
+
+ return offset;
}
-static int dissect_callStopTimeValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_6(TRUE, tvb, offset, pinfo, tree, hf_inap_callStopTimeValue);
+static int dissect_addressAndService_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_T_addressAndService(TRUE, tvb, offset, pinfo, tree, hf_inap_addressAndService);
}
-static const value_string inap_T_filteringTimeOut_vals[] = {
- { 0, "aduration" },
- { 1, "stopTime" },
+static const value_string inap_FilteringCriteria_vals[] = {
+ { 0, "dialledNumber" },
+ { 1, "callingLineID" },
+ { 2, "serviceKey" },
+ { 30, "addressAndService" },
{ 0, NULL }
};
-static const ber_choice_t T_filteringTimeOut_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_aduration_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_stopTime_impl },
+static const ber_choice_t FilteringCriteria_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_dialledNumber_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_callingLineID_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_serviceKey_impl },
+ { 30, BER_CLASS_CON, 30, 0, dissect_addressAndService_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_inap_T_filteringTimeOut(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_FilteringCriteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- T_filteringTimeOut_choice, hf_index, ett_inap_T_filteringTimeOut,
+ FilteringCriteria_choice, hf_index, ett_inap_FilteringCriteria,
NULL);
return offset;
}
-static int dissect_filteringTimeOut_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_filteringTimeOut(TRUE, tvb, offset, pinfo, tree, hf_inap_filteringTimeOut);
+static int dissect_filteringCriteria_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_FilteringCriteria(TRUE, tvb, offset, pinfo, tree, hf_inap_filteringCriteria);
}
-static const ber_sequence_t ActivateServiceFilteringarg_sequence[] = {
+static const ber_sequence_t ActivateServiceFilteringArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_filteredCallTreatment_impl },
- { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_filteringCharacteristics_impl },
- { BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_filteringTimeOut_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_filteringCharacteristics_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_filteringTimeOut_impl },
{ BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_filteringCriteria_impl },
{ BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_startTime_impl },
{ BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
@@ -1474,9 +1437,9 @@ static const ber_sequence_t ActivateServiceFilteringarg_sequence[] = {
};
static int
-dissect_inap_ActivateServiceFilteringarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ActivateServiceFilteringArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- ActivateServiceFilteringarg_sequence, hf_index, ett_inap_ActivateServiceFilteringarg);
+ ActivateServiceFilteringArg_sequence, hf_index, ett_inap_ActivateServiceFilteringArg);
return offset;
}
@@ -1539,6 +1502,42 @@ static int dissect_miscCallInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuf
}
+static const value_string inap_TriggerType_vals[] = {
+ { 0, "featureActivation" },
+ { 1, "verticalServiceCode" },
+ { 2, "customizedAccess" },
+ { 3, "customizedIntercom" },
+ { 12, "emergencyService" },
+ { 13, "aFR" },
+ { 14, "sharedIOTrunk" },
+ { 17, "offHookDelay" },
+ { 18, "channelSetupPRI" },
+ { 25, "tNoAnswer" },
+ { 26, "tBusy" },
+ { 27, "oCalledPartyBusy" },
+ { 29, "oNoAnswer" },
+ { 30, "originationAttemptAuthorized" },
+ { 31, "oAnswer" },
+ { 32, "oDisconnect" },
+ { 33, "termAttemptAuthorized" },
+ { 34, "tAnswer" },
+ { 35, "tDisconnect" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_inap_TriggerType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_triggerType_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_TriggerType(TRUE, tvb, offset, pinfo, tree, hf_inap_triggerType);
+}
+
+
static const ber_sequence_t ServiceAddressInformation_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceKey_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_miscCallInfo_impl },
@@ -1558,42 +1557,173 @@ static int dissect_serviceAddressInformation_impl(packet_info *pinfo, proto_tree
}
-static const value_string inap_TerminalType_vals[] = {
- { 0, "unknown" },
- { 1, "dialPulse" },
- { 2, "dtmf" },
- { 3, "isdn" },
- { 4, "isdnNoDtmf" },
- { 16, "spare" },
+
+static int
+dissect_inap_BearerCap(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+
+ tvbuff_t *parameter_tvb;
+
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ &parameter_tvb);
+
+
+ if (!parameter_tvb)
+ return offset;
+
+ dissect_q931_bearer_capability_ie(parameter_tvb, 0, tvb_length_remaining(parameter_tvb,0), tree);
+
+
+ return offset;
+}
+static int dissect_bearerCap_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_BearerCap(TRUE, tvb, offset, pinfo, tree, hf_inap_bearerCap);
+}
+
+
+
+static int
+dissect_inap_OCTET_STRING_SIZE_1(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_tmr_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_OCTET_STRING_SIZE_1(TRUE, tvb, offset, pinfo, tree, hf_inap_tmr);
+}
+
+
+static const value_string inap_BearerCapability_vals[] = {
+ { 0, "bearerCap" },
+ { 1, "tmr" },
{ 0, NULL }
};
+static const ber_choice_t BearerCapability_choice[] = {
+ { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_bearerCap_impl },
+ { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_tmr_impl },
+ { 0, 0, 0, 0, NULL }
+};
static int
-dissect_inap_TerminalType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+dissect_inap_BearerCapability(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ BearerCapability_choice, hf_index, ett_inap_BearerCapability,
+ NULL);
return offset;
}
-static int dissect_terminalType_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_TerminalType(TRUE, tvb, offset, pinfo, tree, hf_inap_terminalType);
+static int dissect_bearerCapability_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_BearerCapability(TRUE, tvb, offset, pinfo, tree, hf_inap_bearerCapability);
}
-static const ber_sequence_t RouteList_sequence_of[1] = {
- { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_RouteList_item },
-};
static int
-dissect_inap_RouteList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
- RouteList_sequence_of, hf_index, ett_inap_RouteList);
+dissect_inap_CalledPartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ tvbuff_t *parameter_tvb;
+
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ &parameter_tvb);
+
+
+ if (!parameter_tvb)
+ return offset;
+
+dissect_isup_called_party_number_parameter(parameter_tvb, tree, NULL);
+
return offset;
}
-static int dissect_routeList_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_RouteList(TRUE, tvb, offset, pinfo, tree, hf_inap_routeList);
+static int dissect_dialledDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CalledPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_dialledDigits);
+}
+static int dissect_calledPartyNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CalledPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_calledPartyNumber);
+}
+static int dissect_destinationNumberRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CalledPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_destinationNumberRoutingAddress);
+}
+static int dissect_DestinationRoutingAddress_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CalledPartyNumber(FALSE, tvb, offset, pinfo, tree, hf_inap_DestinationRoutingAddress_item);
+}
+static int dissect_calledPartynumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CalledPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_calledPartynumber);
+}
+
+
+
+static int
+dissect_inap_CallingPartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ tvbuff_t *parameter_tvb;
+
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ &parameter_tvb);
+
+
+ if (!parameter_tvb)
+ return offset;
+
+ dissect_isup_calling_party_number_parameter(parameter_tvb, tree, NULL);
+
+
+
+ return offset;
+}
+static int dissect_callingPartyNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CallingPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_callingPartyNumber);
+}
+
+
+
+static int
+dissect_inap_CallingPartysCategory(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_callingPartysCategory_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CallingPartysCategory(TRUE, tvb, offset, pinfo, tree, hf_inap_callingPartysCategory);
+}
+
+
+
+static int
+dissect_inap_IPSSPCapabilities(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_iPSSPCapabilities_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_IPSSPCapabilities(TRUE, tvb, offset, pinfo, tree, hf_inap_iPSSPCapabilities);
+}
+
+
+
+static int
+dissect_inap_IPAvailable(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_iPAvailable_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_IPAvailable(TRUE, tvb, offset, pinfo, tree, hf_inap_iPAvailable);
+}
+
+
+
+static int
+dissect_inap_ISDNAccessRelatedInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_iSDNAccessRelatedInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_ISDNAccessRelatedInformation(TRUE, tvb, offset, pinfo, tree, hf_inap_iSDNAccessRelatedInformation);
}
@@ -1617,28 +1747,63 @@ static int dissect_cGEncountered_impl(packet_info *pinfo, proto_tree *tree, tvbu
}
-static const value_string inap_BearerCapability_vals[] = {
- { 0, "bearerCap" },
- { 1, "tmr" },
+
+static int
+dissect_inap_ServiceProfileIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_serviceProfileIdentifier_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_ServiceProfileIdentifier(TRUE, tvb, offset, pinfo, tree, hf_inap_serviceProfileIdentifier);
+}
+
+
+static const value_string inap_TerminalType_vals[] = {
+ { 0, "unknown" },
+ { 1, "dialPulse" },
+ { 2, "dtmf" },
+ { 3, "isdn" },
+ { 4, "isdnNoDtmf" },
+ { 16, "spare" },
{ 0, NULL }
};
-static const ber_choice_t BearerCapability_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_bearerCap_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_tmr_impl },
- { 0, 0, 0, 0, NULL }
-};
static int
-dissect_inap_BearerCapability(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- BearerCapability_choice, hf_index, ett_inap_BearerCapability,
- NULL);
+dissect_inap_TerminalType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
-static int dissect_bearerCapability_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_BearerCapability(TRUE, tvb, offset, pinfo, tree, hf_inap_bearerCapability);
+static int dissect_terminalType_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_TerminalType(TRUE, tvb, offset, pinfo, tree, hf_inap_terminalType);
+}
+
+
+
+static int
+dissect_inap_ChargeNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_LocationNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+static int dissect_chargeNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_ChargeNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_chargeNumber);
+}
+
+
+
+static int
+dissect_inap_ServingAreaID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_LocationNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+static int dissect_servingAreaID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_ServingAreaID(TRUE, tvb, offset, pinfo, tree, hf_inap_servingAreaID);
}
@@ -1673,7 +1838,33 @@ static int dissect_dpSpecificCommonParameters_impl(packet_info *pinfo, proto_tre
}
-static const value_string inap_CallingFacilityGroup_vals[] = {
+
+static int
+dissect_inap_CallingPartyBusinessGroupID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_callingPartyBusinessGroupID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CallingPartyBusinessGroupID(TRUE, tvb, offset, pinfo, tree, hf_inap_callingPartyBusinessGroupID);
+}
+
+
+
+static int
+dissect_inap_CallingPartySubaddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_callingPartySubaddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CallingPartySubaddress(TRUE, tvb, offset, pinfo, tree, hf_inap_callingPartySubaddress);
+}
+
+
+static const value_string inap_FacilityGroup_vals[] = {
{ 0, "trunkGroupID" },
{ 1, "privateFacilityID" },
{ 2, "huntGroup" },
@@ -1681,43 +1872,179 @@ static const value_string inap_CallingFacilityGroup_vals[] = {
{ 0, NULL }
};
-static const ber_choice_t CallingFacilityGroup_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_trunkGroupID_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_privateFacilityID_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_huntGroup_impl },
- { 3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_routeIndex_impl },
+static const ber_choice_t FacilityGroup_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_trunkGroupID_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_privateFacilityID_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_huntGroup_impl },
+ { 3, BER_CLASS_CON, 3, 0, dissect_routeIndex_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_inap_CallingFacilityGroup(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_FacilityGroup(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- CallingFacilityGroup_choice, hf_index, ett_inap_CallingFacilityGroup,
+ FacilityGroup_choice, hf_index, ett_inap_FacilityGroup,
NULL);
return offset;
}
static int dissect_callingFacilityGroup_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_CallingFacilityGroup(TRUE, tvb, offset, pinfo, tree, hf_inap_callingFacilityGroup);
+ return dissect_inap_FacilityGroup(TRUE, tvb, offset, pinfo, tree, hf_inap_callingFacilityGroup);
+}
+static int dissect_calledFacilityGroup_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_FacilityGroup(TRUE, tvb, offset, pinfo, tree, hf_inap_calledFacilityGroup);
+}
+static int dissect_facilityGroupID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_FacilityGroup(TRUE, tvb, offset, pinfo, tree, hf_inap_facilityGroupID);
}
static int
-dissect_inap_OCTET_STRING_SIZE_2(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_FacilityGroupMember(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_callingFacilityGroupMember_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_FacilityGroupMember(TRUE, tvb, offset, pinfo, tree, hf_inap_callingFacilityGroupMember);
+}
+static int dissect_calledFacilityGroupMember_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_FacilityGroupMember(TRUE, tvb, offset, pinfo, tree, hf_inap_calledFacilityGroupMember);
+}
+
+
+
+static int
+dissect_inap_OriginalCalledPartyID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+
+ tvbuff_t *parameter_tvb;
+
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+ &parameter_tvb);
+
+
+ if (!parameter_tvb)
+ return offset;
+ dissect_isup_original_called_number_parameter(parameter_tvb, tree, NULL);
+
+
+ return offset;
+}
+static int dissect_originalCalledPartyID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_OriginalCalledPartyID(TRUE, tvb, offset, pinfo, tree, hf_inap_originalCalledPartyID);
+}
+
+
+
+static int
+dissect_inap_RedirectingPartyID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+
+ tvbuff_t *parameter_tvb;
+
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ &parameter_tvb);
+
+
+ if (!parameter_tvb)
+ return offset;
+ dissect_isup_redirecting_number_parameter(parameter_tvb, tree, NULL);
+
+
+
+ return offset;
+}
+static int dissect_redirectingPartyID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_RedirectingPartyID(TRUE, tvb, offset, pinfo, tree, hf_inap_redirectingPartyID);
+}
+
+
+
+static int
+dissect_inap_RedirectionInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+
+ tvbuff_t *parameter_tvb;
+
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ &parameter_tvb);
+
+
+ if (!parameter_tvb)
+ return offset;
+
+ dissect_isup_redirection_information_parameter(parameter_tvb, tree, NULL);
+
return offset;
}
static int dissect_redirectionInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_2(TRUE, tvb, offset, pinfo, tree, hf_inap_redirectionInformation);
+ return dissect_inap_RedirectionInformation(TRUE, tvb, offset, pinfo, tree, hf_inap_redirectionInformation);
}
-static int dissect_highLayerCompatibility_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_2(TRUE, tvb, offset, pinfo, tree, hf_inap_highLayerCompatibility);
+
+
+static const ber_sequence_t RouteList_sequence_of[1] = {
+ { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_RouteList_item },
+};
+
+static int
+dissect_inap_RouteList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
+ RouteList_sequence_of, hf_index, ett_inap_RouteList);
+
+ return offset;
}
-static int dissect_forwardCallIndicators_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_2(TRUE, tvb, offset, pinfo, tree, hf_inap_forwardCallIndicators);
+static int dissect_routeList_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_RouteList(TRUE, tvb, offset, pinfo, tree, hf_inap_routeList);
+}
+
+
+
+static int
+dissect_inap_TravellingClassMark(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_LocationNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+static int dissect_travellingClassMark_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_TravellingClassMark(TRUE, tvb, offset, pinfo, tree, hf_inap_travellingClassMark);
+}
+
+
+
+static int
+dissect_inap_FeatureCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_LocationNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+static int dissect_featureCode_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_FeatureCode(TRUE, tvb, offset, pinfo, tree, hf_inap_featureCode);
+}
+
+
+
+static int
+dissect_inap_AccessCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_LocationNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+static int dissect_accessCode_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_AccessCode(TRUE, tvb, offset, pinfo, tree, hf_inap_accessCode);
+}
+
+
+
+static int
+dissect_inap_Carrier(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_carrier_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_Carrier(TRUE, tvb, offset, pinfo, tree, hf_inap_carrier);
}
@@ -1750,45 +2077,32 @@ dissect_inap_AnalysedInformationarg(gboolean implicit_tag _U_, tvbuff_t *tvb, in
}
-
-static int
-dissect_inap_DestinationAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_destinationRoutingAddress_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_DestinationAddress(FALSE, tvb, offset, pinfo, tree, hf_inap_destinationRoutingAddress_item);
-}
-
-
-static const ber_sequence_t SEQUENCE_SIZE_1_3_OF_DestinationAddress_sequence_of[1] = {
- { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_destinationRoutingAddress_item },
+static const ber_sequence_t DestinationRoutingAddress_sequence_of[1] = {
+ { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_DestinationRoutingAddress_item },
};
static int
-dissect_inap_SEQUENCE_SIZE_1_3_OF_DestinationAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_DestinationRoutingAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
- SEQUENCE_SIZE_1_3_OF_DestinationAddress_sequence_of, hf_index, ett_inap_SEQUENCE_SIZE_1_3_OF_DestinationAddress);
+ DestinationRoutingAddress_sequence_of, hf_index, ett_inap_DestinationRoutingAddress);
return offset;
}
static int dissect_destinationRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_SEQUENCE_SIZE_1_3_OF_DestinationAddress(TRUE, tvb, offset, pinfo, tree, hf_inap_destinationRoutingAddress);
+ return dissect_inap_DestinationRoutingAddress(TRUE, tvb, offset, pinfo, tree, hf_inap_destinationRoutingAddress);
}
static int
-dissect_inap_OCTET_STRING_SIZE_3(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_AlertingPattern(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_alertingPattern_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_3(TRUE, tvb, offset, pinfo, tree, hf_inap_alertingPattern);
+ return dissect_inap_AlertingPattern(TRUE, tvb, offset, pinfo, tree, hf_inap_alertingPattern);
}
@@ -1816,32 +2130,20 @@ dissect_inap_AnalyseInformationarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int
}
-static const value_string inap_PartyToCharge_vals[] = {
- { 0, "sendingSideID" },
- { 1, "receivingSideID" },
- { 0, NULL }
-};
-
-static const ber_choice_t PartyToCharge_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_sendingSideID_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_receivingSideID_impl },
- { 0, 0, 0, 0, NULL }
-};
static int
-dissect_inap_PartyToCharge(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- PartyToCharge_choice, hf_index, ett_inap_PartyToCharge,
- NULL);
+dissect_inap_AChBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
-static int dissect_partyToCharge_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_PartyToCharge(TRUE, tvb, offset, pinfo, tree, hf_inap_partyToCharge);
+static int dissect_aChBillingChargingCharacteristics_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_AChBillingChargingCharacteristics(TRUE, tvb, offset, pinfo, tree, hf_inap_aChBillingChargingCharacteristics);
}
-static const ber_sequence_t ApplyChargingarg_sequence[] = {
+static const ber_sequence_t ApplyChargingArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_aChBillingChargingCharacteristics_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_partyToCharge_impl },
{ BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
@@ -1849,9 +2151,9 @@ static const ber_sequence_t ApplyChargingarg_sequence[] = {
};
static int
-dissect_inap_ApplyChargingarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ApplyChargingArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- ApplyChargingarg_sequence, hf_index, ett_inap_ApplyChargingarg);
+ ApplyChargingArg_sequence, hf_index, ett_inap_ApplyChargingArg);
return offset;
}
@@ -1859,7 +2161,7 @@ dissect_inap_ApplyChargingarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offs
static int
-dissect_inap_ApplyChargingReportarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CallResult(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -1867,7 +2169,31 @@ dissect_inap_ApplyChargingReportarg(gboolean implicit_tag _U_, tvbuff_t *tvb, in
}
-static const ber_sequence_t AssistRequestInstructionsarg_sequence[] = {
+
+static int
+dissect_inap_ApplyChargingReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_CallResult(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+
+
+
+static int
+dissect_inap_CorrelationID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_Digits(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+static int dissect_correlationID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CorrelationID(TRUE, tvb, offset, pinfo, tree, hf_inap_correlationID);
+}
+static int dissect_bcsmEventCorrelationID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CorrelationID(TRUE, tvb, offset, pinfo, tree, hf_inap_bcsmEventCorrelationID);
+}
+
+
+static const ber_sequence_t AssistRequestInstructionsArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iPAvailable_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iPSSPCapabilities_impl },
@@ -1876,15 +2202,15 @@ static const ber_sequence_t AssistRequestInstructionsarg_sequence[] = {
};
static int
-dissect_inap_AssistRequestInstructionsarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_AssistRequestInstructionsArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- AssistRequestInstructionsarg_sequence, hf_index, ett_inap_AssistRequestInstructionsarg);
+ AssistRequestInstructionsArg_sequence, hf_index, ett_inap_AssistRequestInstructionsArg);
return offset;
}
-static const value_string inap_T_dpCriteria_vals[] = {
+static const value_string inap_EventTypeBCSM_vals[] = {
{ 1, "origAttemptAuthorized" },
{ 2, "collectedInfo" },
{ 3, "analysedInformation" },
@@ -1907,32 +2233,35 @@ static const value_string inap_T_dpCriteria_vals[] = {
static int
-dissect_inap_T_dpCriteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_EventTypeBCSM(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
+static int dissect_eventTypeBCSM_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_EventTypeBCSM(TRUE, tvb, offset, pinfo, tree, hf_inap_eventTypeBCSM);
+}
static int dissect_dpCriteria_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_dpCriteria(TRUE, tvb, offset, pinfo, tree, hf_inap_dpCriteria);
+ return dissect_inap_EventTypeBCSM(TRUE, tvb, offset, pinfo, tree, hf_inap_dpCriteria);
}
-static const ber_sequence_t T_gapOnService_sequence[] = {
+static const ber_sequence_t GapOnService_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_serviceKey_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dpCriteria_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_T_gapOnService(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_GapOnService(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- T_gapOnService_sequence, hf_index, ett_inap_T_gapOnService);
+ GapOnService_sequence, hf_index, ett_inap_GapOnService);
return offset;
}
static int dissect_gapOnService_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_gapOnService(TRUE, tvb, offset, pinfo, tree, hf_inap_gapOnService);
+ return dissect_inap_GapOnService(TRUE, tvb, offset, pinfo, tree, hf_inap_gapOnService);
}
@@ -1973,7 +2302,7 @@ static int dissect_callingAddressAndService_impl(packet_info *pinfo, proto_tree
}
-static const value_string inap_T_gapCriteria_vals[] = {
+static const value_string inap_GapCriteria_vals[] = {
{ 0, "calledAddressValue" },
{ 2, "gapOnService" },
{ 29, "calledAddressAndService" },
@@ -1981,59 +2310,59 @@ static const value_string inap_T_gapCriteria_vals[] = {
{ 0, NULL }
};
-static const ber_choice_t T_gapCriteria_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_calledAddressValue_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_gapOnService_impl },
- { 29, BER_CLASS_CON, 29, BER_FLAGS_IMPLTAG, dissect_calledAddressAndService_impl },
- { 30, BER_CLASS_CON, 30, BER_FLAGS_IMPLTAG, dissect_callingAddressAndService_impl },
+static const ber_choice_t GapCriteria_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_calledAddressValue_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_gapOnService_impl },
+ { 29, BER_CLASS_CON, 29, 0, dissect_calledAddressAndService_impl },
+ { 30, BER_CLASS_CON, 30, 0, dissect_callingAddressAndService_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_inap_T_gapCriteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_GapCriteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- T_gapCriteria_choice, hf_index, ett_inap_T_gapCriteria,
+ GapCriteria_choice, hf_index, ett_inap_GapCriteria,
NULL);
return offset;
}
static int dissect_gapCriteria_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_gapCriteria(TRUE, tvb, offset, pinfo, tree, hf_inap_gapCriteria);
+ return dissect_inap_GapCriteria(TRUE, tvb, offset, pinfo, tree, hf_inap_gapCriteria);
}
static int
-dissect_inap_INTEGER_M1_60000(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_Interval(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_gapInterval_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_M1_60000(TRUE, tvb, offset, pinfo, tree, hf_inap_gapInterval);
+ return dissect_inap_Interval(TRUE, tvb, offset, pinfo, tree, hf_inap_gapInterval);
}
-static const ber_sequence_t T_gapIndicators_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_cgduration_impl },
+static const ber_sequence_t GapIndicators_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_duration_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gapInterval_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_T_gapIndicators(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_GapIndicators(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- T_gapIndicators_sequence, hf_index, ett_inap_T_gapIndicators);
+ GapIndicators_sequence, hf_index, ett_inap_GapIndicators);
return offset;
}
static int dissect_gapIndicators_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_gapIndicators(TRUE, tvb, offset, pinfo, tree, hf_inap_gapIndicators);
+ return dissect_inap_GapIndicators(TRUE, tvb, offset, pinfo, tree, hf_inap_gapIndicators);
}
-static const value_string inap_T_controlType_vals[] = {
+static const value_string inap_ControlType_vals[] = {
{ 0, "sCPOverloaded" },
{ 1, "manuallyInitiated" },
{ 2, "destinationOverload" },
@@ -2042,81 +2371,81 @@ static const value_string inap_T_controlType_vals[] = {
static int
-dissect_inap_T_controlType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ControlType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_controlType_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_controlType(TRUE, tvb, offset, pinfo, tree, hf_inap_controlType);
+ return dissect_inap_ControlType(TRUE, tvb, offset, pinfo, tree, hf_inap_controlType);
}
-static const ber_sequence_t Both_sequence[] = {
+static const ber_sequence_t T_both_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_informationToSend_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_Both(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_T_both(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- Both_sequence, hf_index, ett_inap_Both);
+ T_both_sequence, hf_index, ett_inap_T_both);
return offset;
}
static int dissect_both_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_Both(TRUE, tvb, offset, pinfo, tree, hf_inap_both);
+ return dissect_inap_T_both(TRUE, tvb, offset, pinfo, tree, hf_inap_both);
}
-static const value_string inap_T_gapTreatment_vals[] = {
+static const value_string inap_GapTreatment_vals[] = {
{ 0, "informationToSend" },
{ 1, "releaseCause" },
{ 2, "both" },
{ 0, NULL }
};
-static const ber_choice_t T_gapTreatment_choice[] = {
+static const ber_choice_t GapTreatment_choice[] = {
{ 0, BER_CLASS_CON, 0, 0, dissect_informationToSend_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_both_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_releaseCause_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_both_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_inap_T_gapTreatment(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_GapTreatment(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- T_gapTreatment_choice, hf_index, ett_inap_T_gapTreatment,
+ GapTreatment_choice, hf_index, ett_inap_GapTreatment,
NULL);
return offset;
}
static int dissect_gapTreatment_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_gapTreatment(TRUE, tvb, offset, pinfo, tree, hf_inap_gapTreatment);
+ return dissect_inap_GapTreatment(TRUE, tvb, offset, pinfo, tree, hf_inap_gapTreatment);
}
-static const ber_sequence_t CallGaparg_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gapCriteria_impl },
+static const ber_sequence_t CallGapArg_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_gapCriteria_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gapIndicators_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_controlType_impl },
- { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gapTreatment_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_gapTreatment_impl },
{ BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_CallGaparg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CallGapArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- CallGaparg_sequence, hf_index, ett_inap_CallGaparg);
+ CallGapArg_sequence, hf_index, ett_inap_CallGapArg);
return offset;
}
-static const value_string inap_T_requestedInformationType_vals[] = {
+static const value_string inap_RequestedInformationType_vals[] = {
{ 0, "callAttemptElapsedTime" },
{ 1, "callStopTime" },
{ 2, "callConnectedElapsedTime" },
@@ -2127,150 +2456,53 @@ static const value_string inap_T_requestedInformationType_vals[] = {
static int
-dissect_inap_T_requestedInformationType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_RequestedInformationType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
-static int dissect_requestedInformationType_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_requestedInformationType(TRUE, tvb, offset, pinfo, tree, hf_inap_requestedInformationType);
+static int dissect_RequestedInformationTypeList_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_RequestedInformationType(FALSE, tvb, offset, pinfo, tree, hf_inap_RequestedInformationTypeList_item);
}
-
-
-
-static int
-dissect_inap_INTEGER_0_255(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_callAttemptElapsedTimeValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_255(TRUE, tvb, offset, pinfo, tree, hf_inap_callAttemptElapsedTimeValue);
-}
-
-
-static const value_string inap_T_requestedInformationValue_vals[] = {
- { 0, "callAttemptElapsedTimeValue" },
- { 1, "callStopTimeValue" },
- { 2, "callConnectedElapsedTimeValue" },
- { 3, "calledAddressValue" },
- { 30, "releaseCauseValue" },
- { 0, NULL }
-};
-
-static const ber_choice_t T_requestedInformationValue_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_callAttemptElapsedTimeValue_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_callStopTimeValue_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_callConnectedElapsedTimeValue_impl },
- { 3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_calledAddressValue_impl },
- { 30, BER_CLASS_CON, 30, BER_FLAGS_IMPLTAG, dissect_releaseCauseValue_impl },
- { 0, 0, 0, 0, NULL }
-};
-
-static int
-dissect_inap_T_requestedInformationValue(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- T_requestedInformationValue_choice, hf_index, ett_inap_T_requestedInformationValue,
- NULL);
-
- return offset;
-}
-static int dissect_requestedInformationValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_requestedInformationValue(TRUE, tvb, offset, pinfo, tree, hf_inap_requestedInformationValue);
-}
-
-
-static const ber_sequence_t T_requestedInformationList_item_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_requestedInformationType_impl },
- { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_requestedInformationValue_impl },
- { 0, 0, 0, NULL }
-};
-
-static int
-dissect_inap_T_requestedInformationList_item(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- T_requestedInformationList_item_sequence, hf_index, ett_inap_T_requestedInformationList_item);
-
- return offset;
-}
-static int dissect_requestedInformationList_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_requestedInformationList_item(FALSE, tvb, offset, pinfo, tree, hf_inap_requestedInformationList_item);
+static int dissect_requestedInformationType_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_RequestedInformationType(TRUE, tvb, offset, pinfo, tree, hf_inap_requestedInformationType);
}
-static const ber_sequence_t T_requestedInformationList_sequence_of[1] = {
- { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_requestedInformationList_item },
+static const ber_sequence_t RequestedInformationTypeList_sequence_of[1] = {
+ { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_RequestedInformationTypeList_item },
};
static int
-dissect_inap_T_requestedInformationList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_RequestedInformationTypeList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
- T_requestedInformationList_sequence_of, hf_index, ett_inap_T_requestedInformationList);
+ RequestedInformationTypeList_sequence_of, hf_index, ett_inap_RequestedInformationTypeList);
return offset;
}
-static int dissect_requestedInformationList_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_requestedInformationList(TRUE, tvb, offset, pinfo, tree, hf_inap_requestedInformationList);
+static int dissect_requestedInformationTypeList_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_RequestedInformationTypeList(TRUE, tvb, offset, pinfo, tree, hf_inap_requestedInformationTypeList);
}
-static const ber_sequence_t CallInformationReportarg_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_requestedInformationList_impl },
+static const ber_sequence_t CallInformationReportArg_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_requestedInformationTypeList_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_CallInformationReportarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CallInformationReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- CallInformationReportarg_sequence, hf_index, ett_inap_CallInformationReportarg);
+ CallInformationReportArg_sequence, hf_index, ett_inap_CallInformationReportArg);
return offset;
}
-static const value_string inap_T_requestedInformationTypeList_item_vals[] = {
- { 0, "callAttemptElapsedTime" },
- { 1, "callStopTime" },
- { 2, "callConnectedElapsedTime" },
- { 3, "calledAddress" },
- { 30, "releaseCause" },
- { 0, NULL }
-};
-
-
-static int
-dissect_inap_T_requestedInformationTypeList_item(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_requestedInformationTypeList_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_requestedInformationTypeList_item(FALSE, tvb, offset, pinfo, tree, hf_inap_requestedInformationTypeList_item);
-}
-
-
-static const ber_sequence_t T_requestedInformationTypeList_sequence_of[1] = {
- { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_requestedInformationTypeList_item },
-};
-
-static int
-dissect_inap_T_requestedInformationTypeList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
- T_requestedInformationTypeList_sequence_of, hf_index, ett_inap_T_requestedInformationTypeList);
-
- return offset;
-}
-static int dissect_requestedInformationTypeList_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_requestedInformationTypeList(TRUE, tvb, offset, pinfo, tree, hf_inap_requestedInformationTypeList);
-}
-
-
-static const ber_sequence_t CallInformationRequestarg_sequence[] = {
+static const ber_sequence_t CallInformationRequestArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_requestedInformationTypeList_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
@@ -2279,9 +2511,9 @@ static const ber_sequence_t CallInformationRequestarg_sequence[] = {
};
static int
-dissect_inap_CallInformationRequestarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CallInformationRequestArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- CallInformationRequestarg_sequence, hf_index, ett_inap_CallInformationRequestarg);
+ CallInformationRequestArg_sequence, hf_index, ett_inap_CallInformationRequestArg);
return offset;
}
@@ -2289,17 +2521,14 @@ dissect_inap_CallInformationRequestarg(gboolean implicit_tag _U_, tvbuff_t *tvb,
static int
-dissect_inap_INTEGER_M128_127(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_InvokeID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_invokeID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_M128_127(TRUE, tvb, offset, pinfo, tree, hf_inap_invokeID);
-}
-static int dissect_operation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_M128_127(TRUE, tvb, offset, pinfo, tree, hf_inap_operation);
+ return dissect_inap_InvokeID(TRUE, tvb, offset, pinfo, tree, hf_inap_invokeID);
}
@@ -2324,57 +2553,28 @@ static int dissect_null(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int
}
-static const value_string inap_Cancelarg_vals[] = {
+static const value_string inap_CancelArg_vals[] = {
{ 0, "invokeID" },
{ 1, "allRequests" },
{ 0, NULL }
};
-static const ber_choice_t Cancelarg_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_invokeID_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_allRequests_impl },
+static const ber_choice_t CancelArg_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_invokeID_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_allRequests_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_inap_Cancelarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CancelArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- Cancelarg_choice, hf_index, ett_inap_Cancelarg,
+ CancelArg_choice, hf_index, ett_inap_CancelArg,
NULL);
return offset;
}
-static const value_string inap_FacilityGroupID_vals[] = {
- { 0, "trunkGroupID" },
- { 1, "privateFacilityID" },
- { 2, "huntGroup" },
- { 3, "routeIndex" },
- { 0, NULL }
-};
-
-static const ber_choice_t FacilityGroupID_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_trunkGroupID_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_privateFacilityID_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_huntGroup_impl },
- { 3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_routeIndex_impl },
- { 0, 0, 0, 0, NULL }
-};
-
-static int
-dissect_inap_FacilityGroupID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- FacilityGroupID_choice, hf_index, ett_inap_FacilityGroupID,
- NULL);
-
- return offset;
-}
-static int dissect_facilityGroupID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_FacilityGroupID(TRUE, tvb, offset, pinfo, tree, hf_inap_facilityGroupID);
-}
-
-
static const value_string inap_ResourceID_vals[] = {
{ 0, "lineID" },
{ 1, "facilityGroupID" },
@@ -2384,10 +2584,10 @@ static const value_string inap_ResourceID_vals[] = {
};
static const ber_choice_t ResourceID_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_lineID_impl },
+ { 0, BER_CLASS_CON, 0, 0, dissect_lineID_impl },
{ 1, BER_CLASS_CON, 1, 0, dissect_facilityGroupID_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_facilityGroupMemberID_impl },
- { 3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_trunkGroupID_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_facilityGroupMemberID_impl },
+ { 3, BER_CLASS_CON, 3, 0, dissect_trunkGroupID_impl },
{ 0, 0, 0, 0, NULL }
};
@@ -2404,22 +2604,22 @@ static int dissect_resourceID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_
}
-static const ber_sequence_t CancelStatusReportRequestarg_sequence[] = {
+static const ber_sequence_t CancelStatusReportRequestArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceID_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_CancelStatusReportRequestarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CancelStatusReportRequestArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- CancelStatusReportRequestarg_sequence, hf_index, ett_inap_CancelStatusReportRequestarg);
+ CancelStatusReportRequestArg_sequence, hf_index, ett_inap_CancelStatusReportRequestArg);
return offset;
}
-static const ber_sequence_t CollectedInformationarg_sequence[] = {
+static const ber_sequence_t CollectedInformationArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dialledDigits_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
@@ -2439,15 +2639,28 @@ static const ber_sequence_t CollectedInformationarg_sequence[] = {
};
static int
-dissect_inap_CollectedInformationarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CollectedInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- CollectedInformationarg_sequence, hf_index, ett_inap_CollectedInformationarg);
+ CollectedInformationArg_sequence, hf_index, ett_inap_CollectedInformationArg);
return offset;
}
-static const ber_sequence_t CollectInformationarg_sequence[] = {
+
+static int
+dissect_inap_NumberingPlan(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_numberingPlan_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_NumberingPlan(TRUE, tvb, offset, pinfo, tree, hf_inap_numberingPlan);
+}
+
+
+static const ber_sequence_t CollectInformationArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alertingPattern_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_numberingPlan_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
@@ -2459,9 +2672,9 @@ static const ber_sequence_t CollectInformationarg_sequence[] = {
};
static int
-dissect_inap_CollectInformationarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CollectInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- CollectInformationarg_sequence, hf_index, ett_inap_CollectInformationarg);
+ CollectInformationArg_sequence, hf_index, ett_inap_CollectInformationArg);
return offset;
}
@@ -2469,37 +2682,64 @@ dissect_inap_CollectInformationarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int
static int
-dissect_inap_INTEGER_0_22(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CutAndPaste(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_cutAndPaste_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_22(TRUE, tvb, offset, pinfo, tree, hf_inap_cutAndPaste);
+ return dissect_inap_CutAndPaste(TRUE, tvb, offset, pinfo, tree, hf_inap_cutAndPaste);
}
-static const value_string inap_T_forwardingCondition_vals[] = {
+static const value_string inap_ForwardingCondition_vals[] = {
{ 0, "busy" },
{ 1, "noanswer" },
+ { 2, "any" },
{ 0, NULL }
};
static int
-dissect_inap_T_forwardingCondition(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ForwardingCondition(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_forwardingCondition_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_forwardingCondition(TRUE, tvb, offset, pinfo, tree, hf_inap_forwardingCondition);
+ return dissect_inap_ForwardingCondition(TRUE, tvb, offset, pinfo, tree, hf_inap_forwardingCondition);
}
-static const ber_sequence_t Connectarg_sequence[] = {
+
+static int
+dissect_inap_ScfID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_scfID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_ScfID(TRUE, tvb, offset, pinfo, tree, hf_inap_scfID);
+}
+
+
+
+static int
+dissect_inap_ServiceInteractionIndicators(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_serviceInteractionIndicators_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_ServiceInteractionIndicators(TRUE, tvb, offset, pinfo, tree, hf_inap_serviceInteractionIndicators);
+}
+
+
+static const ber_sequence_t ConnectArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_destinationRoutingAddress_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alertingPattern_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
@@ -2521,27 +2761,57 @@ static const ber_sequence_t Connectarg_sequence[] = {
};
static int
-dissect_inap_Connectarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ConnectArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ ConnectArg_sequence, hf_index, ett_inap_ConnectArg);
+
+ return offset;
+}
+
+
+
+static int
+dissect_inap_IPRoutingAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_CalledPartyNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+static int dissect_ipRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_IPRoutingAddress(TRUE, tvb, offset, pinfo, tree, hf_inap_ipRoutingAddress);
+}
+
+
+static const ber_sequence_t T_both2_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ipRoutingAddress_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_inap_T_both2(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- Connectarg_sequence, hf_index, ett_inap_Connectarg);
+ T_both2_sequence, hf_index, ett_inap_T_both2);
return offset;
}
+static int dissect_both2_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_T_both2(TRUE, tvb, offset, pinfo, tree, hf_inap_both2);
+}
static const value_string inap_T_resourceAddress_vals[] = {
{ 0, "ipRoutingAddress" },
{ 1, "legID" },
- { 2, "both" },
+ { 2, "both2" },
{ 3, "none" },
{ 0, NULL }
};
static const ber_choice_t T_resourceAddress_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ipRoutingAddress_impl },
+ { 0, BER_CLASS_CON, 0, 0, dissect_ipRoutingAddress_impl },
{ 1, BER_CLASS_CON, 1, 0, dissect_legID_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_both_impl },
- { 3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_none_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_both2_impl },
+ { 3, BER_CLASS_CON, 3, 0, dissect_none_impl },
{ 0, 0, 0, 0, NULL }
};
@@ -2558,23 +2828,35 @@ static int dissect_resourceAddress(packet_info *pinfo, proto_tree *tree, tvbuff_
}
-static const ber_sequence_t ConnectToResource_sequence[] = {
+static const ber_sequence_t ConnectToResourceArg_sequence[] = {
{ BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceAddress },
- { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
+ { BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_extensions_impl },
{ BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceInteractionIndicators_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_ConnectToResource(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ConnectToResourceArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- ConnectToResource_sequence, hf_index, ett_inap_ConnectToResource);
+ ConnectToResourceArg_sequence, hf_index, ett_inap_ConnectToResourceArg);
return offset;
}
-static const ber_sequence_t EstablishTemporaryConnection_sequence[] = {
+
+static int
+dissect_inap_AssistingSSPIPRoutingAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_Digits(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+static int dissect_assistingSSPIPRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_AssistingSSPIPRoutingAddress(TRUE, tvb, offset, pinfo, tree, hf_inap_assistingSSPIPRoutingAddress);
+}
+
+
+static const ber_sequence_t EstablishTemporaryConnectionArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_assistingSSPIPRoutingAddress_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
@@ -2586,14 +2868,40 @@ static const ber_sequence_t EstablishTemporaryConnection_sequence[] = {
};
static int
-dissect_inap_EstablishTemporaryConnection(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_EstablishTemporaryConnectionArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- EstablishTemporaryConnection_sequence, hf_index, ett_inap_EstablishTemporaryConnection);
+ EstablishTemporaryConnectionArg_sequence, hf_index, ett_inap_EstablishTemporaryConnectionArg);
return offset;
}
+
+static int
+dissect_inap_EventTypeCharging(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_eventTypeCharging_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_EventTypeCharging(TRUE, tvb, offset, pinfo, tree, hf_inap_eventTypeCharging);
+}
+
+
+
+static int
+dissect_inap_EventSpecificInformationCharging(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_eventSpecificInformationCharging_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_EventSpecificInformationCharging(TRUE, tvb, offset, pinfo, tree, hf_inap_eventSpecificInformationCharging);
+}
+
+
static const value_string inap_MonitorMode_vals[] = {
{ 0, "interrupted" },
{ 1, "notifyAndContinue" },
@@ -2614,58 +2922,24 @@ static int dissect_monitorMode_impl(packet_info *pinfo, proto_tree *tree, tvbuff
}
-static const ber_sequence_t EventNotificationChargingarg_sequence[] = {
+static const ber_sequence_t EventNotificationChargingArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventTypeCharging_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_eventSpecificInformationCharging_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
{ BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
- { BER_CLASS_CON, 30, BER_FLAGS_IMPLTAG, dissect_monitorMode_impl },
+ { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_monitorMode_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_EventNotificationChargingarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_EventNotificationChargingArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- EventNotificationChargingarg_sequence, hf_index, ett_inap_EventNotificationChargingarg);
+ EventNotificationChargingArg_sequence, hf_index, ett_inap_EventNotificationChargingArg);
return offset;
}
-static const value_string inap_EventTypeBCSM_vals[] = {
- { 1, "origAttemptAuthorized" },
- { 2, "collectedInfo" },
- { 3, "analysedInformation" },
- { 4, "routeSelectFailure" },
- { 5, "oCalledPartyBusy" },
- { 6, "oNoAnswer" },
- { 7, "oAnswer" },
- { 8, "oMidCall" },
- { 9, "oDisconnect" },
- { 10, "oAbandon" },
- { 12, "termAttemptAuthorized" },
- { 13, "tBusy" },
- { 14, "tNoAnswer" },
- { 15, "tAnswer" },
- { 16, "tMidCall" },
- { 17, "tDisconnect" },
- { 18, "tAbandon" },
- { 0, NULL }
-};
-
-
-static int
-dissect_inap_EventTypeBCSM(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_eventTypeBCSM_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_EventTypeBCSM(TRUE, tvb, offset, pinfo, tree, hf_inap_eventTypeBCSM);
-}
-
-
static const ber_sequence_t T_collectedInfoSpecificInfo_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_calledPartynumber_impl },
{ 0, 0, 0, NULL }
@@ -2700,22 +2974,6 @@ static int dissect_analyzedInfoSpecificInfo_impl(packet_info *pinfo, proto_tree
}
-
-static int
-dissect_inap_OCTET_STRING_SIZE_2_10(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_failureCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_2_10(TRUE, tvb, offset, pinfo, tree, hf_inap_failureCause);
-}
-static int dissect_busyCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_OCTET_STRING_SIZE_2_10(TRUE, tvb, offset, pinfo, tree, hf_inap_busyCause);
-}
-
-
static const ber_sequence_t T_routeSelectFailureSpecificInfo_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_failureCause_impl },
{ 0, 0, 0, NULL }
@@ -2901,7 +3159,7 @@ static int dissect_tDisconnectSpecificInfo_impl(packet_info *pinfo, proto_tree *
}
-static const value_string inap_T_eventSpecificInformationBCSM_vals[] = {
+static const value_string inap_EventSpecificInformationBCSM_vals[] = {
{ 0, "collectedInfoSpecificInfo" },
{ 1, "analyzedInfoSpecificInfo" },
{ 2, "routeSelectFailureSpecificInfo" },
@@ -2918,50 +3176,50 @@ static const value_string inap_T_eventSpecificInformationBCSM_vals[] = {
{ 0, NULL }
};
-static const ber_choice_t T_eventSpecificInformationBCSM_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_collectedInfoSpecificInfo_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_analyzedInfoSpecificInfo_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_routeSelectFailureSpecificInfo_impl },
- { 3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_oCalledPartyBusySpecificInfo_impl },
- { 4, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_oNoAnswerSpecificInfo_impl },
- { 5, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_oAnswerSpecificInfo_impl },
- { 6, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_oMidCallSpecificInfo_impl },
- { 7, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_oDisconnectSpecificInfo_impl },
- { 8, BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_tBusySpecificInfo_impl },
- { 9, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_tNoAnswerSpecificInfo_impl },
- { 10, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_tAnswerSpecificInfo_impl },
- { 11, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_tMidCallSpecificInfo_impl },
- { 12, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_tDisconnectSpecificInfo_impl },
+static const ber_choice_t EventSpecificInformationBCSM_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_collectedInfoSpecificInfo_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_analyzedInfoSpecificInfo_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_routeSelectFailureSpecificInfo_impl },
+ { 3, BER_CLASS_CON, 3, 0, dissect_oCalledPartyBusySpecificInfo_impl },
+ { 4, BER_CLASS_CON, 4, 0, dissect_oNoAnswerSpecificInfo_impl },
+ { 5, BER_CLASS_CON, 5, 0, dissect_oAnswerSpecificInfo_impl },
+ { 6, BER_CLASS_CON, 6, 0, dissect_oMidCallSpecificInfo_impl },
+ { 7, BER_CLASS_CON, 7, 0, dissect_oDisconnectSpecificInfo_impl },
+ { 8, BER_CLASS_CON, 8, 0, dissect_tBusySpecificInfo_impl },
+ { 9, BER_CLASS_CON, 9, 0, dissect_tNoAnswerSpecificInfo_impl },
+ { 10, BER_CLASS_CON, 10, 0, dissect_tAnswerSpecificInfo_impl },
+ { 11, BER_CLASS_CON, 11, 0, dissect_tMidCallSpecificInfo_impl },
+ { 12, BER_CLASS_CON, 12, 0, dissect_tDisconnectSpecificInfo_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_inap_T_eventSpecificInformationBCSM(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_EventSpecificInformationBCSM(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- T_eventSpecificInformationBCSM_choice, hf_index, ett_inap_T_eventSpecificInformationBCSM,
+ EventSpecificInformationBCSM_choice, hf_index, ett_inap_EventSpecificInformationBCSM,
NULL);
return offset;
}
static int dissect_eventSpecificInformationBCSM_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_eventSpecificInformationBCSM(TRUE, tvb, offset, pinfo, tree, hf_inap_eventSpecificInformationBCSM);
+ return dissect_inap_EventSpecificInformationBCSM(TRUE, tvb, offset, pinfo, tree, hf_inap_eventSpecificInformationBCSM);
}
-static const ber_sequence_t EventReportBCSM_sequence[] = {
+static const ber_sequence_t EventReportBCSMArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventTypeBCSM_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_bcsmEventCorrelationID_impl },
- { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_eventSpecificInformationBCSM_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_eventSpecificInformationBCSM_impl },
{ BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
- { BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_miscCallInfo_impl },
+ { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_miscCallInfo_impl },
{ BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_EventReportBCSM(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_EventReportBCSMArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- EventReportBCSM_sequence, hf_index, ett_inap_EventReportBCSM);
+ EventReportBCSMArg_sequence, hf_index, ett_inap_EventReportBCSMArg);
return offset;
}
@@ -2969,7 +3227,7 @@ dissect_inap_EventReportBCSM(gboolean implicit_tag _U_, tvbuff_t *tvb, int offse
static int
-dissect_inap_FurnishChargingInformationarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_FCIBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
@@ -2977,28 +3235,88 @@ dissect_inap_FurnishChargingInformationarg(gboolean implicit_tag _U_, tvbuff_t *
}
-static const value_string inap_HoldCallInNetworkarg_vals[] = {
+
+static int
+dissect_inap_FurnishChargingInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_FCIBillingChargingCharacteristics(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+
+
+
+static int
+dissect_inap_HoldCause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_holdcause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_HoldCause(TRUE, tvb, offset, pinfo, tree, hf_inap_holdcause);
+}
+
+
+static const value_string inap_HoldCallInNetworkArg_vals[] = {
{ 0, "holdcause" },
{ 1, "empty" },
{ 0, NULL }
};
-static const ber_choice_t HoldCallInNetworkarg_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_holdcause_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_empty_impl },
+static const ber_choice_t HoldCallInNetworkArg_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_holdcause_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_empty_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_inap_HoldCallInNetworkarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_HoldCallInNetworkArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- HoldCallInNetworkarg_choice, hf_index, ett_inap_HoldCallInNetworkarg,
+ HoldCallInNetworkArg_choice, hf_index, ett_inap_HoldCallInNetworkArg,
NULL);
return offset;
}
+
+static int
+dissect_inap_HighLayerCompatibility(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_highLayerCompatibility_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_HighLayerCompatibility(TRUE, tvb, offset, pinfo, tree, hf_inap_highLayerCompatibility);
+}
+
+
+
+static int
+dissect_inap_AdditionalCallingPartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_Digits(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+static int dissect_additionalCallingPartyNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_AdditionalCallingPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_additionalCallingPartyNumber);
+}
+
+
+
+static int
+dissect_inap_ForwardCallIndicators(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_forwardCallIndicators_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_ForwardCallIndicators(TRUE, tvb, offset, pinfo, tree, hf_inap_forwardCallIndicators);
+}
+
+
static const ber_sequence_t InitialDP_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceKey_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dialledDigits_impl },
@@ -3037,7 +3355,7 @@ dissect_inap_InitialDP(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, pac
}
-static const ber_sequence_t InitiateCallAttempt_sequence[] = {
+static const ber_sequence_t InitiateCallAttemptArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_destinationRoutingAddress_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alertingPattern_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iSDNAccessRelatedInformation_impl },
@@ -3049,15 +3367,84 @@ static const ber_sequence_t InitiateCallAttempt_sequence[] = {
};
static int
-dissect_inap_InitiateCallAttempt(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_InitiateCallAttemptArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- InitiateCallAttempt_sequence, hf_index, ett_inap_InitiateCallAttempt);
+ InitiateCallAttemptArg_sequence, hf_index, ett_inap_InitiateCallAttemptArg);
+
+ return offset;
+}
+
+
+
+static int
+dissect_inap_CalledPartyBusinessGroupID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
+static int dissect_calledPartyBusinessGroupID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CalledPartyBusinessGroupID(TRUE, tvb, offset, pinfo, tree, hf_inap_calledPartyBusinessGroupID);
+}
+
-static const ber_sequence_t OAnswer_sequence[] = {
+static int
+dissect_inap_CalledPartySubaddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_calledPartySubaddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CalledPartySubaddress(TRUE, tvb, offset, pinfo, tree, hf_inap_calledPartySubaddress);
+}
+
+
+static const value_string inap_FeatureRequestIndicator_vals[] = {
+ { 0, "hold" },
+ { 1, "retrieve" },
+ { 2, "featureActivation" },
+ { 3, "spare1" },
+ { 127, "sparen" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_inap_FeatureRequestIndicator(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_featureRequestIndicator_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_FeatureRequestIndicator(TRUE, tvb, offset, pinfo, tree, hf_inap_featureRequestIndicator);
+}
+
+
+static const ber_sequence_t MidCallArg_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
+ { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
+ { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_featureRequestIndicator_impl },
+ { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
+ { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_inap_MidCallArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ MidCallArg_sequence, hf_index, ett_inap_MidCallArg);
+
+ return offset;
+}
+
+
+static const ber_sequence_t OAnswerArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
@@ -3073,15 +3460,15 @@ static const ber_sequence_t OAnswer_sequence[] = {
};
static int
-dissect_inap_OAnswer(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_OAnswerArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- OAnswer_sequence, hf_index, ett_inap_OAnswer);
+ OAnswerArg_sequence, hf_index, ett_inap_OAnswerArg);
return offset;
}
-static const ber_sequence_t OCalledPartyBusy_sequence[] = {
+static const ber_sequence_t OCalledPartyBusyArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_busyCause_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
@@ -3100,15 +3487,15 @@ static const ber_sequence_t OCalledPartyBusy_sequence[] = {
};
static int
-dissect_inap_OCalledPartyBusy(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_OCalledPartyBusyArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- OCalledPartyBusy_sequence, hf_index, ett_inap_OCalledPartyBusy);
+ OCalledPartyBusyArg_sequence, hf_index, ett_inap_OCalledPartyBusyArg);
return offset;
}
-static const ber_sequence_t ODisconnect_sequence[] = {
+static const ber_sequence_t ODisconnectArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
@@ -3123,52 +3510,9 @@ static const ber_sequence_t ODisconnect_sequence[] = {
};
static int
-dissect_inap_ODisconnect(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ODisconnectArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- ODisconnect_sequence, hf_index, ett_inap_ODisconnect);
-
- return offset;
-}
-
-
-static const value_string inap_FeatureRequestIndicator_vals[] = {
- { 0, "hold" },
- { 1, "retrieve" },
- { 2, "featureActivation" },
- { 3, "spare1" },
- { 127, "sparen" },
- { 0, NULL }
-};
-
-
-static int
-dissect_inap_FeatureRequestIndicator(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_featureRequestIndicator_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_FeatureRequestIndicator(TRUE, tvb, offset, pinfo, tree, hf_inap_featureRequestIndicator);
-}
-
-
-static const ber_sequence_t OMidCall_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
- { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
- { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
- { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
- { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
- { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_featureRequestIndicator_impl },
- { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
- { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
- { 0, 0, 0, NULL }
-};
-
-static int
-dissect_inap_OMidCall(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- OMidCall_sequence, hf_index, ett_inap_OMidCall);
+ ODisconnectArg_sequence, hf_index, ett_inap_ODisconnectArg);
return offset;
}
@@ -3200,7 +3544,7 @@ dissect_inap_ONoAnswer(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, pac
}
-static const ber_sequence_t OriginationAttemptAuthorized_sequence[] = {
+static const ber_sequence_t OriginationAttemptAuthorizedArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dialledDigits_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
@@ -3214,9 +3558,9 @@ static const ber_sequence_t OriginationAttemptAuthorized_sequence[] = {
};
static int
-dissect_inap_OriginationAttemptAuthorized(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_OriginationAttemptAuthorizedArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- OriginationAttemptAuthorized_sequence, hf_index, ett_inap_OriginationAttemptAuthorized);
+ OriginationAttemptAuthorizedArg_sequence, hf_index, ett_inap_OriginationAttemptAuthorizedArg);
return offset;
}
@@ -3249,7 +3593,7 @@ static int dissect_iA5Information_impl(packet_info *pinfo, proto_tree *tree, tvb
}
-static const ber_sequence_t PlayAnnouncement_sequence[] = {
+static const ber_sequence_t PlayAnnouncementArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_informationToSend_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_disconnectFromIPForbidden_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_requestAnnouncementComplete_impl },
@@ -3258,9 +3602,9 @@ static const ber_sequence_t PlayAnnouncement_sequence[] = {
};
static int
-dissect_inap_PlayAnnouncement(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_PlayAnnouncementArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- PlayAnnouncement_sequence, hf_index, ett_inap_PlayAnnouncement);
+ PlayAnnouncementArg_sequence, hf_index, ett_inap_PlayAnnouncementArg);
return offset;
}
@@ -3285,7 +3629,7 @@ static int dissect_startDigit_impl(packet_info *pinfo, proto_tree *tree, tvbuff_
}
-static const value_string inap_T_errorTreatment_vals[] = {
+static const value_string inap_ErrorTreatment_vals[] = {
{ 0, "reportErrorToScf" },
{ 1, "help" },
{ 2, "repeatPrompt" },
@@ -3294,18 +3638,18 @@ static const value_string inap_T_errorTreatment_vals[] = {
static int
-dissect_inap_T_errorTreatment(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ErrorTreatment(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_errorTreatment_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_errorTreatment(TRUE, tvb, offset, pinfo, tree, hf_inap_errorTreatment);
+ return dissect_inap_ErrorTreatment(TRUE, tvb, offset, pinfo, tree, hf_inap_errorTreatment);
}
-static const ber_sequence_t T_collectedDigits_sequence[] = {
+static const ber_sequence_t CollectedDigits_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_minimumNbOfDigits_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_maximumNbOfDigits_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_endOfReplyDigit_impl },
@@ -3321,44 +3665,44 @@ static const ber_sequence_t T_collectedDigits_sequence[] = {
};
static int
-dissect_inap_T_collectedDigits(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CollectedDigits(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- T_collectedDigits_sequence, hf_index, ett_inap_T_collectedDigits);
+ CollectedDigits_sequence, hf_index, ett_inap_CollectedDigits);
return offset;
}
static int dissect_collectedDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_collectedDigits(TRUE, tvb, offset, pinfo, tree, hf_inap_collectedDigits);
+ return dissect_inap_CollectedDigits(TRUE, tvb, offset, pinfo, tree, hf_inap_collectedDigits);
}
-static const value_string inap_T_collectedInfo_vals[] = {
+static const value_string inap_CollectedInfo_vals[] = {
{ 0, "collectedDigits" },
{ 1, "iA5Information" },
{ 0, NULL }
};
-static const ber_choice_t T_collectedInfo_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_collectedDigits_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_iA5Information_impl },
+static const ber_choice_t CollectedInfo_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_collectedDigits_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_iA5Information_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_inap_T_collectedInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CollectedInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- T_collectedInfo_choice, hf_index, ett_inap_T_collectedInfo,
+ CollectedInfo_choice, hf_index, ett_inap_CollectedInfo,
NULL);
return offset;
}
static int dissect_collectedInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_collectedInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_collectedInfo);
+ return dissect_inap_CollectedInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_collectedInfo);
}
-static const ber_sequence_t PromptAndCollectUserInformationarg_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_collectedInfo_impl },
+static const ber_sequence_t PromptAndCollectUserInformationArg_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_collectedInfo_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_disconnectFromIPForbidden_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_informationToSend_impl },
{ BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
@@ -3366,60 +3710,45 @@ static const ber_sequence_t PromptAndCollectUserInformationarg_sequence[] = {
};
static int
-dissect_inap_PromptAndCollectUserInformationarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_PromptAndCollectUserInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- PromptAndCollectUserInformationarg_sequence, hf_index, ett_inap_PromptAndCollectUserInformationarg);
+ PromptAndCollectUserInformationArg_sequence, hf_index, ett_inap_PromptAndCollectUserInformationArg);
return offset;
}
-static const value_string inap_PromptAndCollectUserInformationres_vals[] = {
- { 0, "digitsResponse" },
- { 1, "iA5Response" },
- { 0, NULL }
-};
-
-static const ber_choice_t PromptAndCollectUserInformationres_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_digitsResponse_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_iA5Response_impl },
- { 0, 0, 0, 0, NULL }
-};
static int
-dissect_inap_PromptAndCollectUserInformationres(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- PromptAndCollectUserInformationres_choice, hf_index, ett_inap_PromptAndCollectUserInformationres,
- NULL);
+dissect_inap_IA5String(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
+ pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
+static int dissect_iA5Response_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_IA5String(TRUE, tvb, offset, pinfo, tree, hf_inap_iA5Response);
+}
-static const value_string inap_ResourceStatus_vals[] = {
- { 0, "busy" },
- { 1, "idle" },
+static const value_string inap_ReceivedInformationArg_vals[] = {
+ { 0, "digitsResponse" },
+ { 1, "iA5Response" },
{ 0, NULL }
};
+static const ber_choice_t ReceivedInformationArg_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_digitsResponse_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_iA5Response_impl },
+ { 0, 0, 0, 0, NULL }
+};
static int
-dissect_inap_ResourceStatus(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
-
- return offset;
-}
-static int dissect_resourceStatus_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_ResourceStatus(TRUE, tvb, offset, pinfo, tree, hf_inap_resourceStatus);
-}
-
-
-
-static int
-dissect_inap_ReleaseCall(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+dissect_inap_ReceivedInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ ReceivedInformationArg_choice, hf_index, ett_inap_ReceivedInformationArg,
+ NULL);
return offset;
}
@@ -3464,49 +3793,51 @@ dissect_inap_ReleaseCallArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset
}
-static const value_string inap_RequestCurrentStatusReportarg_vals[] = {
- { 0, "lineID" },
- { 1, "facilityGroupID" },
- { 2, "facilityGroupMemberID" },
- { 3, "trunkGroupID" },
+
+static int
+dissect_inap_RequestCurrentStatusReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_ResourceID(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+
+
+static const value_string inap_ResourceStatus_vals[] = {
+ { 0, "busy" },
+ { 1, "idle" },
{ 0, NULL }
};
-static const ber_choice_t RequestCurrentStatusReportarg_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_lineID_impl },
- { 1, BER_CLASS_CON, 1, 0, dissect_facilityGroupID_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_facilityGroupMemberID_impl },
- { 3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_trunkGroupID_impl },
- { 0, 0, 0, 0, NULL }
-};
static int
-dissect_inap_RequestCurrentStatusReportarg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- RequestCurrentStatusReportarg_choice, hf_index, ett_inap_RequestCurrentStatusReportarg,
- NULL);
+dissect_inap_ResourceStatus(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
+static int dissect_resourceStatus_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_ResourceStatus(TRUE, tvb, offset, pinfo, tree, hf_inap_resourceStatus);
+}
-static const ber_sequence_t RequestCurrentStatusReportres_sequence[] = {
+static const ber_sequence_t RequestCurrentStatusReportResultArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_resourceStatus_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceID_impl },
- { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_extensions_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_RequestCurrentStatusReportres(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_RequestCurrentStatusReportResultArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- RequestCurrentStatusReportres_sequence, hf_index, ett_inap_RequestCurrentStatusReportres);
+ RequestCurrentStatusReportResultArg_sequence, hf_index, ett_inap_RequestCurrentStatusReportResultArg);
return offset;
}
-static const ber_sequence_t RequestEveryStatusChangeReport_sequence[] = {
+static const ber_sequence_t RequestEveryStatusChangeReportArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceID_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_monitorDuration_impl },
@@ -3515,15 +3846,15 @@ static const ber_sequence_t RequestEveryStatusChangeReport_sequence[] = {
};
static int
-dissect_inap_RequestEveryStatusChangeReport(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_RequestEveryStatusChangeReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- RequestEveryStatusChangeReport_sequence, hf_index, ett_inap_RequestEveryStatusChangeReport);
+ RequestEveryStatusChangeReportArg_sequence, hf_index, ett_inap_RequestEveryStatusChangeReportArg);
return offset;
}
-static const ber_sequence_t RequestFirstStatusMatchReport_sequence[] = {
+static const ber_sequence_t RequestFirstStatusMatchReportArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceID_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_resourceStatus_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
@@ -3534,16 +3865,16 @@ static const ber_sequence_t RequestFirstStatusMatchReport_sequence[] = {
};
static int
-dissect_inap_RequestFirstStatusMatchReport(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_RequestFirstStatusMatchReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- RequestFirstStatusMatchReport_sequence, hf_index, ett_inap_RequestFirstStatusMatchReport);
+ RequestFirstStatusMatchReportArg_sequence, hf_index, ett_inap_RequestFirstStatusMatchReportArg);
return offset;
}
static const ber_sequence_t RequestNotificationChargingEvent_item_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventTypeCharging_impl },
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventTypeCharging2_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_monitorMode_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
{ 0, 0, 0, NULL }
@@ -3576,92 +3907,92 @@ dissect_inap_RequestNotificationChargingEvent(gboolean implicit_tag _U_, tvbuff_
static int
-dissect_inap_INTEGER_1_255(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_NumberOfDigits(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_numberOfDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_1_255(TRUE, tvb, offset, pinfo, tree, hf_inap_numberOfDigits);
+ return dissect_inap_NumberOfDigits(TRUE, tvb, offset, pinfo, tree, hf_inap_numberOfDigits);
}
static int
-dissect_inap_INTEGER_0_2047(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ApplicationTimer(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_applicationTimer_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_2047(TRUE, tvb, offset, pinfo, tree, hf_inap_applicationTimer);
+ return dissect_inap_ApplicationTimer(TRUE, tvb, offset, pinfo, tree, hf_inap_applicationTimer);
}
-static const value_string inap_T_dpSpecificCriteria_vals[] = {
+static const value_string inap_DpSpecificCriteria_vals[] = {
{ 0, "numberOfDigits" },
{ 1, "applicationTimer" },
{ 0, NULL }
};
-static const ber_choice_t T_dpSpecificCriteria_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_numberOfDigits_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_applicationTimer_impl },
+static const ber_choice_t DpSpecificCriteria_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_numberOfDigits_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_applicationTimer_impl },
{ 0, 0, 0, 0, NULL }
};
static int
-dissect_inap_T_dpSpecificCriteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_DpSpecificCriteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- T_dpSpecificCriteria_choice, hf_index, ett_inap_T_dpSpecificCriteria,
+ DpSpecificCriteria_choice, hf_index, ett_inap_DpSpecificCriteria,
NULL);
return offset;
}
static int dissect_dpSpecificCriteria_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_dpSpecificCriteria(TRUE, tvb, offset, pinfo, tree, hf_inap_dpSpecificCriteria);
+ return dissect_inap_DpSpecificCriteria(TRUE, tvb, offset, pinfo, tree, hf_inap_dpSpecificCriteria);
}
-static const ber_sequence_t T_bcsmEvents_item_sequence[] = {
+static const ber_sequence_t BCSMEvent_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventTypeBCSM_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_monitorMode_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
- { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dpSpecificCriteria_impl },
+ { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_dpSpecificCriteria_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_T_bcsmEvents_item(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_BCSMEvent(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- T_bcsmEvents_item_sequence, hf_index, ett_inap_T_bcsmEvents_item);
+ BCSMEvent_sequence, hf_index, ett_inap_BCSMEvent);
return offset;
}
static int dissect_bcsmEvents_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_bcsmEvents_item(FALSE, tvb, offset, pinfo, tree, hf_inap_bcsmEvents_item);
+ return dissect_inap_BCSMEvent(FALSE, tvb, offset, pinfo, tree, hf_inap_bcsmEvents_item);
}
-static const ber_sequence_t T_bcsmEvents_sequence_of[1] = {
+static const ber_sequence_t SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent_sequence_of[1] = {
{ BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_bcsmEvents_item },
};
static int
-dissect_inap_T_bcsmEvents(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
- T_bcsmEvents_sequence_of, hf_index, ett_inap_T_bcsmEvents);
+ SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent_sequence_of, hf_index, ett_inap_SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent);
return offset;
}
static int dissect_bcsmEvents_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_bcsmEvents(TRUE, tvb, offset, pinfo, tree, hf_inap_bcsmEvents);
+ return dissect_inap_SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent(TRUE, tvb, offset, pinfo, tree, hf_inap_bcsmEvents);
}
-static const ber_sequence_t RequestReportBCSMEvent_sequence[] = {
+static const ber_sequence_t RequestReportBCSMEventArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_bcsmEvents_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_bcsmEventCorrelationID_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
@@ -3669,33 +4000,45 @@ static const ber_sequence_t RequestReportBCSMEvent_sequence[] = {
};
static int
-dissect_inap_RequestReportBCSMEvent(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_RequestReportBCSMEventArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- RequestReportBCSMEvent_sequence, hf_index, ett_inap_RequestReportBCSMEvent);
+ RequestReportBCSMEventArg_sequence, hf_index, ett_inap_RequestReportBCSMEventArg);
return offset;
}
-static const value_string inap_T_timerID_vals[] = {
+static const value_string inap_TimerID_vals[] = {
{ 0, "tssf" },
{ 0, NULL }
};
static int
-dissect_inap_T_timerID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_TimerID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_timerID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_timerID(TRUE, tvb, offset, pinfo, tree, hf_inap_timerID);
+ return dissect_inap_TimerID(TRUE, tvb, offset, pinfo, tree, hf_inap_timerID);
+}
+
+
+
+static int
+dissect_inap_TimerValue(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_inap_Integer4(implicit_tag, tvb, offset, pinfo, tree, hf_index);
+
+ return offset;
+}
+static int dissect_timervalue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_TimerValue(TRUE, tvb, offset, pinfo, tree, hf_inap_timervalue);
}
-static const ber_sequence_t ResetTimer_sequence[] = {
+static const ber_sequence_t ResetTimerArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_timerID_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_timervalue_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
@@ -3703,15 +4046,15 @@ static const ber_sequence_t ResetTimer_sequence[] = {
};
static int
-dissect_inap_ResetTimer(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ResetTimerArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- ResetTimer_sequence, hf_index, ett_inap_ResetTimer);
+ ResetTimerArg_sequence, hf_index, ett_inap_ResetTimerArg);
return offset;
}
-static const ber_sequence_t RouteSelectFailure_sequence[] = {
+static const ber_sequence_t RouteSelectFailureArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dialledDigits_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
@@ -3731,44 +4074,15 @@ static const ber_sequence_t RouteSelectFailure_sequence[] = {
};
static int
-dissect_inap_RouteSelectFailure(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_RouteSelectFailureArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- RouteSelectFailure_sequence, hf_index, ett_inap_RouteSelectFailure);
+ RouteSelectFailureArg_sequence, hf_index, ett_inap_RouteSelectFailureArg);
return offset;
}
-static const value_string inap_CalledFacilityGroup_vals[] = {
- { 0, "trunkGroupID" },
- { 1, "privateFacilityID" },
- { 2, "huntGroup" },
- { 3, "routeIndex" },
- { 0, NULL }
-};
-
-static const ber_choice_t CalledFacilityGroup_choice[] = {
- { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_trunkGroupID_impl },
- { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_privateFacilityID_impl },
- { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_huntGroup_impl },
- { 3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_routeIndex_impl },
- { 0, 0, 0, 0, NULL }
-};
-
-static int
-dissect_inap_CalledFacilityGroup(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_choice(pinfo, tree, tvb, offset,
- CalledFacilityGroup_choice, hf_index, ett_inap_CalledFacilityGroup,
- NULL);
-
- return offset;
-}
-static int dissect_calledFacilityGroup_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_CalledFacilityGroup(TRUE, tvb, offset, pinfo, tree, hf_inap_calledFacilityGroup);
-}
-
-
-static const ber_sequence_t SelectFacility_sequence[] = {
+static const ber_sequence_t SelectFacilityArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alertingPattern_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_destinationNumberRoutingAddress_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iSDNAccessRelatedInformation_impl },
@@ -3780,15 +4094,15 @@ static const ber_sequence_t SelectFacility_sequence[] = {
};
static int
-dissect_inap_SelectFacility(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_SelectFacilityArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- SelectFacility_sequence, hf_index, ett_inap_SelectFacility);
+ SelectFacilityArg_sequence, hf_index, ett_inap_SelectFacilityArg);
return offset;
}
-static const ber_sequence_t SelectRoute_sequence[] = {
+static const ber_sequence_t SelectRouteArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_destinationRoutingAddress_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alertingPattern_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
@@ -3803,15 +4117,28 @@ static const ber_sequence_t SelectRoute_sequence[] = {
};
static int
-dissect_inap_SelectRoute(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_SelectRouteArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- SelectRoute_sequence, hf_index, ett_inap_SelectRoute);
+ SelectRouteArg_sequence, hf_index, ett_inap_SelectRouteArg);
return offset;
}
-static const ber_sequence_t SendChargingInformation_sequence[] = {
+
+static int
+dissect_inap_SCIBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_sCIBillingChargingCharacteristics_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_SCIBillingChargingCharacteristics(TRUE, tvb, offset, pinfo, tree, hf_inap_sCIBillingChargingCharacteristics);
+}
+
+
+static const ber_sequence_t SendChargingInformationArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_sCIBillingChargingCharacteristics_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_partyToCharge_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
@@ -3819,9 +4146,9 @@ static const ber_sequence_t SendChargingInformation_sequence[] = {
};
static int
-dissect_inap_SendChargingInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_SendChargingInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- SendChargingInformation_sequence, hf_index, ett_inap_SendChargingInformation);
+ SendChargingInformationArg_sequence, hf_index, ett_inap_SendChargingInformationArg);
return offset;
}
@@ -3829,52 +4156,52 @@ dissect_inap_SendChargingInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, i
static int
-dissect_inap_INTEGER_0_99(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CounterID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_counterID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_INTEGER_0_99(TRUE, tvb, offset, pinfo, tree, hf_inap_counterID);
+ return dissect_inap_CounterID(TRUE, tvb, offset, pinfo, tree, hf_inap_counterID);
}
-static const ber_sequence_t T_countersValue_item_sequence[] = {
+static const ber_sequence_t CounterAndValue_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_counterID_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_counterValue_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_T_countersValue_item(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CounterAndValue(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- T_countersValue_item_sequence, hf_index, ett_inap_T_countersValue_item);
+ CounterAndValue_sequence, hf_index, ett_inap_CounterAndValue);
return offset;
}
-static int dissect_countersValue_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_countersValue_item(FALSE, tvb, offset, pinfo, tree, hf_inap_countersValue_item);
+static int dissect_CountersValue_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_CounterAndValue(FALSE, tvb, offset, pinfo, tree, hf_inap_CountersValue_item);
}
-static const ber_sequence_t T_countersValue_sequence_of[1] = {
- { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_countersValue_item },
+static const ber_sequence_t CountersValue_sequence_of[1] = {
+ { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_CountersValue_item },
};
static int
-dissect_inap_T_countersValue(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_CountersValue(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
- T_countersValue_sequence_of, hf_index, ett_inap_T_countersValue);
+ CountersValue_sequence_of, hf_index, ett_inap_CountersValue);
return offset;
}
static int dissect_countersValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_countersValue(TRUE, tvb, offset, pinfo, tree, hf_inap_countersValue);
+ return dissect_inap_CountersValue(TRUE, tvb, offset, pinfo, tree, hf_inap_countersValue);
}
-static const value_string inap_T_responseCondition_vals[] = {
+static const value_string inap_ResponseCondition_vals[] = {
{ 0, "intermediateResponse" },
{ 1, "lastResponse" },
{ 0, NULL }
@@ -3882,18 +4209,18 @@ static const value_string inap_T_responseCondition_vals[] = {
static int
-dissect_inap_T_responseCondition(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ResponseCondition(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_responseCondition_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_responseCondition(TRUE, tvb, offset, pinfo, tree, hf_inap_responseCondition);
+ return dissect_inap_ResponseCondition(TRUE, tvb, offset, pinfo, tree, hf_inap_responseCondition);
}
-static const ber_sequence_t ServiceFilteringResponse_sequence[] = {
+static const ber_sequence_t ServiceFilteringResponseArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_countersValue_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_filteringCriteria_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
@@ -3902,15 +4229,24 @@ static const ber_sequence_t ServiceFilteringResponse_sequence[] = {
};
static int
-dissect_inap_ServiceFilteringResponse(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ServiceFilteringResponseArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- ServiceFilteringResponse_sequence, hf_index, ett_inap_ServiceFilteringResponse);
+ ServiceFilteringResponseArg_sequence, hf_index, ett_inap_ServiceFilteringResponseArg);
+
+ return offset;
+}
+
+
+
+static int
+dissect_inap_SpecializedResourceReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_null(implicit_tag, pinfo, tree, tvb, offset, hf_index);
return offset;
}
-static const value_string inap_T_reportCondition_vals[] = {
+static const value_string inap_ReportCondition_vals[] = {
{ 0, "statusReport" },
{ 1, "timerExpired" },
{ 2, "canceled" },
@@ -3919,18 +4255,18 @@ static const value_string inap_T_reportCondition_vals[] = {
static int
-dissect_inap_T_reportCondition(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ReportCondition(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
return offset;
}
static int dissect_reportCondition_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
- return dissect_inap_T_reportCondition(TRUE, tvb, offset, pinfo, tree, hf_inap_reportCondition);
+ return dissect_inap_ReportCondition(TRUE, tvb, offset, pinfo, tree, hf_inap_reportCondition);
}
-static const ber_sequence_t StatusReport_sequence[] = {
+static const ber_sequence_t StatusReportArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_resourceStatus_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceID_impl },
@@ -3940,15 +4276,15 @@ static const ber_sequence_t StatusReport_sequence[] = {
};
static int
-dissect_inap_StatusReport(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_StatusReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- StatusReport_sequence, hf_index, ett_inap_StatusReport);
+ StatusReportArg_sequence, hf_index, ett_inap_StatusReportArg);
return offset;
}
-static const ber_sequence_t TAnswer_sequence[] = {
+static const ber_sequence_t TAnswerArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
@@ -3959,15 +4295,15 @@ static const ber_sequence_t TAnswer_sequence[] = {
};
static int
-dissect_inap_TAnswer(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_TAnswerArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- TAnswer_sequence, hf_index, ett_inap_TAnswer);
+ TAnswerArg_sequence, hf_index, ett_inap_TAnswerArg);
return offset;
}
-static const ber_sequence_t TBusy_sequence[] = {
+static const ber_sequence_t TTBusyArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_busyCause_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
@@ -3982,15 +4318,15 @@ static const ber_sequence_t TBusy_sequence[] = {
};
static int
-dissect_inap_TBusy(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_TTBusyArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- TBusy_sequence, hf_index, ett_inap_TBusy);
+ TTBusyArg_sequence, hf_index, ett_inap_TTBusyArg);
return offset;
}
-static const ber_sequence_t TDisconnect_sequence[] = {
+static const ber_sequence_t TDisconnectArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
@@ -4003,15 +4339,15 @@ static const ber_sequence_t TDisconnect_sequence[] = {
};
static int
-dissect_inap_TDisconnect(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_TDisconnectArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- TDisconnect_sequence, hf_index, ett_inap_TDisconnect);
+ TDisconnectArg_sequence, hf_index, ett_inap_TDisconnectArg);
return offset;
}
-static const ber_sequence_t TermAttemptAuthorized_sequence[] = {
+static const ber_sequence_t TermAttemptAuthorizedArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
@@ -4026,53 +4362,142 @@ static const ber_sequence_t TermAttemptAuthorized_sequence[] = {
};
static int
-dissect_inap_TermAttemptAuthorized(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_TermAttemptAuthorizedArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- TermAttemptAuthorized_sequence, hf_index, ett_inap_TermAttemptAuthorized);
+ TermAttemptAuthorizedArg_sequence, hf_index, ett_inap_TermAttemptAuthorizedArg);
return offset;
}
-static const ber_sequence_t TMidCall_sequence[] = {
+static const ber_sequence_t TNoAnswerArg_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
{ BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
- { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
- { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
- { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_featureRequestIndicator_impl },
- { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
- { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
+ { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_calledFacilityGroup_impl },
+ { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledFacilityGroupMember_impl },
+ { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
+ { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
+ { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
+ { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
+ { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_TMidCall(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_TNoAnswerArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- TMidCall_sequence, hf_index, ett_inap_TMidCall);
+ TNoAnswerArg_sequence, hf_index, ett_inap_TNoAnswerArg);
return offset;
}
-static const ber_sequence_t TNoAnswer_sequence[] = {
- { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
- { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
- { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
- { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_calledFacilityGroup_impl },
- { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledFacilityGroupMember_impl },
- { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
- { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
- { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
- { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
- { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
+static const ber_sequence_t ChargingEvent_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventTypeCharging_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_monitorMode_impl },
+ { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
{ 0, 0, 0, NULL }
};
static int
-dissect_inap_TNoAnswer(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+dissect_inap_ChargingEvent(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
- TNoAnswer_sequence, hf_index, ett_inap_TNoAnswer);
+ ChargingEvent_sequence, hf_index, ett_inap_ChargingEvent);
+
+ return offset;
+}
+
+
+
+static int
+dissect_inap_INTEGER_0_255(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_callAttemptElapsedTimeValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_INTEGER_0_255(TRUE, tvb, offset, pinfo, tree, hf_inap_callAttemptElapsedTimeValue);
+}
+
+
+static const value_string inap_RequestedInformationValue_vals[] = {
+ { 0, "callAttemptElapsedTimeValue" },
+ { 1, "callStopTimeValue" },
+ { 2, "callConnectedElapsedTimeValue" },
+ { 3, "calledAddressValue" },
+ { 30, "releaseCauseValue" },
+ { 0, NULL }
+};
+
+static const ber_choice_t RequestedInformationValue_choice[] = {
+ { 0, BER_CLASS_CON, 0, 0, dissect_callAttemptElapsedTimeValue_impl },
+ { 1, BER_CLASS_CON, 1, 0, dissect_callStopTimeValue_impl },
+ { 2, BER_CLASS_CON, 2, 0, dissect_callConnectedElapsedTimeValue_impl },
+ { 3, BER_CLASS_CON, 3, 0, dissect_calledAddressValue_impl },
+ { 30, BER_CLASS_CON, 30, 0, dissect_releaseCauseValue_impl },
+ { 0, 0, 0, 0, NULL }
+};
+
+static int
+dissect_inap_RequestedInformationValue(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_choice(pinfo, tree, tvb, offset,
+ RequestedInformationValue_choice, hf_index, ett_inap_RequestedInformationValue,
+ NULL);
+
+ return offset;
+}
+static int dissect_requestedInformationValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_RequestedInformationValue(TRUE, tvb, offset, pinfo, tree, hf_inap_requestedInformationValue);
+}
+
+
+static const ber_sequence_t RequestedInformation_sequence[] = {
+ { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_requestedInformationType_impl },
+ { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_requestedInformationValue_impl },
+ { 0, 0, 0, NULL }
+};
+
+static int
+dissect_inap_RequestedInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
+ RequestedInformation_sequence, hf_index, ett_inap_RequestedInformation);
+
+ return offset;
+}
+static int dissect_RequestedInformationList_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_RequestedInformation(FALSE, tvb, offset, pinfo, tree, hf_inap_RequestedInformationList_item);
+}
+
+
+static const ber_sequence_t RequestedInformationList_sequence_of[1] = {
+ { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_RequestedInformationList_item },
+};
+
+static int
+dissect_inap_RequestedInformationList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
+ RequestedInformationList_sequence_of, hf_index, ett_inap_RequestedInformationList);
+
+ return offset;
+}
+
+
+static const value_string inap_UnavailableNetworkResource_vals[] = {
+ { 0, "unavailableResources" },
+ { 1, "componentFailure" },
+ { 2, "basicCallProcessingException" },
+ { 3, "resourceStatusFailure" },
+ { 4, "endUserFailure" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_inap_UnavailableNetworkResource(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
return offset;
}
@@ -4098,6 +4523,19 @@ static int dissect_problem_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *
}
+
+static int
+dissect_inap_INTEGER_M128_127(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+ offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
+ NULL);
+
+ return offset;
+}
+static int dissect_operation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
+ return dissect_inap_INTEGER_M128_127(TRUE, tvb, offset, pinfo, tree, hf_inap_operation);
+}
+
+
static const ber_sequence_t CancelFailed_sequence[] = {
{ BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_problem_impl },
{ BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_operation_impl },
@@ -4340,25 +4778,61 @@ dissect_inap_RejectPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, pac
const value_string inap_opr_code_strings[] = {
-{16, "AssistRequestInstructions"},
-{44, "CallInformationReport"},
-{45, "CallInformationRequest"},
-{53, "Cancel"},
-{20, "Connect"},
-{18, "DisconnectForwardConnection"},
- {19,"ConnectToResource"},
+ {0,"InitialDP"},
+ {1, "OriginationAttemptAuthorized"},
+ {2, "CollectedInformation"},
+ {3, "AnalysedInformation"},
+ {4, "RouteSelectFailure"},
+ {5, "oCalledPartyBusy"},
+ {6, "oNoAnswer"},
+ {7, "oAnswer"},
+ {8, "oDisconnect"},
+ {9, "TermAttemptAuthorized"},
+ {10, "tBusy"},
+ {11, "tNoAnswer"},
+ {12, "tAnswer"},
+ {13, "tDisconnect"},
+ {14, "oMidCall"},
+ {15, "tMidCall"},
+ {16, "AssistRequestInstructions"},
{17,"EstablishTemporaryConnection"},
+ {18, "DisconnectForwardConnection"},
+ {19,"ConnectToResource"},
+ {20, "Connect"},
+ {21,"HoldCallInNetwork"},
+ {22, "ReleaseCall"},
+ {23, "RequestReportBCSMEven"},
+ {23,"RequestReportBCSMEvent"},
{24,"EventReportBCSM"},
+ {25, "RequestNotificationChargingEvent"},
+ {26, "EventNotificationCharging"},
+ {27, "CollectInformation"},
+ {28, "AnalyseInformation"},
+ {29, "SelectRoute"},
+ {30, "SelectFacility"},
+ {31, "Continue"},
+ {32, "InitiateCallAttempt"},
+ {33,"ResetTimer"},
{34,"FurnishChargingInformation"},
- {0,"InitialDP"},
+ {35, "ApplyCharging"},
+ {36, "ApplyChargingReport"},
+ {37, "RequestCurrentStatusReport"},
+ {38, "RequestEveryStatusChangeReport"},
+ {39, "RequestFirstStatusMatchReport"},
+ {40, "StatusReport"},
+ {41, "CallGap"},
+ {42, "ActivateServiceFiltering"},
+ {43, "ServiceFilteringResponse"},
+ {44, "CallInformationReport"},
+ {45, "CallInformationRequest"},
+ {46, "SendChargingInformation"},
{47,"PlayAnnouncement"},
{48,"PromptAndCollectUserInformation"},
- {99,"ReceivedInformation"}, /*???????*/
- {33,"ResetTimer"},
- {23,"RequestReportBCSMEvent"},
{49,"SpecializedResourceReport"},
- {22,"ReleaseCall"},
-{0, NULL}
+ {53, "Cancel"},
+ {55, "ActivityTest"},
+ {99,"ReceivedInformation"}, /*???????*/
+ {0, NULL}
};
const value_string inap_error_code_strings[] = {
@@ -4378,6 +4852,7 @@ const value_string inap_error_code_strings[] = {
{15,"UnexpectedDataValue"},
{16,"UnexpectedParameter"},
{17,"UnknownLegID"},
+{18,"UnknownResource"},
{0, NULL}
};
@@ -4416,59 +4891,114 @@ dissect_inap_errorCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, pac
return offset;
}
+/*
+TC-Invokable OPERATION ::=
+ {activateServiceFiltering | activityTest | analysedInformation |
+ analyseInformation | applyCharging | applyChargingReport |
+ assistRequestInstructions | callGap | callInformationReport |
+ callInformationRequest | cancel | cancelStatusReportRequest |
+ collectedInformation | collectInformation | connect | connectToResource |
+ continue | disconnectForwardConnection | establishTemporaryConnection |
+ eventNotificationCharging | eventReportBCSM | furnishChargingInformation |
+ holdCallInNetwork | initialDP | initiateCallAttempt | oAnswer |
+ oCalledPartyBusy | oDisconnect | oMidCall | oNoAnswer |
+ originationAttemptAuthorized | releaseCall | requestCurrentStatusReport |
+ requestEveryStatusChangeReport | requestFirstStatusMatchReport |
+ requestNotificationChargingEvent | requestReportBCSMEvent | resetTimer |
+ routeSelectFailure | selectFacility | selectRoute | sendChargingInformation
+ | serviceFilteringResponse | statusReport | tAnswer | tBusy | tDisconnect |
+ termAttemptAuthorized | tMidCall | tNoAnswer | playAnnouncement |
+ promptAndCollectUserInformation}
+*/
static int dissect_invokeData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
switch(opcode){
- case 16: /*AssistRequestInstructions*/
- offset=dissect_inap_AssistRequestInstructionsarg(FALSE, tvb, offset, pinfo, tree, -1);
- break;
- case 44: /*CallInformationReport*/
- offset=dissect_inap_CallInformationReportarg(FALSE, tvb, offset, pinfo, tree, -1);
- break;
- case 45: /*CallInformationRequest*/
- offset=dissect_inap_CallInformationRequestarg(FALSE, tvb, offset, pinfo, tree, -1);
+ case 0: /*InitialDP*/
+ offset=dissect_inap_InitialDP(FALSE, tvb, offset, pinfo, tree, -1);
break;
- case 53: /*Cancel*/
- offset=dissect_inap_Cancelarg(FALSE, tvb, offset, pinfo, tree, -1);
+ /*1 OriginationAttemptAuthorized */
+ /*2 CollectedInformation */
+ /*3 AnalysedInformation */
+ /*4 RouteSelectFailure */
+ /*5 oCalledPartyBusy */
+ /*6 oNoAnswer */
+ /*7 oAnswer */
+ /*8 oDisconnect */
+ /*9 TermAttemptAuthorized */
+ /*10 tBusy */
+ /*11 tNoAnswer */
+ /*12 tAnswer */
+ /*13 tDisconnect */
+ /*14 oMidCall */
+ /*15 tMidCall */
+ case 16: /*AssistRequestInstructions*/
+ offset=dissect_inap_AssistRequestInstructionsArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
- case 20: /*Connect*/
- offset=dissect_inap_Connectarg(FALSE, tvb, offset, pinfo, tree, -1);
+ case 17: /*EstablishTemporaryConnection*/
+ offset=dissect_inap_EstablishTemporaryConnectionArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
case 18: /*DisconnectForwardConnections*/
proto_tree_add_text(tree, tvb, offset, -1, "Disconnect Forward Connection");
break;
case 19: /*ConnectToResource*/
- offset=dissect_inap_ConnectToResource(FALSE, tvb, offset, pinfo, tree, -1);
+ offset=dissect_inap_ConnectToResourceArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
- case 17: /*EstablishTemporaryConnection*/
- offset=dissect_inap_EstablishTemporaryConnection(FALSE, tvb, offset, pinfo, tree, -1);
+ case 20: /*Connect*/
+ offset=dissect_inap_ConnectArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
+ /* 21 HoldCallInNetwork */
+
+ case 22: /*ReleaseCall*/
+ offset=dissect_inap_ReleaseCallArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
+ case 23: /*InitialDP*/
+ offset=dissect_inap_RequestReportBCSMEventArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
case 24: /*EventReportBCSM*/
- offset=dissect_inap_EventReportBCSM(FALSE, tvb, offset, pinfo, tree, -1);
+ offset=dissect_inap_EventReportBCSMArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
- case 34: /*FurnishChargingInformation*/
- offset=dissect_inap_FurnishChargingInformationarg(FALSE, tvb, offset, pinfo, tree, -1);
+ /*24,"EventReportBCSM */
+ /*25, "RequestNotificationChargingEvent */
+ /*26, "EventNotificationCharging */
+ /*27, "CollectInformation */
+ /*28, "AnalyseInformation */
+ /*29, "SelectRoute */
+ /*30, "SelectFacility */
+ /*31, "Continue */
+ /*32, "InitiateCallAttempt*/
+ case 33: /*ResetTimer*/
+ offset=dissect_inap_ResetTimerArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
- case 0: /*InitialDP*/
- offset=dissect_inap_InitialDP(FALSE, tvb, offset, pinfo, tree, -1);
+ case 34: /*FurnishChargingInformation*/
+ offset=dissect_inap_FurnishChargingInformationArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
+ /*35, "ApplyCharging */
+ /*36, "ApplyChargingReport */
+ /*37, "RequestCurrentStatusReport */
+ /*38, "RequestEveryStatusChangeReport */
+ /*39, "RequestFirstStatusMatchReport */
+ /*40, "StatusReport */
+ /*41, "CallGap */
+ /*42, "ActivateServiceFiltering */
+ /*43, "ServiceFilteringResponse */
- case 23: /*InitialDP*/
- offset=dissect_inap_RequestReportBCSMEvent(FALSE, tvb, offset, pinfo, tree, -1);
+ case 44: /*CallInformationReport*/
+ offset=dissect_inap_CallInformationReportArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
+ case 45: /*CallInformationRequest*/
+ offset=dissect_inap_CallInformationRequestArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
-
case 47: /*PlayAnnouncement*/
- offset=dissect_inap_PlayAnnouncement(FALSE, tvb, offset, pinfo, tree, -1);
+ offset=dissect_inap_PlayAnnouncementArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
case 48: /*PromptAndCollectUserInformation*/
- offset=dissect_inap_PromptAndCollectUserInformationarg(FALSE, tvb, offset, pinfo, tree, -1);
- break;
- case 33: /*ResetTimer*/
- offset=dissect_inap_ResetTimer(FALSE, tvb, offset, pinfo, tree, -1);
+ offset=dissect_inap_PromptAndCollectUserInformationArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
- case 22: /*ResetTimer*/
- offset=dissect_inap_ReleaseCallArg(FALSE, tvb, offset, pinfo, tree, -1);
+ /* 49 SpecializedResourceReport */
+ case 53: /*Cancel*/
+ offset=dissect_inap_CancelArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
+ /*55 ActivityTest*/
default:
proto_tree_add_text(tree, tvb, offset, -1, "Unknown invokeData blob");
/* todo call the asn.1 dissector */
@@ -4476,11 +5006,27 @@ static int dissect_invokeData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv
return offset;
}
+/*
+TC-Returnable OPERATION ::=
+ {activateServiceFiltering | activityTest | requestCurrentStatusReport |
+ requestEveryStatusChangeReport | requestFirstStatusMatchReport |
+ promptAndCollectUserInformation}
+ activateServiceFiltering - No arg
+ activityTest - No Arg
+ requestCurrentStatusReport - RESULT RequestCurrentStatusReportResultArg
+ requestEveryStatusChangeReport - No arg
+ requestFirstStatusMatchReport - No Arg
+ promptAndCollectUserInformation - RESULT ReceivedInformationArg
+
+*/
static int dissect_returnResultData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
switch(opcode){
+ case 37: /*requestCurrentStatusReport*/
+ offset=dissect_inap_RequestCurrentStatusReportResultArg(FALSE, tvb, offset, pinfo, tree, -1);
+ break;
case 48: /*PromptAndCollectUserInformation*/
- offset=dissect_inap_PromptAndCollectUserInformationres(FALSE, tvb, offset, pinfo, tree, -1);
+ offset=dissect_inap_ReceivedInformationArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
default:
proto_tree_add_text(tree, tvb, offset, -1, "Unknown returnResultData blob");
@@ -4777,14 +5323,6 @@ void proto_register_inap(void) {
{ "legID", "inap.legID",
FT_UINT32, BASE_DEC, VALS(inap_LegID_vals), 0,
"", HFILL }},
- { &hf_inap_sendingSideID,
- { "sendingSideID", "inap.sendingSideID",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_receivingSideID,
- { "receivingSideID", "inap.receivingSideID",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
{ &hf_inap_heldLegID,
{ "heldLegID", "inap.heldLegID",
FT_UINT32, BASE_DEC, VALS(inap_LegID_vals), 0,
@@ -4801,126 +5339,6 @@ void proto_register_inap(void) {
{ "legStatus", "inap.legStatus",
FT_UINT32, BASE_DEC, VALS(inap_LegStatus_vals), 0,
"LegInformation/legStatus", HFILL }},
- { &hf_inap_VariableParts_item,
- { "Item", "inap.VariableParts_item",
- FT_UINT32, BASE_DEC, VALS(inap_VariableParts_item_vals), 0,
- "VariableParts/_item", HFILL }},
- { &hf_inap_integer,
- { "integer", "inap.integer",
- FT_UINT32, BASE_DEC, NULL, 0,
- "VariableParts/_item/integer", HFILL }},
- { &hf_inap_number,
- { "number", "inap.number",
- FT_BYTES, BASE_HEX, NULL, 0,
- "VariableParts/_item/number", HFILL }},
- { &hf_inap_time,
- { "time", "inap.time",
- FT_BYTES, BASE_HEX, NULL, 0,
- "VariableParts/_item/time", HFILL }},
- { &hf_inap_date,
- { "date", "inap.date",
- FT_BYTES, BASE_HEX, NULL, 0,
- "VariableParts/_item/date", HFILL }},
- { &hf_inap_price,
- { "price", "inap.price",
- FT_BYTES, BASE_HEX, NULL, 0,
- "VariableParts/_item/price", HFILL }},
- { &hf_inap_elementaryMessageID,
- { "elementaryMessageID", "inap.elementaryMessageID",
- FT_UINT32, BASE_DEC, NULL, 0,
- "", HFILL }},
- { &hf_inap_variableParts,
- { "variableParts", "inap.variableParts",
- FT_UINT32, BASE_DEC, NULL, 0,
- "VariableMessage/variableParts", HFILL }},
- { &hf_inap_toneID,
- { "toneID", "inap.toneID",
- FT_UINT32, BASE_DEC, NULL, 0,
- "Tone/toneID", HFILL }},
- { &hf_inap_tduration,
- { "tduration", "inap.tduration",
- FT_UINT32, BASE_DEC, NULL, 0,
- "Tone/tduration", HFILL }},
- { &hf_inap_messageContent,
- { "messageContent", "inap.messageContent",
- FT_STRING, BASE_NONE, NULL, 0,
- "Text/messageContent", HFILL }},
- { &hf_inap_attributes,
- { "attributes", "inap.attributes",
- FT_BYTES, BASE_HEX, NULL, 0,
- "Text/attributes", HFILL }},
- { &hf_inap_text,
- { "text", "inap.text",
- FT_NONE, BASE_NONE, NULL, 0,
- "MessageID/text", HFILL }},
- { &hf_inap_elementaryMessageIDs,
- { "elementaryMessageIDs", "inap.elementaryMessageIDs",
- FT_UINT32, BASE_DEC, NULL, 0,
- "MessageID/elementaryMessageIDs", HFILL }},
- { &hf_inap_elementaryMessageIDs_item,
- { "Item", "inap.elementaryMessageIDs_item",
- FT_UINT32, BASE_DEC, NULL, 0,
- "MessageID/elementaryMessageIDs/_item", HFILL }},
- { &hf_inap_variableMessage,
- { "variableMessage", "inap.variableMessage",
- FT_NONE, BASE_NONE, NULL, 0,
- "MessageID/variableMessage", HFILL }},
- { &hf_inap_inbandInfo,
- { "inbandInfo", "inap.inbandInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "InformationToSend/inbandInfo", HFILL }},
- { &hf_inap_messageID,
- { "messageID", "inap.messageID",
- FT_UINT32, BASE_DEC, VALS(inap_MessageID_vals), 0,
- "InformationToSend/inbandInfo/messageID", HFILL }},
- { &hf_inap_numberOfRepetitions,
- { "numberOfRepetitions", "inap.numberOfRepetitions",
- FT_UINT32, BASE_DEC, NULL, 0,
- "InformationToSend/inbandInfo/numberOfRepetitions", HFILL }},
- { &hf_inap_mduration,
- { "mduration", "inap.mduration",
- FT_UINT32, BASE_DEC, NULL, 0,
- "InformationToSend/inbandInfo/mduration", HFILL }},
- { &hf_inap_interval,
- { "interval", "inap.interval",
- FT_UINT32, BASE_DEC, NULL, 0,
- "", HFILL }},
- { &hf_inap_tone,
- { "tone", "inap.tone",
- FT_NONE, BASE_NONE, NULL, 0,
- "InformationToSend/tone", HFILL }},
- { &hf_inap_displayInformation,
- { "displayInformation", "inap.displayInformation",
- FT_STRING, BASE_NONE, NULL, 0,
- "InformationToSend/displayInformation", HFILL }},
- { &hf_inap_dialledNumber,
- { "dialledNumber", "inap.dialledNumber",
- FT_BYTES, BASE_HEX, NULL, 0,
- "FilteringCriteria/dialledNumber", HFILL }},
- { &hf_inap_callingLineID,
- { "callingLineID", "inap.callingLineID",
- FT_BYTES, BASE_HEX, NULL, 0,
- "FilteringCriteria/callingLineID", HFILL }},
- { &hf_inap_serviceKey,
- { "serviceKey", "inap.serviceKey",
- FT_UINT32, BASE_DEC, NULL, 0,
- "", HFILL }},
- { &hf_inap_addressAndService,
- { "addressAndService", "inap.addressAndService",
- FT_NONE, BASE_NONE, NULL, 0,
- "FilteringCriteria/addressAndService", HFILL }},
- { &hf_inap_calledAddressValue,
- { "calledAddressValue", "inap.calledAddressValue",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_callingAddressValue,
- { "callingAddressValue", "inap.callingAddressValue",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_locationNumber,
- { "locationNumber", "inap.locationNumber",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
{ &hf_inap_Extensions_item,
{ "Item", "inap.Extensions_item",
FT_NONE, BASE_NONE, NULL, 0,
@@ -4940,39 +5358,15 @@ void proto_register_inap(void) {
{ &hf_inap_filteredCallTreatment,
{ "filteredCallTreatment", "inap.filteredCallTreatment",
FT_NONE, BASE_NONE, NULL, 0,
- "ActivateServiceFilteringarg/filteredCallTreatment", HFILL }},
- { &hf_inap_sFBillingChargingCharacteristics,
- { "sFBillingChargingCharacteristics", "inap.sFBillingChargingCharacteristics",
- FT_BYTES, BASE_HEX, NULL, 0,
- "ActivateServiceFilteringarg/filteredCallTreatment/sFBillingChargingCharacteristics", HFILL }},
- { &hf_inap_informationToSend,
- { "informationToSend", "inap.informationToSend",
- FT_UINT32, BASE_DEC, VALS(inap_InformationToSend_vals), 0,
- "", HFILL }},
- { &hf_inap_maximumNumberOfCounters,
- { "maximumNumberOfCounters", "inap.maximumNumberOfCounters",
- FT_INT32, BASE_DEC, NULL, 0,
- "ActivateServiceFilteringarg/filteredCallTreatment/maximumNumberOfCounters", HFILL }},
+ "ActivateServiceFilteringArg/filteredCallTreatment", HFILL }},
{ &hf_inap_filteringCharacteristics,
{ "filteringCharacteristics", "inap.filteringCharacteristics",
- FT_UINT32, BASE_DEC, VALS(inap_T_filteringCharacteristics_vals), 0,
- "ActivateServiceFilteringarg/filteringCharacteristics", HFILL }},
- { &hf_inap_numberOfCalls,
- { "numberOfCalls", "inap.numberOfCalls",
- FT_UINT32, BASE_DEC, NULL, 0,
- "ActivateServiceFilteringarg/filteringCharacteristics/numberOfCalls", HFILL }},
+ FT_UINT32, BASE_DEC, VALS(inap_FilteringCharacteristics_vals), 0,
+ "ActivateServiceFilteringArg/filteringCharacteristics", HFILL }},
{ &hf_inap_filteringTimeOut,
{ "filteringTimeOut", "inap.filteringTimeOut",
- FT_UINT32, BASE_DEC, VALS(inap_T_filteringTimeOut_vals), 0,
- "ActivateServiceFilteringarg/filteringTimeOut", HFILL }},
- { &hf_inap_aduration,
- { "aduration", "inap.aduration",
- FT_UINT32, BASE_DEC, NULL, 0,
- "ActivateServiceFilteringarg/filteringTimeOut/aduration", HFILL }},
- { &hf_inap_stopTime,
- { "stopTime", "inap.stopTime",
- FT_BYTES, BASE_HEX, NULL, 0,
- "ActivateServiceFilteringarg/filteringTimeOut/stopTime", HFILL }},
+ FT_UINT32, BASE_DEC, VALS(inap_FilteringTimeOut_vals), 0,
+ "ActivateServiceFilteringArg/filteringTimeOut", HFILL }},
{ &hf_inap_filteringCriteria,
{ "filteringCriteria", "inap.filteringCriteria",
FT_UINT32, BASE_DEC, VALS(inap_FilteringCriteria_vals), 0,
@@ -4980,107 +5374,11 @@ void proto_register_inap(void) {
{ &hf_inap_startTime,
{ "startTime", "inap.startTime",
FT_BYTES, BASE_HEX, NULL, 0,
- "ActivateServiceFilteringarg/startTime", HFILL }},
+ "ActivateServiceFilteringArg/startTime", HFILL }},
{ &hf_inap_extensions,
{ "extensions", "inap.extensions",
FT_UINT32, BASE_DEC, NULL, 0,
"", HFILL }},
- { &hf_inap_messageType,
- { "messageType", "inap.messageType",
- FT_UINT32, BASE_DEC, VALS(inap_T_messageType_vals), 0,
- "MiscCallInfo/messageType", HFILL }},
- { &hf_inap_dpAssignment,
- { "dpAssignment", "inap.dpAssignment",
- FT_UINT32, BASE_DEC, VALS(inap_T_dpAssignment_vals), 0,
- "MiscCallInfo/dpAssignment", HFILL }},
- { &hf_inap_miscCallInfo,
- { "miscCallInfo", "inap.miscCallInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "", HFILL }},
- { &hf_inap_triggerType,
- { "triggerType", "inap.triggerType",
- FT_UINT32, BASE_DEC, VALS(inap_TriggerType_vals), 0,
- "", HFILL }},
- { &hf_inap_RouteList_item,
- { "Item", "inap.RouteList_item",
- FT_BYTES, BASE_HEX, NULL, 0,
- "RouteList/_item", HFILL }},
- { &hf_inap_bearerCap,
- { "bearerCap", "inap.bearerCap",
- FT_BYTES, BASE_HEX, NULL, 0,
- "BearerCapability/bearerCap", HFILL }},
- { &hf_inap_tmr,
- { "tmr", "inap.tmr",
- FT_BYTES, BASE_HEX, NULL, 0,
- "BearerCapability/tmr", HFILL }},
- { &hf_inap_serviceAddressInformation,
- { "serviceAddressInformation", "inap.serviceAddressInformation",
- FT_NONE, BASE_NONE, NULL, 0,
- "DpSpecificCommonParameters/serviceAddressInformation", HFILL }},
- { &hf_inap_bearerCapability,
- { "bearerCapability", "inap.bearerCapability",
- FT_UINT32, BASE_DEC, VALS(inap_BearerCapability_vals), 0,
- "", HFILL }},
- { &hf_inap_calledPartyNumber,
- { "calledPartyNumber", "inap.calledPartyNumber",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_callingPartyNumber,
- { "callingPartyNumber", "inap.callingPartyNumber",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_callingPartysCategory,
- { "callingPartysCategory", "inap.callingPartysCategory",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_iPSSPCapabilities,
- { "iPSSPCapabilities", "inap.iPSSPCapabilities",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_iPAvailable,
- { "iPAvailable", "inap.iPAvailable",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_iSDNAccessRelatedInformation,
- { "iSDNAccessRelatedInformation", "inap.iSDNAccessRelatedInformation",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_cGEncountered,
- { "cGEncountered", "inap.cGEncountered",
- FT_UINT32, BASE_DEC, VALS(inap_CGEncountered_vals), 0,
- "", HFILL }},
- { &hf_inap_serviceProfileIdentifier,
- { "serviceProfileIdentifier", "inap.serviceProfileIdentifier",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_terminalType,
- { "terminalType", "inap.terminalType",
- FT_UINT32, BASE_DEC, VALS(inap_TerminalType_vals), 0,
- "", HFILL }},
- { &hf_inap_chargeNumber,
- { "chargeNumber", "inap.chargeNumber",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_servingAreaID,
- { "servingAreaID", "inap.servingAreaID",
- FT_BYTES, BASE_HEX, NULL, 0,
- "DpSpecificCommonParameters/servingAreaID", HFILL }},
- { &hf_inap_trunkGroupID,
- { "trunkGroupID", "inap.trunkGroupID",
- FT_INT32, BASE_DEC, NULL, 0,
- "", HFILL }},
- { &hf_inap_privateFacilityID,
- { "privateFacilityID", "inap.privateFacilityID",
- FT_INT32, BASE_DEC, NULL, 0,
- "", HFILL }},
- { &hf_inap_huntGroup,
- { "huntGroup", "inap.huntGroup",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_routeIndex,
- { "routeIndex", "inap.routeIndex",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
{ &hf_inap_dpSpecificCommonParameters,
{ "dpSpecificCommonParameters", "inap.dpSpecificCommonParameters",
FT_NONE, BASE_NONE, NULL, 0,
@@ -5099,7 +5397,7 @@ void proto_register_inap(void) {
"", HFILL }},
{ &hf_inap_callingFacilityGroup,
{ "callingFacilityGroup", "inap.callingFacilityGroup",
- FT_UINT32, BASE_DEC, VALS(inap_CallingFacilityGroup_vals), 0,
+ FT_UINT32, BASE_DEC, VALS(inap_FacilityGroup_vals), 0,
"", HFILL }},
{ &hf_inap_callingFacilityGroupMember,
{ "callingFacilityGroupMember", "inap.callingFacilityGroupMember",
@@ -5145,130 +5443,78 @@ void proto_register_inap(void) {
{ "destinationRoutingAddress", "inap.destinationRoutingAddress",
FT_UINT32, BASE_DEC, NULL, 0,
"", HFILL }},
- { &hf_inap_destinationRoutingAddress_item,
- { "Item", "inap.destinationRoutingAddress_item",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
{ &hf_inap_alertingPattern,
{ "alertingPattern", "inap.alertingPattern",
FT_BYTES, BASE_HEX, NULL, 0,
"", HFILL }},
+ { &hf_inap_iSDNAccessRelatedInformation,
+ { "iSDNAccessRelatedInformation", "inap.iSDNAccessRelatedInformation",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_callingPartyNumber,
+ { "callingPartyNumber", "inap.callingPartyNumber",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_callingPartysCategory,
+ { "callingPartysCategory", "inap.callingPartysCategory",
+ FT_UINT16, BASE_DEC, VALS(isup_calling_partys_category_value), 0,
+ "", HFILL }},
+ { &hf_inap_calledPartyNumber,
+ { "calledPartyNumber", "inap.calledPartyNumber",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_chargeNumber,
+ { "chargeNumber", "inap.chargeNumber",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
{ &hf_inap_aChBillingChargingCharacteristics,
{ "aChBillingChargingCharacteristics", "inap.aChBillingChargingCharacteristics",
FT_BYTES, BASE_HEX, NULL, 0,
- "ApplyChargingarg/aChBillingChargingCharacteristics", HFILL }},
+ "ApplyChargingArg/aChBillingChargingCharacteristics", HFILL }},
{ &hf_inap_partyToCharge,
{ "partyToCharge", "inap.partyToCharge",
- FT_UINT32, BASE_DEC, VALS(inap_PartyToCharge_vals), 0,
+ FT_UINT32, BASE_DEC, VALS(inap_LegID_vals), 0,
"", HFILL }},
{ &hf_inap_correlationID,
{ "correlationID", "inap.correlationID",
FT_BYTES, BASE_HEX, NULL, 0,
"", HFILL }},
+ { &hf_inap_iPAvailable,
+ { "iPAvailable", "inap.iPAvailable",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_iPSSPCapabilities,
+ { "iPSSPCapabilities", "inap.iPSSPCapabilities",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
{ &hf_inap_gapCriteria,
{ "gapCriteria", "inap.gapCriteria",
- FT_UINT32, BASE_DEC, VALS(inap_T_gapCriteria_vals), 0,
- "CallGaparg/gapCriteria", HFILL }},
- { &hf_inap_gapOnService,
- { "gapOnService", "inap.gapOnService",
- FT_NONE, BASE_NONE, NULL, 0,
- "CallGaparg/gapCriteria/gapOnService", HFILL }},
- { &hf_inap_dpCriteria,
- { "dpCriteria", "inap.dpCriteria",
- FT_UINT32, BASE_DEC, VALS(inap_T_dpCriteria_vals), 0,
- "CallGaparg/gapCriteria/gapOnService/dpCriteria", HFILL }},
- { &hf_inap_calledAddressAndService,
- { "calledAddressAndService", "inap.calledAddressAndService",
- FT_NONE, BASE_NONE, NULL, 0,
- "CallGaparg/gapCriteria/calledAddressAndService", HFILL }},
- { &hf_inap_callingAddressAndService,
- { "callingAddressAndService", "inap.callingAddressAndService",
- FT_NONE, BASE_NONE, NULL, 0,
- "CallGaparg/gapCriteria/callingAddressAndService", HFILL }},
+ FT_UINT32, BASE_DEC, VALS(inap_GapCriteria_vals), 0,
+ "CallGapArg/gapCriteria", HFILL }},
{ &hf_inap_gapIndicators,
{ "gapIndicators", "inap.gapIndicators",
FT_NONE, BASE_NONE, NULL, 0,
- "CallGaparg/gapIndicators", HFILL }},
- { &hf_inap_cgduration,
- { "cgduration", "inap.cgduration",
- FT_UINT32, BASE_DEC, NULL, 0,
- "CallGaparg/gapIndicators/cgduration", HFILL }},
- { &hf_inap_gapInterval,
- { "gapInterval", "inap.gapInterval",
- FT_UINT32, BASE_DEC, NULL, 0,
- "CallGaparg/gapIndicators/gapInterval", HFILL }},
+ "CallGapArg/gapIndicators", HFILL }},
{ &hf_inap_controlType,
{ "controlType", "inap.controlType",
- FT_UINT32, BASE_DEC, VALS(inap_T_controlType_vals), 0,
- "CallGaparg/controlType", HFILL }},
+ FT_UINT32, BASE_DEC, VALS(inap_ControlType_vals), 0,
+ "CallGapArg/controlType", HFILL }},
{ &hf_inap_gapTreatment,
{ "gapTreatment", "inap.gapTreatment",
- FT_UINT32, BASE_DEC, VALS(inap_T_gapTreatment_vals), 0,
- "CallGaparg/gapTreatment", HFILL }},
- { &hf_inap_both,
- { "both", "inap.both",
- FT_NONE, BASE_NONE, NULL, 0,
- "", HFILL }},
- { &hf_inap_requestedInformationList,
- { "requestedInformationList", "inap.requestedInformationList",
- FT_UINT32, BASE_DEC, NULL, 0,
- "CallInformationReportarg/requestedInformationList", HFILL }},
- { &hf_inap_requestedInformationList_item,
- { "Item", "inap.requestedInformationList_item",
- FT_NONE, BASE_NONE, NULL, 0,
- "CallInformationReportarg/requestedInformationList/_item", HFILL }},
- { &hf_inap_requestedInformationType,
- { "requestedInformationType", "inap.requestedInformationType",
- FT_UINT32, BASE_DEC, VALS(inap_T_requestedInformationType_vals), 0,
- "CallInformationReportarg/requestedInformationList/_item/requestedInformationType", HFILL }},
- { &hf_inap_requestedInformationValue,
- { "requestedInformationValue", "inap.requestedInformationValue",
- FT_UINT32, BASE_DEC, VALS(inap_T_requestedInformationValue_vals), 0,
- "CallInformationReportarg/requestedInformationList/_item/requestedInformationValue", HFILL }},
- { &hf_inap_callAttemptElapsedTimeValue,
- { "callAttemptElapsedTimeValue", "inap.callAttemptElapsedTimeValue",
- FT_UINT32, BASE_DEC, NULL, 0,
- "CallInformationReportarg/requestedInformationList/_item/requestedInformationValue/callAttemptElapsedTimeValue", HFILL }},
- { &hf_inap_callStopTimeValue,
- { "callStopTimeValue", "inap.callStopTimeValue",
- FT_BYTES, BASE_HEX, NULL, 0,
- "CallInformationReportarg/requestedInformationList/_item/requestedInformationValue/callStopTimeValue", HFILL }},
- { &hf_inap_callConnectedElapsedTimeValue,
- { "callConnectedElapsedTimeValue", "inap.callConnectedElapsedTimeValue",
- FT_UINT32, BASE_DEC, NULL, 0,
- "CallInformationReportarg/requestedInformationList/_item/requestedInformationValue/callConnectedElapsedTimeValue", HFILL }},
- { &hf_inap_releaseCauseValue,
- { "releaseCauseValue", "inap.releaseCauseValue",
- FT_BYTES, BASE_HEX, NULL, 0,
- "CallInformationReportarg/requestedInformationList/_item/requestedInformationValue/releaseCauseValue", HFILL }},
+ FT_UINT32, BASE_DEC, VALS(inap_GapTreatment_vals), 0,
+ "CallGapArg/gapTreatment", HFILL }},
{ &hf_inap_requestedInformationTypeList,
{ "requestedInformationTypeList", "inap.requestedInformationTypeList",
FT_UINT32, BASE_DEC, NULL, 0,
- "CallInformationRequestarg/requestedInformationTypeList", HFILL }},
- { &hf_inap_requestedInformationTypeList_item,
- { "Item", "inap.requestedInformationTypeList_item",
- FT_UINT32, BASE_DEC, VALS(inap_T_requestedInformationTypeList_item_vals), 0,
- "CallInformationRequestarg/requestedInformationTypeList/_item", HFILL }},
+ "", HFILL }},
{ &hf_inap_invokeID,
{ "invokeID", "inap.invokeID",
- FT_UINT32, BASE_DEC, NULL, 0,
- "Cancelarg/invokeID", HFILL }},
+ FT_INT32, BASE_DEC, NULL, 0,
+ "CancelArg/invokeID", HFILL }},
{ &hf_inap_allRequests,
{ "allRequests", "inap.allRequests",
FT_NONE, BASE_NONE, NULL, 0,
- "Cancelarg/allRequests", HFILL }},
- { &hf_inap_lineID,
- { "lineID", "inap.lineID",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_facilityGroupID,
- { "facilityGroupID", "inap.facilityGroupID",
- FT_UINT32, BASE_DEC, VALS(inap_FacilityGroupID_vals), 0,
- "", HFILL }},
- { &hf_inap_facilityGroupMemberID,
- { "facilityGroupMemberID", "inap.facilityGroupMemberID",
- FT_INT32, BASE_DEC, NULL, 0,
- "", HFILL }},
+ "CancelArg/allRequests", HFILL }},
{ &hf_inap_resourceID,
{ "resourceID", "inap.resourceID",
FT_UINT32, BASE_DEC, VALS(inap_ResourceID_vals), 0,
@@ -5276,15 +5522,15 @@ void proto_register_inap(void) {
{ &hf_inap_numberingPlan,
{ "numberingPlan", "inap.numberingPlan",
FT_BYTES, BASE_HEX, NULL, 0,
- "CollectInformationarg/numberingPlan", HFILL }},
+ "CollectInformationArg/numberingPlan", HFILL }},
{ &hf_inap_cutAndPaste,
{ "cutAndPaste", "inap.cutAndPaste",
FT_UINT32, BASE_DEC, NULL, 0,
- "Connectarg/cutAndPaste", HFILL }},
+ "ConnectArg/cutAndPaste", HFILL }},
{ &hf_inap_forwardingCondition,
{ "forwardingCondition", "inap.forwardingCondition",
- FT_UINT32, BASE_DEC, VALS(inap_T_forwardingCondition_vals), 0,
- "Connectarg/forwardingCondition", HFILL }},
+ FT_UINT32, BASE_DEC, VALS(inap_ForwardingCondition_vals), 0,
+ "ConnectArg/forwardingCondition", HFILL }},
{ &hf_inap_scfID,
{ "scfID", "inap.scfID",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -5296,19 +5542,51 @@ void proto_register_inap(void) {
{ &hf_inap_resourceAddress,
{ "resourceAddress", "inap.resourceAddress",
FT_UINT32, BASE_DEC, VALS(inap_T_resourceAddress_vals), 0,
- "ConnectToResource/resourceAddress", HFILL }},
+ "ConnectToResourceArg/resourceAddress", HFILL }},
{ &hf_inap_ipRoutingAddress,
{ "ipRoutingAddress", "inap.ipRoutingAddress",
FT_BYTES, BASE_HEX, NULL, 0,
- "ConnectToResource/resourceAddress/ipRoutingAddress", HFILL }},
+ "", HFILL }},
+ { &hf_inap_both2,
+ { "both2", "inap.both2",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "ConnectToResourceArg/resourceAddress/both2", HFILL }},
{ &hf_inap_none,
{ "none", "inap.none",
FT_NONE, BASE_NONE, NULL, 0,
- "ConnectToResource/resourceAddress/none", HFILL }},
+ "ConnectToResourceArg/resourceAddress/none", HFILL }},
+ { &hf_inap_serviceAddressInformation,
+ { "serviceAddressInformation", "inap.serviceAddressInformation",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "DpSpecificCommonParameters/serviceAddressInformation", HFILL }},
+ { &hf_inap_bearerCapability,
+ { "bearerCapability", "inap.bearerCapability",
+ FT_UINT32, BASE_DEC, VALS(inap_BearerCapability_vals), 0,
+ "", HFILL }},
+ { &hf_inap_cGEncountered,
+ { "cGEncountered", "inap.cGEncountered",
+ FT_UINT32, BASE_DEC, VALS(inap_CGEncountered_vals), 0,
+ "", HFILL }},
+ { &hf_inap_locationNumber,
+ { "locationNumber", "inap.locationNumber",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_serviceProfileIdentifier,
+ { "serviceProfileIdentifier", "inap.serviceProfileIdentifier",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_terminalType,
+ { "terminalType", "inap.terminalType",
+ FT_UINT32, BASE_DEC, VALS(inap_TerminalType_vals), 0,
+ "", HFILL }},
+ { &hf_inap_servingAreaID,
+ { "servingAreaID", "inap.servingAreaID",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "DpSpecificCommonParameters/servingAreaID", HFILL }},
{ &hf_inap_assistingSSPIPRoutingAddress,
{ "assistingSSPIPRoutingAddress", "inap.assistingSSPIPRoutingAddress",
FT_BYTES, BASE_HEX, NULL, 0,
- "EstablishTemporaryConnection/assistingSSPIPRoutingAddress", HFILL }},
+ "EstablishTemporaryConnectionArg/assistingSSPIPRoutingAddress", HFILL }},
{ &hf_inap_eventTypeCharging,
{ "eventTypeCharging", "inap.eventTypeCharging",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -5316,7 +5594,7 @@ void proto_register_inap(void) {
{ &hf_inap_eventSpecificInformationCharging,
{ "eventSpecificInformationCharging", "inap.eventSpecificInformationCharging",
FT_BYTES, BASE_HEX, NULL, 0,
- "EventNotificationChargingarg/eventSpecificInformationCharging", HFILL }},
+ "EventNotificationChargingArg/eventSpecificInformationCharging", HFILL }},
{ &hf_inap_monitorMode,
{ "monitorMode", "inap.monitorMode",
FT_UINT32, BASE_DEC, VALS(inap_MonitorMode_vals), 0,
@@ -5331,84 +5609,28 @@ void proto_register_inap(void) {
"", HFILL }},
{ &hf_inap_eventSpecificInformationBCSM,
{ "eventSpecificInformationBCSM", "inap.eventSpecificInformationBCSM",
- FT_UINT32, BASE_DEC, VALS(inap_T_eventSpecificInformationBCSM_vals), 0,
- "EventReportBCSM/eventSpecificInformationBCSM", HFILL }},
- { &hf_inap_collectedInfoSpecificInfo,
- { "collectedInfoSpecificInfo", "inap.collectedInfoSpecificInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/collectedInfoSpecificInfo", HFILL }},
- { &hf_inap_calledPartynumber,
- { "calledPartynumber", "inap.calledPartynumber",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_analyzedInfoSpecificInfo,
- { "analyzedInfoSpecificInfo", "inap.analyzedInfoSpecificInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/analyzedInfoSpecificInfo", HFILL }},
- { &hf_inap_routeSelectFailureSpecificInfo,
- { "routeSelectFailureSpecificInfo", "inap.routeSelectFailureSpecificInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/routeSelectFailureSpecificInfo", HFILL }},
- { &hf_inap_failureCause,
- { "failureCause", "inap.failureCause",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_oCalledPartyBusySpecificInfo,
- { "oCalledPartyBusySpecificInfo", "inap.oCalledPartyBusySpecificInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/oCalledPartyBusySpecificInfo", HFILL }},
- { &hf_inap_busyCause,
- { "busyCause", "inap.busyCause",
- FT_BYTES, BASE_HEX, NULL, 0,
- "", HFILL }},
- { &hf_inap_oNoAnswerSpecificInfo,
- { "oNoAnswerSpecificInfo", "inap.oNoAnswerSpecificInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/oNoAnswerSpecificInfo", HFILL }},
- { &hf_inap_oAnswerSpecificInfo,
- { "oAnswerSpecificInfo", "inap.oAnswerSpecificInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/oAnswerSpecificInfo", HFILL }},
- { &hf_inap_oMidCallSpecificInfo,
- { "oMidCallSpecificInfo", "inap.oMidCallSpecificInfo",
+ FT_UINT32, BASE_DEC, VALS(inap_EventSpecificInformationBCSM_vals), 0,
+ "EventReportBCSMArg/eventSpecificInformationBCSM", HFILL }},
+ { &hf_inap_miscCallInfo,
+ { "miscCallInfo", "inap.miscCallInfo",
FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/oMidCallSpecificInfo", HFILL }},
- { &hf_inap_connectTime,
- { "connectTime", "inap.connectTime",
- FT_UINT32, BASE_DEC, NULL, 0,
"", HFILL }},
- { &hf_inap_oDisconnectSpecificInfo,
- { "oDisconnectSpecificInfo", "inap.oDisconnectSpecificInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/oDisconnectSpecificInfo", HFILL }},
- { &hf_inap_tBusySpecificInfo,
- { "tBusySpecificInfo", "inap.tBusySpecificInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/tBusySpecificInfo", HFILL }},
- { &hf_inap_tNoAnswerSpecificInfo,
- { "tNoAnswerSpecificInfo", "inap.tNoAnswerSpecificInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/tNoAnswerSpecificInfo", HFILL }},
- { &hf_inap_tAnswerSpecificInfo,
- { "tAnswerSpecificInfo", "inap.tAnswerSpecificInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/tAnswerSpecificInfo", HFILL }},
- { &hf_inap_tMidCallSpecificInfo,
- { "tMidCallSpecificInfo", "inap.tMidCallSpecificInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/tMidCallSpecificInfo", HFILL }},
- { &hf_inap_tDisconnectSpecificInfo,
- { "tDisconnectSpecificInfo", "inap.tDisconnectSpecificInfo",
- FT_NONE, BASE_NONE, NULL, 0,
- "EventReportBCSM/eventSpecificInformationBCSM/tDisconnectSpecificInfo", HFILL }},
{ &hf_inap_holdcause,
{ "holdcause", "inap.holdcause",
FT_BYTES, BASE_HEX, NULL, 0,
- "HoldCallInNetworkarg/holdcause", HFILL }},
+ "HoldCallInNetworkArg/holdcause", HFILL }},
{ &hf_inap_empty,
{ "empty", "inap.empty",
FT_NONE, BASE_NONE, NULL, 0,
- "HoldCallInNetworkarg/empty", HFILL }},
+ "HoldCallInNetworkArg/empty", HFILL }},
+ { &hf_inap_serviceKey,
+ { "serviceKey", "inap.serviceKey",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_triggerType,
+ { "triggerType", "inap.triggerType",
+ FT_UINT32, BASE_DEC, VALS(inap_TriggerType_vals), 0,
+ "", HFILL }},
{ &hf_inap_highLayerCompatibility,
{ "highLayerCompatibility", "inap.highLayerCompatibility",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -5432,6 +5654,18 @@ void proto_register_inap(void) {
{ &hf_inap_featureRequestIndicator,
{ "featureRequestIndicator", "inap.featureRequestIndicator",
FT_UINT32, BASE_DEC, VALS(inap_FeatureRequestIndicator_vals), 0,
+ "MidCallArg/featureRequestIndicator", HFILL }},
+ { &hf_inap_busyCause,
+ { "busyCause", "inap.busyCause",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_connectTime,
+ { "connectTime", "inap.connectTime",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_informationToSend,
+ { "informationToSend", "inap.informationToSend",
+ FT_UINT32, BASE_DEC, VALS(inap_InformationToSend_vals), 0,
"", HFILL }},
{ &hf_inap_disconnectFromIPForbidden,
{ "disconnectFromIPForbidden", "inap.disconnectFromIPForbidden",
@@ -5440,71 +5674,19 @@ void proto_register_inap(void) {
{ &hf_inap_requestAnnouncementComplete,
{ "requestAnnouncementComplete", "inap.requestAnnouncementComplete",
FT_BOOLEAN, 8, NULL, 0,
- "PlayAnnouncement/requestAnnouncementComplete", HFILL }},
+ "PlayAnnouncementArg/requestAnnouncementComplete", HFILL }},
{ &hf_inap_collectedInfo,
{ "collectedInfo", "inap.collectedInfo",
- FT_UINT32, BASE_DEC, VALS(inap_T_collectedInfo_vals), 0,
- "PromptAndCollectUserInformationarg/collectedInfo", HFILL }},
- { &hf_inap_collectedDigits,
- { "collectedDigits", "inap.collectedDigits",
- FT_NONE, BASE_NONE, NULL, 0,
- "PromptAndCollectUserInformationarg/collectedInfo/collectedDigits", HFILL }},
- { &hf_inap_minimumNbOfDigits,
- { "minimumNbOfDigits", "inap.minimumNbOfDigits",
- FT_UINT32, BASE_DEC, NULL, 0,
- "PromptAndCollectUserInformationarg/collectedInfo/collectedDigits/minimumNbOfDigits", HFILL }},
- { &hf_inap_maximumNbOfDigits,
- { "maximumNbOfDigits", "inap.maximumNbOfDigits",
- FT_UINT32, BASE_DEC, NULL, 0,
- "PromptAndCollectUserInformationarg/collectedInfo/collectedDigits/maximumNbOfDigits", HFILL }},
- { &hf_inap_endOfReplyDigit,
- { "endOfReplyDigit", "inap.endOfReplyDigit",
- FT_BYTES, BASE_HEX, NULL, 0,
- "PromptAndCollectUserInformationarg/collectedInfo/collectedDigits/endOfReplyDigit", HFILL }},
- { &hf_inap_cancelDigit,
- { "cancelDigit", "inap.cancelDigit",
- FT_BYTES, BASE_HEX, NULL, 0,
- "PromptAndCollectUserInformationarg/collectedInfo/collectedDigits/cancelDigit", HFILL }},
- { &hf_inap_startDigit,
- { "startDigit", "inap.startDigit",
- FT_BYTES, BASE_HEX, NULL, 0,
- "PromptAndCollectUserInformationarg/collectedInfo/collectedDigits/startDigit", HFILL }},
- { &hf_inap_firstDigitTimeOut,
- { "firstDigitTimeOut", "inap.firstDigitTimeOut",
- FT_UINT32, BASE_DEC, NULL, 0,
- "PromptAndCollectUserInformationarg/collectedInfo/collectedDigits/firstDigitTimeOut", HFILL }},
- { &hf_inap_interDigitTimeOut,
- { "interDigitTimeOut", "inap.interDigitTimeOut",
- FT_UINT32, BASE_DEC, NULL, 0,
- "PromptAndCollectUserInformationarg/collectedInfo/collectedDigits/interDigitTimeOut", HFILL }},
- { &hf_inap_errorTreatment,
- { "errorTreatment", "inap.errorTreatment",
- FT_UINT32, BASE_DEC, VALS(inap_T_errorTreatment_vals), 0,
- "PromptAndCollectUserInformationarg/collectedInfo/collectedDigits/errorTreatment", HFILL }},
- { &hf_inap_interruptableAnnInd,
- { "interruptableAnnInd", "inap.interruptableAnnInd",
- FT_BOOLEAN, 8, NULL, 0,
- "PromptAndCollectUserInformationarg/collectedInfo/collectedDigits/interruptableAnnInd", HFILL }},
- { &hf_inap_voiceInformation,
- { "voiceInformation", "inap.voiceInformation",
- FT_BOOLEAN, 8, NULL, 0,
- "PromptAndCollectUserInformationarg/collectedInfo/collectedDigits/voiceInformation", HFILL }},
- { &hf_inap_voiceBack,
- { "voiceBack", "inap.voiceBack",
- FT_BOOLEAN, 8, NULL, 0,
- "PromptAndCollectUserInformationarg/collectedInfo/collectedDigits/voiceBack", HFILL }},
- { &hf_inap_iA5Information,
- { "iA5Information", "inap.iA5Information",
- FT_BOOLEAN, 8, NULL, 0,
- "PromptAndCollectUserInformationarg/collectedInfo/iA5Information", HFILL }},
+ FT_UINT32, BASE_DEC, VALS(inap_CollectedInfo_vals), 0,
+ "PromptAndCollectUserInformationArg/collectedInfo", HFILL }},
{ &hf_inap_digitsResponse,
{ "digitsResponse", "inap.digitsResponse",
FT_BYTES, BASE_HEX, NULL, 0,
- "PromptAndCollectUserInformationres/digitsResponse", HFILL }},
+ "ReceivedInformationArg/digitsResponse", HFILL }},
{ &hf_inap_iA5Response,
{ "iA5Response", "inap.iA5Response",
FT_STRING, BASE_NONE, NULL, 0,
- "PromptAndCollectUserInformationres/iA5Response", HFILL }},
+ "ReceivedInformationArg/iA5Response", HFILL }},
{ &hf_inap_initialCallSegment,
{ "initialCallSegment", "inap.initialCallSegment",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -5519,47 +5701,43 @@ void proto_register_inap(void) {
"", HFILL }},
{ &hf_inap_monitorDuration,
{ "monitorDuration", "inap.monitorDuration",
- FT_UINT32, BASE_DEC, NULL, 0,
+ FT_INT32, BASE_DEC, NULL, 0,
"", HFILL }},
{ &hf_inap_RequestNotificationChargingEvent_item,
{ "Item", "inap.RequestNotificationChargingEvent_item",
FT_NONE, BASE_NONE, NULL, 0,
"RequestNotificationChargingEvent/_item", HFILL }},
+ { &hf_inap_eventTypeCharging2,
+ { "eventTypeCharging2", "inap.eventTypeCharging2",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "RequestNotificationChargingEvent/_item/eventTypeCharging2", HFILL }},
{ &hf_inap_bcsmEvents,
{ "bcsmEvents", "inap.bcsmEvents",
FT_UINT32, BASE_DEC, NULL, 0,
- "RequestReportBCSMEvent/bcsmEvents", HFILL }},
+ "RequestReportBCSMEventArg/bcsmEvents", HFILL }},
{ &hf_inap_bcsmEvents_item,
{ "Item", "inap.bcsmEvents_item",
FT_NONE, BASE_NONE, NULL, 0,
- "RequestReportBCSMEvent/bcsmEvents/_item", HFILL }},
- { &hf_inap_dpSpecificCriteria,
- { "dpSpecificCriteria", "inap.dpSpecificCriteria",
- FT_UINT32, BASE_DEC, VALS(inap_T_dpSpecificCriteria_vals), 0,
- "RequestReportBCSMEvent/bcsmEvents/_item/dpSpecificCriteria", HFILL }},
- { &hf_inap_numberOfDigits,
- { "numberOfDigits", "inap.numberOfDigits",
- FT_UINT32, BASE_DEC, NULL, 0,
- "RequestReportBCSMEvent/bcsmEvents/_item/dpSpecificCriteria/numberOfDigits", HFILL }},
- { &hf_inap_applicationTimer,
- { "applicationTimer", "inap.applicationTimer",
- FT_UINT32, BASE_DEC, NULL, 0,
- "RequestReportBCSMEvent/bcsmEvents/_item/dpSpecificCriteria/applicationTimer", HFILL }},
+ "RequestReportBCSMEventArg/bcsmEvents/_item", HFILL }},
{ &hf_inap_timerID,
{ "timerID", "inap.timerID",
- FT_UINT32, BASE_DEC, VALS(inap_T_timerID_vals), 0,
- "ResetTimer/timerID", HFILL }},
+ FT_UINT32, BASE_DEC, VALS(inap_TimerID_vals), 0,
+ "ResetTimerArg/timerID", HFILL }},
{ &hf_inap_timervalue,
{ "timervalue", "inap.timervalue",
FT_UINT32, BASE_DEC, NULL, 0,
- "ResetTimer/timervalue", HFILL }},
+ "ResetTimerArg/timervalue", HFILL }},
+ { &hf_inap_failureCause,
+ { "failureCause", "inap.failureCause",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
{ &hf_inap_destinationNumberRoutingAddress,
{ "destinationNumberRoutingAddress", "inap.destinationNumberRoutingAddress",
FT_BYTES, BASE_HEX, NULL, 0,
- "SelectFacility/destinationNumberRoutingAddress", HFILL }},
+ "SelectFacilityArg/destinationNumberRoutingAddress", HFILL }},
{ &hf_inap_calledFacilityGroup,
{ "calledFacilityGroup", "inap.calledFacilityGroup",
- FT_UINT32, BASE_DEC, VALS(inap_CalledFacilityGroup_vals), 0,
+ FT_UINT32, BASE_DEC, VALS(inap_FacilityGroup_vals), 0,
"", HFILL }},
{ &hf_inap_calledFacilityGroupMember,
{ "calledFacilityGroupMember", "inap.calledFacilityGroupMember",
@@ -5568,38 +5746,410 @@ void proto_register_inap(void) {
{ &hf_inap_sCIBillingChargingCharacteristics,
{ "sCIBillingChargingCharacteristics", "inap.sCIBillingChargingCharacteristics",
FT_BYTES, BASE_HEX, NULL, 0,
- "SendChargingInformation/sCIBillingChargingCharacteristics", HFILL }},
+ "SendChargingInformationArg/sCIBillingChargingCharacteristics", HFILL }},
{ &hf_inap_countersValue,
{ "countersValue", "inap.countersValue",
FT_UINT32, BASE_DEC, NULL, 0,
- "ServiceFilteringResponse/countersValue", HFILL }},
- { &hf_inap_countersValue_item,
- { "Item", "inap.countersValue_item",
+ "ServiceFilteringResponseArg/countersValue", HFILL }},
+ { &hf_inap_responseCondition,
+ { "responseCondition", "inap.responseCondition",
+ FT_UINT32, BASE_DEC, VALS(inap_ResponseCondition_vals), 0,
+ "ServiceFilteringResponseArg/responseCondition", HFILL }},
+ { &hf_inap_reportCondition,
+ { "reportCondition", "inap.reportCondition",
+ FT_UINT32, BASE_DEC, VALS(inap_ReportCondition_vals), 0,
+ "StatusReportArg/reportCondition", HFILL }},
+ { &hf_inap_dpSpecificCriteria,
+ { "dpSpecificCriteria", "inap.dpSpecificCriteria",
+ FT_UINT32, BASE_DEC, VALS(inap_DpSpecificCriteria_vals), 0,
+ "BCSMEvent/dpSpecificCriteria", HFILL }},
+ { &hf_inap_bearerCap,
+ { "bearerCap", "inap.bearerCap",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "BearerCapability/bearerCap", HFILL }},
+ { &hf_inap_tmr,
+ { "tmr", "inap.tmr",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "BearerCapability/tmr", HFILL }},
+ { &hf_inap_minimumNbOfDigits,
+ { "minimumNbOfDigits", "inap.minimumNbOfDigits",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "CollectedDigits/minimumNbOfDigits", HFILL }},
+ { &hf_inap_maximumNbOfDigits,
+ { "maximumNbOfDigits", "inap.maximumNbOfDigits",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "CollectedDigits/maximumNbOfDigits", HFILL }},
+ { &hf_inap_endOfReplyDigit,
+ { "endOfReplyDigit", "inap.endOfReplyDigit",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "CollectedDigits/endOfReplyDigit", HFILL }},
+ { &hf_inap_cancelDigit,
+ { "cancelDigit", "inap.cancelDigit",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "CollectedDigits/cancelDigit", HFILL }},
+ { &hf_inap_startDigit,
+ { "startDigit", "inap.startDigit",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "CollectedDigits/startDigit", HFILL }},
+ { &hf_inap_firstDigitTimeOut,
+ { "firstDigitTimeOut", "inap.firstDigitTimeOut",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "CollectedDigits/firstDigitTimeOut", HFILL }},
+ { &hf_inap_interDigitTimeOut,
+ { "interDigitTimeOut", "inap.interDigitTimeOut",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "CollectedDigits/interDigitTimeOut", HFILL }},
+ { &hf_inap_errorTreatment,
+ { "errorTreatment", "inap.errorTreatment",
+ FT_UINT32, BASE_DEC, VALS(inap_ErrorTreatment_vals), 0,
+ "CollectedDigits/errorTreatment", HFILL }},
+ { &hf_inap_interruptableAnnInd,
+ { "interruptableAnnInd", "inap.interruptableAnnInd",
+ FT_BOOLEAN, 8, NULL, 0,
+ "CollectedDigits/interruptableAnnInd", HFILL }},
+ { &hf_inap_voiceInformation,
+ { "voiceInformation", "inap.voiceInformation",
+ FT_BOOLEAN, 8, NULL, 0,
+ "CollectedDigits/voiceInformation", HFILL }},
+ { &hf_inap_voiceBack,
+ { "voiceBack", "inap.voiceBack",
+ FT_BOOLEAN, 8, NULL, 0,
+ "CollectedDigits/voiceBack", HFILL }},
+ { &hf_inap_collectedDigits,
+ { "collectedDigits", "inap.collectedDigits",
FT_NONE, BASE_NONE, NULL, 0,
- "ServiceFilteringResponse/countersValue/_item", HFILL }},
+ "CollectedInfo/collectedDigits", HFILL }},
+ { &hf_inap_iA5Information,
+ { "iA5Information", "inap.iA5Information",
+ FT_BOOLEAN, 8, NULL, 0,
+ "CollectedInfo/iA5Information", HFILL }},
{ &hf_inap_counterID,
{ "counterID", "inap.counterID",
FT_UINT32, BASE_DEC, NULL, 0,
- "ServiceFilteringResponse/countersValue/_item/counterID", HFILL }},
+ "CounterAndValue/counterID", HFILL }},
{ &hf_inap_counterValue,
{ "counterValue", "inap.counterValue",
FT_UINT32, BASE_DEC, NULL, 0,
- "ServiceFilteringResponse/countersValue/_item/counterValue", HFILL }},
- { &hf_inap_responseCondition,
- { "responseCondition", "inap.responseCondition",
- FT_UINT32, BASE_DEC, VALS(inap_T_responseCondition_vals), 0,
- "ServiceFilteringResponse/responseCondition", HFILL }},
- { &hf_inap_reportCondition,
- { "reportCondition", "inap.reportCondition",
- FT_UINT32, BASE_DEC, VALS(inap_T_reportCondition_vals), 0,
- "StatusReport/reportCondition", HFILL }},
+ "CounterAndValue/counterValue", HFILL }},
+ { &hf_inap_CountersValue_item,
+ { "Item", "inap.CountersValue_item",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "CountersValue/_item", HFILL }},
+ { &hf_inap_DestinationRoutingAddress_item,
+ { "Item", "inap.DestinationRoutingAddress_item",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "DestinationRoutingAddress/_item", HFILL }},
+ { &hf_inap_numberOfDigits,
+ { "numberOfDigits", "inap.numberOfDigits",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "DpSpecificCriteria/numberOfDigits", HFILL }},
+ { &hf_inap_applicationTimer,
+ { "applicationTimer", "inap.applicationTimer",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "DpSpecificCriteria/applicationTimer", HFILL }},
+ { &hf_inap_collectedInfoSpecificInfo,
+ { "collectedInfoSpecificInfo", "inap.collectedInfoSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/collectedInfoSpecificInfo", HFILL }},
+ { &hf_inap_calledPartynumber,
+ { "calledPartynumber", "inap.calledPartynumber",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_analyzedInfoSpecificInfo,
+ { "analyzedInfoSpecificInfo", "inap.analyzedInfoSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/analyzedInfoSpecificInfo", HFILL }},
+ { &hf_inap_routeSelectFailureSpecificInfo,
+ { "routeSelectFailureSpecificInfo", "inap.routeSelectFailureSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/routeSelectFailureSpecificInfo", HFILL }},
+ { &hf_inap_oCalledPartyBusySpecificInfo,
+ { "oCalledPartyBusySpecificInfo", "inap.oCalledPartyBusySpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/oCalledPartyBusySpecificInfo", HFILL }},
+ { &hf_inap_oNoAnswerSpecificInfo,
+ { "oNoAnswerSpecificInfo", "inap.oNoAnswerSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/oNoAnswerSpecificInfo", HFILL }},
+ { &hf_inap_oAnswerSpecificInfo,
+ { "oAnswerSpecificInfo", "inap.oAnswerSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/oAnswerSpecificInfo", HFILL }},
+ { &hf_inap_oMidCallSpecificInfo,
+ { "oMidCallSpecificInfo", "inap.oMidCallSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/oMidCallSpecificInfo", HFILL }},
+ { &hf_inap_oDisconnectSpecificInfo,
+ { "oDisconnectSpecificInfo", "inap.oDisconnectSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/oDisconnectSpecificInfo", HFILL }},
+ { &hf_inap_tBusySpecificInfo,
+ { "tBusySpecificInfo", "inap.tBusySpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/tBusySpecificInfo", HFILL }},
+ { &hf_inap_tNoAnswerSpecificInfo,
+ { "tNoAnswerSpecificInfo", "inap.tNoAnswerSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/tNoAnswerSpecificInfo", HFILL }},
+ { &hf_inap_tAnswerSpecificInfo,
+ { "tAnswerSpecificInfo", "inap.tAnswerSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/tAnswerSpecificInfo", HFILL }},
+ { &hf_inap_tMidCallSpecificInfo,
+ { "tMidCallSpecificInfo", "inap.tMidCallSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/tMidCallSpecificInfo", HFILL }},
+ { &hf_inap_tDisconnectSpecificInfo,
+ { "tDisconnectSpecificInfo", "inap.tDisconnectSpecificInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EventSpecificInformationBCSM/tDisconnectSpecificInfo", HFILL }},
+ { &hf_inap_trunkGroupID,
+ { "trunkGroupID", "inap.trunkGroupID",
+ FT_INT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_privateFacilityID,
+ { "privateFacilityID", "inap.privateFacilityID",
+ FT_INT32, BASE_DEC, NULL, 0,
+ "FacilityGroup/privateFacilityID", HFILL }},
+ { &hf_inap_huntGroup,
+ { "huntGroup", "inap.huntGroup",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "FacilityGroup/huntGroup", HFILL }},
+ { &hf_inap_routeIndex,
+ { "routeIndex", "inap.routeIndex",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "FacilityGroup/routeIndex", HFILL }},
+ { &hf_inap_sFBillingChargingCharacteristics,
+ { "sFBillingChargingCharacteristics", "inap.sFBillingChargingCharacteristics",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "FilteredCallTreatment/sFBillingChargingCharacteristics", HFILL }},
+ { &hf_inap_maximumNumberOfCounters,
+ { "maximumNumberOfCounters", "inap.maximumNumberOfCounters",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "FilteredCallTreatment/maximumNumberOfCounters", HFILL }},
+ { &hf_inap_interval1,
+ { "interval1", "inap.interval1",
+ FT_INT32, BASE_DEC, NULL, 0,
+ "FilteringCharacteristics/interval1", HFILL }},
+ { &hf_inap_numberOfCalls,
+ { "numberOfCalls", "inap.numberOfCalls",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "FilteringCharacteristics/numberOfCalls", HFILL }},
+ { &hf_inap_dialledNumber,
+ { "dialledNumber", "inap.dialledNumber",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "FilteringCriteria/dialledNumber", HFILL }},
+ { &hf_inap_callingLineID,
+ { "callingLineID", "inap.callingLineID",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "FilteringCriteria/callingLineID", HFILL }},
+ { &hf_inap_addressAndService,
+ { "addressAndService", "inap.addressAndService",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "FilteringCriteria/addressAndService", HFILL }},
+ { &hf_inap_calledAddressValue,
+ { "calledAddressValue", "inap.calledAddressValue",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_callingAddressValue,
+ { "callingAddressValue", "inap.callingAddressValue",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_duration,
+ { "duration", "inap.duration",
+ FT_INT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_stopTime,
+ { "stopTime", "inap.stopTime",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "FilteringTimeOut/stopTime", HFILL }},
+ { &hf_inap_gapOnService,
+ { "gapOnService", "inap.gapOnService",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "GapCriteria/gapOnService", HFILL }},
+ { &hf_inap_calledAddressAndService,
+ { "calledAddressAndService", "inap.calledAddressAndService",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "GapCriteria/calledAddressAndService", HFILL }},
+ { &hf_inap_callingAddressAndService,
+ { "callingAddressAndService", "inap.callingAddressAndService",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "GapCriteria/callingAddressAndService", HFILL }},
+ { &hf_inap_dpCriteria,
+ { "dpCriteria", "inap.dpCriteria",
+ FT_UINT32, BASE_DEC, VALS(inap_EventTypeBCSM_vals), 0,
+ "GapOnService/dpCriteria", HFILL }},
+ { &hf_inap_gapInterval,
+ { "gapInterval", "inap.gapInterval",
+ FT_INT32, BASE_DEC, NULL, 0,
+ "GapIndicators/gapInterval", HFILL }},
+ { &hf_inap_both,
+ { "both", "inap.both",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "GapTreatment/both", HFILL }},
+ { &hf_inap_messageID,
+ { "messageID", "inap.messageID",
+ FT_UINT32, BASE_DEC, VALS(inap_MessageID_vals), 0,
+ "InbandInfo/messageID", HFILL }},
+ { &hf_inap_numberOfRepetitions,
+ { "numberOfRepetitions", "inap.numberOfRepetitions",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "InbandInfo/numberOfRepetitions", HFILL }},
+ { &hf_inap_duration3,
+ { "duration3", "inap.duration3",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "InbandInfo/duration3", HFILL }},
+ { &hf_inap_interval,
+ { "interval", "inap.interval",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "InbandInfo/interval", HFILL }},
+ { &hf_inap_inbandInfo,
+ { "inbandInfo", "inap.inbandInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "InformationToSend/inbandInfo", HFILL }},
+ { &hf_inap_tone,
+ { "tone", "inap.tone",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "InformationToSend/tone", HFILL }},
+ { &hf_inap_displayInformation,
+ { "displayInformation", "inap.displayInformation",
+ FT_STRING, BASE_NONE, NULL, 0,
+ "InformationToSend/displayInformation", HFILL }},
+ { &hf_inap_sendingSideID,
+ { "sendingSideID", "inap.sendingSideID",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "LegID/sendingSideID", HFILL }},
+ { &hf_inap_receivingSideID,
+ { "receivingSideID", "inap.receivingSideID",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "LegID/receivingSideID", HFILL }},
+ { &hf_inap_elementaryMessageID,
+ { "elementaryMessageID", "inap.elementaryMessageID",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
+ { &hf_inap_text,
+ { "text", "inap.text",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MessageID/text", HFILL }},
+ { &hf_inap_messageContent,
+ { "messageContent", "inap.messageContent",
+ FT_STRING, BASE_NONE, NULL, 0,
+ "MessageID/text/messageContent", HFILL }},
+ { &hf_inap_attributes,
+ { "attributes", "inap.attributes",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "MessageID/text/attributes", HFILL }},
+ { &hf_inap_elementaryMessageIDs,
+ { "elementaryMessageIDs", "inap.elementaryMessageIDs",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "MessageID/elementaryMessageIDs", HFILL }},
+ { &hf_inap_elementaryMessageIDs_item,
+ { "Item", "inap.elementaryMessageIDs_item",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "MessageID/elementaryMessageIDs/_item", HFILL }},
+ { &hf_inap_variableMessage,
+ { "variableMessage", "inap.variableMessage",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MessageID/variableMessage", HFILL }},
+ { &hf_inap_variableParts,
+ { "variableParts", "inap.variableParts",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "MessageID/variableMessage/variableParts", HFILL }},
+ { &hf_inap_variableParts_item,
+ { "Item", "inap.variableParts_item",
+ FT_UINT32, BASE_DEC, VALS(inap_VariablePart_vals), 0,
+ "MessageID/variableMessage/variableParts/_item", HFILL }},
+ { &hf_inap_messageType,
+ { "messageType", "inap.messageType",
+ FT_UINT32, BASE_DEC, VALS(inap_T_messageType_vals), 0,
+ "MiscCallInfo/messageType", HFILL }},
+ { &hf_inap_dpAssignment,
+ { "dpAssignment", "inap.dpAssignment",
+ FT_UINT32, BASE_DEC, VALS(inap_T_dpAssignment_vals), 0,
+ "MiscCallInfo/dpAssignment", HFILL }},
+ { &hf_inap_RequestedInformationList_item,
+ { "Item", "inap.RequestedInformationList_item",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "RequestedInformationList/_item", HFILL }},
+ { &hf_inap_RequestedInformationTypeList_item,
+ { "Item", "inap.RequestedInformationTypeList_item",
+ FT_UINT32, BASE_DEC, VALS(inap_RequestedInformationType_vals), 0,
+ "RequestedInformationTypeList/_item", HFILL }},
+ { &hf_inap_requestedInformationType,
+ { "requestedInformationType", "inap.requestedInformationType",
+ FT_UINT32, BASE_DEC, VALS(inap_RequestedInformationType_vals), 0,
+ "RequestedInformation/requestedInformationType", HFILL }},
+ { &hf_inap_requestedInformationValue,
+ { "requestedInformationValue", "inap.requestedInformationValue",
+ FT_UINT32, BASE_DEC, VALS(inap_RequestedInformationValue_vals), 0,
+ "RequestedInformation/requestedInformationValue", HFILL }},
+ { &hf_inap_callAttemptElapsedTimeValue,
+ { "callAttemptElapsedTimeValue", "inap.callAttemptElapsedTimeValue",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "RequestedInformationValue/callAttemptElapsedTimeValue", HFILL }},
+ { &hf_inap_callStopTimeValue,
+ { "callStopTimeValue", "inap.callStopTimeValue",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "RequestedInformationValue/callStopTimeValue", HFILL }},
+ { &hf_inap_callConnectedElapsedTimeValue,
+ { "callConnectedElapsedTimeValue", "inap.callConnectedElapsedTimeValue",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "RequestedInformationValue/callConnectedElapsedTimeValue", HFILL }},
+ { &hf_inap_releaseCauseValue,
+ { "releaseCauseValue", "inap.releaseCauseValue",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "RequestedInformationValue/releaseCauseValue", HFILL }},
+ { &hf_inap_lineID,
+ { "lineID", "inap.lineID",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "ResourceID/lineID", HFILL }},
+ { &hf_inap_facilityGroupID,
+ { "facilityGroupID", "inap.facilityGroupID",
+ FT_UINT32, BASE_DEC, VALS(inap_FacilityGroup_vals), 0,
+ "ResourceID/facilityGroupID", HFILL }},
+ { &hf_inap_facilityGroupMemberID,
+ { "facilityGroupMemberID", "inap.facilityGroupMemberID",
+ FT_INT32, BASE_DEC, NULL, 0,
+ "ResourceID/facilityGroupMemberID", HFILL }},
+ { &hf_inap_RouteList_item,
+ { "Item", "inap.RouteList_item",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "RouteList/_item", HFILL }},
+ { &hf_inap_toneID,
+ { "toneID", "inap.toneID",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "Tone/toneID", HFILL }},
+ { &hf_inap_tone_duration,
+ { "tone-duration", "inap.tone_duration",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "Tone/tone-duration", HFILL }},
+ { &hf_inap_integer,
+ { "integer", "inap.integer",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "VariablePart/integer", HFILL }},
+ { &hf_inap_number,
+ { "number", "inap.number",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "VariablePart/number", HFILL }},
+ { &hf_inap_time,
+ { "time", "inap.time",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "VariablePart/time", HFILL }},
+ { &hf_inap_date2,
+ { "date2", "inap.date2",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "VariablePart/date2", HFILL }},
+ { &hf_inap_price,
+ { "price", "inap.price",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "VariablePart/price", HFILL }},
{ &hf_inap_problem,
{ "problem", "inap.problem",
FT_UINT32, BASE_DEC, VALS(inap_T_problem_vals), 0,
"CancelFailed/problem", HFILL }},
{ &hf_inap_operation,
{ "operation", "inap.operation",
- FT_UINT32, BASE_DEC, NULL, 0,
+ FT_INT32, BASE_DEC, NULL, 0,
"CancelFailed/operation", HFILL }},
{ &hf_inap_rinvokeID,
{ "rinvokeID", "inap.rinvokeID",
@@ -5662,66 +6212,74 @@ void proto_register_inap(void) {
&ett_inap_ChangePartiesArg,
&ett_inap_DetachArg,
&ett_inap_HoldCallPartyConnectionArg,
- &ett_inap_LegID,
&ett_inap_ReconnectArg,
&ett_inap_ReleaseCallPartyConnectionArg,
&ett_inap_LegInformation,
- &ett_inap_VariableParts,
- &ett_inap_VariableParts_item,
- &ett_inap_VariableMessage,
- &ett_inap_Tone,
- &ett_inap_Text,
- &ett_inap_MessageID,
- &ett_inap_T_elementaryMessageIDs,
- &ett_inap_InformationToSend,
- &ett_inap_T_inbandInfo,
- &ett_inap_FilteringCriteria,
- &ett_inap_T_addressAndService,
&ett_inap_Extensions,
&ett_inap_Extensions_item,
- &ett_inap_ActivateServiceFilteringarg,
- &ett_inap_T_filteredCallTreatment,
- &ett_inap_T_filteringCharacteristics,
- &ett_inap_T_filteringTimeOut,
- &ett_inap_MiscCallInfo,
- &ett_inap_ServiceAddressInformation,
- &ett_inap_RouteList,
- &ett_inap_BearerCapability,
- &ett_inap_DpSpecificCommonParameters,
- &ett_inap_CallingFacilityGroup,
+ &ett_inap_ActivateServiceFilteringArg,
&ett_inap_AnalysedInformationarg,
&ett_inap_AnalyseInformationarg,
- &ett_inap_SEQUENCE_SIZE_1_3_OF_DestinationAddress,
- &ett_inap_PartyToCharge,
- &ett_inap_ApplyChargingarg,
- &ett_inap_AssistRequestInstructionsarg,
- &ett_inap_CallGaparg,
- &ett_inap_T_gapCriteria,
- &ett_inap_T_gapOnService,
- &ett_inap_T_calledAddressAndService,
- &ett_inap_T_callingAddressAndService,
- &ett_inap_T_gapIndicators,
- &ett_inap_T_gapTreatment,
- &ett_inap_Both,
- &ett_inap_CallInformationReportarg,
- &ett_inap_T_requestedInformationList,
- &ett_inap_T_requestedInformationList_item,
- &ett_inap_T_requestedInformationValue,
- &ett_inap_CallInformationRequestarg,
- &ett_inap_T_requestedInformationTypeList,
- &ett_inap_Cancelarg,
- &ett_inap_FacilityGroupID,
- &ett_inap_ResourceID,
- &ett_inap_CancelStatusReportRequestarg,
- &ett_inap_CollectedInformationarg,
- &ett_inap_CollectInformationarg,
- &ett_inap_Connectarg,
- &ett_inap_ConnectToResource,
+ &ett_inap_ApplyChargingArg,
+ &ett_inap_AssistRequestInstructionsArg,
+ &ett_inap_CallGapArg,
+ &ett_inap_CallInformationReportArg,
+ &ett_inap_CallInformationRequestArg,
+ &ett_inap_CancelArg,
+ &ett_inap_CancelStatusReportRequestArg,
+ &ett_inap_CollectedInformationArg,
+ &ett_inap_CollectInformationArg,
+ &ett_inap_ConnectArg,
+ &ett_inap_ConnectToResourceArg,
&ett_inap_T_resourceAddress,
- &ett_inap_EstablishTemporaryConnection,
- &ett_inap_EventNotificationChargingarg,
- &ett_inap_EventReportBCSM,
- &ett_inap_T_eventSpecificInformationBCSM,
+ &ett_inap_T_both2,
+ &ett_inap_DpSpecificCommonParameters,
+ &ett_inap_EstablishTemporaryConnectionArg,
+ &ett_inap_EventNotificationChargingArg,
+ &ett_inap_EventReportBCSMArg,
+ &ett_inap_HoldCallInNetworkArg,
+ &ett_inap_InitialDP,
+ &ett_inap_InitiateCallAttemptArg,
+ &ett_inap_MidCallArg,
+ &ett_inap_OAnswerArg,
+ &ett_inap_OCalledPartyBusyArg,
+ &ett_inap_ODisconnectArg,
+ &ett_inap_ONoAnswer,
+ &ett_inap_OriginationAttemptAuthorizedArg,
+ &ett_inap_PlayAnnouncementArg,
+ &ett_inap_PromptAndCollectUserInformationArg,
+ &ett_inap_ReceivedInformationArg,
+ &ett_inap_ReleaseCallArg,
+ &ett_inap_T_allCallSegments,
+ &ett_inap_RequestCurrentStatusReportResultArg,
+ &ett_inap_RequestEveryStatusChangeReportArg,
+ &ett_inap_RequestFirstStatusMatchReportArg,
+ &ett_inap_RequestNotificationChargingEvent,
+ &ett_inap_RequestNotificationChargingEvent_item,
+ &ett_inap_RequestReportBCSMEventArg,
+ &ett_inap_SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent,
+ &ett_inap_ResetTimerArg,
+ &ett_inap_RouteSelectFailureArg,
+ &ett_inap_SelectFacilityArg,
+ &ett_inap_SelectRouteArg,
+ &ett_inap_SendChargingInformationArg,
+ &ett_inap_ServiceFilteringResponseArg,
+ &ett_inap_StatusReportArg,
+ &ett_inap_TAnswerArg,
+ &ett_inap_TTBusyArg,
+ &ett_inap_TDisconnectArg,
+ &ett_inap_TermAttemptAuthorizedArg,
+ &ett_inap_TNoAnswerArg,
+ &ett_inap_BCSMEvent,
+ &ett_inap_BearerCapability,
+ &ett_inap_ChargingEvent,
+ &ett_inap_CollectedDigits,
+ &ett_inap_CollectedInfo,
+ &ett_inap_CounterAndValue,
+ &ett_inap_CountersValue,
+ &ett_inap_DestinationRoutingAddress,
+ &ett_inap_DpSpecificCriteria,
+ &ett_inap_EventSpecificInformationBCSM,
&ett_inap_T_collectedInfoSpecificInfo,
&ett_inap_T_analyzedInfoSpecificInfo,
&ett_inap_T_routeSelectFailureSpecificInfo,
@@ -5735,48 +6293,37 @@ void proto_register_inap(void) {
&ett_inap_T_tAnswerSpecificInfo,
&ett_inap_T_tMidCallSpecificInfo,
&ett_inap_T_tDisconnectSpecificInfo,
- &ett_inap_HoldCallInNetworkarg,
- &ett_inap_InitialDP,
- &ett_inap_InitiateCallAttempt,
- &ett_inap_OAnswer,
- &ett_inap_OCalledPartyBusy,
- &ett_inap_ODisconnect,
- &ett_inap_OMidCall,
- &ett_inap_ONoAnswer,
- &ett_inap_OriginationAttemptAuthorized,
- &ett_inap_PlayAnnouncement,
- &ett_inap_PromptAndCollectUserInformationarg,
- &ett_inap_T_collectedInfo,
- &ett_inap_T_collectedDigits,
- &ett_inap_PromptAndCollectUserInformationres,
- &ett_inap_ReleaseCallArg,
- &ett_inap_T_allCallSegments,
- &ett_inap_RequestCurrentStatusReportarg,
- &ett_inap_RequestCurrentStatusReportres,
- &ett_inap_RequestEveryStatusChangeReport,
- &ett_inap_RequestFirstStatusMatchReport,
- &ett_inap_RequestNotificationChargingEvent,
- &ett_inap_RequestNotificationChargingEvent_item,
- &ett_inap_RequestReportBCSMEvent,
- &ett_inap_T_bcsmEvents,
- &ett_inap_T_bcsmEvents_item,
- &ett_inap_T_dpSpecificCriteria,
- &ett_inap_ResetTimer,
- &ett_inap_RouteSelectFailure,
- &ett_inap_CalledFacilityGroup,
- &ett_inap_SelectFacility,
- &ett_inap_SelectRoute,
- &ett_inap_SendChargingInformation,
- &ett_inap_ServiceFilteringResponse,
- &ett_inap_T_countersValue,
- &ett_inap_T_countersValue_item,
- &ett_inap_StatusReport,
- &ett_inap_TAnswer,
- &ett_inap_TBusy,
- &ett_inap_TDisconnect,
- &ett_inap_TermAttemptAuthorized,
- &ett_inap_TMidCall,
- &ett_inap_TNoAnswer,
+ &ett_inap_FacilityGroup,
+ &ett_inap_FilteredCallTreatment,
+ &ett_inap_FilteringCharacteristics,
+ &ett_inap_FilteringCriteria,
+ &ett_inap_T_addressAndService,
+ &ett_inap_FilteringTimeOut,
+ &ett_inap_GapCriteria,
+ &ett_inap_T_calledAddressAndService,
+ &ett_inap_T_callingAddressAndService,
+ &ett_inap_GapOnService,
+ &ett_inap_GapIndicators,
+ &ett_inap_GapTreatment,
+ &ett_inap_T_both,
+ &ett_inap_InbandInfo,
+ &ett_inap_InformationToSend,
+ &ett_inap_LegID,
+ &ett_inap_MessageID,
+ &ett_inap_T_text,
+ &ett_inap_SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4,
+ &ett_inap_T_variableMessage,
+ &ett_inap_SEQUENCE_SIZE_1_5_OF_VariablePart,
+ &ett_inap_MiscCallInfo,
+ &ett_inap_RequestedInformationList,
+ &ett_inap_RequestedInformationTypeList,
+ &ett_inap_RequestedInformation,
+ &ett_inap_RequestedInformationValue,
+ &ett_inap_ResourceID,
+ &ett_inap_RouteList,
+ &ett_inap_ServiceAddressInformation,
+ &ett_inap_Tone,
+ &ett_inap_VariablePart,
&ett_inap_CancelFailed,
&ett_inap_RejectPDU,
&ett_inap_T_rinvokeID,
diff --git a/epan/dissectors/packet-isup.c b/epan/dissectors/packet-isup.c
index 2b74faf6f6..61475a015e 100644
--- a/epan/dissectors/packet-isup.c
+++ b/epan/dissectors/packet-isup.c
@@ -477,7 +477,7 @@ static const value_string isup_SCCP_method_ind_value[] = {
#define DATA_CALL 12
#define TEST_CALL 13
#define PAYPHONE 15
-static const value_string isup_calling_partys_category_value[] = {
+const value_string isup_calling_partys_category_value[] = {
{ UNKNOWN_AT_THIS_TIME, "Category unknown at this time (national use)"},
{ OPERATOR_FRENCH, "operator, language French"},
{ OPERATOR_ENGLISH, "operator, language English"},
@@ -1462,7 +1462,7 @@ dissect_isup_called_party_number_parameter(tvbuff_t *parameter_tvb, proto_tree *
"Called Party Number");
address_digits_tree = proto_item_add_subtree(address_digits_item, ett_isup_address_digits);
- while((length = tvb_reported_length_remaining(parameter_tvb, offset)) > 1){
+ while((length = tvb_reported_length_remaining(parameter_tvb, offset)) > 0){
address_digit_pair = tvb_get_guint8(parameter_tvb, offset);
proto_tree_add_uint(address_digits_tree, hf_isup_called_party_odd_address_signal_digit, parameter_tvb, offset, 1, address_digit_pair);
called_number[i++] = number_to_char(address_digit_pair & ISUP_ODD_ADDRESS_SIGNAL_DIGIT_MASK);
@@ -2942,6 +2942,9 @@ dissect_isup_application_transport_parameter(tvbuff_t *parameter_tvb, packet_inf
offset = offset + octet - 2;
}
}
+ if ( offset == (gint)length)
+ /* No data */
+ return;
proto_tree_add_text(parameter_tree, parameter_tvb, offset, -1, "APM-user information field" );
/* dissect BAT ASE element, without transparent data ( Q.765.5-200006) */
@@ -3049,7 +3052,7 @@ dissect_isup_calling_party_number_parameter(tvbuff_t *parameter_tvb, proto_tree
/* ------------------------------------------------------------------
Dissector Parameter Original called number
*/
-static void
+void
dissect_isup_original_called_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item)
{
proto_item *address_digits_item;
@@ -3106,7 +3109,7 @@ dissect_isup_original_called_number_parameter(tvbuff_t *parameter_tvb, proto_tre
/* ------------------------------------------------------------------
Dissector Parameter Redirecting number
*/
-static void
+void
dissect_isup_redirecting_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item)
{
proto_item *address_digits_item;
@@ -3244,7 +3247,7 @@ dissect_isup_connection_request_parameter(tvbuff_t *parameter_tvb, proto_tree *p
/* ------------------------------------------------------------------
Dissector Parameter Redirection information
*/
-static void
+void
dissect_isup_redirection_information_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item)
{
if (tvb_length(parameter_tvb) == 2){
diff --git a/epan/dissectors/packet-isup.h b/epan/dissectors/packet-isup.h
index ea4dd5de01..e6b933b201 100644
--- a/epan/dissectors/packet-isup.h
+++ b/epan/dissectors/packet-isup.h
@@ -133,6 +133,7 @@ ETH_VAR_IMPORT const value_string q850_cause_code_vals[];
extern const value_string isup_parameter_type_value[];
extern const value_string isup_transmission_medium_requirement_value[];
+extern const value_string isup_calling_partys_category_value[];
/*
* Export dissection of some parameters
@@ -141,5 +142,8 @@ void dissect_nsap(tvbuff_t *parameter_tvb,gint offset,gint len, proto_tree *para
void dissect_isup_called_party_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
void dissect_isup_calling_party_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
void dissect_isup_cause_indicators_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
+void dissect_isup_redirection_information_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
+void dissect_isup_original_called_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
+void dissect_isup_redirecting_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
extern int dissect_codec_mode(proto_tree *tree, tvbuff_t *tvb, int offset, int len);