1 /* Do not modify this file. */
2 /* It is created automatically by the ASN.1 to Wireshark dissector compiler */
4 /* ../../tools/asn2eth.py -X -b -e -p inap -c inap.cnf -s packet-inap-template inap.asn */
6 /* Input file: packet-inap-template.c */
8 #line 1 "packet-inap-template.c"
9 /* packet-inap-template.c
11 * Copyright 2004, Tim Endean <endeant@hotmail.com>
12 * Built from the gsm-map dissector Copyright 2004, Anders Broman <anders.broman@ericsson.com>
15 * Wireshark - Network traffic analyzer
16 * By Gerald Combs <gerald@wireshark.org>
17 * Copyright 1998 Gerald Combs
19 * This program is free software; you can redistribute it and/or
20 * modify it under the terms of the GNU General Public License
21 * as published by the Free Software Foundation; either version 2
22 * of the License, or (at your option) any later version.
24 * This program is distributed in the hope that it will be useful,
25 * but WITHOUT ANY WARRANTY; without even the implied warranty of
26 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27 * GNU General Public License for more details.
29 * You should have received a copy of the GNU General Public License
30 * along with this program; if not, write to the Free Software
31 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
32 * References: ETSI 300 374
41 #include <epan/packet.h>
42 #include <epan/prefs.h>
43 #include <epan/conversation.h>
48 #include "packet-ber.h"
49 #include "packet-inap.h"
50 #include "packet-q931.h"
51 #include "packet-e164.h"
52 #include "packet-isup.h"
53 #include "packet-tcap.h"
55 #define PNAME "Intelligent Network Application Protocol"
59 /* Initialize the protocol and registered fields */
61 static int hf_inap_invokeCmd = -1; /* Opcode */
62 static int hf_inap_invokeid = -1; /* INTEGER */
63 static int hf_inap_linkedid = -1; /* INTEGER */
64 static int hf_inap_absent = -1; /* NULL */
65 static int hf_inap_invokeId = -1; /* InvokeId */
66 static int hf_inap_invoke = -1; /* InvokePDU */
67 static int hf_inap_ReturnError = -1; /* InvokePDU */
68 static int hf_inap_returnResult = -1; /* InvokePDU */
69 static int hf_inap_returnResult_result = -1;
70 static int hf_inap_getPassword = -1;
71 static int hf_inap_currentPassword = -1;
72 static int hf_inap_genproblem = -1;
74 /*--- Included file: packet-inap-hf.c ---*/
75 #line 1 "packet-inap-hf.c"
76 static int hf_inap_ActivateServiceFilteringArg_PDU = -1; /* ActivateServiceFilteringArg */
77 static int hf_inap_AnalysedInformationArg_PDU = -1; /* AnalysedInformationArg */
78 static int hf_inap_AnalyseInformationArg_PDU = -1; /* AnalyseInformationArg */
79 static int hf_inap_ApplyChargingArg_PDU = -1; /* ApplyChargingArg */
80 static int hf_inap_ApplyChargingReportArg_PDU = -1; /* ApplyChargingReportArg */
81 static int hf_inap_AssistRequestInstructionsArg_PDU = -1; /* AssistRequestInstructionsArg */
82 static int hf_inap_CallGapArg_PDU = -1; /* CallGapArg */
83 static int hf_inap_CallInformationReportArg_PDU = -1; /* CallInformationReportArg */
84 static int hf_inap_CallInformationRequestArg_PDU = -1; /* CallInformationRequestArg */
85 static int hf_inap_CancelArg_PDU = -1; /* CancelArg */
86 static int hf_inap_CollectedInformationArg_PDU = -1; /* CollectedInformationArg */
87 static int hf_inap_CollectInformationArg_PDU = -1; /* CollectInformationArg */
88 static int hf_inap_ConnectArg_PDU = -1; /* ConnectArg */
89 static int hf_inap_ConnectToResourceArg_PDU = -1; /* ConnectToResourceArg */
90 static int hf_inap_EstablishTemporaryConnectionArg_PDU = -1; /* EstablishTemporaryConnectionArg */
91 static int hf_inap_EventNotificationChargingArg_PDU = -1; /* EventNotificationChargingArg */
92 static int hf_inap_EventReportBCSMArg_PDU = -1; /* EventReportBCSMArg */
93 static int hf_inap_FurnishChargingInformationArg_PDU = -1; /* FurnishChargingInformationArg */
94 static int hf_inap_HoldCallInNetworkArg_PDU = -1; /* HoldCallInNetworkArg */
95 static int hf_inap_InitialDP_PDU = -1; /* InitialDP */
96 static int hf_inap_InitiateCallAttemptArg_PDU = -1; /* InitiateCallAttemptArg */
97 static int hf_inap_MidCallArg_PDU = -1; /* MidCallArg */
98 static int hf_inap_OAnswerArg_PDU = -1; /* OAnswerArg */
99 static int hf_inap_OCalledPartyBusyArg_PDU = -1; /* OCalledPartyBusyArg */
100 static int hf_inap_ODisconnectArg_PDU = -1; /* ODisconnectArg */
101 static int hf_inap_ONoAnswer_PDU = -1; /* ONoAnswer */
102 static int hf_inap_OriginationAttemptAuthorizedArg_PDU = -1; /* OriginationAttemptAuthorizedArg */
103 static int hf_inap_PlayAnnouncementArg_PDU = -1; /* PlayAnnouncementArg */
104 static int hf_inap_PromptAndCollectUserInformationArg_PDU = -1; /* PromptAndCollectUserInformationArg */
105 static int hf_inap_ReceivedInformationArg_PDU = -1; /* ReceivedInformationArg */
106 static int hf_inap_ReleaseCallArg_PDU = -1; /* ReleaseCallArg */
107 static int hf_inap_RequestCurrentStatusReportArg_PDU = -1; /* RequestCurrentStatusReportArg */
108 static int hf_inap_RequestCurrentStatusReportResultArg_PDU = -1; /* RequestCurrentStatusReportResultArg */
109 static int hf_inap_RequestEveryStatusChangeReportArg_PDU = -1; /* RequestEveryStatusChangeReportArg */
110 static int hf_inap_RequestFirstStatusMatchReportArg_PDU = -1; /* RequestFirstStatusMatchReportArg */
111 static int hf_inap_RequestNotificationChargingEvent_PDU = -1; /* RequestNotificationChargingEvent */
112 static int hf_inap_RequestReportBCSMEventArg_PDU = -1; /* RequestReportBCSMEventArg */
113 static int hf_inap_ResetTimerArg_PDU = -1; /* ResetTimerArg */
114 static int hf_inap_RouteSelectFailureArg_PDU = -1; /* RouteSelectFailureArg */
115 static int hf_inap_SelectFacilityArg_PDU = -1; /* SelectFacilityArg */
116 static int hf_inap_SelectRouteArg_PDU = -1; /* SelectRouteArg */
117 static int hf_inap_ServiceFilteringResponseArg_PDU = -1; /* ServiceFilteringResponseArg */
118 static int hf_inap_SpecializedResourceReportArg_PDU = -1; /* SpecializedResourceReportArg */
119 static int hf_inap_StatusReportArg_PDU = -1; /* StatusReportArg */
120 static int hf_inap_TAnswerArg_PDU = -1; /* TAnswerArg */
121 static int hf_inap_TBusyArg_PDU = -1; /* TBusyArg */
122 static int hf_inap_TDisconnectArg_PDU = -1; /* TDisconnectArg */
123 static int hf_inap_TermAttemptAuthorizedArg_PDU = -1; /* TermAttemptAuthorizedArg */
124 static int hf_inap_TNoAnswerArg_PDU = -1; /* TNoAnswerArg */
125 static int hf_inap_originalCallID = -1; /* CallID */
126 static int hf_inap_destinationCallID = -1; /* CallID */
127 static int hf_inap_newLegID = -1; /* OCTET_STRING */
128 static int hf_inap_correlationidentifier = -1; /* OCTET_STRING */
129 static int hf_inap_CallPartyHandlingResultsArg_item = -1; /* LegInformation */
130 static int hf_inap_callID = -1; /* CallID */
131 static int hf_inap_targetCallID = -1; /* CallID */
132 static int hf_inap_legToBeConnectedID = -1; /* OCTET_STRING */
133 static int hf_inap_legToBeDetached = -1; /* OCTET_STRING */
134 static int hf_inap_legID = -1; /* LegID */
135 static int hf_inap_heldLegID = -1; /* LegID */
136 static int hf_inap_legToBeReleased = -1; /* LegID */
137 static int hf_inap_releaseCause = -1; /* Cause */
138 static int hf_inap_legStatus = -1; /* LegStatus */
139 static int hf_inap_Extensions_item = -1; /* Extensions_item */
140 static int hf_inap_type = -1; /* INTEGER */
141 static int hf_inap_criticality = -1; /* T_criticality */
142 static int hf_inap_value = -1; /* OCTET_STRING */
143 static int hf_inap_filteredCallTreatment = -1; /* FilteredCallTreatment */
144 static int hf_inap_filteringCharacteristics = -1; /* FilteringCharacteristics */
145 static int hf_inap_filteringTimeOut = -1; /* FilteringTimeOut */
146 static int hf_inap_filteringCriteria = -1; /* FilteringCriteria */
147 static int hf_inap_startTime = -1; /* DateAndTime */
148 static int hf_inap_extensions = -1; /* Extensions */
149 static int hf_inap_dpSpecificCommonParameters = -1; /* DpSpecificCommonParameters */
150 static int hf_inap_dialledDigits = -1; /* CalledPartyNumber */
151 static int hf_inap_callingPartyBusinessGroupID = -1; /* CallingPartyBusinessGroupID */
152 static int hf_inap_callingPartySubaddress = -1; /* CallingPartySubaddress */
153 static int hf_inap_callingFacilityGroup = -1; /* FacilityGroup */
154 static int hf_inap_callingFacilityGroupMember = -1; /* FacilityGroupMember */
155 static int hf_inap_originalCalledPartyID = -1; /* OriginalCalledPartyID */
156 static int hf_inap_prefix = -1; /* Digits */
157 static int hf_inap_redirectingPartyID = -1; /* RedirectingPartyID */
158 static int hf_inap_redirectionInformation = -1; /* RedirectionInformation */
159 static int hf_inap_routeList = -1; /* RouteList */
160 static int hf_inap_travellingClassMark = -1; /* TravellingClassMark */
161 static int hf_inap_featureCode = -1; /* FeatureCode */
162 static int hf_inap_accessCode = -1; /* AccessCode */
163 static int hf_inap_carrier = -1; /* Carrier */
164 static int hf_inap_destinationRoutingAddress = -1; /* DestinationRoutingAddress */
165 static int hf_inap_alertingPattern = -1; /* AlertingPattern */
166 static int hf_inap_iSDNAccessRelatedInformation = -1; /* ISDNAccessRelatedInformation */
167 static int hf_inap_callingPartyNumber = -1; /* CallingPartyNumber */
168 static int hf_inap_callingPartysCategory = -1; /* CallingPartysCategory */
169 static int hf_inap_calledPartyNumber = -1; /* CalledPartyNumber */
170 static int hf_inap_chargeNumber = -1; /* ChargeNumber */
171 static int hf_inap_aChBillingChargingCharacteristics = -1; /* AChBillingChargingCharacteristics */
172 static int hf_inap_partyToCharge = -1; /* LegID */
173 static int hf_inap_correlationID = -1; /* CorrelationID */
174 static int hf_inap_iPAvailable = -1; /* IPAvailable */
175 static int hf_inap_iPSSPCapabilities = -1; /* IPSSPCapabilities */
176 static int hf_inap_gapCriteria = -1; /* GapCriteria */
177 static int hf_inap_gapIndicators = -1; /* GapIndicators */
178 static int hf_inap_controlType = -1; /* ControlType */
179 static int hf_inap_gapTreatment = -1; /* GapTreatment */
180 static int hf_inap_requestedInformationTypeList = -1; /* RequestedInformationTypeList */
181 static int hf_inap_invokeID = -1; /* InvokeID */
182 static int hf_inap_allRequests = -1; /* NULL */
183 static int hf_inap_resourceID = -1; /* ResourceID */
184 static int hf_inap_numberingPlan = -1; /* NumberingPlan */
185 static int hf_inap_cutAndPaste = -1; /* CutAndPaste */
186 static int hf_inap_forwardingCondition = -1; /* ForwardingCondition */
187 static int hf_inap_scfID = -1; /* ScfID */
188 static int hf_inap_serviceInteractionIndicators = -1; /* ServiceInteractionIndicators */
189 static int hf_inap_resourceAddress = -1; /* T_resourceAddress */
190 static int hf_inap_ipRoutingAddress = -1; /* IPRoutingAddress */
191 static int hf_inap_both2 = -1; /* T_both2 */
192 static int hf_inap_none = -1; /* NULL */
193 static int hf_inap_serviceAddressInformation = -1; /* ServiceAddressInformation */
194 static int hf_inap_bearerCapability = -1; /* BearerCapability */
195 static int hf_inap_cGEncountered = -1; /* CGEncountered */
196 static int hf_inap_locationNumber = -1; /* LocationNumber */
197 static int hf_inap_serviceProfileIdentifier = -1; /* ServiceProfileIdentifier */
198 static int hf_inap_terminalType = -1; /* TerminalType */
199 static int hf_inap_servingAreaID = -1; /* ServingAreaID */
200 static int hf_inap_assistingSSPIPRoutingAddress = -1; /* AssistingSSPIPRoutingAddress */
201 static int hf_inap_eventTypeCharging = -1; /* EventTypeCharging */
202 static int hf_inap_eventSpecificInformationCharging = -1; /* EventSpecificInformationCharging */
203 static int hf_inap_monitorMode = -1; /* MonitorMode */
204 static int hf_inap_eventTypeBCSM = -1; /* EventTypeBCSM */
205 static int hf_inap_bcsmEventCorrelationID = -1; /* CorrelationID */
206 static int hf_inap_eventSpecificInformationBCSM = -1; /* EventSpecificInformationBCSM */
207 static int hf_inap_miscCallInfo = -1; /* MiscCallInfo */
208 static int hf_inap_holdcause = -1; /* HoldCause */
209 static int hf_inap_empty = -1; /* NULL */
210 static int hf_inap_serviceKey = -1; /* ServiceKey */
211 static int hf_inap_triggerType = -1; /* TriggerType */
212 static int hf_inap_highLayerCompatibility = -1; /* HighLayerCompatibility */
213 static int hf_inap_additionalCallingPartyNumber = -1; /* AdditionalCallingPartyNumber */
214 static int hf_inap_forwardCallIndicators = -1; /* ForwardCallIndicators */
215 static int hf_inap_calledPartyBusinessGroupID = -1; /* CalledPartyBusinessGroupID */
216 static int hf_inap_calledPartySubaddress = -1; /* CalledPartySubaddress */
217 static int hf_inap_featureRequestIndicator = -1; /* FeatureRequestIndicator */
218 static int hf_inap_busyCause = -1; /* Cause */
219 static int hf_inap_connectTime = -1; /* Integer4 */
220 static int hf_inap_informationToSend = -1; /* InformationToSend */
221 static int hf_inap_disconnectFromIPForbidden = -1; /* BOOLEAN */
222 static int hf_inap_requestAnnouncementComplete = -1; /* BOOLEAN */
223 static int hf_inap_collectedInfo = -1; /* CollectedInfo */
224 static int hf_inap_digitsResponse = -1; /* Digits */
225 static int hf_inap_iA5Response = -1; /* IA5String */
226 static int hf_inap_initialCallSegment = -1; /* Cause */
227 static int hf_inap_allCallSegments = -1; /* T_allCallSegments */
228 static int hf_inap_resourceStatus = -1; /* ResourceStatus */
229 static int hf_inap_monitorDuration = -1; /* Duration */
230 static int hf_inap_RequestNotificationChargingEvent_item = -1; /* RequestNotificationChargingEvent_item */
231 static int hf_inap_eventTypeCharging2 = -1; /* OCTET_STRING */
232 static int hf_inap_bcsmEvents = -1; /* SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent */
233 static int hf_inap_bcsmEvents_item = -1; /* BCSMEvent */
234 static int hf_inap_timerID = -1; /* TimerID */
235 static int hf_inap_timervalue = -1; /* TimerValue */
236 static int hf_inap_failureCause = -1; /* Cause */
237 static int hf_inap_destinationNumberRoutingAddress = -1; /* CalledPartyNumber */
238 static int hf_inap_calledFacilityGroup = -1; /* FacilityGroup */
239 static int hf_inap_calledFacilityGroupMember = -1; /* FacilityGroupMember */
240 static int hf_inap_sCIBillingChargingCharacteristics = -1; /* SCIBillingChargingCharacteristics */
241 static int hf_inap_countersValue = -1; /* CountersValue */
242 static int hf_inap_responseCondition = -1; /* ResponseCondition */
243 static int hf_inap_reportCondition = -1; /* ReportCondition */
244 static int hf_inap_dpSpecificCriteria = -1; /* DpSpecificCriteria */
245 static int hf_inap_bearerCap = -1; /* BearerCap */
246 static int hf_inap_tmr = -1; /* OCTET_STRING_SIZE_1 */
247 static int hf_inap_minimumNbOfDigits = -1; /* INTEGER_1_127 */
248 static int hf_inap_maximumNbOfDigits = -1; /* INTEGER_1_127 */
249 static int hf_inap_endOfReplyDigit = -1; /* OCTET_STRING_SIZE_1_2 */
250 static int hf_inap_cancelDigit = -1; /* OCTET_STRING_SIZE_1_2 */
251 static int hf_inap_startDigit = -1; /* OCTET_STRING_SIZE_1_2 */
252 static int hf_inap_firstDigitTimeOut = -1; /* INTEGER_1_127 */
253 static int hf_inap_interDigitTimeOut = -1; /* INTEGER_1_127 */
254 static int hf_inap_errorTreatment = -1; /* ErrorTreatment */
255 static int hf_inap_interruptableAnnInd = -1; /* BOOLEAN */
256 static int hf_inap_voiceInformation = -1; /* BOOLEAN */
257 static int hf_inap_voiceBack = -1; /* BOOLEAN */
258 static int hf_inap_collectedDigits = -1; /* CollectedDigits */
259 static int hf_inap_iA5Information = -1; /* BOOLEAN */
260 static int hf_inap_counterID = -1; /* CounterID */
261 static int hf_inap_counterValue = -1; /* Integer4 */
262 static int hf_inap_CountersValue_item = -1; /* CounterAndValue */
263 static int hf_inap_DestinationRoutingAddress_item = -1; /* CalledPartyNumber */
264 static int hf_inap_numberOfDigits = -1; /* NumberOfDigits */
265 static int hf_inap_applicationTimer = -1; /* ApplicationTimer */
266 static int hf_inap_collectedInfoSpecificInfo = -1; /* T_collectedInfoSpecificInfo */
267 static int hf_inap_calledPartynumber = -1; /* CalledPartyNumber */
268 static int hf_inap_analyzedInfoSpecificInfo = -1; /* T_analyzedInfoSpecificInfo */
269 static int hf_inap_routeSelectFailureSpecificInfo = -1; /* T_routeSelectFailureSpecificInfo */
270 static int hf_inap_oCalledPartyBusySpecificInfo = -1; /* T_oCalledPartyBusySpecificInfo */
271 static int hf_inap_oNoAnswerSpecificInfo = -1; /* T_oNoAnswerSpecificInfo */
272 static int hf_inap_oAnswerSpecificInfo = -1; /* T_oAnswerSpecificInfo */
273 static int hf_inap_oMidCallSpecificInfo = -1; /* T_oMidCallSpecificInfo */
274 static int hf_inap_oDisconnectSpecificInfo = -1; /* T_oDisconnectSpecificInfo */
275 static int hf_inap_tBusySpecificInfo = -1; /* T_tBusySpecificInfo */
276 static int hf_inap_tNoAnswerSpecificInfo = -1; /* T_tNoAnswerSpecificInfo */
277 static int hf_inap_tAnswerSpecificInfo = -1; /* T_tAnswerSpecificInfo */
278 static int hf_inap_tMidCallSpecificInfo = -1; /* T_tMidCallSpecificInfo */
279 static int hf_inap_tDisconnectSpecificInfo = -1; /* T_tDisconnectSpecificInfo */
280 static int hf_inap_trunkGroupID = -1; /* INTEGER */
281 static int hf_inap_privateFacilityID = -1; /* INTEGER */
282 static int hf_inap_huntGroup = -1; /* OCTET_STRING */
283 static int hf_inap_routeIndex = -1; /* OCTET_STRING */
284 static int hf_inap_sFBillingChargingCharacteristics = -1; /* SFBillingChargingCharacteristics */
285 static int hf_inap_maximumNumberOfCounters = -1; /* MaximumNumberOfCounters */
286 static int hf_inap_interval1 = -1; /* INTEGER_M1_32000 */
287 static int hf_inap_numberOfCalls = -1; /* Integer4 */
288 static int hf_inap_dialledNumber = -1; /* Digits */
289 static int hf_inap_callingLineID = -1; /* Digits */
290 static int hf_inap_addressAndService = -1; /* T_addressAndService */
291 static int hf_inap_calledAddressValue = -1; /* Digits */
292 static int hf_inap_callingAddressValue = -1; /* Digits */
293 static int hf_inap_duration = -1; /* Duration */
294 static int hf_inap_stopTime = -1; /* DateAndTime */
295 static int hf_inap_gapOnService = -1; /* GapOnService */
296 static int hf_inap_calledAddressAndService = -1; /* T_calledAddressAndService */
297 static int hf_inap_callingAddressAndService = -1; /* T_callingAddressAndService */
298 static int hf_inap_dpCriteria = -1; /* EventTypeBCSM */
299 static int hf_inap_gapInterval = -1; /* Interval */
300 static int hf_inap_both = -1; /* T_both */
301 static int hf_inap_messageID = -1; /* MessageID */
302 static int hf_inap_numberOfRepetitions = -1; /* INTEGER_1_127 */
303 static int hf_inap_duration3 = -1; /* INTEGER_0_32767 */
304 static int hf_inap_interval = -1; /* INTEGER_0_32767 */
305 static int hf_inap_inbandInfo = -1; /* InbandInfo */
306 static int hf_inap_tone = -1; /* Tone */
307 static int hf_inap_displayInformation = -1; /* DisplayInformation */
308 static int hf_inap_sendingSideID = -1; /* LegType */
309 static int hf_inap_receivingSideID = -1; /* LegType */
310 static int hf_inap_elementaryMessageID = -1; /* Integer4 */
311 static int hf_inap_text = -1; /* T_text */
312 static int hf_inap_messageContent = -1; /* IA5String_SIZE_minMessageContentLength_maxMessageContentLength */
313 static int hf_inap_attributes = -1; /* OCTET_STRING_SIZE_minAttributesLength_maxAttributesLength */
314 static int hf_inap_elementaryMessageIDs = -1; /* SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4 */
315 static int hf_inap_elementaryMessageIDs_item = -1; /* Integer4 */
316 static int hf_inap_variableMessage = -1; /* T_variableMessage */
317 static int hf_inap_variableParts = -1; /* SEQUENCE_SIZE_1_5_OF_VariablePart */
318 static int hf_inap_variableParts_item = -1; /* VariablePart */
319 static int hf_inap_messageType = -1; /* T_messageType */
320 static int hf_inap_dpAssignment = -1; /* T_dpAssignment */
321 static int hf_inap_RequestedInformationList_item = -1; /* RequestedInformation */
322 static int hf_inap_RequestedInformationTypeList_item = -1; /* RequestedInformationType */
323 static int hf_inap_requestedInformationType = -1; /* RequestedInformationType */
324 static int hf_inap_requestedInformationValue = -1; /* RequestedInformationValue */
325 static int hf_inap_callAttemptElapsedTimeValue = -1; /* INTEGER_0_255 */
326 static int hf_inap_callStopTimeValue = -1; /* DateAndTime */
327 static int hf_inap_callConnectedElapsedTimeValue = -1; /* Integer4 */
328 static int hf_inap_releaseCauseValue = -1; /* Cause */
329 static int hf_inap_lineID = -1; /* Digits */
330 static int hf_inap_facilityGroupID = -1; /* FacilityGroup */
331 static int hf_inap_facilityGroupMemberID = -1; /* INTEGER */
332 static int hf_inap_RouteList_item = -1; /* OCTET_STRING */
333 static int hf_inap_toneID = -1; /* Integer4 */
334 static int hf_inap_tone_duration = -1; /* Integer4 */
335 static int hf_inap_integer = -1; /* Integer4 */
336 static int hf_inap_number = -1; /* Digits */
337 static int hf_inap_time = -1; /* OCTET_STRING_SIZE_2 */
338 static int hf_inap_date2 = -1; /* OCTET_STRING_SIZE_3 */
339 static int hf_inap_price = -1; /* OCTET_STRING_SIZE_4 */
340 static int hf_inap_problem = -1; /* T_problem */
341 static int hf_inap_operation = -1; /* INTEGER_M128_127 */
342 static int hf_inap_rinvokeID = -1; /* T_rinvokeID */
343 static int hf_inap_invidtype = -1; /* InvokeIDType */
344 static int hf_inap_null = -1; /* NULL */
345 static int hf_inap_rproblem = -1; /* T_rproblem */
346 static int hf_inap_gp = -1; /* GeneralProblem */
347 static int hf_inap_ip = -1; /* InvokeProblem */
348 static int hf_inap_rrp = -1; /* ReturnResultProblem */
349 static int hf_inap_rep = -1; /* ReturnErrorProblem */
351 /*--- End of included file: packet-inap-hf.c ---*/
352 #line 66 "packet-inap-template.c"
355 static range_t *global_ssn_range;
356 static range_t *ssn_range;
358 dissector_handle_t inap_handle;
360 /* Initialize the subtree pointers */
361 static gint ett_inap = -1;
362 static gint ett_inap_InvokeId = -1;
363 static gint ett_inap_InvokePDU = -1;
364 static gint ett_inap_ReturnErrorPDU = -1;
365 static gint ett_inap_ReturnResultPDU = -1;
366 static gint ett_inap_ReturnResult_result = -1;
367 static gint ett_inap_INAPPDU = -1;
368 static gint ett_inapisup_parameter = -1;
370 /*--- Included file: packet-inap-ett.c ---*/
371 #line 1 "packet-inap-ett.c"
372 static gint ett_inap_AddPartyArg = -1;
373 static gint ett_inap_AttachArg = -1;
374 static gint ett_inap_CallPartyHandlingResultsArg = -1;
375 static gint ett_inap_ChangePartiesArg = -1;
376 static gint ett_inap_DetachArg = -1;
377 static gint ett_inap_HoldCallPartyConnectionArg = -1;
378 static gint ett_inap_ReconnectArg = -1;
379 static gint ett_inap_ReleaseCallPartyConnectionArg = -1;
380 static gint ett_inap_LegInformation = -1;
381 static gint ett_inap_Extensions = -1;
382 static gint ett_inap_Extensions_item = -1;
383 static gint ett_inap_ActivateServiceFilteringArg = -1;
384 static gint ett_inap_AnalysedInformationArg = -1;
385 static gint ett_inap_AnalyseInformationArg = -1;
386 static gint ett_inap_ApplyChargingArg = -1;
387 static gint ett_inap_AssistRequestInstructionsArg = -1;
388 static gint ett_inap_CallGapArg = -1;
389 static gint ett_inap_CallInformationReportArg = -1;
390 static gint ett_inap_CallInformationRequestArg = -1;
391 static gint ett_inap_CancelArg = -1;
392 static gint ett_inap_CancelStatusReportRequestArg = -1;
393 static gint ett_inap_CollectedInformationArg = -1;
394 static gint ett_inap_CollectInformationArg = -1;
395 static gint ett_inap_ConnectArg = -1;
396 static gint ett_inap_ConnectToResourceArg = -1;
397 static gint ett_inap_T_resourceAddress = -1;
398 static gint ett_inap_T_both2 = -1;
399 static gint ett_inap_DpSpecificCommonParameters = -1;
400 static gint ett_inap_EstablishTemporaryConnectionArg = -1;
401 static gint ett_inap_EventNotificationChargingArg = -1;
402 static gint ett_inap_EventReportBCSMArg = -1;
403 static gint ett_inap_HoldCallInNetworkArg = -1;
404 static gint ett_inap_InitialDP = -1;
405 static gint ett_inap_InitiateCallAttemptArg = -1;
406 static gint ett_inap_MidCallArg = -1;
407 static gint ett_inap_OAnswerArg = -1;
408 static gint ett_inap_OCalledPartyBusyArg = -1;
409 static gint ett_inap_ODisconnectArg = -1;
410 static gint ett_inap_ONoAnswer = -1;
411 static gint ett_inap_OriginationAttemptAuthorizedArg = -1;
412 static gint ett_inap_PlayAnnouncementArg = -1;
413 static gint ett_inap_PromptAndCollectUserInformationArg = -1;
414 static gint ett_inap_ReceivedInformationArg = -1;
415 static gint ett_inap_ReleaseCallArg = -1;
416 static gint ett_inap_T_allCallSegments = -1;
417 static gint ett_inap_RequestCurrentStatusReportResultArg = -1;
418 static gint ett_inap_RequestEveryStatusChangeReportArg = -1;
419 static gint ett_inap_RequestFirstStatusMatchReportArg = -1;
420 static gint ett_inap_RequestNotificationChargingEvent = -1;
421 static gint ett_inap_RequestNotificationChargingEvent_item = -1;
422 static gint ett_inap_RequestReportBCSMEventArg = -1;
423 static gint ett_inap_SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent = -1;
424 static gint ett_inap_ResetTimerArg = -1;
425 static gint ett_inap_RouteSelectFailureArg = -1;
426 static gint ett_inap_SelectFacilityArg = -1;
427 static gint ett_inap_SelectRouteArg = -1;
428 static gint ett_inap_SendChargingInformationArg = -1;
429 static gint ett_inap_ServiceFilteringResponseArg = -1;
430 static gint ett_inap_StatusReportArg = -1;
431 static gint ett_inap_TAnswerArg = -1;
432 static gint ett_inap_TBusyArg = -1;
433 static gint ett_inap_TDisconnectArg = -1;
434 static gint ett_inap_TermAttemptAuthorizedArg = -1;
435 static gint ett_inap_TNoAnswerArg = -1;
436 static gint ett_inap_BCSMEvent = -1;
437 static gint ett_inap_BearerCapability = -1;
438 static gint ett_inap_ChargingEvent = -1;
439 static gint ett_inap_CollectedDigits = -1;
440 static gint ett_inap_CollectedInfo = -1;
441 static gint ett_inap_CounterAndValue = -1;
442 static gint ett_inap_CountersValue = -1;
443 static gint ett_inap_DestinationRoutingAddress = -1;
444 static gint ett_inap_DpSpecificCriteria = -1;
445 static gint ett_inap_EventSpecificInformationBCSM = -1;
446 static gint ett_inap_T_collectedInfoSpecificInfo = -1;
447 static gint ett_inap_T_analyzedInfoSpecificInfo = -1;
448 static gint ett_inap_T_routeSelectFailureSpecificInfo = -1;
449 static gint ett_inap_T_oCalledPartyBusySpecificInfo = -1;
450 static gint ett_inap_T_oNoAnswerSpecificInfo = -1;
451 static gint ett_inap_T_oAnswerSpecificInfo = -1;
452 static gint ett_inap_T_oMidCallSpecificInfo = -1;
453 static gint ett_inap_T_oDisconnectSpecificInfo = -1;
454 static gint ett_inap_T_tBusySpecificInfo = -1;
455 static gint ett_inap_T_tNoAnswerSpecificInfo = -1;
456 static gint ett_inap_T_tAnswerSpecificInfo = -1;
457 static gint ett_inap_T_tMidCallSpecificInfo = -1;
458 static gint ett_inap_T_tDisconnectSpecificInfo = -1;
459 static gint ett_inap_FacilityGroup = -1;
460 static gint ett_inap_FilteredCallTreatment = -1;
461 static gint ett_inap_FilteringCharacteristics = -1;
462 static gint ett_inap_FilteringCriteria = -1;
463 static gint ett_inap_T_addressAndService = -1;
464 static gint ett_inap_FilteringTimeOut = -1;
465 static gint ett_inap_GapCriteria = -1;
466 static gint ett_inap_T_calledAddressAndService = -1;
467 static gint ett_inap_T_callingAddressAndService = -1;
468 static gint ett_inap_GapOnService = -1;
469 static gint ett_inap_GapIndicators = -1;
470 static gint ett_inap_GapTreatment = -1;
471 static gint ett_inap_T_both = -1;
472 static gint ett_inap_InbandInfo = -1;
473 static gint ett_inap_InformationToSend = -1;
474 static gint ett_inap_LegID = -1;
475 static gint ett_inap_MessageID = -1;
476 static gint ett_inap_T_text = -1;
477 static gint ett_inap_SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4 = -1;
478 static gint ett_inap_T_variableMessage = -1;
479 static gint ett_inap_SEQUENCE_SIZE_1_5_OF_VariablePart = -1;
480 static gint ett_inap_MiscCallInfo = -1;
481 static gint ett_inap_RequestedInformationList = -1;
482 static gint ett_inap_RequestedInformationTypeList = -1;
483 static gint ett_inap_RequestedInformation = -1;
484 static gint ett_inap_RequestedInformationValue = -1;
485 static gint ett_inap_ResourceID = -1;
486 static gint ett_inap_RouteList = -1;
487 static gint ett_inap_ServiceAddressInformation = -1;
488 static gint ett_inap_Tone = -1;
489 static gint ett_inap_VariablePart = -1;
490 static gint ett_inap_CancelFailed = -1;
491 static gint ett_inap_RejectPDU = -1;
492 static gint ett_inap_T_rinvokeID = -1;
493 static gint ett_inap_T_rproblem = -1;
495 /*--- End of included file: packet-inap-ett.c ---*/
496 #line 83 "packet-inap-template.c"
498 static int dissect_invokeCmd(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset);
501 /*--- Included file: packet-inap-fn.c ---*/
502 #line 1 "packet-inap-fn.c"
503 /*--- Fields for imported types ---*/
509 dissect_inap_CallID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
510 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
515 static int dissect_originalCallID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
516 return dissect_inap_CallID(TRUE, tvb, offset, pinfo, tree, hf_inap_originalCallID);
518 static int dissect_destinationCallID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
519 return dissect_inap_CallID(TRUE, tvb, offset, pinfo, tree, hf_inap_destinationCallID);
521 static int dissect_callID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
522 return dissect_inap_CallID(TRUE, tvb, offset, pinfo, tree, hf_inap_callID);
524 static int dissect_targetCallID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
525 return dissect_inap_CallID(TRUE, tvb, offset, pinfo, tree, hf_inap_targetCallID);
529 static const ber_sequence_t AddPartyArg_sequence[] = {
530 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCallID_impl },
531 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_destinationCallID_impl },
536 dissect_inap_AddPartyArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
537 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
538 AddPartyArg_sequence, hf_index, ett_inap_AddPartyArg);
546 dissect_inap_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
547 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
552 static int dissect_newLegID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
553 return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_newLegID);
555 static int dissect_correlationidentifier_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
556 return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_correlationidentifier);
558 static int dissect_legToBeConnectedID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
559 return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_legToBeConnectedID);
561 static int dissect_legToBeDetached_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
562 return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_legToBeDetached);
564 static int dissect_value_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
565 return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_value);
567 static int dissect_eventTypeCharging2_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
568 return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_eventTypeCharging2);
570 static int dissect_huntGroup_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
571 return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_huntGroup);
573 static int dissect_routeIndex_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
574 return dissect_inap_OCTET_STRING(TRUE, tvb, offset, pinfo, tree, hf_inap_routeIndex);
576 static int dissect_RouteList_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
577 return dissect_inap_OCTET_STRING(FALSE, tvb, offset, pinfo, tree, hf_inap_RouteList_item);
581 static const ber_sequence_t AttachArg_sequence[] = {
582 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_newLegID_impl },
583 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationidentifier_impl },
588 dissect_inap_AttachArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
589 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
590 AttachArg_sequence, hf_index, ett_inap_AttachArg);
598 dissect_inap_LegType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
599 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
604 static int dissect_sendingSideID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
605 return dissect_inap_LegType(TRUE, tvb, offset, pinfo, tree, hf_inap_sendingSideID);
607 static int dissect_receivingSideID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
608 return dissect_inap_LegType(TRUE, tvb, offset, pinfo, tree, hf_inap_receivingSideID);
612 static const value_string inap_LegID_vals[] = {
613 { 0, "sendingSideID" },
614 { 1, "receivingSideID" },
618 static const ber_choice_t LegID_choice[] = {
619 { 0, BER_CLASS_CON, 0, 0, dissect_sendingSideID_impl },
620 { 1, BER_CLASS_CON, 1, 0, dissect_receivingSideID_impl },
625 dissect_inap_LegID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
626 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
627 LegID_choice, hf_index, ett_inap_LegID,
632 static int dissect_legID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
633 return dissect_inap_LegID(TRUE, tvb, offset, pinfo, tree, hf_inap_legID);
635 static int dissect_heldLegID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
636 return dissect_inap_LegID(TRUE, tvb, offset, pinfo, tree, hf_inap_heldLegID);
638 static int dissect_legToBeReleased_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
639 return dissect_inap_LegID(TRUE, tvb, offset, pinfo, tree, hf_inap_legToBeReleased);
641 static int dissect_partyToCharge_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
642 return dissect_inap_LegID(TRUE, tvb, offset, pinfo, tree, hf_inap_partyToCharge);
646 static const value_string inap_LegStatus_vals[] = {
648 { 1, "unconnected" },
650 { 3, "interacting" },
656 dissect_inap_LegStatus(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
657 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
662 static int dissect_legStatus_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
663 return dissect_inap_LegStatus(TRUE, tvb, offset, pinfo, tree, hf_inap_legStatus);
667 static const ber_sequence_t LegInformation_sequence[] = {
668 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
669 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_legStatus_impl },
674 dissect_inap_LegInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
675 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
676 LegInformation_sequence, hf_index, ett_inap_LegInformation);
680 static int dissect_CallPartyHandlingResultsArg_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
681 return dissect_inap_LegInformation(FALSE, tvb, offset, pinfo, tree, hf_inap_CallPartyHandlingResultsArg_item);
685 static const ber_sequence_t CallPartyHandlingResultsArg_sequence_of[1] = {
686 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_CallPartyHandlingResultsArg_item },
690 dissect_inap_CallPartyHandlingResultsArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
691 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
692 CallPartyHandlingResultsArg_sequence_of, hf_index, ett_inap_CallPartyHandlingResultsArg);
698 static const ber_sequence_t ChangePartiesArg_sequence[] = {
699 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callID_impl },
700 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_targetCallID_impl },
701 { BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_legToBeConnectedID_impl },
706 dissect_inap_ChangePartiesArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
707 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
708 ChangePartiesArg_sequence, hf_index, ett_inap_ChangePartiesArg);
714 static const ber_sequence_t DetachArg_sequence[] = {
715 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_legToBeDetached_impl },
716 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationidentifier_impl },
721 dissect_inap_DetachArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
722 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
723 DetachArg_sequence, hf_index, ett_inap_DetachArg);
729 static const ber_sequence_t HoldCallPartyConnectionArg_sequence[] = {
730 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callID_impl },
731 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
736 dissect_inap_HoldCallPartyConnectionArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
737 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
738 HoldCallPartyConnectionArg_sequence, hf_index, ett_inap_HoldCallPartyConnectionArg);
744 static const ber_sequence_t ReconnectArg_sequence[] = {
745 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callID_impl },
746 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_heldLegID_impl },
751 dissect_inap_ReconnectArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
752 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
753 ReconnectArg_sequence, hf_index, ett_inap_ReconnectArg);
761 dissect_inap_Cause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
762 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
767 static int dissect_releaseCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
768 return dissect_inap_Cause(TRUE, tvb, offset, pinfo, tree, hf_inap_releaseCause);
770 static int dissect_busyCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
771 return dissect_inap_Cause(TRUE, tvb, offset, pinfo, tree, hf_inap_busyCause);
773 static int dissect_initialCallSegment(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
774 return dissect_inap_Cause(FALSE, tvb, offset, pinfo, tree, hf_inap_initialCallSegment);
776 static int dissect_failureCause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
777 return dissect_inap_Cause(TRUE, tvb, offset, pinfo, tree, hf_inap_failureCause);
779 static int dissect_releaseCauseValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
780 return dissect_inap_Cause(TRUE, tvb, offset, pinfo, tree, hf_inap_releaseCauseValue);
784 static const ber_sequence_t ReleaseCallPartyConnectionArg_sequence[] = {
785 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legToBeReleased_impl },
786 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callID_impl },
787 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
792 dissect_inap_ReleaseCallPartyConnectionArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
793 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
794 ReleaseCallPartyConnectionArg_sequence, hf_index, ett_inap_ReleaseCallPartyConnectionArg);
802 dissect_inap_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
803 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
808 static int dissect_type(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
809 return dissect_inap_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_inap_type);
811 static int dissect_trunkGroupID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
812 return dissect_inap_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_inap_trunkGroupID);
814 static int dissect_privateFacilityID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
815 return dissect_inap_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_inap_privateFacilityID);
817 static int dissect_facilityGroupMemberID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
818 return dissect_inap_INTEGER(TRUE, tvb, offset, pinfo, tree, hf_inap_facilityGroupMemberID);
822 static const value_string inap_T_criticality_vals[] = {
830 dissect_inap_T_criticality(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
831 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
836 static int dissect_criticality(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
837 return dissect_inap_T_criticality(FALSE, tvb, offset, pinfo, tree, hf_inap_criticality);
841 static const ber_sequence_t Extensions_item_sequence[] = {
842 { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_type },
843 { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_criticality },
844 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_value_impl },
849 dissect_inap_Extensions_item(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
850 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
851 Extensions_item_sequence, hf_index, ett_inap_Extensions_item);
855 static int dissect_Extensions_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
856 return dissect_inap_Extensions_item(FALSE, tvb, offset, pinfo, tree, hf_inap_Extensions_item);
860 static const ber_sequence_t Extensions_sequence_of[1] = {
861 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_Extensions_item },
865 dissect_inap_Extensions(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
866 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
867 Extensions_sequence_of, hf_index, ett_inap_Extensions);
871 static int dissect_extensions_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
872 return dissect_inap_Extensions(TRUE, tvb, offset, pinfo, tree, hf_inap_extensions);
878 dissect_inap_SFBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
879 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
884 static int dissect_sFBillingChargingCharacteristics_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
885 return dissect_inap_SFBillingChargingCharacteristics(TRUE, tvb, offset, pinfo, tree, hf_inap_sFBillingChargingCharacteristics);
891 dissect_inap_Integer4(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
892 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
897 static int dissect_connectTime_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
898 return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_connectTime);
900 static int dissect_counterValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
901 return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_counterValue);
903 static int dissect_numberOfCalls_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
904 return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_numberOfCalls);
906 static int dissect_elementaryMessageID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
907 return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_elementaryMessageID);
909 static int dissect_elementaryMessageIDs_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
910 return dissect_inap_Integer4(FALSE, tvb, offset, pinfo, tree, hf_inap_elementaryMessageIDs_item);
912 static int dissect_callConnectedElapsedTimeValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
913 return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_callConnectedElapsedTimeValue);
915 static int dissect_toneID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
916 return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_toneID);
918 static int dissect_tone_duration_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
919 return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_tone_duration);
921 static int dissect_integer_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
922 return dissect_inap_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_integer);
928 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_) {
929 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
930 pinfo, tree, tvb, offset, hf_index,
935 static int dissect_messageContent_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
936 return dissect_inap_IA5String_SIZE_minMessageContentLength_maxMessageContentLength(TRUE, tvb, offset, pinfo, tree, hf_inap_messageContent);
942 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_) {
943 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
948 static int dissect_attributes_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
949 return dissect_inap_OCTET_STRING_SIZE_minAttributesLength_maxAttributesLength(TRUE, tvb, offset, pinfo, tree, hf_inap_attributes);
953 static const ber_sequence_t T_text_sequence[] = {
954 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_messageContent_impl },
955 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_attributes_impl },
960 dissect_inap_T_text(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
961 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
962 T_text_sequence, hf_index, ett_inap_T_text);
966 static int dissect_text_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
967 return dissect_inap_T_text(TRUE, tvb, offset, pinfo, tree, hf_inap_text);
971 static const ber_sequence_t SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4_sequence_of[1] = {
972 { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_elementaryMessageIDs_item },
976 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_) {
977 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
978 SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4_sequence_of, hf_index, ett_inap_SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4);
982 static int dissect_elementaryMessageIDs_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
983 return dissect_inap_SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4(TRUE, tvb, offset, pinfo, tree, hf_inap_elementaryMessageIDs);
989 dissect_inap_Digits(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
990 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
995 static int dissect_prefix_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
996 return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_prefix);
998 static int dissect_digitsResponse_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
999 return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_digitsResponse);
1001 static int dissect_dialledNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1002 return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_dialledNumber);
1004 static int dissect_callingLineID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1005 return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_callingLineID);
1007 static int dissect_calledAddressValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1008 return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_calledAddressValue);
1010 static int dissect_callingAddressValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1011 return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_callingAddressValue);
1013 static int dissect_lineID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1014 return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_lineID);
1016 static int dissect_number_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1017 return dissect_inap_Digits(TRUE, tvb, offset, pinfo, tree, hf_inap_number);
1023 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_) {
1024 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1029 static int dissect_time_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1030 return dissect_inap_OCTET_STRING_SIZE_2(TRUE, tvb, offset, pinfo, tree, hf_inap_time);
1036 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_) {
1037 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1042 static int dissect_date2_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1043 return dissect_inap_OCTET_STRING_SIZE_3(TRUE, tvb, offset, pinfo, tree, hf_inap_date2);
1049 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_) {
1050 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1055 static int dissect_price_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1056 return dissect_inap_OCTET_STRING_SIZE_4(TRUE, tvb, offset, pinfo, tree, hf_inap_price);
1060 static const value_string inap_VariablePart_vals[] = {
1069 static const ber_choice_t VariablePart_choice[] = {
1070 { 0, BER_CLASS_CON, 0, 0, dissect_integer_impl },
1071 { 1, BER_CLASS_CON, 1, 0, dissect_number_impl },
1072 { 2, BER_CLASS_CON, 2, 0, dissect_time_impl },
1073 { 3, BER_CLASS_CON, 3, 0, dissect_date2_impl },
1074 { 4, BER_CLASS_CON, 4, 0, dissect_price_impl },
1075 { 0, 0, 0, 0, NULL }
1079 dissect_inap_VariablePart(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1080 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1081 VariablePart_choice, hf_index, ett_inap_VariablePart,
1086 static int dissect_variableParts_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1087 return dissect_inap_VariablePart(FALSE, tvb, offset, pinfo, tree, hf_inap_variableParts_item);
1091 static const ber_sequence_t SEQUENCE_SIZE_1_5_OF_VariablePart_sequence_of[1] = {
1092 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_variableParts_item },
1096 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_) {
1097 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
1098 SEQUENCE_SIZE_1_5_OF_VariablePart_sequence_of, hf_index, ett_inap_SEQUENCE_SIZE_1_5_OF_VariablePart);
1102 static int dissect_variableParts_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1103 return dissect_inap_SEQUENCE_SIZE_1_5_OF_VariablePart(TRUE, tvb, offset, pinfo, tree, hf_inap_variableParts);
1107 static const ber_sequence_t T_variableMessage_sequence[] = {
1108 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_elementaryMessageID_impl },
1109 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_variableParts_impl },
1114 dissect_inap_T_variableMessage(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1115 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1116 T_variableMessage_sequence, hf_index, ett_inap_T_variableMessage);
1120 static int dissect_variableMessage_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1121 return dissect_inap_T_variableMessage(TRUE, tvb, offset, pinfo, tree, hf_inap_variableMessage);
1125 static const value_string inap_MessageID_vals[] = {
1126 { 0, "elementaryMessageID" },
1128 { 29, "elementaryMessageIDs" },
1129 { 30, "variableMessage" },
1133 static const ber_choice_t MessageID_choice[] = {
1134 { 0, BER_CLASS_CON, 0, 0, dissect_elementaryMessageID_impl },
1135 { 1, BER_CLASS_CON, 1, 0, dissect_text_impl },
1136 { 29, BER_CLASS_CON, 29, 0, dissect_elementaryMessageIDs_impl },
1137 { 30, BER_CLASS_CON, 30, 0, dissect_variableMessage_impl },
1138 { 0, 0, 0, 0, NULL }
1142 dissect_inap_MessageID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1143 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1144 MessageID_choice, hf_index, ett_inap_MessageID,
1149 static int dissect_messageID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1150 return dissect_inap_MessageID(TRUE, tvb, offset, pinfo, tree, hf_inap_messageID);
1156 dissect_inap_INTEGER_1_127(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1157 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1162 static int dissect_minimumNbOfDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1163 return dissect_inap_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_inap_minimumNbOfDigits);
1165 static int dissect_maximumNbOfDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1166 return dissect_inap_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_inap_maximumNbOfDigits);
1168 static int dissect_firstDigitTimeOut_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1169 return dissect_inap_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_inap_firstDigitTimeOut);
1171 static int dissect_interDigitTimeOut_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1172 return dissect_inap_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_inap_interDigitTimeOut);
1174 static int dissect_numberOfRepetitions_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1175 return dissect_inap_INTEGER_1_127(TRUE, tvb, offset, pinfo, tree, hf_inap_numberOfRepetitions);
1181 dissect_inap_INTEGER_0_32767(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1182 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1187 static int dissect_duration3_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1188 return dissect_inap_INTEGER_0_32767(TRUE, tvb, offset, pinfo, tree, hf_inap_duration3);
1190 static int dissect_interval_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1191 return dissect_inap_INTEGER_0_32767(TRUE, tvb, offset, pinfo, tree, hf_inap_interval);
1195 static const ber_sequence_t InbandInfo_sequence[] = {
1196 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_messageID_impl },
1197 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_numberOfRepetitions_impl },
1198 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_duration3_impl },
1199 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_interval_impl },
1204 dissect_inap_InbandInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1205 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1206 InbandInfo_sequence, hf_index, ett_inap_InbandInfo);
1210 static int dissect_inbandInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1211 return dissect_inap_InbandInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_inbandInfo);
1215 static const ber_sequence_t Tone_sequence[] = {
1216 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_toneID_impl },
1217 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_tone_duration_impl },
1222 dissect_inap_Tone(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1223 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1224 Tone_sequence, hf_index, ett_inap_Tone);
1228 static int dissect_tone_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1229 return dissect_inap_Tone(TRUE, tvb, offset, pinfo, tree, hf_inap_tone);
1235 dissect_inap_DisplayInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1236 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
1237 pinfo, tree, tvb, offset, hf_index,
1242 static int dissect_displayInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1243 return dissect_inap_DisplayInformation(TRUE, tvb, offset, pinfo, tree, hf_inap_displayInformation);
1247 static const value_string inap_InformationToSend_vals[] = {
1248 { 0, "inbandInfo" },
1250 { 2, "displayInformation" },
1254 static const ber_choice_t InformationToSend_choice[] = {
1255 { 0, BER_CLASS_CON, 0, 0, dissect_inbandInfo_impl },
1256 { 1, BER_CLASS_CON, 1, 0, dissect_tone_impl },
1257 { 2, BER_CLASS_CON, 2, 0, dissect_displayInformation_impl },
1258 { 0, 0, 0, 0, NULL }
1262 dissect_inap_InformationToSend(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1263 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1264 InformationToSend_choice, hf_index, ett_inap_InformationToSend,
1269 static int dissect_informationToSend_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1270 return dissect_inap_InformationToSend(TRUE, tvb, offset, pinfo, tree, hf_inap_informationToSend);
1276 dissect_inap_MaximumNumberOfCounters(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1277 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1282 static int dissect_maximumNumberOfCounters_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1283 return dissect_inap_MaximumNumberOfCounters(TRUE, tvb, offset, pinfo, tree, hf_inap_maximumNumberOfCounters);
1287 static const ber_sequence_t FilteredCallTreatment_sequence[] = {
1288 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_sFBillingChargingCharacteristics_impl },
1289 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_informationToSend_impl },
1290 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_maximumNumberOfCounters_impl },
1291 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
1296 dissect_inap_FilteredCallTreatment(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1297 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1298 FilteredCallTreatment_sequence, hf_index, ett_inap_FilteredCallTreatment);
1302 static int dissect_filteredCallTreatment_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1303 return dissect_inap_FilteredCallTreatment(TRUE, tvb, offset, pinfo, tree, hf_inap_filteredCallTreatment);
1309 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_) {
1310 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1315 static int dissect_interval1_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1316 return dissect_inap_INTEGER_M1_32000(TRUE, tvb, offset, pinfo, tree, hf_inap_interval1);
1320 static const value_string inap_FilteringCharacteristics_vals[] = {
1322 { 1, "numberOfCalls" },
1326 static const ber_choice_t FilteringCharacteristics_choice[] = {
1327 { 0, BER_CLASS_CON, 0, 0, dissect_interval1_impl },
1328 { 1, BER_CLASS_CON, 1, 0, dissect_numberOfCalls_impl },
1329 { 0, 0, 0, 0, NULL }
1333 dissect_inap_FilteringCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1334 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1335 FilteringCharacteristics_choice, hf_index, ett_inap_FilteringCharacteristics,
1340 static int dissect_filteringCharacteristics_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1341 return dissect_inap_FilteringCharacteristics(TRUE, tvb, offset, pinfo, tree, hf_inap_filteringCharacteristics);
1347 dissect_inap_Duration(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1348 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1353 static int dissect_monitorDuration_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1354 return dissect_inap_Duration(TRUE, tvb, offset, pinfo, tree, hf_inap_monitorDuration);
1356 static int dissect_duration_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1357 return dissect_inap_Duration(TRUE, tvb, offset, pinfo, tree, hf_inap_duration);
1363 dissect_inap_DateAndTime(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1364 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1369 static int dissect_startTime_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1370 return dissect_inap_DateAndTime(TRUE, tvb, offset, pinfo, tree, hf_inap_startTime);
1372 static int dissect_stopTime_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1373 return dissect_inap_DateAndTime(TRUE, tvb, offset, pinfo, tree, hf_inap_stopTime);
1375 static int dissect_callStopTimeValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1376 return dissect_inap_DateAndTime(TRUE, tvb, offset, pinfo, tree, hf_inap_callStopTimeValue);
1380 static const value_string inap_FilteringTimeOut_vals[] = {
1386 static const ber_choice_t FilteringTimeOut_choice[] = {
1387 { 0, BER_CLASS_CON, 0, 0, dissect_duration_impl },
1388 { 1, BER_CLASS_CON, 1, 0, dissect_stopTime_impl },
1389 { 0, 0, 0, 0, NULL }
1393 dissect_inap_FilteringTimeOut(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1394 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1395 FilteringTimeOut_choice, hf_index, ett_inap_FilteringTimeOut,
1400 static int dissect_filteringTimeOut_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1401 return dissect_inap_FilteringTimeOut(TRUE, tvb, offset, pinfo, tree, hf_inap_filteringTimeOut);
1407 dissect_inap_ServiceKey(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1408 offset = dissect_inap_Integer4(implicit_tag, tvb, offset, pinfo, tree, hf_index);
1412 static int dissect_serviceKey_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1413 return dissect_inap_ServiceKey(TRUE, tvb, offset, pinfo, tree, hf_inap_serviceKey);
1419 dissect_inap_LocationNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1420 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1425 static int dissect_locationNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1426 return dissect_inap_LocationNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_locationNumber);
1430 static const ber_sequence_t T_addressAndService_sequence[] = {
1431 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_calledAddressValue_impl },
1432 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_serviceKey_impl },
1433 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingAddressValue_impl },
1434 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationNumber_impl },
1439 dissect_inap_T_addressAndService(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1440 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1441 T_addressAndService_sequence, hf_index, ett_inap_T_addressAndService);
1445 static int dissect_addressAndService_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1446 return dissect_inap_T_addressAndService(TRUE, tvb, offset, pinfo, tree, hf_inap_addressAndService);
1450 static const value_string inap_FilteringCriteria_vals[] = {
1451 { 0, "dialledNumber" },
1452 { 1, "callingLineID" },
1453 { 2, "serviceKey" },
1454 { 30, "addressAndService" },
1458 static const ber_choice_t FilteringCriteria_choice[] = {
1459 { 0, BER_CLASS_CON, 0, 0, dissect_dialledNumber_impl },
1460 { 1, BER_CLASS_CON, 1, 0, dissect_callingLineID_impl },
1461 { 2, BER_CLASS_CON, 2, 0, dissect_serviceKey_impl },
1462 { 30, BER_CLASS_CON, 30, 0, dissect_addressAndService_impl },
1463 { 0, 0, 0, 0, NULL }
1467 dissect_inap_FilteringCriteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1468 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1469 FilteringCriteria_choice, hf_index, ett_inap_FilteringCriteria,
1474 static int dissect_filteringCriteria_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1475 return dissect_inap_FilteringCriteria(TRUE, tvb, offset, pinfo, tree, hf_inap_filteringCriteria);
1479 static const ber_sequence_t ActivateServiceFilteringArg_sequence[] = {
1480 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_filteredCallTreatment_impl },
1481 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_filteringCharacteristics_impl },
1482 { BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_filteringTimeOut_impl },
1483 { BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_filteringCriteria_impl },
1484 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_startTime_impl },
1485 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
1490 dissect_inap_ActivateServiceFilteringArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1491 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1492 ActivateServiceFilteringArg_sequence, hf_index, ett_inap_ActivateServiceFilteringArg);
1498 static const value_string inap_T_messageType_vals[] = {
1500 { 1, "notification" },
1506 dissect_inap_T_messageType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1507 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1512 static int dissect_messageType_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1513 return dissect_inap_T_messageType(TRUE, tvb, offset, pinfo, tree, hf_inap_messageType);
1517 static const value_string inap_T_dpAssignment_vals[] = {
1518 { 0, "individualLine" },
1519 { 1, "groupBased" },
1520 { 2, "officeBased" },
1526 dissect_inap_T_dpAssignment(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1527 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1532 static int dissect_dpAssignment_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1533 return dissect_inap_T_dpAssignment(TRUE, tvb, offset, pinfo, tree, hf_inap_dpAssignment);
1537 static const ber_sequence_t MiscCallInfo_sequence[] = {
1538 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_messageType_impl },
1539 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dpAssignment_impl },
1544 dissect_inap_MiscCallInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1545 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1546 MiscCallInfo_sequence, hf_index, ett_inap_MiscCallInfo);
1550 static int dissect_miscCallInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1551 return dissect_inap_MiscCallInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_miscCallInfo);
1555 static const value_string inap_TriggerType_vals[] = {
1556 { 0, "featureActivation" },
1557 { 1, "verticalServiceCode" },
1558 { 2, "customizedAccess" },
1559 { 3, "customizedIntercom" },
1560 { 12, "emergencyService" },
1562 { 14, "sharedIOTrunk" },
1563 { 17, "offHookDelay" },
1564 { 18, "channelSetupPRI" },
1565 { 25, "tNoAnswer" },
1567 { 27, "oCalledPartyBusy" },
1568 { 29, "oNoAnswer" },
1569 { 30, "originationAttemptAuthorized" },
1571 { 32, "oDisconnect" },
1572 { 33, "termAttemptAuthorized" },
1574 { 35, "tDisconnect" },
1580 dissect_inap_TriggerType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1581 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1586 static int dissect_triggerType_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1587 return dissect_inap_TriggerType(TRUE, tvb, offset, pinfo, tree, hf_inap_triggerType);
1591 static const ber_sequence_t ServiceAddressInformation_sequence[] = {
1592 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceKey_impl },
1593 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_miscCallInfo_impl },
1594 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_triggerType_impl },
1599 dissect_inap_ServiceAddressInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1600 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1601 ServiceAddressInformation_sequence, hf_index, ett_inap_ServiceAddressInformation);
1605 static int dissect_serviceAddressInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1606 return dissect_inap_ServiceAddressInformation(TRUE, tvb, offset, pinfo, tree, hf_inap_serviceAddressInformation);
1612 dissect_inap_BearerCap(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1613 #line 105 "inap.cnf"
1615 tvbuff_t *parameter_tvb;
1617 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1624 dissect_q931_bearer_capability_ie(parameter_tvb, 0, tvb_length_remaining(parameter_tvb,0), tree);
1630 static int dissect_bearerCap_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1631 return dissect_inap_BearerCap(TRUE, tvb, offset, pinfo, tree, hf_inap_bearerCap);
1637 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_) {
1638 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1643 static int dissect_tmr_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1644 return dissect_inap_OCTET_STRING_SIZE_1(TRUE, tvb, offset, pinfo, tree, hf_inap_tmr);
1648 static const value_string inap_BearerCapability_vals[] = {
1654 static const ber_choice_t BearerCapability_choice[] = {
1655 { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_bearerCap_impl },
1656 { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_tmr_impl },
1657 { 0, 0, 0, 0, NULL }
1661 dissect_inap_BearerCapability(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1662 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1663 BearerCapability_choice, hf_index, ett_inap_BearerCapability,
1668 static int dissect_bearerCapability_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1669 return dissect_inap_BearerCapability(TRUE, tvb, offset, pinfo, tree, hf_inap_bearerCapability);
1675 dissect_inap_CalledPartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1677 tvbuff_t *parameter_tvb;
1679 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1686 dissect_isup_called_party_number_parameter(parameter_tvb, tree, NULL);
1692 static int dissect_dialledDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1693 return dissect_inap_CalledPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_dialledDigits);
1695 static int dissect_calledPartyNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1696 return dissect_inap_CalledPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_calledPartyNumber);
1698 static int dissect_destinationNumberRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1699 return dissect_inap_CalledPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_destinationNumberRoutingAddress);
1701 static int dissect_DestinationRoutingAddress_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1702 return dissect_inap_CalledPartyNumber(FALSE, tvb, offset, pinfo, tree, hf_inap_DestinationRoutingAddress_item);
1704 static int dissect_calledPartynumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1705 return dissect_inap_CalledPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_calledPartynumber);
1711 dissect_inap_CallingPartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1713 tvbuff_t *parameter_tvb;
1715 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1722 dissect_isup_calling_party_number_parameter(parameter_tvb, tree, NULL);
1729 static int dissect_callingPartyNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1730 return dissect_inap_CallingPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_callingPartyNumber);
1736 dissect_inap_CallingPartysCategory(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1737 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1742 static int dissect_callingPartysCategory_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1743 return dissect_inap_CallingPartysCategory(TRUE, tvb, offset, pinfo, tree, hf_inap_callingPartysCategory);
1749 dissect_inap_IPSSPCapabilities(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1750 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1755 static int dissect_iPSSPCapabilities_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1756 return dissect_inap_IPSSPCapabilities(TRUE, tvb, offset, pinfo, tree, hf_inap_iPSSPCapabilities);
1762 dissect_inap_IPAvailable(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1763 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1768 static int dissect_iPAvailable_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1769 return dissect_inap_IPAvailable(TRUE, tvb, offset, pinfo, tree, hf_inap_iPAvailable);
1775 dissect_inap_ISDNAccessRelatedInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1776 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1781 static int dissect_iSDNAccessRelatedInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1782 return dissect_inap_ISDNAccessRelatedInformation(TRUE, tvb, offset, pinfo, tree, hf_inap_iSDNAccessRelatedInformation);
1786 static const value_string inap_CGEncountered_vals[] = {
1787 { 0, "noCGencountered" },
1788 { 1, "manualCGencountered" },
1789 { 2, "scpOverload" },
1795 dissect_inap_CGEncountered(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1796 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1801 static int dissect_cGEncountered_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1802 return dissect_inap_CGEncountered(TRUE, tvb, offset, pinfo, tree, hf_inap_cGEncountered);
1808 dissect_inap_ServiceProfileIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1809 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1814 static int dissect_serviceProfileIdentifier_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1815 return dissect_inap_ServiceProfileIdentifier(TRUE, tvb, offset, pinfo, tree, hf_inap_serviceProfileIdentifier);
1819 static const value_string inap_TerminalType_vals[] = {
1824 { 4, "isdnNoDtmf" },
1831 dissect_inap_TerminalType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1832 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1837 static int dissect_terminalType_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1838 return dissect_inap_TerminalType(TRUE, tvb, offset, pinfo, tree, hf_inap_terminalType);
1844 dissect_inap_ChargeNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1845 offset = dissect_inap_LocationNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
1849 static int dissect_chargeNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1850 return dissect_inap_ChargeNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_chargeNumber);
1856 dissect_inap_ServingAreaID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1857 offset = dissect_inap_LocationNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
1861 static int dissect_servingAreaID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1862 return dissect_inap_ServingAreaID(TRUE, tvb, offset, pinfo, tree, hf_inap_servingAreaID);
1866 static const ber_sequence_t DpSpecificCommonParameters_sequence[] = {
1867 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_serviceAddressInformation_impl },
1868 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_bearerCapability_impl },
1869 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyNumber_impl },
1870 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyNumber_impl },
1871 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartysCategory_impl },
1872 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iPSSPCapabilities_impl },
1873 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iPAvailable_impl },
1874 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iSDNAccessRelatedInformation_impl },
1875 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cGEncountered_impl },
1876 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationNumber_impl },
1877 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceProfileIdentifier_impl },
1878 { BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_terminalType_impl },
1879 { BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
1880 { BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_chargeNumber_impl },
1881 { BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_servingAreaID_impl },
1886 dissect_inap_DpSpecificCommonParameters(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1887 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1888 DpSpecificCommonParameters_sequence, hf_index, ett_inap_DpSpecificCommonParameters);
1892 static int dissect_dpSpecificCommonParameters_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1893 return dissect_inap_DpSpecificCommonParameters(TRUE, tvb, offset, pinfo, tree, hf_inap_dpSpecificCommonParameters);
1899 dissect_inap_CallingPartyBusinessGroupID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1900 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1905 static int dissect_callingPartyBusinessGroupID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1906 return dissect_inap_CallingPartyBusinessGroupID(TRUE, tvb, offset, pinfo, tree, hf_inap_callingPartyBusinessGroupID);
1912 dissect_inap_CallingPartySubaddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1913 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1918 static int dissect_callingPartySubaddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1919 return dissect_inap_CallingPartySubaddress(TRUE, tvb, offset, pinfo, tree, hf_inap_callingPartySubaddress);
1923 static const value_string inap_FacilityGroup_vals[] = {
1924 { 0, "trunkGroupID" },
1925 { 1, "privateFacilityID" },
1927 { 3, "routeIndex" },
1931 static const ber_choice_t FacilityGroup_choice[] = {
1932 { 0, BER_CLASS_CON, 0, 0, dissect_trunkGroupID_impl },
1933 { 1, BER_CLASS_CON, 1, 0, dissect_privateFacilityID_impl },
1934 { 2, BER_CLASS_CON, 2, 0, dissect_huntGroup_impl },
1935 { 3, BER_CLASS_CON, 3, 0, dissect_routeIndex_impl },
1936 { 0, 0, 0, 0, NULL }
1940 dissect_inap_FacilityGroup(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1941 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1942 FacilityGroup_choice, hf_index, ett_inap_FacilityGroup,
1947 static int dissect_callingFacilityGroup_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1948 return dissect_inap_FacilityGroup(TRUE, tvb, offset, pinfo, tree, hf_inap_callingFacilityGroup);
1950 static int dissect_calledFacilityGroup_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1951 return dissect_inap_FacilityGroup(TRUE, tvb, offset, pinfo, tree, hf_inap_calledFacilityGroup);
1953 static int dissect_facilityGroupID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1954 return dissect_inap_FacilityGroup(TRUE, tvb, offset, pinfo, tree, hf_inap_facilityGroupID);
1960 dissect_inap_FacilityGroupMember(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1961 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1966 static int dissect_callingFacilityGroupMember_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1967 return dissect_inap_FacilityGroupMember(TRUE, tvb, offset, pinfo, tree, hf_inap_callingFacilityGroupMember);
1969 static int dissect_calledFacilityGroupMember_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1970 return dissect_inap_FacilityGroupMember(TRUE, tvb, offset, pinfo, tree, hf_inap_calledFacilityGroupMember);
1976 dissect_inap_OriginalCalledPartyID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
1977 #line 135 "inap.cnf"
1979 tvbuff_t *parameter_tvb;
1981 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1987 dissect_isup_original_called_number_parameter(parameter_tvb, tree, NULL);
1993 static int dissect_originalCalledPartyID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
1994 return dissect_inap_OriginalCalledPartyID(TRUE, tvb, offset, pinfo, tree, hf_inap_originalCalledPartyID);
2000 dissect_inap_RedirectingPartyID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2001 #line 149 "inap.cnf"
2003 tvbuff_t *parameter_tvb;
2005 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2011 dissect_isup_redirecting_number_parameter(parameter_tvb, tree, NULL);
2018 static int dissect_redirectingPartyID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2019 return dissect_inap_RedirectingPartyID(TRUE, tvb, offset, pinfo, tree, hf_inap_redirectingPartyID);
2025 dissect_inap_RedirectionInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2026 #line 120 "inap.cnf"
2028 tvbuff_t *parameter_tvb;
2030 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2037 dissect_isup_redirection_information_parameter(parameter_tvb, tree, NULL);
2043 static int dissect_redirectionInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2044 return dissect_inap_RedirectionInformation(TRUE, tvb, offset, pinfo, tree, hf_inap_redirectionInformation);
2048 static const ber_sequence_t RouteList_sequence_of[1] = {
2049 { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_RouteList_item },
2053 dissect_inap_RouteList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2054 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2055 RouteList_sequence_of, hf_index, ett_inap_RouteList);
2059 static int dissect_routeList_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2060 return dissect_inap_RouteList(TRUE, tvb, offset, pinfo, tree, hf_inap_routeList);
2066 dissect_inap_TravellingClassMark(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2067 offset = dissect_inap_LocationNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
2071 static int dissect_travellingClassMark_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2072 return dissect_inap_TravellingClassMark(TRUE, tvb, offset, pinfo, tree, hf_inap_travellingClassMark);
2078 dissect_inap_FeatureCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2079 offset = dissect_inap_LocationNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
2083 static int dissect_featureCode_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2084 return dissect_inap_FeatureCode(TRUE, tvb, offset, pinfo, tree, hf_inap_featureCode);
2090 dissect_inap_AccessCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2091 offset = dissect_inap_LocationNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
2095 static int dissect_accessCode_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2096 return dissect_inap_AccessCode(TRUE, tvb, offset, pinfo, tree, hf_inap_accessCode);
2102 dissect_inap_Carrier(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2103 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2108 static int dissect_carrier_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2109 return dissect_inap_Carrier(TRUE, tvb, offset, pinfo, tree, hf_inap_carrier);
2113 static const ber_sequence_t AnalysedInformationArg_sequence[] = {
2114 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
2115 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dialledDigits_impl },
2116 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
2117 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
2118 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_callingFacilityGroup_impl },
2119 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingFacilityGroupMember_impl },
2120 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
2121 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_prefix_impl },
2122 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
2123 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
2124 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeList_impl },
2125 { BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
2126 { BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2127 { BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_featureCode_impl },
2128 { BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_accessCode_impl },
2129 { BER_CLASS_CON, 15, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
2134 dissect_inap_AnalysedInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2135 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2136 AnalysedInformationArg_sequence, hf_index, ett_inap_AnalysedInformationArg);
2142 static const ber_sequence_t DestinationRoutingAddress_sequence_of[1] = {
2143 { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_DestinationRoutingAddress_item },
2147 dissect_inap_DestinationRoutingAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2148 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2149 DestinationRoutingAddress_sequence_of, hf_index, ett_inap_DestinationRoutingAddress);
2153 static int dissect_destinationRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2154 return dissect_inap_DestinationRoutingAddress(TRUE, tvb, offset, pinfo, tree, hf_inap_destinationRoutingAddress);
2160 dissect_inap_AlertingPattern(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2161 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2166 static int dissect_alertingPattern_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2167 return dissect_inap_AlertingPattern(TRUE, tvb, offset, pinfo, tree, hf_inap_alertingPattern);
2171 static const ber_sequence_t AnalyseInformationArg_sequence[] = {
2172 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_destinationRoutingAddress_impl },
2173 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alertingPattern_impl },
2174 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iSDNAccessRelatedInformation_impl },
2175 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
2176 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2177 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyNumber_impl },
2178 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartysCategory_impl },
2179 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyNumber_impl },
2180 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_chargeNumber_impl },
2181 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
2182 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
2187 dissect_inap_AnalyseInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2188 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2189 AnalyseInformationArg_sequence, hf_index, ett_inap_AnalyseInformationArg);
2197 dissect_inap_AChBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2198 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2203 static int dissect_aChBillingChargingCharacteristics_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2204 return dissect_inap_AChBillingChargingCharacteristics(TRUE, tvb, offset, pinfo, tree, hf_inap_aChBillingChargingCharacteristics);
2208 static const ber_sequence_t ApplyChargingArg_sequence[] = {
2209 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_aChBillingChargingCharacteristics_impl },
2210 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_partyToCharge_impl },
2211 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2216 dissect_inap_ApplyChargingArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2217 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2218 ApplyChargingArg_sequence, hf_index, ett_inap_ApplyChargingArg);
2226 dissect_inap_CallResult(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2227 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2236 dissect_inap_ApplyChargingReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2237 offset = dissect_inap_CallResult(implicit_tag, tvb, offset, pinfo, tree, hf_index);
2245 dissect_inap_CorrelationID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2246 offset = dissect_inap_Digits(implicit_tag, tvb, offset, pinfo, tree, hf_index);
2250 static int dissect_correlationID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2251 return dissect_inap_CorrelationID(TRUE, tvb, offset, pinfo, tree, hf_inap_correlationID);
2253 static int dissect_bcsmEventCorrelationID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2254 return dissect_inap_CorrelationID(TRUE, tvb, offset, pinfo, tree, hf_inap_bcsmEventCorrelationID);
2258 static const ber_sequence_t AssistRequestInstructionsArg_sequence[] = {
2259 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
2260 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iPAvailable_impl },
2261 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iPSSPCapabilities_impl },
2262 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2267 dissect_inap_AssistRequestInstructionsArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2268 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2269 AssistRequestInstructionsArg_sequence, hf_index, ett_inap_AssistRequestInstructionsArg);
2275 static const value_string inap_EventTypeBCSM_vals[] = {
2276 { 1, "origAttemptAuthorized" },
2277 { 2, "collectedInfo" },
2278 { 3, "analysedInformation" },
2279 { 4, "routeSelectFailure" },
2280 { 5, "oCalledPartyBusy" },
2284 { 9, "oDisconnect" },
2286 { 12, "termAttemptAuthorized" },
2288 { 14, "tNoAnswer" },
2291 { 17, "tDisconnect" },
2298 dissect_inap_EventTypeBCSM(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2299 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2304 static int dissect_eventTypeBCSM_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2305 return dissect_inap_EventTypeBCSM(TRUE, tvb, offset, pinfo, tree, hf_inap_eventTypeBCSM);
2307 static int dissect_dpCriteria_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2308 return dissect_inap_EventTypeBCSM(TRUE, tvb, offset, pinfo, tree, hf_inap_dpCriteria);
2312 static const ber_sequence_t GapOnService_sequence[] = {
2313 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_serviceKey_impl },
2314 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dpCriteria_impl },
2319 dissect_inap_GapOnService(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2320 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2321 GapOnService_sequence, hf_index, ett_inap_GapOnService);
2325 static int dissect_gapOnService_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2326 return dissect_inap_GapOnService(TRUE, tvb, offset, pinfo, tree, hf_inap_gapOnService);
2330 static const ber_sequence_t T_calledAddressAndService_sequence[] = {
2331 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_calledAddressValue_impl },
2332 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_serviceKey_impl },
2337 dissect_inap_T_calledAddressAndService(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2338 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2339 T_calledAddressAndService_sequence, hf_index, ett_inap_T_calledAddressAndService);
2343 static int dissect_calledAddressAndService_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2344 return dissect_inap_T_calledAddressAndService(TRUE, tvb, offset, pinfo, tree, hf_inap_calledAddressAndService);
2348 static const ber_sequence_t T_callingAddressAndService_sequence[] = {
2349 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_callingAddressValue_impl },
2350 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_serviceKey_impl },
2351 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationNumber_impl },
2356 dissect_inap_T_callingAddressAndService(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2357 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2358 T_callingAddressAndService_sequence, hf_index, ett_inap_T_callingAddressAndService);
2362 static int dissect_callingAddressAndService_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2363 return dissect_inap_T_callingAddressAndService(TRUE, tvb, offset, pinfo, tree, hf_inap_callingAddressAndService);
2367 static const value_string inap_GapCriteria_vals[] = {
2368 { 0, "calledAddressValue" },
2369 { 2, "gapOnService" },
2370 { 29, "calledAddressAndService" },
2371 { 30, "callingAddressAndService" },
2375 static const ber_choice_t GapCriteria_choice[] = {
2376 { 0, BER_CLASS_CON, 0, 0, dissect_calledAddressValue_impl },
2377 { 2, BER_CLASS_CON, 2, 0, dissect_gapOnService_impl },
2378 { 29, BER_CLASS_CON, 29, 0, dissect_calledAddressAndService_impl },
2379 { 30, BER_CLASS_CON, 30, 0, dissect_callingAddressAndService_impl },
2380 { 0, 0, 0, 0, NULL }
2384 dissect_inap_GapCriteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2385 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2386 GapCriteria_choice, hf_index, ett_inap_GapCriteria,
2391 static int dissect_gapCriteria_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2392 return dissect_inap_GapCriteria(TRUE, tvb, offset, pinfo, tree, hf_inap_gapCriteria);
2398 dissect_inap_Interval(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2399 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2404 static int dissect_gapInterval_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2405 return dissect_inap_Interval(TRUE, tvb, offset, pinfo, tree, hf_inap_gapInterval);
2409 static const ber_sequence_t GapIndicators_sequence[] = {
2410 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_duration_impl },
2411 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gapInterval_impl },
2416 dissect_inap_GapIndicators(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2417 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2418 GapIndicators_sequence, hf_index, ett_inap_GapIndicators);
2422 static int dissect_gapIndicators_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2423 return dissect_inap_GapIndicators(TRUE, tvb, offset, pinfo, tree, hf_inap_gapIndicators);
2427 static const value_string inap_ControlType_vals[] = {
2428 { 0, "sCPOverloaded" },
2429 { 1, "manuallyInitiated" },
2430 { 2, "destinationOverload" },
2436 dissect_inap_ControlType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2437 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2442 static int dissect_controlType_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2443 return dissect_inap_ControlType(TRUE, tvb, offset, pinfo, tree, hf_inap_controlType);
2447 static const ber_sequence_t T_both_sequence[] = {
2448 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_informationToSend_impl },
2449 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
2454 dissect_inap_T_both(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2455 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2456 T_both_sequence, hf_index, ett_inap_T_both);
2460 static int dissect_both_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2461 return dissect_inap_T_both(TRUE, tvb, offset, pinfo, tree, hf_inap_both);
2465 static const value_string inap_GapTreatment_vals[] = {
2466 { 0, "informationToSend" },
2467 { 1, "releaseCause" },
2472 static const ber_choice_t GapTreatment_choice[] = {
2473 { 0, BER_CLASS_CON, 0, 0, dissect_informationToSend_impl },
2474 { 1, BER_CLASS_CON, 1, 0, dissect_releaseCause_impl },
2475 { 2, BER_CLASS_CON, 2, 0, dissect_both_impl },
2476 { 0, 0, 0, 0, NULL }
2480 dissect_inap_GapTreatment(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2481 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2482 GapTreatment_choice, hf_index, ett_inap_GapTreatment,
2487 static int dissect_gapTreatment_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2488 return dissect_inap_GapTreatment(TRUE, tvb, offset, pinfo, tree, hf_inap_gapTreatment);
2492 static const ber_sequence_t CallGapArg_sequence[] = {
2493 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_gapCriteria_impl },
2494 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gapIndicators_impl },
2495 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_controlType_impl },
2496 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_gapTreatment_impl },
2497 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2502 dissect_inap_CallGapArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2503 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2504 CallGapArg_sequence, hf_index, ett_inap_CallGapArg);
2510 static const value_string inap_RequestedInformationType_vals[] = {
2511 { 0, "callAttemptElapsedTime" },
2512 { 1, "callStopTime" },
2513 { 2, "callConnectedElapsedTime" },
2514 { 3, "calledAddress" },
2515 { 30, "releaseCause" },
2521 dissect_inap_RequestedInformationType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2522 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2527 static int dissect_RequestedInformationTypeList_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2528 return dissect_inap_RequestedInformationType(FALSE, tvb, offset, pinfo, tree, hf_inap_RequestedInformationTypeList_item);
2530 static int dissect_requestedInformationType_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2531 return dissect_inap_RequestedInformationType(TRUE, tvb, offset, pinfo, tree, hf_inap_requestedInformationType);
2535 static const ber_sequence_t RequestedInformationTypeList_sequence_of[1] = {
2536 { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_RequestedInformationTypeList_item },
2540 dissect_inap_RequestedInformationTypeList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2541 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2542 RequestedInformationTypeList_sequence_of, hf_index, ett_inap_RequestedInformationTypeList);
2546 static int dissect_requestedInformationTypeList_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2547 return dissect_inap_RequestedInformationTypeList(TRUE, tvb, offset, pinfo, tree, hf_inap_requestedInformationTypeList);
2551 static const ber_sequence_t CallInformationReportArg_sequence[] = {
2552 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_requestedInformationTypeList_impl },
2553 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
2554 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2559 dissect_inap_CallInformationReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2560 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2561 CallInformationReportArg_sequence, hf_index, ett_inap_CallInformationReportArg);
2567 static const ber_sequence_t CallInformationRequestArg_sequence[] = {
2568 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_requestedInformationTypeList_impl },
2569 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
2570 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2571 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
2576 dissect_inap_CallInformationRequestArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2577 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2578 CallInformationRequestArg_sequence, hf_index, ett_inap_CallInformationRequestArg);
2586 dissect_inap_InvokeID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2587 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2592 static int dissect_invokeID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2593 return dissect_inap_InvokeID(TRUE, tvb, offset, pinfo, tree, hf_inap_invokeID);
2599 dissect_inap_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2600 offset = dissect_ber_null(implicit_tag, pinfo, tree, tvb, offset, hf_index);
2604 static int dissect_allRequests_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2605 return dissect_inap_NULL(TRUE, tvb, offset, pinfo, tree, hf_inap_allRequests);
2607 static int dissect_none_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2608 return dissect_inap_NULL(TRUE, tvb, offset, pinfo, tree, hf_inap_none);
2610 static int dissect_empty_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2611 return dissect_inap_NULL(TRUE, tvb, offset, pinfo, tree, hf_inap_empty);
2613 static int dissect_null(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2614 return dissect_inap_NULL(FALSE, tvb, offset, pinfo, tree, hf_inap_null);
2618 static const value_string inap_CancelArg_vals[] = {
2620 { 1, "allRequests" },
2624 static const ber_choice_t CancelArg_choice[] = {
2625 { 0, BER_CLASS_CON, 0, 0, dissect_invokeID_impl },
2626 { 1, BER_CLASS_CON, 1, 0, dissect_allRequests_impl },
2627 { 0, 0, 0, 0, NULL }
2631 dissect_inap_CancelArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2632 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2633 CancelArg_choice, hf_index, ett_inap_CancelArg,
2640 static const value_string inap_ResourceID_vals[] = {
2642 { 1, "facilityGroupID" },
2643 { 2, "facilityGroupMemberID" },
2644 { 3, "trunkGroupID" },
2648 static const ber_choice_t ResourceID_choice[] = {
2649 { 0, BER_CLASS_CON, 0, 0, dissect_lineID_impl },
2650 { 1, BER_CLASS_CON, 1, 0, dissect_facilityGroupID_impl },
2651 { 2, BER_CLASS_CON, 2, 0, dissect_facilityGroupMemberID_impl },
2652 { 3, BER_CLASS_CON, 3, 0, dissect_trunkGroupID_impl },
2653 { 0, 0, 0, 0, NULL }
2657 dissect_inap_ResourceID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2658 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2659 ResourceID_choice, hf_index, ett_inap_ResourceID,
2664 static int dissect_resourceID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2665 return dissect_inap_ResourceID(TRUE, tvb, offset, pinfo, tree, hf_inap_resourceID);
2669 static const ber_sequence_t CancelStatusReportRequestArg_sequence[] = {
2670 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceID_impl },
2671 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2676 dissect_inap_CancelStatusReportRequestArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2677 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2678 CancelStatusReportRequestArg_sequence, hf_index, ett_inap_CancelStatusReportRequestArg);
2684 static const ber_sequence_t CollectedInformationArg_sequence[] = {
2685 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
2686 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dialledDigits_impl },
2687 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
2688 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
2689 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_callingFacilityGroup_impl },
2690 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingFacilityGroupMember_impl },
2691 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
2692 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_prefix_impl },
2693 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
2694 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
2695 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
2696 { BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2697 { BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_featureCode_impl },
2698 { BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_accessCode_impl },
2699 { BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
2704 dissect_inap_CollectedInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2705 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2706 CollectedInformationArg_sequence, hf_index, ett_inap_CollectedInformationArg);
2714 dissect_inap_NumberingPlan(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2715 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2720 static int dissect_numberingPlan_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2721 return dissect_inap_NumberingPlan(TRUE, tvb, offset, pinfo, tree, hf_inap_numberingPlan);
2725 static const ber_sequence_t CollectInformationArg_sequence[] = {
2726 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alertingPattern_impl },
2727 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_numberingPlan_impl },
2728 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
2729 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
2730 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2731 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyNumber_impl },
2732 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dialledDigits_impl },
2737 dissect_inap_CollectInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2738 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2739 CollectInformationArg_sequence, hf_index, ett_inap_CollectInformationArg);
2747 dissect_inap_CutAndPaste(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2748 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2753 static int dissect_cutAndPaste_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2754 return dissect_inap_CutAndPaste(TRUE, tvb, offset, pinfo, tree, hf_inap_cutAndPaste);
2758 static const value_string inap_ForwardingCondition_vals[] = {
2767 dissect_inap_ForwardingCondition(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2768 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2773 static int dissect_forwardingCondition_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2774 return dissect_inap_ForwardingCondition(TRUE, tvb, offset, pinfo, tree, hf_inap_forwardingCondition);
2780 dissect_inap_ScfID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2781 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2786 static int dissect_scfID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2787 return dissect_inap_ScfID(TRUE, tvb, offset, pinfo, tree, hf_inap_scfID);
2793 dissect_inap_ServiceInteractionIndicators(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2794 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2799 static int dissect_serviceInteractionIndicators_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2800 return dissect_inap_ServiceInteractionIndicators(TRUE, tvb, offset, pinfo, tree, hf_inap_serviceInteractionIndicators);
2804 static const ber_sequence_t ConnectArg_sequence[] = {
2805 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_destinationRoutingAddress_impl },
2806 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alertingPattern_impl },
2807 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
2808 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cutAndPaste_impl },
2809 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_forwardingCondition_impl },
2810 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iSDNAccessRelatedInformation_impl },
2811 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
2812 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeList_impl },
2813 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_scfID_impl },
2814 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
2815 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2816 { BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
2817 { BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceInteractionIndicators_impl },
2818 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyNumber_impl },
2819 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartysCategory_impl },
2820 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
2821 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
2826 dissect_inap_ConnectArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2827 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2828 ConnectArg_sequence, hf_index, ett_inap_ConnectArg);
2836 dissect_inap_IPRoutingAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2837 offset = dissect_inap_CalledPartyNumber(implicit_tag, tvb, offset, pinfo, tree, hf_index);
2841 static int dissect_ipRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2842 return dissect_inap_IPRoutingAddress(TRUE, tvb, offset, pinfo, tree, hf_inap_ipRoutingAddress);
2846 static const ber_sequence_t T_both2_sequence[] = {
2847 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ipRoutingAddress_impl },
2848 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
2853 dissect_inap_T_both2(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2854 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2855 T_both2_sequence, hf_index, ett_inap_T_both2);
2859 static int dissect_both2_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2860 return dissect_inap_T_both2(TRUE, tvb, offset, pinfo, tree, hf_inap_both2);
2864 static const value_string inap_T_resourceAddress_vals[] = {
2865 { 0, "ipRoutingAddress" },
2872 static const ber_choice_t T_resourceAddress_choice[] = {
2873 { 0, BER_CLASS_CON, 0, 0, dissect_ipRoutingAddress_impl },
2874 { 1, BER_CLASS_CON, 1, 0, dissect_legID_impl },
2875 { 2, BER_CLASS_CON, 2, 0, dissect_both2_impl },
2876 { 3, BER_CLASS_CON, 3, 0, dissect_none_impl },
2877 { 0, 0, 0, 0, NULL }
2881 dissect_inap_T_resourceAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2882 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2883 T_resourceAddress_choice, hf_index, ett_inap_T_resourceAddress,
2888 static int dissect_resourceAddress(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2889 return dissect_inap_T_resourceAddress(FALSE, tvb, offset, pinfo, tree, hf_inap_resourceAddress);
2893 static const ber_sequence_t ConnectToResourceArg_sequence[] = {
2894 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceAddress },
2895 { BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2896 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceInteractionIndicators_impl },
2901 dissect_inap_ConnectToResourceArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2902 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2903 ConnectToResourceArg_sequence, hf_index, ett_inap_ConnectToResourceArg);
2911 dissect_inap_AssistingSSPIPRoutingAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2912 offset = dissect_inap_Digits(implicit_tag, tvb, offset, pinfo, tree, hf_index);
2916 static int dissect_assistingSSPIPRoutingAddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2917 return dissect_inap_AssistingSSPIPRoutingAddress(TRUE, tvb, offset, pinfo, tree, hf_inap_assistingSSPIPRoutingAddress);
2921 static const ber_sequence_t EstablishTemporaryConnectionArg_sequence[] = {
2922 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_assistingSSPIPRoutingAddress_impl },
2923 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
2924 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
2925 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_scfID_impl },
2926 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2927 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
2928 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceInteractionIndicators_impl },
2933 dissect_inap_EstablishTemporaryConnectionArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2934 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2935 EstablishTemporaryConnectionArg_sequence, hf_index, ett_inap_EstablishTemporaryConnectionArg);
2943 dissect_inap_EventTypeCharging(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2944 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2949 static int dissect_eventTypeCharging_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2950 return dissect_inap_EventTypeCharging(TRUE, tvb, offset, pinfo, tree, hf_inap_eventTypeCharging);
2956 dissect_inap_EventSpecificInformationCharging(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2957 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2962 static int dissect_eventSpecificInformationCharging_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2963 return dissect_inap_EventSpecificInformationCharging(TRUE, tvb, offset, pinfo, tree, hf_inap_eventSpecificInformationCharging);
2967 static const value_string inap_MonitorMode_vals[] = {
2968 { 0, "interrupted" },
2969 { 1, "notifyAndContinue" },
2970 { 2, "transparent" },
2976 dissect_inap_MonitorMode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2977 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2982 static int dissect_monitorMode_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
2983 return dissect_inap_MonitorMode(TRUE, tvb, offset, pinfo, tree, hf_inap_monitorMode);
2987 static const ber_sequence_t EventNotificationChargingArg_sequence[] = {
2988 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventTypeCharging_impl },
2989 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_eventSpecificInformationCharging_impl },
2990 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
2991 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
2992 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_monitorMode_impl },
2997 dissect_inap_EventNotificationChargingArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
2998 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2999 EventNotificationChargingArg_sequence, hf_index, ett_inap_EventNotificationChargingArg);
3005 static const ber_sequence_t T_collectedInfoSpecificInfo_sequence[] = {
3006 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_calledPartynumber_impl },
3011 dissect_inap_T_collectedInfoSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3012 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3013 T_collectedInfoSpecificInfo_sequence, hf_index, ett_inap_T_collectedInfoSpecificInfo);
3017 static int dissect_collectedInfoSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3018 return dissect_inap_T_collectedInfoSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_collectedInfoSpecificInfo);
3022 static const ber_sequence_t T_analyzedInfoSpecificInfo_sequence[] = {
3023 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_calledPartynumber_impl },
3028 dissect_inap_T_analyzedInfoSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3029 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3030 T_analyzedInfoSpecificInfo_sequence, hf_index, ett_inap_T_analyzedInfoSpecificInfo);
3034 static int dissect_analyzedInfoSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3035 return dissect_inap_T_analyzedInfoSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_analyzedInfoSpecificInfo);
3039 static const ber_sequence_t T_routeSelectFailureSpecificInfo_sequence[] = {
3040 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_failureCause_impl },
3045 dissect_inap_T_routeSelectFailureSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3046 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3047 T_routeSelectFailureSpecificInfo_sequence, hf_index, ett_inap_T_routeSelectFailureSpecificInfo);
3051 static int dissect_routeSelectFailureSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3052 return dissect_inap_T_routeSelectFailureSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_routeSelectFailureSpecificInfo);
3056 static const ber_sequence_t T_oCalledPartyBusySpecificInfo_sequence[] = {
3057 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_busyCause_impl },
3062 dissect_inap_T_oCalledPartyBusySpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3063 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3064 T_oCalledPartyBusySpecificInfo_sequence, hf_index, ett_inap_T_oCalledPartyBusySpecificInfo);
3068 static int dissect_oCalledPartyBusySpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3069 return dissect_inap_T_oCalledPartyBusySpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_oCalledPartyBusySpecificInfo);
3073 static const ber_sequence_t T_oNoAnswerSpecificInfo_sequence[] = {
3078 dissect_inap_T_oNoAnswerSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3079 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3080 T_oNoAnswerSpecificInfo_sequence, hf_index, ett_inap_T_oNoAnswerSpecificInfo);
3084 static int dissect_oNoAnswerSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3085 return dissect_inap_T_oNoAnswerSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_oNoAnswerSpecificInfo);
3089 static const ber_sequence_t T_oAnswerSpecificInfo_sequence[] = {
3094 dissect_inap_T_oAnswerSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3095 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3096 T_oAnswerSpecificInfo_sequence, hf_index, ett_inap_T_oAnswerSpecificInfo);
3100 static int dissect_oAnswerSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3101 return dissect_inap_T_oAnswerSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_oAnswerSpecificInfo);
3105 static const ber_sequence_t T_oMidCallSpecificInfo_sequence[] = {
3106 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_connectTime_impl },
3111 dissect_inap_T_oMidCallSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3112 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3113 T_oMidCallSpecificInfo_sequence, hf_index, ett_inap_T_oMidCallSpecificInfo);
3117 static int dissect_oMidCallSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3118 return dissect_inap_T_oMidCallSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_oMidCallSpecificInfo);
3122 static const ber_sequence_t T_oDisconnectSpecificInfo_sequence[] = {
3123 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
3124 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_connectTime_impl },
3129 dissect_inap_T_oDisconnectSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3130 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3131 T_oDisconnectSpecificInfo_sequence, hf_index, ett_inap_T_oDisconnectSpecificInfo);
3135 static int dissect_oDisconnectSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3136 return dissect_inap_T_oDisconnectSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_oDisconnectSpecificInfo);
3140 static const ber_sequence_t T_tBusySpecificInfo_sequence[] = {
3141 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_busyCause_impl },
3146 dissect_inap_T_tBusySpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3147 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3148 T_tBusySpecificInfo_sequence, hf_index, ett_inap_T_tBusySpecificInfo);
3152 static int dissect_tBusySpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3153 return dissect_inap_T_tBusySpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_tBusySpecificInfo);
3157 static const ber_sequence_t T_tNoAnswerSpecificInfo_sequence[] = {
3162 dissect_inap_T_tNoAnswerSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3163 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3164 T_tNoAnswerSpecificInfo_sequence, hf_index, ett_inap_T_tNoAnswerSpecificInfo);
3168 static int dissect_tNoAnswerSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3169 return dissect_inap_T_tNoAnswerSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_tNoAnswerSpecificInfo);
3173 static const ber_sequence_t T_tAnswerSpecificInfo_sequence[] = {
3178 dissect_inap_T_tAnswerSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3179 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3180 T_tAnswerSpecificInfo_sequence, hf_index, ett_inap_T_tAnswerSpecificInfo);
3184 static int dissect_tAnswerSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3185 return dissect_inap_T_tAnswerSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_tAnswerSpecificInfo);
3189 static const ber_sequence_t T_tMidCallSpecificInfo_sequence[] = {
3190 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_connectTime_impl },
3195 dissect_inap_T_tMidCallSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3196 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3197 T_tMidCallSpecificInfo_sequence, hf_index, ett_inap_T_tMidCallSpecificInfo);
3201 static int dissect_tMidCallSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3202 return dissect_inap_T_tMidCallSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_tMidCallSpecificInfo);
3206 static const ber_sequence_t T_tDisconnectSpecificInfo_sequence[] = {
3207 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
3208 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_connectTime_impl },
3213 dissect_inap_T_tDisconnectSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3214 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3215 T_tDisconnectSpecificInfo_sequence, hf_index, ett_inap_T_tDisconnectSpecificInfo);
3219 static int dissect_tDisconnectSpecificInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3220 return dissect_inap_T_tDisconnectSpecificInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_tDisconnectSpecificInfo);
3224 static const value_string inap_EventSpecificInformationBCSM_vals[] = {
3225 { 0, "collectedInfoSpecificInfo" },
3226 { 1, "analyzedInfoSpecificInfo" },
3227 { 2, "routeSelectFailureSpecificInfo" },
3228 { 3, "oCalledPartyBusySpecificInfo" },
3229 { 4, "oNoAnswerSpecificInfo" },
3230 { 5, "oAnswerSpecificInfo" },
3231 { 6, "oMidCallSpecificInfo" },
3232 { 7, "oDisconnectSpecificInfo" },
3233 { 8, "tBusySpecificInfo" },
3234 { 9, "tNoAnswerSpecificInfo" },
3235 { 10, "tAnswerSpecificInfo" },
3236 { 11, "tMidCallSpecificInfo" },
3237 { 12, "tDisconnectSpecificInfo" },
3241 static const ber_choice_t EventSpecificInformationBCSM_choice[] = {
3242 { 0, BER_CLASS_CON, 0, 0, dissect_collectedInfoSpecificInfo_impl },
3243 { 1, BER_CLASS_CON, 1, 0, dissect_analyzedInfoSpecificInfo_impl },
3244 { 2, BER_CLASS_CON, 2, 0, dissect_routeSelectFailureSpecificInfo_impl },
3245 { 3, BER_CLASS_CON, 3, 0, dissect_oCalledPartyBusySpecificInfo_impl },
3246 { 4, BER_CLASS_CON, 4, 0, dissect_oNoAnswerSpecificInfo_impl },
3247 { 5, BER_CLASS_CON, 5, 0, dissect_oAnswerSpecificInfo_impl },
3248 { 6, BER_CLASS_CON, 6, 0, dissect_oMidCallSpecificInfo_impl },
3249 { 7, BER_CLASS_CON, 7, 0, dissect_oDisconnectSpecificInfo_impl },
3250 { 8, BER_CLASS_CON, 8, 0, dissect_tBusySpecificInfo_impl },
3251 { 9, BER_CLASS_CON, 9, 0, dissect_tNoAnswerSpecificInfo_impl },
3252 { 10, BER_CLASS_CON, 10, 0, dissect_tAnswerSpecificInfo_impl },
3253 { 11, BER_CLASS_CON, 11, 0, dissect_tMidCallSpecificInfo_impl },
3254 { 12, BER_CLASS_CON, 12, 0, dissect_tDisconnectSpecificInfo_impl },
3255 { 0, 0, 0, 0, NULL }
3259 dissect_inap_EventSpecificInformationBCSM(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3260 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3261 EventSpecificInformationBCSM_choice, hf_index, ett_inap_EventSpecificInformationBCSM,
3266 static int dissect_eventSpecificInformationBCSM_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3267 return dissect_inap_EventSpecificInformationBCSM(TRUE, tvb, offset, pinfo, tree, hf_inap_eventSpecificInformationBCSM);
3271 static const ber_sequence_t EventReportBCSMArg_sequence[] = {
3272 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventTypeBCSM_impl },
3273 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_bcsmEventCorrelationID_impl },
3274 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_eventSpecificInformationBCSM_impl },
3275 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
3276 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_miscCallInfo_impl },
3277 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3282 dissect_inap_EventReportBCSMArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3283 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3284 EventReportBCSMArg_sequence, hf_index, ett_inap_EventReportBCSMArg);
3292 dissect_inap_FCIBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3293 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3302 dissect_inap_FurnishChargingInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3303 offset = dissect_inap_FCIBillingChargingCharacteristics(implicit_tag, tvb, offset, pinfo, tree, hf_index);
3311 dissect_inap_HoldCause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3312 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3317 static int dissect_holdcause_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3318 return dissect_inap_HoldCause(TRUE, tvb, offset, pinfo, tree, hf_inap_holdcause);
3322 static const value_string inap_HoldCallInNetworkArg_vals[] = {
3328 static const ber_choice_t HoldCallInNetworkArg_choice[] = {
3329 { 0, BER_CLASS_CON, 0, 0, dissect_holdcause_impl },
3330 { 1, BER_CLASS_CON, 1, 0, dissect_empty_impl },
3331 { 0, 0, 0, 0, NULL }
3335 dissect_inap_HoldCallInNetworkArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3336 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3337 HoldCallInNetworkArg_choice, hf_index, ett_inap_HoldCallInNetworkArg,
3346 dissect_inap_HighLayerCompatibility(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3347 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3352 static int dissect_highLayerCompatibility_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3353 return dissect_inap_HighLayerCompatibility(TRUE, tvb, offset, pinfo, tree, hf_inap_highLayerCompatibility);
3359 dissect_inap_AdditionalCallingPartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3360 offset = dissect_inap_Digits(implicit_tag, tvb, offset, pinfo, tree, hf_index);
3364 static int dissect_additionalCallingPartyNumber_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3365 return dissect_inap_AdditionalCallingPartyNumber(TRUE, tvb, offset, pinfo, tree, hf_inap_additionalCallingPartyNumber);
3371 dissect_inap_ForwardCallIndicators(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3372 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3377 static int dissect_forwardCallIndicators_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3378 return dissect_inap_ForwardCallIndicators(TRUE, tvb, offset, pinfo, tree, hf_inap_forwardCallIndicators);
3382 static const ber_sequence_t InitialDP_sequence[] = {
3383 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceKey_impl },
3384 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dialledDigits_impl },
3385 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyNumber_impl },
3386 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyNumber_impl },
3387 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
3388 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartysCategory_impl },
3389 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
3390 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cGEncountered_impl },
3391 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iPSSPCapabilities_impl },
3392 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iPAvailable_impl },
3393 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationNumber_impl },
3394 { BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_miscCallInfo_impl },
3395 { BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
3396 { BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceProfileIdentifier_impl },
3397 { BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_terminalType_impl },
3398 { BER_CLASS_CON, 15, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3399 { BER_CLASS_CON, 16, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_triggerType_impl },
3400 { BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_highLayerCompatibility_impl },
3401 { BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceInteractionIndicators_impl },
3402 { BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_additionalCallingPartyNumber_impl },
3403 { BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_forwardCallIndicators_impl },
3404 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_bearerCapability_impl },
3405 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_eventTypeBCSM_impl },
3406 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
3407 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
3412 dissect_inap_InitialDP(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3413 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3414 InitialDP_sequence, hf_index, ett_inap_InitialDP);
3420 static const ber_sequence_t InitiateCallAttemptArg_sequence[] = {
3421 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_destinationRoutingAddress_impl },
3422 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alertingPattern_impl },
3423 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iSDNAccessRelatedInformation_impl },
3424 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
3425 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3426 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_serviceInteractionIndicators_impl },
3427 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyNumber_impl },
3432 dissect_inap_InitiateCallAttemptArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3433 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3434 InitiateCallAttemptArg_sequence, hf_index, ett_inap_InitiateCallAttemptArg);
3442 dissect_inap_CalledPartyBusinessGroupID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3443 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3448 static int dissect_calledPartyBusinessGroupID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3449 return dissect_inap_CalledPartyBusinessGroupID(TRUE, tvb, offset, pinfo, tree, hf_inap_calledPartyBusinessGroupID);
3455 dissect_inap_CalledPartySubaddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3456 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3461 static int dissect_calledPartySubaddress_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3462 return dissect_inap_CalledPartySubaddress(TRUE, tvb, offset, pinfo, tree, hf_inap_calledPartySubaddress);
3466 static const value_string inap_FeatureRequestIndicator_vals[] = {
3469 { 2, "featureActivation" },
3477 dissect_inap_FeatureRequestIndicator(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3478 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3483 static int dissect_featureRequestIndicator_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3484 return dissect_inap_FeatureRequestIndicator(TRUE, tvb, offset, pinfo, tree, hf_inap_featureRequestIndicator);
3488 static const ber_sequence_t MidCallArg_sequence[] = {
3489 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
3490 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
3491 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
3492 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
3493 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
3494 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_featureRequestIndicator_impl },
3495 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3496 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
3501 dissect_inap_MidCallArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3502 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3503 MidCallArg_sequence, hf_index, ett_inap_MidCallArg);
3509 static const ber_sequence_t OAnswerArg_sequence[] = {
3510 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
3511 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
3512 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
3513 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_callingFacilityGroup_impl },
3514 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingFacilityGroupMember_impl },
3515 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
3516 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
3517 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
3518 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeList_impl },
3519 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
3520 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3525 dissect_inap_OAnswerArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3526 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3527 OAnswerArg_sequence, hf_index, ett_inap_OAnswerArg);
3533 static const ber_sequence_t OCalledPartyBusyArg_sequence[] = {
3534 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
3535 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_busyCause_impl },
3536 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
3537 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
3538 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_callingFacilityGroup_impl },
3539 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingFacilityGroupMember_impl },
3540 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
3541 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_prefix_impl },
3542 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
3543 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
3544 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeList_impl },
3545 { BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
3546 { BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3547 { BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
3552 dissect_inap_OCalledPartyBusyArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3553 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3554 OCalledPartyBusyArg_sequence, hf_index, ett_inap_OCalledPartyBusyArg);
3560 static const ber_sequence_t ODisconnectArg_sequence[] = {
3561 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
3562 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
3563 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
3564 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_callingFacilityGroup_impl },
3565 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingFacilityGroupMember_impl },
3566 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
3567 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeList_impl },
3568 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3569 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
3570 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_connectTime_impl },
3575 dissect_inap_ODisconnectArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3576 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3577 ODisconnectArg_sequence, hf_index, ett_inap_ODisconnectArg);
3583 static const ber_sequence_t ONoAnswer_sequence[] = {
3584 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
3585 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
3586 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
3587 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_callingFacilityGroup_impl },
3588 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingFacilityGroupMember_impl },
3589 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
3590 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_prefix_impl },
3591 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
3592 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
3593 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeList_impl },
3594 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
3595 { BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3596 { BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
3601 dissect_inap_ONoAnswer(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3602 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3603 ONoAnswer_sequence, hf_index, ett_inap_ONoAnswer);
3609 static const ber_sequence_t OriginationAttemptAuthorizedArg_sequence[] = {
3610 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
3611 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dialledDigits_impl },
3612 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
3613 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
3614 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_callingFacilityGroup_impl },
3615 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingFacilityGroupMember_impl },
3616 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
3617 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3618 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
3623 dissect_inap_OriginationAttemptAuthorizedArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3624 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3625 OriginationAttemptAuthorizedArg_sequence, hf_index, ett_inap_OriginationAttemptAuthorizedArg);
3633 dissect_inap_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3634 offset = dissect_ber_boolean(implicit_tag, pinfo, tree, tvb, offset, hf_index);
3638 static int dissect_disconnectFromIPForbidden_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3639 return dissect_inap_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_inap_disconnectFromIPForbidden);
3641 static int dissect_requestAnnouncementComplete_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3642 return dissect_inap_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_inap_requestAnnouncementComplete);
3644 static int dissect_interruptableAnnInd_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3645 return dissect_inap_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_inap_interruptableAnnInd);
3647 static int dissect_voiceInformation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3648 return dissect_inap_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_inap_voiceInformation);
3650 static int dissect_voiceBack_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3651 return dissect_inap_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_inap_voiceBack);
3653 static int dissect_iA5Information_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3654 return dissect_inap_BOOLEAN(TRUE, tvb, offset, pinfo, tree, hf_inap_iA5Information);
3658 static const ber_sequence_t PlayAnnouncementArg_sequence[] = {
3659 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_informationToSend_impl },
3660 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_disconnectFromIPForbidden_impl },
3661 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_requestAnnouncementComplete_impl },
3662 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3667 dissect_inap_PlayAnnouncementArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3668 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3669 PlayAnnouncementArg_sequence, hf_index, ett_inap_PlayAnnouncementArg);
3677 dissect_inap_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_) {
3678 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3683 static int dissect_endOfReplyDigit_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3684 return dissect_inap_OCTET_STRING_SIZE_1_2(TRUE, tvb, offset, pinfo, tree, hf_inap_endOfReplyDigit);
3686 static int dissect_cancelDigit_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3687 return dissect_inap_OCTET_STRING_SIZE_1_2(TRUE, tvb, offset, pinfo, tree, hf_inap_cancelDigit);
3689 static int dissect_startDigit_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3690 return dissect_inap_OCTET_STRING_SIZE_1_2(TRUE, tvb, offset, pinfo, tree, hf_inap_startDigit);
3694 static const value_string inap_ErrorTreatment_vals[] = {
3695 { 0, "reportErrorToScf" },
3697 { 2, "repeatPrompt" },
3703 dissect_inap_ErrorTreatment(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3704 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3709 static int dissect_errorTreatment_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3710 return dissect_inap_ErrorTreatment(TRUE, tvb, offset, pinfo, tree, hf_inap_errorTreatment);
3714 static const ber_sequence_t CollectedDigits_sequence[] = {
3715 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_minimumNbOfDigits_impl },
3716 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_maximumNbOfDigits_impl },
3717 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_endOfReplyDigit_impl },
3718 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cancelDigit_impl },
3719 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_startDigit_impl },
3720 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_firstDigitTimeOut_impl },
3721 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_interDigitTimeOut_impl },
3722 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_errorTreatment_impl },
3723 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_interruptableAnnInd_impl },
3724 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_voiceInformation_impl },
3725 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_voiceBack_impl },
3730 dissect_inap_CollectedDigits(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3731 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3732 CollectedDigits_sequence, hf_index, ett_inap_CollectedDigits);
3736 static int dissect_collectedDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3737 return dissect_inap_CollectedDigits(TRUE, tvb, offset, pinfo, tree, hf_inap_collectedDigits);
3741 static const value_string inap_CollectedInfo_vals[] = {
3742 { 0, "collectedDigits" },
3743 { 1, "iA5Information" },
3747 static const ber_choice_t CollectedInfo_choice[] = {
3748 { 0, BER_CLASS_CON, 0, 0, dissect_collectedDigits_impl },
3749 { 1, BER_CLASS_CON, 1, 0, dissect_iA5Information_impl },
3750 { 0, 0, 0, 0, NULL }
3754 dissect_inap_CollectedInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3755 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3756 CollectedInfo_choice, hf_index, ett_inap_CollectedInfo,
3761 static int dissect_collectedInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3762 return dissect_inap_CollectedInfo(TRUE, tvb, offset, pinfo, tree, hf_inap_collectedInfo);
3766 static const ber_sequence_t PromptAndCollectUserInformationArg_sequence[] = {
3767 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_collectedInfo_impl },
3768 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_disconnectFromIPForbidden_impl },
3769 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_informationToSend_impl },
3770 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3775 dissect_inap_PromptAndCollectUserInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3776 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3777 PromptAndCollectUserInformationArg_sequence, hf_index, ett_inap_PromptAndCollectUserInformationArg);
3785 dissect_inap_IA5String(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3786 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
3787 pinfo, tree, tvb, offset, hf_index,
3792 static int dissect_iA5Response_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3793 return dissect_inap_IA5String(TRUE, tvb, offset, pinfo, tree, hf_inap_iA5Response);
3797 static const value_string inap_ReceivedInformationArg_vals[] = {
3798 { 0, "digitsResponse" },
3799 { 1, "iA5Response" },
3803 static const ber_choice_t ReceivedInformationArg_choice[] = {
3804 { 0, BER_CLASS_CON, 0, 0, dissect_digitsResponse_impl },
3805 { 1, BER_CLASS_CON, 1, 0, dissect_iA5Response_impl },
3806 { 0, 0, 0, 0, NULL }
3810 dissect_inap_ReceivedInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3811 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3812 ReceivedInformationArg_choice, hf_index, ett_inap_ReceivedInformationArg,
3819 static const ber_sequence_t T_allCallSegments_sequence[] = {
3820 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
3825 dissect_inap_T_allCallSegments(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3826 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3827 T_allCallSegments_sequence, hf_index, ett_inap_T_allCallSegments);
3831 static int dissect_allCallSegments_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3832 return dissect_inap_T_allCallSegments(TRUE, tvb, offset, pinfo, tree, hf_inap_allCallSegments);
3836 static const value_string inap_ReleaseCallArg_vals[] = {
3837 { 0, "initialCallSegment" },
3838 { 1, "allCallSegments" },
3842 static const ber_choice_t ReleaseCallArg_choice[] = {
3843 { 0, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_initialCallSegment },
3844 { 1, BER_CLASS_CON, 2, 0, dissect_allCallSegments_impl },
3845 { 0, 0, 0, 0, NULL }
3849 dissect_inap_ReleaseCallArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3850 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3851 ReleaseCallArg_choice, hf_index, ett_inap_ReleaseCallArg,
3860 dissect_inap_RequestCurrentStatusReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3861 offset = dissect_inap_ResourceID(implicit_tag, tvb, offset, pinfo, tree, hf_index);
3867 static const value_string inap_ResourceStatus_vals[] = {
3875 dissect_inap_ResourceStatus(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3876 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3881 static int dissect_resourceStatus_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3882 return dissect_inap_ResourceStatus(TRUE, tvb, offset, pinfo, tree, hf_inap_resourceStatus);
3886 static const ber_sequence_t RequestCurrentStatusReportResultArg_sequence[] = {
3887 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_resourceStatus_impl },
3888 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceID_impl },
3889 { BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3894 dissect_inap_RequestCurrentStatusReportResultArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3895 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3896 RequestCurrentStatusReportResultArg_sequence, hf_index, ett_inap_RequestCurrentStatusReportResultArg);
3902 static const ber_sequence_t RequestEveryStatusChangeReportArg_sequence[] = {
3903 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceID_impl },
3904 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
3905 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_monitorDuration_impl },
3906 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3911 dissect_inap_RequestEveryStatusChangeReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3912 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3913 RequestEveryStatusChangeReportArg_sequence, hf_index, ett_inap_RequestEveryStatusChangeReportArg);
3919 static const ber_sequence_t RequestFirstStatusMatchReportArg_sequence[] = {
3920 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceID_impl },
3921 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_resourceStatus_impl },
3922 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
3923 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_monitorDuration_impl },
3924 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
3925 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_bearerCapability_impl },
3930 dissect_inap_RequestFirstStatusMatchReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3931 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3932 RequestFirstStatusMatchReportArg_sequence, hf_index, ett_inap_RequestFirstStatusMatchReportArg);
3938 static const ber_sequence_t RequestNotificationChargingEvent_item_sequence[] = {
3939 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventTypeCharging2_impl },
3940 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_monitorMode_impl },
3941 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
3946 dissect_inap_RequestNotificationChargingEvent_item(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3947 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3948 RequestNotificationChargingEvent_item_sequence, hf_index, ett_inap_RequestNotificationChargingEvent_item);
3952 static int dissect_RequestNotificationChargingEvent_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3953 return dissect_inap_RequestNotificationChargingEvent_item(FALSE, tvb, offset, pinfo, tree, hf_inap_RequestNotificationChargingEvent_item);
3957 static const ber_sequence_t RequestNotificationChargingEvent_sequence_of[1] = {
3958 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_RequestNotificationChargingEvent_item },
3962 dissect_inap_RequestNotificationChargingEvent(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3963 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
3964 RequestNotificationChargingEvent_sequence_of, hf_index, ett_inap_RequestNotificationChargingEvent);
3972 dissect_inap_NumberOfDigits(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3973 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3978 static int dissect_numberOfDigits_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3979 return dissect_inap_NumberOfDigits(TRUE, tvb, offset, pinfo, tree, hf_inap_numberOfDigits);
3985 dissect_inap_ApplicationTimer(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
3986 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3991 static int dissect_applicationTimer_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
3992 return dissect_inap_ApplicationTimer(TRUE, tvb, offset, pinfo, tree, hf_inap_applicationTimer);
3996 static const value_string inap_DpSpecificCriteria_vals[] = {
3997 { 0, "numberOfDigits" },
3998 { 1, "applicationTimer" },
4002 static const ber_choice_t DpSpecificCriteria_choice[] = {
4003 { 0, BER_CLASS_CON, 0, 0, dissect_numberOfDigits_impl },
4004 { 1, BER_CLASS_CON, 1, 0, dissect_applicationTimer_impl },
4005 { 0, 0, 0, 0, NULL }
4009 dissect_inap_DpSpecificCriteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4010 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4011 DpSpecificCriteria_choice, hf_index, ett_inap_DpSpecificCriteria,
4016 static int dissect_dpSpecificCriteria_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4017 return dissect_inap_DpSpecificCriteria(TRUE, tvb, offset, pinfo, tree, hf_inap_dpSpecificCriteria);
4021 static const ber_sequence_t BCSMEvent_sequence[] = {
4022 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventTypeBCSM_impl },
4023 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_monitorMode_impl },
4024 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
4025 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_dpSpecificCriteria_impl },
4030 dissect_inap_BCSMEvent(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4031 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4032 BCSMEvent_sequence, hf_index, ett_inap_BCSMEvent);
4036 static int dissect_bcsmEvents_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4037 return dissect_inap_BCSMEvent(FALSE, tvb, offset, pinfo, tree, hf_inap_bcsmEvents_item);
4041 static const ber_sequence_t SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent_sequence_of[1] = {
4042 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_bcsmEvents_item },
4046 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_) {
4047 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
4048 SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent_sequence_of, hf_index, ett_inap_SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent);
4052 static int dissect_bcsmEvents_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4053 return dissect_inap_SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent(TRUE, tvb, offset, pinfo, tree, hf_inap_bcsmEvents);
4057 static const ber_sequence_t RequestReportBCSMEventArg_sequence[] = {
4058 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_bcsmEvents_impl },
4059 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_bcsmEventCorrelationID_impl },
4060 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4065 dissect_inap_RequestReportBCSMEventArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4066 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4067 RequestReportBCSMEventArg_sequence, hf_index, ett_inap_RequestReportBCSMEventArg);
4073 static const value_string inap_TimerID_vals[] = {
4080 dissect_inap_TimerID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4081 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4086 static int dissect_timerID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4087 return dissect_inap_TimerID(TRUE, tvb, offset, pinfo, tree, hf_inap_timerID);
4093 dissect_inap_TimerValue(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4094 offset = dissect_inap_Integer4(implicit_tag, tvb, offset, pinfo, tree, hf_index);
4098 static int dissect_timervalue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4099 return dissect_inap_TimerValue(TRUE, tvb, offset, pinfo, tree, hf_inap_timervalue);
4103 static const ber_sequence_t ResetTimerArg_sequence[] = {
4104 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_timerID_impl },
4105 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_timervalue_impl },
4106 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4111 dissect_inap_ResetTimerArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4112 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4113 ResetTimerArg_sequence, hf_index, ett_inap_ResetTimerArg);
4119 static const ber_sequence_t RouteSelectFailureArg_sequence[] = {
4120 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
4121 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dialledDigits_impl },
4122 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
4123 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartySubaddress_impl },
4124 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_callingFacilityGroup_impl },
4125 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingFacilityGroupMember_impl },
4126 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_failureCause_impl },
4127 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
4128 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_prefix_impl },
4129 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
4130 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
4131 { BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeList_impl },
4132 { BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
4133 { BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4134 { BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
4139 dissect_inap_RouteSelectFailureArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4140 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4141 RouteSelectFailureArg_sequence, hf_index, ett_inap_RouteSelectFailureArg);
4147 static const ber_sequence_t SelectFacilityArg_sequence[] = {
4148 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alertingPattern_impl },
4149 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_destinationNumberRoutingAddress_impl },
4150 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iSDNAccessRelatedInformation_impl },
4151 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_calledFacilityGroup_impl },
4152 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledFacilityGroupMember_impl },
4153 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
4154 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4159 dissect_inap_SelectFacilityArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4160 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4161 SelectFacilityArg_sequence, hf_index, ett_inap_SelectFacilityArg);
4167 static const ber_sequence_t SelectRouteArg_sequence[] = {
4168 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_destinationRoutingAddress_impl },
4169 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_alertingPattern_impl },
4170 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
4171 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_iSDNAccessRelatedInformation_impl },
4172 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
4173 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeList_impl },
4174 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_scfID_impl },
4175 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
4176 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4177 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_carrier_impl },
4182 dissect_inap_SelectRouteArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4183 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4184 SelectRouteArg_sequence, hf_index, ett_inap_SelectRouteArg);
4192 dissect_inap_SCIBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4193 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4198 static int dissect_sCIBillingChargingCharacteristics_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4199 return dissect_inap_SCIBillingChargingCharacteristics(TRUE, tvb, offset, pinfo, tree, hf_inap_sCIBillingChargingCharacteristics);
4203 static const ber_sequence_t SendChargingInformationArg_sequence[] = {
4204 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_sCIBillingChargingCharacteristics_impl },
4205 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_partyToCharge_impl },
4206 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4211 dissect_inap_SendChargingInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4212 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4213 SendChargingInformationArg_sequence, hf_index, ett_inap_SendChargingInformationArg);
4221 dissect_inap_CounterID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4222 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4227 static int dissect_counterID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4228 return dissect_inap_CounterID(TRUE, tvb, offset, pinfo, tree, hf_inap_counterID);
4232 static const ber_sequence_t CounterAndValue_sequence[] = {
4233 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_counterID_impl },
4234 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_counterValue_impl },
4239 dissect_inap_CounterAndValue(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4240 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4241 CounterAndValue_sequence, hf_index, ett_inap_CounterAndValue);
4245 static int dissect_CountersValue_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4246 return dissect_inap_CounterAndValue(FALSE, tvb, offset, pinfo, tree, hf_inap_CountersValue_item);
4250 static const ber_sequence_t CountersValue_sequence_of[1] = {
4251 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_CountersValue_item },
4255 dissect_inap_CountersValue(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4256 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
4257 CountersValue_sequence_of, hf_index, ett_inap_CountersValue);
4261 static int dissect_countersValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4262 return dissect_inap_CountersValue(TRUE, tvb, offset, pinfo, tree, hf_inap_countersValue);
4266 static const value_string inap_ResponseCondition_vals[] = {
4267 { 0, "intermediateResponse" },
4268 { 1, "lastResponse" },
4274 dissect_inap_ResponseCondition(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4275 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4280 static int dissect_responseCondition_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4281 return dissect_inap_ResponseCondition(TRUE, tvb, offset, pinfo, tree, hf_inap_responseCondition);
4285 static const ber_sequence_t ServiceFilteringResponseArg_sequence[] = {
4286 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_countersValue_impl },
4287 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_filteringCriteria_impl },
4288 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4289 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_responseCondition_impl },
4294 dissect_inap_ServiceFilteringResponseArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4295 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4296 ServiceFilteringResponseArg_sequence, hf_index, ett_inap_ServiceFilteringResponseArg);
4304 dissect_inap_SpecializedResourceReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4305 offset = dissect_ber_null(implicit_tag, pinfo, tree, tvb, offset, hf_index);
4311 static const value_string inap_ReportCondition_vals[] = {
4312 { 0, "statusReport" },
4313 { 1, "timerExpired" },
4320 dissect_inap_ReportCondition(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4321 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4326 static int dissect_reportCondition_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4327 return dissect_inap_ReportCondition(TRUE, tvb, offset, pinfo, tree, hf_inap_reportCondition);
4331 static const ber_sequence_t StatusReportArg_sequence[] = {
4332 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_resourceStatus_impl },
4333 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_correlationID_impl },
4334 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_resourceID_impl },
4335 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4336 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_reportCondition_impl },
4341 dissect_inap_StatusReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4342 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4343 StatusReportArg_sequence, hf_index, ett_inap_StatusReportArg);
4349 static const ber_sequence_t TAnswerArg_sequence[] = {
4350 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
4351 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
4352 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
4353 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_calledFacilityGroup_impl },
4354 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledFacilityGroupMember_impl },
4355 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4360 dissect_inap_TAnswerArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4361 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4362 TAnswerArg_sequence, hf_index, ett_inap_TAnswerArg);
4368 static const ber_sequence_t TBusyArg_sequence[] = {
4369 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
4370 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_busyCause_impl },
4371 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
4372 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
4373 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
4374 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
4375 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
4376 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeList_impl },
4377 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
4378 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4383 dissect_inap_TBusyArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4384 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4385 TBusyArg_sequence, hf_index, ett_inap_TBusyArg);
4391 static const ber_sequence_t TDisconnectArg_sequence[] = {
4392 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
4393 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
4394 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
4395 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_calledFacilityGroup_impl },
4396 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledFacilityGroupMember_impl },
4397 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_releaseCause_impl },
4398 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4399 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_connectTime_impl },
4404 dissect_inap_TDisconnectArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4405 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4406 TDisconnectArg_sequence, hf_index, ett_inap_TDisconnectArg);
4412 static const ber_sequence_t TermAttemptAuthorizedArg_sequence[] = {
4413 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
4414 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
4415 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
4416 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callingPartyBusinessGroupID_impl },
4417 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
4418 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
4419 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
4420 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeList_impl },
4421 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
4422 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4427 dissect_inap_TermAttemptAuthorizedArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4428 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4429 TermAttemptAuthorizedArg_sequence, hf_index, ett_inap_TermAttemptAuthorizedArg);
4435 static const ber_sequence_t TNoAnswerArg_sequence[] = {
4436 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dpSpecificCommonParameters_impl },
4437 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartyBusinessGroupID_impl },
4438 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledPartySubaddress_impl },
4439 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_calledFacilityGroup_impl },
4440 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_calledFacilityGroupMember_impl },
4441 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_originalCalledPartyID_impl },
4442 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingPartyID_impl },
4443 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectionInformation_impl },
4444 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_travellingClassMark_impl },
4445 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensions_impl },
4450 dissect_inap_TNoAnswerArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4451 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4452 TNoAnswerArg_sequence, hf_index, ett_inap_TNoAnswerArg);
4458 static const ber_sequence_t ChargingEvent_sequence[] = {
4459 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventTypeCharging_impl },
4460 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_monitorMode_impl },
4461 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_legID_impl },
4466 dissect_inap_ChargingEvent(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4467 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4468 ChargingEvent_sequence, hf_index, ett_inap_ChargingEvent);
4476 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_) {
4477 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4482 static int dissect_callAttemptElapsedTimeValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4483 return dissect_inap_INTEGER_0_255(TRUE, tvb, offset, pinfo, tree, hf_inap_callAttemptElapsedTimeValue);
4487 static const value_string inap_RequestedInformationValue_vals[] = {
4488 { 0, "callAttemptElapsedTimeValue" },
4489 { 1, "callStopTimeValue" },
4490 { 2, "callConnectedElapsedTimeValue" },
4491 { 3, "calledAddressValue" },
4492 { 30, "releaseCauseValue" },
4496 static const ber_choice_t RequestedInformationValue_choice[] = {
4497 { 0, BER_CLASS_CON, 0, 0, dissect_callAttemptElapsedTimeValue_impl },
4498 { 1, BER_CLASS_CON, 1, 0, dissect_callStopTimeValue_impl },
4499 { 2, BER_CLASS_CON, 2, 0, dissect_callConnectedElapsedTimeValue_impl },
4500 { 3, BER_CLASS_CON, 3, 0, dissect_calledAddressValue_impl },
4501 { 30, BER_CLASS_CON, 30, 0, dissect_releaseCauseValue_impl },
4502 { 0, 0, 0, 0, NULL }
4506 dissect_inap_RequestedInformationValue(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4507 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4508 RequestedInformationValue_choice, hf_index, ett_inap_RequestedInformationValue,
4513 static int dissect_requestedInformationValue_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4514 return dissect_inap_RequestedInformationValue(TRUE, tvb, offset, pinfo, tree, hf_inap_requestedInformationValue);
4518 static const ber_sequence_t RequestedInformation_sequence[] = {
4519 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_requestedInformationType_impl },
4520 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_requestedInformationValue_impl },
4525 dissect_inap_RequestedInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4526 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4527 RequestedInformation_sequence, hf_index, ett_inap_RequestedInformation);
4531 static int dissect_RequestedInformationList_item(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4532 return dissect_inap_RequestedInformation(FALSE, tvb, offset, pinfo, tree, hf_inap_RequestedInformationList_item);
4536 static const ber_sequence_t RequestedInformationList_sequence_of[1] = {
4537 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_RequestedInformationList_item },
4541 dissect_inap_RequestedInformationList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4542 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
4543 RequestedInformationList_sequence_of, hf_index, ett_inap_RequestedInformationList);
4549 static const value_string inap_UnavailableNetworkResource_vals[] = {
4550 { 0, "unavailableResources" },
4551 { 1, "componentFailure" },
4552 { 2, "basicCallProcessingException" },
4553 { 3, "resourceStatusFailure" },
4554 { 4, "endUserFailure" },
4560 dissect_inap_UnavailableNetworkResource(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4561 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4568 static const value_string inap_T_problem_vals[] = {
4569 { 0, "unknownOperation" },
4571 { 2, "operationNotCancellable" },
4577 dissect_inap_T_problem(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4578 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4583 static int dissect_problem_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4584 return dissect_inap_T_problem(TRUE, tvb, offset, pinfo, tree, hf_inap_problem);
4590 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_) {
4591 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4596 static int dissect_operation_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4597 return dissect_inap_INTEGER_M128_127(TRUE, tvb, offset, pinfo, tree, hf_inap_operation);
4601 static const ber_sequence_t CancelFailed_sequence[] = {
4602 { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_problem_impl },
4603 { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_operation_impl },
4608 dissect_inap_CancelFailed(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4609 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4610 CancelFailed_sequence, hf_index, ett_inap_CancelFailed);
4616 static const value_string inap_RequestedInfoError_vals[] = {
4617 { 1, "unknownRequestedInfo" },
4618 { 2, "requestedInfoNotAvailable" },
4624 dissect_inap_RequestedInfoError(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4625 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4632 static const value_string inap_SystemFailure_vals[] = {
4633 { 0, "unavailableResources" },
4634 { 1, "componentFailure" },
4635 { 2, "basicCallProcessingException" },
4636 { 3, "resourceStatusFailure" },
4637 { 4, "endUserFailure" },
4643 dissect_inap_SystemFailure(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4644 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4651 static const value_string inap_TaskRefused_vals[] = {
4653 { 1, "unobtainable" },
4654 { 2, "congestion" },
4660 dissect_inap_TaskRefused(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4661 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4670 dissect_inap_InvokeIDType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4671 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4676 static int dissect_invidtype(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4677 return dissect_inap_InvokeIDType(FALSE, tvb, offset, pinfo, tree, hf_inap_invidtype);
4681 static const value_string inap_T_rinvokeID_vals[] = {
4687 static const ber_choice_t T_rinvokeID_choice[] = {
4688 { 0, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_invidtype },
4689 { 1, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_null },
4690 { 0, 0, 0, 0, NULL }
4694 dissect_inap_T_rinvokeID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4695 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4696 T_rinvokeID_choice, hf_index, ett_inap_T_rinvokeID,
4701 static int dissect_rinvokeID(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4702 return dissect_inap_T_rinvokeID(FALSE, tvb, offset, pinfo, tree, hf_inap_rinvokeID);
4706 static const value_string inap_GeneralProblem_vals[] = {
4707 { 0, "unrecognisedAPDU" },
4708 { 1, "mistypedAPDU" },
4709 { 2, "badlyStructuredAPDU" },
4715 dissect_inap_GeneralProblem(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4716 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4721 static int dissect_gp_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4722 return dissect_inap_GeneralProblem(TRUE, tvb, offset, pinfo, tree, hf_inap_gp);
4726 static const value_string inap_InvokeProblem_vals[] = {
4727 { 0, "duplicateInvocation" },
4728 { 1, "unrecognisedOperation" },
4729 { 2, "mistypedArgument" },
4730 { 3, "resourceLimitation" },
4731 { 4, "initiatorReleasing" },
4732 { 5, "unrecognisedLinkedID" },
4733 { 6, "linkedResponseUnexpected" },
4734 { 7, "unexpectedChildOperation" },
4740 dissect_inap_InvokeProblem(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4741 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4746 static int dissect_ip_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4747 return dissect_inap_InvokeProblem(TRUE, tvb, offset, pinfo, tree, hf_inap_ip);
4751 static const value_string inap_ReturnResultProblem_vals[] = {
4752 { 0, "unrecognisedInvocation" },
4753 { 1, "resultResponseUnexpected" },
4754 { 2, "mistypedResult" },
4760 dissect_inap_ReturnResultProblem(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4761 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4766 static int dissect_rrp_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4767 return dissect_inap_ReturnResultProblem(TRUE, tvb, offset, pinfo, tree, hf_inap_rrp);
4771 static const value_string inap_ReturnErrorProblem_vals[] = {
4772 { 0, "unrecognisedInvocation" },
4773 { 1, "errorResponseUnexpected" },
4774 { 2, "unrecognisedError" },
4775 { 3, "unexpectedError" },
4776 { 4, "mistypedParameter" },
4782 dissect_inap_ReturnErrorProblem(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4783 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4788 static int dissect_rep_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4789 return dissect_inap_ReturnErrorProblem(TRUE, tvb, offset, pinfo, tree, hf_inap_rep);
4793 static const value_string inap_T_rproblem_vals[] = {
4801 static const ber_choice_t T_rproblem_choice[] = {
4802 { 0, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gp_impl },
4803 { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ip_impl },
4804 { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_rrp_impl },
4805 { 3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_rep_impl },
4806 { 0, 0, 0, 0, NULL }
4810 dissect_inap_T_rproblem(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4811 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4812 T_rproblem_choice, hf_index, ett_inap_T_rproblem,
4817 static int dissect_rproblem(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
4818 return dissect_inap_T_rproblem(FALSE, tvb, offset, pinfo, tree, hf_inap_rproblem);
4822 static const ber_sequence_t RejectPDU_sequence[] = {
4823 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_rinvokeID },
4824 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_rproblem },
4829 dissect_inap_RejectPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
4830 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4831 RejectPDU_sequence, hf_index, ett_inap_RejectPDU);
4838 static void dissect_ActivateServiceFilteringArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4839 dissect_inap_ActivateServiceFilteringArg(FALSE, tvb, 0, pinfo, tree, hf_inap_ActivateServiceFilteringArg_PDU);
4841 static void dissect_AnalysedInformationArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4842 dissect_inap_AnalysedInformationArg(FALSE, tvb, 0, pinfo, tree, hf_inap_AnalysedInformationArg_PDU);
4844 static void dissect_AnalyseInformationArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4845 dissect_inap_AnalyseInformationArg(FALSE, tvb, 0, pinfo, tree, hf_inap_AnalyseInformationArg_PDU);
4847 static void dissect_ApplyChargingArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4848 dissect_inap_ApplyChargingArg(FALSE, tvb, 0, pinfo, tree, hf_inap_ApplyChargingArg_PDU);
4850 static void dissect_ApplyChargingReportArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4851 dissect_inap_ApplyChargingReportArg(FALSE, tvb, 0, pinfo, tree, hf_inap_ApplyChargingReportArg_PDU);
4853 static void dissect_AssistRequestInstructionsArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4854 dissect_inap_AssistRequestInstructionsArg(FALSE, tvb, 0, pinfo, tree, hf_inap_AssistRequestInstructionsArg_PDU);
4856 static void dissect_CallGapArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4857 dissect_inap_CallGapArg(FALSE, tvb, 0, pinfo, tree, hf_inap_CallGapArg_PDU);
4859 static void dissect_CallInformationReportArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4860 dissect_inap_CallInformationReportArg(FALSE, tvb, 0, pinfo, tree, hf_inap_CallInformationReportArg_PDU);
4862 static void dissect_CallInformationRequestArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4863 dissect_inap_CallInformationRequestArg(FALSE, tvb, 0, pinfo, tree, hf_inap_CallInformationRequestArg_PDU);
4865 static void dissect_CancelArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4866 dissect_inap_CancelArg(FALSE, tvb, 0, pinfo, tree, hf_inap_CancelArg_PDU);
4868 static void dissect_CollectedInformationArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4869 dissect_inap_CollectedInformationArg(FALSE, tvb, 0, pinfo, tree, hf_inap_CollectedInformationArg_PDU);
4871 static void dissect_CollectInformationArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4872 dissect_inap_CollectInformationArg(FALSE, tvb, 0, pinfo, tree, hf_inap_CollectInformationArg_PDU);
4874 static void dissect_ConnectArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4875 dissect_inap_ConnectArg(FALSE, tvb, 0, pinfo, tree, hf_inap_ConnectArg_PDU);
4877 static void dissect_ConnectToResourceArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4878 dissect_inap_ConnectToResourceArg(FALSE, tvb, 0, pinfo, tree, hf_inap_ConnectToResourceArg_PDU);
4880 static void dissect_EstablishTemporaryConnectionArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4881 dissect_inap_EstablishTemporaryConnectionArg(FALSE, tvb, 0, pinfo, tree, hf_inap_EstablishTemporaryConnectionArg_PDU);
4883 static void dissect_EventNotificationChargingArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4884 dissect_inap_EventNotificationChargingArg(FALSE, tvb, 0, pinfo, tree, hf_inap_EventNotificationChargingArg_PDU);
4886 static void dissect_EventReportBCSMArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4887 dissect_inap_EventReportBCSMArg(FALSE, tvb, 0, pinfo, tree, hf_inap_EventReportBCSMArg_PDU);
4889 static void dissect_FurnishChargingInformationArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4890 dissect_inap_FurnishChargingInformationArg(FALSE, tvb, 0, pinfo, tree, hf_inap_FurnishChargingInformationArg_PDU);
4892 static void dissect_HoldCallInNetworkArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4893 dissect_inap_HoldCallInNetworkArg(FALSE, tvb, 0, pinfo, tree, hf_inap_HoldCallInNetworkArg_PDU);
4895 static void dissect_InitialDP_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4896 dissect_inap_InitialDP(FALSE, tvb, 0, pinfo, tree, hf_inap_InitialDP_PDU);
4898 static void dissect_InitiateCallAttemptArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4899 dissect_inap_InitiateCallAttemptArg(FALSE, tvb, 0, pinfo, tree, hf_inap_InitiateCallAttemptArg_PDU);
4901 static void dissect_MidCallArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4902 dissect_inap_MidCallArg(FALSE, tvb, 0, pinfo, tree, hf_inap_MidCallArg_PDU);
4904 static void dissect_OAnswerArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4905 dissect_inap_OAnswerArg(FALSE, tvb, 0, pinfo, tree, hf_inap_OAnswerArg_PDU);
4907 static void dissect_OCalledPartyBusyArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4908 dissect_inap_OCalledPartyBusyArg(FALSE, tvb, 0, pinfo, tree, hf_inap_OCalledPartyBusyArg_PDU);
4910 static void dissect_ODisconnectArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4911 dissect_inap_ODisconnectArg(FALSE, tvb, 0, pinfo, tree, hf_inap_ODisconnectArg_PDU);
4913 static void dissect_ONoAnswer_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4914 dissect_inap_ONoAnswer(FALSE, tvb, 0, pinfo, tree, hf_inap_ONoAnswer_PDU);
4916 static void dissect_OriginationAttemptAuthorizedArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4917 dissect_inap_OriginationAttemptAuthorizedArg(FALSE, tvb, 0, pinfo, tree, hf_inap_OriginationAttemptAuthorizedArg_PDU);
4919 static void dissect_PlayAnnouncementArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4920 dissect_inap_PlayAnnouncementArg(FALSE, tvb, 0, pinfo, tree, hf_inap_PlayAnnouncementArg_PDU);
4922 static void dissect_PromptAndCollectUserInformationArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4923 dissect_inap_PromptAndCollectUserInformationArg(FALSE, tvb, 0, pinfo, tree, hf_inap_PromptAndCollectUserInformationArg_PDU);
4925 static void dissect_ReceivedInformationArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4926 dissect_inap_ReceivedInformationArg(FALSE, tvb, 0, pinfo, tree, hf_inap_ReceivedInformationArg_PDU);
4928 static void dissect_ReleaseCallArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4929 dissect_inap_ReleaseCallArg(FALSE, tvb, 0, pinfo, tree, hf_inap_ReleaseCallArg_PDU);
4931 static void dissect_RequestCurrentStatusReportArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4932 dissect_inap_RequestCurrentStatusReportArg(FALSE, tvb, 0, pinfo, tree, hf_inap_RequestCurrentStatusReportArg_PDU);
4934 static void dissect_RequestCurrentStatusReportResultArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4935 dissect_inap_RequestCurrentStatusReportResultArg(FALSE, tvb, 0, pinfo, tree, hf_inap_RequestCurrentStatusReportResultArg_PDU);
4937 static void dissect_RequestEveryStatusChangeReportArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4938 dissect_inap_RequestEveryStatusChangeReportArg(FALSE, tvb, 0, pinfo, tree, hf_inap_RequestEveryStatusChangeReportArg_PDU);
4940 static void dissect_RequestFirstStatusMatchReportArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4941 dissect_inap_RequestFirstStatusMatchReportArg(FALSE, tvb, 0, pinfo, tree, hf_inap_RequestFirstStatusMatchReportArg_PDU);
4943 static void dissect_RequestNotificationChargingEvent_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4944 dissect_inap_RequestNotificationChargingEvent(FALSE, tvb, 0, pinfo, tree, hf_inap_RequestNotificationChargingEvent_PDU);
4946 static void dissect_RequestReportBCSMEventArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4947 dissect_inap_RequestReportBCSMEventArg(FALSE, tvb, 0, pinfo, tree, hf_inap_RequestReportBCSMEventArg_PDU);
4949 static void dissect_ResetTimerArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4950 dissect_inap_ResetTimerArg(FALSE, tvb, 0, pinfo, tree, hf_inap_ResetTimerArg_PDU);
4952 static void dissect_RouteSelectFailureArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4953 dissect_inap_RouteSelectFailureArg(FALSE, tvb, 0, pinfo, tree, hf_inap_RouteSelectFailureArg_PDU);
4955 static void dissect_SelectFacilityArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4956 dissect_inap_SelectFacilityArg(FALSE, tvb, 0, pinfo, tree, hf_inap_SelectFacilityArg_PDU);
4958 static void dissect_SelectRouteArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4959 dissect_inap_SelectRouteArg(FALSE, tvb, 0, pinfo, tree, hf_inap_SelectRouteArg_PDU);
4961 static void dissect_ServiceFilteringResponseArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4962 dissect_inap_ServiceFilteringResponseArg(FALSE, tvb, 0, pinfo, tree, hf_inap_ServiceFilteringResponseArg_PDU);
4964 static void dissect_SpecializedResourceReportArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4965 dissect_inap_SpecializedResourceReportArg(FALSE, tvb, 0, pinfo, tree, hf_inap_SpecializedResourceReportArg_PDU);
4967 static void dissect_StatusReportArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4968 dissect_inap_StatusReportArg(FALSE, tvb, 0, pinfo, tree, hf_inap_StatusReportArg_PDU);
4970 static void dissect_TAnswerArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4971 dissect_inap_TAnswerArg(FALSE, tvb, 0, pinfo, tree, hf_inap_TAnswerArg_PDU);
4973 static void dissect_TBusyArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4974 dissect_inap_TBusyArg(FALSE, tvb, 0, pinfo, tree, hf_inap_TBusyArg_PDU);
4976 static void dissect_TDisconnectArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4977 dissect_inap_TDisconnectArg(FALSE, tvb, 0, pinfo, tree, hf_inap_TDisconnectArg_PDU);
4979 static void dissect_TermAttemptAuthorizedArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4980 dissect_inap_TermAttemptAuthorizedArg(FALSE, tvb, 0, pinfo, tree, hf_inap_TermAttemptAuthorizedArg_PDU);
4982 static void dissect_TNoAnswerArg_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
4983 dissect_inap_TNoAnswerArg(FALSE, tvb, 0, pinfo, tree, hf_inap_TNoAnswerArg_PDU);
4987 /*--- End of included file: packet-inap-fn.c ---*/
4988 #line 87 "packet-inap-template.c"
4991 const value_string inap_opr_code_strings[] = {
4994 {1, "OriginationAttemptAuthorized"},
4995 {2, "CollectedInformation"},
4996 {3, "AnalysedInformation"},
4997 {4, "RouteSelectFailure"},
4998 {5, "oCalledPartyBusy"},
5002 {9, "TermAttemptAuthorized"},
5006 {13, "tDisconnect"},
5009 {16, "AssistRequestInstructions"},
5010 {17,"EstablishTemporaryConnection"},
5011 {18, "DisconnectForwardConnection"},
5012 {19,"ConnectToResource"},
5014 {21,"HoldCallInNetwork"},
5015 {22, "ReleaseCall"},
5016 {23, "RequestReportBCSMEven"},
5017 {23,"RequestReportBCSMEvent"},
5018 {24,"EventReportBCSM"},
5019 {25, "RequestNotificationChargingEvent"},
5020 {26, "EventNotificationCharging"},
5021 {27, "CollectInformation"},
5022 {28, "AnalyseInformation"},
5023 {29, "SelectRoute"},
5024 {30, "SelectFacility"},
5026 {32, "InitiateCallAttempt"},
5028 {34,"FurnishChargingInformation"},
5029 {35, "ApplyCharging"},
5030 {36, "ApplyChargingReport"},
5031 {37, "RequestCurrentStatusReport"},
5032 {38, "RequestEveryStatusChangeReport"},
5033 {39, "RequestFirstStatusMatchReport"},
5034 {40, "StatusReport"},
5036 {42, "ActivateServiceFiltering"},
5037 {43, "ServiceFilteringResponse"},
5038 {44, "CallInformationReport"},
5039 {45, "CallInformationRequest"},
5040 {46, "SendChargingInformation"},
5041 {47,"PlayAnnouncement"},
5042 {48,"PromptAndCollectUserInformation"},
5043 {49,"SpecializedResourceReport"},
5045 {55, "ActivityTest"},
5046 {99,"ReceivedInformation"}, /*???????*/
5050 const value_string inap_error_code_strings[] = {
5055 {4,"improperCallerResponse"},
5056 {6,"missingCustomerRecord"},
5057 {7,"missingParameter"},
5058 {8,"parameterOutOfRange"},
5059 {10,"RequestedInfoError"},
5060 {11,"SystemFailure"},
5062 {13,"UnavailableResource"},
5063 {14,"UnexpectedComponentSequence"},
5064 {15,"UnexpectedDataValue"},
5065 {16,"UnexpectedParameter"},
5066 {17,"UnknownLegID"},
5067 {18,"UnknownResource"},
5071 const value_string inap_general_problem_strings[] = {
5072 {0,"General Problem Unrecognized Component"},
5073 {1,"General Problem Mistyped Component"},
5074 {3,"General Problem Badly Structured Component"},
5080 static guint32 opcode=0;
5083 dissect_inap_Opcode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5084 offset = dissect_ber_integer(FALSE, pinfo, tree, tvb, offset, hf_index, &opcode);
5086 if (check_col(pinfo->cinfo, COL_INFO)){
5087 col_add_fstr(pinfo->cinfo, COL_INFO, "%s ", val_to_str(opcode, inap_opr_code_strings, "Unknown Inap (%u)"));
5096 dissect_inap_errorCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5097 offset = dissect_ber_integer(FALSE, pinfo, tree, tvb, offset, hf_index, &opcode);
5099 if (check_col(pinfo->cinfo, COL_INFO)){
5100 col_set_str(pinfo->cinfo, COL_INFO, val_to_str(opcode, inap_error_code_strings, "Unknown Inap (%u)"));
5107 TC-Invokable OPERATION ::=
5108 {activateServiceFiltering | activityTest | analysedInformation |
5109 analyseInformation | applyCharging | applyChargingReport |
5110 assistRequestInstructions | callGap | callInformationReport |
5111 callInformationRequest | cancel | cancelStatusReportRequest |
5112 collectedInformation | collectInformation | connect | connectToResource |
5113 continue | disconnectForwardConnection | establishTemporaryConnection |
5114 eventNotificationCharging | eventReportBCSM | furnishChargingInformation |
5115 holdCallInNetwork | initialDP | initiateCallAttempt | oAnswer |
5116 oCalledPartyBusy | oDisconnect | oMidCall | oNoAnswer |
5117 originationAttemptAuthorized | releaseCall | requestCurrentStatusReport |
5118 requestEveryStatusChangeReport | requestFirstStatusMatchReport |
5119 requestNotificationChargingEvent | requestReportBCSMEvent | resetTimer |
5120 routeSelectFailure | selectFacility | selectRoute | sendChargingInformation
5121 | serviceFilteringResponse | statusReport | tAnswer | tBusy | tDisconnect |
5122 termAttemptAuthorized | tMidCall | tNoAnswer | playAnnouncement |
5123 promptAndCollectUserInformation}
5126 static int dissect_invokeData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5128 case 0: /*InitialDP*/
5129 offset=dissect_inap_InitialDP(FALSE, tvb, offset, pinfo, tree, hf_inap_InitialDP_PDU);
5131 case 1: /*1 OriginationAttemptAuthorized */
5132 offset=dissect_inap_OriginationAttemptAuthorizedArg(FALSE, tvb, offset, pinfo, tree, hf_inap_OriginationAttemptAuthorizedArg_PDU);
5134 case 2: /*2 CollectedInformation */
5135 offset=dissect_inap_CollectedInformationArg(FALSE, tvb, offset, pinfo, tree, hf_inap_CollectedInformationArg_PDU);
5137 case 3: /*3 AnalysedInformation */
5138 offset=dissect_inap_AnalysedInformationArg(FALSE, tvb, offset, pinfo, tree, hf_inap_AnalysedInformationArg_PDU);
5140 case 4: /*4 RouteSelectFailure */
5141 offset=dissect_inap_RouteSelectFailureArg(FALSE, tvb, offset, pinfo, tree, hf_inap_RouteSelectFailureArg_PDU);
5143 case 5: /*5 oCalledPartyBusy */
5144 offset=dissect_inap_OCalledPartyBusyArg(FALSE, tvb, offset, pinfo, tree, hf_inap_OCalledPartyBusyArg_PDU);
5146 case 6: /*6 oNoAnswer */
5147 offset=dissect_inap_ONoAnswer(FALSE, tvb, offset, pinfo, tree, hf_inap_ONoAnswer_PDU);
5149 case 7: /*7 oAnswer */
5150 offset=dissect_inap_OAnswerArg(FALSE, tvb, offset, pinfo, tree, hf_inap_OAnswerArg_PDU);
5152 case 8: /*8 oDisconnect */
5153 offset=dissect_inap_ODisconnectArg(FALSE, tvb, offset, pinfo, tree, hf_inap_ODisconnectArg_PDU);
5155 case 9: /*9 TermAttemptAuthorized */
5156 offset=dissect_inap_TermAttemptAuthorizedArg(FALSE, tvb, offset, pinfo, tree, hf_inap_TermAttemptAuthorizedArg_PDU);
5158 case 10: /*10 tBusy */
5159 offset=dissect_inap_TBusyArg(FALSE, tvb, offset, pinfo, tree, hf_inap_TBusyArg_PDU);
5161 case 11: /*11 tNoAnswer */
5162 offset=dissect_inap_TNoAnswerArg(FALSE, tvb, offset, pinfo, tree, hf_inap_TNoAnswerArg_PDU);
5164 case 12: /*12 tAnswer */
5165 offset=dissect_inap_TAnswerArg(FALSE, tvb, offset, pinfo, tree, hf_inap_TAnswerArg_PDU);
5167 case 13: /*13 tDisconnect */
5168 offset=dissect_inap_TDisconnectArg(FALSE, tvb, offset, pinfo, tree, hf_inap_TDisconnectArg_PDU);
5170 case 14: /*14 oMidCall */
5171 offset=dissect_inap_MidCallArg(FALSE, tvb, offset, pinfo, tree, hf_inap_MidCallArg_PDU);
5173 case 15: /*15 tMidCall */
5174 offset=dissect_inap_MidCallArg(FALSE, tvb, offset, pinfo, tree, hf_inap_MidCallArg_PDU);
5176 case 16: /*AssistRequestInstructions*/
5177 offset=dissect_inap_AssistRequestInstructionsArg(FALSE, tvb, offset, pinfo, tree, hf_inap_AssistRequestInstructionsArg_PDU);
5179 case 17: /*EstablishTemporaryConnection*/
5180 offset=dissect_inap_EstablishTemporaryConnectionArg(FALSE, tvb, offset, pinfo, tree, hf_inap_EstablishTemporaryConnectionArg_PDU);
5182 case 18: /*DisconnectForwardConnections*/
5183 proto_tree_add_text(tree, tvb, offset, -1, "Disconnect Forward Connection");
5185 case 19: /*ConnectToResource*/
5186 offset=dissect_inap_ConnectToResourceArg(FALSE, tvb, offset, pinfo, tree, hf_inap_ConnectToResourceArg_PDU);
5188 case 20: /*Connect*/
5189 offset=dissect_inap_ConnectArg(FALSE, tvb, offset, pinfo, tree,hf_inap_ConnectArg_PDU);
5191 case 21: /* 21 HoldCallInNetwork */
5192 offset=dissect_inap_HoldCallInNetworkArg(FALSE, tvb, offset, pinfo, tree,hf_inap_HoldCallInNetworkArg_PDU);
5195 case 22: /*ReleaseCall*/
5196 offset=dissect_inap_ReleaseCallArg(FALSE, tvb, offset, pinfo, tree,hf_inap_ReleaseCallArg_PDU);
5198 case 23: /*InitialDP*/
5199 offset=dissect_inap_RequestReportBCSMEventArg(FALSE, tvb, offset, pinfo, tree, hf_inap_RequestReportBCSMEventArg_PDU);
5201 case 24: /*EventReportBCSM*/
5202 offset=dissect_inap_EventReportBCSMArg(FALSE, tvb, offset, pinfo, tree, hf_inap_EventReportBCSMArg_PDU);
5204 case 25: /*25, "RequestNotificationChargingEvent */
5205 offset=dissect_inap_RequestNotificationChargingEvent(FALSE, tvb, offset, pinfo, tree, hf_inap_RequestNotificationChargingEvent_PDU);
5207 case 26: /*26, "EventNotificationCharging */
5208 offset=dissect_inap_EventNotificationChargingArg(FALSE, tvb, offset, pinfo, tree, hf_inap_EventNotificationChargingArg_PDU);
5210 case 27: /*27, "CollectInformation */
5211 offset=dissect_inap_CollectInformationArg(FALSE, tvb, offset, pinfo, tree, hf_inap_CollectInformationArg_PDU);
5213 case 28: /*28, "AnalyseInformation */
5214 offset=dissect_inap_AnalyseInformationArg(FALSE, tvb, offset, pinfo, tree, hf_inap_AnalyseInformationArg_PDU);
5216 case 29: /*29, "SelectRoute */
5217 offset=dissect_inap_SelectRouteArg(FALSE, tvb, offset, pinfo, tree, hf_inap_SelectRouteArg_PDU);
5219 case 30: /*30, "SelectFacility */
5220 offset=dissect_inap_SelectFacilityArg(FALSE, tvb, offset, pinfo, tree, hf_inap_SelectFacilityArg_PDU);
5223 case 32: /*32, InitiateCallAttempt*/
5224 offset=dissect_inap_InitiateCallAttemptArg(FALSE, tvb, offset, pinfo, tree, hf_inap_InitiateCallAttemptArg_PDU);
5226 case 33: /*ResetTimer*/
5227 offset=dissect_inap_ResetTimerArg(FALSE, tvb, offset, pinfo, tree, hf_inap_ResetTimerArg_PDU);
5229 case 34: /*FurnishChargingInformation*/
5230 offset=dissect_inap_FurnishChargingInformationArg(FALSE, tvb, offset, pinfo, tree, hf_inap_FurnishChargingInformationArg_PDU);
5232 case 35: /*35, ApplyCharging */
5233 offset=dissect_inap_ApplyChargingArg(FALSE, tvb, offset, pinfo, tree, hf_inap_ApplyChargingArg_PDU);
5235 case 36: /*36, "ApplyChargingReport */
5236 offset=dissect_inap_ApplyChargingReportArg(FALSE, tvb, offset, pinfo, tree, hf_inap_ApplyChargingReportArg_PDU);
5238 case 37: /*37, "RequestCurrentStatusReport */
5239 offset=dissect_inap_RequestCurrentStatusReportArg(FALSE, tvb, offset, pinfo, tree, hf_inap_RequestCurrentStatusReportArg_PDU);
5241 case 38:/*38, "RequestEveryStatusChangeReport */
5242 offset=dissect_inap_RequestEveryStatusChangeReportArg(FALSE, tvb, offset, pinfo, tree, hf_inap_RequestEveryStatusChangeReportArg_PDU);
5244 case 39:/*39, "RequestFirstStatusMatchReport */
5245 offset=dissect_inap_RequestFirstStatusMatchReportArg(FALSE, tvb, offset, pinfo, tree, hf_inap_RequestFirstStatusMatchReportArg_PDU);
5247 case 40:/*40, "StatusReport */
5248 offset=dissect_inap_StatusReportArg(FALSE, tvb, offset, pinfo, tree, hf_inap_StatusReportArg_PDU);
5250 case 41:/*41, "CallGap */
5251 offset=dissect_inap_CallGapArg(FALSE, tvb, offset, pinfo, tree, hf_inap_CallGapArg_PDU);
5253 case 42:/*42, "ActivateServiceFiltering */
5254 offset=dissect_inap_ActivateServiceFilteringArg(FALSE, tvb, offset, pinfo, tree, hf_inap_ActivateServiceFilteringArg_PDU);
5256 case 43:/*43, "ServiceFilteringResponse */
5257 offset=dissect_inap_ServiceFilteringResponseArg(FALSE, tvb, offset, pinfo, tree, hf_inap_ServiceFilteringResponseArg_PDU);
5259 case 44: /*CallInformationReport*/
5260 offset=dissect_inap_CallInformationReportArg(FALSE, tvb, offset, pinfo, tree, hf_inap_CallInformationReportArg_PDU);
5262 case 45: /*CallInformationRequest*/
5263 offset=dissect_inap_CallInformationRequestArg(FALSE, tvb, offset, pinfo, tree, hf_inap_CallInformationRequestArg_PDU);
5265 case 47: /*PlayAnnouncement*/
5266 offset=dissect_inap_PlayAnnouncementArg(FALSE, tvb, offset, pinfo, tree, hf_inap_PlayAnnouncementArg_PDU);
5268 case 48: /*PromptAndCollectUserInformation*/
5269 offset=dissect_inap_PromptAndCollectUserInformationArg(FALSE, tvb, offset, pinfo, tree, hf_inap_PromptAndCollectUserInformationArg_PDU);
5271 case 49: /* 49 SpecializedResourceReport */
5272 offset=dissect_inap_SpecializedResourceReportArg(FALSE, tvb, offset, pinfo, tree, hf_inap_SpecializedResourceReportArg_PDU);
5275 offset=dissect_inap_CancelArg(FALSE, tvb, offset, pinfo, tree, hf_inap_CancelArg_PDU);
5279 proto_tree_add_text(tree, tvb, offset, -1, "Unknown invokeData blob");
5280 /* todo call the asn.1 dissector */
5286 TC-Returnable OPERATION ::=
5287 {activateServiceFiltering | activityTest | requestCurrentStatusReport |
5288 requestEveryStatusChangeReport | requestFirstStatusMatchReport |
5289 promptAndCollectUserInformation}
5291 activateServiceFiltering - No arg
5292 activityTest - No Arg
5293 requestCurrentStatusReport - RESULT RequestCurrentStatusReportResultArg
5294 requestEveryStatusChangeReport - No arg
5295 requestFirstStatusMatchReport - No Arg
5296 promptAndCollectUserInformation - RESULT ReceivedInformationArg
5299 static int dissect_returnResultData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5301 case 37: /*requestCurrentStatusReport*/
5302 offset=dissect_inap_RequestCurrentStatusReportResultArg(FALSE, tvb, offset, pinfo, tree, -1);
5304 case 48: /*PromptAndCollectUserInformation*/
5305 offset=dissect_inap_ReceivedInformationArg(FALSE, tvb, offset, pinfo, tree, -1);
5308 proto_tree_add_text(tree, tvb, offset, -1, "Unknown returnResultData blob");
5314 dissect_invokeCmd(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5315 return dissect_inap_Opcode(FALSE, tvb, offset, pinfo, tree, hf_inap_invokeCmd);
5320 dissect_errorCode(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5321 return dissect_inap_errorCode(FALSE, tvb, offset, pinfo, tree, hf_inap_ReturnError);
5324 static int dissect_invokeid(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5325 return dissect_ber_integer(FALSE, pinfo, tree, tvb, offset, hf_inap_invokeid, NULL);
5329 static const value_string InvokeId_vals[] = {
5335 static int dissect_absent(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5336 return dissect_inap_NULL(FALSE, tvb, offset, pinfo, tree, hf_inap_absent);
5340 static const ber_choice_t InvokeId_choice[] = {
5341 { 0, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_invokeid },
5342 { 1, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_absent },
5343 { 0, 0, 0, 0, NULL }
5347 dissect_inap_InvokeId(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5348 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
5349 InvokeId_choice, hf_index, ett_inap_InvokeId, NULL);
5353 static int dissect_invokeId(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5354 return dissect_inap_InvokeId(FALSE, tvb, offset, pinfo, tree, hf_inap_invokeId);
5356 static int dissect_linkedID_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5357 return dissect_ber_integer(TRUE, pinfo, tree, tvb, offset, hf_inap_linkedid, NULL);
5361 static const ber_sequence_t InvokePDU_sequence[] = {
5362 { BER_CLASS_UNI, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_invokeId },
5363 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_linkedID_impl },
5364 { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_invokeCmd },
5365 { BER_CLASS_UNI, -1/*depends on Cmd*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_invokeData },
5370 dissect_inap_InvokePDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5371 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
5372 InvokePDU_sequence, hf_index, ett_inap_InvokePDU);
5378 static const ber_sequence_t returnErrorPDU_sequence[] = {
5379 { BER_CLASS_UNI, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_invokeId },
5380 { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_errorCode },
5385 dissect_inap_returnErrorPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5386 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
5387 returnErrorPDU_sequence, hf_index, ett_inap_ReturnErrorPDU);
5393 static int dissect_invoke_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5394 return dissect_inap_InvokePDU(TRUE, tvb, offset, pinfo, tree, hf_inap_invoke);
5397 static int dissect_returnError_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5398 return dissect_inap_returnErrorPDU(TRUE, tvb, offset, pinfo, tree, hf_inap_invoke);
5401 static const ber_sequence_t ReturnResult_result_sequence[] = {
5402 { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_invokeCmd },
5403 { BER_CLASS_UNI, -1/*depends on Cmd*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_returnResultData },
5407 dissect_returnResult_result(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5408 offset = dissect_ber_sequence(FALSE, pinfo, tree, tvb, offset,
5409 ReturnResult_result_sequence, hf_inap_returnResult_result, ett_inap_ReturnResult_result);
5414 static const ber_sequence_t ReturnResultPDU_sequence[] = {
5415 { BER_CLASS_UNI, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_invokeId },
5416 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_returnResult_result },
5421 dissect_inap_returnResultPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5422 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
5423 ReturnResultPDU_sequence, hf_index, ett_inap_ReturnResultPDU);
5427 static int dissect_returnResult_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5428 return dissect_inap_returnResultPDU(TRUE, tvb, offset, pinfo, tree, hf_inap_returnResult);
5432 static int dissect_reject_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
5433 return dissect_inap_RejectPDU(TRUE, tvb, offset, pinfo, tree, -1);
5436 static const value_string INAPPDU_vals[] = {
5438 { 2, "returnResult" },
5439 { 3, "returnError" },
5444 static const ber_choice_t INAPPDU_choice[] = {
5445 { 1, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_invoke_impl },
5446 { 2, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_returnResult_impl },
5447 { 3, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_returnError_impl },
5448 { 4, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_reject_impl },
5449 { 0, 0, 0, 0, NULL }
5452 static guint8 inap_pdu_type = 0;
5453 static guint8 inap_pdu_size = 0;
5456 dissect_inap_INAPPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5458 inap_pdu_type = tvb_get_guint8(tvb, offset)&0x0f;
5459 /* Get the length and add 2 */
5460 inap_pdu_size = tvb_get_guint8(tvb, offset+1)+2;
5462 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
5463 INAPPDU_choice, hf_index, ett_inap_INAPPDU, NULL);
5465 if (check_col(pinfo->cinfo, COL_INFO)){
5466 col_prepend_fstr(pinfo->cinfo, COL_INFO, val_to_str(opcode, inap_opr_code_strings, "Unknown INAP (%u)"));
5476 dissect_inap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
5478 proto_item *item=NULL;
5479 proto_tree *tree=NULL;
5482 if (check_col(pinfo->cinfo, COL_PROTOCOL))
5484 col_set_str(pinfo->cinfo, COL_PROTOCOL, "INAP");
5487 /* create display subtree for the protocol */
5489 item = proto_tree_add_item(parent_tree, proto_inap, tvb, 0, -1, FALSE);
5490 tree = proto_item_add_subtree(item, ett_inap);
5493 dissect_inap_INAPPDU(FALSE, tvb, 0, pinfo, tree, -1);
5498 /*--- proto_reg_handoff_inap ---------------------------------------*/
5499 static void range_delete_callback(guint32 ssn)
5502 delete_itu_tcap_subdissector(ssn, inap_handle);
5506 static void range_add_callback(guint32 ssn)
5509 add_itu_tcap_subdissector(ssn, inap_handle);
5513 void proto_reg_handoff_inap(void) {
5515 static int inap_prefs_initialized = FALSE;
5517 inap_handle = create_dissector_handle(dissect_inap, proto_inap);
5519 if (!inap_prefs_initialized) {
5520 inap_prefs_initialized = TRUE;
5523 range_foreach(ssn_range, range_delete_callback);
5527 ssn_range = range_copy(global_ssn_range);
5529 range_foreach(ssn_range, range_add_callback);
5533 void proto_register_inap(void) {
5534 module_t *inap_module;
5535 /* List of fields */
5536 static hf_register_info hf[] = {
5537 { &hf_inap_invokeCmd,
5538 { "invokeCmd", "inap.invokeCmd",
5539 FT_UINT32, BASE_DEC, VALS(inap_opr_code_strings), 0,
5540 "InvokePDU/invokeCmd", HFILL }},
5541 { &hf_inap_ReturnError,
5542 { "ReturnError", "inap.ReturnError",
5543 FT_UINT32, BASE_DEC, VALS(inap_error_code_strings), 0,
5544 "InvokePDU/ReturnError", HFILL }},
5545 { &hf_inap_invokeid,
5546 { "invokeid", "inap.invokeid",
5547 FT_INT32, BASE_DEC, NULL, 0,
5548 "InvokeId/invokeid", HFILL }},
5549 { &hf_inap_linkedid,
5550 { "linkedid", "inap.linkedid",
5551 FT_INT32, BASE_DEC, NULL, 0,
5552 "LinkedId/linkedid", HFILL }},
5555 { "absent", "inap.absent",
5556 FT_NONE, BASE_NONE, NULL, 0,
5557 "InvokeId/absent", HFILL }},
5558 { &hf_inap_invokeId,
5559 { "invokeId", "inap.invokeId",
5560 FT_UINT32, BASE_DEC, VALS(InvokeId_vals), 0,
5561 "InvokePDU/invokeId", HFILL }},
5563 { "invoke", "inap.invoke",
5564 FT_NONE, BASE_NONE, NULL, 0,
5565 "INAPPDU/invoke", HFILL }},
5566 { &hf_inap_returnResult,
5567 { "returnResult", "inap.returnResult",
5568 FT_NONE, BASE_NONE, NULL, 0,
5569 "INAPPDU/returnResult", HFILL }},
5573 /*--- Included file: packet-inap-hfarr.c ---*/
5574 #line 1 "packet-inap-hfarr.c"
5575 { &hf_inap_ActivateServiceFilteringArg_PDU,
5576 { "ActivateServiceFilteringArg", "inap.ActivateServiceFilteringArg",
5577 FT_NONE, BASE_NONE, NULL, 0,
5578 "ActivateServiceFilteringArg", HFILL }},
5579 { &hf_inap_AnalysedInformationArg_PDU,
5580 { "AnalysedInformationArg", "inap.AnalysedInformationArg",
5581 FT_NONE, BASE_NONE, NULL, 0,
5582 "AnalysedInformationArg", HFILL }},
5583 { &hf_inap_AnalyseInformationArg_PDU,
5584 { "AnalyseInformationArg", "inap.AnalyseInformationArg",
5585 FT_NONE, BASE_NONE, NULL, 0,
5586 "AnalyseInformationArg", HFILL }},
5587 { &hf_inap_ApplyChargingArg_PDU,
5588 { "ApplyChargingArg", "inap.ApplyChargingArg",
5589 FT_NONE, BASE_NONE, NULL, 0,
5590 "ApplyChargingArg", HFILL }},
5591 { &hf_inap_ApplyChargingReportArg_PDU,
5592 { "ApplyChargingReportArg", "inap.ApplyChargingReportArg",
5593 FT_BYTES, BASE_HEX, NULL, 0,
5594 "ApplyChargingReportArg", HFILL }},
5595 { &hf_inap_AssistRequestInstructionsArg_PDU,
5596 { "AssistRequestInstructionsArg", "inap.AssistRequestInstructionsArg",
5597 FT_NONE, BASE_NONE, NULL, 0,
5598 "AssistRequestInstructionsArg", HFILL }},
5599 { &hf_inap_CallGapArg_PDU,
5600 { "CallGapArg", "inap.CallGapArg",
5601 FT_NONE, BASE_NONE, NULL, 0,
5602 "CallGapArg", HFILL }},
5603 { &hf_inap_CallInformationReportArg_PDU,
5604 { "CallInformationReportArg", "inap.CallInformationReportArg",
5605 FT_NONE, BASE_NONE, NULL, 0,
5606 "CallInformationReportArg", HFILL }},
5607 { &hf_inap_CallInformationRequestArg_PDU,
5608 { "CallInformationRequestArg", "inap.CallInformationRequestArg",
5609 FT_NONE, BASE_NONE, NULL, 0,
5610 "CallInformationRequestArg", HFILL }},
5611 { &hf_inap_CancelArg_PDU,
5612 { "CancelArg", "inap.CancelArg",
5613 FT_UINT32, BASE_DEC, VALS(inap_CancelArg_vals), 0,
5614 "CancelArg", HFILL }},
5615 { &hf_inap_CollectedInformationArg_PDU,
5616 { "CollectedInformationArg", "inap.CollectedInformationArg",
5617 FT_NONE, BASE_NONE, NULL, 0,
5618 "CollectedInformationArg", HFILL }},
5619 { &hf_inap_CollectInformationArg_PDU,
5620 { "CollectInformationArg", "inap.CollectInformationArg",
5621 FT_NONE, BASE_NONE, NULL, 0,
5622 "CollectInformationArg", HFILL }},
5623 { &hf_inap_ConnectArg_PDU,
5624 { "ConnectArg", "inap.ConnectArg",
5625 FT_NONE, BASE_NONE, NULL, 0,
5626 "ConnectArg", HFILL }},
5627 { &hf_inap_ConnectToResourceArg_PDU,
5628 { "ConnectToResourceArg", "inap.ConnectToResourceArg",
5629 FT_NONE, BASE_NONE, NULL, 0,
5630 "ConnectToResourceArg", HFILL }},
5631 { &hf_inap_EstablishTemporaryConnectionArg_PDU,
5632 { "EstablishTemporaryConnectionArg", "inap.EstablishTemporaryConnectionArg",
5633 FT_NONE, BASE_NONE, NULL, 0,
5634 "EstablishTemporaryConnectionArg", HFILL }},
5635 { &hf_inap_EventNotificationChargingArg_PDU,
5636 { "EventNotificationChargingArg", "inap.EventNotificationChargingArg",
5637 FT_NONE, BASE_NONE, NULL, 0,
5638 "EventNotificationChargingArg", HFILL }},
5639 { &hf_inap_EventReportBCSMArg_PDU,
5640 { "EventReportBCSMArg", "inap.EventReportBCSMArg",
5641 FT_NONE, BASE_NONE, NULL, 0,
5642 "EventReportBCSMArg", HFILL }},
5643 { &hf_inap_FurnishChargingInformationArg_PDU,
5644 { "FurnishChargingInformationArg", "inap.FurnishChargingInformationArg",
5645 FT_BYTES, BASE_HEX, NULL, 0,
5646 "FurnishChargingInformationArg", HFILL }},
5647 { &hf_inap_HoldCallInNetworkArg_PDU,
5648 { "HoldCallInNetworkArg", "inap.HoldCallInNetworkArg",
5649 FT_UINT32, BASE_DEC, VALS(inap_HoldCallInNetworkArg_vals), 0,
5650 "HoldCallInNetworkArg", HFILL }},
5651 { &hf_inap_InitialDP_PDU,
5652 { "InitialDP", "inap.InitialDP",
5653 FT_NONE, BASE_NONE, NULL, 0,
5654 "InitialDP", HFILL }},
5655 { &hf_inap_InitiateCallAttemptArg_PDU,
5656 { "InitiateCallAttemptArg", "inap.InitiateCallAttemptArg",
5657 FT_NONE, BASE_NONE, NULL, 0,
5658 "InitiateCallAttemptArg", HFILL }},
5659 { &hf_inap_MidCallArg_PDU,
5660 { "MidCallArg", "inap.MidCallArg",
5661 FT_NONE, BASE_NONE, NULL, 0,
5662 "MidCallArg", HFILL }},
5663 { &hf_inap_OAnswerArg_PDU,
5664 { "OAnswerArg", "inap.OAnswerArg",
5665 FT_NONE, BASE_NONE, NULL, 0,
5666 "OAnswerArg", HFILL }},
5667 { &hf_inap_OCalledPartyBusyArg_PDU,
5668 { "OCalledPartyBusyArg", "inap.OCalledPartyBusyArg",
5669 FT_NONE, BASE_NONE, NULL, 0,
5670 "OCalledPartyBusyArg", HFILL }},
5671 { &hf_inap_ODisconnectArg_PDU,
5672 { "ODisconnectArg", "inap.ODisconnectArg",
5673 FT_NONE, BASE_NONE, NULL, 0,
5674 "ODisconnectArg", HFILL }},
5675 { &hf_inap_ONoAnswer_PDU,
5676 { "ONoAnswer", "inap.ONoAnswer",
5677 FT_NONE, BASE_NONE, NULL, 0,
5678 "ONoAnswer", HFILL }},
5679 { &hf_inap_OriginationAttemptAuthorizedArg_PDU,
5680 { "OriginationAttemptAuthorizedArg", "inap.OriginationAttemptAuthorizedArg",
5681 FT_NONE, BASE_NONE, NULL, 0,
5682 "OriginationAttemptAuthorizedArg", HFILL }},
5683 { &hf_inap_PlayAnnouncementArg_PDU,
5684 { "PlayAnnouncementArg", "inap.PlayAnnouncementArg",
5685 FT_NONE, BASE_NONE, NULL, 0,
5686 "PlayAnnouncementArg", HFILL }},
5687 { &hf_inap_PromptAndCollectUserInformationArg_PDU,
5688 { "PromptAndCollectUserInformationArg", "inap.PromptAndCollectUserInformationArg",
5689 FT_NONE, BASE_NONE, NULL, 0,
5690 "PromptAndCollectUserInformationArg", HFILL }},
5691 { &hf_inap_ReceivedInformationArg_PDU,
5692 { "ReceivedInformationArg", "inap.ReceivedInformationArg",
5693 FT_UINT32, BASE_DEC, VALS(inap_ReceivedInformationArg_vals), 0,
5694 "ReceivedInformationArg", HFILL }},
5695 { &hf_inap_ReleaseCallArg_PDU,
5696 { "ReleaseCallArg", "inap.ReleaseCallArg",
5697 FT_UINT32, BASE_DEC, VALS(inap_ReleaseCallArg_vals), 0,
5698 "ReleaseCallArg", HFILL }},
5699 { &hf_inap_RequestCurrentStatusReportArg_PDU,
5700 { "RequestCurrentStatusReportArg", "inap.RequestCurrentStatusReportArg",
5701 FT_UINT32, BASE_DEC, VALS(inap_ResourceID_vals), 0,
5702 "RequestCurrentStatusReportArg", HFILL }},
5703 { &hf_inap_RequestCurrentStatusReportResultArg_PDU,
5704 { "RequestCurrentStatusReportResultArg", "inap.RequestCurrentStatusReportResultArg",
5705 FT_NONE, BASE_NONE, NULL, 0,
5706 "RequestCurrentStatusReportResultArg", HFILL }},
5707 { &hf_inap_RequestEveryStatusChangeReportArg_PDU,
5708 { "RequestEveryStatusChangeReportArg", "inap.RequestEveryStatusChangeReportArg",
5709 FT_NONE, BASE_NONE, NULL, 0,
5710 "RequestEveryStatusChangeReportArg", HFILL }},
5711 { &hf_inap_RequestFirstStatusMatchReportArg_PDU,
5712 { "RequestFirstStatusMatchReportArg", "inap.RequestFirstStatusMatchReportArg",
5713 FT_NONE, BASE_NONE, NULL, 0,
5714 "RequestFirstStatusMatchReportArg", HFILL }},
5715 { &hf_inap_RequestNotificationChargingEvent_PDU,
5716 { "RequestNotificationChargingEvent", "inap.RequestNotificationChargingEvent",
5717 FT_UINT32, BASE_DEC, NULL, 0,
5718 "RequestNotificationChargingEvent", HFILL }},
5719 { &hf_inap_RequestReportBCSMEventArg_PDU,
5720 { "RequestReportBCSMEventArg", "inap.RequestReportBCSMEventArg",
5721 FT_NONE, BASE_NONE, NULL, 0,
5722 "RequestReportBCSMEventArg", HFILL }},
5723 { &hf_inap_ResetTimerArg_PDU,
5724 { "ResetTimerArg", "inap.ResetTimerArg",
5725 FT_NONE, BASE_NONE, NULL, 0,
5726 "ResetTimerArg", HFILL }},
5727 { &hf_inap_RouteSelectFailureArg_PDU,
5728 { "RouteSelectFailureArg", "inap.RouteSelectFailureArg",
5729 FT_NONE, BASE_NONE, NULL, 0,
5730 "RouteSelectFailureArg", HFILL }},
5731 { &hf_inap_SelectFacilityArg_PDU,
5732 { "SelectFacilityArg", "inap.SelectFacilityArg",
5733 FT_NONE, BASE_NONE, NULL, 0,
5734 "SelectFacilityArg", HFILL }},
5735 { &hf_inap_SelectRouteArg_PDU,
5736 { "SelectRouteArg", "inap.SelectRouteArg",
5737 FT_NONE, BASE_NONE, NULL, 0,
5738 "SelectRouteArg", HFILL }},
5739 { &hf_inap_ServiceFilteringResponseArg_PDU,
5740 { "ServiceFilteringResponseArg", "inap.ServiceFilteringResponseArg",
5741 FT_NONE, BASE_NONE, NULL, 0,
5742 "ServiceFilteringResponseArg", HFILL }},
5743 { &hf_inap_SpecializedResourceReportArg_PDU,
5744 { "SpecializedResourceReportArg", "inap.SpecializedResourceReportArg",
5745 FT_NONE, BASE_NONE, NULL, 0,
5746 "SpecializedResourceReportArg", HFILL }},
5747 { &hf_inap_StatusReportArg_PDU,
5748 { "StatusReportArg", "inap.StatusReportArg",
5749 FT_NONE, BASE_NONE, NULL, 0,
5750 "StatusReportArg", HFILL }},
5751 { &hf_inap_TAnswerArg_PDU,
5752 { "TAnswerArg", "inap.TAnswerArg",
5753 FT_NONE, BASE_NONE, NULL, 0,
5754 "TAnswerArg", HFILL }},
5755 { &hf_inap_TBusyArg_PDU,
5756 { "TBusyArg", "inap.TBusyArg",
5757 FT_NONE, BASE_NONE, NULL, 0,
5758 "TBusyArg", HFILL }},
5759 { &hf_inap_TDisconnectArg_PDU,
5760 { "TDisconnectArg", "inap.TDisconnectArg",
5761 FT_NONE, BASE_NONE, NULL, 0,
5762 "TDisconnectArg", HFILL }},
5763 { &hf_inap_TermAttemptAuthorizedArg_PDU,
5764 { "TermAttemptAuthorizedArg", "inap.TermAttemptAuthorizedArg",
5765 FT_NONE, BASE_NONE, NULL, 0,
5766 "TermAttemptAuthorizedArg", HFILL }},
5767 { &hf_inap_TNoAnswerArg_PDU,
5768 { "TNoAnswerArg", "inap.TNoAnswerArg",
5769 FT_NONE, BASE_NONE, NULL, 0,
5770 "TNoAnswerArg", HFILL }},
5771 { &hf_inap_originalCallID,
5772 { "originalCallID", "inap.originalCallID",
5773 FT_INT32, BASE_DEC, NULL, 0,
5774 "AddPartyArg/originalCallID", HFILL }},
5775 { &hf_inap_destinationCallID,
5776 { "destinationCallID", "inap.destinationCallID",
5777 FT_INT32, BASE_DEC, NULL, 0,
5778 "AddPartyArg/destinationCallID", HFILL }},
5779 { &hf_inap_newLegID,
5780 { "newLegID", "inap.newLegID",
5781 FT_BYTES, BASE_HEX, NULL, 0,
5782 "AttachArg/newLegID", HFILL }},
5783 { &hf_inap_correlationidentifier,
5784 { "correlationidentifier", "inap.correlationidentifier",
5785 FT_BYTES, BASE_HEX, NULL, 0,
5787 { &hf_inap_CallPartyHandlingResultsArg_item,
5788 { "Item", "inap.CallPartyHandlingResultsArg_item",
5789 FT_NONE, BASE_NONE, NULL, 0,
5790 "CallPartyHandlingResultsArg/_item", HFILL }},
5792 { "callID", "inap.callID",
5793 FT_INT32, BASE_DEC, NULL, 0,
5795 { &hf_inap_targetCallID,
5796 { "targetCallID", "inap.targetCallID",
5797 FT_INT32, BASE_DEC, NULL, 0,
5798 "ChangePartiesArg/targetCallID", HFILL }},
5799 { &hf_inap_legToBeConnectedID,
5800 { "legToBeConnectedID", "inap.legToBeConnectedID",
5801 FT_BYTES, BASE_HEX, NULL, 0,
5802 "ChangePartiesArg/legToBeConnectedID", HFILL }},
5803 { &hf_inap_legToBeDetached,
5804 { "legToBeDetached", "inap.legToBeDetached",
5805 FT_BYTES, BASE_HEX, NULL, 0,
5806 "DetachArg/legToBeDetached", HFILL }},
5808 { "legID", "inap.legID",
5809 FT_UINT32, BASE_DEC, VALS(inap_LegID_vals), 0,
5811 { &hf_inap_heldLegID,
5812 { "heldLegID", "inap.heldLegID",
5813 FT_UINT32, BASE_DEC, VALS(inap_LegID_vals), 0,
5814 "ReconnectArg/heldLegID", HFILL }},
5815 { &hf_inap_legToBeReleased,
5816 { "legToBeReleased", "inap.legToBeReleased",
5817 FT_UINT32, BASE_DEC, VALS(inap_LegID_vals), 0,
5818 "ReleaseCallPartyConnectionArg/legToBeReleased", HFILL }},
5819 { &hf_inap_releaseCause,
5820 { "releaseCause", "inap.releaseCause",
5821 FT_BYTES, BASE_HEX, NULL, 0,
5823 { &hf_inap_legStatus,
5824 { "legStatus", "inap.legStatus",
5825 FT_UINT32, BASE_DEC, VALS(inap_LegStatus_vals), 0,
5826 "LegInformation/legStatus", HFILL }},
5827 { &hf_inap_Extensions_item,
5828 { "Item", "inap.Extensions_item",
5829 FT_NONE, BASE_NONE, NULL, 0,
5830 "Extensions/_item", HFILL }},
5832 { "type", "inap.type",
5833 FT_INT32, BASE_DEC, NULL, 0,
5834 "Extensions/_item/type", HFILL }},
5835 { &hf_inap_criticality,
5836 { "criticality", "inap.criticality",
5837 FT_UINT32, BASE_DEC, VALS(inap_T_criticality_vals), 0,
5838 "Extensions/_item/criticality", HFILL }},
5840 { "value", "inap.value",
5841 FT_BYTES, BASE_HEX, NULL, 0,
5842 "Extensions/_item/value", HFILL }},
5843 { &hf_inap_filteredCallTreatment,
5844 { "filteredCallTreatment", "inap.filteredCallTreatment",
5845 FT_NONE, BASE_NONE, NULL, 0,
5846 "ActivateServiceFilteringArg/filteredCallTreatment", HFILL }},
5847 { &hf_inap_filteringCharacteristics,
5848 { "filteringCharacteristics", "inap.filteringCharacteristics",
5849 FT_UINT32, BASE_DEC, VALS(inap_FilteringCharacteristics_vals), 0,
5850 "ActivateServiceFilteringArg/filteringCharacteristics", HFILL }},
5851 { &hf_inap_filteringTimeOut,
5852 { "filteringTimeOut", "inap.filteringTimeOut",
5853 FT_UINT32, BASE_DEC, VALS(inap_FilteringTimeOut_vals), 0,
5854 "ActivateServiceFilteringArg/filteringTimeOut", HFILL }},
5855 { &hf_inap_filteringCriteria,
5856 { "filteringCriteria", "inap.filteringCriteria",
5857 FT_UINT32, BASE_DEC, VALS(inap_FilteringCriteria_vals), 0,
5859 { &hf_inap_startTime,
5860 { "startTime", "inap.startTime",
5861 FT_BYTES, BASE_HEX, NULL, 0,
5862 "ActivateServiceFilteringArg/startTime", HFILL }},
5863 { &hf_inap_extensions,
5864 { "extensions", "inap.extensions",
5865 FT_UINT32, BASE_DEC, NULL, 0,
5867 { &hf_inap_dpSpecificCommonParameters,
5868 { "dpSpecificCommonParameters", "inap.dpSpecificCommonParameters",
5869 FT_NONE, BASE_NONE, NULL, 0,
5871 { &hf_inap_dialledDigits,
5872 { "dialledDigits", "inap.dialledDigits",
5873 FT_BYTES, BASE_HEX, NULL, 0,
5875 { &hf_inap_callingPartyBusinessGroupID,
5876 { "callingPartyBusinessGroupID", "inap.callingPartyBusinessGroupID",
5877 FT_BYTES, BASE_HEX, NULL, 0,
5879 { &hf_inap_callingPartySubaddress,
5880 { "callingPartySubaddress", "inap.callingPartySubaddress",
5881 FT_BYTES, BASE_HEX, NULL, 0,
5883 { &hf_inap_callingFacilityGroup,
5884 { "callingFacilityGroup", "inap.callingFacilityGroup",
5885 FT_UINT32, BASE_DEC, VALS(inap_FacilityGroup_vals), 0,
5887 { &hf_inap_callingFacilityGroupMember,
5888 { "callingFacilityGroupMember", "inap.callingFacilityGroupMember",
5889 FT_INT32, BASE_DEC, NULL, 0,
5891 { &hf_inap_originalCalledPartyID,
5892 { "originalCalledPartyID", "inap.originalCalledPartyID",
5893 FT_BYTES, BASE_HEX, NULL, 0,
5896 { "prefix", "inap.prefix",
5897 FT_BYTES, BASE_HEX, NULL, 0,
5899 { &hf_inap_redirectingPartyID,
5900 { "redirectingPartyID", "inap.redirectingPartyID",
5901 FT_BYTES, BASE_HEX, NULL, 0,
5903 { &hf_inap_redirectionInformation,
5904 { "redirectionInformation", "inap.redirectionInformation",
5905 FT_BYTES, BASE_HEX, NULL, 0,
5907 { &hf_inap_routeList,
5908 { "routeList", "inap.routeList",
5909 FT_UINT32, BASE_DEC, NULL, 0,
5911 { &hf_inap_travellingClassMark,
5912 { "travellingClassMark", "inap.travellingClassMark",
5913 FT_BYTES, BASE_HEX, NULL, 0,
5915 { &hf_inap_featureCode,
5916 { "featureCode", "inap.featureCode",
5917 FT_BYTES, BASE_HEX, NULL, 0,
5919 { &hf_inap_accessCode,
5920 { "accessCode", "inap.accessCode",
5921 FT_BYTES, BASE_HEX, NULL, 0,
5924 { "carrier", "inap.carrier",
5925 FT_BYTES, BASE_HEX, NULL, 0,
5927 { &hf_inap_destinationRoutingAddress,
5928 { "destinationRoutingAddress", "inap.destinationRoutingAddress",
5929 FT_UINT32, BASE_DEC, NULL, 0,
5931 { &hf_inap_alertingPattern,
5932 { "alertingPattern", "inap.alertingPattern",
5933 FT_BYTES, BASE_HEX, NULL, 0,
5935 { &hf_inap_iSDNAccessRelatedInformation,
5936 { "iSDNAccessRelatedInformation", "inap.iSDNAccessRelatedInformation",
5937 FT_BYTES, BASE_HEX, NULL, 0,
5939 { &hf_inap_callingPartyNumber,
5940 { "callingPartyNumber", "inap.callingPartyNumber",
5941 FT_BYTES, BASE_HEX, NULL, 0,
5943 { &hf_inap_callingPartysCategory,
5944 { "callingPartysCategory", "inap.callingPartysCategory",
5945 FT_UINT16, BASE_DEC, VALS(isup_calling_partys_category_value), 0,
5947 { &hf_inap_calledPartyNumber,
5948 { "calledPartyNumber", "inap.calledPartyNumber",
5949 FT_BYTES, BASE_HEX, NULL, 0,
5951 { &hf_inap_chargeNumber,
5952 { "chargeNumber", "inap.chargeNumber",
5953 FT_BYTES, BASE_HEX, NULL, 0,
5955 { &hf_inap_aChBillingChargingCharacteristics,
5956 { "aChBillingChargingCharacteristics", "inap.aChBillingChargingCharacteristics",
5957 FT_BYTES, BASE_HEX, NULL, 0,
5958 "ApplyChargingArg/aChBillingChargingCharacteristics", HFILL }},
5959 { &hf_inap_partyToCharge,
5960 { "partyToCharge", "inap.partyToCharge",
5961 FT_UINT32, BASE_DEC, VALS(inap_LegID_vals), 0,
5963 { &hf_inap_correlationID,
5964 { "correlationID", "inap.correlationID",
5965 FT_BYTES, BASE_HEX, NULL, 0,
5967 { &hf_inap_iPAvailable,
5968 { "iPAvailable", "inap.iPAvailable",
5969 FT_BYTES, BASE_HEX, NULL, 0,
5971 { &hf_inap_iPSSPCapabilities,
5972 { "iPSSPCapabilities", "inap.iPSSPCapabilities",
5973 FT_BYTES, BASE_HEX, NULL, 0,
5975 { &hf_inap_gapCriteria,
5976 { "gapCriteria", "inap.gapCriteria",
5977 FT_UINT32, BASE_DEC, VALS(inap_GapCriteria_vals), 0,
5978 "CallGapArg/gapCriteria", HFILL }},
5979 { &hf_inap_gapIndicators,
5980 { "gapIndicators", "inap.gapIndicators",
5981 FT_NONE, BASE_NONE, NULL, 0,
5982 "CallGapArg/gapIndicators", HFILL }},
5983 { &hf_inap_controlType,
5984 { "controlType", "inap.controlType",
5985 FT_UINT32, BASE_DEC, VALS(inap_ControlType_vals), 0,
5986 "CallGapArg/controlType", HFILL }},
5987 { &hf_inap_gapTreatment,
5988 { "gapTreatment", "inap.gapTreatment",
5989 FT_UINT32, BASE_DEC, VALS(inap_GapTreatment_vals), 0,
5990 "CallGapArg/gapTreatment", HFILL }},
5991 { &hf_inap_requestedInformationTypeList,
5992 { "requestedInformationTypeList", "inap.requestedInformationTypeList",
5993 FT_UINT32, BASE_DEC, NULL, 0,
5995 { &hf_inap_invokeID,
5996 { "invokeID", "inap.invokeID",
5997 FT_INT32, BASE_DEC, NULL, 0,
5998 "CancelArg/invokeID", HFILL }},
5999 { &hf_inap_allRequests,
6000 { "allRequests", "inap.allRequests",
6001 FT_NONE, BASE_NONE, NULL, 0,
6002 "CancelArg/allRequests", HFILL }},
6003 { &hf_inap_resourceID,
6004 { "resourceID", "inap.resourceID",
6005 FT_UINT32, BASE_DEC, VALS(inap_ResourceID_vals), 0,
6007 { &hf_inap_numberingPlan,
6008 { "numberingPlan", "inap.numberingPlan",
6009 FT_BYTES, BASE_HEX, NULL, 0,
6010 "CollectInformationArg/numberingPlan", HFILL }},
6011 { &hf_inap_cutAndPaste,
6012 { "cutAndPaste", "inap.cutAndPaste",
6013 FT_UINT32, BASE_DEC, NULL, 0,
6014 "ConnectArg/cutAndPaste", HFILL }},
6015 { &hf_inap_forwardingCondition,
6016 { "forwardingCondition", "inap.forwardingCondition",
6017 FT_UINT32, BASE_DEC, VALS(inap_ForwardingCondition_vals), 0,
6018 "ConnectArg/forwardingCondition", HFILL }},
6020 { "scfID", "inap.scfID",
6021 FT_BYTES, BASE_HEX, NULL, 0,
6023 { &hf_inap_serviceInteractionIndicators,
6024 { "serviceInteractionIndicators", "inap.serviceInteractionIndicators",
6025 FT_BYTES, BASE_HEX, NULL, 0,
6027 { &hf_inap_resourceAddress,
6028 { "resourceAddress", "inap.resourceAddress",
6029 FT_UINT32, BASE_DEC, VALS(inap_T_resourceAddress_vals), 0,
6030 "ConnectToResourceArg/resourceAddress", HFILL }},
6031 { &hf_inap_ipRoutingAddress,
6032 { "ipRoutingAddress", "inap.ipRoutingAddress",
6033 FT_BYTES, BASE_HEX, NULL, 0,
6036 { "both2", "inap.both2",
6037 FT_NONE, BASE_NONE, NULL, 0,
6038 "ConnectToResourceArg/resourceAddress/both2", HFILL }},
6040 { "none", "inap.none",
6041 FT_NONE, BASE_NONE, NULL, 0,
6042 "ConnectToResourceArg/resourceAddress/none", HFILL }},
6043 { &hf_inap_serviceAddressInformation,
6044 { "serviceAddressInformation", "inap.serviceAddressInformation",
6045 FT_NONE, BASE_NONE, NULL, 0,
6046 "DpSpecificCommonParameters/serviceAddressInformation", HFILL }},
6047 { &hf_inap_bearerCapability,
6048 { "bearerCapability", "inap.bearerCapability",
6049 FT_UINT32, BASE_DEC, VALS(inap_BearerCapability_vals), 0,
6051 { &hf_inap_cGEncountered,
6052 { "cGEncountered", "inap.cGEncountered",
6053 FT_UINT32, BASE_DEC, VALS(inap_CGEncountered_vals), 0,
6055 { &hf_inap_locationNumber,
6056 { "locationNumber", "inap.locationNumber",
6057 FT_BYTES, BASE_HEX, NULL, 0,
6059 { &hf_inap_serviceProfileIdentifier,
6060 { "serviceProfileIdentifier", "inap.serviceProfileIdentifier",
6061 FT_BYTES, BASE_HEX, NULL, 0,
6063 { &hf_inap_terminalType,
6064 { "terminalType", "inap.terminalType",
6065 FT_UINT32, BASE_DEC, VALS(inap_TerminalType_vals), 0,
6067 { &hf_inap_servingAreaID,
6068 { "servingAreaID", "inap.servingAreaID",
6069 FT_BYTES, BASE_HEX, NULL, 0,
6070 "DpSpecificCommonParameters/servingAreaID", HFILL }},
6071 { &hf_inap_assistingSSPIPRoutingAddress,
6072 { "assistingSSPIPRoutingAddress", "inap.assistingSSPIPRoutingAddress",
6073 FT_BYTES, BASE_HEX, NULL, 0,
6074 "EstablishTemporaryConnectionArg/assistingSSPIPRoutingAddress", HFILL }},
6075 { &hf_inap_eventTypeCharging,
6076 { "eventTypeCharging", "inap.eventTypeCharging",
6077 FT_BYTES, BASE_HEX, NULL, 0,
6079 { &hf_inap_eventSpecificInformationCharging,
6080 { "eventSpecificInformationCharging", "inap.eventSpecificInformationCharging",
6081 FT_BYTES, BASE_HEX, NULL, 0,
6082 "EventNotificationChargingArg/eventSpecificInformationCharging", HFILL }},
6083 { &hf_inap_monitorMode,
6084 { "monitorMode", "inap.monitorMode",
6085 FT_UINT32, BASE_DEC, VALS(inap_MonitorMode_vals), 0,
6087 { &hf_inap_eventTypeBCSM,
6088 { "eventTypeBCSM", "inap.eventTypeBCSM",
6089 FT_UINT32, BASE_DEC, VALS(inap_EventTypeBCSM_vals), 0,
6091 { &hf_inap_bcsmEventCorrelationID,
6092 { "bcsmEventCorrelationID", "inap.bcsmEventCorrelationID",
6093 FT_BYTES, BASE_HEX, NULL, 0,
6095 { &hf_inap_eventSpecificInformationBCSM,
6096 { "eventSpecificInformationBCSM", "inap.eventSpecificInformationBCSM",
6097 FT_UINT32, BASE_DEC, VALS(inap_EventSpecificInformationBCSM_vals), 0,
6098 "EventReportBCSMArg/eventSpecificInformationBCSM", HFILL }},
6099 { &hf_inap_miscCallInfo,
6100 { "miscCallInfo", "inap.miscCallInfo",
6101 FT_NONE, BASE_NONE, NULL, 0,
6103 { &hf_inap_holdcause,
6104 { "holdcause", "inap.holdcause",
6105 FT_BYTES, BASE_HEX, NULL, 0,
6106 "HoldCallInNetworkArg/holdcause", HFILL }},
6108 { "empty", "inap.empty",
6109 FT_NONE, BASE_NONE, NULL, 0,
6110 "HoldCallInNetworkArg/empty", HFILL }},
6111 { &hf_inap_serviceKey,
6112 { "serviceKey", "inap.serviceKey",
6113 FT_UINT32, BASE_DEC, NULL, 0,
6115 { &hf_inap_triggerType,
6116 { "triggerType", "inap.triggerType",
6117 FT_UINT32, BASE_DEC, VALS(inap_TriggerType_vals), 0,
6119 { &hf_inap_highLayerCompatibility,
6120 { "highLayerCompatibility", "inap.highLayerCompatibility",
6121 FT_BYTES, BASE_HEX, NULL, 0,
6122 "InitialDP/highLayerCompatibility", HFILL }},
6123 { &hf_inap_additionalCallingPartyNumber,
6124 { "additionalCallingPartyNumber", "inap.additionalCallingPartyNumber",
6125 FT_BYTES, BASE_HEX, NULL, 0,
6126 "InitialDP/additionalCallingPartyNumber", HFILL }},
6127 { &hf_inap_forwardCallIndicators,
6128 { "forwardCallIndicators", "inap.forwardCallIndicators",
6129 FT_BYTES, BASE_HEX, NULL, 0,
6130 "InitialDP/forwardCallIndicators", HFILL }},
6131 { &hf_inap_calledPartyBusinessGroupID,
6132 { "calledPartyBusinessGroupID", "inap.calledPartyBusinessGroupID",
6133 FT_BYTES, BASE_HEX, NULL, 0,
6135 { &hf_inap_calledPartySubaddress,
6136 { "calledPartySubaddress", "inap.calledPartySubaddress",
6137 FT_BYTES, BASE_HEX, NULL, 0,
6139 { &hf_inap_featureRequestIndicator,
6140 { "featureRequestIndicator", "inap.featureRequestIndicator",
6141 FT_UINT32, BASE_DEC, VALS(inap_FeatureRequestIndicator_vals), 0,
6142 "MidCallArg/featureRequestIndicator", HFILL }},
6143 { &hf_inap_busyCause,
6144 { "busyCause", "inap.busyCause",
6145 FT_BYTES, BASE_HEX, NULL, 0,
6147 { &hf_inap_connectTime,
6148 { "connectTime", "inap.connectTime",
6149 FT_UINT32, BASE_DEC, NULL, 0,
6151 { &hf_inap_informationToSend,
6152 { "informationToSend", "inap.informationToSend",
6153 FT_UINT32, BASE_DEC, VALS(inap_InformationToSend_vals), 0,
6155 { &hf_inap_disconnectFromIPForbidden,
6156 { "disconnectFromIPForbidden", "inap.disconnectFromIPForbidden",
6157 FT_BOOLEAN, 8, NULL, 0,
6159 { &hf_inap_requestAnnouncementComplete,
6160 { "requestAnnouncementComplete", "inap.requestAnnouncementComplete",
6161 FT_BOOLEAN, 8, NULL, 0,
6162 "PlayAnnouncementArg/requestAnnouncementComplete", HFILL }},
6163 { &hf_inap_collectedInfo,
6164 { "collectedInfo", "inap.collectedInfo",
6165 FT_UINT32, BASE_DEC, VALS(inap_CollectedInfo_vals), 0,
6166 "PromptAndCollectUserInformationArg/collectedInfo", HFILL }},
6167 { &hf_inap_digitsResponse,
6168 { "digitsResponse", "inap.digitsResponse",
6169 FT_BYTES, BASE_HEX, NULL, 0,
6170 "ReceivedInformationArg/digitsResponse", HFILL }},
6171 { &hf_inap_iA5Response,
6172 { "iA5Response", "inap.iA5Response",
6173 FT_STRING, BASE_NONE, NULL, 0,
6174 "ReceivedInformationArg/iA5Response", HFILL }},
6175 { &hf_inap_initialCallSegment,
6176 { "initialCallSegment", "inap.initialCallSegment",
6177 FT_BYTES, BASE_HEX, NULL, 0,
6178 "ReleaseCallArg/initialCallSegment", HFILL }},
6179 { &hf_inap_allCallSegments,
6180 { "allCallSegments", "inap.allCallSegments",
6181 FT_NONE, BASE_NONE, NULL, 0,
6182 "ReleaseCallArg/allCallSegments", HFILL }},
6183 { &hf_inap_resourceStatus,
6184 { "resourceStatus", "inap.resourceStatus",
6185 FT_UINT32, BASE_DEC, VALS(inap_ResourceStatus_vals), 0,
6187 { &hf_inap_monitorDuration,
6188 { "monitorDuration", "inap.monitorDuration",
6189 FT_INT32, BASE_DEC, NULL, 0,
6191 { &hf_inap_RequestNotificationChargingEvent_item,
6192 { "Item", "inap.RequestNotificationChargingEvent_item",
6193 FT_NONE, BASE_NONE, NULL, 0,
6194 "RequestNotificationChargingEvent/_item", HFILL }},
6195 { &hf_inap_eventTypeCharging2,
6196 { "eventTypeCharging2", "inap.eventTypeCharging2",
6197 FT_BYTES, BASE_HEX, NULL, 0,
6198 "RequestNotificationChargingEvent/_item/eventTypeCharging2", HFILL }},
6199 { &hf_inap_bcsmEvents,
6200 { "bcsmEvents", "inap.bcsmEvents",
6201 FT_UINT32, BASE_DEC, NULL, 0,
6202 "RequestReportBCSMEventArg/bcsmEvents", HFILL }},
6203 { &hf_inap_bcsmEvents_item,
6204 { "Item", "inap.bcsmEvents_item",
6205 FT_NONE, BASE_NONE, NULL, 0,
6206 "RequestReportBCSMEventArg/bcsmEvents/_item", HFILL }},
6208 { "timerID", "inap.timerID",
6209 FT_UINT32, BASE_DEC, VALS(inap_TimerID_vals), 0,
6210 "ResetTimerArg/timerID", HFILL }},
6211 { &hf_inap_timervalue,
6212 { "timervalue", "inap.timervalue",
6213 FT_UINT32, BASE_DEC, NULL, 0,
6214 "ResetTimerArg/timervalue", HFILL }},
6215 { &hf_inap_failureCause,
6216 { "failureCause", "inap.failureCause",
6217 FT_BYTES, BASE_HEX, NULL, 0,
6219 { &hf_inap_destinationNumberRoutingAddress,
6220 { "destinationNumberRoutingAddress", "inap.destinationNumberRoutingAddress",
6221 FT_BYTES, BASE_HEX, NULL, 0,
6222 "SelectFacilityArg/destinationNumberRoutingAddress", HFILL }},
6223 { &hf_inap_calledFacilityGroup,
6224 { "calledFacilityGroup", "inap.calledFacilityGroup",
6225 FT_UINT32, BASE_DEC, VALS(inap_FacilityGroup_vals), 0,
6227 { &hf_inap_calledFacilityGroupMember,
6228 { "calledFacilityGroupMember", "inap.calledFacilityGroupMember",
6229 FT_INT32, BASE_DEC, NULL, 0,
6231 { &hf_inap_sCIBillingChargingCharacteristics,
6232 { "sCIBillingChargingCharacteristics", "inap.sCIBillingChargingCharacteristics",
6233 FT_BYTES, BASE_HEX, NULL, 0,
6234 "SendChargingInformationArg/sCIBillingChargingCharacteristics", HFILL }},
6235 { &hf_inap_countersValue,
6236 { "countersValue", "inap.countersValue",
6237 FT_UINT32, BASE_DEC, NULL, 0,
6238 "ServiceFilteringResponseArg/countersValue", HFILL }},
6239 { &hf_inap_responseCondition,
6240 { "responseCondition", "inap.responseCondition",
6241 FT_UINT32, BASE_DEC, VALS(inap_ResponseCondition_vals), 0,
6242 "ServiceFilteringResponseArg/responseCondition", HFILL }},
6243 { &hf_inap_reportCondition,
6244 { "reportCondition", "inap.reportCondition",
6245 FT_UINT32, BASE_DEC, VALS(inap_ReportCondition_vals), 0,
6246 "StatusReportArg/reportCondition", HFILL }},
6247 { &hf_inap_dpSpecificCriteria,
6248 { "dpSpecificCriteria", "inap.dpSpecificCriteria",
6249 FT_UINT32, BASE_DEC, VALS(inap_DpSpecificCriteria_vals), 0,
6250 "BCSMEvent/dpSpecificCriteria", HFILL }},
6251 { &hf_inap_bearerCap,
6252 { "bearerCap", "inap.bearerCap",
6253 FT_BYTES, BASE_HEX, NULL, 0,
6254 "BearerCapability/bearerCap", HFILL }},
6256 { "tmr", "inap.tmr",
6257 FT_BYTES, BASE_HEX, NULL, 0,
6258 "BearerCapability/tmr", HFILL }},
6259 { &hf_inap_minimumNbOfDigits,
6260 { "minimumNbOfDigits", "inap.minimumNbOfDigits",
6261 FT_UINT32, BASE_DEC, NULL, 0,
6262 "CollectedDigits/minimumNbOfDigits", HFILL }},
6263 { &hf_inap_maximumNbOfDigits,
6264 { "maximumNbOfDigits", "inap.maximumNbOfDigits",
6265 FT_UINT32, BASE_DEC, NULL, 0,
6266 "CollectedDigits/maximumNbOfDigits", HFILL }},
6267 { &hf_inap_endOfReplyDigit,
6268 { "endOfReplyDigit", "inap.endOfReplyDigit",
6269 FT_BYTES, BASE_HEX, NULL, 0,
6270 "CollectedDigits/endOfReplyDigit", HFILL }},
6271 { &hf_inap_cancelDigit,
6272 { "cancelDigit", "inap.cancelDigit",
6273 FT_BYTES, BASE_HEX, NULL, 0,
6274 "CollectedDigits/cancelDigit", HFILL }},
6275 { &hf_inap_startDigit,
6276 { "startDigit", "inap.startDigit",
6277 FT_BYTES, BASE_HEX, NULL, 0,
6278 "CollectedDigits/startDigit", HFILL }},
6279 { &hf_inap_firstDigitTimeOut,
6280 { "firstDigitTimeOut", "inap.firstDigitTimeOut",
6281 FT_UINT32, BASE_DEC, NULL, 0,
6282 "CollectedDigits/firstDigitTimeOut", HFILL }},
6283 { &hf_inap_interDigitTimeOut,
6284 { "interDigitTimeOut", "inap.interDigitTimeOut",
6285 FT_UINT32, BASE_DEC, NULL, 0,
6286 "CollectedDigits/interDigitTimeOut", HFILL }},
6287 { &hf_inap_errorTreatment,
6288 { "errorTreatment", "inap.errorTreatment",
6289 FT_UINT32, BASE_DEC, VALS(inap_ErrorTreatment_vals), 0,
6290 "CollectedDigits/errorTreatment", HFILL }},
6291 { &hf_inap_interruptableAnnInd,
6292 { "interruptableAnnInd", "inap.interruptableAnnInd",
6293 FT_BOOLEAN, 8, NULL, 0,
6294 "CollectedDigits/interruptableAnnInd", HFILL }},
6295 { &hf_inap_voiceInformation,
6296 { "voiceInformation", "inap.voiceInformation",
6297 FT_BOOLEAN, 8, NULL, 0,
6298 "CollectedDigits/voiceInformation", HFILL }},
6299 { &hf_inap_voiceBack,
6300 { "voiceBack", "inap.voiceBack",
6301 FT_BOOLEAN, 8, NULL, 0,
6302 "CollectedDigits/voiceBack", HFILL }},
6303 { &hf_inap_collectedDigits,
6304 { "collectedDigits", "inap.collectedDigits",
6305 FT_NONE, BASE_NONE, NULL, 0,
6306 "CollectedInfo/collectedDigits", HFILL }},
6307 { &hf_inap_iA5Information,
6308 { "iA5Information", "inap.iA5Information",
6309 FT_BOOLEAN, 8, NULL, 0,
6310 "CollectedInfo/iA5Information", HFILL }},
6311 { &hf_inap_counterID,
6312 { "counterID", "inap.counterID",
6313 FT_UINT32, BASE_DEC, NULL, 0,
6314 "CounterAndValue/counterID", HFILL }},
6315 { &hf_inap_counterValue,
6316 { "counterValue", "inap.counterValue",
6317 FT_UINT32, BASE_DEC, NULL, 0,
6318 "CounterAndValue/counterValue", HFILL }},
6319 { &hf_inap_CountersValue_item,
6320 { "Item", "inap.CountersValue_item",
6321 FT_NONE, BASE_NONE, NULL, 0,
6322 "CountersValue/_item", HFILL }},
6323 { &hf_inap_DestinationRoutingAddress_item,
6324 { "Item", "inap.DestinationRoutingAddress_item",
6325 FT_BYTES, BASE_HEX, NULL, 0,
6326 "DestinationRoutingAddress/_item", HFILL }},
6327 { &hf_inap_numberOfDigits,
6328 { "numberOfDigits", "inap.numberOfDigits",
6329 FT_UINT32, BASE_DEC, NULL, 0,
6330 "DpSpecificCriteria/numberOfDigits", HFILL }},
6331 { &hf_inap_applicationTimer,
6332 { "applicationTimer", "inap.applicationTimer",
6333 FT_UINT32, BASE_DEC, NULL, 0,
6334 "DpSpecificCriteria/applicationTimer", HFILL }},
6335 { &hf_inap_collectedInfoSpecificInfo,
6336 { "collectedInfoSpecificInfo", "inap.collectedInfoSpecificInfo",
6337 FT_NONE, BASE_NONE, NULL, 0,
6338 "EventSpecificInformationBCSM/collectedInfoSpecificInfo", HFILL }},
6339 { &hf_inap_calledPartynumber,
6340 { "calledPartynumber", "inap.calledPartynumber",
6341 FT_BYTES, BASE_HEX, NULL, 0,
6343 { &hf_inap_analyzedInfoSpecificInfo,
6344 { "analyzedInfoSpecificInfo", "inap.analyzedInfoSpecificInfo",
6345 FT_NONE, BASE_NONE, NULL, 0,
6346 "EventSpecificInformationBCSM/analyzedInfoSpecificInfo", HFILL }},
6347 { &hf_inap_routeSelectFailureSpecificInfo,
6348 { "routeSelectFailureSpecificInfo", "inap.routeSelectFailureSpecificInfo",
6349 FT_NONE, BASE_NONE, NULL, 0,
6350 "EventSpecificInformationBCSM/routeSelectFailureSpecificInfo", HFILL }},
6351 { &hf_inap_oCalledPartyBusySpecificInfo,
6352 { "oCalledPartyBusySpecificInfo", "inap.oCalledPartyBusySpecificInfo",
6353 FT_NONE, BASE_NONE, NULL, 0,
6354 "EventSpecificInformationBCSM/oCalledPartyBusySpecificInfo", HFILL }},
6355 { &hf_inap_oNoAnswerSpecificInfo,
6356 { "oNoAnswerSpecificInfo", "inap.oNoAnswerSpecificInfo",
6357 FT_NONE, BASE_NONE, NULL, 0,
6358 "EventSpecificInformationBCSM/oNoAnswerSpecificInfo", HFILL }},
6359 { &hf_inap_oAnswerSpecificInfo,
6360 { "oAnswerSpecificInfo", "inap.oAnswerSpecificInfo",
6361 FT_NONE, BASE_NONE, NULL, 0,
6362 "EventSpecificInformationBCSM/oAnswerSpecificInfo", HFILL }},
6363 { &hf_inap_oMidCallSpecificInfo,
6364 { "oMidCallSpecificInfo", "inap.oMidCallSpecificInfo",
6365 FT_NONE, BASE_NONE, NULL, 0,
6366 "EventSpecificInformationBCSM/oMidCallSpecificInfo", HFILL }},
6367 { &hf_inap_oDisconnectSpecificInfo,
6368 { "oDisconnectSpecificInfo", "inap.oDisconnectSpecificInfo",
6369 FT_NONE, BASE_NONE, NULL, 0,
6370 "EventSpecificInformationBCSM/oDisconnectSpecificInfo", HFILL }},
6371 { &hf_inap_tBusySpecificInfo,
6372 { "tBusySpecificInfo", "inap.tBusySpecificInfo",
6373 FT_NONE, BASE_NONE, NULL, 0,
6374 "EventSpecificInformationBCSM/tBusySpecificInfo", HFILL }},
6375 { &hf_inap_tNoAnswerSpecificInfo,
6376 { "tNoAnswerSpecificInfo", "inap.tNoAnswerSpecificInfo",
6377 FT_NONE, BASE_NONE, NULL, 0,
6378 "EventSpecificInformationBCSM/tNoAnswerSpecificInfo", HFILL }},
6379 { &hf_inap_tAnswerSpecificInfo,
6380 { "tAnswerSpecificInfo", "inap.tAnswerSpecificInfo",
6381 FT_NONE, BASE_NONE, NULL, 0,
6382 "EventSpecificInformationBCSM/tAnswerSpecificInfo", HFILL }},
6383 { &hf_inap_tMidCallSpecificInfo,
6384 { "tMidCallSpecificInfo", "inap.tMidCallSpecificInfo",
6385 FT_NONE, BASE_NONE, NULL, 0,
6386 "EventSpecificInformationBCSM/tMidCallSpecificInfo", HFILL }},
6387 { &hf_inap_tDisconnectSpecificInfo,
6388 { "tDisconnectSpecificInfo", "inap.tDisconnectSpecificInfo",
6389 FT_NONE, BASE_NONE, NULL, 0,
6390 "EventSpecificInformationBCSM/tDisconnectSpecificInfo", HFILL }},
6391 { &hf_inap_trunkGroupID,
6392 { "trunkGroupID", "inap.trunkGroupID",
6393 FT_INT32, BASE_DEC, NULL, 0,
6395 { &hf_inap_privateFacilityID,
6396 { "privateFacilityID", "inap.privateFacilityID",
6397 FT_INT32, BASE_DEC, NULL, 0,
6398 "FacilityGroup/privateFacilityID", HFILL }},
6399 { &hf_inap_huntGroup,
6400 { "huntGroup", "inap.huntGroup",
6401 FT_BYTES, BASE_HEX, NULL, 0,
6402 "FacilityGroup/huntGroup", HFILL }},
6403 { &hf_inap_routeIndex,
6404 { "routeIndex", "inap.routeIndex",
6405 FT_BYTES, BASE_HEX, NULL, 0,
6406 "FacilityGroup/routeIndex", HFILL }},
6407 { &hf_inap_sFBillingChargingCharacteristics,
6408 { "sFBillingChargingCharacteristics", "inap.sFBillingChargingCharacteristics",
6409 FT_BYTES, BASE_HEX, NULL, 0,
6410 "FilteredCallTreatment/sFBillingChargingCharacteristics", HFILL }},
6411 { &hf_inap_maximumNumberOfCounters,
6412 { "maximumNumberOfCounters", "inap.maximumNumberOfCounters",
6413 FT_UINT32, BASE_DEC, NULL, 0,
6414 "FilteredCallTreatment/maximumNumberOfCounters", HFILL }},
6415 { &hf_inap_interval1,
6416 { "interval1", "inap.interval1",
6417 FT_INT32, BASE_DEC, NULL, 0,
6418 "FilteringCharacteristics/interval1", HFILL }},
6419 { &hf_inap_numberOfCalls,
6420 { "numberOfCalls", "inap.numberOfCalls",
6421 FT_UINT32, BASE_DEC, NULL, 0,
6422 "FilteringCharacteristics/numberOfCalls", HFILL }},
6423 { &hf_inap_dialledNumber,
6424 { "dialledNumber", "inap.dialledNumber",
6425 FT_BYTES, BASE_HEX, NULL, 0,
6426 "FilteringCriteria/dialledNumber", HFILL }},
6427 { &hf_inap_callingLineID,
6428 { "callingLineID", "inap.callingLineID",
6429 FT_BYTES, BASE_HEX, NULL, 0,
6430 "FilteringCriteria/callingLineID", HFILL }},
6431 { &hf_inap_addressAndService,
6432 { "addressAndService", "inap.addressAndService",
6433 FT_NONE, BASE_NONE, NULL, 0,
6434 "FilteringCriteria/addressAndService", HFILL }},
6435 { &hf_inap_calledAddressValue,
6436 { "calledAddressValue", "inap.calledAddressValue",
6437 FT_BYTES, BASE_HEX, NULL, 0,
6439 { &hf_inap_callingAddressValue,
6440 { "callingAddressValue", "inap.callingAddressValue",
6441 FT_BYTES, BASE_HEX, NULL, 0,
6443 { &hf_inap_duration,
6444 { "duration", "inap.duration",
6445 FT_INT32, BASE_DEC, NULL, 0,
6447 { &hf_inap_stopTime,
6448 { "stopTime", "inap.stopTime",
6449 FT_BYTES, BASE_HEX, NULL, 0,
6450 "FilteringTimeOut/stopTime", HFILL }},
6451 { &hf_inap_gapOnService,
6452 { "gapOnService", "inap.gapOnService",
6453 FT_NONE, BASE_NONE, NULL, 0,
6454 "GapCriteria/gapOnService", HFILL }},
6455 { &hf_inap_calledAddressAndService,
6456 { "calledAddressAndService", "inap.calledAddressAndService",
6457 FT_NONE, BASE_NONE, NULL, 0,
6458 "GapCriteria/calledAddressAndService", HFILL }},
6459 { &hf_inap_callingAddressAndService,
6460 { "callingAddressAndService", "inap.callingAddressAndService",
6461 FT_NONE, BASE_NONE, NULL, 0,
6462 "GapCriteria/callingAddressAndService", HFILL }},
6463 { &hf_inap_dpCriteria,
6464 { "dpCriteria", "inap.dpCriteria",
6465 FT_UINT32, BASE_DEC, VALS(inap_EventTypeBCSM_vals), 0,
6466 "GapOnService/dpCriteria", HFILL }},
6467 { &hf_inap_gapInterval,
6468 { "gapInterval", "inap.gapInterval",
6469 FT_INT32, BASE_DEC, NULL, 0,
6470 "GapIndicators/gapInterval", HFILL }},
6472 { "both", "inap.both",
6473 FT_NONE, BASE_NONE, NULL, 0,
6474 "GapTreatment/both", HFILL }},
6475 { &hf_inap_messageID,
6476 { "messageID", "inap.messageID",
6477 FT_UINT32, BASE_DEC, VALS(inap_MessageID_vals), 0,
6478 "InbandInfo/messageID", HFILL }},
6479 { &hf_inap_numberOfRepetitions,
6480 { "numberOfRepetitions", "inap.numberOfRepetitions",
6481 FT_UINT32, BASE_DEC, NULL, 0,
6482 "InbandInfo/numberOfRepetitions", HFILL }},
6483 { &hf_inap_duration3,
6484 { "duration3", "inap.duration3",
6485 FT_UINT32, BASE_DEC, NULL, 0,
6486 "InbandInfo/duration3", HFILL }},
6487 { &hf_inap_interval,
6488 { "interval", "inap.interval",
6489 FT_UINT32, BASE_DEC, NULL, 0,
6490 "InbandInfo/interval", HFILL }},
6491 { &hf_inap_inbandInfo,
6492 { "inbandInfo", "inap.inbandInfo",
6493 FT_NONE, BASE_NONE, NULL, 0,
6494 "InformationToSend/inbandInfo", HFILL }},
6496 { "tone", "inap.tone",
6497 FT_NONE, BASE_NONE, NULL, 0,
6498 "InformationToSend/tone", HFILL }},
6499 { &hf_inap_displayInformation,
6500 { "displayInformation", "inap.displayInformation",
6501 FT_STRING, BASE_NONE, NULL, 0,
6502 "InformationToSend/displayInformation", HFILL }},
6503 { &hf_inap_sendingSideID,
6504 { "sendingSideID", "inap.sendingSideID",
6505 FT_BYTES, BASE_HEX, NULL, 0,
6506 "LegID/sendingSideID", HFILL }},
6507 { &hf_inap_receivingSideID,
6508 { "receivingSideID", "inap.receivingSideID",
6509 FT_BYTES, BASE_HEX, NULL, 0,
6510 "LegID/receivingSideID", HFILL }},
6511 { &hf_inap_elementaryMessageID,
6512 { "elementaryMessageID", "inap.elementaryMessageID",
6513 FT_UINT32, BASE_DEC, NULL, 0,
6516 { "text", "inap.text",
6517 FT_NONE, BASE_NONE, NULL, 0,
6518 "MessageID/text", HFILL }},
6519 { &hf_inap_messageContent,
6520 { "messageContent", "inap.messageContent",
6521 FT_STRING, BASE_NONE, NULL, 0,
6522 "MessageID/text/messageContent", HFILL }},
6523 { &hf_inap_attributes,
6524 { "attributes", "inap.attributes",
6525 FT_BYTES, BASE_HEX, NULL, 0,
6526 "MessageID/text/attributes", HFILL }},
6527 { &hf_inap_elementaryMessageIDs,
6528 { "elementaryMessageIDs", "inap.elementaryMessageIDs",
6529 FT_UINT32, BASE_DEC, NULL, 0,
6530 "MessageID/elementaryMessageIDs", HFILL }},
6531 { &hf_inap_elementaryMessageIDs_item,
6532 { "Item", "inap.elementaryMessageIDs_item",
6533 FT_UINT32, BASE_DEC, NULL, 0,
6534 "MessageID/elementaryMessageIDs/_item", HFILL }},
6535 { &hf_inap_variableMessage,
6536 { "variableMessage", "inap.variableMessage",
6537 FT_NONE, BASE_NONE, NULL, 0,
6538 "MessageID/variableMessage", HFILL }},
6539 { &hf_inap_variableParts,
6540 { "variableParts", "inap.variableParts",
6541 FT_UINT32, BASE_DEC, NULL, 0,
6542 "MessageID/variableMessage/variableParts", HFILL }},
6543 { &hf_inap_variableParts_item,
6544 { "Item", "inap.variableParts_item",
6545 FT_UINT32, BASE_DEC, VALS(inap_VariablePart_vals), 0,
6546 "MessageID/variableMessage/variableParts/_item", HFILL }},
6547 { &hf_inap_messageType,
6548 { "messageType", "inap.messageType",
6549 FT_UINT32, BASE_DEC, VALS(inap_T_messageType_vals), 0,
6550 "MiscCallInfo/messageType", HFILL }},
6551 { &hf_inap_dpAssignment,
6552 { "dpAssignment", "inap.dpAssignment",
6553 FT_UINT32, BASE_DEC, VALS(inap_T_dpAssignment_vals), 0,
6554 "MiscCallInfo/dpAssignment", HFILL }},
6555 { &hf_inap_RequestedInformationList_item,
6556 { "Item", "inap.RequestedInformationList_item",
6557 FT_NONE, BASE_NONE, NULL, 0,
6558 "RequestedInformationList/_item", HFILL }},
6559 { &hf_inap_RequestedInformationTypeList_item,
6560 { "Item", "inap.RequestedInformationTypeList_item",
6561 FT_UINT32, BASE_DEC, VALS(inap_RequestedInformationType_vals), 0,
6562 "RequestedInformationTypeList/_item", HFILL }},
6563 { &hf_inap_requestedInformationType,
6564 { "requestedInformationType", "inap.requestedInformationType",
6565 FT_UINT32, BASE_DEC, VALS(inap_RequestedInformationType_vals), 0,
6566 "RequestedInformation/requestedInformationType", HFILL }},
6567 { &hf_inap_requestedInformationValue,
6568 { "requestedInformationValue", "inap.requestedInformationValue",
6569 FT_UINT32, BASE_DEC, VALS(inap_RequestedInformationValue_vals), 0,
6570 "RequestedInformation/requestedInformationValue", HFILL }},
6571 { &hf_inap_callAttemptElapsedTimeValue,
6572 { "callAttemptElapsedTimeValue", "inap.callAttemptElapsedTimeValue",
6573 FT_UINT32, BASE_DEC, NULL, 0,
6574 "RequestedInformationValue/callAttemptElapsedTimeValue", HFILL }},
6575 { &hf_inap_callStopTimeValue,
6576 { "callStopTimeValue", "inap.callStopTimeValue",
6577 FT_BYTES, BASE_HEX, NULL, 0,
6578 "RequestedInformationValue/callStopTimeValue", HFILL }},
6579 { &hf_inap_callConnectedElapsedTimeValue,
6580 { "callConnectedElapsedTimeValue", "inap.callConnectedElapsedTimeValue",
6581 FT_UINT32, BASE_DEC, NULL, 0,
6582 "RequestedInformationValue/callConnectedElapsedTimeValue", HFILL }},
6583 { &hf_inap_releaseCauseValue,
6584 { "releaseCauseValue", "inap.releaseCauseValue",
6585 FT_BYTES, BASE_HEX, NULL, 0,
6586 "RequestedInformationValue/releaseCauseValue", HFILL }},
6588 { "lineID", "inap.lineID",
6589 FT_BYTES, BASE_HEX, NULL, 0,
6590 "ResourceID/lineID", HFILL }},
6591 { &hf_inap_facilityGroupID,
6592 { "facilityGroupID", "inap.facilityGroupID",
6593 FT_UINT32, BASE_DEC, VALS(inap_FacilityGroup_vals), 0,
6594 "ResourceID/facilityGroupID", HFILL }},
6595 { &hf_inap_facilityGroupMemberID,
6596 { "facilityGroupMemberID", "inap.facilityGroupMemberID",
6597 FT_INT32, BASE_DEC, NULL, 0,
6598 "ResourceID/facilityGroupMemberID", HFILL }},
6599 { &hf_inap_RouteList_item,
6600 { "Item", "inap.RouteList_item",
6601 FT_BYTES, BASE_HEX, NULL, 0,
6602 "RouteList/_item", HFILL }},
6604 { "toneID", "inap.toneID",
6605 FT_UINT32, BASE_DEC, NULL, 0,
6606 "Tone/toneID", HFILL }},
6607 { &hf_inap_tone_duration,
6608 { "tone-duration", "inap.tone_duration",
6609 FT_UINT32, BASE_DEC, NULL, 0,
6610 "Tone/tone-duration", HFILL }},
6612 { "integer", "inap.integer",
6613 FT_UINT32, BASE_DEC, NULL, 0,
6614 "VariablePart/integer", HFILL }},
6616 { "number", "inap.number",
6617 FT_BYTES, BASE_HEX, NULL, 0,
6618 "VariablePart/number", HFILL }},
6620 { "time", "inap.time",
6621 FT_BYTES, BASE_HEX, NULL, 0,
6622 "VariablePart/time", HFILL }},
6624 { "date2", "inap.date2",
6625 FT_BYTES, BASE_HEX, NULL, 0,
6626 "VariablePart/date2", HFILL }},
6628 { "price", "inap.price",
6629 FT_BYTES, BASE_HEX, NULL, 0,
6630 "VariablePart/price", HFILL }},
6632 { "problem", "inap.problem",
6633 FT_UINT32, BASE_DEC, VALS(inap_T_problem_vals), 0,
6634 "CancelFailed/problem", HFILL }},
6635 { &hf_inap_operation,
6636 { "operation", "inap.operation",
6637 FT_INT32, BASE_DEC, NULL, 0,
6638 "CancelFailed/operation", HFILL }},
6639 { &hf_inap_rinvokeID,
6640 { "rinvokeID", "inap.rinvokeID",
6641 FT_UINT32, BASE_DEC, VALS(inap_T_rinvokeID_vals), 0,
6642 "RejectPDU/rinvokeID", HFILL }},
6643 { &hf_inap_invidtype,
6644 { "invidtype", "inap.invidtype",
6645 FT_INT32, BASE_DEC, NULL, 0,
6646 "RejectPDU/rinvokeID/invidtype", HFILL }},
6648 { "null", "inap.null",
6649 FT_NONE, BASE_NONE, NULL, 0,
6650 "RejectPDU/rinvokeID/null", HFILL }},
6651 { &hf_inap_rproblem,
6652 { "rproblem", "inap.rproblem",
6653 FT_UINT32, BASE_DEC, VALS(inap_T_rproblem_vals), 0,
6654 "RejectPDU/rproblem", HFILL }},
6657 FT_INT32, BASE_DEC, VALS(inap_GeneralProblem_vals), 0,
6658 "RejectPDU/rproblem/gp", HFILL }},
6661 FT_INT32, BASE_DEC, VALS(inap_InvokeProblem_vals), 0,
6662 "RejectPDU/rproblem/ip", HFILL }},
6664 { "rrp", "inap.rrp",
6665 FT_INT32, BASE_DEC, VALS(inap_ReturnResultProblem_vals), 0,
6666 "RejectPDU/rproblem/rrp", HFILL }},
6668 { "rep", "inap.rep",
6669 FT_INT32, BASE_DEC, VALS(inap_ReturnErrorProblem_vals), 0,
6670 "RejectPDU/rproblem/rep", HFILL }},
6672 /*--- End of included file: packet-inap-hfarr.c ---*/
6673 #line 671 "packet-inap-template.c"
6681 /* List of subtrees */
6682 static gint *ett[] = {
6685 &ett_inap_InvokePDU,
6686 &ett_inap_ReturnErrorPDU,
6687 &ett_inap_ReturnResultPDU,
6688 &ett_inap_ReturnResult_result,
6690 &ett_inapisup_parameter,
6692 /*--- Included file: packet-inap-ettarr.c ---*/
6693 #line 1 "packet-inap-ettarr.c"
6694 &ett_inap_AddPartyArg,
6695 &ett_inap_AttachArg,
6696 &ett_inap_CallPartyHandlingResultsArg,
6697 &ett_inap_ChangePartiesArg,
6698 &ett_inap_DetachArg,
6699 &ett_inap_HoldCallPartyConnectionArg,
6700 &ett_inap_ReconnectArg,
6701 &ett_inap_ReleaseCallPartyConnectionArg,
6702 &ett_inap_LegInformation,
6703 &ett_inap_Extensions,
6704 &ett_inap_Extensions_item,
6705 &ett_inap_ActivateServiceFilteringArg,
6706 &ett_inap_AnalysedInformationArg,
6707 &ett_inap_AnalyseInformationArg,
6708 &ett_inap_ApplyChargingArg,
6709 &ett_inap_AssistRequestInstructionsArg,
6710 &ett_inap_CallGapArg,
6711 &ett_inap_CallInformationReportArg,
6712 &ett_inap_CallInformationRequestArg,
6713 &ett_inap_CancelArg,
6714 &ett_inap_CancelStatusReportRequestArg,
6715 &ett_inap_CollectedInformationArg,
6716 &ett_inap_CollectInformationArg,
6717 &ett_inap_ConnectArg,
6718 &ett_inap_ConnectToResourceArg,
6719 &ett_inap_T_resourceAddress,
6721 &ett_inap_DpSpecificCommonParameters,
6722 &ett_inap_EstablishTemporaryConnectionArg,
6723 &ett_inap_EventNotificationChargingArg,
6724 &ett_inap_EventReportBCSMArg,
6725 &ett_inap_HoldCallInNetworkArg,
6726 &ett_inap_InitialDP,
6727 &ett_inap_InitiateCallAttemptArg,
6728 &ett_inap_MidCallArg,
6729 &ett_inap_OAnswerArg,
6730 &ett_inap_OCalledPartyBusyArg,
6731 &ett_inap_ODisconnectArg,
6732 &ett_inap_ONoAnswer,
6733 &ett_inap_OriginationAttemptAuthorizedArg,
6734 &ett_inap_PlayAnnouncementArg,
6735 &ett_inap_PromptAndCollectUserInformationArg,
6736 &ett_inap_ReceivedInformationArg,
6737 &ett_inap_ReleaseCallArg,
6738 &ett_inap_T_allCallSegments,
6739 &ett_inap_RequestCurrentStatusReportResultArg,
6740 &ett_inap_RequestEveryStatusChangeReportArg,
6741 &ett_inap_RequestFirstStatusMatchReportArg,
6742 &ett_inap_RequestNotificationChargingEvent,
6743 &ett_inap_RequestNotificationChargingEvent_item,
6744 &ett_inap_RequestReportBCSMEventArg,
6745 &ett_inap_SEQUENCE_SIZE_1_numOfBCSMEvents_OF_BCSMEvent,
6746 &ett_inap_ResetTimerArg,
6747 &ett_inap_RouteSelectFailureArg,
6748 &ett_inap_SelectFacilityArg,
6749 &ett_inap_SelectRouteArg,
6750 &ett_inap_SendChargingInformationArg,
6751 &ett_inap_ServiceFilteringResponseArg,
6752 &ett_inap_StatusReportArg,
6753 &ett_inap_TAnswerArg,
6755 &ett_inap_TDisconnectArg,
6756 &ett_inap_TermAttemptAuthorizedArg,
6757 &ett_inap_TNoAnswerArg,
6758 &ett_inap_BCSMEvent,
6759 &ett_inap_BearerCapability,
6760 &ett_inap_ChargingEvent,
6761 &ett_inap_CollectedDigits,
6762 &ett_inap_CollectedInfo,
6763 &ett_inap_CounterAndValue,
6764 &ett_inap_CountersValue,
6765 &ett_inap_DestinationRoutingAddress,
6766 &ett_inap_DpSpecificCriteria,
6767 &ett_inap_EventSpecificInformationBCSM,
6768 &ett_inap_T_collectedInfoSpecificInfo,
6769 &ett_inap_T_analyzedInfoSpecificInfo,
6770 &ett_inap_T_routeSelectFailureSpecificInfo,
6771 &ett_inap_T_oCalledPartyBusySpecificInfo,
6772 &ett_inap_T_oNoAnswerSpecificInfo,
6773 &ett_inap_T_oAnswerSpecificInfo,
6774 &ett_inap_T_oMidCallSpecificInfo,
6775 &ett_inap_T_oDisconnectSpecificInfo,
6776 &ett_inap_T_tBusySpecificInfo,
6777 &ett_inap_T_tNoAnswerSpecificInfo,
6778 &ett_inap_T_tAnswerSpecificInfo,
6779 &ett_inap_T_tMidCallSpecificInfo,
6780 &ett_inap_T_tDisconnectSpecificInfo,
6781 &ett_inap_FacilityGroup,
6782 &ett_inap_FilteredCallTreatment,
6783 &ett_inap_FilteringCharacteristics,
6784 &ett_inap_FilteringCriteria,
6785 &ett_inap_T_addressAndService,
6786 &ett_inap_FilteringTimeOut,
6787 &ett_inap_GapCriteria,
6788 &ett_inap_T_calledAddressAndService,
6789 &ett_inap_T_callingAddressAndService,
6790 &ett_inap_GapOnService,
6791 &ett_inap_GapIndicators,
6792 &ett_inap_GapTreatment,
6794 &ett_inap_InbandInfo,
6795 &ett_inap_InformationToSend,
6797 &ett_inap_MessageID,
6799 &ett_inap_SEQUENCE_SIZE_1_numOfMessageIDs_OF_Integer4,
6800 &ett_inap_T_variableMessage,
6801 &ett_inap_SEQUENCE_SIZE_1_5_OF_VariablePart,
6802 &ett_inap_MiscCallInfo,
6803 &ett_inap_RequestedInformationList,
6804 &ett_inap_RequestedInformationTypeList,
6805 &ett_inap_RequestedInformation,
6806 &ett_inap_RequestedInformationValue,
6807 &ett_inap_ResourceID,
6808 &ett_inap_RouteList,
6809 &ett_inap_ServiceAddressInformation,
6811 &ett_inap_VariablePart,
6812 &ett_inap_CancelFailed,
6813 &ett_inap_RejectPDU,
6814 &ett_inap_T_rinvokeID,
6815 &ett_inap_T_rproblem,
6817 /*--- End of included file: packet-inap-ettarr.c ---*/
6818 #line 689 "packet-inap-template.c"
6821 /* Register protocol */
6822 proto_inap = proto_register_protocol(PNAME, PSNAME, PFNAME);
6823 /*XXX register_dissector("inap", dissect_inap, proto_inap);*/
6824 /* Register fields and subtrees */
6825 proto_register_field_array(proto_inap, hf, array_length(hf));
6826 proto_register_subtree_array(ett, array_length(ett));
6828 /* Set default SSNs */
6829 range_convert_str(&global_ssn_range, "106,241", MAX_SSN);
6830 ssn_range = range_empty();
6832 inap_module = prefs_register_protocol(proto_inap, proto_reg_handoff_inap);
6834 prefs_register_range_preference(inap_module, "ssn", "TCAP SSNs",
6835 "TCAP Subsystem numbers used for INAP",
6836 &global_ssn_range, MAX_SSN);