2 * Routines for H.225 packet dissection
5 * Maintained by Andreas Sikkema (h323@ramdyne.nl)
7 * $Id: packet-h225.c,v 1.43 2004/05/25 21:27:02 guy Exp $
9 * Ethereal - Network traffic analyzer
10 * By Gerald Combs <gerald@ethereal.com>
11 * Copyright 1998 Gerald Combs
13 * This program is free software; you can redistribute it and/or
14 * modify it under the terms of the GNU General Public License
15 * as published by the Free Software Foundation; either version 2
16 * of the License, or (at your option) any later version.
18 * This program is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU General Public License for more details.
23 * You should have received a copy of the GNU General Public License
24 * along with this program; if not, write to the Free Software
25 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
33 #include <epan/packet.h>
34 #include <epan/conversation.h>
41 #include "packet-tpkt.h"
42 #include "packet-per.h"
43 #include "packet-h225.h"
44 #include "packet-h235.h"
45 #include "packet-h245.h"
47 #include "h225-persistentdata.h"
49 #define UDP_PORT_RAS1 1718
50 #define UDP_PORT_RAS2 1719
51 #define TCP_PORT_CS 1720
53 static void reset_h225_packet_info(h225_packet_info *pi);
54 static void ras_call_matching(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, h225_packet_info *pi);
56 static h225_packet_info h225_pi;
58 static dissector_handle_t h225ras_handle;
59 static dissector_handle_t H323UserInformation_handle;
60 static dissector_handle_t data_handle;
62 static int h225_tap = -1;
63 static int proto_h225 = -1;
64 static int hf_h225_cname = -1;
65 static int hf_h225_route = -1;
66 static int hf_h225_nonStandardUsageTypes = -1;
67 static int hf_h225_nonStandardUsageTypes_item = -1;
68 static int hf_h225_PresentationIndicator = -1;
69 static int hf_h225_CryptoH323Token = -1;
70 static int hf_h225_conferenceGoal = -1;
71 static int hf_h225_ScnConnectionType = -1;
72 static int hf_h225_ScnConnectionAggregation = -1;
73 static int hf_h225_FacilityReason = -1;
74 static int hf_h225_PublicTypeOfNumber = -1;
75 static int hf_h225_PrivateTypeOfNumber = -1;
76 static int hf_h225_UseSpecifiedTransport = -1;
77 static int hf_h225_SecurityErrors = -1;
78 static int hf_h225_SecurityErrors2 = -1;
79 static int hf_h225_ServiceControlSession_reason = -1;
80 static int hf_h225_billingMode = -1;
81 static int hf_h225_CCSCcallStartingPoint = -1;
82 static int hf_h225_GatekeeperRejectReason = -1;
83 static int hf_h225_UnregRequestReason = -1;
84 static int hf_h225_UnregRejectReason = -1;
85 static int hf_h225_CallType = -1;
86 static int hf_h225_CallModel = -1;
87 static int hf_h225_TransportQOS = -1;
88 static int hf_h225_BandRejectReason = -1;
89 static int hf_h225_DisengageReason = -1;
90 static int hf_h225_DisengageRejectReason = -1;
91 static int hf_h225_InfoRequestNakReason = -1;
92 static int hf_h225_SCRresult = -1;
93 static int hf_h225_GatekeeperInfo = -1;
94 static int hf_h225_SecurityServiceMode_encryption = -1;
95 static int hf_h225_SecurityServiceMode_authentication = -1;
96 static int hf_h225_SecurityServiceMode_integrity = -1;
97 static int hf_h225_SecurityCapabilities_tls = -1;
98 static int hf_h225_SecurityCapabilities_ipsec = -1;
99 static int hf_h225_H245Security = -1;
100 static int hf_h225_RasUsageInfoTypes = -1;
101 static int hf_h225_usageReportingCapability = -1;
102 static int hf_h225_BandWidth = -1;
103 static int hf_h225_channelRate = -1;
104 static int hf_h225_totalBandwidthRestriction = -1;
105 static int hf_h225_allowedBandWidth = -1;
106 static int hf_h225_channelMultiplier = -1;
107 static int hf_h225_DataRate = -1;
108 static int hf_h225_gatewayDataRate = -1;
109 static int hf_h225_dataRatesSupported = -1;
110 static int hf_h225_TerminalInfo = -1;
111 static int hf_h225_h248Message = -1;
112 static int hf_h225_StimulusControl = -1;
113 static int hf_h225_conferenceID = -1;
114 static int hf_h225_Generic_nonStandard = -1;
115 static int hf_h225_guid = -1;
116 static int hf_h225_replaceWithConferenceInvite = -1;
117 static int hf_h225_ReleaseCompleteReason = -1;
118 static int hf_h225_numberOfScnConnections = -1;
119 static int hf_h225_connectionParameters = -1;
120 static int hf_h225_RequestSeqNum = -1;
121 static int hf_h225_RasUsageSpecification_when = -1;
122 static int hf_h225_RasUsageSpecification_callStartingPoint = -1;
123 static int hf_h225_RasUsageSpecification = -1;
124 static int hf_h225_ipAddress_ip = -1;
125 static int hf_h225_ipAddress_port = -1;
126 static int hf_h225_ipAddress = -1;
127 static int hf_h225_routing = -1;
128 static int hf_h225_ipSourceRoute = -1;
129 static int hf_h225_ipxNode = -1;
130 static int hf_h225_ipxNetnum = -1;
131 static int hf_h225_ipxPort = -1;
132 static int hf_h225_ipxAddress = -1;
133 static int hf_h225_ipv6Address_ip = -1;
134 static int hf_h225_ipv6Address_port = -1;
135 static int hf_h225_ip6Address = -1;
136 static int hf_h225_netBios = -1;
137 static int hf_h225_nsap = -1;
138 static int hf_h225_TransportAddress = -1;
139 static int hf_h225_replyAddress = -1;
140 static int hf_h225_rasAddress = -1;
141 static int hf_h225_h245Address = -1;
142 static int hf_h225_destCallSignalAddress = -1;
143 static int hf_h225_sourceCallSignalAddress = -1;
144 static int hf_h225_CallSignalAddress2 = -1;
145 static int hf_h225_alternativeAddress = -1;
146 static int hf_h225_transportID = -1;
147 static int hf_h225_sendAddress = -1;
148 static int hf_h225_recvAddress = -1;
149 static int hf_h225_rtpAddress = -1;
150 static int hf_h225_rtcpAddress = -1;
151 static int hf_h225_h245 = -1;
152 static int hf_h225_callSignaling = -1;
153 static int hf_h225_carrierName = -1;
154 static int hf_h225_carrierIdentificationCode = -1;
155 static int hf_h225_CarrierInfo = -1;
156 static int hf_h225_segment = -1;
157 static int hf_h225_InfoRequestResponseStatus = -1;
158 static int hf_h225_CallIdentifier = -1;
159 static int hf_h225_globalCallId = -1;
160 static int hf_h225_threadId = -1;
161 static int hf_h225_CallLinkage = -1;
162 static int hf_h225_tokens = -1;
163 static int hf_h225_CryptoH323Tokens = -1;
164 static int hf_h225_needToRegister = -1;
165 static int hf_h225_priority = -1;
166 static int hf_h225_AlternateGK = -1;
167 static int hf_h225_alternateGatekeeper = -1;
168 static int hf_h225_altGKisPermanent = -1;
169 static int hf_h225_AltGKInfo = -1;
170 static int hf_h225_annexE = -1;
171 static int hf_h225_sctp = -1;
172 static int hf_h225_AlternateTransportAddress = -1;
173 static int hf_h225_setup_bool = -1;
174 static int hf_h225_callProceeding_bool = -1;
175 static int hf_h225_connect_bool = -1;
176 static int hf_h225_alerting_bool = -1;
177 static int hf_h225_information_bool = -1;
178 static int hf_h225_releaseComplete_bool = -1;
179 static int hf_h225_facility_bool = -1;
180 static int hf_h225_progress_bool = -1;
181 static int hf_h225_empty_bool = -1;
182 static int hf_h225_status_bool = -1;
183 static int hf_h225_statusInquiry_bool = -1;
184 static int hf_h225_setupAcknowledge_bool = -1;
185 static int hf_h225_notify_bool = -1;
186 static int hf_h225_UUIEsRequested = -1;
187 static int hf_h225_conferenceCalling = -1;
188 static int hf_h225_threePartyService = -1;
189 static int hf_h225_Q954Details = -1;
190 static int hf_h225_q932Full = -1;
191 static int hf_h225_q951Full = -1;
192 static int hf_h225_q952Full = -1;
193 static int hf_h225_q953Full = -1;
194 static int hf_h225_q955Full = -1;
195 static int hf_h225_q956Full = -1;
196 static int hf_h225_q957Full = -1;
197 static int hf_h225_QseriesOptions = -1;
198 static int hf_h225_ssrc = -1;
199 static int hf_h225_RTPsessionId = -1;
200 static int hf_h225_associatedSessionIds = -1;
201 static int hf_h225_RTPSession = -1;
202 static int hf_h225_ProtocolIdentifier = -1;
203 static int hf_h225_isoAlgorithm = -1;
204 static int hf_h225_iso9797 = -1;
205 static int hf_h225_algorithmOID = -1;
206 static int hf_h225_hMAC_iso10118_3 = -1;
207 static int hf_h225_enterpriseNumber = -1;
208 static int hf_h225_Generic_oid = -1;
209 static int hf_h225_tunnelledProtocolObjectID = -1;
210 static int hf_h225_StatusUUIE = -1;
211 static int hf_h225_StatusInquiryUUIE = -1;
212 static int hf_h225_SetupAcknowledgeUUIE = -1;
213 static int hf_h225_NotifyUUIE = -1;
214 static int hf_h225_imsi = -1;
215 static int hf_h225_tmsi = -1;
216 static int hf_h225_msisdn = -1;
217 static int hf_h225_imei = -1;
218 static int hf_h225_hplmn = -1;
219 static int hf_h225_vplmn = -1;
220 static int hf_h225_GSMUIM = -1;
221 static int hf_h225_sid = -1;
222 static int hf_h225_mid = -1;
223 static int hf_h225_systemid = -1;
224 static int hf_h225_min = -1;
225 static int hf_h225_mdn = -1;
226 static int hf_h225_esn = -1;
227 static int hf_h225_mscid = -1;
228 static int hf_h225_systemMyTypeCode = -1;
229 static int hf_h225_systemAccessType = -1;
230 static int hf_h225_qualificationInformationCode = -1;
231 static int hf_h225_sesn = -1;
232 static int hf_h225_soc = -1;
233 static int hf_h225_ANSI41UIM = -1;
234 static int hf_h225_MobileUIM = -1;
235 static int hf_h225_dataPartyNumber = -1;
236 static int hf_h225_telexPartyNumber = -1;
237 static int hf_h225_nationalStandardPartyNumber = -1;
238 static int hf_h225_publicNumberDigits = -1;
239 static int hf_h225_privateNumberDigits = -1;
240 static int hf_h225_e164Number = -1;
241 static int hf_h225_privateNumber = -1;
242 static int hf_h225_PartyNumber = -1;
243 static int hf_h225_startOfRange = -1;
244 static int hf_h225_endOfRange = -1;
245 static int hf_h225_protocolType = -1;
246 static int hf_h225_protocolVariant = -1;
247 static int hf_h225_TunnelledProtocolAlternateIdentifier = -1;
248 static int hf_h225_dialedDigits = -1;
249 static int hf_h225_urlId = -1;
250 static int hf_h225_h323ID = -1;
251 static int hf_h225_unicode = -1;
252 static int hf_h225_GatekeeperIdentifier = -1;
253 static int hf_h225_EndpointIdentifier = -1;
254 static int hf_h225_emailId = -1;
255 static int hf_h225_AliasAddress = -1;
256 static int hf_h225_featureServerAlias = -1;
257 static int hf_h225_RemoteExtensionAddress = -1;
258 static int hf_h225_conferenceAlias = -1;
259 static int hf_h225_wildcard = -1;
260 static int hf_h225_prefix = -1;
261 static int hf_h225_SupportedPrefix = -1;
262 static int hf_h225_SupportedPrefixes = -1;
263 static int hf_h225_H310Caps = -1;
264 static int hf_h225_H320Caps = -1;
265 static int hf_h225_H321Caps = -1;
266 static int hf_h225_H322Caps = -1;
267 static int hf_h225_H323Caps = -1;
268 static int hf_h225_H324Caps = -1;
269 static int hf_h225_VoiceCaps = -1;
270 static int hf_h225_T120OnlyCaps = -1;
271 static int hf_h225_NonStandardProtocol = -1;
272 static int hf_h225_SIPCaps = -1;
273 static int hf_h225_AddressPattern_range = -1;
274 static int hf_h225_AddressPattern = -1;
275 static int hf_h225_ConferenceList = -1;
276 static int hf_h225_conferences = -1;
277 static int hf_h225_T38FaxAnnexbOnlyCaps = -1;
278 static int hf_h225_SupportedProtocols = -1;
279 static int hf_h225_protocol = -1;
280 static int hf_h225_GatewayInfo = -1;
281 static int hf_h225_McuInfo = -1;
282 static int hf_h225_TunnelledProtocol_id = -1;
283 static int hf_h225_TunnelledProtocol_subIdentifier = -1;
284 static int hf_h225_TunnelledProtocol = -1;
285 static int hf_h225_TunnelledProtocols = -1;
286 static int hf_h225_desiredTunnelledProtocol = -1;
287 static int hf_h225_CicInfo_cic_item = -1;
288 static int hf_h225_CicInfo_pointCode = -1;
289 static int hf_h225_CicInfo_cic = -1;
290 static int hf_h225_CicInfo = -1;
291 static int hf_h225_GroupID_member_item = -1;
292 static int hf_h225_GroupID_member = -1;
293 static int hf_h225_GroupID_group = -1;
294 static int hf_h225_GroupID = -1;
295 static int hf_h225_sourceCircuitID = -1;
296 static int hf_h225_destinationCircuitID = -1;
297 static int hf_h225_Generic_standard = -1;
298 static int hf_h225_GenericIdentifier = -1;
299 static int hf_h225_EnumeratedParameter = -1;
300 static int hf_h225_parameters = -1;
301 static int hf_h225_GenericData = -1;
302 static int hf_h225_FeatureDescriptor = -1;
303 static int hf_h225_Content_raw = -1;
304 static int hf_h225_Content_text = -1;
305 static int hf_h225_Content = -1;
306 static int hf_h225_Content_bool = -1;
307 static int hf_h225_Content_number8 = -1;
308 static int hf_h225_number16 = -1;
309 static int hf_h225_Content_number32 = -1;
310 static int hf_h225_Content_compound = -1;
311 static int hf_h225_Content_nested = -1;
312 static int hf_h225_replacementFeatureSet = -1;
313 static int hf_h225_neededFeatures = -1;
314 static int hf_h225_desiredFeatures = -1;
315 static int hf_h225_supportedFeatures = -1;
316 static int hf_h225_FeatureSet = -1;
317 static int hf_h225_CallsAvailable_calls = -1;
318 static int hf_h225_CallsAvailable_group = -1;
319 static int hf_h225_CallsAvailable = -1;
320 static int hf_h225_voiceGwCallsAvailable = -1;
321 static int hf_h225_h310GwCallsAvailable = -1;
322 static int hf_h225_h320GwCallsAvailable = -1;
323 static int hf_h225_h321GwCallsAvailable = -1;
324 static int hf_h225_h322GwCallsAvailable = -1;
325 static int hf_h225_h323GwCallsAvailable = -1;
326 static int hf_h225_h324GwCallsAvailable = -1;
327 static int hf_h225_t120OnlyGwCallsAvailable = -1;
328 static int hf_h225_t38FaxAnnexbOnlyGwCallsAvailable = -1;
329 static int hf_h225_terminalCallsAvailable = -1;
330 static int hf_h225_mcuCallsAvailable = -1;
331 static int hf_h225_sipGwCallsAvailable = -1;
332 static int hf_h225_maximumCallCapacity = -1;
333 static int hf_h225_currentCallCapacity = -1;
334 static int hf_h225_CallCapacity = -1;
335 static int hf_h225_productID = -1;
336 static int hf_h225_versionID = -1;
337 static int hf_h225_VendorIdentifier = -1;
338 static int hf_h225_canReportCallCapacity = -1;
339 static int hf_h225_CapacityReportingCapability = -1;
340 static int hf_h225_canDisplayAmountString = -1;
341 static int hf_h225_canEnforceDurationLimit = -1;
342 static int hf_h225_CallCreditCapability = -1;
343 static int hf_h225_BandwidthDetails_sender = -1;
344 static int hf_h225_BandwidthDetails_multicast = -1;
345 static int hf_h225_BandwidthDetails = -1;
346 static int hf_h225_releaseCompleteCauseIE = -1;
347 static int hf_h225_CallTerminationCause = -1;
348 static int hf_h225_CircuitInfo = -1;
349 static int hf_h225_genericData = -1;
350 static int hf_h225_fastStart_item_length = -1;
351 static int hf_h225_fastStart = -1;
352 static int hf_h225_fastConnectRefused = -1;
353 static int hf_h225_InformationUUIE = -1;
354 static int hf_h225_routeCallToSCN = -1;
355 static int hf_h225_AdmissionRejectReason = -1;
356 static int hf_h225_hMAC_iso10118_2_s = -1;
357 static int hf_h225_hMAC_iso10118_2_l = -1;
358 static int hf_h225_NonIsoIntegrityMechanism = -1;
359 static int hf_h225_IntegrityMechanism = -1;
360 static int hf_h225_LocationRejectReason = -1;
361 static int hf_h225_mc = -1;
362 static int hf_h225_undefinedNode = -1;
363 static int hf_h225_EndPointType = -1;
364 static int hf_h225_terminalType = -1;
365 static int hf_h225_sourceInfo = -1;
366 static int hf_h225_destinationInfo = -1;
367 static int hf_h225_multipleCalls = -1;
368 static int hf_h225_maintainConnection = -1;
369 static int hf_h225_CallProceedingUUIE = -1;
370 static int hf_h225_CapacityReportingSpecification_when = -1;
371 static int hf_h225_CapacityReportingSpecification = -1;
372 static int hf_h225_ProgressUUIE = -1;
373 static int hf_h225_EndPoint = -1;
374 static int hf_h225_destinationType = -1;
375 static int hf_h225_destExtraCallInfo = -1;
376 static int hf_h225_remoteExtensionAddress = -1;
377 static int hf_h225_rasAddress_sequence = -1;
378 static int hf_h225_callSignalAddress = -1;
379 static int hf_h225_ICV = -1;
380 static int hf_h225_BandwidthConfirm = -1;
381 static int hf_h225_UnregistrationConfirm = -1;
382 static int hf_h225_NonStandardMessage = -1;
383 static int hf_h225_InfoRequestAck = -1;
384 static int hf_h225_InfoRequestNak = -1;
385 static int hf_h225_ResourcesAvailableConfirm = -1;
386 static int hf_h225_GatekeeperRequest = -1;
387 static int hf_h225_integrity = -1;
388 static int hf_h225_algorithmOIDs = -1;
389 static int hf_h225_alternateEndpoints = -1;
390 static int hf_h225_endpointAlias = -1;
391 static int hf_h225_ServiceControlResponse = -1;
392 static int hf_h225_DisengageReject = -1;
393 static int hf_h225_BandwidthReject = -1;
394 static int hf_h225_UnregistrationReject = -1;
395 static int hf_h225_UnregistrationRequest = -1;
396 static int hf_h225_endpointAliasPattern = -1;
397 static int hf_h225_RegistrationReject = -1;
398 static int hf_h225_invalidTerminalAliases = -1;
399 static int hf_h225_terminalAlias = -1;
400 static int hf_h225_terminalAliasPattern = -1;
401 static int hf_h225_RegistrationRejectReason = -1;
402 static int hf_h225_duplicateAlias = -1;
403 static int hf_h225_GatekeeperReject = -1;
404 static int hf_h225_almostOutOfResources = -1;
405 static int hf_h225_ResourcesAvailableIndicate = -1;
406 static int hf_h225_protocols = -1;
407 static int hf_h225_callDurationLimit = -1;
408 static int hf_h225_enforceCallDurationLimit = -1;
409 static int hf_h225_CallCreditServiceControl = -1;
410 static int hf_h225_ScreeningIndicator = -1;
411 static int hf_h225_ExtendedAliasAddress = -1;
412 static int hf_h225_messageNotUnderstood = -1;
413 static int hf_h225_UnknownMessageResponse = -1;
414 static int hf_h225_CallReferenceValue = -1;
415 static int hf_h225_AdmissionRequest = -1;
416 static int hf_h225_canMapSrcAlias = -1;
417 static int hf_h225_desiredProtocols = -1;
418 static int hf_h225_willSupplyUUIEs = -1;
419 static int hf_h225_destAlternatives = -1;
420 static int hf_h225_srcAlternatives = -1;
421 static int hf_h225_canMapAlias = -1;
422 static int hf_h225_activeMC = -1;
423 static int hf_h225_srcInfo = -1;
424 static int hf_h225_DestinationInfo = -1;
425 static int hf_h225_InfoRequest = -1;
426 static int hf_h225_nextSegmentRequested = -1;
427 static int hf_h225_delay = -1;
428 static int hf_h225_RequestInProgress = -1;
429 static int hf_h225_H248SignalsDescriptor = -1;
430 static int hf_h225_url = -1;
431 static int hf_h225_ServiceControlDescriptor = -1;
432 static int hf_h225_ServiceControlSession = -1;
433 static int hf_h225_sessionId = -1;
434 static int hf_h225_AlertingUUIE = -1;
435 static int hf_h225_serviceControl = -1;
436 static int hf_h225_alertingAddress = -1;
437 static int hf_h225_ReleaseCompleteUUIE = -1;
438 static int hf_h225_busyAddress = -1;
439 static int hf_h225_FacilityUUIE = -1;
440 static int hf_h225_alternativeAliasAddress = -1;
441 static int hf_h225_AdmissionReject = -1;
442 static int hf_h225_hopCount = -1;
443 static int hf_h225_parallelH245Control = -1;
444 static int hf_h225_language = -1;
445 static int hf_h225_languages = -1;
446 static int hf_h225_mediaWaitForConnect = -1;
447 static int hf_h225_canOverlapSend = -1;
448 static int hf_h225_SetupUUIE = -1;
449 static int hf_h225_sourceAddress = -1;
450 static int hf_h225_destinationAddress = -1;
451 static int hf_h225_destExtraCRV = -1;
452 static int hf_h225_h245SecurityCapability = -1;
453 static int hf_h225_additionalSourceAddresses = -1;
454 static int hf_h225_ConnectUUIE = -1;
455 static int hf_h225_connectedAddress = -1;
456 static int hf_h225_h323_message_body = -1;
457 static int hf_h225_LocationConfirm = -1;
458 static int hf_h225_supportedProtocols = -1;
459 static int hf_h225_modifiedSrcInfo = -1;
460 static int hf_h225_LocationReject = -1;
461 static int hf_h225_callSpecific = -1;
462 static int hf_h225_answeredCall = -1;
463 static int hf_h225_ServiceControlIndication = -1;
464 static int hf_h225_RasUsageInformation = -1;
465 static int hf_h225_nonStandardUsageFields = -1;
466 static int hf_h225_nonStandardUsageFields_item = -1;
467 static int hf_h225_TimeToLive = -1;
468 static int hf_h225_GatekeeperConfirm = -1;
469 static int hf_h225_RegistrationRequest = -1;
470 static int hf_h225_discoveryComplete = -1;
471 static int hf_h225_keepAlive = -1;
472 static int hf_h225_H248PackagesDescriptor = -1;
473 static int hf_h225_supportedH248Packages = -1;
474 static int hf_h225_DisengageConfirm = -1;
475 static int hf_h225_AdmissionConfirm = -1;
476 static int hf_h225_irrFrequency = -1;
477 static int hf_h225_willRespondToIRR = -1;
478 static int hf_h225_usageSpec = -1;
479 static int hf_h225_DisengageRequest = -1;
480 static int hf_h225_LocationRequest = -1;
481 static int hf_h225_SourceInfo = -1;
482 static int hf_h225_hopCount255 = -1;
483 static int hf_h225_sourceEndpointInfo = -1;
484 static int hf_h225_BandwidthRequest = -1;
485 static int hf_h225_bandwidthDetails = -1;
486 static int hf_h225_admissionConfirmSequence = -1;
487 static int hf_h225_tunnelledSignallingMessage = -1;
488 static int hf_h225_messageContent_item = -1;
489 static int hf_h225_messageContent = -1;
490 static int hf_h225_H323_UU_PDU = -1;
491 static int hf_h225_h4501SupplementaryService = -1;
492 static int hf_h225_h245Tunneling = -1;
493 static int hf_h225_h245Control = -1;
494 static int hf_h225_nonStandardControl = -1;
495 static int hf_h225_nonStandardControl_item = -1;
496 static int hf_h225_preGrantedARQ = -1;
497 static int hf_h225_makeCall = -1;
498 static int hf_h225_useGKCallSignalAddressToMakeCall = -1;
499 static int hf_h225_answerCall = -1;
500 static int hf_h225_useGKCallSignalAddressToAnswer = -1;
501 static int hf_h225_RegistrationConfirm = -1;
502 static int hf_h225_pdu_item = -1;
503 static int hf_h225_sent = -1;
504 static int hf_h225_pdu = -1;
505 static int hf_h225_perCallInfo_item = -1;
506 static int hf_h225_originator = -1;
507 static int hf_h225_audio = -1;
508 static int hf_h225_video = -1;
509 static int hf_h225_data = -1;
510 static int hf_h225_substituteConfIDs = -1;
511 static int hf_h225_perCallInfo = -1;
512 static int hf_h225_InfoRequestResponse = -1;
513 static int hf_h225_needResponse = -1;
514 static int hf_h225_unsolicited = -1;
515 static int hf_h225_RasMessage = -1;
516 static int hf_h225_H323_UserInformation = -1;
517 static int hf_h225_user_data = -1;
518 static int hf_h225_protocol_discriminator = -1;
519 static int hf_h225_user_information = -1;
520 static int hf_h225_object = -1;
521 static int hf_h225_t35CountryCode = -1;
522 static int hf_h225_t35Extension = -1;
523 static int hf_h225_manufacturerCode = -1;
524 static int hf_h221Manufacturer = -1;
525 static int hf_h225_h221NonStandard = -1;
526 static int hf_h225_nonStandardIdentifier = -1;
527 static int hf_h225_nsp_data = -1;
528 static int hf_h225_nonStandardData = -1;
529 static int hf_h225_nonStandard = -1;
530 static int hf_h225_nonStandardReason = -1;
531 static int hf_h225_nonStandardAddress = -1;
532 static int hf_h225_aliasAddress_sequence = -1;
533 static int hf_h225_ras_req_frame = -1;
534 static int hf_h225_ras_rsp_frame = -1;
535 static int hf_h225_ras_dup = -1;
536 static int hf_h225_ras_deltatime = -1;
537 static int hf_h225_cleartoken = -1;
538 static int hf_h225_cryptoEPPwdHash = -1; /* T_cryptoEPPwdHash */
539 static int hf_h225_cryptoGKPwdHash = -1; /* T_cryptoGKPwdHash */
540 static int hf_h225_timeStamp = -1; /* TimeStamp */
541 static int hf_h225_token = -1; /* HASHEDxxx */
542 static int hf_h225_cryptoEPPwdEncr = -1; /* ENCRYPTEDxxx */
543 static int hf_h225_cryptoGKPwdEncr = -1; /* ENCRYPTEDxxx */
544 static int hf_h225_cryptoEPCert = -1; /* SIGNEDxxx */
545 static int hf_h225_cryptoGKCert = -1; /* SIGNEDxxx */
546 static int hf_h225_cryptoFastStart = -1; /* SIGNEDxxx */
547 static int hf_h225_nestedcryptoToken = -1; /* CryptoToken */
548 static int hf_h225_cryptoTokens_item = -1; /* CryptoH323Token */
549 static int hf_h225_authenticationCapability = -1; /* SEQUNCE_OF_AuthenticationMechanism */
550 static int hf_h225_authenticationCapability_item = -1; /* AuthenticationMechanism */
551 static int hf_h225_authenticationMode = -1; /* AuthenticationMechanism */
552 static int hf_h225_alertingTime = -1; /* TimeStamp */
553 static int hf_h225_connectTime = -1; /* TimeStamp */
554 static int hf_h225_endTimeStamp = -1; /* TimeStamp */
557 static gint ett_h225 = -1;
558 static gint ett_h225_T_nonStandardUsageTypes = -1;
559 static gint ett_h225_PresentationIndicator = -1;
560 static gint ett_h225_CryptoH323Token = -1;
561 static gint ett_h225_conferenceGoal = -1;
562 static gint ett_h225_ScnConnectionType = -1;
563 static gint ett_h225_ScnConnectionAggregation = -1;
564 static gint ett_h225_FacilityReason = -1;
565 static gint ett_h225_PublicTypeOfNumber = -1;
566 static gint ett_h225_PrivateTypeOfNumber = -1;
567 static gint ett_h225_UseSpecifiedTransport = -1;
568 static gint ett_h225_SecurityErrors = -1;
569 static gint ett_h225_SecurityErrors2 = -1;
570 static gint ett_h225_ServiceControlSession_reason = -1;
571 static gint ett_h225_billingMode = -1;
572 static gint ett_h225_CCSCcallStartingPoint = -1;
573 static gint ett_h225_GatekeeperRejectReason = -1;
574 static gint ett_h225_UnregRequestReason = -1;
575 static gint ett_h225_UnregRejectReason = -1;
576 static gint ett_h225_CallType = -1;
577 static gint ett_h225_CallModel = -1;
578 static gint ett_h225_TransportQOS = -1;
579 static gint ett_h225_BandRejectReason = -1;
580 static gint ett_h225_DisengageReason = -1;
581 static gint ett_h225_DisengageRejectReason = -1;
582 static gint ett_h225_InfoRequestNakReason = -1;
583 static gint ett_h225_SCRresult = -1;
584 static gint ett_h225_GatekeeperInfo = -1;
585 static gint ett_h225_SecurityServiceMode_encryption = -1;
586 static gint ett_h225_SecurityServiceMode_authentication = -1;
587 static gint ett_h225_SecurityServiceMode_integrity = -1;
588 static gint ett_h225_SecurityCapabilities_tls = -1;
589 static gint ett_h225_SecurityCapabilities_ipsec = -1;
590 static gint ett_h225_H245Security = -1;
591 static gint ett_h225_RasUsageInfoTypes = -1;
592 static gint ett_h225_DataRate = -1;
593 static gint ett_h225_dataRatesSupported = -1;
594 static gint ett_h225_TerminalInfo = -1;
595 static gint ett_h225_StimulusControl = -1;
596 static gint ett_h225_ReleaseCompleteReason = -1;
597 static gint ett_h225_connectionParameters = -1;
598 static gint ett_h225_RasUsageSpecification_when = -1;
599 static gint ett_h225_RasUsageSpecification_callStartingPoint = -1;
600 static gint ett_h225_RasUsageSpecification = -1;
601 static gint ett_h225_ipAddress = -1;
602 static gint ett_h225_routing = -1;
603 static gint ett_h225_route = -1;
604 static gint ett_h225_ipSourceRoute = -1;
605 static gint ett_h225_ipxAddress = -1;
606 static gint ett_h225_ip6Address = -1;
607 static gint ett_h225_TransportAddress = -1;
608 static gint ett_h225_TransportChannelInfo = -1;
609 static gint ett_h225_CarrierInfo = -1;
610 static gint ett_h225_InfoRequestResponseStatus = -1;
611 static gint ett_h225_CallIdentifier = -1;
612 static gint ett_h225_CallLinkage = -1;
613 static gint ett_h225_tokens = -1;
614 static gint ett_h225_CryptoH323Tokens = -1;
615 static gint ett_h225_AlternateGK = -1;
616 static gint ett_h225_alternateGatekeeper = -1;
617 static gint ett_h225_AltGKInfo = -1;
618 static gint ett_h225_annexE = -1;
619 static gint ett_h225_sctp = -1;
620 static gint ett_h225_AlternateTransportAddress = -1;
621 static gint ett_h225_UUIEsRequested = -1;
622 static gint ett_h225_Q954Details = -1;
623 static gint ett_h225_QseriesOptions = -1;
624 static gint ett_h225_associatedSessionIds = -1;
625 static gint ett_h225_RTPSession = -1;
626 static gint ett_h225_StatusUUIE = -1;
627 static gint ett_h225_StatusInquiryUUIE = -1;
628 static gint ett_h225_SetupAcknowledgeUUIE = -1;
629 static gint ett_h225_NotifyUUIE = -1;
630 static gint ett_h225_GSMUIM = -1;
631 static gint ett_h225_systemid = -1;
632 static gint ett_h225_ANSI41UIM = -1;
633 static gint ett_h225_MobileUIM = -1;
634 static gint ett_h225_e164Number = -1;
635 static gint ett_h225_privateNumber = -1;
636 static gint ett_h225_PartyNumber = -1;
637 static gint ett_h225_TunnelledProtocolAlternateIdentifier = -1;
638 static gint ett_h225_AliasAddress = -1;
639 static gint ett_h225_SupportedPrefix = -1;
640 static gint ett_h225_SupportedPrefixes = -1;
641 static gint ett_h225_H310Caps = -1;
642 static gint ett_h225_H320Caps = -1;
643 static gint ett_h225_H321Caps = -1;
644 static gint ett_h225_H322Caps = -1;
645 static gint ett_h225_H323Caps = -1;
646 static gint ett_h225_H324Caps = -1;
647 static gint ett_h225_VoiceCaps = -1;
648 static gint ett_h225_T120OnlyCaps = -1;
649 static gint ett_h225_NonStandardProtocol = -1;
650 static gint ett_h225_SIPCaps = -1;
651 static gint ett_h225_AddressPattern_range = -1;
652 static gint ett_h225_AddressPattern = -1;
653 static gint ett_h225_ConferenceList = -1;
654 static gint ett_h225_conferences = -1;
655 static gint ett_h225_T38FaxAnnexbOnlyCaps = -1;
656 static gint ett_h225_SupportedProtocols = -1;
657 static gint ett_h225_protocol = -1;
658 static gint ett_h225_GatewayInfo = -1;
659 static gint ett_h225_McuInfo = -1;
660 static gint ett_h225_TunnelledProtocol_id = -1;
661 static gint ett_h225_TunnelledProtocol = -1;
662 static gint ett_h225_TunnelledProtocols = -1;
663 static gint ett_h225_CicInfo_cic = -1;
664 static gint ett_h225_CicInfo = -1;
665 static gint ett_h225_GroupID_member = -1;
666 static gint ett_h225_GroupID = -1;
667 static gint ett_h225_CircuitIdentifier = -1;
668 static gint ett_h225_GenericIdentifier = -1;
669 static gint ett_h225_EnumeratedParameter = -1;
670 static gint ett_h225_parameters = -1;
671 static gint ett_h225_GenericData = -1;
672 static gint ett_h225_Content = -1;
673 static gint ett_h225_Content_compound = -1;
674 static gint ett_h225_Content_nested = -1;
675 static gint ett_h225_neededFeatures = -1;
676 static gint ett_h225_desiredFeatures = -1;
677 static gint ett_h225_supportedFeatures = -1;
678 static gint ett_h225_FeatureSet = -1;
679 static gint ett_h225_CallsAvailable = -1;
680 static gint ett_h225_voiceGwCallsAvailable = -1;
681 static gint ett_h225_h310GwCallsAvailable = -1;
682 static gint ett_h225_h320GwCallsAvailable = -1;
683 static gint ett_h225_h321GwCallsAvailable = -1;
684 static gint ett_h225_h322GwCallsAvailable = -1;
685 static gint ett_h225_h323GwCallsAvailable = -1;
686 static gint ett_h225_h324GwCallsAvailable = -1;
687 static gint ett_h225_t120OnlyGwCallsAvailable = -1;
688 static gint ett_h225_t38FaxAnnexbOnlyGwCallsAvailable = -1;
689 static gint ett_h225_terminalCallsAvailable = -1;
690 static gint ett_h225_mcuCallsAvailable = -1;
691 static gint ett_h225_sipGwCallsAvailable = -1;
692 static gint ett_h225_CallCapacityInfo = -1;
693 static gint ett_h225_CallCapacity = -1;
694 static gint ett_h225_VendorIdentifier = -1;
695 static gint ett_h225_CapacityReportingCapability = -1;
696 static gint ett_h225_CallCreditCapability = -1;
697 static gint ett_h225_BandwidthDetails = -1;
698 static gint ett_h225_CallTerminationCause = -1;
699 static gint ett_h225_CircuitInfo = -1;
700 static gint ett_h225_genericData = -1;
701 static gint ett_h225_fastStart = -1;
702 static gint ett_h225_InformationUUIE = -1;
703 static gint ett_h225_routeCallToSCN = -1;
704 static gint ett_h225_AdmissionRejectReason = -1;
705 static gint ett_h225_EncryptIntAlg = -1;
706 static gint ett_h225_NonIsoIntegrityMechanism = -1;
707 static gint ett_h225_IntegrityMechanism = -1;
708 static gint ett_h225_LocationRejectReason = -1;
709 static gint ett_h225_EndPointType = -1;
710 static gint ett_h225_CallProceedingUUIE = -1;
711 static gint ett_h225_CapacityReportingSpecification_when = -1;
712 static gint ett_h225_CapacityReportingSpecification = -1;
713 static gint ett_h225_ProgressUUIE = -1;
714 static gint ett_h225_EndPoint = -1;
715 static gint ett_h225_destExtraCallInfo = -1;
716 static gint ett_h225_remoteExtensionAddress = -1;
717 static gint ett_h225_rasAddress_sequence = -1;
718 static gint ett_h225_callSignalAddress = -1;
719 static gint ett_h225_ICV = -1;
720 static gint ett_h225_BandwidthConfirm = -1;
721 static gint ett_h225_UnregistrationConfirm = -1;
722 static gint ett_h225_NonStandardMessage = -1;
723 static gint ett_h225_InfoRequestAck = -1;
724 static gint ett_h225_InfoRequestNak = -1;
725 static gint ett_h225_ResourcesAvailableConfirm = -1;
726 static gint ett_h225_GatekeeperRequest = -1;
727 static gint ett_h225_integrity = -1;
728 static gint ett_h225_algorithmOIDs = -1;
729 static gint ett_h225_alternateEndpoints = -1;
730 static gint ett_h225_endpointAlias = -1;
731 static gint ett_h225_ServiceControlResponse = -1;
732 static gint ett_h225_DisengageReject = -1;
733 static gint ett_h225_BandwidthReject = -1;
734 static gint ett_h225_UnregistrationReject = -1;
735 static gint ett_h225_UnregistrationRequest = -1;
736 static gint ett_h225_endpointAliasPattern = -1;
737 static gint ett_h225_RegistrationReject = -1;
738 static gint ett_h225_invalidTerminalAliases = -1;
739 static gint ett_h225_terminalAlias = -1;
740 static gint ett_h225_terminalAliasPattern = -1;
741 static gint ett_h225_RegistrationRejectReason = -1;
742 static gint ett_h225_duplicateAlias = -1;
743 static gint ett_h225_GatekeeperReject = -1;
744 static gint ett_h225_ResourcesAvailableIndicate = -1;
745 static gint ett_h225_protocols = -1;
746 static gint ett_h225_CallCreditServiceControl = -1;
747 static gint ett_h225_ExtendedAliasAddress = -1;
748 static gint ett_h225_UnknownMessageResponse = -1;
749 static gint ett_h225_AdmissionRequest = -1;
750 static gint ett_h225_desiredProtocols = -1;
751 static gint ett_h225_destAlternatives = -1;
752 static gint ett_h225_srcAlternatives = -1;
753 static gint ett_h225_srcInfo = -1;
754 static gint ett_h225_DestinationInfo = -1;
755 static gint ett_h225_InfoRequest = -1;
756 static gint ett_h225_RequestInProgress = -1;
757 static gint ett_h225_ServiceControlDescriptor = -1;
758 static gint ett_h225_ServiceControlSession = -1;
759 static gint ett_h225_AlertingUUIE = -1;
760 static gint ett_h225_serviceControl = -1;
761 static gint ett_h225_alertingAddress = -1;
762 static gint ett_h225_ReleaseCompleteUUIE = -1;
763 static gint ett_h225_busyAddress = -1;
764 static gint ett_h225_FacilityUUIE = -1;
765 static gint ett_h225_alternativeAliasAddress = -1;
766 static gint ett_h225_AdmissionReject = -1;
767 static gint ett_h225_parallelH245Control = -1;
768 static gint ett_h225_languages = -1;
769 static gint ett_h225_SetupUUIE = -1;
770 static gint ett_h225_sourceAddress = -1;
771 static gint ett_h225_destinationAddress = -1;
772 static gint ett_h225_destExtraCRV = -1;
773 static gint ett_h225_h245SecurityCapability = -1;
774 static gint ett_h225_additionalSourceAddresses = -1;
775 static gint ett_h225_ConnectUUIE = -1;
776 static gint ett_h225_connectedAddress = -1;
777 static gint ett_h225_h323_message_body = -1;
778 static gint ett_h225_LocationConfirm = -1;
779 static gint ett_h225_supportedProtocols = -1;
780 static gint ett_h225_modifiedSrcInfo = -1;
781 static gint ett_h225_LocationReject = -1;
782 static gint ett_h225_callSpecific = -1;
783 static gint ett_h225_ServiceControlIndication = -1;
784 static gint ett_h225_RasUsageInformation = -1;
785 static gint ett_h225_T_nonStandardUsageFields = -1;
786 static gint ett_h225_GatekeeperConfirm = -1;
787 static gint ett_h225_RegistrationRequest = -1;
788 static gint ett_h225_supportedH248Packages = -1;
789 static gint ett_h225_DisengageConfirm = -1;
790 static gint ett_h225_AdmissionConfirm = -1;
791 static gint ett_h225_usageSpec = -1;
792 static gint ett_h225_DisengageRequest = -1;
793 static gint ett_h225_LocationRequest = -1;
794 static gint ett_h225_SourceInfo = -1;
795 static gint ett_h225_sourceEndpointInfo = -1;
796 static gint ett_h225_BandwidthRequest = -1;
797 static gint ett_h225_bandwidthDetails = -1;
798 static gint ett_h225_admissionConfirmSequence = -1;
799 static gint ett_h225_tunnelledSignallingMessage = -1;
800 static gint ett_h225_messageContent = -1;
801 static gint ett_h225_H323_UU_PDU = -1;
802 static gint ett_h225_h4501SupplementaryService = -1;
803 static gint ett_h225_h245Control = -1;
804 static gint ett_h225_T_nonStandardControl = -1;
805 static gint ett_h225_preGrantedARQ = -1;
806 static gint ett_h225_RegistrationConfirm = -1;
807 static gint ett_h225_pdu_item = -1;
808 static gint ett_h225_pdu = -1;
809 static gint ett_h225_perCallInfo_item = -1;
810 static gint ett_h225_audio = -1;
811 static gint ett_h225_video = -1;
812 static gint ett_h225_data = -1;
813 static gint ett_h225_substituteConfIDs = -1;
814 static gint ett_h225_perCallInfo = -1;
815 static gint ett_h225_InfoRequestResponse = -1;
816 static gint ett_h225_RasMessage = -1;
817 static gint ett_h225_H323_UserInformation = -1;
818 static gint ett_h225_user_data = -1;
819 static gint ett_h225_H221NonStandard = -1;
820 static gint ett_h225_NonStandardIdentifier = -1;
821 static gint ett_h225_NonStandardParameter = -1;
822 static gint ett_h225_aliasAddress_sequence = -1;
823 static gint ett_h225_T_cryptoEPPwdHash = -1;
824 static gint ett_h225_T_cryptoGKPwdHash = -1;
825 static gint ett_h225_SEQUNCE_OF_AuthenticationMechanism = -1;
828 /* Subdissector tables */
829 static dissector_table_t nsp_object_dissector_table;
830 static dissector_table_t nsp_h221_dissector_table;
831 static dissector_table_t tp_dissector_table;
834 static dissector_handle_t h245_handle=NULL;
835 static dissector_handle_t h245dg_handle=NULL;
836 static dissector_handle_t h4501_handle=NULL;
839 static dissector_handle_t nsp_handle;
840 static dissector_handle_t tp_handle;
842 static guint32 ipv4_address;
843 static guint32 ipv4_port;
844 static char object[256];
845 static guint32 t35CountryCode;
846 static guint32 t35Extension;
847 static guint32 manufacturerCode;
848 static guint32 h221NonStandard;
849 static char tpID[256];
851 static gboolean contains_faststart = FALSE;
853 static const true_false_string tfs_unsolicited_bit = {
854 "unsolicited bit is SET",
855 "unsolicited bit is NOT set"
858 static const true_false_string tfs_needResponse_bit = {
859 "needResponse bit is SET",
860 "needResponse bit is NOT set"
863 static const true_false_string tfs_originator_bit = {
864 "originator bit is SET",
865 "originator bit is NOT set"
868 static const true_false_string tfs_sent_bit = {
870 "sent bit is NOT set"
873 static const true_false_string tfs_useGKCallSignalAddressToAnswer_bit = {
874 "useGKCallSignalAddressToAnswer bit is SET",
875 "useGKCallSignalAddressToAnswer bit is NOT set"
878 static const true_false_string tfs_answerCall_bit = {
879 "answerCall bit is SET",
880 "answerCall bit is NOT set"
883 static const true_false_string tfs_useGKCallSignalAddressToMakeCall_bit = {
884 "useGKCallSignalAddressToMakeCall bit is SET",
885 "useGKCallSignalAddressToMakeCall bit is NOT set"
888 static const true_false_string tfs_makeCall_bit = {
889 "makeCall bit is SET",
890 "makeCall bit is NOT set"
893 static const true_false_string tfs_h245Tunneling_bit = {
894 "h245Tunneling bit is SET",
895 "h245Tunneling bit is NOT set"
898 static const true_false_string tfs_willRespondToIRR_bit = {
899 "willRespondToIRR bit is SET",
900 "willRespondToIRR bit is NOT set"
903 static const true_false_string tfs_keepAlive_bit = {
904 "keepAlive bit is SET",
905 "keepAlive bit is NOT set"
908 static const true_false_string tfs_discoveryComplete_bit = {
909 "discoveryComplete bit is SET",
910 "discoveryComplete bit is NOT set"
913 static const true_false_string tfs_answeredCall_bit = {
914 "answeredCall bit is SET",
915 "answeredCall bit is NOT set"
918 static const true_false_string tfs_canOverlapSend_bit = {
919 "canOverlapSend bit is SET",
920 "canOverlapSend bit is NOT set"
923 static const true_false_string tfs_mediaWaitForConnect_bit = {
924 "mediaWaitForConnect bit is SET",
925 "mediaWaitForConnect bit is NOT set"
928 static const true_false_string tfs_activeMC_bit = {
929 "activeMC bit is SET",
930 "activeMC bit is NOT set"
933 static const true_false_string tfs_canMapAlias_bit = {
934 "canMapAlias bit is SET",
935 "canMapAlias bit is NOT set"
938 static const true_false_string tfs_willSupplyUUIEs_bit = {
939 "willSupplyUUIEs bit is SET",
940 "willSupplyUUIEs bit is NOT set"
943 static const true_false_string tfs_canMapSrcAlias_bit = {
944 "canMapSrcAlias bit is SET",
945 "canMapSrcAlias bit is NOT set"
948 static const true_false_string tfs_enforceCallDurationLimit_bit = {
949 "enforceCallDurationLimit bit is SET",
950 "enforceCallDurationLimit bit is NOT set"
953 static const true_false_string tfs_almostOutOfResources_bit = {
954 "almostOutOfResources bit is SET",
955 "almostOutOfResources bit is NOT set"
958 static const true_false_string tfs_maintainConnection_bit = {
959 "maintainConnection bit is SET",
960 "maintainConnection bit is NOT set"
963 static const true_false_string tfs_multipleCalls_bit = {
964 "multipleCalls bit is SET",
965 "multipleCalls bit is NOT set"
968 static const true_false_string tfs_undefinedNode_bit = {
969 "undefinedNode bit is SET",
970 "undefinedNode bit is NOT set"
973 static const true_false_string tfs_mc_bit = {
979 static const true_false_string tfs_fastConnectRefused_bit = {
980 "fastConnectRefused bit is SET",
981 "fastConnectRefused bit is NOT set"
984 static const true_false_string tfs_BandwidthDetails_multicast_bit = {
985 "BandwidthDetails_multicast bit is SET",
986 "BandwidthDetails_multicast bit is NOT set"
989 static const true_false_string tfs_BandwidthDetails_sender_bit = {
990 "BandwidthDetails_sender bit is SET",
991 "BandwidthDetails_sender bit is NOT set"
994 static const true_false_string tfs_canEnforceDurationLimit_bit = {
995 "canEnforceDurationLimit bit is SET",
996 "canEnforceDurationLimit bit is NOT set"
999 static const true_false_string tfs_canDisplayAmountString_bit = {
1000 "canDisplayAmountString bit is SET",
1001 "canDisplayAmountString bit is NOT set"
1004 static const true_false_string tfs_canReportCallCapacity_bit = {
1005 "canReportCallCapacity bit is SET",
1006 "canReportCallCapacity bit is NOT set"
1009 static const true_false_string tfs_replacementFeatureSet_bit = {
1010 "replacementFeatureSet bit is SET",
1011 "replacementFeatureSet bit is NOT set"
1014 static const true_false_string tfs_Content_bool_bit = {
1015 "Content_bool bit is SET",
1016 "Content_bool bit is NOT set"
1019 static const true_false_string tfs_q957Full_bit = {
1020 "q957Full bit is SET",
1021 "q957Full bit is NOT set"
1024 static const true_false_string tfs_q956Full_bit = {
1025 "q956Full bit is SET",
1026 "q956Full bit is NOT set"
1029 static const true_false_string tfs_q955Full_bit = {
1030 "q955Full bit is SET",
1031 "q955Full bit is NOT set"
1034 static const true_false_string tfs_q953Full_bit = {
1035 "q953Full bit is SET",
1036 "q953Full bit is NOT set"
1039 static const true_false_string tfs_q952Full_bit = {
1040 "q952Full bit is SET",
1041 "q952Full bit is NOT set"
1044 static const true_false_string tfs_q951Full_bit = {
1045 "q951Full bit is SET",
1046 "q951Full bit is NOT set"
1049 static const true_false_string tfs_q932Full_bit = {
1050 "q932Full bit is SET",
1051 "q932Full bit is NOT set"
1054 static const true_false_string tfs_threePartyService_bit = {
1055 "threePartyService bit is SET",
1056 "threePartyService bit is NOT set"
1059 static const true_false_string tfs_conferenceCalling_bit = {
1060 "conferenceCalling bit is SET",
1061 "conferenceCalling bit is NOT set"
1064 static const true_false_string tfs_notify_bool_bit = {
1065 "notify_bool bit is SET",
1066 "notify_bool bit is NOT set"
1069 static const true_false_string tfs_setupAcknowledge_bool_bit = {
1070 "setupAcknowledge_bool bit is SET",
1071 "setupAcknowledge_bool bit is NOT set"
1074 static const true_false_string tfs_statusInquiry_bool_bit = {
1075 "statusInquiry_bool bit is SET",
1076 "statusInquiry_bool bit is NOT set"
1079 static const true_false_string tfs_status_bool_bit = {
1080 "status_bool bit is SET",
1081 "status_bool bit is NOT set"
1084 static const true_false_string tfs_empty_bool_bit = {
1085 "empty_bool bit is SET",
1086 "empty_bool bit is NOT set"
1089 static const true_false_string tfs_progress_bool_bit = {
1090 "progress_bool bit is SET",
1091 "progress_bool bit is NOT set"
1094 static const true_false_string tfs_facility_bool_bit = {
1095 "facility_bool bit is SET",
1096 "facility_bool bit is NOT set"
1099 static const true_false_string tfs_releaseComplete_bool_bit = {
1100 "releaseComplete_bool bit is SET",
1101 "releaseComplete_bool bit is NOT set"
1104 static const true_false_string tfs_information_bool_bit = {
1105 "information_bool bit is SET",
1106 "information_bool bit is NOT set"
1109 static const true_false_string tfs_alerting_bool_bit = {
1110 "alerting_bool bit is SET",
1111 "alerting_bool bit is NOT set"
1114 static const true_false_string tfs_connect_bool_bit = {
1115 "connect_bool bit is SET",
1116 "connect_bool bit is NOT set"
1119 static const true_false_string tfs_callProceeding_bool_bit = {
1120 "callProceeding_bool bit is SET",
1121 "callProceeding_bool bit is NOT set"
1124 static const true_false_string tfs_setup_bool_bit = {
1125 "setup_bool bit is SET",
1126 "setup_bool bit is NOT set"
1129 static const true_false_string tfs_altGKisPermanent_bit = {
1130 "altGKisPermanent bit is SET",
1131 "altGKisPermanent bit is NOT set"
1134 static const true_false_string tfs_needToRegister_bit = {
1135 "needToRegister bit is SET",
1136 "needToRegister bit is NOT set"
1141 static gboolean h225_reassembly = TRUE;
1146 dissect_h225_NULL(tvbuff_t *tvb _U_, int offset, packet_info *pinfo _U_, proto_tree *tree _U_)
1151 static const value_string PresentationIndicator_vals[] = {
1152 { 0, "presentationAllowed" },
1153 { 1, "presentationRestricted" },
1154 { 2, "addressNotAvailable" },
1157 static per_choice_t PresentationIndicator_choice[] = {
1158 { 0, "presentationAllowed", ASN1_EXTENSION_ROOT,
1160 { 1, "presentationRestricted", ASN1_EXTENSION_ROOT,
1162 { 2, "addressNotAvailable", ASN1_EXTENSION_ROOT,
1164 { 0, NULL, 0, NULL }
1167 dissect_h225_PresentationIndicator(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1169 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_PresentationIndicator, ett_h225_PresentationIndicator, PresentationIndicator_choice, "PresentationIndicator", NULL);
1174 static const value_string conferenceGoal_vals[] = {
1178 { 3, "capability-negotiation" },
1179 { 4, "callIndependentSupplementaryService" },
1182 static per_choice_t conferenceGoal_choice[] = {
1183 { 0, "create", ASN1_EXTENSION_ROOT,
1184 dissect_h225_NULL },
1185 { 1, "join", ASN1_EXTENSION_ROOT,
1186 dissect_h225_NULL },
1187 { 2, "invite", ASN1_EXTENSION_ROOT,
1188 dissect_h225_NULL },
1189 { 3, "capability-negotiation", ASN1_NOT_EXTENSION_ROOT,
1190 dissect_h225_NULL },
1191 { 4, "callIndependentSupplementaryService", ASN1_NOT_EXTENSION_ROOT,
1192 dissect_h225_NULL },
1193 { 0, NULL, 0, NULL }
1196 dissect_h225_conferenceGoal(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1198 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_conferenceGoal, ett_h225_conferenceGoal, conferenceGoal_choice, "conferenceGoal", NULL);
1203 static const value_string ScnConnectionType_vals[] = {
1206 { 2, "hybrid2x64" },
1208 { 4, "hybrid1536" },
1209 { 5, "hybrid1920" },
1213 static per_choice_t ScnConnectionType_choice[] = {
1214 { 0, "unknown", ASN1_EXTENSION_ROOT,
1215 dissect_h225_NULL },
1216 { 1, "bChannel", ASN1_EXTENSION_ROOT,
1217 dissect_h225_NULL },
1218 { 2, "hybrid2x64", ASN1_EXTENSION_ROOT,
1219 dissect_h225_NULL },
1220 { 3, "hybrid384", ASN1_EXTENSION_ROOT,
1221 dissect_h225_NULL },
1222 { 4, "hybrid1536", ASN1_EXTENSION_ROOT,
1223 dissect_h225_NULL },
1224 { 5, "hybrid1920", ASN1_EXTENSION_ROOT,
1225 dissect_h225_NULL },
1226 { 6, "multirate", ASN1_EXTENSION_ROOT,
1227 dissect_h225_NULL },
1228 { 0, NULL, 0, NULL }
1231 dissect_h225_ScnConnectionType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1233 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_ScnConnectionType, ett_h225_ScnConnectionType, ScnConnectionType_choice, "ScnConnectionType", NULL);
1238 static const value_string ScnConnectionAggregation_vals[] = {
1242 { 3, "bonded-mode1" },
1243 { 4, "bonded-mode2" },
1244 { 5, "bonded-mode3" },
1247 static per_choice_t ScnConnectionAggregation_choice[] = {
1248 { 0, "auto", ASN1_EXTENSION_ROOT,
1249 dissect_h225_NULL },
1250 { 1, "none", ASN1_EXTENSION_ROOT,
1251 dissect_h225_NULL },
1252 { 2, "h221", ASN1_EXTENSION_ROOT,
1253 dissect_h225_NULL },
1254 { 3, "bonded-mode1", ASN1_EXTENSION_ROOT,
1255 dissect_h225_NULL },
1256 { 4, "bonded-mode2", ASN1_EXTENSION_ROOT,
1257 dissect_h225_NULL },
1258 { 5, "bonded-mode3", ASN1_EXTENSION_ROOT,
1259 dissect_h225_NULL },
1260 { 0, NULL, 0, NULL }
1263 dissect_h225_ScnConnectionAggregation(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1265 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_ScnConnectionAggregation, ett_h225_ScnConnectionAggregation, ScnConnectionAggregation_choice, "ScnConnectionAggregation", NULL);
1270 const value_string FacilityReason_vals[] = {
1271 { 0, "routeCallToGatekeeper" },
1272 { 1, "callForwarded" },
1273 { 2, "routeCallToMC" },
1274 { 3, "undefinedReason" },
1275 { 4, "conferenceListChoice" },
1279 { 8, "featureSetUpdate" },
1280 { 9, "forwardedElements" },
1281 { 10, "transportedInformation" },
1284 static per_choice_t FacilityReason_choice[] = {
1285 { 0, "routeCallToGatekeeper", ASN1_EXTENSION_ROOT,
1286 dissect_h225_NULL },
1287 { 1, "callForwarded", ASN1_EXTENSION_ROOT,
1288 dissect_h225_NULL },
1289 { 2, "routeCallToMC", ASN1_EXTENSION_ROOT,
1290 dissect_h225_NULL },
1291 { 3, "undefinedReason", ASN1_EXTENSION_ROOT,
1292 dissect_h225_NULL },
1293 { 4, "conferenceListChoice", ASN1_NOT_EXTENSION_ROOT,
1294 dissect_h225_NULL },
1295 { 5, "startH245", ASN1_NOT_EXTENSION_ROOT,
1296 dissect_h225_NULL },
1297 { 6, "noH245", ASN1_NOT_EXTENSION_ROOT,
1298 dissect_h225_NULL },
1299 { 7, "newTokens", ASN1_NOT_EXTENSION_ROOT,
1300 dissect_h225_NULL },
1301 { 8, "featureSetUpdate", ASN1_NOT_EXTENSION_ROOT,
1302 dissect_h225_NULL },
1303 { 9, "forwardedElements", ASN1_NOT_EXTENSION_ROOT,
1304 dissect_h225_NULL },
1305 { 10, "transportedInformation", ASN1_NOT_EXTENSION_ROOT,
1306 dissect_h225_NULL },
1307 { 0, NULL, 0, NULL }
1310 dissect_h225_FacilityReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1314 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_FacilityReason, ett_h225_FacilityReason, FacilityReason_choice, "FacilityReason", &value);
1315 h225_pi.reason = value;
1321 static const value_string PublicTypeOfNumber_vals[] = {
1323 { 1, "internationalNumber" },
1324 { 2, "nationalNumber" },
1325 { 3, "networkSpecificNumber" },
1326 { 4, "subscriberNumber" },
1327 { 5, "abbreviatedNumber" },
1330 static per_choice_t PublicTypeOfNumber_choice[] = {
1331 { 0, "unknown", ASN1_EXTENSION_ROOT,
1332 dissect_h225_NULL },
1333 { 1, "internationalNumber", ASN1_EXTENSION_ROOT,
1334 dissect_h225_NULL },
1335 { 2, "nationalNumber", ASN1_EXTENSION_ROOT,
1336 dissect_h225_NULL },
1337 { 3, "networkSpecificNumber", ASN1_EXTENSION_ROOT,
1338 dissect_h225_NULL },
1339 { 4, "subscriberNumber", ASN1_EXTENSION_ROOT,
1340 dissect_h225_NULL },
1341 { 5, "abbreviatedNumber", ASN1_EXTENSION_ROOT,
1342 dissect_h225_NULL },
1343 { 0, NULL, 0, NULL }
1346 dissect_h225_PublicTypeOfNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1348 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_PublicTypeOfNumber, ett_h225_PublicTypeOfNumber, PublicTypeOfNumber_choice, "PublicTypeOfNumber", NULL);
1354 static const value_string PrivateTypeOfNumber_vals[] = {
1356 { 1, "level2RegionalNumber" },
1357 { 2, "level1RegionalNumber" },
1358 { 3, "pISNSpecificNumber" },
1359 { 4, "localNumber" },
1360 { 5, "abbreviatedNumber" },
1363 static per_choice_t PrivateTypeOfNumber_choice[] = {
1364 { 0, "unknown", ASN1_EXTENSION_ROOT,
1365 dissect_h225_NULL },
1366 { 1, "level2RegionalNumber", ASN1_EXTENSION_ROOT,
1367 dissect_h225_NULL },
1368 { 2, "level1RegionalNumber", ASN1_EXTENSION_ROOT,
1369 dissect_h225_NULL },
1370 { 3, "pISNSpecificNumber", ASN1_EXTENSION_ROOT,
1371 dissect_h225_NULL },
1372 { 4, "localNumber", ASN1_EXTENSION_ROOT,
1373 dissect_h225_NULL },
1374 { 5, "abbreviatedNumber", ASN1_EXTENSION_ROOT,
1375 dissect_h225_NULL },
1376 { 0, NULL, 0, NULL }
1379 dissect_h225_PrivateTypeOfNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1381 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_PrivateTypeOfNumber, ett_h225_PrivateTypeOfNumber, PrivateTypeOfNumber_choice, "PrivateTypeOfNumber", NULL);
1386 static const value_string UseSpecifiedTransport_vals[] = {
1392 static per_choice_t UseSpecifiedTransport_choice[] = {
1393 { 0, "tcp", ASN1_EXTENSION_ROOT,
1394 dissect_h225_NULL },
1395 { 1, "annexE", ASN1_EXTENSION_ROOT,
1396 dissect_h225_NULL },
1397 { 2, "sctp", ASN1_NOT_EXTENSION_ROOT,
1398 dissect_h225_NULL },
1399 { 0, NULL, 0, NULL }
1402 dissect_h225_UseSpecifiedTransport(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1404 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_UseSpecifiedTransport, ett_h225_UseSpecifiedTransport, UseSpecifiedTransport_choice, "UseSpecifiedTransport", NULL);
1410 static const value_string SecurityErrors_vals[] = {
1411 { 0, "securityWrongSyncTime" },
1412 { 1, "securityReplay" },
1413 { 2, "securityWrongGeneralID" },
1414 { 3, "securityWrongSendersID" },
1415 { 4, "securityIntegrityFailed" },
1416 { 5, "securityWrongOID" },
1417 { 6, "securityDHmismatch" },
1418 { 7, "securityCertificateExpired" },
1419 { 8, "securityCertificateDateInvalid" },
1420 { 9, "securityCertificateRevoked" },
1421 { 10, "securityCertificateNotReadable" },
1422 { 11, "securityCertificateSignatureInvalid" },
1423 { 12, "securityCertificateMissing" },
1424 { 13, "securityCertificateIncomplete" },
1425 { 14, "securityUnsupportedCertificateAlgOID" },
1426 { 15, "securityUnknownCA" },
1429 static per_choice_t SecurityErrors_choice[] = {
1430 { 0, "securityWrongSyncTime", ASN1_EXTENSION_ROOT,
1431 dissect_h225_NULL },
1432 { 1, "securityReplay", ASN1_EXTENSION_ROOT,
1433 dissect_h225_NULL },
1434 { 2, "securityWrongGeneralID", ASN1_EXTENSION_ROOT,
1435 dissect_h225_NULL },
1436 { 3, "securityWrongSendersID", ASN1_EXTENSION_ROOT,
1437 dissect_h225_NULL },
1438 { 4, "securityIntegrityFailed", ASN1_EXTENSION_ROOT,
1439 dissect_h225_NULL },
1440 { 5, "securityWrongOID", ASN1_EXTENSION_ROOT,
1441 dissect_h225_NULL },
1442 { 6, "securityDHmismatch", ASN1_EXTENSION_ROOT,
1443 dissect_h225_NULL },
1444 { 7, "securityCertificateExpired", ASN1_EXTENSION_ROOT,
1445 dissect_h225_NULL },
1446 { 8, "securityCertificateDateInvalid", ASN1_EXTENSION_ROOT,
1447 dissect_h225_NULL },
1448 { 9, "securityCertificateRevoked", ASN1_EXTENSION_ROOT,
1449 dissect_h225_NULL },
1450 { 10, "securityCertificateNotReadable", ASN1_EXTENSION_ROOT,
1451 dissect_h225_NULL },
1452 { 11, "securityCertificateSignatureInvalid", ASN1_EXTENSION_ROOT,
1453 dissect_h225_NULL },
1454 { 12, "securityCertificateMissing", ASN1_EXTENSION_ROOT,
1455 dissect_h225_NULL },
1456 { 13, "securityCertificateIncomplete", ASN1_EXTENSION_ROOT,
1457 dissect_h225_NULL },
1458 { 14, "securityUnsupportedCertificateAlgOID", ASN1_EXTENSION_ROOT,
1459 dissect_h225_NULL },
1460 { 15, "securityUnknownCA", ASN1_EXTENSION_ROOT,
1461 dissect_h225_NULL },
1462 { 0, NULL, 0, NULL }
1465 dissect_h225_SecurityErrors(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1467 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_SecurityErrors, ett_h225_SecurityErrors, SecurityErrors_choice, "SecurityErrors", NULL);
1473 static const value_string SecurityErrors2_vals[] = {
1474 { 0, "securityWrongSyncTime" },
1475 { 1, "securityReplay" },
1476 { 2, "securityWrongGeneralID" },
1477 { 3, "securityWrongSendersID" },
1478 { 4, "securityIntegrityFailed" },
1479 { 5, "securityWrongOID" },
1482 static per_choice_t SecurityErrors2_choice[] = {
1483 { 0, "securityWrongSyncTime", ASN1_EXTENSION_ROOT,
1484 dissect_h225_NULL },
1485 { 1, "securityReplay", ASN1_EXTENSION_ROOT,
1486 dissect_h225_NULL },
1487 { 2, "securityWrongGeneralID", ASN1_EXTENSION_ROOT,
1488 dissect_h225_NULL },
1489 { 3, "securityWrongSendersID", ASN1_EXTENSION_ROOT,
1490 dissect_h225_NULL },
1491 { 4, "securityIntegrityFailed", ASN1_EXTENSION_ROOT,
1492 dissect_h225_NULL },
1493 { 5, "securityWrongOID", ASN1_EXTENSION_ROOT,
1494 dissect_h225_NULL },
1495 { 0, NULL, 0, NULL }
1498 dissect_h225_SecurityErrors2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1500 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_SecurityErrors2, ett_h225_SecurityErrors2, SecurityErrors2_choice, "SecurityErrors2", NULL);
1505 static const value_string ServiceControlSession_reason_vals[] = {
1511 static per_choice_t ServiceControlSession_reason_choice[] = {
1512 { 0, "open", ASN1_EXTENSION_ROOT,
1513 dissect_h225_NULL },
1514 { 1, "refresh", ASN1_EXTENSION_ROOT,
1515 dissect_h225_NULL },
1516 { 2, "close", ASN1_EXTENSION_ROOT,
1517 dissect_h225_NULL },
1518 { 0, NULL, 0, NULL }
1521 dissect_h225_ServiceControlSession_reason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1523 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_ServiceControlSession_reason, ett_h225_ServiceControlSession_reason, ServiceControlSession_reason_choice, "ServiceControlSession_reason", NULL);
1529 static const value_string billingMode_vals[] = {
1534 static per_choice_t billingMode_choice[] = {
1535 { 0, "credit", ASN1_EXTENSION_ROOT,
1536 dissect_h225_NULL },
1537 { 1, "debit", ASN1_EXTENSION_ROOT,
1538 dissect_h225_NULL },
1539 { 0, NULL, 0, NULL }
1542 dissect_h225_billingMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1544 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_billingMode, ett_h225_billingMode, billingMode_choice, "billingMode", NULL);
1550 static const value_string CCSCcallStartingPoint_vals[] = {
1555 static per_choice_t CCSCcallStartingPoint_choice[] = {
1556 { 0, "alerting", ASN1_EXTENSION_ROOT,
1557 dissect_h225_NULL },
1558 { 1, "connect", ASN1_EXTENSION_ROOT,
1559 dissect_h225_NULL },
1560 { 0, NULL, 0, NULL }
1563 dissect_h225_CCSCcallStartingPoint(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1565 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_CCSCcallStartingPoint, ett_h225_CCSCcallStartingPoint, CCSCcallStartingPoint_choice, "CCSCcallStartingPoint", NULL);
1571 const value_string GatekeeperRejectReason_vals[] = {
1572 { 0, "resourceUnavailable" },
1573 { 1, "terminalExcluded" },
1574 { 2, "invalidRevision" },
1575 { 3, "undefinedReason" },
1576 { 4, "securityDenial" },
1577 { 5, "genericDataReason" },
1578 { 6, "neededFeatureNotSupported" },
1579 { 7, "securityError" },
1582 static per_choice_t GatekeeperRejectReason_choice[] = {
1583 { 0, "resourceUnavailable", ASN1_EXTENSION_ROOT,
1584 dissect_h225_NULL },
1585 { 1, "terminalExcluded", ASN1_EXTENSION_ROOT,
1586 dissect_h225_NULL },
1587 { 2, "invalidRevision", ASN1_EXTENSION_ROOT,
1588 dissect_h225_NULL },
1589 { 3, "undefinedReason", ASN1_EXTENSION_ROOT,
1590 dissect_h225_NULL },
1591 { 4, "securityDenial", ASN1_NOT_EXTENSION_ROOT,
1592 dissect_h225_NULL },
1593 { 5, "genericDataReason", ASN1_NOT_EXTENSION_ROOT,
1594 dissect_h225_NULL },
1595 { 6, "neededFeatureNotSupported", ASN1_NOT_EXTENSION_ROOT,
1596 dissect_h225_NULL },
1597 { 7, "securityError", ASN1_NOT_EXTENSION_ROOT,
1598 dissect_h225_SecurityErrors },
1599 { 0, NULL, 0, NULL }
1602 dissect_h225_GatekeeperRejectReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1606 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_GatekeeperRejectReason, ett_h225_GatekeeperRejectReason, GatekeeperRejectReason_choice, "GatekeeperRejectReason", &value);
1607 h225_pi.reason = value;
1613 const value_string UnregRequestReason_vals[] = {
1614 { 0, "reregistrationRequired" },
1615 { 1, "ttlExpired" },
1616 { 2, "securityDenial" },
1617 { 3, "undefinedReason" },
1618 { 4, "maintenance" },
1619 { 5, "securityError" },
1622 static per_choice_t UnregRequestReason_choice[] = {
1623 { 0, "reregistrationRequired", ASN1_EXTENSION_ROOT,
1624 dissect_h225_NULL },
1625 { 1, "ttlExpired", ASN1_EXTENSION_ROOT,
1626 dissect_h225_NULL },
1627 { 2, "securityDenial", ASN1_EXTENSION_ROOT,
1628 dissect_h225_NULL },
1629 { 3, "undefinedReason", ASN1_EXTENSION_ROOT,
1630 dissect_h225_NULL },
1631 { 4, "maintenance", ASN1_NOT_EXTENSION_ROOT,
1632 dissect_h225_NULL },
1633 { 5, "securityError", ASN1_NOT_EXTENSION_ROOT,
1634 dissect_h225_SecurityErrors2 },
1635 { 0, NULL, 0, NULL }
1638 dissect_h225_UnregRequestReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1642 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_UnregRequestReason, ett_h225_UnregRequestReason, UnregRequestReason_choice, "UnregRequestReason", &value);
1643 h225_pi.reason = value;
1649 const value_string UnregRejectReason_vals[] = {
1650 { 0, "notCurrentlyRegistered" },
1651 { 1, "callInProgress" },
1652 { 2, "undefinedReason" },
1653 { 3, "permissionDenied" },
1654 { 4, "securityDenial" },
1655 { 5, "securityError" },
1658 static per_choice_t UnregRejectReason_choice[] = {
1659 { 0, "notCurrentlyRegistered", ASN1_EXTENSION_ROOT,
1660 dissect_h225_NULL },
1661 { 1, "callInProgress", ASN1_EXTENSION_ROOT,
1662 dissect_h225_NULL },
1663 { 2, "undefinedReason", ASN1_EXTENSION_ROOT,
1664 dissect_h225_NULL },
1665 { 3, "permissionDenied", ASN1_NOT_EXTENSION_ROOT,
1666 dissect_h225_NULL },
1667 { 4, "securityDenial", ASN1_NOT_EXTENSION_ROOT,
1668 dissect_h225_NULL },
1669 { 5, "securityError", ASN1_NOT_EXTENSION_ROOT,
1670 dissect_h225_SecurityErrors2 },
1671 { 0, NULL, 0, NULL }
1674 dissect_h225_UnregRejectReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1678 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_UnregRejectReason, ett_h225_UnregRejectReason, UnregRejectReason_choice, "UnregRejectReason", &value);
1679 h225_pi.reason = value;
1685 static const value_string CallType_vals[] = {
1686 { 0, "pointToPoint" },
1692 static per_choice_t CallType_choice[] = {
1693 { 0, "pointToPoint", ASN1_EXTENSION_ROOT,
1694 dissect_h225_NULL },
1695 { 1, "oneToN", ASN1_EXTENSION_ROOT,
1696 dissect_h225_NULL },
1697 { 2, "nToOne", ASN1_EXTENSION_ROOT,
1698 dissect_h225_NULL },
1699 { 3, "nToN", ASN1_EXTENSION_ROOT,
1700 dissect_h225_NULL },
1701 { 0, NULL, 0, NULL }
1704 dissect_h225_CallType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1706 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_CallType, ett_h225_CallType, CallType_choice, "CallType", NULL);
1711 static const value_string CallModel_vals[] = {
1713 { 1, "gatekeeperRouted" },
1716 static per_choice_t CallModel_choice[] = {
1717 { 0, "direct", ASN1_EXTENSION_ROOT,
1718 dissect_h225_NULL },
1719 { 1, "gatekeeperRouted", ASN1_EXTENSION_ROOT,
1720 dissect_h225_NULL },
1721 { 0, NULL, 0, NULL }
1724 dissect_h225_CallModel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1726 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_CallModel, ett_h225_CallModel, CallModel_choice, "CallModel", NULL);
1732 static const value_string TransportQOS_vals[] = {
1733 { 0, "endpointControlled" },
1734 { 1, "gatekeeperControlled" },
1738 static per_choice_t TransportQOS_choice[] = {
1739 { 0, "endpointControlled", ASN1_EXTENSION_ROOT,
1740 dissect_h225_NULL },
1741 { 1, "gatekeeperControlled", ASN1_EXTENSION_ROOT,
1742 dissect_h225_NULL },
1743 { 2, "noControl", ASN1_EXTENSION_ROOT,
1744 dissect_h225_NULL },
1745 { 0, NULL, 0, NULL }
1748 dissect_h225_TransportQOS(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1750 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_TransportQOS, ett_h225_TransportQOS, TransportQOS_choice, "TransportQOS", NULL);
1755 const value_string BandRejectReason_vals[] = {
1757 { 1, "invalidConferenceID" },
1758 { 2, "invalidPermission" },
1759 { 3, "insufficientResources" },
1760 { 4, "invalidRevision" },
1761 { 5, "undefinedReason" },
1762 { 6, "securityDenial" },
1763 { 7, "securityError" },
1766 static per_choice_t BandRejectReason_choice[] = {
1767 { 0, "notBound", ASN1_EXTENSION_ROOT,
1768 dissect_h225_NULL },
1769 { 1, "invalidConferenceID", ASN1_EXTENSION_ROOT,
1770 dissect_h225_NULL },
1771 { 2, "invalidPermission", ASN1_EXTENSION_ROOT,
1772 dissect_h225_NULL },
1773 { 3, "insufficientResources", ASN1_EXTENSION_ROOT,
1774 dissect_h225_NULL },
1775 { 4, "invalidRevision", ASN1_EXTENSION_ROOT,
1776 dissect_h225_NULL },
1777 { 5, "undefinedReason", ASN1_EXTENSION_ROOT,
1778 dissect_h225_NULL },
1779 { 6, "securityDenial", ASN1_NOT_EXTENSION_ROOT,
1780 dissect_h225_NULL },
1781 { 7, "securityError", ASN1_NOT_EXTENSION_ROOT,
1782 dissect_h225_SecurityErrors2 },
1783 { 0, NULL, 0, NULL }
1786 dissect_h225_BandRejectReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1790 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_BandRejectReason, ett_h225_BandRejectReason, BandRejectReason_choice, "BandRejectReason", &value);
1791 h225_pi.reason = value;
1797 const value_string DisengageReason_vals[] = {
1798 { 0, "forcedDrop" },
1799 { 1, "normalDrop" },
1800 { 2, "undefinedReason" },
1803 static per_choice_t DisengageReason_choice[] = {
1804 { 0, "forcedDrop", ASN1_EXTENSION_ROOT,
1805 dissect_h225_NULL },
1806 { 1, "normalDrop", ASN1_EXTENSION_ROOT,
1807 dissect_h225_NULL },
1808 { 2, "undefinedReason", ASN1_EXTENSION_ROOT,
1809 dissect_h225_NULL },
1810 { 0, NULL, 0, NULL }
1813 dissect_h225_DisengageReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1817 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_DisengageReason, ett_h225_DisengageReason, DisengageReason_choice, "DisengageReason", &value);
1818 h225_pi.reason = value;
1824 const value_string DisengageRejectReason_vals[] = {
1825 { 0, "notRegistered" },
1826 { 1, "requestToDropOther" },
1827 { 2, "securityDenial" },
1828 { 3, "securityError" },
1831 static per_choice_t DisengageRejectReason_choice[] = {
1832 { 0, "notRegistered", ASN1_EXTENSION_ROOT,
1833 dissect_h225_NULL },
1834 { 1, "requestToDropOther", ASN1_EXTENSION_ROOT,
1835 dissect_h225_NULL },
1836 { 2, "securityDenial", ASN1_NOT_EXTENSION_ROOT,
1837 dissect_h225_NULL },
1838 { 3, "securityError", ASN1_NOT_EXTENSION_ROOT,
1839 dissect_h225_SecurityErrors2 },
1840 { 0, NULL, 0, NULL }
1843 dissect_h225_DisengageRejectReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1847 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_DisengageRejectReason, ett_h225_DisengageRejectReason, DisengageRejectReason_choice, "DisengageRejectReason", &value);
1848 h225_pi.reason = value;
1855 const value_string InfoRequestNakReason_vals[] = {
1856 { 0, "notRegistered" },
1857 { 1, "securityDenial" },
1858 { 2, "undefinedReason" },
1859 { 3, "securityError" },
1862 static per_choice_t InfoRequestNakReason_choice[] = {
1863 { 0, "notRegistered", ASN1_EXTENSION_ROOT,
1864 dissect_h225_NULL },
1865 { 1, "securityDenial", ASN1_EXTENSION_ROOT,
1866 dissect_h225_NULL },
1867 { 2, "undefinedReason", ASN1_EXTENSION_ROOT,
1868 dissect_h225_NULL },
1869 { 3, "securityError", ASN1_NOT_EXTENSION_ROOT,
1870 dissect_h225_SecurityErrors2 },
1871 { 0, NULL, 0, NULL }
1874 dissect_h225_InfoRequestNakReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1878 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_InfoRequestNakReason, ett_h225_InfoRequestNakReason, InfoRequestNakReason_choice, "InfoRequestNakReason", &value);
1879 h225_pi.reason = value;
1885 static const value_string SCRresult_vals[] = {
1889 { 3, "notAvailable" },
1890 { 4, "neededFeatureNotSupported" },
1893 static per_choice_t SCRresult_choice[] = {
1894 { 0, "started", ASN1_EXTENSION_ROOT,
1895 dissect_h225_NULL },
1896 { 1, "failed", ASN1_EXTENSION_ROOT,
1897 dissect_h225_NULL },
1898 { 2, "stopped", ASN1_EXTENSION_ROOT,
1899 dissect_h225_NULL },
1900 { 3, "notAvailable", ASN1_EXTENSION_ROOT,
1901 dissect_h225_NULL },
1902 { 4, "neededFeatureNotSupported", ASN1_EXTENSION_ROOT,
1903 dissect_h225_NULL },
1904 { 0, NULL, 0, NULL }
1907 dissect_h225_SCRresult(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1909 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_SCRresult, ett_h225_SCRresult, SCRresult_choice, "SCRresult", NULL);
1914 dissect_h225_object(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1916 offset = dissect_per_object_identifier(tvb, offset, pinfo, tree,
1923 dissect_h225_t35CountryCode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1925 offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree,
1926 hf_h225_t35CountryCode, 0, 255,
1927 &t35CountryCode, NULL, FALSE);
1933 dissect_h225_t35Extension(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1935 offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree,
1936 hf_h225_t35Extension, 0, 255,
1937 &t35Extension, NULL, FALSE);
1942 dissect_h225_manufacturerCode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1944 offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree,
1945 hf_h225_manufacturerCode, 0, 65535,
1946 &manufacturerCode, NULL, FALSE);
1950 static per_sequence_t H221NonStandard_sequence[] = {
1951 { "t35CountryCode", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
1952 dissect_h225_t35CountryCode },
1953 { "t35Extension", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
1954 dissect_h225_t35Extension },
1955 { "manufacturerCode", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
1956 dissect_h225_manufacturerCode },
1957 { NULL, 0, 0, NULL }
1960 dissect_h225_h221NonStandard(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1964 manufacturerCode = 0;
1966 offset = dissect_per_sequence(tvb, offset, pinfo, tree,
1967 hf_h225_h221NonStandard,
1968 ett_h225_H221NonStandard, H221NonStandard_sequence);
1970 h221NonStandard = ((t35CountryCode * 256) + t35Extension) * 65536 + manufacturerCode;
1972 proto_tree_add_uint(tree, hf_h221Manufacturer, tvb, (offset>>3)-4,4,h221NonStandard);
1977 static const value_string NonStandardIdentifier_vals[] = {
1979 { 1, "h221NonStandard" },
1982 static per_choice_t NonStandardIdentifier_choice[] = {
1983 { 0, "object", ASN1_EXTENSION_ROOT,
1984 dissect_h225_object },
1985 { 1, "h221NonStandard", ASN1_EXTENSION_ROOT,
1986 dissect_h225_h221NonStandard },
1987 { 0, NULL, 0, NULL }
1990 dissect_h225_nonStandardIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
1995 h221NonStandard = 0;
1997 offset = dissect_per_choice(tvb, offset, pinfo, tree,
1998 hf_h225_nonStandardIdentifier,
1999 ett_h225_NonStandardIdentifier, NonStandardIdentifier_choice, "NonStandardIdentifier",
2003 case 0 : /* object */
2004 nsp_handle = dissector_get_string_handle(nsp_object_dissector_table, object);
2006 case 1 : /* h221NonStandard */
2007 nsp_handle = dissector_get_port_handle(nsp_h221_dissector_table, h221NonStandard);
2017 dissect_h225_nsp_data(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2019 guint32 value_offset, value_len;
2022 offset = dissect_per_octet_string(tvb, offset, pinfo, tree,
2023 hf_h225_nsp_data, -1, -1,
2024 &value_offset, &value_len);
2026 if (value_len > 0) {
2027 next_tvb = tvb_new_subset(tvb, value_offset, value_len, value_len);
2028 call_dissector((nsp_handle)?nsp_handle:data_handle, next_tvb, pinfo, tree);
2034 static per_sequence_t NonStandardParameter_sequence[] = {
2035 { "nonStandardIdentifier", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
2036 dissect_h225_nonStandardIdentifier },
2037 { "data", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
2038 dissect_h225_nsp_data },
2039 { NULL, 0, 0, NULL }
2043 dissect_h225_NonStandardParameter(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index)
2047 offset = dissect_per_sequence(tvb, offset, pinfo, tree,
2049 ett_h225_NonStandardParameter, NonStandardParameter_sequence);
2056 dissect_h225_nonStandardData(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2058 offset = dissect_h225_NonStandardParameter(tvb, offset, pinfo, tree,
2059 hf_h225_nonStandardData);
2063 static per_sequence_t GatekeeperInfo_sequence[] = {
2064 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2065 dissect_h225_nonStandardData },
2066 { NULL, 0, 0, NULL }
2069 dissect_h225_GatekeeperInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2071 offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_GatekeeperInfo, ett_h225_GatekeeperInfo, GatekeeperInfo_sequence);
2076 dissect_h225_nonStandard(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2078 offset = dissect_h225_NonStandardParameter(tvb, offset, pinfo, tree,
2079 hf_h225_nonStandard);
2083 static const value_string SecurityServiceMode_vals[] = {
2084 { 0, "nonStandard" },
2089 static per_choice_t SecurityServiceMode_choice[] = {
2090 { 0, "nonStandard", ASN1_EXTENSION_ROOT,
2091 dissect_h225_nonStandard },
2092 { 1, "none", ASN1_EXTENSION_ROOT,
2093 dissect_h225_NULL },
2094 { 2, "default", ASN1_EXTENSION_ROOT,
2095 dissect_h225_NULL },
2096 { 0, NULL, 0, NULL }
2099 dissect_h225_SecurityServiceMode_encryption(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2101 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_SecurityServiceMode_encryption, ett_h225_SecurityServiceMode_encryption, SecurityServiceMode_choice, "Encryption", NULL);
2105 dissect_h225_SecurityServiceMode_authentication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2107 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_SecurityServiceMode_authentication, ett_h225_SecurityServiceMode_authentication, SecurityServiceMode_choice, "Authentication", NULL);
2111 dissect_h225_SecurityServiceMode_integrity(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2113 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_SecurityServiceMode_integrity, ett_h225_SecurityServiceMode_integrity, SecurityServiceMode_choice, "Integrity", NULL);
2119 static per_sequence_t SecurityCapabilities_sequence[] = {
2120 { "nonStandard", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2121 dissect_h225_nonStandard },
2122 { "encryption", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2123 dissect_h225_SecurityServiceMode_encryption },
2124 { "authenticaton", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2125 dissect_h225_SecurityServiceMode_authentication },
2126 { "integrity", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2127 dissect_h225_SecurityServiceMode_integrity },
2128 { NULL, 0, 0, NULL }
2131 dissect_h225_SecurityCapabilities_tls(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2133 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_SecurityCapabilities_tls, ett_h225_SecurityCapabilities_tls, SecurityCapabilities_sequence);
2137 dissect_h225_SecurityCapabilities_ipsec(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2139 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_SecurityCapabilities_ipsec, ett_h225_SecurityCapabilities_ipsec, SecurityCapabilities_sequence);
2146 static const value_string H245Security_vals[] = {
2147 { 0, "nonStandard" },
2148 { 1, "noSecurity" },
2153 static per_choice_t H245Security_choice[] = {
2154 { 0, "nonStandard", ASN1_EXTENSION_ROOT,
2155 dissect_h225_nonStandard },
2156 { 1, "noSecurity", ASN1_EXTENSION_ROOT,
2157 dissect_h225_NULL },
2158 { 2, "tls", ASN1_EXTENSION_ROOT,
2159 dissect_h225_SecurityCapabilities_tls },
2160 { 3, "ipsec", ASN1_EXTENSION_ROOT,
2161 dissect_h225_SecurityCapabilities_ipsec },
2162 { 0, NULL, 0, NULL }
2165 dissect_h225_H245Security(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2167 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_H245Security, ett_h225_H245Security, H245Security_choice, "H245Security", NULL);
2172 dissect_h225_nonStandardUsageTypes_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2174 offset = dissect_h225_NonStandardParameter(tvb, offset, pinfo, tree,
2175 hf_h225_nonStandardUsageTypes_item);
2180 dissect_h225_nonStandardUsageTypes(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2182 offset = dissect_per_sequence_of(tvb, offset, pinfo, tree,
2183 hf_h225_nonStandardUsageTypes,
2184 ett_h225_T_nonStandardUsageTypes, dissect_h225_nonStandardUsageTypes_item);
2189 static per_sequence_t RasUsageInfoTypes_sequence[] = {
2190 { "nonStandardUsageTypes", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2191 dissect_h225_nonStandardUsageTypes },
2192 { "startTime", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2193 dissect_h225_NULL },
2194 { "endTime", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2195 dissect_h225_NULL },
2196 { "terminationCause", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2197 dissect_h225_NULL },
2198 { NULL, 0, 0, NULL }
2201 dissect_h225_RasUsageInfoTypes(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2203 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_RasUsageInfoTypes, ett_h225_RasUsageInfoTypes, RasUsageInfoTypes_sequence);
2207 dissect_h225_usageReportingCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2209 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_usageReportingCapability, ett_h225_RasUsageInfoTypes, RasUsageInfoTypes_sequence);
2216 dissect_h225_BandWidth(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2218 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
2219 tree, hf_h225_BandWidth, 0, 4294967295UL,
2227 dissect_h225_channelRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2229 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
2230 tree, hf_h225_channelRate, 0, 4294967295UL,
2238 dissect_h225_totalBandwidthRestriction(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2240 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
2241 tree, hf_h225_totalBandwidthRestriction, 0, 4294967295UL,
2248 dissect_h225_allowedBandWidth(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2250 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
2251 tree, hf_h225_allowedBandWidth, 0, 4294967295UL,
2259 dissect_h225_channelMultiplier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2261 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
2262 tree, hf_h225_channelMultiplier, 1, 256,
2268 static per_sequence_t DataRate_sequence[] = {
2269 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2270 dissect_h225_nonStandardData },
2271 { "channelRate", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2272 dissect_h225_channelRate },
2273 { "channelMultiplier", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2274 dissect_h225_channelMultiplier },
2275 { NULL, 0, 0, NULL }
2278 dissect_h225_DataRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2280 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_DataRate, ett_h225_DataRate, DataRate_sequence);
2284 dissect_h225_gatewayDataRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2286 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_gatewayDataRate, ett_h225_DataRate, DataRate_sequence);
2292 dissect_h225_dataRatesSupported(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2294 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_dataRatesSupported, ett_h225_dataRatesSupported, dissect_h225_DataRate );
2299 static per_sequence_t TerminalInfo_sequence[] = {
2300 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2301 dissect_h225_nonStandardData },
2302 { NULL, 0, 0, NULL }
2305 dissect_h225_TerminalInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2307 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_TerminalInfo, ett_h225_TerminalInfo, TerminalInfo_sequence);
2313 dissect_h225_h248Message(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2315 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_h248Message, -1, -1, NULL, NULL);
2320 static per_sequence_t StimulusControl_sequence[] = {
2321 { "nonStandard", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2322 dissect_h225_nonStandard },
2323 { "isText", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2324 dissect_h225_NULL },
2325 { "h248Message", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2326 dissect_h225_h248Message},
2327 { NULL, 0, 0, NULL }
2330 dissect_h225_StimulusControl(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2332 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_StimulusControl, ett_h225_StimulusControl, StimulusControl_sequence);
2340 dissect_h225_conferenceID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2342 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_conferenceID, 16, 16, NULL, NULL);
2349 dissect_h225_replaceWithConferenceInvite(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2351 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_replaceWithConferenceInvite, 16, 16, NULL, NULL);
2357 dissect_h225_nonStandardReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2359 offset = dissect_h225_NonStandardParameter(tvb, offset, pinfo, tree,
2360 hf_h225_nonStandardReason);
2364 const value_string ReleaseCompleteReason_vals[] = {
2365 { 0, "noBandwidth" },
2366 { 1, "gatekeeperResources" },
2367 { 2, "unreachableDestination" },
2368 { 3, "destinationRejection" },
2369 { 4, "invalidRevision" },
2370 { 5, "noPermission" },
2371 { 6, "unreachableGatekeeper" },
2372 { 7, "gatewayResources" },
2373 { 8, "badFormatAddress" },
2374 { 9, "adaptiveBusy" },
2376 { 11, "undefinedReason" },
2377 { 12, "facilityCallDeflection" },
2378 { 13, "securityDenied" },
2379 { 14, "calledPartyNotRegistered" },
2380 { 15, "callerNotRegistered" },
2381 { 16, "newConnectionNeeded" },
2382 { 17, "nonStandardReason" },
2383 { 18, "replaceWithConferenceInvite" },
2384 { 19, "genericDataReason" },
2385 { 20, "neededFeatureNotSupported" },
2386 { 21, "tunnelledSignallingRejected" },
2387 { 22, "invalidCID" },
2388 { 23, "invalidCID" },
2389 { 24, "securityError" },
2390 { 25, "hopCountExceeded" },
2393 static per_choice_t ReleaseCompleteReason_choice[] = {
2394 { 0, "noBandwidth", ASN1_EXTENSION_ROOT,
2395 dissect_h225_NULL },
2396 { 1, "gatekeeperResources", ASN1_EXTENSION_ROOT,
2397 dissect_h225_NULL },
2398 { 2, "unreachableDestination", ASN1_EXTENSION_ROOT,
2399 dissect_h225_NULL },
2400 { 3, "destinationRejection", ASN1_EXTENSION_ROOT,
2401 dissect_h225_NULL },
2402 { 4, "invalidRevision", ASN1_EXTENSION_ROOT,
2403 dissect_h225_NULL },
2404 { 5, "noPermission", ASN1_EXTENSION_ROOT,
2405 dissect_h225_NULL },
2406 { 6, "unreachableGatekeeper", ASN1_EXTENSION_ROOT,
2407 dissect_h225_NULL },
2408 { 7, "gatewayResources", ASN1_EXTENSION_ROOT,
2409 dissect_h225_NULL },
2410 { 8, "badFormatAddress", ASN1_EXTENSION_ROOT,
2411 dissect_h225_NULL },
2412 { 9, "adaptiveBusy", ASN1_EXTENSION_ROOT,
2413 dissect_h225_NULL },
2414 { 10, "inConf", ASN1_EXTENSION_ROOT,
2415 dissect_h225_NULL },
2416 { 11, "undefinedReason", ASN1_EXTENSION_ROOT,
2417 dissect_h225_NULL },
2418 { 12, "facilityCallDeflection", ASN1_NOT_EXTENSION_ROOT,
2419 dissect_h225_NULL },
2420 { 13, "securityDenied", ASN1_NOT_EXTENSION_ROOT,
2421 dissect_h225_NULL },
2422 { 14, "calledPartyNotRegistered", ASN1_NOT_EXTENSION_ROOT,
2423 dissect_h225_NULL },
2424 { 15, "callerNotRegistered", ASN1_NOT_EXTENSION_ROOT,
2425 dissect_h225_NULL },
2426 { 16, "newConnectionNeeded", ASN1_NOT_EXTENSION_ROOT,
2427 dissect_h225_NULL },
2428 { 17, "nonStandardReason", ASN1_NOT_EXTENSION_ROOT,
2429 dissect_h225_nonStandardReason },
2430 { 18, "replaceWithConferenceInvite", ASN1_NOT_EXTENSION_ROOT,
2431 dissect_h225_replaceWithConferenceInvite },
2432 { 19, "genericDataReason", ASN1_NOT_EXTENSION_ROOT,
2433 dissect_h225_NULL },
2434 { 20, "neededFeatureNotSupported", ASN1_NOT_EXTENSION_ROOT,
2435 dissect_h225_NULL },
2436 { 21, "tunnelledSignallingRejected", ASN1_NOT_EXTENSION_ROOT,
2437 dissect_h225_NULL },
2438 { 22, "invalidCID", ASN1_NOT_EXTENSION_ROOT,
2439 dissect_h225_NULL },
2440 { 23, "invalidCID", ASN1_NOT_EXTENSION_ROOT,
2441 dissect_h225_NULL },
2442 { 24, "securityError", ASN1_NOT_EXTENSION_ROOT,
2443 dissect_h225_SecurityErrors },
2444 { 25, "hopCountExceeded", ASN1_NOT_EXTENSION_ROOT,
2445 dissect_h225_NULL },
2446 { 0, NULL, 0, NULL }
2449 dissect_h225_ReleaseCompleteReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2453 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_ReleaseCompleteReason, ett_h225_ReleaseCompleteReason, ReleaseCompleteReason_choice, "ReleaseCompleteReason", &value);
2454 h225_pi.reason = value;
2461 dissect_h225_numberOfScnConnections(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2463 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
2464 tree, hf_h225_numberOfScnConnections, 0, 65535,
2469 static per_sequence_t connectionParameters_sequence[] = {
2470 { "connectionType", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2471 dissect_h225_ScnConnectionType },
2472 { "numberOfScnConnections", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2473 dissect_h225_numberOfScnConnections },
2474 { "connectionAggregation", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2475 dissect_h225_ScnConnectionAggregation },
2476 { NULL, 0, 0, NULL }
2479 dissect_h225_connectionParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2481 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_connectionParameters, ett_h225_connectionParameters, connectionParameters_sequence);
2489 dissect_h225_RequestSeqNum(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2491 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
2492 tree, hf_h225_RequestSeqNum, 1, 65535,
2493 &(h225_pi.requestSeqNum), NULL, FALSE);
2497 static per_sequence_t RasUsageSpecification_when_sequence[] = {
2498 { "start", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2499 dissect_h225_NULL },
2500 { "end", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2501 dissect_h225_NULL },
2502 { "inIrr", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2503 dissect_h225_NULL },
2504 { NULL, 0, 0, NULL }
2507 dissect_h225_RasUsageSpecification_when(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2509 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_RasUsageSpecification_when, ett_h225_RasUsageSpecification_when, RasUsageSpecification_when_sequence);
2515 static per_sequence_t RasUsageSpecification_callStartingPoint_sequence[] = {
2516 { "alerting", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2517 dissect_h225_NULL },
2518 { "connect", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2519 dissect_h225_NULL },
2520 { NULL, 0, 0, NULL }
2523 dissect_h225_RasUsageSpecification_callStartingPoint(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2525 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_RasUsageSpecification_callStartingPoint, ett_h225_RasUsageSpecification_callStartingPoint, RasUsageSpecification_callStartingPoint_sequence);
2532 static per_sequence_t RasUsageSpecification_sequence[] = {
2533 { "when", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2534 dissect_h225_RasUsageSpecification_when },
2535 { "callStartingPoint", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2536 dissect_h225_RasUsageSpecification_callStartingPoint },
2537 { "required", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2538 dissect_h225_RasUsageInfoTypes },
2539 { NULL, 0, 0, NULL }
2542 dissect_h225_RasUsageSpecification(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2544 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_RasUsageSpecification, ett_h225_RasUsageSpecification, RasUsageSpecification_sequence);
2552 dissect_h225_ipAddress_ip(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree)
2556 offset=(offset&0xfffffff8)+8;
2558 tvb_memcpy(tvb, (guint8 *)&ipv4_address, offset>>3, 4);
2559 proto_tree_add_ipv4(tree, hf_h225_ipAddress_ip, tvb, offset>>3, 4, ipv4_address);
2567 dissect_h225_ipAddress_port(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2569 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
2570 tree, hf_h225_ipAddress_port, 0, 65535,
2571 &ipv4_port, NULL, FALSE);
2577 static per_sequence_t ipAddress_sequence[] = {
2578 { "ip", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
2579 dissect_h225_ipAddress_ip },
2580 { "port", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
2581 dissect_h225_ipAddress_port },
2582 { NULL, 0, 0, NULL }
2585 dissect_h225_ipAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2587 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ipAddress, ett_h225_ipAddress, ipAddress_sequence);
2593 static const value_string routing_vals[] = {
2598 static per_choice_t routing_choice[] = {
2599 { 0, "strict", ASN1_EXTENSION_ROOT,
2600 dissect_h225_NULL },
2601 { 1, "loose", ASN1_EXTENSION_ROOT,
2602 dissect_h225_NULL },
2603 { 0, NULL, 0, NULL }
2606 dissect_h225_routing(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2608 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_routing, ett_h225_routing, routing_choice, "routing", NULL);
2616 dissect_h225_route(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2618 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_route, ett_h225_route, dissect_h225_ipAddress_ip );
2622 static per_sequence_t ipSourceRoute_sequence[] = {
2623 { "ip", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2624 dissect_h225_ipAddress_ip },
2625 { "port", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2626 dissect_h225_ipAddress_port },
2627 { "route", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2628 dissect_h225_route },
2629 { "routing", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2630 dissect_h225_routing },
2631 { NULL, 0, 0, NULL }
2634 dissect_h225_ipSourceRoute(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2636 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ipSourceRoute, ett_h225_ipSourceRoute, ipSourceRoute_sequence);
2644 dissect_h225_ipxNode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2646 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_ipxNode, 6, 6, NULL, NULL);
2653 dissect_h225_ipxNetnum(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2655 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_ipxNetnum, 4, 4, NULL, NULL);
2661 dissect_h225_ipxPort(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2663 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_ipxPort, 2, 2, NULL, NULL);
2667 static per_sequence_t ipxAddress_sequence[] = {
2668 { "node", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
2669 dissect_h225_ipxNode },
2670 { "netnum", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
2671 dissect_h225_ipxNetnum },
2672 { "port", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
2673 dissect_h225_ipxPort },
2674 { NULL, 0, 0, NULL }
2677 dissect_h225_ipxAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2679 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ipxAddress, ett_h225_ipxAddress, ipxAddress_sequence);
2685 dissect_h225_ipv6Address_ip(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2687 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_ipv6Address_ip, 16, 16, NULL, NULL);
2692 dissect_h225_ipv6Address_port(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2694 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
2695 tree, hf_h225_ipv6Address_port, 0, 65535,
2702 static per_sequence_t ip6Address_sequence[] = {
2703 { "ip", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2704 dissect_h225_ipv6Address_ip },
2705 { "port", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2706 dissect_h225_ipv6Address_port },
2707 { NULL, 0, 0, NULL }
2710 dissect_h225_ip6Address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2712 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ip6Address, ett_h225_ip6Address, ip6Address_sequence);
2720 dissect_h225_netBios(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2722 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_netBios, 16, 16, NULL, NULL);
2730 dissect_h225_nsap(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2732 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_nsap, 1, 20, NULL, NULL);
2737 dissect_h225_nonStandardAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2739 offset = dissect_h225_NonStandardParameter(tvb, offset, pinfo, tree,
2740 hf_h225_nonStandardAddress);
2744 static const value_string TransportAddress_vals[] = {
2746 { 1, "ipSourceRoute" },
2747 { 2, "ipxAddress" },
2748 { 3, "ip6Address" },
2751 { 6, "nonStandardAddress" },
2754 static per_choice_t TransportAddress_choice[] = {
2755 { 0, "ipAddress", ASN1_EXTENSION_ROOT,
2756 dissect_h225_ipAddress },
2757 { 1, "ipSourceRoute", ASN1_EXTENSION_ROOT,
2758 dissect_h225_ipSourceRoute },
2759 { 2, "ipxAddress", ASN1_EXTENSION_ROOT,
2760 dissect_h225_ipxAddress },
2761 { 3, "ip6Address", ASN1_EXTENSION_ROOT,
2762 dissect_h225_ip6Address },
2763 { 4, "netBios", ASN1_EXTENSION_ROOT,
2764 dissect_h225_netBios },
2765 { 5, "nsap", ASN1_EXTENSION_ROOT,
2766 dissect_h225_nsap },
2767 { 6, "nonStandardAddress", ASN1_EXTENSION_ROOT,
2768 dissect_h225_nonStandardAddress },
2769 { 0, NULL, 0, NULL }
2772 dissect_h225_transportID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2774 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_transportID, ett_h225_TransportAddress, TransportAddress_choice, "transportID", NULL);
2778 dissect_h225_alternativeAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2780 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_alternativeAddress, ett_h225_TransportAddress, TransportAddress_choice, "alternativeAddress", NULL);
2784 dissect_h225_sourceCallSignalAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2786 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_sourceCallSignalAddress, ett_h225_TransportAddress, TransportAddress_choice, "sourceCallSignalAddress", NULL);
2790 dissect_h225_CallSignalAddress2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2792 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_CallSignalAddress2, ett_h225_TransportAddress, TransportAddress_choice, "CallSignalAddress2", NULL);
2796 dissect_h225_destCallSignalAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2798 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_destCallSignalAddress, ett_h225_TransportAddress, TransportAddress_choice, "destCallSignalAddress", NULL);
2802 /* this is an indication of where h245 is spoken, try to pick it up if
2803 it was ipv4 and register h245 there */
2805 dissect_h225_h245Address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2810 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_h245Address, ett_h225_TransportAddress, TransportAddress_choice, "h245Address", NULL);
2812 if((!pinfo->fd->flags.visited) && ipv4_address!=0 && ipv4_port!=0 && h245_handle){
2814 conversation_t *conv=NULL;
2816 src_addr.type=AT_IPv4;
2818 src_addr.data=(const guint8 *)&ipv4_address;
2820 conv=find_conversation(&src_addr, &src_addr, PT_TCP, ipv4_port, ipv4_port, NO_ADDR_B|NO_PORT_B);
2822 conv=conversation_new(&src_addr, &src_addr, PT_TCP, ipv4_port, ipv4_port, NO_ADDR2|NO_PORT2);
2823 conversation_set_dissector(conv, h245_handle);
2829 dissect_h225_sendAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2831 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_sendAddress, ett_h225_TransportAddress, TransportAddress_choice, "sendAddress", NULL);
2835 dissect_h225_recvAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2837 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_recvAddress, ett_h225_TransportAddress, TransportAddress_choice, "recvAddress", NULL);
2841 dissect_h225_rasAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2843 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_rasAddress, ett_h225_TransportAddress, TransportAddress_choice, "rasAddress", NULL);
2847 dissect_h225_replyAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2849 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_replyAddress, ett_h225_TransportAddress, TransportAddress_choice, "replyAddress", NULL);
2853 dissect_h225_TransportAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2855 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_TransportAddress, ett_h225_TransportAddress, TransportAddress_choice, "TransportAddress", NULL);
2860 static per_sequence_t TransportChannelInfo_sequence[] = {
2861 { "sendAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2862 dissect_h225_sendAddress },
2863 { "recvAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2864 dissect_h225_recvAddress },
2865 { NULL, 0, 0, NULL }
2868 dissect_h225_rtpAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2870 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_rtpAddress, ett_h225_TransportChannelInfo, TransportChannelInfo_sequence);
2874 dissect_h225_rtcpAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2876 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_rtcpAddress, ett_h225_TransportChannelInfo, TransportChannelInfo_sequence);
2880 dissect_h225_h245(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2882 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_h245, ett_h225_TransportChannelInfo, TransportChannelInfo_sequence);
2886 dissect_h225_callSignaling(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2888 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_callSignaling, ett_h225_TransportChannelInfo, TransportChannelInfo_sequence);
2893 dissect_h225_carrierName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2895 offset=dissect_per_IA5String(tvb, offset, pinfo, tree, hf_h225_carrierName, 1, 128);
2902 dissect_h225_carrierIdentificationCode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2904 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_carrierIdentificationCode, 3, 4, NULL, NULL);
2908 static per_sequence_t CarrierInfo_sequence[] = {
2909 { "carrierIdentificationCode", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2910 dissect_h225_carrierIdentificationCode },
2911 { "carrierName", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
2912 dissect_h225_carrierName },
2913 { NULL, 0, 0, NULL }
2916 dissect_h225_CarrierInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2918 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CarrierInfo, ett_h225_CarrierInfo, CarrierInfo_sequence);
2923 dissect_h225_segment(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2925 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
2926 tree, hf_h225_segment, 0, 65535,
2932 static const value_string InfoRequestResponseStatus_vals[] = {
2934 { 1, "incomplete" },
2936 { 3, "invalidCall" },
2939 static per_choice_t InfoRequestResponseStatus_choice[] = {
2940 { 0, "complete", ASN1_EXTENSION_ROOT,
2941 dissect_h225_NULL },
2942 { 1, "incomplete", ASN1_EXTENSION_ROOT,
2943 dissect_h225_NULL },
2944 { 2, "segment", ASN1_EXTENSION_ROOT,
2945 dissect_h225_segment },
2946 { 3, "invalidCall", ASN1_EXTENSION_ROOT,
2947 dissect_h225_NULL },
2948 { 0, NULL, 0, NULL }
2951 dissect_h225_InfoRequestResponseStatus(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2953 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_InfoRequestResponseStatus, ett_h225_InfoRequestResponseStatus, InfoRequestResponseStatus_choice, "InfoRequestResponseStatus", NULL);
2961 dissect_h225_guid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2963 guint32 value_length;
2964 guint32 value_offset;
2966 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_guid, 16, 16, &(value_offset), &(value_length));
2968 /* save call guid */
2969 tvb_memcpy(tvb, h225_pi.guid, value_offset, value_length);
2974 static per_sequence_t CallIdentifier_sequence[] = {
2975 { "guid", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
2976 dissect_h225_guid },
2977 { NULL, 0, 0, NULL }
2980 dissect_h225_CallIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2982 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CallIdentifier, ett_h225_CallIdentifier, CallIdentifier_sequence);
2988 dissect_h225_globalCallId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2990 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_globalCallId, 16, 16, NULL, NULL);
2996 dissect_h225_algorithmOID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
2998 offset=dissect_per_object_identifier(tvb, offset, pinfo, tree, hf_h225_algorithmOID, NULL);
3004 dissect_h225_threadId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3006 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_threadId, 16, 16, NULL, NULL);
3011 static per_sequence_t CallLinkage_sequence[] = {
3012 { "globalCallId", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3013 dissect_h225_globalCallId },
3014 { "threadId", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3015 dissect_h225_threadId },
3016 { NULL, 0, 0, NULL }
3019 dissect_h225_CallLinkage(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3021 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CallLinkage, ett_h225_CallLinkage, CallLinkage_sequence);
3026 dissect_h225_authenticationCapability_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3027 return dissect_h235_AuthenticationMechanism(tvb, offset, pinfo, tree, hf_h225_authenticationCapability_item);
3030 dissect_h225_authenticationCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3032 offset = dissect_per_sequence_of(tvb, offset, pinfo, tree,
3033 hf_h225_authenticationCapability,
3034 ett_h225_SEQUNCE_OF_AuthenticationMechanism, dissect_h225_authenticationCapability_item);
3039 dissect_h225_GatekeeperIdentifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3041 offset=dissect_per_BMPString(tvb, offset, pinfo, tree, hf_h225_GatekeeperIdentifier, 1, 128);
3046 dissect_h225_cleartoken(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3048 offset = dissect_h235_ClearToken(tvb, offset, pinfo, tree, hf_h225_cleartoken);
3053 dissect_h225_tokens(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3055 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_tokens, ett_h225_tokens, dissect_h225_cleartoken);
3061 dissect_h225_timeStamp(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3063 return dissect_h235_TimeStamp(tvb, offset, pinfo, tree, hf_h225_timeStamp);
3067 dissect_h225_token(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3069 return dissect_h235_HASHEDxxx(tvb, offset, pinfo, tree, hf_h225_token);
3072 static per_sequence_t cryptoEPPwdHash_sequence[] = {
3073 { "alias", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
3074 dissect_h225_AliasAddress },
3075 { "timeStamp", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
3076 dissect_h225_timeStamp },
3077 { "token", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
3078 dissect_h225_token },
3079 { NULL, 0, 0, NULL }
3082 dissect_h225_cryptoEPPwdHash(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3084 offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_cryptoEPPwdHash, ett_h225_T_cryptoEPPwdHash, cryptoEPPwdHash_sequence);
3089 static per_sequence_t cryptoGKPwdHash_sequence[] = {
3090 { "gatekeeperId", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
3091 dissect_h225_GatekeeperIdentifier },
3092 { "timeStamp", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
3093 dissect_h225_timeStamp },
3094 { "token", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
3095 dissect_h225_token },
3096 { NULL, 0, 0, NULL }
3099 dissect_h225_cryptoGKPwdHash(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3101 offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_cryptoGKPwdHash, ett_h225_T_cryptoGKPwdHash, cryptoGKPwdHash_sequence);
3107 dissect_h225_cryptoEPPwdEncr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3109 return dissect_h235_ENCRYPTEDxxx(tvb, offset, pinfo, tree, hf_h225_cryptoEPPwdEncr);
3113 dissect_h225_cryptoGKPwdEncr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3115 return dissect_h235_ENCRYPTEDxxx(tvb, offset, pinfo, tree, hf_h225_cryptoGKPwdEncr);
3119 dissect_h225_cryptoEPCert(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3121 return dissect_h235_SIGNEDxxx(tvb, offset, pinfo, tree, hf_h225_cryptoEPCert);
3125 dissect_h225_cryptoGKCert(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3127 return dissect_h235_SIGNEDxxx(tvb, offset, pinfo, tree, hf_h225_cryptoGKCert);
3131 dissect_h225_cryptoFastStart(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3133 return dissect_h235_SIGNEDxxx(tvb, offset, pinfo, tree, hf_h225_cryptoFastStart);
3137 dissect_h225_nestedcryptoToken(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3139 return dissect_h235_CryptoToken(tvb, offset, pinfo, tree, hf_h225_nestedcryptoToken);
3142 static const value_string CryptoH323Token_vals[] = {
3143 { 0, "cryptoEPPwdHash" },
3144 { 1, "cryptoGKPwdHash" },
3145 { 2, "cryptoEPPwdEncr" },
3146 { 3, "cryptoGKPwdEncr" },
3147 { 4, "cryptoEPCert" },
3148 { 5, "cryptoGKCert" },
3149 { 6, "cryptoFastStart" },
3150 { 7, "nestedcryptoToken" },
3153 static per_choice_t CryptoH323Token_choice[] = {
3154 { 0, "cryptoEPPwdHash", ASN1_EXTENSION_ROOT,
3155 dissect_h225_cryptoEPPwdHash },
3156 { 1, "cryptoGKPwdHash", ASN1_EXTENSION_ROOT,
3157 dissect_h225_cryptoGKPwdHash },
3158 { 2, "cryptoEPPwdEncr", ASN1_EXTENSION_ROOT,
3159 dissect_h225_cryptoEPPwdEncr },
3160 { 3, "cryptoGKPwdEncr", ASN1_EXTENSION_ROOT,
3161 dissect_h225_cryptoGKPwdEncr },
3162 { 4, "cryptoEPCert", ASN1_EXTENSION_ROOT,
3163 dissect_h225_cryptoEPCert },
3164 { 5, "cryptoGKCert", ASN1_EXTENSION_ROOT,
3165 dissect_h225_cryptoGKCert },
3166 { 6, "cryptoFastStart", ASN1_EXTENSION_ROOT,
3167 dissect_h225_cryptoFastStart },
3168 { 7, "nestedcryptoToken", ASN1_EXTENSION_ROOT,
3169 dissect_h225_nestedcryptoToken },
3170 { 0, NULL, 0, NULL }
3173 dissect_h225_CryptoH323Token(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3175 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_CryptoH323Token, ett_h225_CryptoH323Token, CryptoH323Token_choice, "CryptoH323Token", NULL);
3180 dissect_h225_CryptoH323Token_sequence_of(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3182 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_CryptoH323Tokens, ett_h225_CryptoH323Tokens, dissect_h225_CryptoH323Token);
3188 dissect_h225_needToRegister(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3190 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_needToRegister, NULL, NULL);
3195 dissect_h225_priority(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3197 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
3198 tree, hf_h225_priority, 0, 127,
3203 static per_sequence_t AlternateGK_sequence[] = {
3204 { "rasAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3205 dissect_h225_rasAddress },
3206 { "gatekeeperIdentifier", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3207 dissect_h225_GatekeeperIdentifier },
3208 { "needToRegister", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3209 dissect_h225_needToRegister },
3210 { "priority", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3211 dissect_h225_priority },
3212 { NULL, 0, 0, NULL }
3215 dissect_h225_AlternateGK(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3217 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_AlternateGK, ett_h225_AlternateGK, AlternateGK_sequence);
3222 dissect_h225_alternateGatekeeper(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3224 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_alternateGatekeeper, ett_h225_alternateGatekeeper, dissect_h225_AlternateGK);
3229 dissect_h225_altGKisPermanent(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3231 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_altGKisPermanent, NULL, NULL);
3235 static per_sequence_t AltGKInfo_sequence[] = {
3236 { "alternateGatekeeper", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3237 dissect_h225_alternateGatekeeper },
3238 { "altGKisPermanent", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3239 dissect_h225_altGKisPermanent },
3240 { NULL, 0, 0, NULL }
3243 dissect_h225_AltGKInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3245 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_AltGKInfo, ett_h225_AltGKInfo, AltGKInfo_sequence);
3250 dissect_h225_annexE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3252 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_annexE, ett_h225_annexE, dissect_h225_TransportAddress);
3257 dissect_h225_sctp(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3259 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_sctp, ett_h225_sctp, dissect_h225_TransportAddress);
3262 static per_sequence_t AlternateTransportAddress_sequence[] = {
3263 { "annexE", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3264 dissect_h225_annexE },
3265 { "sctp", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
3266 dissect_h225_sctp },
3267 { NULL, 0, 0, NULL }
3270 dissect_h225_AlternateTransportAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3272 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_AlternateTransportAddress, ett_h225_AlternateTransportAddress, AlternateTransportAddress_sequence);
3277 dissect_h225_callProceeding_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3279 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_callProceeding_bool, NULL, NULL);
3283 dissect_h225_setup_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3285 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_setup_bool, NULL, NULL);
3289 dissect_h225_connect_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3291 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_connect_bool, NULL, NULL);
3295 dissect_h225_alerting_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3297 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_alerting_bool, NULL, NULL);
3301 dissect_h225_information_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3303 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_information_bool, NULL, NULL);
3307 dissect_h225_releaseComplete_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3309 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_releaseComplete_bool, NULL, NULL);
3313 dissect_h225_facility_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3315 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_facility_bool, NULL, NULL);
3319 dissect_h225_progress_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3321 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_progress_bool, NULL, NULL);
3325 dissect_h225_empty_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3327 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_empty_bool, NULL, NULL);
3331 dissect_h225_status_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3333 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_status_bool, NULL, NULL);
3337 dissect_h225_statusInquiry_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3339 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_statusInquiry_bool, NULL, NULL);
3343 dissect_h225_setupAcknowledge_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3345 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_setupAcknowledge_bool, NULL, NULL);
3349 dissect_h225_notify_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3351 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_notify_bool, NULL, NULL);
3356 static per_sequence_t UUIEsRequested_sequence[] = {
3357 { "setup", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3358 dissect_h225_setup_bool },
3359 { "callProceeding", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3360 dissect_h225_callProceeding_bool },
3361 { "connect", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3362 dissect_h225_connect_bool },
3363 { "alerting", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3364 dissect_h225_alerting_bool },
3365 { "information", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3366 dissect_h225_information_bool },
3367 { "releaseComplete", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3368 dissect_h225_releaseComplete_bool },
3369 { "facility", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3370 dissect_h225_facility_bool },
3371 { "progress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3372 dissect_h225_progress_bool },
3373 { "empty", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3374 dissect_h225_empty_bool },
3375 { "status", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3376 dissect_h225_status_bool },
3377 { "statusInquiry", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3378 dissect_h225_statusInquiry_bool },
3379 { "setupAcknowledge", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3380 dissect_h225_setupAcknowledge_bool },
3381 { "notify", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3382 dissect_h225_notify_bool },
3383 { NULL, 0, 0, NULL }
3386 dissect_h225_UUIEsRequested(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3388 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_UUIEsRequested, ett_h225_UUIEsRequested, UUIEsRequested_sequence);
3393 dissect_h225_conferenceCalling(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3395 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_conferenceCalling, NULL, NULL);
3402 dissect_h225_threePartyService(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3404 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_threePartyService, NULL, NULL);
3409 static per_sequence_t Q954Details_sequence[] = {
3410 { "conferenceCalling", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3411 dissect_h225_conferenceCalling },
3412 { "threePartyService", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3413 dissect_h225_threePartyService },
3414 { NULL, 0, 0, NULL }
3417 dissect_h225_Q954Info(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3419 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_Q954Details, ett_h225_Q954Details, Q954Details_sequence);
3424 dissect_h225_q932Full(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3426 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_q932Full, NULL, NULL);
3432 dissect_h225_q951Full(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3434 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_q951Full, NULL, NULL);
3439 dissect_h225_q952Full(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3441 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_q952Full, NULL, NULL);
3446 dissect_h225_q953Full(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3448 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_q953Full, NULL, NULL);
3453 dissect_h225_q955Full(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3455 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_q955Full, NULL, NULL);
3460 dissect_h225_q956Full(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3462 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_q956Full, NULL, NULL);
3468 dissect_h225_q957Full(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3470 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_q957Full, NULL, NULL);
3474 static per_sequence_t QseriesOptions_sequence[] = {
3475 { "q932Full", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3476 dissect_h225_q932Full },
3477 { "q951Full", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3478 dissect_h225_q951Full },
3479 { "q952Full", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3480 dissect_h225_q952Full },
3481 { "q953Full", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3482 dissect_h225_q953Full },
3483 { "q955Full", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3484 dissect_h225_q955Full },
3485 { "q956Full", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3486 dissect_h225_q956Full },
3487 { "q957Full", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3488 dissect_h225_q957Full },
3489 { "q954Info", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3490 dissect_h225_Q954Info },
3491 { NULL, 0, 0, NULL }
3494 dissect_h225_callServices(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3496 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_QseriesOptions, ett_h225_QseriesOptions, QseriesOptions_sequence);
3501 dissect_h225_cname(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3503 offset=dissect_per_PrintableString(tvb, offset, pinfo, tree, hf_h225_cname, -1, -1);
3509 dissect_h225_ssrc(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3511 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
3512 tree, hf_h225_ssrc, 1, 4294967295UL,
3519 dissect_h225_RTPsessionId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3521 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
3522 tree, hf_h225_RTPsessionId, 1, 255,
3528 dissect_h225_associatedSessionIds(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3530 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_associatedSessionIds, ett_h225_associatedSessionIds, dissect_h225_RTPsessionId);
3533 static per_sequence_t RTPSession_sequence[] = {
3534 { "rtpAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3535 dissect_h225_rtpAddress },
3536 { "rtcpAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3537 dissect_h225_rtcpAddress },
3538 { "cname", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3539 dissect_h225_cname },
3540 { "ssrc", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3541 dissect_h225_ssrc },
3542 { "sessionId", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3543 dissect_h225_RTPsessionId },
3544 { "associatedSessionIds", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3545 dissect_h225_associatedSessionIds },
3546 { "multicast", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
3547 dissect_h225_NULL },
3548 { "bandwidth", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
3549 dissect_h225_BandWidth },
3550 { NULL, 0, 0, NULL }
3553 dissect_h225_RTPSession(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3555 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_RTPSession, ett_h225_RTPSession, RTPSession_sequence);
3561 dissect_h225_ProtocolIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3563 offset=dissect_per_object_identifier(tvb, offset, pinfo, tree, hf_h225_ProtocolIdentifier, NULL);
3567 static per_sequence_t StatusUUIE_sequence[] = {
3568 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3569 dissect_h225_ProtocolIdentifier },
3570 { "callIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3571 dissect_h225_CallIdentifier },
3572 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3573 dissect_h225_tokens },
3574 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3575 dissect_h225_CryptoH323Token_sequence_of },
3576 { NULL, 0, 0, NULL }
3579 dissect_h225_StatusUUIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3581 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_StatusUUIE, ett_h225_StatusUUIE, StatusUUIE_sequence);
3584 static per_sequence_t StatusInquiryUUIE_sequence[] = {
3585 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3586 dissect_h225_ProtocolIdentifier },
3587 { "callIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3588 dissect_h225_CallIdentifier },
3589 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3590 dissect_h225_tokens },
3591 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3592 dissect_h225_CryptoH323Token_sequence_of },
3593 { NULL, 0, 0, NULL }
3596 dissect_h225_StatusInquiryUUIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3598 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_StatusInquiryUUIE, ett_h225_StatusInquiryUUIE, StatusInquiryUUIE_sequence);
3601 static per_sequence_t SetupAcknowledgeUUIE_sequence[] = {
3602 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3603 dissect_h225_ProtocolIdentifier },
3604 { "callIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3605 dissect_h225_CallIdentifier },
3606 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3607 dissect_h225_tokens },
3608 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3609 dissect_h225_CryptoH323Token_sequence_of },
3610 { NULL, 0, 0, NULL }
3613 dissect_h225_SetupAcknowledgeUUIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3615 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_SetupAcknowledgeUUIE, ett_h225_SetupAcknowledgeUUIE, SetupAcknowledgeUUIE_sequence);
3618 static per_sequence_t NotifyUUIE_sequence[] = {
3619 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3620 dissect_h225_ProtocolIdentifier },
3621 { "callIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3622 dissect_h225_CallIdentifier },
3623 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3624 dissect_h225_tokens },
3625 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3626 dissect_h225_CryptoH323Token_sequence_of },
3627 { NULL, 0, 0, NULL }
3630 dissect_h225_NotifyUUIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3632 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_NotifyUUIE, ett_h225_NotifyUUIE, NotifyUUIE_sequence);
3637 dissect_h225_imsi(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3639 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_imsi, 3, 16, "#*0123456789ABC", 15);
3646 dissect_h225_tmsi(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3648 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_tmsi, 1, 4, NULL, NULL);
3654 dissect_h225_msisdn(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3656 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_msisdn, 3, 16, "#*0123456789ABC", 15);
3663 dissect_h225_imei(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3665 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_imei, 15, 16, "#*0123456789ABC", 15);
3671 dissect_h225_hplmn(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3673 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_hplmn, 1, 4, "#*0123456789ABC", 15);
3679 dissect_h225_vplmn(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3681 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_vplmn, 1, 4, "#*0123456789ABC", 15);
3686 static per_sequence_t GSMUIM_sequence[] = {
3687 { "imsi", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3688 dissect_h225_imsi },
3689 { "tmsi", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3690 dissect_h225_tmsi },
3691 { "msisdn", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3692 dissect_h225_msisdn },
3693 { "imei", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3694 dissect_h225_imei },
3695 { "hplmn", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3696 dissect_h225_hplmn },
3697 { "vplmn", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3698 dissect_h225_vplmn },
3699 { NULL, 0, 0, NULL }
3702 dissect_h225_GSMUIM(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3704 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_GSMUIM, ett_h225_GSMUIM, GSMUIM_sequence);
3709 dissect_h225_sid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3711 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_sid, 1, 4, "#*0123456789ABC", 15);
3717 dissect_h225_mid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3719 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_mid, 1, 4, "#*0123456789ABC", 15);
3723 static const value_string systemid_vals[] = {
3728 static per_choice_t systemid_choice[] = {
3729 { 0, "sid", ASN1_EXTENSION_ROOT,
3731 { 1, "mid", ASN1_EXTENSION_ROOT,
3733 { 0, NULL, 0, NULL }
3736 dissect_h225_systemid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3738 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_systemid, ett_h225_systemid, systemid_choice, "systemid", NULL);
3745 dissect_h225_min(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3747 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_mid, 3, 16, "#*0123456789ABC", 15);
3753 dissect_h225_mdn(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3755 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_mdn, 3, 16, "#*0123456789ABC", 15);
3760 dissect_h225_esn(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3762 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_esn, 16, 16, "#*0123456789ABC", 15);
3768 dissect_h225_mscid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3770 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_mscid, 3, 16, "#*0123456789ABC", 15);
3777 dissect_h225_systemMyTypeCode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3779 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_systemMyTypeCode, 1, 1, NULL, NULL);
3784 dissect_h225_systemAccessType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3786 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_systemAccessType, 1, 1, NULL, NULL);
3791 dissect_h225_qualificationInformationCode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3793 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_qualificationInformationCode, 1, 1, NULL, NULL);
3798 dissect_h225_sesn(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3800 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_sesn, 16, 16, "#*0123456789ABC", 15);
3806 dissect_h225_soc(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3808 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_soc, 3, 16, "#*0123456789ABC", 15);
3813 static per_sequence_t ANSI41UIM_sequence[] = {
3814 { "imsi", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3815 dissect_h225_imsi },
3816 { "min", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3818 { "mdn", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3820 { "msisdn", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3821 dissect_h225_msisdn },
3822 { "esn", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3824 { "mscid", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3825 dissect_h225_mscid },
3826 { "systemid", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3827 dissect_h225_systemid },
3828 { "systemMyTypeCode", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3829 dissect_h225_systemMyTypeCode },
3830 { "systemAccessType", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3831 dissect_h225_systemAccessType },
3832 { "qualificationInformationCode", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3833 dissect_h225_qualificationInformationCode },
3834 { "sesn", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3835 dissect_h225_sesn },
3836 { "soc", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3838 { NULL, 0, 0, NULL }
3841 dissect_h225_ANSI41UIM(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3843 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ANSI41UIM, ett_h225_ANSI41UIM, ANSI41UIM_sequence);
3848 static const value_string MobileUIM_vals[] = {
3853 static per_choice_t MobileUIM_choice[] = {
3854 { 0, "ansi41uim", ASN1_EXTENSION_ROOT,
3855 dissect_h225_ANSI41UIM },
3856 { 1, "gsmuim", ASN1_EXTENSION_ROOT,
3857 dissect_h225_GSMUIM },
3858 { 0, NULL, 0, NULL }
3861 dissect_h225_MobileUIM(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3863 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_MobileUIM, ett_h225_MobileUIM, MobileUIM_choice, "MobileUIM", NULL);
3869 dissect_h225_dataPartyNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3871 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_dataPartyNumber, 1, 128, "#*,0123456789", 13);
3877 dissect_h225_telexPartyNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3879 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_telexPartyNumber, 1, 128, "#*,0123456789", 13);
3886 dissect_h225_nationalStandardPartyNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3888 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_nationalStandardPartyNumber, 1, 128, "#*,0123456789", 13);
3893 dissect_h225_publicNumberDigits(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3895 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_publicNumberDigits, 1, 128, "#*,0123456789", 13);
3901 dissect_h225_privateNumberDigits(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3903 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_privateNumberDigits, 1, 128, "#*,0123456789", 13);
3908 static per_sequence_t e164Number_sequence[] = {
3909 { "publicTypeOfNumber", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
3910 dissect_h225_PublicTypeOfNumber },
3911 { "publicNumberDigits", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
3912 dissect_h225_publicNumberDigits },
3913 { NULL, 0, 0, NULL }
3916 dissect_h225_e164Number(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3918 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_e164Number, ett_h225_e164Number, e164Number_sequence);
3921 static per_sequence_t privateNumber_sequence[] = {
3922 { "privateTypeOfNumber", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
3923 dissect_h225_PrivateTypeOfNumber },
3924 { "privateNumberDigits", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
3925 dissect_h225_privateNumberDigits },
3926 { NULL, 0, 0, NULL }
3929 dissect_h225_privateNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3931 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_privateNumber, ett_h225_privateNumber, privateNumber_sequence);
3935 static const value_string PartyNumber_vals[] = {
3936 { 0, "e164Number" },
3937 { 1, "dataPartyNumber" },
3938 { 2, "telexPartyNumber" },
3939 { 3, "privateNumber" },
3940 { 4, "nationalStandardPartyNumber" },
3943 static per_choice_t PartyNumber_choice[] = {
3944 { 0, "e164Number", ASN1_EXTENSION_ROOT,
3945 dissect_h225_e164Number },
3946 { 1, "dataPartyNumber", ASN1_EXTENSION_ROOT,
3947 dissect_h225_dataPartyNumber },
3948 { 2, "telexPartyNumber", ASN1_EXTENSION_ROOT,
3949 dissect_h225_telexPartyNumber },
3950 { 3, "privateNumber", ASN1_EXTENSION_ROOT,
3951 dissect_h225_privateNumber },
3952 { 4, "nationalStandardPartyNumber", ASN1_EXTENSION_ROOT,
3953 dissect_h225_nationalStandardPartyNumber },
3954 { 0, NULL, 0, NULL }
3957 dissect_h225_PartyNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3959 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_PartyNumber, ett_h225_PartyNumber, PartyNumber_choice, "PartyNumber", NULL);
3963 dissect_h225_startOfRange(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3965 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_startOfRange, ett_h225_PartyNumber, PartyNumber_choice, "startOfRange", NULL);
3969 dissect_h225_endOfRange(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3971 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_endOfRange, ett_h225_PartyNumber, PartyNumber_choice, "endOfRange", NULL);
3976 dissect_h225_protocolType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3978 offset=dissect_per_IA5String(tvb, offset, pinfo, tree, hf_h225_protocolType, 1, 64);
3983 dissect_h225_protocolVariant(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3985 offset=dissect_per_IA5String(tvb, offset, pinfo, tree, hf_h225_protocolVariant, 1, 64);
3988 static per_sequence_t TunnelledProtocolAlternateIdentifier_sequence[] = {
3989 { "protocolType", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
3990 dissect_h225_protocolType },
3991 { "protocolVariant", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
3992 dissect_h225_protocolVariant },
3993 { NULL, 0, 0, NULL }
3996 dissect_h225_TunnelledProtocolAlternateIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
3998 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_TunnelledProtocolAlternateIdentifier, ett_h225_TunnelledProtocolAlternateIdentifier, TunnelledProtocolAlternateIdentifier_sequence);
4003 dissect_h225_dialedDigits(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4005 offset=dissect_per_restricted_character_string(tvb, offset, pinfo, tree, hf_h225_privateNumberDigits, 1, 128, "#,*0123456789", 13);
4011 dissect_h225_h323Id(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4013 offset=dissect_per_BMPString(tvb, offset, pinfo, tree, hf_h225_h323ID, 1, 256);
4018 dissect_h225_urlId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4020 offset=dissect_per_IA5String(tvb, offset, pinfo, tree, hf_h225_urlId, 1, 512);
4026 dissect_h225_emailId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4028 offset=dissect_per_IA5String(tvb, offset, pinfo, tree, hf_h225_emailId, 1, 512);
4033 static const value_string AliasAddress_vals[] = {
4034 { 0, "dialedDigits" },
4037 { 3, "transportID" },
4039 { 5, "partyNumber" },
4043 static per_choice_t AliasAddress_choice[] = {
4044 { 0, "dialedDigits", ASN1_EXTENSION_ROOT,
4045 dissect_h225_dialedDigits },
4046 { 1, "h323ID", ASN1_EXTENSION_ROOT,
4047 dissect_h225_h323Id },
4048 { 2, "urlID", ASN1_NOT_EXTENSION_ROOT,
4049 dissect_h225_urlId },
4050 { 3, "transportID", ASN1_NOT_EXTENSION_ROOT,
4051 dissect_h225_transportID },
4052 { 4, "emailID", ASN1_NOT_EXTENSION_ROOT,
4053 dissect_h225_emailId },
4054 { 5, "partyNumber", ASN1_NOT_EXTENSION_ROOT,
4055 dissect_h225_PartyNumber },
4056 { 6, "mobileUIM", ASN1_NOT_EXTENSION_ROOT,
4057 dissect_h225_MobileUIM },
4058 { 0, NULL, 0, NULL }
4061 dissect_h225_AliasAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4063 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_AliasAddress, ett_h225_AliasAddress, AliasAddress_choice, "AliasAddress", NULL);
4067 dissect_h225_featureServerAlias(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4069 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_featureServerAlias, ett_h225_AliasAddress, AliasAddress_choice, "featureServerAlias", NULL);
4073 dissect_h225_RemoteExtensionAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4075 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_RemoteExtensionAddress, ett_h225_AliasAddress, AliasAddress_choice, "RemoteExtensionAddress", NULL);
4079 dissect_h225_conferenceAlias(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4081 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_conferenceAlias, ett_h225_AliasAddress, AliasAddress_choice, "conferenceAlias", NULL);
4085 dissect_h225_wildcard(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4087 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_wildcard, ett_h225_AliasAddress, AliasAddress_choice, "wildcard", NULL);
4091 dissect_h225_prefix(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4093 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_prefix, ett_h225_AliasAddress, AliasAddress_choice, "prefix", NULL);
4097 static per_sequence_t SupportedPrefix_sequence[] = {
4098 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4099 dissect_h225_nonStandardData },
4100 { "prefix", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4101 dissect_h225_prefix },
4102 { NULL, 0, 0, NULL }
4105 dissect_h225_SupportedPrefix(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4107 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_SupportedPrefix, ett_h225_SupportedPrefix, SupportedPrefix_sequence);
4112 dissect_h225_SupportedPrefixes(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4114 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_SupportedPrefixes, ett_h225_SupportedPrefixes, dissect_h225_SupportedPrefix);
4119 static per_sequence_t H310Caps_sequence[] = {
4120 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4121 dissect_h225_nonStandardData },
4122 { "dataRatesSupported", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
4123 dissect_h225_dataRatesSupported },
4124 { "supportedPrefixes", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4125 dissect_h225_SupportedPrefixes },
4126 { NULL, 0, 0, NULL }
4129 dissect_h225_H310Caps(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4131 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_H310Caps, ett_h225_H310Caps, H310Caps_sequence);
4136 static per_sequence_t H320Caps_sequence[] = {
4137 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4138 dissect_h225_nonStandardData },
4139 { "dataRatesSupported", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
4140 dissect_h225_dataRatesSupported },
4141 { "supportedPrefixes", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4142 dissect_h225_SupportedPrefixes },
4143 { NULL, 0, 0, NULL }
4146 dissect_h225_H320Caps(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4148 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_H320Caps, ett_h225_H320Caps, H320Caps_sequence);
4153 static per_sequence_t H321Caps_sequence[] = {
4154 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4155 dissect_h225_nonStandardData },
4156 { "dataRatesSupported", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
4157 dissect_h225_dataRatesSupported },
4158 { "supportedPrefixes", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4159 dissect_h225_SupportedPrefixes },
4160 { NULL, 0, 0, NULL }
4163 dissect_h225_H321Caps(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4165 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_H321Caps, ett_h225_H321Caps, H321Caps_sequence);
4170 static per_sequence_t H322Caps_sequence[] = {
4171 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4172 dissect_h225_nonStandardData },
4173 { "dataRatesSupported", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
4174 dissect_h225_dataRatesSupported },
4175 { "supportedPrefixes", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4176 dissect_h225_SupportedPrefixes },
4177 { NULL, 0, 0, NULL }
4180 dissect_h225_H322Caps(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4182 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_H322Caps, ett_h225_H322Caps, H322Caps_sequence);
4187 static per_sequence_t H323Caps_sequence[] = {
4188 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4189 dissect_h225_nonStandardData },
4190 { "dataRatesSupported", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
4191 dissect_h225_dataRatesSupported },
4192 { "supportedPrefixes", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4193 dissect_h225_SupportedPrefixes },
4194 { NULL, 0, 0, NULL }
4197 dissect_h225_H323Caps(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4199 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_H323Caps, ett_h225_H323Caps, H323Caps_sequence);
4204 static per_sequence_t H324Caps_sequence[] = {
4205 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4206 dissect_h225_nonStandardData },
4207 { "dataRatesSupported", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
4208 dissect_h225_dataRatesSupported },
4209 { "supportedPrefixes", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4210 dissect_h225_SupportedPrefixes },
4211 { NULL, 0, 0, NULL }
4214 dissect_h225_H324Caps(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4216 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_H324Caps, ett_h225_H324Caps, H324Caps_sequence);
4221 static per_sequence_t VoiceCaps_sequence[] = {
4222 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4223 dissect_h225_nonStandardData },
4224 { "dataRatesSupported", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
4225 dissect_h225_dataRatesSupported },
4226 { "supportedPrefixes", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4227 dissect_h225_SupportedPrefixes },
4228 { NULL, 0, 0, NULL }
4231 dissect_h225_VoiceCaps(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4233 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_VoiceCaps, ett_h225_VoiceCaps, VoiceCaps_sequence);
4238 static per_sequence_t T120OnlyCaps_sequence[] = {
4239 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4240 dissect_h225_nonStandardData },
4241 { "dataRatesSupported", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
4242 dissect_h225_dataRatesSupported },
4243 { "supportedPrefixes", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4244 dissect_h225_SupportedPrefixes },
4245 { NULL, 0, 0, NULL }
4248 dissect_h225_T120OnlyCaps(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4250 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_T120OnlyCaps, ett_h225_T120OnlyCaps, T120OnlyCaps_sequence);
4254 static per_sequence_t NonStandardProtocol_sequence[] = {
4255 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4256 dissect_h225_nonStandardData },
4257 { "dataRatesSupported", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4258 dissect_h225_dataRatesSupported },
4259 { "supportedPrefixes", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4260 dissect_h225_SupportedPrefixes },
4261 { NULL, 0, 0, NULL }
4264 dissect_h225_NonStandardProtocol(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4266 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_NonStandardProtocol, ett_h225_NonStandardProtocol, NonStandardProtocol_sequence);
4271 static per_sequence_t SIPCaps_sequence[] = {
4272 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4273 dissect_h225_nonStandardData },
4274 { "dataRatesSupported", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4275 dissect_h225_dataRatesSupported },
4276 { "supportedPrefixes", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4277 dissect_h225_SupportedPrefixes },
4278 { NULL, 0, 0, NULL }
4281 dissect_h225_SIPCaps(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4283 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_SIPCaps, ett_h225_SIPCaps, SIPCaps_sequence);
4287 static per_sequence_t AddressPattern_range_sequence[] = {
4288 { "startOfRange", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
4289 dissect_h225_startOfRange },
4290 { "endOfRange", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
4291 dissect_h225_endOfRange },
4292 { NULL, 0, 0, NULL }
4295 dissect_h225_AddressPattern_range(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4297 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_AddressPattern_range, ett_h225_AddressPattern_range, AddressPattern_range_sequence);
4302 static const value_string AddressPattern_vals[] = {
4307 static per_choice_t AddressPattern_choice[] = {
4308 { 0, "wildcard", ASN1_EXTENSION_ROOT,
4309 dissect_h225_wildcard },
4310 { 0, "range", ASN1_EXTENSION_ROOT,
4311 dissect_h225_AddressPattern_range },
4312 { 0, NULL, 0, NULL }
4315 dissect_h225_AddressPattern(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4317 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_AddressPattern, ett_h225_AddressPattern, AddressPattern_choice, "AddressPattern", NULL);
4320 static per_sequence_t ConferenceList_sequence[] = {
4321 { "conferenceID", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4322 dissect_h225_conferenceID },
4323 { "conferenceAlias", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4324 dissect_h225_conferenceAlias },
4325 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4326 dissect_h225_nonStandardData },
4327 { NULL, 0, 0, NULL }
4330 dissect_h225_ConferenceList(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4332 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ConferenceList, ett_h225_ConferenceList, ConferenceList_sequence);
4337 dissect_h225_conferences(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4339 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_conferences, ett_h225_conferences, dissect_h225_ConferenceList);
4342 static per_sequence_t T38FaxAnnexbOnlyCaps_sequence[] = {
4343 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4344 dissect_h225_nonStandardData },
4345 { "dataRatesSupported", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4346 dissect_h225_dataRatesSupported },
4347 { "supportedPrefixes", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4348 dissect_h225_SupportedPrefixes },
4349 { "t38FaxProtocol", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4350 dissect_h245_DataProtocolCapability },
4351 { "t38FaxProfile", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4352 dissect_h245_T38FaxProfile },
4353 { NULL, 0, 0, NULL }
4356 dissect_h225_T38FaxAnnexbOnlyCaps(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4358 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_T38FaxAnnexbOnlyCaps, ett_h225_T38FaxAnnexbOnlyCaps, T38FaxAnnexbOnlyCaps_sequence);
4363 static const value_string SupportedProtocols_vals[] = {
4364 { 0, "nonStandardData" },
4373 { 9, "nonStandardProtocol" },
4374 { 10, "t38FaxAnnexbOnly" },
4378 static per_choice_t SupportedProtocols_choice[] = {
4379 { 0, "nonStandardData", ASN1_EXTENSION_ROOT,
4380 dissect_h225_nonStandardData },
4381 { 1, "h310", ASN1_EXTENSION_ROOT,
4382 dissect_h225_H310Caps },
4383 { 2, "h320", ASN1_EXTENSION_ROOT,
4384 dissect_h225_H320Caps },
4385 { 3, "h321", ASN1_EXTENSION_ROOT,
4386 dissect_h225_H321Caps },
4387 { 4, "h322", ASN1_EXTENSION_ROOT,
4388 dissect_h225_H322Caps },
4389 { 5, "h323", ASN1_EXTENSION_ROOT,
4390 dissect_h225_H323Caps },
4391 { 6, "h324", ASN1_EXTENSION_ROOT,
4392 dissect_h225_H324Caps },
4393 { 7, "voice", ASN1_EXTENSION_ROOT,
4394 dissect_h225_VoiceCaps },
4395 { 8, "t120-only", ASN1_EXTENSION_ROOT,
4396 dissect_h225_T120OnlyCaps },
4397 { 9, "nonStandardProtocol", ASN1_NOT_EXTENSION_ROOT,
4398 dissect_h225_NonStandardProtocol },
4399 { 10, "t38FaxAnnexbOnly", ASN1_NOT_EXTENSION_ROOT,
4400 dissect_h225_T38FaxAnnexbOnlyCaps },
4401 { 11, "sip", ASN1_NOT_EXTENSION_ROOT,
4402 dissect_h225_SIPCaps },
4403 { 0, NULL, 0, NULL }
4406 dissect_h225_SupportedProtocols(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4408 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_SupportedProtocols, ett_h225_SupportedProtocols, SupportedProtocols_choice, "SupportedProtocols", NULL);
4413 dissect_h225_protocol(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4415 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_protocol, ett_h225_protocol, dissect_h225_SupportedProtocols);
4421 static per_sequence_t GatewayInfo_sequence[] = {
4422 { "protocol", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4423 dissect_h225_protocol },
4424 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4425 dissect_h225_nonStandardData },
4426 { NULL, 0, 0, NULL }
4429 dissect_h225_gateway(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4431 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_GatewayInfo, ett_h225_GatewayInfo, GatewayInfo_sequence);
4434 static per_sequence_t McuInfo_sequence[] = {
4435 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4436 dissect_h225_nonStandardData },
4437 { "protocol", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
4438 dissect_h225_protocol },
4439 { NULL, 0, 0, NULL }
4442 dissect_h225_mcu(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4444 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_McuInfo, ett_h225_McuInfo, McuInfo_sequence);
4450 dissect_h225_tunnelledProtocolObjectID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4452 offset=dissect_per_object_identifier(tvb, offset, pinfo, tree, hf_h225_tunnelledProtocolObjectID, tpID);
4457 static const value_string TunnelledProtocol_id_vals[] = {
4458 { 0, "tunnelledProtocolObjectID" },
4459 { 1, "tunnelledProtocolAlternateID" },
4462 static per_choice_t TunnelledProtocol_id_choice[] = {
4463 { 0, "tunnelledProtocolObjectID", ASN1_EXTENSION_ROOT,
4464 dissect_h225_tunnelledProtocolObjectID },
4465 { 1, "tunnelledProtocolAlternateID", ASN1_EXTENSION_ROOT,
4466 dissect_h225_TunnelledProtocolAlternateIdentifier },
4467 { 0, NULL, 0, NULL }
4470 dissect_h225_TunnelledProtocol_id(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4472 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_TunnelledProtocol_id, ett_h225_TunnelledProtocol_id, TunnelledProtocol_id_choice, "id", NULL);
4477 dissect_h225_TunnelledProtocol_subIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4479 offset=dissect_per_IA5String(tvb, offset, pinfo, tree, hf_h225_TunnelledProtocol_subIdentifier, 1, 64);
4482 static per_sequence_t TunnelledProtocol_sequence[] = {
4483 { "id", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4484 dissect_h225_TunnelledProtocol_id },
4485 { "subIdentifier", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4486 dissect_h225_TunnelledProtocol_subIdentifier },
4487 { NULL, 0, 0, NULL }
4490 dissect_h225_TunnelledProtocol(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4493 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_TunnelledProtocol, ett_h225_TunnelledProtocol, TunnelledProtocol_sequence);
4494 tp_handle = dissector_get_string_handle(tp_dissector_table, tpID);
4498 dissect_h225_TunnelledProtocols(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4500 offset = dissect_per_sequence_of(tvb, offset, pinfo, tree,
4501 hf_h225_TunnelledProtocols,
4502 ett_h225_TunnelledProtocols, dissect_h225_TunnelledProtocol);
4507 dissect_h225_desiredTunnelledProtocol(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4510 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_desiredTunnelledProtocol, ett_h225_TunnelledProtocol, TunnelledProtocol_sequence);
4516 dissect_h225_CicInfo_cic_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4518 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_CicInfo_cic_item, 2, 4, NULL, NULL);
4523 dissect_h225_CicInfo_pointCode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4525 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_CicInfo_pointCode, 2, 5, NULL, NULL);
4530 dissect_h225_CicInfo_cic(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4532 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_CicInfo_cic, ett_h225_CicInfo_cic, dissect_h225_CicInfo_cic_item);
4536 static per_sequence_t CicInfo_sequence[] = {
4537 { "cic", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4538 dissect_h225_CicInfo_cic },
4539 { "pointCode", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4540 dissect_h225_CicInfo_pointCode },
4541 { NULL, 0, 0, NULL }
4544 dissect_h225_CicInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4546 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CicInfo, ett_h225_CicInfo, CicInfo_sequence);
4551 dissect_h225_GroupID_member_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4553 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
4554 tree, hf_h225_GroupID_member_item, 0, 65535,
4560 dissect_h225_GroupID_member(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4562 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_GroupID_member, ett_h225_GroupID_member, dissect_h225_GroupID_member_item);
4567 dissect_h225_GroupID_group(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4569 offset=dissect_per_IA5String(tvb, offset, pinfo, tree, hf_h225_GroupID_group, 1, 128);
4573 static per_sequence_t GroupID_sequence[] = {
4574 { "member", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4575 dissect_h225_GroupID_member },
4576 { "group", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4577 dissect_h225_GroupID_group },
4578 { NULL, 0, 0, NULL }
4581 dissect_h225_GroupID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4583 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_GroupID, ett_h225_GroupID, GroupID_sequence);
4587 static per_sequence_t CircuitIdentifier_sequence[] = {
4588 { "cic", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4589 dissect_h225_CicInfo },
4590 { "group", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4591 dissect_h225_GroupID },
4592 { "carrier", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
4593 dissect_h225_CarrierInfo },
4594 { NULL, 0, 0, NULL }
4597 dissect_h225_sourceCircuitID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4599 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_sourceCircuitID, ett_h225_CircuitIdentifier, CircuitIdentifier_sequence);
4603 dissect_h225_destinationCircuitID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4605 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_destinationCircuitID, ett_h225_CircuitIdentifier, CircuitIdentifier_sequence);
4610 dissect_h225_Generic_standard(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4612 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
4613 tree, hf_h225_Generic_standard, 0, 16383,
4620 dissect_h225_Generic_oid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4622 offset=dissect_per_object_identifier(tvb, offset, pinfo, tree, hf_h225_Generic_oid, NULL);
4628 dissect_h225_Generic_nonStandard(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4630 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_Generic_nonStandard, 16, 16, NULL, NULL);
4635 static const value_string GenericIdentifier_vals[] = {
4638 { 2, "nonStandard" },
4641 static per_choice_t GenericIdentifier_choice[] = {
4642 { 0, "standard", ASN1_EXTENSION_ROOT,
4643 dissect_h225_Generic_standard },
4644 { 1, "oid", ASN1_EXTENSION_ROOT,
4645 dissect_h225_Generic_oid },
4646 { 2, "nonStandard", ASN1_EXTENSION_ROOT,
4647 dissect_h225_Generic_nonStandard },
4648 { 0, NULL, 0, NULL }
4651 dissect_h225_GenericIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4653 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_GenericIdentifier, ett_h225_GenericIdentifier, GenericIdentifier_choice, "GenericIdentifier", NULL);
4657 static int dissect_h225_Content(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree);
4659 static per_sequence_t EnumeratedParameter_sequence[] = {
4660 { "id", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4661 dissect_h225_GenericIdentifier },
4662 { "content", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4663 dissect_h225_Content },
4664 { NULL, 0, 0, NULL }
4667 dissect_h225_EnumeratedParameter(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4669 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_EnumeratedParameter, ett_h225_EnumeratedParameter, EnumeratedParameter_sequence);
4675 dissect_h225_parameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4677 offset=dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_h225_parameters, ett_h225_parameters, dissect_h225_EnumeratedParameter, 1, 512);
4681 static per_sequence_t GenericData_sequence[] = {
4682 { "id", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4683 dissect_h225_GenericIdentifier },
4684 { "parameters", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4685 dissect_h225_parameters },
4686 { NULL, 0, 0, NULL }
4689 dissect_h225_GenericData(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4691 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_GenericData, ett_h225_GenericData, GenericData_sequence);
4695 dissect_h225_genericData(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4697 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_genericData, ett_h225_genericData, dissect_h225_GenericData);
4701 dissect_h225_FeatureDescriptor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4703 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_FeatureDescriptor, ett_h225_GenericData, GenericData_sequence);
4708 dissect_h225_Content_raw(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4710 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_Content_raw, -1, -1, NULL, NULL);
4716 dissect_h225_Content_text(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4718 offset=dissect_per_IA5String(tvb, offset, pinfo, tree, hf_h225_Content_text, -1, -1);
4726 dissect_h225_Content_unicode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4728 offset=dissect_per_BMPString(tvb, offset, pinfo, tree, hf_h225_unicode, -1, -1);
4735 dissect_h225_Content_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4737 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_Content_bool, NULL, NULL);
4744 dissect_h225_Content_number8(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4746 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
4747 tree, hf_h225_Content_number8, 0, 255,
4753 dissect_h225_number16(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4755 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
4756 tree, hf_h225_number16, 0, 65535,
4762 dissect_h225_Content_number32(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4764 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
4765 tree, hf_h225_Content_number32, 0, 4294967295UL,
4771 dissect_h225_Content_compound(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4773 offset=dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_h225_Content_compound, ett_h225_Content_compound, dissect_h225_EnumeratedParameter, 1, 512);
4778 dissect_h225_Content_nested(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4780 offset=dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_h225_Content_nested, ett_h225_Content_nested, dissect_h225_GenericData, 1, 16);
4788 static const value_string Content_vals[] = {
4803 static per_choice_t Content_choice[] = {
4804 { 0, "raw", ASN1_EXTENSION_ROOT,
4805 dissect_h225_Content_raw },
4806 { 1, "text", ASN1_EXTENSION_ROOT,
4807 dissect_h225_Content_text },
4808 { 2, "unicode", ASN1_EXTENSION_ROOT,
4809 dissect_h225_Content_unicode },
4810 { 3, "bool", ASN1_EXTENSION_ROOT,
4811 dissect_h225_Content_bool },
4812 { 4, "number8", ASN1_EXTENSION_ROOT,
4813 dissect_h225_Content_number8 },
4814 { 5, "number16", ASN1_EXTENSION_ROOT,
4815 dissect_h225_number16 },
4816 { 6, "number32", ASN1_EXTENSION_ROOT,
4817 dissect_h225_Content_number32 },
4818 { 7, "id", ASN1_EXTENSION_ROOT,
4819 dissect_h225_GenericIdentifier },
4820 { 8, "alias", ASN1_EXTENSION_ROOT,
4821 dissect_h225_AliasAddress },
4822 { 9, "transport", ASN1_EXTENSION_ROOT,
4823 dissect_h225_TransportAddress },
4824 { 10, "compound", ASN1_EXTENSION_ROOT,
4825 dissect_h225_Content_compound },
4826 { 11, "nested", ASN1_EXTENSION_ROOT,
4827 dissect_h225_Content_nested },
4828 { 0, NULL, 0, NULL }
4831 dissect_h225_Content(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4833 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_Content, ett_h225_Content, Content_choice, "Content", NULL);
4839 dissect_h225_replacementFeatureSet(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4841 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_replacementFeatureSet, NULL, NULL);
4846 dissect_h225_neededFeatures(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4848 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_neededFeatures, ett_h225_neededFeatures, dissect_h225_FeatureDescriptor);
4853 dissect_h225_desiredFeatures(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4855 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_desiredFeatures, ett_h225_desiredFeatures, dissect_h225_FeatureDescriptor);
4860 dissect_h225_supportedFeatures(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4862 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_supportedFeatures, ett_h225_supportedFeatures, dissect_h225_FeatureDescriptor);
4866 static per_sequence_t FeatureSet_sequence[] = {
4867 { "replacementFeatureSet", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4868 dissect_h225_replacementFeatureSet },
4869 { "neededFeatures", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4870 dissect_h225_neededFeatures },
4871 { "desiredFeatures", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4872 dissect_h225_desiredFeatures },
4873 { "supportedFeatures", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4874 dissect_h225_supportedFeatures },
4875 { NULL, 0, 0, NULL }
4878 dissect_h225_FeatureSet(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4880 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_FeatureSet, ett_h225_FeatureSet, FeatureSet_sequence);
4885 dissect_h225_CallsAvailable_calls(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4887 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
4888 tree, hf_h225_CallsAvailable_calls, 0, 4294967295UL,
4895 dissect_h225_CallsAvailable_group(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4897 offset=dissect_per_IA5String(tvb, offset, pinfo, tree, hf_h225_CallsAvailable_group, 1, 128);
4901 static per_sequence_t CallsAvailable_sequence[] = {
4902 { "calls", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
4903 dissect_h225_CallsAvailable_calls },
4904 { "group", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
4905 dissect_h225_CallsAvailable_group },
4906 { "carrier", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
4907 dissect_h225_CarrierInfo },
4908 { NULL, 0, 0, NULL }
4911 dissect_h225_CallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4913 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CallsAvailable, ett_h225_CallsAvailable, CallsAvailable_sequence);
4918 dissect_h225_voiceGwCallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4920 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_voiceGwCallsAvailable, ett_h225_voiceGwCallsAvailable, dissect_h225_CallsAvailable);
4925 dissect_h225_h310GwCallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4927 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_h310GwCallsAvailable, ett_h225_h310GwCallsAvailable, dissect_h225_CallsAvailable);
4932 dissect_h225_h320GwCallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4934 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_h320GwCallsAvailable, ett_h225_h320GwCallsAvailable, dissect_h225_CallsAvailable);
4939 dissect_h225_h321GwCallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4941 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_h321GwCallsAvailable, ett_h225_h321GwCallsAvailable, dissect_h225_CallsAvailable);
4946 dissect_h225_h322GwCallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4948 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_h322GwCallsAvailable, ett_h225_h322GwCallsAvailable, dissect_h225_CallsAvailable);
4953 dissect_h225_h323GwCallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4955 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_h323GwCallsAvailable, ett_h225_h323GwCallsAvailable, dissect_h225_CallsAvailable);
4960 dissect_h225_h324GwCallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4962 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_h324GwCallsAvailable, ett_h225_h324GwCallsAvailable, dissect_h225_CallsAvailable);
4967 dissect_h225_t120OnlyGwCallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4969 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_t120OnlyGwCallsAvailable, ett_h225_t120OnlyGwCallsAvailable, dissect_h225_CallsAvailable);
4974 dissect_h225_t38FaxAnnexbOnlyGwCallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4976 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_t38FaxAnnexbOnlyGwCallsAvailable, ett_h225_t38FaxAnnexbOnlyGwCallsAvailable, dissect_h225_CallsAvailable);
4981 dissect_h225_terminalCallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4983 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_terminalCallsAvailable, ett_h225_terminalCallsAvailable, dissect_h225_CallsAvailable);
4988 dissect_h225_mcuCallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4990 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_mcuCallsAvailable, ett_h225_mcuCallsAvailable, dissect_h225_CallsAvailable);
4995 dissect_h225_sipGwCallsAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
4997 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_sipGwCallsAvailable, ett_h225_sipGwCallsAvailable, dissect_h225_CallsAvailable);
5000 static per_sequence_t CallCapacityInfo_sequence[] = {
5001 { "voiceGwCallsAvailable", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5002 dissect_h225_voiceGwCallsAvailable },
5003 { "h310GwCallsAvailable", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5004 dissect_h225_h310GwCallsAvailable },
5005 { "h320GwCallsAvailable", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5006 dissect_h225_h320GwCallsAvailable },
5007 { "h321GwCallsAvailable", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5008 dissect_h225_h321GwCallsAvailable },
5009 { "h322GwCallsAvailable", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5010 dissect_h225_h322GwCallsAvailable },
5011 { "h323GwCallsAvailable", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5012 dissect_h225_h323GwCallsAvailable },
5013 { "h324GwCallsAvailable", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5014 dissect_h225_h324GwCallsAvailable },
5015 { "t120OnlyGwCallsAvailable", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5016 dissect_h225_t120OnlyGwCallsAvailable },
5017 { "t38FaxAnnexbOnlyGwCallsAvailable", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5018 dissect_h225_t38FaxAnnexbOnlyGwCallsAvailable },
5019 { "terminalCallsAvailable", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5020 dissect_h225_terminalCallsAvailable },
5021 { "mcuCallsAvailable", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5022 dissect_h225_mcuCallsAvailable },
5023 { "sipGwCallsAvailable", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5024 dissect_h225_sipGwCallsAvailable },
5025 { NULL, 0, 0, NULL }
5028 dissect_h225_maximumCallCapacity(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5030 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_maximumCallCapacity, ett_h225_CallCapacityInfo, CallCapacityInfo_sequence);
5034 dissect_h225_currentCallCapacity(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5036 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_currentCallCapacity, ett_h225_CallCapacityInfo, CallCapacityInfo_sequence);
5040 static per_sequence_t CallCapacity_sequence[] = {
5041 { "maximumCallCapacity", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5042 dissect_h225_maximumCallCapacity },
5043 { "currentCallCapacity", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5044 dissect_h225_currentCallCapacity },
5045 { NULL, 0, 0, NULL }
5048 dissect_h225_CallCapacity(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5050 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CallCapacity, ett_h225_CallCapacity, CallCapacity_sequence);
5055 dissect_h225_productID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5057 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_productID, 1, 256, NULL, NULL);
5062 dissect_h225_versionID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5064 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_versionID, 1, 256, NULL, NULL);
5069 dissect_h225_enterpriseNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5071 offset=dissect_per_object_identifier(tvb, offset, pinfo, tree, hf_h225_enterpriseNumber, NULL);
5075 static per_sequence_t VendorIdentifier_sequence[] = {
5076 { "vendor", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5077 dissect_h225_h221NonStandard },
5078 { "productId", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5079 dissect_h225_productID },
5080 { "versionId", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5081 dissect_h225_versionID },
5082 { "enterpriseNumber", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5083 dissect_h225_enterpriseNumber },
5084 { NULL, 0, 0, NULL }
5087 dissect_h225_VendorIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5089 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_VendorIdentifier, ett_h225_VendorIdentifier, VendorIdentifier_sequence);
5095 dissect_h225_canReportCallCapacity(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5097 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_canReportCallCapacity, NULL, NULL);
5101 static per_sequence_t CapacityReportingCapability_sequence[] = {
5102 { "canReportCallCapacity", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5103 dissect_h225_canReportCallCapacity },
5104 { NULL, 0, 0, NULL }
5107 dissect_h225_CapacityReportingCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5109 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CapacityReportingCapability, ett_h225_CapacityReportingCapability, CapacityReportingCapability_sequence);
5114 dissect_h225_canDisplayAmountString(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5116 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_canDisplayAmountString, NULL, NULL);
5121 dissect_h225_canEnforceDurationLimit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5123 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_canEnforceDurationLimit, NULL, NULL);
5127 static per_sequence_t CallCreditCapability_sequence[] = {
5128 { "canDisplayAmountString", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5129 dissect_h225_canDisplayAmountString },
5130 { "canEnforceDurationLimit", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5131 dissect_h225_canEnforceDurationLimit },
5132 { NULL, 0, 0, NULL }
5135 dissect_h225_CallCreditCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5137 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CallCreditCapability, ett_h225_CallCreditCapability, CallCreditCapability_sequence);
5142 dissect_h225_BandwidthDetails_sender(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5144 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_BandwidthDetails_sender, NULL, NULL);
5149 dissect_h225_BandwidthDetails_multicast(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5151 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_BandwidthDetails_multicast, NULL, NULL);
5155 static per_sequence_t BandwidthDetails_sequence[] = {
5156 { "sender", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5157 dissect_h225_BandwidthDetails_sender },
5158 { "multicast", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5159 dissect_h225_BandwidthDetails_multicast },
5160 { "bandwidth", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5161 dissect_h225_BandWidth },
5162 { "rtcpAddresses", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5163 dissect_h225_rtcpAddress },
5164 { NULL, 0, 0, NULL }
5167 dissect_h225_BandwidthDetails(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5169 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_BandwidthDetails, ett_h225_BandwidthDetails, BandwidthDetails_sequence);
5174 dissect_h225_releaseCompleteCauseIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5176 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_releaseCompleteCauseIE, 2, 32, NULL, NULL);
5180 static const value_string CallTerminationCause_vals[] = {
5181 { 0, "releaseCompleteReason" },
5182 { 1, "releaseCompleteCauseIE" },
5185 static per_choice_t CallTerminationCause_choice[] = {
5186 { 0, "releaseCompleteReason", ASN1_EXTENSION_ROOT,
5187 dissect_h225_ReleaseCompleteReason },
5188 { 1, "releaseCompleteCauseIE", ASN1_EXTENSION_ROOT,
5189 dissect_h225_releaseCompleteCauseIE },
5190 { 0, NULL, 0, NULL }
5193 dissect_h225_CallTerminationCause(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5195 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_CallTerminationCause, ett_h225_CallTerminationCause, CallTerminationCause_choice, "CallTerminationCause", NULL);
5199 static per_sequence_t CircuitInfo_sequence[] = {
5200 { "sourceCircuitID", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5201 dissect_h225_sourceCircuitID },
5202 { "destinationCircuitID", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5203 dissect_h225_destinationCircuitID },
5204 { "genericData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5205 dissect_h225_genericData },
5206 { NULL, 0, 0, NULL }
5209 dissect_h225_CircuitInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5211 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CircuitInfo, ett_h225_CircuitInfo, CircuitInfo_sequence);
5216 dissect_h225_fastStart_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5221 offset=dissect_per_length_determinant(tvb, offset, pinfo, tree, hf_h225_fastStart_item_length, &length);
5222 newoffset=offset + (length<<3); /* please note that offset is in bits in
5223 PER dissectors, but the item length
5225 offset=dissect_h245_OpenLogicalChannel(tvb, offset, pinfo, tree);
5227 contains_faststart = TRUE;
5233 dissect_h225_fastStart(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5235 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_fastStart, ett_h225_fastStart, dissect_h225_fastStart_item);
5240 dissect_h225_fastConnectRefused(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5242 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_fastConnectRefused, NULL, NULL);
5246 static per_sequence_t InformationUUIE_sequence[] = {
5247 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5248 dissect_h225_ProtocolIdentifier },
5249 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5250 dissect_h225_CallIdentifier },
5251 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5252 dissect_h225_tokens },
5253 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5254 dissect_h225_CryptoH323Token_sequence_of },
5255 { "fastStart", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5256 dissect_h225_fastStart },
5257 { "fastConnectRefused", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5258 dissect_h225_fastConnectRefused },
5259 { "circuitInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5260 dissect_h225_CircuitInfo },
5261 { NULL, 0, 0, NULL }
5264 dissect_h225_InformationUUIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5266 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_InformationUUIE, ett_h225_InformationUUIE, InformationUUIE_sequence);
5271 dissect_h225_routeCallToSCN(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5273 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_routeCallToSCN, ett_h225_routeCallToSCN, dissect_h225_PartyNumber);
5277 const value_string AdmissionRejectReason_vals[] = {
5278 { 0, "calledPartyNotRegistered" },
5279 { 1, "invalidPermission" },
5280 { 2, "requestDenied" },
5281 { 3, "undefinedReason" },
5282 { 4, "callerNotRegistered" },
5283 { 5, "routeCallToGatekeeper" },
5284 { 6, "invalidEndpointIdentifier" },
5285 { 7, "resourceUnavailable" },
5286 { 8, "securityDenial" },
5287 { 9, "qosControlNotSupported" },
5288 { 10, "incompleteAddress" },
5289 { 11, "aliasesInconsistent" },
5290 { 12, "routeCallToSCN" },
5291 { 13, "exceedsCallCapacity" },
5292 { 14, "collectDestination" },
5293 { 15, "collectPIN" },
5294 { 16, "genericDataReason" },
5295 { 17, "neededFeatureNotSupported" },
5296 { 18, "securityErrors" },
5297 { 19, "securityDHmismatch" },
5298 { 20, "noRouteToDestination" },
5299 { 21, "unallocatedNumber" },
5302 static per_choice_t AdmissionRejectReason_choice[] = {
5303 { 0, "calledPartyNotRegistered", ASN1_EXTENSION_ROOT,
5304 dissect_h225_NULL },
5305 { 1, "invalidPermission", ASN1_EXTENSION_ROOT,
5306 dissect_h225_NULL },
5307 { 2, "requestDenied", ASN1_EXTENSION_ROOT,
5308 dissect_h225_NULL },
5309 { 3, "undefinedReason", ASN1_EXTENSION_ROOT,
5310 dissect_h225_NULL },
5311 { 4, "callerNotRegistered", ASN1_EXTENSION_ROOT,
5312 dissect_h225_NULL },
5313 { 5, "routeCallToGatekeeper", ASN1_EXTENSION_ROOT,
5314 dissect_h225_NULL },
5315 { 6, "invalidEndpointIdentifier", ASN1_EXTENSION_ROOT,
5316 dissect_h225_NULL },
5317 { 7, "resourceUnavailable", ASN1_EXTENSION_ROOT,
5318 dissect_h225_NULL },
5319 { 8, "securityDenial", ASN1_NOT_EXTENSION_ROOT,
5320 dissect_h225_NULL },
5321 { 9, "qosControlNotSupported", ASN1_NOT_EXTENSION_ROOT,
5322 dissect_h225_NULL },
5323 { 10, "incompleteAddress", ASN1_NOT_EXTENSION_ROOT,
5324 dissect_h225_NULL },
5325 { 11, "aliasesInconsistent", ASN1_NOT_EXTENSION_ROOT,
5326 dissect_h225_NULL },
5327 { 12, "routeCallToSCN", ASN1_NOT_EXTENSION_ROOT,
5328 dissect_h225_routeCallToSCN },
5329 { 13, "exceedsCallCapacity", ASN1_NOT_EXTENSION_ROOT,
5330 dissect_h225_NULL },
5331 { 14, "collectDestination", ASN1_NOT_EXTENSION_ROOT,
5332 dissect_h225_NULL },
5333 { 15, "collectPIN", ASN1_NOT_EXTENSION_ROOT,
5334 dissect_h225_NULL },
5335 { 16, "genericDataReason", ASN1_NOT_EXTENSION_ROOT,
5336 dissect_h225_NULL },
5337 { 17, "neededFeatureNotSupported", ASN1_NOT_EXTENSION_ROOT,
5338 dissect_h225_NULL },
5339 { 18, "securityErrors", ASN1_NOT_EXTENSION_ROOT,
5340 dissect_h225_SecurityErrors2 },
5341 { 19, "securityDHmismatch", ASN1_NOT_EXTENSION_ROOT,
5342 dissect_h225_NULL },
5343 { 20, "noRouteToDestination", ASN1_NOT_EXTENSION_ROOT,
5344 dissect_h225_NULL },
5345 { 21, "unallocatedNumber", ASN1_NOT_EXTENSION_ROOT,
5346 dissect_h225_NULL },
5347 { 0, NULL, 0, NULL }
5350 dissect_h225_AdmissionRejectReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5354 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_AdmissionRejectReason, ett_h225_AdmissionRejectReason, AdmissionRejectReason_choice, "AdmissionRejectReason", &value);
5355 h225_pi.reason = value;
5360 dissect_h225_isoAlgorithm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5362 offset=dissect_per_object_identifier(tvb, offset, pinfo, tree, hf_h225_isoAlgorithm, NULL);
5366 static const value_string EncryptIntAlg_vals[] = {
5367 { 0, "nonStandard" },
5368 { 1, "isoAlgorithm" },
5371 static per_choice_t EncryptIntAlg_choice[] = {
5372 { 0, "nonStandard", ASN1_EXTENSION_ROOT,
5373 dissect_h225_nonStandard },
5374 { 1, "isoAlgorithm", ASN1_EXTENSION_ROOT,
5375 dissect_h225_isoAlgorithm },
5376 { 0, NULL, 0, NULL }
5379 dissect_h225_hMAC_iso10118_2_s(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5381 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_hMAC_iso10118_2_s, ett_h225_EncryptIntAlg, EncryptIntAlg_choice, "hMAC_iso10118_2_s", NULL);
5385 dissect_h225_hMAC_iso10118_2_l(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5387 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_hMAC_iso10118_2_l, ett_h225_EncryptIntAlg, EncryptIntAlg_choice, "hMAC_iso10118_2_l", NULL);
5392 dissect_h225_hMAC_iso10118_3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5394 offset=dissect_per_object_identifier(tvb, offset, pinfo, tree, hf_h225_hMAC_iso10118_3, NULL);
5399 static const value_string NonIsoIntegrityMechanism_vals[] = {
5401 { 1, "hMAC_iso10118_2_s" },
5402 { 2, "hMAC_iso10118_2_l" },
5403 { 3, "hMAC_iso10118_3" },
5406 static per_choice_t NonIsoIntegrityMechanism_choice[] = {
5407 { 0, "hMAC-MD5", ASN1_EXTENSION_ROOT,
5408 dissect_h225_NULL },
5409 { 1, "hMAC_iso10118_2_s", ASN1_EXTENSION_ROOT,
5410 dissect_h225_hMAC_iso10118_2_s },
5411 { 2, "hMAC_iso10118_2_l", ASN1_EXTENSION_ROOT,
5412 dissect_h225_hMAC_iso10118_2_l },
5413 { 3, "hMAC_iso10118_3", ASN1_EXTENSION_ROOT,
5414 dissect_h225_hMAC_iso10118_3 },
5415 { 0, NULL, 0, NULL }
5418 dissect_h225_NonIsoIntegrityMechanism(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5420 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_NonIsoIntegrityMechanism, ett_h225_NonIsoIntegrityMechanism, NonIsoIntegrityMechanism_choice, "NonIsoIntegrityMechanism", NULL);
5425 dissect_h225_iso9797(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5427 offset=dissect_per_object_identifier(tvb, offset, pinfo, tree, hf_h225_iso9797, NULL);
5431 static const value_string IntegrityMechanism_vals[] = {
5432 { 0, "nonStandard" },
5438 static per_choice_t IntegrityMechanism_choice[] = {
5439 { 0, "nonStandard", ASN1_EXTENSION_ROOT,
5440 dissect_h225_nonStandard },
5441 { 1, "digSig", ASN1_EXTENSION_ROOT,
5442 dissect_h225_NULL },
5443 { 2, "iso9797", ASN1_EXTENSION_ROOT,
5444 dissect_h225_iso9797 },
5445 { 3, "nonIsoIM", ASN1_EXTENSION_ROOT,
5446 dissect_h225_NonIsoIntegrityMechanism },
5447 { 0, NULL, 0, NULL }
5450 dissect_h225_IntegrityMechanism(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5452 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_IntegrityMechanism, ett_h225_IntegrityMechanism, IntegrityMechanism_choice, "IntegrityMechanism", NULL);
5456 const value_string LocationRejectReason_vals[] = {
5457 { 0, "notRegistered" },
5458 { 1, "invalidPermission" },
5459 { 2, "requestDenied" },
5460 { 3, "undefinedReason" },
5461 { 4, "securityDenial" },
5462 { 5, "aliasesInconsistent" },
5463 { 6, "routeCalltoSCN" },
5464 { 7, "resourceUnavailable" },
5465 { 8, "genericDataReason" },
5466 { 9, "neededFeatureNotSupported" },
5467 {10, "hopCountExceeded" },
5468 {11, "incompleteAddress" },
5469 {12, "securityError" },
5470 {13, "securityDHmismatch" },
5471 {14, "noRouteToDestination" },
5472 {15, "unallocatedNumber" },
5475 static per_choice_t LocationRejectReason_choice[] = {
5476 { 0, "notRegistered", ASN1_EXTENSION_ROOT,
5477 dissect_h225_NULL },
5478 { 1, "invalidPermission", ASN1_EXTENSION_ROOT,
5479 dissect_h225_NULL },
5480 { 2, "requestDenied", ASN1_EXTENSION_ROOT,
5481 dissect_h225_NULL },
5482 { 3, "undefinedReason", ASN1_EXTENSION_ROOT,
5483 dissect_h225_NULL },
5484 { 4, "securityDenial", ASN1_NOT_EXTENSION_ROOT,
5485 dissect_h225_NULL },
5486 { 5, "aliasesInconsistent", ASN1_NOT_EXTENSION_ROOT,
5487 dissect_h225_NULL },
5488 { 6, "routeCalltoSCN", ASN1_NOT_EXTENSION_ROOT,
5489 dissect_h225_routeCallToSCN },
5490 { 7, "resourceUnavailable", ASN1_NOT_EXTENSION_ROOT,
5491 dissect_h225_NULL },
5492 { 8, "genericDataReason", ASN1_NOT_EXTENSION_ROOT,
5493 dissect_h225_NULL },
5494 { 9, "neededFeatureNotSupported", ASN1_NOT_EXTENSION_ROOT,
5495 dissect_h225_NULL },
5496 {10, "hopCountExceeded", ASN1_NOT_EXTENSION_ROOT,
5497 dissect_h225_NULL },
5498 {11, "incompleteAddress", ASN1_NOT_EXTENSION_ROOT,
5499 dissect_h225_NULL },
5500 {12, "securityError", ASN1_NOT_EXTENSION_ROOT,
5501 dissect_h225_SecurityErrors2 },
5502 {13, "securityDHmismatch", ASN1_NOT_EXTENSION_ROOT,
5503 dissect_h225_NULL },
5504 {14, "noRouteToDestination", ASN1_NOT_EXTENSION_ROOT,
5505 dissect_h225_NULL },
5506 {15, "unallocatedNumber", ASN1_NOT_EXTENSION_ROOT,
5507 dissect_h225_NULL },
5508 { 0, NULL, 0, NULL }
5511 dissect_h225_LocationRejectReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5515 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_LocationRejectReason, ett_h225_LocationRejectReason, LocationRejectReason_choice, "LocationRejectReason", &value);
5516 h225_pi.reason = value;
5522 dissect_h225_EndpointType_set(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5524 PER_NOT_DECODED_YET("EndpointType_set");
5529 dissect_h225_mc(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5531 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_mc, NULL, NULL);
5536 dissect_h225_undefinedNode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5538 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_undefinedNode, NULL, NULL);
5543 static per_sequence_t EndPointType_sequence[] = {
5544 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5545 dissect_h225_nonStandardData },
5546 { "vendor", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5547 dissect_h225_VendorIdentifier },
5548 { "gatekeeper", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5549 dissect_h225_GatekeeperInfo },
5550 { "gateway", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5551 dissect_h225_gateway },
5552 { "mcu", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5554 { "terminal", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5555 dissect_h225_TerminalInfo },
5556 { "mc", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5558 { "undefinedNode", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5559 dissect_h225_undefinedNode },
5560 { "set", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5561 dissect_h225_EndpointType_set },
5562 { "supportedTunnelledProtocols", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5563 dissect_h225_TunnelledProtocols },
5564 { NULL, 0, 0, NULL }
5567 dissect_h225_EndPointType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5569 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_EndPointType, ett_h225_EndPointType, EndPointType_sequence);
5573 dissect_h225_destinationType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5575 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_destinationType, ett_h225_EndPointType, EndPointType_sequence);
5579 dissect_h225_terminalType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5581 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_terminalType, ett_h225_EndPointType, EndPointType_sequence);
5585 dissect_h225_sourceInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5587 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_sourceInfo, ett_h225_EndPointType, EndPointType_sequence);
5591 dissect_h225_destinationInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5593 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_destinationInfo, ett_h225_EndPointType, EndPointType_sequence);
5598 dissect_h225_multipleCalls(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5600 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_multipleCalls, NULL, NULL);
5605 dissect_h225_maintainConnection(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5607 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_maintainConnection, NULL, NULL);
5610 static per_sequence_t CallProceedingUUIE_sequence[] = {
5611 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5612 dissect_h225_ProtocolIdentifier },
5613 { "destinationInfo", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5614 dissect_h225_destinationInfo },
5615 { "h245Address", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5616 dissect_h225_h245Address },
5617 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5618 dissect_h225_CallIdentifier },
5619 { "h245SecurityMode", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5620 dissect_h225_H245Security },
5621 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5622 dissect_h225_tokens },
5623 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5624 dissect_h225_CryptoH323Token_sequence_of },
5625 { "fastStart", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5626 dissect_h225_fastStart },
5627 { "multipleCalls", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5628 dissect_h225_multipleCalls },
5629 { "maintainConnection", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5630 dissect_h225_maintainConnection },
5631 { "fastConnectRefused", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5632 dissect_h225_NULL },
5633 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5634 dissect_h225_FeatureSet },
5635 { NULL, 0, 0, NULL }
5638 dissect_h225_CallProceedingUUIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5640 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CallProceedingUUIE, ett_h225_CallProceedingUUIE, CallProceedingUUIE_sequence);
5644 static per_sequence_t CapacityReportingSpecification_when_sequence[] = {
5645 { "callStart", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5646 dissect_h225_NULL },
5647 { "callEnd", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5648 dissect_h225_NULL },
5649 { NULL, 0, 0, NULL }
5652 dissect_h225_CapacityReportingSpecification_when(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5654 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CapacityReportingSpecification_when, ett_h225_CapacityReportingSpecification_when, CapacityReportingSpecification_when_sequence);
5658 static per_sequence_t CapacityReportingSpecification_sequence[] = {
5659 { "when", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5660 dissect_h225_CapacityReportingSpecification_when },
5661 { NULL, 0, 0, NULL }
5664 dissect_h225_CapacityReportingSpecification(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5666 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CapacityReportingSpecification, ett_h225_CapacityReportingSpecification, CapacityReportingSpecification_sequence);
5669 static per_sequence_t ProgressUUIE_sequence[] = {
5670 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5671 dissect_h225_ProtocolIdentifier },
5672 { "destinationInfo", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5673 dissect_h225_destinationInfo },
5674 { "h245Address", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5675 dissect_h225_h245Address },
5676 { "callIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5677 dissect_h225_CallIdentifier },
5678 { "h245SecurityMode", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5679 dissect_h225_H245Security },
5680 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5681 dissect_h225_tokens },
5682 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5683 dissect_h225_CryptoH323Token_sequence_of },
5684 { "fastStart", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5685 dissect_h225_fastStart },
5686 { "multipleCalls", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5687 dissect_h225_multipleCalls },
5688 { "maintainConnection", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5689 dissect_h225_maintainConnection },
5690 { "fastConnectRefused", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5691 dissect_h225_NULL },
5692 { NULL, 0, 0, NULL }
5695 dissect_h225_ProgressUUIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5697 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ProgressUUIE, ett_h225_ProgressUUIE, ProgressUUIE_sequence);
5703 dissect_h225_destExtraCallInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5705 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_destExtraCallInfo, ett_h225_destExtraCallInfo, dissect_h225_AliasAddress);
5710 dissect_h225_remoteExtensionAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5712 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_remoteExtensionAddress, ett_h225_remoteExtensionAddress, dissect_h225_AliasAddress);
5718 dissect_h225_aliasAddress_sequence(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5720 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_aliasAddress_sequence, ett_h225_aliasAddress_sequence, dissect_h225_AliasAddress);
5725 dissect_h225_rasAddress_sequence(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5727 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_rasAddress_sequence, ett_h225_rasAddress_sequence, dissect_h225_TransportAddress);
5732 dissect_h225_callSignalAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5734 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_callSignalAddress, ett_h225_callSignalAddress, dissect_h225_TransportAddress);
5739 static per_sequence_t EndPoint_sequence[] = {
5740 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5741 dissect_h225_nonStandardData },
5742 { "aliasAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5743 dissect_h225_aliasAddress_sequence },
5744 { "callSignalAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5745 dissect_h225_callSignalAddress },
5746 { "rasAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5747 dissect_h225_rasAddress_sequence },
5748 { "endpointType", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5749 dissect_h225_EndPointType },
5750 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5751 dissect_h225_tokens },
5752 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5753 dissect_h225_CryptoH323Token_sequence_of },
5754 { "priority", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5755 dissect_h225_priority },
5756 { "remoteExtensionAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5757 dissect_h225_remoteExtensionAddress },
5758 { "destExtraCallInfo", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5759 dissect_h225_destExtraCallInfo },
5760 { "alternateTransportAddresses", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5761 dissect_h225_AlternateTransportAddress },
5762 { "circuitInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5763 dissect_h225_CircuitInfo },
5764 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5765 dissect_h225_FeatureSet },
5766 { NULL, 0, 0, NULL }
5769 dissect_h225_EndPoint(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5771 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_EndPoint, ett_h225_EndPoint, EndPoint_sequence);
5777 dissect_h225_icv(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5779 PER_NOT_DECODED_YET("icv");
5783 static per_sequence_t ICV_sequence[] = {
5784 { "algorithmOID", ASN1_NO_EXTENSIONS, ASN1_OPTIONAL,
5785 dissect_h225_algorithmOID },
5786 { "icv", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
5788 { NULL, 0, 0, NULL }
5791 dissect_h225_ICV(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5793 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ICV, ett_h225_ICV, ICV_sequence);
5797 static per_sequence_t BandwidthConfirm_sequence[] = {
5798 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5799 dissect_h225_RequestSeqNum },
5800 { "bandWidth", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5801 dissect_h225_BandWidth },
5802 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5803 dissect_h225_nonStandardData },
5804 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5805 dissect_h225_tokens },
5806 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5807 dissect_h225_CryptoH323Token_sequence_of },
5808 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5810 { "capacity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5811 dissect_h225_CallCapacity },
5812 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5813 dissect_h225_genericData },
5814 { NULL, 0, 0, NULL }
5817 dissect_h225_BandwidthConfirm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5819 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_BandwidthConfirm, ett_h225_BandwidthConfirm, BandwidthConfirm_sequence);
5824 static per_sequence_t UnregistrationConfirm_sequence[] = {
5825 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5826 dissect_h225_RequestSeqNum },
5827 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5828 dissect_h225_nonStandardData },
5829 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5830 dissect_h225_tokens },
5831 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5832 dissect_h225_CryptoH323Token_sequence_of },
5833 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5835 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5836 dissect_h225_genericData },
5837 { NULL, 0, 0, NULL }
5840 dissect_h225_UnregistrationConfirm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5842 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_UnregistrationConfirm, ett_h225_UnregistrationConfirm, UnregistrationConfirm_sequence);
5845 static per_sequence_t NonStandardMessage_sequence[] = {
5846 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5847 dissect_h225_RequestSeqNum },
5848 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5849 dissect_h225_nonStandardData },
5850 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5851 dissect_h225_tokens },
5852 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5853 dissect_h225_CryptoH323Token_sequence_of },
5854 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5856 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5857 dissect_h225_FeatureSet },
5858 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5859 dissect_h225_genericData },
5860 { NULL, 0, 0, NULL }
5863 dissect_h225_NonStandardMessage(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5865 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_NonStandardMessage, ett_h225_NonStandardMessage, NonStandardMessage_sequence);
5870 static per_sequence_t InfoRequestAck_sequence[] = {
5871 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5872 dissect_h225_RequestSeqNum },
5873 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5874 dissect_h225_nonStandardData },
5875 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5876 dissect_h225_tokens },
5877 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5878 dissect_h225_CryptoH323Token_sequence_of },
5879 { "integrityCheckValue", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5881 { NULL, 0, 0, NULL }
5884 dissect_h225_InfoRequestAck(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5886 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_InfoRequestAck, ett_h225_InfoRequestAck, InfoRequestAck_sequence);
5889 static per_sequence_t InfoRequestNak_sequence[] = {
5890 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5891 dissect_h225_RequestSeqNum },
5892 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5893 dissect_h225_nonStandardData },
5894 { "nakReason", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5895 dissect_h225_InfoRequestNakReason },
5896 { "altGKInfo", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5897 dissect_h225_AltGKInfo },
5898 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5899 dissect_h225_tokens },
5900 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5901 dissect_h225_CryptoH323Token_sequence_of },
5902 { "integrityCheckValue", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5904 { NULL, 0, 0, NULL }
5907 dissect_h225_InfoRequestNak(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5909 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_InfoRequestNak, ett_h225_InfoRequestNak, InfoRequestNak_sequence);
5913 static per_sequence_t ResourcesAvailableConfirm_sequence[] = {
5914 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5915 dissect_h225_RequestSeqNum },
5916 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5917 dissect_h225_ProtocolIdentifier },
5918 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5919 dissect_h225_nonStandardData },
5920 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5921 dissect_h225_tokens },
5922 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5923 dissect_h225_CryptoH323Token_sequence_of },
5924 { "integrityCheckValue", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5926 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5927 dissect_h225_genericData },
5928 { NULL, 0, 0, NULL }
5931 dissect_h225_ResourcesAvailableConfirm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5933 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ResourcesAvailableConfirm, ett_h225_ResourcesAvailableConfirm, ResourcesAvailableConfirm_sequence);
5940 dissect_h225_integrity(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5942 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_integrity, ett_h225_integrity, dissect_h225_IntegrityMechanism);
5948 dissect_h225_algorithmOIDs(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5950 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_algorithmOIDs, ett_h225_algorithmOIDs, dissect_h225_algorithmOID);
5956 dissect_h225_alternateEndpoints(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5958 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_alternateEndpoints, ett_h225_alternateEndpoints, dissect_h225_EndPoint);
5965 dissect_h225_endpointAlias(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
5967 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_endpointAlias, ett_h225_endpointAlias, dissect_h225_AliasAddress);
5972 static per_sequence_t GatekeeperRequest_sequence[] = {
5973 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5974 dissect_h225_RequestSeqNum },
5975 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5976 dissect_h225_ProtocolIdentifier },
5977 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5978 dissect_h225_nonStandardData },
5979 { "rasAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5980 dissect_h225_rasAddress },
5981 { "endpointType", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
5982 dissect_h225_EndPointType },
5983 { "gatekeeperIdentifier", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5984 dissect_h225_GatekeeperIdentifier },
5985 { "callServices", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5986 dissect_h225_callServices },
5987 { "endpointAlias", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
5988 dissect_h225_endpointAlias },
5989 { "alternateEndpoints", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5990 dissect_h225_alternateEndpoints },
5991 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5992 dissect_h225_tokens },
5993 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5994 dissect_h225_CryptoH323Token_sequence_of },
5995 { "authenticationCapability", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5996 dissect_h225_authenticationCapability },
5997 { "algorithmOIDs", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
5998 dissect_h225_algorithmOIDs },
5999 { "integrity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6000 dissect_h225_integrity },
6001 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6003 { "supportsAltGK", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6004 dissect_h225_NULL },
6005 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6006 dissect_h225_FeatureSet },
6007 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6008 dissect_h225_genericData },
6009 { NULL, 0, 0, NULL }
6012 dissect_h225_GatekeeperRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6014 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_GatekeeperRequest, ett_h225_GatekeeperRequest, GatekeeperRequest_sequence);
6018 static per_sequence_t ServiceControlResponse_sequence[] = {
6019 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6020 dissect_h225_RequestSeqNum },
6021 { "result", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6022 dissect_h225_SCRresult },
6023 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6024 dissect_h225_nonStandardData },
6025 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6026 dissect_h225_tokens },
6027 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6028 dissect_h225_CryptoH323Token_sequence_of },
6029 { "integrityCheckValue", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6031 { "featureSet", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6032 dissect_h225_FeatureSet },
6033 { "genericData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6034 dissect_h225_genericData },
6035 { NULL, 0, 0, NULL }
6038 dissect_h225_ServiceControlResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6040 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ServiceControlResponse, ett_h225_ServiceControlResponse, ServiceControlResponse_sequence);
6046 static per_sequence_t DisengageReject_sequence[] = {
6047 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6048 dissect_h225_RequestSeqNum },
6049 { "rejectReason", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6050 dissect_h225_DisengageRejectReason },
6051 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6052 dissect_h225_nonStandardData },
6053 { "altGKInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6054 dissect_h225_AltGKInfo },
6055 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6056 dissect_h225_tokens },
6057 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6058 dissect_h225_CryptoH323Token_sequence_of },
6059 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6061 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6062 dissect_h225_genericData },
6063 { NULL, 0, 0, NULL }
6066 dissect_h225_DisengageReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6068 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_DisengageReject, ett_h225_DisengageReject, DisengageReject_sequence);
6074 static per_sequence_t BandwidthReject_sequence[] = {
6075 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6076 dissect_h225_RequestSeqNum },
6077 { "rejectReason", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6078 dissect_h225_BandRejectReason },
6079 { "allowedBandWidth", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6080 dissect_h225_allowedBandWidth },
6081 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6082 dissect_h225_nonStandardData },
6083 { "altGKInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6084 dissect_h225_AltGKInfo },
6085 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6086 dissect_h225_tokens },
6087 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6088 dissect_h225_CryptoH323Token_sequence_of },
6089 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6091 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6092 dissect_h225_genericData },
6093 { NULL, 0, 0, NULL }
6096 dissect_h225_BandwidthReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6098 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_BandwidthReject, ett_h225_BandwidthReject, BandwidthReject_sequence);
6104 static per_sequence_t UnregistrationReject_sequence[] = {
6105 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6106 dissect_h225_RequestSeqNum },
6107 { "rejectReason", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6108 dissect_h225_UnregRejectReason },
6109 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6110 dissect_h225_nonStandardData },
6111 { "altGKInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6112 dissect_h225_AltGKInfo },
6113 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6114 dissect_h225_tokens },
6115 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6116 dissect_h225_CryptoH323Token_sequence_of },
6117 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6119 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6120 dissect_h225_genericData },
6121 { NULL, 0, 0, NULL }
6124 dissect_h225_UnregistrationReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6126 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_UnregistrationReject, ett_h225_UnregistrationReject, UnregistrationReject_sequence);
6132 dissect_h225_endpointAliasPattern(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6134 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_endpointAliasPattern, ett_h225_endpointAliasPattern, dissect_h225_AddressPattern);
6139 dissect_h225_EndpointIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6141 offset=dissect_per_BMPString(tvb, offset, pinfo, tree, hf_h225_EndpointIdentifier, 1, 128);
6145 static per_sequence_t UnregistrationRequest_sequence[] = {
6146 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6147 dissect_h225_RequestSeqNum },
6148 { "callSignalAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6149 dissect_h225_callSignalAddress },
6150 { "endpointAlias", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6151 dissect_h225_endpointAlias },
6152 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6153 dissect_h225_nonStandardData },
6154 { "endpointIdentifier", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6155 dissect_h225_EndpointIdentifier },
6156 { "alternateEndpoints", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6157 dissect_h225_alternateEndpoints },
6158 { "gatekeeperIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6159 dissect_h225_GatekeeperIdentifier },
6160 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6161 dissect_h225_tokens },
6162 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6163 dissect_h225_CryptoH323Token_sequence_of },
6164 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6166 { "reason", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6167 dissect_h225_UnregRequestReason },
6168 { "endpointAliasPattern", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6169 dissect_h225_endpointAliasPattern },
6170 { "supportedPrefixes", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6171 dissect_h225_SupportedPrefixes },
6172 { "alternateGatekeeper", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6173 dissect_h225_alternateGatekeeper },
6174 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6175 dissect_h225_genericData },
6176 { NULL, 0, 0, NULL }
6179 dissect_h225_UnregistrationRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6181 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_UnregistrationRequest, ett_h225_UnregistrationRequest, UnregistrationRequest_sequence);
6187 dissect_h225_terminalAlias(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6189 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_terminalAlias, ett_h225_terminalAlias, dissect_h225_AliasAddress);
6196 dissect_h225_terminalAliasPattern(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6198 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_terminalAliasPattern, ett_h225_terminalAliasPattern, dissect_h225_AddressPattern);
6203 static per_sequence_t invalidTerminalAliases_sequence[] = {
6204 { "terminalAlias", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6205 dissect_h225_terminalAlias },
6206 { "terminalAliasPattern", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6207 dissect_h225_terminalAliasPattern },
6208 { "supportedPrefixes", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6209 dissect_h225_SupportedPrefixes },
6210 { NULL, 0, 0, NULL }
6213 dissect_h225_invalidTerminalAliases(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6215 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_invalidTerminalAliases, ett_h225_invalidTerminalAliases, invalidTerminalAliases_sequence);
6225 dissect_h225_duplicateAlias(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6227 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_duplicateAlias, ett_h225_duplicateAlias, dissect_h225_AliasAddress);
6235 const value_string RegistrationRejectReason_vals[] = {
6236 { 0, "discoveryRequired" },
6237 { 1, "invalidRevision" },
6238 { 2, "invalidCallSignalAddress" },
6239 { 3, "invalidRASAddress" },
6240 { 4, "duplicateAlias" },
6241 { 5, "invalidTerminalType" },
6242 { 6, "undefinedReason" },
6243 { 7, "transportNotSupported" },
6244 { 8, "transportQOSNotSupported" },
6245 { 9, "resourceUnavailable" },
6246 { 10, "invalidAlias" },
6247 { 11, "securityDenial" },
6248 { 12, "fullRegistrationRequired" },
6249 { 13, "additiveRegistrationNotSupported" },
6250 { 14, "invalidTerminalAliases" },
6251 { 15, "genericDataReason" },
6252 { 16, "neededFeatureNotSupported" },
6253 { 17, "securityError" },
6256 static per_choice_t RegistrationRejectReason_choice[] = {
6257 { 0, "discoveryRequired", ASN1_EXTENSION_ROOT,
6258 dissect_h225_NULL },
6259 { 1, "invalidRevision", ASN1_EXTENSION_ROOT,
6260 dissect_h225_NULL },
6261 { 2, "invalidCallSignalAddress", ASN1_EXTENSION_ROOT,
6262 dissect_h225_NULL },
6263 { 3, "invalidRASAddress", ASN1_EXTENSION_ROOT,
6264 dissect_h225_NULL },
6265 { 4, "duplicateAlias", ASN1_EXTENSION_ROOT,
6266 dissect_h225_duplicateAlias },
6267 { 5, "invalidTerminalType", ASN1_EXTENSION_ROOT,
6268 dissect_h225_NULL },
6269 { 6, "undefinedReason", ASN1_EXTENSION_ROOT,
6270 dissect_h225_NULL },
6271 { 7, "transportNotSupported", ASN1_EXTENSION_ROOT,
6272 dissect_h225_NULL },
6273 { 8, "transportQOSNotSupported", ASN1_NOT_EXTENSION_ROOT,
6274 dissect_h225_NULL },
6275 { 9, "resourceUnavailable", ASN1_NOT_EXTENSION_ROOT,
6276 dissect_h225_NULL },
6277 { 10, "invalidAlias", ASN1_NOT_EXTENSION_ROOT,
6278 dissect_h225_NULL },
6279 { 11, "securityDenial", ASN1_NOT_EXTENSION_ROOT,
6280 dissect_h225_NULL },
6281 { 12, "fullRegistrationRequired", ASN1_NOT_EXTENSION_ROOT,
6282 dissect_h225_NULL },
6283 { 13, "additiveRegistrationNotSupported", ASN1_NOT_EXTENSION_ROOT,
6284 dissect_h225_NULL },
6285 { 14, "invalidTerminalAliases", ASN1_NOT_EXTENSION_ROOT,
6286 dissect_h225_invalidTerminalAliases },
6287 { 15, "genericDataReason", ASN1_NOT_EXTENSION_ROOT,
6288 dissect_h225_NULL },
6289 { 16, "neededFeatureNotSupported", ASN1_NOT_EXTENSION_ROOT,
6290 dissect_h225_NULL },
6291 { 17, "securityError", ASN1_NOT_EXTENSION_ROOT,
6292 dissect_h225_SecurityErrors },
6293 { 0, NULL, 0, NULL }
6296 dissect_h225_RegistrationRejectReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6300 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_RegistrationRejectReason, ett_h225_RegistrationRejectReason, RegistrationRejectReason_choice, "RegistrationRejectReason", &value);
6301 h225_pi.reason = value;
6310 static per_sequence_t RegistrationReject_sequence[] = {
6311 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6312 dissect_h225_RequestSeqNum },
6313 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6314 dissect_h225_ProtocolIdentifier },
6315 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6316 dissect_h225_nonStandardData },
6317 { "rejectReason", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6318 dissect_h225_RegistrationRejectReason },
6319 { "gatekeeperIdentifier", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6320 dissect_h225_GatekeeperIdentifier },
6321 { "altGKInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6322 dissect_h225_AltGKInfo },
6323 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6324 dissect_h225_tokens },
6325 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6326 dissect_h225_CryptoH323Token_sequence_of },
6327 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6329 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6330 dissect_h225_FeatureSet },
6331 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6332 dissect_h225_genericData },
6333 { NULL, 0, 0, NULL }
6336 dissect_h225_RegistrationReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6338 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_RegistrationReject, ett_h225_RegistrationReject, RegistrationReject_sequence);
6343 static per_sequence_t GatekeeperReject_sequence[] = {
6344 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6345 dissect_h225_RequestSeqNum },
6346 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6347 dissect_h225_ProtocolIdentifier },
6348 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6349 dissect_h225_nonStandardData },
6350 { "gatekeeperIdentifier", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6351 dissect_h225_GatekeeperIdentifier },
6352 { "rejectReason", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6353 dissect_h225_GatekeeperRejectReason },
6354 { "altGKInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6355 dissect_h225_AltGKInfo },
6356 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6357 dissect_h225_tokens },
6358 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6359 dissect_h225_CryptoH323Token_sequence_of },
6360 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6362 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6363 dissect_h225_FeatureSet },
6364 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6365 dissect_h225_genericData },
6366 { NULL, 0, 0, NULL }
6369 dissect_h225_GatekeeperReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6371 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_GatekeeperReject, ett_h225_GatekeeperReject, GatekeeperReject_sequence);
6378 dissect_h225_almostOutOfResources(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6380 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_almostOutOfResources, NULL, NULL);
6386 dissect_h225_protocols(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6388 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_protocols, ett_h225_protocols, dissect_h225_SupportedProtocols);
6392 static per_sequence_t ResourcesAvailableIndicate_sequence[] = {
6393 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6394 dissect_h225_RequestSeqNum },
6395 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6396 dissect_h225_ProtocolIdentifier },
6397 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6398 dissect_h225_nonStandardData },
6399 { "endpointIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6400 dissect_h225_EndpointIdentifier },
6401 { "protocols", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6402 dissect_h225_protocols },
6403 { "almostOutOfResources", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6404 dissect_h225_almostOutOfResources },
6405 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6406 dissect_h225_tokens },
6407 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6408 dissect_h225_CryptoH323Token_sequence_of },
6409 { "integrityCheckValue", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6411 { "capacity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6412 dissect_h225_CallCapacity },
6413 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6414 dissect_h225_genericData },
6415 { NULL, 0, 0, NULL }
6418 dissect_h225_ResourcesAvailableIndicate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6420 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ResourcesAvailableIndicate, ett_h225_ResourcesAvailableIndicate, ResourcesAvailableIndicate_sequence);
6426 dissect_h225_amountString(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6428 PER_NOT_DECODED_YET("amountString");
6435 dissect_h225_callDurationLimit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6437 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
6438 tree, hf_h225_callDurationLimit, 1, 4294967295UL,
6445 dissect_h225_enforceCallDurationLimit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6447 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_enforceCallDurationLimit, NULL, NULL);
6452 static per_sequence_t CallCreditServiceControl_sequence[] = {
6453 { "amountString", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6454 dissect_h225_amountString },
6455 { "billingMode", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6456 dissect_h225_billingMode },
6457 { "callDurationLimit", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6458 dissect_h225_callDurationLimit },
6459 { "enforceCallDurationLimit", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6460 dissect_h225_enforceCallDurationLimit },
6461 { "callStartingPoint", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6462 dissect_h225_CCSCcallStartingPoint },
6463 { NULL, 0, 0, NULL }
6466 dissect_h225_CallCreditServiceControl(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6468 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_CallCreditServiceControl, ett_h225_CallCreditServiceControl, CallCreditServiceControl_sequence);
6474 static const value_string ScreeningIndicator_vals[] = {
6475 { 0, "userProvidedNotScreened" },
6476 { 1, "userProvidedVerifiedAndPassed" },
6477 { 2, "userProvidedVerifiedAndFailed" },
6478 { 3, "networkProvided" },
6483 dissect_h225_ScreeningIndicator(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6485 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
6486 tree, hf_h225_ScreeningIndicator, 0, 3,
6491 static per_sequence_t ExtendedAliasAddress_sequence[] = {
6492 { "address", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6493 dissect_h225_AliasAddress },
6494 { "presentationIndicator", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6495 dissect_h225_PresentationIndicator },
6496 { "screeningIndicator", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6497 dissect_h225_ScreeningIndicator },
6498 { NULL, 0, 0, NULL }
6501 dissect_h225_ExtendedAliasAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6503 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ExtendedAliasAddress, ett_h225_ExtendedAliasAddress, ExtendedAliasAddress_sequence);
6511 dissect_h225_messageNotUnderstood(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6513 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_messageNotUnderstood, -1, -1, NULL, NULL);
6517 static per_sequence_t UnknownMessageResponse_sequence[] = {
6518 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6519 dissect_h225_RequestSeqNum },
6520 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6521 dissect_h225_tokens },
6522 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6523 dissect_h225_CryptoH323Token_sequence_of },
6524 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6526 { "messageNotUnderstood", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6527 dissect_h225_messageNotUnderstood },
6528 { NULL, 0, 0, NULL }
6531 dissect_h225_UnknownMessageResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6533 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_UnknownMessageResponse, ett_h225_UnknownMessageResponse, UnknownMessageResponse_sequence);
6538 dissect_h225_CallReferenceValue(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6540 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
6541 tree, hf_h225_CallReferenceValue, 0, 65535,
6550 dissect_h225_canMapSrcAlias(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6552 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_canMapSrcAlias, NULL, NULL);
6557 dissect_h225_desiredProtocols(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6559 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_desiredProtocols, ett_h225_desiredProtocols, dissect_h225_SupportedProtocols);
6564 dissect_h225_willSupplyUUIEs(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6566 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_willSupplyUUIEs, NULL, NULL);
6572 dissect_h225_destAlternatives(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6574 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_destAlternatives, ett_h225_destAlternatives, dissect_h225_EndPoint);
6579 dissect_h225_srcAlternatives(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6581 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_srcAlternatives, ett_h225_srcAlternatives, dissect_h225_EndPoint);
6586 dissect_h225_canMapAlias(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6588 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_canMapAlias, NULL, NULL);
6594 dissect_h225_answerCall(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6596 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_answerCall, NULL, NULL);
6602 dissect_h225_activeMC(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6604 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_activeMC, NULL, NULL);
6610 dissect_h225_srcInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6612 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_srcInfo, ett_h225_srcInfo, dissect_h225_AliasAddress);
6617 dissect_h225_DestinationInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6619 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_DestinationInfo, ett_h225_DestinationInfo, dissect_h225_AliasAddress);
6628 static per_sequence_t AdmissionRequest_sequence[] = {
6629 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6630 dissect_h225_RequestSeqNum },
6631 { "callType", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6632 dissect_h225_CallType },
6633 { "callModel", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6634 dissect_h225_CallModel },
6635 { "endpointIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6636 dissect_h225_EndpointIdentifier },
6637 { "DestinationInfo", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6638 dissect_h225_DestinationInfo },
6639 { "destCallSignalAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6640 dissect_h225_destCallSignalAddress },
6641 { "destExtraCallInfo", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6642 dissect_h225_destExtraCallInfo },
6643 { "srcInfo", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6644 dissect_h225_srcInfo },
6645 { "sourceCallSignalAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6646 dissect_h225_sourceCallSignalAddress },
6647 { "bandWidth", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6648 dissect_h225_BandWidth },
6649 { "callReferenceValue", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6650 dissect_h225_CallReferenceValue },
6651 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6652 dissect_h225_nonStandardData },
6653 { "callServices", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6654 dissect_h225_callServices },
6655 { "conferenceID", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6656 dissect_h225_conferenceID },
6657 { "activeMC", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6658 dissect_h225_activeMC },
6659 { "answerCall", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6660 dissect_h225_answerCall },
6661 { "canMapAlias", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6662 dissect_h225_canMapAlias },
6663 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6664 dissect_h225_CallIdentifier },
6665 { "srcAlternatives", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6666 dissect_h225_srcAlternatives },
6667 { "destAlternatives", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6668 dissect_h225_destAlternatives },
6669 { "gatekeeperIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6670 dissect_h225_GatekeeperIdentifier },
6671 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6672 dissect_h225_tokens },
6673 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6674 dissect_h225_CryptoH323Token_sequence_of },
6675 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6677 { "transportQOS", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6678 dissect_h225_TransportQOS },
6679 { "willSupplyUUIEs", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6680 dissect_h225_willSupplyUUIEs },
6681 { "callLinkage", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6682 dissect_h225_CallLinkage },
6683 { "gatewayDataRate", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6684 dissect_h225_gatewayDataRate },
6685 { "capacity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6686 dissect_h225_CallCapacity },
6687 { "circuitInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6688 dissect_h225_CircuitInfo },
6689 { "desiredProtocols", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6690 dissect_h225_desiredProtocols },
6691 { "desiredTunnelledProtocol", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6692 dissect_h225_desiredTunnelledProtocol },
6693 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6694 dissect_h225_FeatureSet },
6695 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6696 dissect_h225_genericData },
6697 { "canMapSrcAlias", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6698 dissect_h225_canMapSrcAlias },
6699 { NULL, 0, 0, NULL }
6702 dissect_h225_AdmissionRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6704 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_AdmissionRequest, ett_h225_AdmissionRequest, AdmissionRequest_sequence);
6711 dissect_h225_nextSegmentRequested(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6713 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
6714 tree, hf_h225_nextSegmentRequested, 0, 65535,
6719 static per_sequence_t InfoRequest_sequence[] = {
6720 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6721 dissect_h225_RequestSeqNum },
6722 { "callReferenceValue", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6723 dissect_h225_CallReferenceValue },
6724 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6725 dissect_h225_nonStandardData },
6726 { "replyAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6727 dissect_h225_replyAddress },
6728 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6729 dissect_h225_CallIdentifier },
6730 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6731 dissect_h225_tokens },
6732 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6733 dissect_h225_CryptoH323Token_sequence_of },
6734 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6736 { "uuiesRequested", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6737 dissect_h225_UUIEsRequested },
6738 { "callLinkage", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6739 dissect_h225_CallLinkage },
6740 { "usageInfoRequested", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6741 dissect_h225_RasUsageInfoTypes },
6742 { "segmentedResponseSupported", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6743 dissect_h225_NULL },
6744 { "nextSegmentRequested", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6745 dissect_h225_nextSegmentRequested },
6746 { "capacityInfoRequested", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6747 dissect_h225_NULL },
6748 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6749 dissect_h225_genericData },
6750 { NULL, 0, 0, NULL }
6753 dissect_h225_InfoRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6755 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_InfoRequest, ett_h225_InfoRequest, InfoRequest_sequence);
6761 dissect_h225_delay(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6763 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
6764 tree, hf_h225_delay, 1, 65535,
6769 static per_sequence_t RequestInProgress_sequence[] = {
6770 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6771 dissect_h225_RequestSeqNum },
6772 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6773 dissect_h225_nonStandardData },
6774 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6775 dissect_h225_tokens },
6776 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6777 dissect_h225_CryptoH323Token_sequence_of },
6778 { "integrityCheckValue", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6780 { "delay", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6781 dissect_h225_delay },
6782 { NULL, 0, 0, NULL }
6785 dissect_h225_RequestInProgress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6787 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_RequestInProgress, ett_h225_RequestInProgress, RequestInProgress_sequence);
6792 dissect_h225_H248SignalsDescriptor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6794 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_H248SignalsDescriptor, -1, -1, NULL, NULL);
6800 dissect_h225_url(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6802 offset=dissect_per_IA5String(tvb, offset, pinfo, tree, hf_h225_url, 0, 512);
6807 static const value_string ServiceControlDescriptor_vals[] = {
6810 { 2, "nonStandard" },
6811 { 3, "callCreditServiceControl" },
6814 static per_choice_t ServiceControlDescriptor_choice[] = {
6815 { 0, "url", ASN1_EXTENSION_ROOT,
6817 { 1, "signal", ASN1_EXTENSION_ROOT,
6818 dissect_h225_H248SignalsDescriptor },
6819 { 2, "nonStandard", ASN1_EXTENSION_ROOT,
6820 dissect_h225_nonStandard },
6821 { 3, "callCreditServiceControl", ASN1_EXTENSION_ROOT,
6822 dissect_h225_CallCreditServiceControl },
6823 { 0, NULL, 0, NULL }
6826 dissect_h225_ServiceControlDescriptor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6828 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_ServiceControlDescriptor, ett_h225_ServiceControlDescriptor, ServiceControlDescriptor_choice, "ServiceControlDescriptor", NULL);
6835 dissect_h225_sessionId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6837 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
6838 tree, hf_h225_sessionId, 0, 255,
6843 static per_sequence_t ServiceControlSession_sequence[] = {
6844 { "sessionId", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6845 dissect_h225_sessionId },
6846 { "contents", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6847 dissect_h225_ServiceControlDescriptor },
6848 { "reason", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6849 dissect_h225_ServiceControlSession_reason },
6850 { NULL, 0, 0, NULL }
6853 dissect_h225_ServiceControlSession(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6855 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ServiceControlSession, ett_h225_ServiceControlSession, ServiceControlSession_sequence);
6862 dissect_h225_serviceControl(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6864 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_serviceControl, ett_h225_serviceControl, dissect_h225_ServiceControlSession);
6870 dissect_h225_alertingAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6872 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_alertingAddress, ett_h225_alertingAddress, dissect_h225_AliasAddress);
6877 static per_sequence_t AlertingUUIE_sequence[] = {
6878 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6879 dissect_h225_ProtocolIdentifier },
6880 { "destinationInfo", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6881 dissect_h225_destinationInfo },
6882 { "h245Address", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6883 dissect_h225_h245Address },
6884 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6885 dissect_h225_CallIdentifier },
6886 { "h245SecurityMode", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6887 dissect_h225_H245Security },
6888 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6889 dissect_h225_tokens },
6890 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6891 dissect_h225_CryptoH323Token_sequence_of },
6892 { "fastStart", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6893 dissect_h225_fastStart },
6894 { "multipleCalls", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6895 dissect_h225_multipleCalls },
6896 { "maintainConnection", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6897 dissect_h225_maintainConnection },
6898 { "alertingAddress", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6899 dissect_h225_alertingAddress },
6900 { "presentationIndicator", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6901 dissect_h225_PresentationIndicator },
6902 { "screeningIndicator", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6903 dissect_h225_ScreeningIndicator },
6904 { "fastConnectRefused", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6905 dissect_h225_NULL },
6906 { "serviceControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6907 dissect_h225_serviceControl },
6908 { "capacity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6909 dissect_h225_CallCapacity },
6910 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6911 dissect_h225_FeatureSet },
6912 { NULL, 0, 0, NULL }
6915 dissect_h225_AlertingUUIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6917 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_AlertingUUIE, ett_h225_AlertingUUIE, AlertingUUIE_sequence);
6922 dissect_h225_busyAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6924 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_busyAddress, ett_h225_busyAddress, dissect_h225_AliasAddress);
6929 static per_sequence_t ReleaseCompleteUUIE_sequence[] = {
6930 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6931 dissect_h225_ProtocolIdentifier },
6932 { "reason", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6933 dissect_h225_ReleaseCompleteReason },
6934 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6935 dissect_h225_CallIdentifier },
6936 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6937 dissect_h225_tokens },
6938 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6939 dissect_h225_CryptoH323Token_sequence_of },
6940 { "busyAddress", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6941 dissect_h225_busyAddress },
6942 { "presentationIndicator", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6943 dissect_h225_PresentationIndicator },
6944 { "screeningIndicator", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6945 dissect_h225_ScreeningIndicator },
6946 { "capacity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6947 dissect_h225_CallCapacity },
6948 { "serviceControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6949 dissect_h225_serviceControl },
6950 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6951 dissect_h225_FeatureSet },
6952 { NULL, 0, 0, NULL }
6955 dissect_h225_ReleaseCompleteUUIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6957 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ReleaseCompleteUUIE, ett_h225_ReleaseCompleteUUIE, ReleaseCompleteUUIE_sequence);
6962 dissect_h225_alternativeAliasAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
6964 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_alternativeAliasAddress, ett_h225_alternativeAliasAddress, dissect_h225_AliasAddress);
6968 static per_sequence_t FacilityUUIE_sequence[] = {
6969 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6970 dissect_h225_ProtocolIdentifier },
6971 { "alternativeAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6972 dissect_h225_alternativeAddress },
6973 { "alternativeAliasAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6974 dissect_h225_alternativeAliasAddress },
6975 { "conferenceID", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
6976 dissect_h225_conferenceID },
6977 { "reason", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6978 dissect_h225_FacilityReason },
6979 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6980 dissect_h225_CallIdentifier },
6981 { "destExtraCallInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6982 dissect_h225_destExtraCallInfo },
6983 { "remoteExtensionAddress", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6984 dissect_h225_RemoteExtensionAddress },
6985 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6986 dissect_h225_tokens },
6987 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6988 dissect_h225_CryptoH323Token_sequence_of },
6989 { "conferences", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6990 dissect_h225_conferences },
6991 { "h245Address", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6992 dissect_h225_h245Address },
6993 { "fastStart", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
6994 dissect_h225_fastStart },
6995 { "multipleCalls", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6996 dissect_h225_multipleCalls },
6997 { "maintainConnection", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
6998 dissect_h225_maintainConnection },
6999 { "fastConnectRefused", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7000 dissect_h225_NULL },
7001 { "serviceControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7002 dissect_h225_serviceControl },
7003 { "circuitInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7004 dissect_h225_CircuitInfo },
7005 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7006 dissect_h225_FeatureSet },
7007 { "destinationInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7008 dissect_h225_destinationInfo },
7009 { "h245SecurityMode", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7010 dissect_h225_H245Security },
7011 { NULL, 0, 0, NULL }
7014 dissect_h225_FacilityUUIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7016 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_FacilityUUIE, ett_h225_FacilityUUIE, FacilityUUIE_sequence);
7020 static per_sequence_t AdmissionReject_sequence[] = {
7021 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7022 dissect_h225_RequestSeqNum },
7023 { "rejectReason", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7024 dissect_h225_AdmissionRejectReason },
7025 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7026 dissect_h225_nonStandardData },
7027 { "altGKInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7028 dissect_h225_AltGKInfo },
7029 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7030 dissect_h225_tokens },
7031 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7032 dissect_h225_CryptoH323Token_sequence_of },
7033 { "callSignalAddress", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7034 dissect_h225_callSignalAddress },
7035 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7037 { "serviceControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7038 dissect_h225_serviceControl },
7039 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7040 dissect_h225_FeatureSet },
7041 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7042 dissect_h225_genericData },
7043 { NULL, 0, 0, NULL }
7046 dissect_h225_AdmissionReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7048 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_AdmissionReject, ett_h225_AdmissionReject, AdmissionReject_sequence);
7053 dissect_h225_hopCount(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7055 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
7056 tree, hf_h225_hopCount, 1, 31,
7063 dissect_h225_parallelH245Control_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7066 guint32 h245_offset=0;
7069 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, -1, -1, -1, &h245_offset, &h245_len);
7074 /* dont update the INFO or PROTOCOL fields of the summary */
7075 save_info=col_get_writable(pinfo->cinfo);
7076 col_set_writable(pinfo->cinfo, FALSE);
7077 h245_tvb = tvb_new_subset(tvb, h245_offset, h245_len, h245_len);
7078 call_dissector(h245dg_handle, h245_tvb, pinfo, tree);
7079 col_set_writable(pinfo->cinfo, save_info);
7086 dissect_h225_parallelH245Control(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7088 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_parallelH245Control, ett_h225_parallelH245Control, dissect_h225_parallelH245Control_item);
7093 dissect_h225_language(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7095 offset=dissect_per_IA5String(tvb, offset, pinfo, tree, hf_h225_language, 1, 32);
7100 dissect_h225_languages(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7102 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_languages, ett_h225_languages, dissect_h225_language);
7107 dissect_h225_mediaWaitForConnect(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7109 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_mediaWaitForConnect, NULL, NULL);
7114 dissect_h225_canOverlapSend(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7116 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_canOverlapSend, NULL, NULL);
7121 dissect_h225_sourceAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7123 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_sourceAddress, ett_h225_sourceAddress, dissect_h225_AliasAddress);
7128 dissect_h225_destinationAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7130 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_destinationAddress, ett_h225_destinationAddress, dissect_h225_AliasAddress);
7136 dissect_h225_destExtraCRV(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7138 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_destExtraCRV, ett_h225_destExtraCRV, dissect_h225_CallReferenceValue);
7143 dissect_h225_h245SecurityCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7145 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_h245SecurityCapability, ett_h225_h245SecurityCapability, dissect_h225_H245Security);
7150 dissect_h225_additionalSourceAddresses(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7152 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_additionalSourceAddresses, ett_h225_additionalSourceAddresses, dissect_h225_ExtendedAliasAddress);
7158 static per_sequence_t SetupUUIE_sequence[] = {
7159 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7160 dissect_h225_ProtocolIdentifier },
7161 { "h245Address", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7162 dissect_h225_h245Address },
7163 { "sourceAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7164 dissect_h225_sourceAddress },
7165 { "sourceInfo", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7166 dissect_h225_sourceInfo },
7167 { "destinationAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7168 dissect_h225_destinationAddress },
7169 { "destCallSignalAddress", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7170 dissect_h225_destCallSignalAddress },
7171 { "destExtraCallInfo", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7172 dissect_h225_destExtraCallInfo },
7173 { "destExtraCRV", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7174 dissect_h225_destExtraCRV },
7175 { "activeMC", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7176 dissect_h225_activeMC },
7177 { "conferenceID", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7178 dissect_h225_conferenceID },
7179 { "conferenceGoal", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7180 dissect_h225_conferenceGoal },
7181 { "callServices", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7182 dissect_h225_callServices },
7183 { "callType", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7184 dissect_h225_CallType },
7185 { "sourceCallSignalAddress", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7186 dissect_h225_sourceCallSignalAddress },
7187 { "RemoteExtensionAddress", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7188 dissect_h225_RemoteExtensionAddress },
7189 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7190 dissect_h225_CallIdentifier },
7191 { "h245SecurityCapability", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7192 dissect_h225_h245SecurityCapability },
7193 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7194 dissect_h225_tokens },
7195 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7196 dissect_h225_CryptoH323Token_sequence_of },
7197 { "fastStart", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7198 dissect_h225_fastStart },
7199 { "mediaWaitForConnect", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7200 dissect_h225_mediaWaitForConnect },
7201 { "canOverlapSend", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7202 dissect_h225_canOverlapSend },
7203 { "endpointIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7204 dissect_h225_EndpointIdentifier },
7205 { "multipleCalls", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7206 dissect_h225_multipleCalls },
7207 { "maintainConnection", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7208 dissect_h225_maintainConnection },
7209 { "connectionParameters", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7210 dissect_h225_connectionParameters },
7211 { "languages", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7212 dissect_h225_languages },
7213 { "presentationIndicator", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7214 dissect_h225_PresentationIndicator },
7215 { "screeningIndicator", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7216 dissect_h225_ScreeningIndicator },
7217 { "serviceControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7218 dissect_h225_serviceControl },
7219 { "symmetricOperationRequired", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7220 dissect_h225_NULL },
7221 { "capacity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7222 dissect_h225_CallCapacity },
7223 { "circuitInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7224 dissect_h225_CircuitInfo },
7225 { "desiredProtocols", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7226 dissect_h225_desiredProtocols },
7227 { "neededFeatures", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7228 dissect_h225_neededFeatures },
7229 { "desiredFeatures", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7230 dissect_h225_desiredFeatures },
7231 { "supportedFeatures", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7232 dissect_h225_supportedFeatures },
7233 { "parallelH245Control", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7234 dissect_h225_parallelH245Control },
7235 { "additionalSourceAddresses", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7236 dissect_h225_additionalSourceAddresses },
7237 { "hopCount", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7238 dissect_h225_hopCount },
7239 { NULL, 0, 0, NULL }
7242 dissect_h225_SetupUUIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7244 contains_faststart = FALSE;
7245 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_SetupUUIE, ett_h225_SetupUUIE, SetupUUIE_sequence);
7251 dissect_h225_connectedAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7253 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_connectedAddress, ett_h225_connectedAddress, dissect_h225_AliasAddress);
7257 static per_sequence_t ConnectUUIE_sequence[] = {
7258 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7259 dissect_h225_ProtocolIdentifier },
7260 { "h245Address", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7261 dissect_h225_h245Address },
7262 { "destinationInfo", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7263 dissect_h225_destinationInfo },
7264 { "conferenceID", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7265 dissect_h225_conferenceID },
7266 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7267 dissect_h225_CallIdentifier },
7268 { "h245SecurityMode", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7269 dissect_h225_H245Security },
7270 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7271 dissect_h225_tokens },
7272 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7273 dissect_h225_CryptoH323Token_sequence_of },
7274 { "fastStart", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7275 dissect_h225_fastStart },
7276 { "multipleCalls", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7277 dissect_h225_multipleCalls },
7278 { "maintainConnection", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7279 dissect_h225_maintainConnection },
7280 { "languages", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7281 dissect_h225_languages },
7282 { "connectedAddress", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7283 dissect_h225_connectedAddress },
7284 { "presentationIndicator", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7285 dissect_h225_PresentationIndicator },
7286 { "screeningIndicator", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7287 dissect_h225_ScreeningIndicator },
7288 { "fastConnectRefused", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7289 dissect_h225_NULL },
7290 { "serviceControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7291 dissect_h225_serviceControl },
7292 { "capacity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7293 dissect_h225_CallCapacity },
7294 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7295 dissect_h225_FeatureSet },
7296 { NULL, 0, 0, NULL }
7299 dissect_h225_ConnectUUIE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7301 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ConnectUUIE, ett_h225_ConnectUUIE, ConnectUUIE_sequence);
7306 const value_string h323_message_body_vals[] = {
7308 { 1, "callProceeding" },
7311 { 4, "information" },
7312 { 5, "releaseComplete" },
7317 { 10, "statusInquiry" },
7318 { 11, "setupAcknowledge" },
7322 static per_choice_t h323_message_body_choice[] = {
7323 { 0, "setup", ASN1_EXTENSION_ROOT,
7324 dissect_h225_SetupUUIE },
7325 { 1, "callProceeding", ASN1_EXTENSION_ROOT,
7326 dissect_h225_CallProceedingUUIE },
7327 { 2, "connect", ASN1_EXTENSION_ROOT,
7328 dissect_h225_ConnectUUIE },
7329 { 3, "alerting", ASN1_EXTENSION_ROOT,
7330 dissect_h225_AlertingUUIE },
7331 { 4, "information", ASN1_EXTENSION_ROOT,
7332 dissect_h225_InformationUUIE },
7333 { 5, "releaseComplete", ASN1_EXTENSION_ROOT,
7334 dissect_h225_ReleaseCompleteUUIE },
7335 { 6, "facility", ASN1_EXTENSION_ROOT,
7336 dissect_h225_FacilityUUIE },
7337 { 7, "progress", ASN1_NOT_EXTENSION_ROOT,
7338 dissect_h225_ProgressUUIE },
7339 { 8, "empty", ASN1_NOT_EXTENSION_ROOT,
7340 dissect_h225_NULL },
7341 { 9, "status", ASN1_NOT_EXTENSION_ROOT,
7342 dissect_h225_StatusUUIE },
7343 { 10, "statusInquiry", ASN1_NOT_EXTENSION_ROOT,
7344 dissect_h225_StatusInquiryUUIE },
7345 { 11, "setupAcknowledge", ASN1_NOT_EXTENSION_ROOT,
7346 dissect_h225_SetupAcknowledgeUUIE },
7347 { 12, "notify", ASN1_NOT_EXTENSION_ROOT,
7348 dissect_h225_NotifyUUIE },
7349 { 0, NULL, 0, NULL }
7352 dissect_h225_h323_message_body(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7356 contains_faststart = FALSE;
7358 offset=dissect_per_choice(tvb, offset, pinfo, tree, hf_h225_h323_message_body, ett_h225_h323_message_body, h323_message_body_choice, "h323_message_body", &(value));
7360 if (check_col(pinfo->cinfo, COL_INFO)){
7361 col_append_fstr(pinfo->cinfo, COL_INFO, "CS: %s ",
7362 val_to_str(value, h323_message_body_vals, "<unknown>"));
7365 if (h225_pi.msg_type == H225_CS) {
7366 /* Don't override msg_tag value from IRR */
7367 h225_pi.msg_tag = value;
7370 if (contains_faststart == TRUE )
7372 if (check_col(pinfo->cinfo, COL_INFO))
7374 col_append_str(pinfo->cinfo, COL_INFO, "OpenLogicalChannel " );
7378 col_set_fence(pinfo->cinfo,COL_INFO);
7384 dissect_h225_supportedProtocols(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7386 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_supportedProtocols, ett_h225_supportedProtocols, dissect_h225_SupportedProtocols);
7391 dissect_h225_modifiedSrcInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7393 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_modifiedSrcInfo, ett_h225_modifiedSrcInfo, dissect_h225_AliasAddress);
7398 static per_sequence_t LocationConfirm_sequence[] = {
7399 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7400 dissect_h225_RequestSeqNum },
7401 { "callSignalAddress2", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7402 dissect_h225_CallSignalAddress2 },
7403 { "rasAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7404 dissect_h225_rasAddress },
7405 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7406 dissect_h225_nonStandardData },
7407 { "DestinationInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7408 dissect_h225_DestinationInfo },
7409 { "destExtraCallInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7410 dissect_h225_destExtraCallInfo },
7411 { "destinationType", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7412 dissect_h225_destinationType },
7413 { "remoteExtensionAddress", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7414 dissect_h225_remoteExtensionAddress },
7415 { "alternateEndpoints", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7416 dissect_h225_alternateEndpoints },
7417 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7418 dissect_h225_tokens },
7419 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7420 dissect_h225_CryptoH323Token_sequence_of },
7421 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7423 { "alternateTransportAddresses", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7424 dissect_h225_AlternateTransportAddress },
7425 { "supportedProtocols", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7426 dissect_h225_supportedProtocols },
7427 { "multipleCalls", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7428 dissect_h225_multipleCalls },
7429 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7430 dissect_h225_FeatureSet },
7431 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7432 dissect_h225_genericData },
7433 { "circuitInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7434 dissect_h225_CircuitInfo },
7435 { "serviceControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7436 dissect_h225_serviceControl },
7437 { "modifiedSrcInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7438 dissect_h225_modifiedSrcInfo },
7439 { "bandWidth", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7440 dissect_h225_BandWidth },
7441 { NULL, 0, 0, NULL }
7444 dissect_h225_LocationConfirm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7446 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_LocationConfirm, ett_h225_LocationConfirm, LocationConfirm_sequence);
7450 static per_sequence_t LocationReject_sequence[] = {
7451 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7452 dissect_h225_RequestSeqNum },
7453 { "rejectReason", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7454 dissect_h225_LocationRejectReason },
7455 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7456 dissect_h225_nonStandardData },
7457 { "altGKInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7458 dissect_h225_AltGKInfo },
7459 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7460 dissect_h225_tokens },
7461 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7462 dissect_h225_CryptoH323Token_sequence_of },
7463 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7465 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7466 dissect_h225_FeatureSet },
7467 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7468 dissect_h225_genericData },
7469 { "serviceControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7470 dissect_h225_serviceControl },
7471 { NULL, 0, 0, NULL }
7474 dissect_h225_LocationReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7476 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_LocationReject, ett_h225_LocationReject, LocationReject_sequence);
7482 dissect_h225_answeredCall(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7484 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_answeredCall, NULL, NULL);
7488 static per_sequence_t callSpecific_sequence[] = {
7489 { "callIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7490 dissect_h225_CallIdentifier },
7491 { "conferenceID", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7492 dissect_h225_conferenceID },
7493 { "answeredCall", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7494 dissect_h225_answeredCall },
7495 { NULL, 0, 0, NULL }
7498 dissect_h225_callSpecific(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7500 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_callSpecific, ett_h225_callSpecific, callSpecific_sequence);
7504 static per_sequence_t ServiceControlIndication_sequence[] = {
7505 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7506 dissect_h225_RequestSeqNum },
7507 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7508 dissect_h225_nonStandardData },
7509 { "serviceControl", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7510 dissect_h225_serviceControl },
7511 { "endpointIdentifier", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7512 dissect_h225_EndpointIdentifier },
7513 { "callSpecific", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7514 dissect_h225_callSpecific },
7515 { "tokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7516 dissect_h225_tokens },
7517 { "cryptoTokens", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7518 dissect_h225_CryptoH323Token_sequence_of },
7519 { "integrityCheckValue", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7521 { "featureSet", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7522 dissect_h225_FeatureSet },
7523 { "genericData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7524 dissect_h225_genericData },
7525 { NULL, 0, 0, NULL }
7528 dissect_h225_ServiceControlIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7530 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_ServiceControlIndication, ett_h225_ServiceControlIndication, ServiceControlIndication_sequence);
7535 dissect_h225_alertingTime(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7537 return dissect_h235_TimeStamp(tvb, offset, pinfo, tree, hf_h225_alertingTime);
7541 dissect_h225_connectTime(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7543 return dissect_h235_TimeStamp(tvb, offset, pinfo, tree, hf_h225_connectTime);
7547 dissect_h225_endTime(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7549 return dissect_h235_TimeStamp(tvb, offset, pinfo, tree, hf_h225_endTimeStamp);
7554 dissect_h225_nonStandardUsageFields_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7556 offset = dissect_h225_NonStandardParameter(tvb, offset, pinfo, tree,
7557 hf_h225_nonStandardUsageFields_item);
7562 dissect_h225_nonStandardUsageFields(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7564 offset = dissect_per_sequence_of(tvb, offset, pinfo, tree,
7565 hf_h225_nonStandardUsageFields,
7566 ett_h225_T_nonStandardUsageFields, dissect_h225_nonStandardUsageFields_item);
7571 static per_sequence_t RasUsageInformation_sequence[] = {
7572 { "nonStandardUsageFields", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7573 dissect_h225_nonStandardUsageFields },
7574 { "alertingTime", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7575 dissect_h225_alertingTime },
7576 { "connectTime", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7577 dissect_h225_connectTime },
7578 { "endTime", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7579 dissect_h225_endTime },
7580 { NULL, 0, 0, NULL }
7583 dissect_h225_RasUsageInformation(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7585 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_RasUsageInformation, ett_h225_RasUsageInformation, RasUsageInformation_sequence);
7592 dissect_h225_TimeToLive(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7594 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
7595 tree, hf_h225_TimeToLive, 1, 4294967295UL,
7600 static int dissect_h225_authenticationMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7601 /* XXX - asn2eth.py should use "int" for offset arguments and return values
7603 return dissect_h235_AuthenticationMechanism(tvb, offset, pinfo, tree, hf_h225_authenticationMode);
7606 static per_sequence_t GatekeeperConfirm_sequence[] = {
7607 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7608 dissect_h225_RequestSeqNum },
7609 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7610 dissect_h225_ProtocolIdentifier },
7611 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7612 dissect_h225_nonStandardData },
7613 { "gatekeeperIdentifier", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7614 dissect_h225_GatekeeperIdentifier },
7615 { "rasAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7616 dissect_h225_rasAddress },
7617 { "alternateGatekeeper", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7618 dissect_h225_alternateGatekeeper },
7619 { "authenticationMode", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7620 dissect_h225_authenticationMode },
7621 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7622 dissect_h225_tokens },
7623 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7624 dissect_h225_CryptoH323Token_sequence_of },
7625 { "algorithmOID", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7626 dissect_h225_algorithmOID },
7627 { "integrity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7628 dissect_h225_integrity },
7629 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7631 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7632 dissect_h225_FeatureSet },
7633 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7634 dissect_h225_genericData },
7635 { NULL, 0, 0, NULL }
7638 dissect_h225_GatekeeperConfirm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7640 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_GatekeeperConfirm, ett_h225_GatekeeperConfirm, GatekeeperConfirm_sequence);
7647 dissect_h225_discoveryComplete(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7649 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_discoveryComplete, NULL, NULL);
7655 dissect_h225_keepAlive(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7657 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_keepAlive, NULL, NULL);
7663 dissect_h225_H248PackagesDescriptor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7665 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_H248PackagesDescriptor, -1, -1, NULL, NULL);
7670 dissect_h225_supportedH248Packages(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7672 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_supportedH248Packages, ett_h225_supportedH248Packages, dissect_h225_H248PackagesDescriptor);
7677 static per_sequence_t RegistrationRequest_sequence[] = {
7678 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7679 dissect_h225_RequestSeqNum },
7680 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7681 dissect_h225_ProtocolIdentifier },
7682 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7683 dissect_h225_nonStandardData },
7684 { "discoveryComplete", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7685 dissect_h225_discoveryComplete },
7686 { "callSignalAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7687 dissect_h225_callSignalAddress },
7688 { "rasAddress_sequence", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7689 dissect_h225_rasAddress_sequence },
7690 { "terminalType", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7691 dissect_h225_terminalType },
7692 { "terminalAlias", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7693 dissect_h225_terminalAlias },
7694 { "gatekeeperIdentifier", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7695 dissect_h225_GatekeeperIdentifier },
7696 { "endpointVendor", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7697 dissect_h225_VendorIdentifier },
7698 { "alternateEndpoints", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7699 dissect_h225_alternateEndpoints },
7700 { "timeToLive", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7701 dissect_h225_TimeToLive },
7702 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7703 dissect_h225_tokens },
7704 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7705 dissect_h225_CryptoH323Token_sequence_of },
7706 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7708 { "keepAlive", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7709 dissect_h225_keepAlive },
7710 { "endpointIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7711 dissect_h225_EndpointIdentifier },
7712 { "willSupplyUUIEs", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7713 dissect_h225_willSupplyUUIEs },
7714 { "maintainConnection", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7715 dissect_h225_maintainConnection },
7716 { "alternateTransportAddresses", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7717 dissect_h225_AlternateTransportAddress },
7718 { "additiveRegistration", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7719 dissect_h225_NULL },
7720 { "terminalAliasPattern", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7721 dissect_h225_terminalAliasPattern },
7722 { "supportsAltGK", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7723 dissect_h225_NULL },
7724 { "usageReportingCapability", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7725 dissect_h225_usageReportingCapability },
7726 { "multipleCalls", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7727 dissect_h225_multipleCalls },
7728 { "supportedH248Packages", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7729 dissect_h225_supportedH248Packages },
7730 { "callCreditCapability", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7731 dissect_h225_CallCreditCapability },
7732 { "capacityReportingCapability", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7733 dissect_h225_CapacityReportingCapability },
7734 { "capacity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7735 dissect_h225_CallCapacity },
7736 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7737 dissect_h225_FeatureSet },
7738 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7739 dissect_h225_genericData },
7740 { "restart", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7741 dissect_h225_NULL },
7742 { "supportsACFSequences", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7743 dissect_h225_NULL },
7744 { NULL, 0, 0, NULL }
7747 dissect_h225_RegistrationRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7749 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_RegistrationRequest, ett_h225_RegistrationRequest, RegistrationRequest_sequence);
7754 static per_sequence_t DisengageConfirm_sequence[] = {
7755 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7756 dissect_h225_RequestSeqNum },
7757 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7758 dissect_h225_nonStandardData },
7759 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7760 dissect_h225_tokens },
7761 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7762 dissect_h225_CryptoH323Token_sequence_of },
7763 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7765 { "capacity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7766 dissect_h225_CallCapacity },
7767 { "circuitInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7768 dissect_h225_CircuitInfo },
7769 { "usageInformation", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7770 dissect_h225_RasUsageInformation },
7771 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7772 dissect_h225_genericData },
7773 { NULL, 0, 0, NULL }
7776 dissect_h225_DisengageConfirm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7778 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_DisengageConfirm, ett_h225_DisengageConfirm, DisengageConfirm_sequence);
7784 dissect_h225_irrFrequency(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7786 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
7787 tree, hf_h225_irrFrequency, 1, 65535,
7793 dissect_h225_willRespondToIRR(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7795 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_willRespondToIRR, NULL, NULL);
7801 dissect_h225_usageSpec(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7803 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_usageSpec, ett_h225_usageSpec, dissect_h225_RasUsageSpecification);
7807 static per_sequence_t AdmissionConfirm_sequence[] = {
7808 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7809 dissect_h225_RequestSeqNum },
7810 { "bandWidth", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7811 dissect_h225_BandWidth },
7812 { "callModel", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7813 dissect_h225_CallModel },
7814 { "destCallSignalAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7815 dissect_h225_destCallSignalAddress },
7816 { "irrFrequency", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7817 dissect_h225_irrFrequency },
7818 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7819 dissect_h225_nonStandardData },
7820 { "DestinationInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7821 dissect_h225_DestinationInfo },
7822 { "destExtraCallInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7823 dissect_h225_destExtraCallInfo },
7824 { "destinationType", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7825 dissect_h225_destinationType },
7826 { "remoteExtensionAddress", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7827 dissect_h225_remoteExtensionAddress },
7828 { "alternateEndpoints", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7829 dissect_h225_alternateEndpoints },
7830 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7831 dissect_h225_tokens },
7832 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7833 dissect_h225_CryptoH323Token_sequence_of },
7834 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7836 { "transportQOS", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7837 dissect_h225_TransportQOS },
7838 { "willRespondToIRR", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7839 dissect_h225_willRespondToIRR },
7840 { "uuiesRequested", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7841 dissect_h225_UUIEsRequested },
7842 { "languages", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7843 dissect_h225_languages },
7844 { "alternateTransportAddresses", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7845 dissect_h225_AlternateTransportAddress },
7846 { "useSpecifiedTransport", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7847 dissect_h225_UseSpecifiedTransport },
7848 { "circuitInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7849 dissect_h225_CircuitInfo },
7850 { "usageSpec", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7851 dissect_h225_usageSpec },
7852 { "supportedProtocols", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7853 dissect_h225_supportedProtocols },
7854 { "serviceControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7855 dissect_h225_serviceControl },
7856 { "multipleCalls", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7857 dissect_h225_multipleCalls },
7858 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7859 dissect_h225_FeatureSet },
7860 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7861 dissect_h225_genericData },
7862 { "modifiedSrcInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7863 dissect_h225_modifiedSrcInfo },
7864 { NULL, 0, 0, NULL }
7867 dissect_h225_AdmissionConfirm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7869 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_AdmissionConfirm, ett_h225_AdmissionConfirm, AdmissionConfirm_sequence);
7874 static per_sequence_t DisengageRequest_sequence[] = {
7875 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7876 dissect_h225_RequestSeqNum },
7877 { "endpointIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7878 dissect_h225_EndpointIdentifier },
7879 { "conferenceID", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7880 dissect_h225_conferenceID },
7881 { "callReferenceValue", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7882 dissect_h225_CallReferenceValue },
7883 { "disengageReason", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7884 dissect_h225_DisengageReason },
7885 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7886 dissect_h225_nonStandardData },
7887 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7888 dissect_h225_CallIdentifier },
7889 { "gatekeeperIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7890 dissect_h225_GatekeeperIdentifier },
7891 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7892 dissect_h225_tokens },
7893 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7894 dissect_h225_CryptoH323Token_sequence_of },
7895 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7897 { "answeredCall", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7898 dissect_h225_answeredCall },
7899 { "callLinkage", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7900 dissect_h225_CallLinkage },
7901 { "capacity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7902 dissect_h225_CallCapacity },
7903 { "circuitInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7904 dissect_h225_CircuitInfo },
7905 { "usageInformation", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7906 dissect_h225_RasUsageInformation },
7907 { "terminationCause", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7908 dissect_h225_CallTerminationCause },
7909 { "serviceControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7910 dissect_h225_serviceControl },
7911 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7912 dissect_h225_genericData },
7913 { NULL, 0, 0, NULL }
7916 dissect_h225_DisengageRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7918 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_DisengageRequest, ett_h225_DisengageRequest, DisengageRequest_sequence);
7924 dissect_h225_SourceInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7926 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_SourceInfo, ett_h225_SourceInfo, dissect_h225_AliasAddress);
7931 dissect_h225_hopCount255(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7933 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
7934 tree, hf_h225_hopCount255, 1, 255,
7940 dissect_h225_sourceEndpointInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7942 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_sourceEndpointInfo, ett_h225_sourceEndpointInfo, dissect_h225_AliasAddress);
7946 static per_sequence_t LocationRequest_sequence[] = {
7947 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7948 dissect_h225_RequestSeqNum },
7949 { "endpointIdentifier", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7950 dissect_h225_EndpointIdentifier },
7951 { "DestinationInfo", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7952 dissect_h225_DestinationInfo },
7953 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
7954 dissect_h225_nonStandardData },
7955 { "replyAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7956 dissect_h225_replyAddress },
7957 { "SourceInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7958 dissect_h225_SourceInfo },
7959 { "canMapAlias", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7960 dissect_h225_canMapAlias },
7961 { "gatekeeperIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7962 dissect_h225_GatekeeperIdentifier },
7963 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7964 dissect_h225_tokens },
7965 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7966 dissect_h225_CryptoH323Token_sequence_of },
7967 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7969 { "desiredProtocols", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7970 dissect_h225_desiredProtocols },
7971 { "desiredTunnelledProtocol", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7972 dissect_h225_desiredTunnelledProtocol },
7973 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7974 dissect_h225_FeatureSet },
7975 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7976 dissect_h225_genericData },
7977 { "hopCount255", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7978 dissect_h225_hopCount255 },
7979 { "circuitInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7980 dissect_h225_CircuitInfo },
7981 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7982 dissect_h225_CallIdentifier },
7983 { "bandWidth", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7984 dissect_h225_BandWidth },
7985 { "sourceEndpointInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
7986 dissect_h225_sourceEndpointInfo },
7987 { "canMapSrcAlias", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
7988 dissect_h225_canMapSrcAlias },
7989 { NULL, 0, 0, NULL }
7992 dissect_h225_LocationRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
7994 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_LocationRequest, ett_h225_LocationRequest, LocationRequest_sequence);
7999 dissect_h225_bandwidthDetails(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8001 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_bandwidthDetails, ett_h225_bandwidthDetails, dissect_h225_BandwidthDetails);
8005 static per_sequence_t BandwidthRequest_sequence[] = {
8006 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8007 dissect_h225_RequestSeqNum },
8008 { "endpointIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8009 dissect_h225_EndpointIdentifier },
8010 { "conferenceID", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8011 dissect_h225_conferenceID },
8012 { "callReferenceValue", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8013 dissect_h225_CallReferenceValue },
8014 { "callType", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8015 dissect_h225_CallType },
8016 { "bandWidth", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8017 dissect_h225_BandWidth },
8018 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8019 dissect_h225_nonStandardData },
8020 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8021 dissect_h225_CallIdentifier },
8022 { "gatekeeperIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8023 dissect_h225_GatekeeperIdentifier },
8024 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8025 dissect_h225_tokens },
8026 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8027 dissect_h225_CryptoH323Token_sequence_of },
8028 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8030 { "answeredCall", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8031 dissect_h225_answeredCall },
8032 { "callLinkage", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8033 dissect_h225_CallLinkage },
8034 { "capacity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8035 dissect_h225_CallCapacity },
8036 { "usageInformation", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8037 dissect_h225_RasUsageInformation },
8038 { "bandwidthDetails", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8039 dissect_h225_bandwidthDetails },
8040 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8041 dissect_h225_genericData },
8042 { NULL, 0, 0, NULL }
8045 dissect_h225_BandwidthRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8047 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_BandwidthRequest, ett_h225_BandwidthRequest, BandwidthRequest_sequence);
8053 dissect_h225_admissionConfirmSequence(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8055 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_admissionConfirmSequence, ett_h225_admissionConfirmSequence, dissect_h225_AdmissionConfirm);
8061 dissect_h225_messageContent_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8063 guint32 value_offset, value_len;
8066 offset = dissect_per_octet_string(tvb, offset, pinfo, tree,
8067 hf_h225_messageContent_item, -1, -1,
8068 &value_offset, &value_len);
8070 if (value_len > 0) {
8071 next_tvb = tvb_new_subset(tvb, value_offset, value_len, value_len);
8072 call_dissector((tp_handle)?tp_handle:data_handle, next_tvb, pinfo, tree);
8079 dissect_h225_messageContent(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8081 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_messageContent, ett_h225_messageContent, dissect_h225_messageContent_item);
8087 dissect_h225_h4501SupplementaryService_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8089 tvbuff_t *h4501_tvb;
8090 guint32 h4501_offset=0;
8091 guint32 h4501_len=0;
8093 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, -1, -1, -1, &h4501_offset, &h4501_len);
8096 h4501_tvb = tvb_new_subset(tvb, h4501_offset, h4501_len, h4501_len);
8097 call_dissector(h4501_handle, h4501_tvb, pinfo, tree);
8103 dissect_h225_h4501SupplementaryService(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8105 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_h4501SupplementaryService, ett_h225_h4501SupplementaryService, dissect_h225_h4501SupplementaryService_item);
8110 static per_sequence_t tunnelledSignallingMessage_sequence[] = {
8111 { "tunnelledProtocolID", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8112 dissect_h225_TunnelledProtocol },
8113 { "messageContent", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8114 dissect_h225_messageContent },
8115 { "tunnellingRequired", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8116 dissect_h225_NULL },
8117 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8118 dissect_h225_nonStandardData },
8119 { NULL, 0, 0, NULL }
8122 dissect_h225_tunnelledSignallingMessage(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8125 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_tunnelledSignallingMessage, ett_h225_tunnelledSignallingMessage, tunnelledSignallingMessage_sequence);
8131 dissect_h225_h245Tunneling(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8133 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_h245Tunneling, NULL, NULL);
8139 dissect_h225_h245Control_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8142 guint32 h245_offset=0;
8145 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, -1, -1, -1, &h245_offset, &h245_len);
8148 h245_tvb = tvb_new_subset(tvb, h245_offset, h245_len, h245_len);
8149 call_dissector(h245dg_handle, h245_tvb, pinfo, tree);
8157 dissect_h225_h245Control(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8159 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_h245Control, ett_h225_h245Control, dissect_h225_h245Control_item);
8165 dissect_h225_nonStandardControl_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8167 offset = dissect_h225_NonStandardParameter(tvb, offset, pinfo, tree,
8168 hf_h225_nonStandardControl_item);
8173 dissect_h225_nonStandardControl(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8175 offset = dissect_per_sequence_of(tvb, offset, pinfo, tree,
8176 hf_h225_nonStandardControl,
8177 ett_h225_T_nonStandardControl, dissect_h225_nonStandardControl_item);
8182 static per_sequence_t H323_UU_PDU_sequence[] = {
8183 { "h323_message_body", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8184 dissect_h225_h323_message_body },
8185 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8186 dissect_h225_nonStandardData },
8187 { "h4501SupplementaryService", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8188 dissect_h225_h4501SupplementaryService },
8189 { "h245Tunneling", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8190 dissect_h225_h245Tunneling },
8191 { "h245Control", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8192 dissect_h225_h245Control },
8193 { "nonStandardControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8194 dissect_h225_nonStandardControl },
8195 { "callLinkage", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8196 dissect_h225_CallLinkage },
8197 { "tunnelledSignallingMessage", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8198 dissect_h225_tunnelledSignallingMessage },
8199 { "provisionalRespToH245Tunneling", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8200 dissect_h225_NULL },
8201 { "stimulusControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8202 dissect_h225_StimulusControl },
8203 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8204 dissect_h225_genericData },
8205 { NULL, 0, 0, NULL }
8208 dissect_h225_H323_UU_PDU(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8210 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_H323_UU_PDU, ett_h225_H323_UU_PDU, H323_UU_PDU_sequence);
8216 dissect_h225_makeCall(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8218 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_makeCall, NULL, NULL);
8223 dissect_h225_useGKCallSignalAddressToMakeCall(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8225 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_useGKCallSignalAddressToMakeCall, NULL, NULL);
8231 dissect_h225_useGKCallSignalAddressToAnswer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8233 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_useGKCallSignalAddressToAnswer, NULL, NULL);
8237 static per_sequence_t preGrantedARQ_sequence[] = {
8238 { "makeCall", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8239 dissect_h225_makeCall },
8240 { "useGKCallSignalAddressToMakeCall", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8241 dissect_h225_useGKCallSignalAddressToMakeCall },
8242 { "answerCall", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8243 dissect_h225_answerCall },
8244 { "useGKCallSignalAddressToAnswer", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8245 dissect_h225_useGKCallSignalAddressToAnswer },
8246 { "irrFrequencyInCall", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8247 dissect_h225_irrFrequency },
8248 { "totalBandwidthRestriction", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8249 dissect_h225_totalBandwidthRestriction },
8250 { "alternateTransportAddresses", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8251 dissect_h225_AlternateTransportAddress },
8252 { "useSpecifiedTransport", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8253 dissect_h225_UseSpecifiedTransport },
8254 { NULL, 0, 0, NULL }
8257 dissect_h225_preGrantedARQ(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8259 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_preGrantedARQ, ett_h225_preGrantedARQ, preGrantedARQ_sequence);
8265 static per_sequence_t RegistrationConfirm_sequence[] = {
8266 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8267 dissect_h225_RequestSeqNum },
8268 { "protocolIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8269 dissect_h225_ProtocolIdentifier },
8270 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8271 dissect_h225_nonStandardData },
8272 { "callSignalAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8273 dissect_h225_callSignalAddress },
8274 { "terminalAlias", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8275 dissect_h225_terminalAlias },
8276 { "gatekeeperIdentifier", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8277 dissect_h225_GatekeeperIdentifier },
8278 { "endpointIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8279 dissect_h225_EndpointIdentifier },
8280 { "alternateGatekeeper", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8281 dissect_h225_alternateGatekeeper },
8282 { "timeToLive", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8283 dissect_h225_TimeToLive },
8284 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8285 dissect_h225_tokens },
8286 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8287 dissect_h225_CryptoH323Token_sequence_of },
8288 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8290 { "willRespondToIRR", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8291 dissect_h225_willRespondToIRR },
8292 { "preGrantedARQ", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8293 dissect_h225_preGrantedARQ },
8294 { "maintainConnection", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8295 dissect_h225_maintainConnection },
8296 { "serviceControl", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8297 dissect_h225_serviceControl },
8298 { "supportsAdditiveRegistration", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8299 dissect_h225_NULL },
8300 { "terminalAliasPattern", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8301 dissect_h225_terminalAliasPattern },
8302 { "supportedPrefixes", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8303 dissect_h225_SupportedPrefixes },
8304 { "usageSpec", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8305 dissect_h225_usageSpec },
8306 { "featureServerAlias", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8307 dissect_h225_featureServerAlias },
8308 { "capacityReportingSpec", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8309 dissect_h225_CapacityReportingSpecification },
8310 { "featureSet", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8311 dissect_h225_FeatureSet },
8312 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8313 dissect_h225_genericData },
8314 { NULL, 0, 0, NULL }
8317 dissect_h225_RegistrationConfirm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8319 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_RegistrationConfirm, ett_h225_RegistrationConfirm, RegistrationConfirm_sequence);
8325 dissect_h225_sent(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8327 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_sent, NULL, NULL);
8331 static per_sequence_t pdu_item_sequence[] = {
8332 { "h323pdu", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
8333 dissect_h225_H323_UU_PDU },
8334 { "sent", ASN1_NO_EXTENSIONS, ASN1_NOT_OPTIONAL,
8335 dissect_h225_sent },
8336 { NULL, 0, 0, NULL }
8339 dissect_h225_pdu_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8343 /* dont update the INFO or PROTOCOL fields of the summary */
8344 save_info=col_get_writable(pinfo->cinfo);
8345 col_set_writable(pinfo->cinfo, FALSE);
8346 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_pdu_item, ett_h225_pdu_item, pdu_item_sequence);
8347 col_set_writable(pinfo->cinfo, save_info);
8353 dissect_h225_pdu(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8355 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_pdu, ett_h225_pdu, dissect_h225_pdu_item);
8362 dissect_h225_originator(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8364 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_originator, NULL, NULL);
8369 dissect_h225_audio(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8371 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_audio, ett_h225_audio, dissect_h225_RTPSession);
8376 dissect_h225_video(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8378 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_video, ett_h225_video, dissect_h225_RTPSession);
8383 dissect_h225_data(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8385 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_data, ett_h225_data, dissect_h225_RTPSession);
8391 dissect_h225_substituteConfIDs(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8393 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_substituteConfIDs, ett_h225_substituteConfIDs, dissect_h225_conferenceID);
8398 static per_sequence_t perCallInfo_item_sequence[] = {
8399 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8400 dissect_h225_nonStandardData },
8401 { "callReferenceValue", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8402 dissect_h225_CallReferenceValue },
8403 { "conferenceID", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8404 dissect_h225_conferenceID },
8405 { "originator", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8406 dissect_h225_originator },
8407 { "audio", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8408 dissect_h225_audio },
8409 { "video", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8410 dissect_h225_video },
8411 { "data", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8412 dissect_h225_data },
8413 { "h245", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8414 dissect_h225_h245 },
8415 { "callSignaling", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8416 dissect_h225_callSignaling },
8417 { "callType", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8418 dissect_h225_CallType },
8419 { "bandWidth", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8420 dissect_h225_BandWidth },
8421 { "callModel", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8422 dissect_h225_CallModel },
8423 { "callIdentifier", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8424 dissect_h225_CallIdentifier },
8425 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8426 dissect_h225_tokens },
8427 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8428 dissect_h225_CryptoH323Token_sequence_of },
8429 { "substituteConfIDs", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8430 dissect_h225_substituteConfIDs },
8431 { "pdu", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8433 { "callLinkage", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8434 dissect_h225_CallLinkage },
8435 { "usageInformation", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8436 dissect_h225_RasUsageInformation },
8437 { "circuitInfo", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8438 dissect_h225_CircuitInfo },
8439 { NULL, 0, 0, NULL }
8442 dissect_h225_perCallInfo_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8444 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_perCallInfo_item, ett_h225_perCallInfo_item, perCallInfo_item_sequence);
8452 dissect_h225_perCallInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8454 offset=dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_h225_perCallInfo, ett_h225_perCallInfo, dissect_h225_perCallInfo_item);
8461 dissect_h225_needResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8463 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_needResponse, NULL, NULL);
8469 dissect_h225_unsolicited(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8471 offset=dissect_per_boolean(tvb, offset, pinfo, tree, hf_h225_unsolicited, NULL, NULL);
8475 static per_sequence_t InfoRequestResponse_sequence[] = {
8476 { "nonStandardData", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8477 dissect_h225_nonStandardData },
8478 { "requestSeqNum", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8479 dissect_h225_RequestSeqNum },
8480 { "endpointType", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8481 dissect_h225_EndPointType },
8482 { "endpointIdentifier", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8483 dissect_h225_EndpointIdentifier },
8484 { "rasAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8485 dissect_h225_rasAddress },
8486 { "callSignalAddress", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8487 dissect_h225_callSignalAddress },
8488 { "endpointAlias", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8489 dissect_h225_endpointAlias },
8490 { "perCallInfo", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8491 dissect_h225_perCallInfo },
8492 { "tokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8493 dissect_h225_tokens },
8494 { "cryptoTokens", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8495 dissect_h225_CryptoH323Token_sequence_of },
8496 { "integrityCheckValue", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8498 { "needResponse", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8499 dissect_h225_needResponse },
8500 { "capacity", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8501 dissect_h225_CallCapacity },
8502 { "irrStatus", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8503 dissect_h225_InfoRequestResponseStatus },
8504 { "unsolicited", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8505 dissect_h225_unsolicited },
8506 { "genericData", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL,
8507 dissect_h225_genericData },
8508 { NULL, 0, 0, NULL }
8511 dissect_h225_InfoRequestResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8513 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_InfoRequestResponse, ett_h225_InfoRequestResponse, InfoRequestResponse_sequence);
8520 dissect_h225_protocol_discriminator(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8522 offset=dissect_per_constrained_integer(tvb, offset, pinfo,
8523 tree, hf_h225_protocol_discriminator, 0, 255,
8529 dissect_h225_user_information(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8531 offset=dissect_per_octet_string(tvb, offset, pinfo, tree, hf_h225_user_information, 1, 131, NULL, NULL);
8535 static per_sequence_t user_data_sequence[] = {
8536 { "protocol-discriminator", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8537 dissect_h225_protocol_discriminator },
8538 { "user-information", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8539 dissect_h225_user_information },
8540 { NULL, 0, 0, NULL }
8543 dissect_h225_user_data(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
8545 offset=dissect_per_sequence(tvb, offset, pinfo, tree, hf_h225_user_data, ett_h225_user_data, user_data_sequence);
8552 const value_string RasMessage_vals[] = {
8553 { 0, "gatekeeperRequest" },
8554 { 1, "gatekeeperConfirm" },
8555 { 2, "gatekeeperReject" },
8556 { 3, "registrationRequest" },
8557 { 4, "registrationConfirm" },
8558 { 5, "registrationReject" },
8559 { 6, "unregistrationRequest" },
8560 { 7, "unregistrationConfirm" },
8561 { 8, "unregistrationReject" },
8562 { 9, "admissionRequest" },
8563 {10, "admissionConfirm" },
8564 {11, "admissionReject" },
8565 {12, "bandwidthRequest" },
8566 {13, "bandwidthConfirm" },
8567 {14, "bandwidthReject" },
8568 {15, "disengageRequest" },
8569 {16, "disengageConfirm" },
8570 {17, "disengageReject" },
8571 {18, "locationRequest" },
8572 {19, "locationConfirm" },
8573 {20, "locationReject" },
8574 {21, "infoRequest" },
8575 {22, "infoRequestResponse" },
8576 {23, "nonStandardMessage" },
8577 {24, "unknownMessageResponse" },
8578 {25, "requestInProgress" },
8579 {26, "resourcesAvailableIndicate" },
8580 {27, "resourcesAvailableConfirm" },
8581 {28, "infoRequestAck" },
8582 {29, "infoRequestNak" },
8583 {30, "serviceControlIndication" },
8584 {31, "serviceControlResponse" },
8585 {32, "admissionConfirmSequence" },
8588 static per_choice_t RasMessage_choice[] = {
8589 { 0, "gatekeeperRequest", ASN1_EXTENSION_ROOT,
8590 dissect_h225_GatekeeperRequest },
8591 { 1, "gatekeeperConfirm", ASN1_EXTENSION_ROOT,
8592 dissect_h225_GatekeeperConfirm },
8593 { 2, "gatekeeperReject", ASN1_EXTENSION_ROOT,
8594 dissect_h225_GatekeeperReject },
8595 { 3, "registrationRequest", ASN1_EXTENSION_ROOT,
8596 dissect_h225_RegistrationRequest },
8597 { 4, "registrationConfirm", ASN1_EXTENSION_ROOT,
8598 dissect_h225_RegistrationConfirm },
8599 { 5, "registrationReject", ASN1_EXTENSION_ROOT,
8600 dissect_h225_RegistrationReject },
8601 { 6, "unregistrationRequest", ASN1_EXTENSION_ROOT,
8602 dissect_h225_UnregistrationRequest },
8603 { 7, "unregistrationConfirm", ASN1_EXTENSION_ROOT,
8604 dissect_h225_UnregistrationConfirm },
8605 { 8, "unregistrationReject", ASN1_EXTENSION_ROOT,
8606 dissect_h225_UnregistrationReject },
8607 { 9, "admissionRequest", ASN1_EXTENSION_ROOT,
8608 dissect_h225_AdmissionRequest },
8609 {10, "admissionConfirm", ASN1_EXTENSION_ROOT,
8610 dissect_h225_AdmissionConfirm },
8611 {11, "admissionReject", ASN1_EXTENSION_ROOT,
8612 dissect_h225_AdmissionReject },
8613 {12, "bandwidthRequest", ASN1_EXTENSION_ROOT,
8614 dissect_h225_BandwidthRequest },
8615 {13, "bandwidthConfirm", ASN1_EXTENSION_ROOT,
8616 dissect_h225_BandwidthConfirm },
8617 {14, "bandwidthReject", ASN1_EXTENSION_ROOT,
8618 dissect_h225_BandwidthReject },
8619 {15, "disengageRequest", ASN1_EXTENSION_ROOT,
8620 dissect_h225_DisengageRequest },
8621 {16, "disengageConfirm", ASN1_EXTENSION_ROOT,
8622 dissect_h225_DisengageConfirm },
8623 {17, "disengageReject", ASN1_EXTENSION_ROOT,
8624 dissect_h225_DisengageReject },
8625 {18, "locationRequest", ASN1_EXTENSION_ROOT,
8626 dissect_h225_LocationRequest },
8627 {19, "locationConfirm", ASN1_EXTENSION_ROOT,
8628 dissect_h225_LocationConfirm },
8629 {20, "locationReject", ASN1_EXTENSION_ROOT,
8630 dissect_h225_LocationReject },
8631 {21, "infoRequest", ASN1_EXTENSION_ROOT,
8632 dissect_h225_InfoRequest },
8633 {22, "infoRequestResponse", ASN1_EXTENSION_ROOT,
8634 dissect_h225_InfoRequestResponse },
8635 {23, "nonStandardMessage", ASN1_EXTENSION_ROOT,
8636 dissect_h225_NonStandardMessage },
8637 {24, "unknownMessageResponse", ASN1_EXTENSION_ROOT,
8638 dissect_h225_UnknownMessageResponse },
8639 {25, "requestInProgress", ASN1_NOT_EXTENSION_ROOT,
8640 dissect_h225_RequestInProgress },
8641 {26, "resourcesAvailableIndicate", ASN1_NOT_EXTENSION_ROOT,
8642 dissect_h225_ResourcesAvailableIndicate },
8643 {27, "resourcesAvailableConfirm", ASN1_NOT_EXTENSION_ROOT,
8644 dissect_h225_ResourcesAvailableConfirm },
8645 {28, "infoRequestAck", ASN1_NOT_EXTENSION_ROOT,
8646 dissect_h225_InfoRequestAck },
8647 {29, "infoRequestNak", ASN1_NOT_EXTENSION_ROOT,
8648 dissect_h225_InfoRequestNak },
8649 {30, "serviceControlIndication", ASN1_NOT_EXTENSION_ROOT,
8650 dissect_h225_ServiceControlIndication },
8651 {31, "serviceControlResponse", ASN1_NOT_EXTENSION_ROOT,
8652 dissect_h225_ServiceControlResponse },
8653 {32, "admissionConfirmSequence", ASN1_NOT_EXTENSION_ROOT,
8654 dissect_h225_admissionConfirmSequence },
8655 { 0, NULL, 0, NULL }
8658 dissect_h225_RasMessage(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
8665 /* Init struct for collecting h225_packet_info */
8666 reset_h225_packet_info(&(h225_pi));
8667 h225_pi.msg_type = H225_RAS;
8669 if (check_col(pinfo->cinfo, COL_PROTOCOL)){
8670 col_set_str(pinfo->cinfo, COL_PROTOCOL, "H.225.0");
8673 it=proto_tree_add_protocol_format(tree, proto_h225, tvb, 0, tvb_length(tvb), "H.225.0 RAS");
8674 tr=proto_item_add_subtree(it, ett_h225);
8676 offset=dissect_per_choice(tvb, offset, pinfo, tr, hf_h225_RasMessage, ett_h225_RasMessage, RasMessage_choice, "RasMessage", &value);
8678 if (check_col(pinfo->cinfo, COL_INFO)){
8679 col_add_fstr(pinfo->cinfo, COL_INFO, "RAS: %s ",
8680 val_to_str(value, RasMessage_vals, "<unknown>"));
8682 h225_pi.msg_tag = value;
8684 ras_call_matching(tvb, pinfo, tr, &(h225_pi));
8686 tap_queue_packet(h225_tap, pinfo, &h225_pi);
8694 static per_sequence_t H323_UserInformation_sequence[] = {
8695 { "h323_uu_pdu", ASN1_EXTENSION_ROOT, ASN1_NOT_OPTIONAL,
8696 dissect_h225_H323_UU_PDU },
8697 { "user_data", ASN1_EXTENSION_ROOT, ASN1_OPTIONAL,
8698 dissect_h225_user_data },
8699 { NULL, 0, 0, NULL }
8702 dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
8708 /* Init struct for collecting h225_packet_info */
8709 reset_h225_packet_info(&(h225_pi));
8710 h225_pi.msg_type = H225_CS;
8712 if (check_col(pinfo->cinfo, COL_PROTOCOL)){
8713 col_set_str(pinfo->cinfo, COL_PROTOCOL, "H.225.0");
8715 if (check_col(pinfo->cinfo, COL_INFO)){
8716 col_clear(pinfo->cinfo, COL_INFO);
8719 it=proto_tree_add_protocol_format(tree, proto_h225, tvb, 0, tvb_length(tvb), "H.225.0 CS");
8720 tr=proto_item_add_subtree(it, ett_h225);
8722 offset=dissect_per_sequence(tvb, offset, pinfo, tr, hf_h225_H323_UserInformation, ett_h225_H323_UserInformation, H323_UserInformation_sequence);
8724 tap_queue_packet(h225_tap, pinfo, &h225_pi);
8730 dissect_h225ras(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
8732 dissect_tpkt_encap(tvb, pinfo, tree, h225_reassembly, h225ras_handle);
8738 proto_register_h225(void)
8740 static hf_register_info hf[] =
8742 { &hf_h225_PresentationIndicator,
8743 { "PresentationIndicator", "h225.PresentationIndicator", FT_UINT32, BASE_DEC,
8744 VALS(PresentationIndicator_vals), 0, "PresentationIndicator choice", HFILL }},
8745 { &hf_h225_CryptoH323Token,
8746 { "CryptoH323Token", "h225.CryptoH323Token", FT_UINT32, BASE_DEC,
8747 VALS(CryptoH323Token_vals), 0, "CryptoH323Token choice", HFILL }},
8748 { &hf_h225_conferenceGoal,
8749 { "conferenceGoal", "h225.conferenceGoal", FT_UINT32, BASE_DEC,
8750 VALS(conferenceGoal_vals), 0, "conferenceGoal choice", HFILL }},
8751 { &hf_h225_ScnConnectionType,
8752 { "ScnConnectionType", "h225.ScnConnectionType", FT_UINT32, BASE_DEC,
8753 VALS(ScnConnectionType_vals), 0, "ScnConnectionType choice", HFILL }},
8754 { &hf_h225_ScnConnectionAggregation,
8755 { "ScnConnectionAggregation", "h225.ScnConnectionAggregation", FT_UINT32, BASE_DEC,
8756 VALS(ScnConnectionAggregation_vals), 0, "ScnConnectionAggregation choice", HFILL }},
8757 { &hf_h225_FacilityReason,
8758 { "FacilityReason", "h225.FacilityReason", FT_UINT32, BASE_DEC,
8759 VALS(FacilityReason_vals), 0, "FacilityReason choice", HFILL }},
8760 { &hf_h225_PublicTypeOfNumber,
8761 { "PublicTypeOfNumber", "h225.PublicTypeOfNumber", FT_UINT32, BASE_DEC,
8762 VALS(PublicTypeOfNumber_vals), 0, "PublicTypeOfNumber choice", HFILL }},
8763 { &hf_h225_PrivateTypeOfNumber,
8764 { "PrivateTypeOfNumber", "h225.PrivateTypeOfNumber", FT_UINT32, BASE_DEC,
8765 VALS(PrivateTypeOfNumber_vals), 0, "PrivateTypeOfNumber choice", HFILL }},
8766 { &hf_h225_UseSpecifiedTransport,
8767 { "UseSpecifiedTransport", "h225.UseSpecifiedTransport", FT_UINT32, BASE_DEC,
8768 VALS(UseSpecifiedTransport_vals), 0, "UseSpecifiedTransport choice", HFILL }},
8769 { &hf_h225_SecurityErrors,
8770 { "SecurityErrors", "h225.SecurityErrors", FT_UINT32, BASE_DEC,
8771 VALS(SecurityErrors_vals), 0, "SecurityErrors choice", HFILL }},
8772 { &hf_h225_SecurityErrors2,
8773 { "SecurityErrors2", "h225.SecurityErrors2", FT_UINT32, BASE_DEC,
8774 VALS(SecurityErrors2_vals), 0, "SecurityErrors2 choice", HFILL }},
8775 { &hf_h225_ServiceControlSession_reason,
8776 { "ServiceControlSession_reason", "h225.ServiceControlSession_reason", FT_UINT32, BASE_DEC,
8777 VALS(ServiceControlSession_reason_vals), 0, "ServiceControlSession_reason choice", HFILL }},
8778 { &hf_h225_billingMode,
8779 { "billingMode", "h225.billingMode", FT_UINT32, BASE_DEC,
8780 VALS(billingMode_vals), 0, "billingMode choice", HFILL }},
8781 { &hf_h225_CCSCcallStartingPoint,
8782 { "CCSCcallStartingPoint", "h225.CCSCcallStartingPoint", FT_UINT32, BASE_DEC,
8783 VALS(CCSCcallStartingPoint_vals), 0, "CCSCcallStartingPoint choice", HFILL }},
8784 { &hf_h225_GatekeeperRejectReason,
8785 { "GatekeeperRejectReason", "h225.GatekeeperRejectReason", FT_UINT32, BASE_DEC,
8786 VALS(GatekeeperRejectReason_vals), 0, "GatekeeperRejectReason choice", HFILL }},
8787 { &hf_h225_UnregRequestReason,
8788 { "UnregRequestReason", "h225.UnregRequestReason", FT_UINT32, BASE_DEC,
8789 VALS(UnregRequestReason_vals), 0, "UnregRequestReason choice", HFILL }},
8790 { &hf_h225_UnregRejectReason,
8791 { "UnregRejectReason", "h225.UnregRejectReason", FT_UINT32, BASE_DEC,
8792 VALS(UnregRejectReason_vals), 0, "UnregRejectReason choice", HFILL }},
8793 { &hf_h225_CallType,
8794 { "CallType", "h225.CallType", FT_UINT32, BASE_DEC,
8795 VALS(CallType_vals), 0, "CallType choice", HFILL }},
8796 { &hf_h225_CallModel,
8797 { "CallModel", "h225.CallModel", FT_UINT32, BASE_DEC,
8798 VALS(CallModel_vals), 0, "CallModel choice", HFILL }},
8799 { &hf_h225_TransportQOS,
8800 { "TransportQOS", "h225.TransportQOS", FT_UINT32, BASE_DEC,
8801 VALS(TransportQOS_vals), 0, "TransportQOS choice", HFILL }},
8802 { &hf_h225_BandRejectReason,
8803 { "BandRejectReason", "h225.BandRejectReason", FT_UINT32, BASE_DEC,
8804 VALS(BandRejectReason_vals), 0, "BandRejectReason choice", HFILL }},
8805 { &hf_h225_DisengageReason,
8806 { "DisengageReason", "h225.DisengageReason", FT_UINT32, BASE_DEC,
8807 VALS(DisengageReason_vals), 0, "DisengageReason choice", HFILL }},
8808 { &hf_h225_DisengageRejectReason,
8809 { "DisengageRejectReason", "h225.DisengageRejectReason", FT_UINT32, BASE_DEC,
8810 VALS(DisengageRejectReason_vals), 0, "DisengageRejectReason choice", HFILL }},
8811 { &hf_h225_InfoRequestNakReason,
8812 { "InfoRequestNakReason", "h225.InfoRequestNakReason", FT_UINT32, BASE_DEC,
8813 VALS(InfoRequestNakReason_vals), 0, "InfoRequestNakReason choice", HFILL }},
8814 { &hf_h225_SCRresult,
8815 { "SCRresult", "h225.SCRresult", FT_UINT32, BASE_DEC,
8816 VALS(SCRresult_vals), 0, "SCRresult choice", HFILL }},
8817 { &hf_h225_GatekeeperInfo,
8818 { "GatekeeperInfo", "h225.GatekeeperInfo", FT_NONE, BASE_NONE,
8819 NULL, 0, "GatekeeperInfo sequence", HFILL }},
8820 { &hf_h225_SecurityServiceMode_encryption,
8821 { "Encryption", "h225.SecurityServiceMode_encryption", FT_UINT32, BASE_DEC,
8822 VALS(SecurityServiceMode_vals), 0, "Encryption SecurityServiceMode choice", HFILL }},
8823 { &hf_h225_SecurityServiceMode_authentication,
8824 { "Authentication", "h225.SecurityServiceMode_authentication", FT_UINT32, BASE_DEC,
8825 VALS(SecurityServiceMode_vals), 0, "Authentication SecurityServiceMode choice", HFILL }},
8826 { &hf_h225_SecurityServiceMode_integrity,
8827 { "Integrity", "h225.SecurityServiceMode_integrity", FT_UINT32, BASE_DEC,
8828 VALS(SecurityServiceMode_vals), 0, "Integrity SecurityServiceMode choice", HFILL }},
8829 { &hf_h225_SecurityCapabilities_tls,
8830 { "TLS", "h225.SecurityCapabilities.tls", FT_NONE, BASE_NONE,
8831 NULL, 0, "TLS SecurityCapabilities sequence", HFILL }},
8832 { &hf_h225_SecurityCapabilities_ipsec,
8833 { "IPSec", "h225.SecurityCapabilities.ipsec", FT_NONE, BASE_NONE,
8834 NULL, 0, "IPSec SecurityCapabilities sequence", HFILL }},
8835 { &hf_h225_H245Security,
8836 { "H245Security", "h225.H245Security", FT_UINT32, BASE_DEC,
8837 VALS(H245Security_vals), 0, "H245Security choice", HFILL }},
8838 { &hf_h225_nonStandardUsageTypes,
8839 { "nonStandardUsageTypes", "h225.nonStandardUsageTypes", FT_NONE, BASE_NONE,
8840 NULL, 0, "SEQUENCE OF NonStandardParameter", HFILL }},
8841 { &hf_h225_nonStandardUsageTypes_item,
8842 { "nonStandardUsageTypes", "h225.nonStandardUsageTypes_item", FT_NONE, BASE_NONE,
8843 NULL, 0, "NonStandardParameter", HFILL }},
8845 { "route", "h225.route", FT_NONE, BASE_NONE,
8846 NULL, 0, "Source Routing route", HFILL }},
8847 { &hf_h225_RasUsageInfoTypes,
8848 { "RasUsageInfoTypes", "h225.RasUsageInfoTypes", FT_NONE, BASE_NONE,
8849 NULL, 0, "RasUsageInfoTypes sequence", HFILL }},
8850 { &hf_h225_usageReportingCapability,
8851 { "usageReportingCapability", "h225.usageReportingCapability", FT_NONE, BASE_NONE,
8852 NULL, 0, "usageReportingCapability sequence", HFILL }},
8853 { &hf_h225_BandWidth,
8854 { "BandWidth", "h225.BandWidth", FT_UINT32, BASE_DEC,
8855 NULL, 0, "BandWidth in units of 100bits", HFILL }},
8856 { &hf_h225_channelRate,
8857 { "channelRate", "h225.channelRate", FT_UINT32, BASE_DEC,
8858 NULL, 0, "channelRate in units of 100bits", HFILL }},
8859 { &hf_h225_totalBandwidthRestriction,
8860 { "totalBandwidthRestriction", "h225.totalBandwidthRestriction", FT_UINT32, BASE_DEC,
8861 NULL, 0, "totalBandwidthRestriction in units of 100bits", HFILL }},
8862 { &hf_h225_allowedBandWidth,
8863 { "allowedBandWidth", "h225.allowedBandWidth", FT_UINT32, BASE_DEC,
8864 NULL, 0, "allowedBandWidth in units of 100bits", HFILL }},
8865 { &hf_h225_channelMultiplier,
8866 { "channelMultiplier", "h225.channelMultiplier", FT_UINT32, BASE_DEC,
8867 NULL, 0, "channelMultiplier", HFILL }},
8868 { &hf_h225_DataRate,
8869 { "DataRate", "h225.DataRate", FT_NONE, BASE_NONE,
8870 NULL, 0, "DataRate sequence", HFILL }},
8871 { &hf_h225_gatewayDataRate,
8872 { "gatewayDataRate", "h225.gatewayDataRate", FT_NONE, BASE_NONE,
8873 NULL, 0, "gatewayDataRate sequence", HFILL }},
8874 { &hf_h225_dataRatesSupported,
8875 { "dataRatesSupported", "h225.dataRatesSupported", FT_NONE, BASE_NONE,
8876 NULL, 0, "dataRatesSupported sequence of", HFILL }},
8877 { &hf_h225_TerminalInfo,
8878 { "TerminalInfo", "h225.TerminalInfo", FT_NONE, BASE_NONE,
8879 NULL, 0, "TerminalInfo sequence", HFILL }},
8881 { "cname", "h225.cname", FT_STRING, BASE_NONE,
8882 NULL, 0, "cname", HFILL }},
8883 { &hf_h225_h248Message,
8884 { "h248Message", "h225.h248Message", FT_STRING, BASE_NONE,
8885 NULL, 0, "h248Message", HFILL }},
8886 { &hf_h225_conferenceID,
8887 { "conferenceID", "h225.conferenceID", FT_BYTES, BASE_HEX,
8888 NULL, 0, "conferenceID", HFILL }},
8889 { &hf_h225_Generic_nonStandard,
8890 { "nonStandard", "h225.Generic_nonStandard", FT_BYTES, BASE_HEX,
8891 NULL, 0, "Generic_nonStandard", HFILL }},
8893 { "guid", "h225.guid", FT_BYTES, BASE_HEX,
8894 NULL, 0, "guid", HFILL }},
8895 { &hf_h225_replaceWithConferenceInvite,
8896 { "replaceWithConferenceInvite", "h225.replaceWithConferenceInvite", FT_BYTES, BASE_HEX,
8897 NULL, 0, "replaceWithConferenceInvite", HFILL }},
8898 { &hf_h225_StimulusControl,
8899 { "StimulusControl", "h225.StimulusControl", FT_NONE, BASE_NONE,
8900 NULL, 0, "StimulusControl sequence", HFILL }},
8901 { &hf_h225_ReleaseCompleteReason,
8902 { "ReleaseCompleteReason", "h225.ReleaseCompleteReason", FT_UINT32, BASE_DEC,
8903 VALS(ReleaseCompleteReason_vals), 0, "ReleaseCompleteReason choice", HFILL }},
8904 { &hf_h225_numberOfScnConnections,
8905 { "numberOfScnConnections", "h225.numberOfScnConnections", FT_UINT32, BASE_DEC,
8906 NULL, 0, "numberOfScnConnections", HFILL }},
8907 { &hf_h225_connectionParameters,
8908 { "connectionParameters", "h225.connectionParameters", FT_NONE, BASE_NONE,
8909 NULL, 0, "connectionParameters sequence", HFILL }},
8910 { &hf_h225_RequestSeqNum,
8911 { "RequestSeqNum", "h225.RequestSeqNum", FT_UINT32, BASE_DEC,
8912 NULL, 0, "RequestSeqNum", HFILL }},
8913 { &hf_h225_RasUsageSpecification_when,
8914 { "RasUsageSpecification_when", "h225.RasUsageSpecification_when", FT_NONE, BASE_NONE,
8915 NULL, 0, "RasUsageSpecification_when sequence", HFILL }},
8916 { &hf_h225_RasUsageSpecification_callStartingPoint,
8917 { "RasUsageSpecification_callStartingPoint", "h225.RasUsageSpecification_callStartingPoint", FT_NONE, BASE_NONE,
8918 NULL, 0, "RasUsageSpecification_callStartingPoint sequence", HFILL }},
8919 { &hf_h225_RasUsageSpecification,
8920 { "RasUsageSpecification", "h225.RasUsageSpecification", FT_NONE, BASE_NONE,
8921 NULL, 0, "RasUsageSpecification sequence", HFILL }},
8922 { &hf_h225_ipAddress_ip,
8923 { "IP", "h245.ipAddress.ip", FT_IPv4, BASE_NONE,
8924 NULL, 0, "IPv4 Address", HFILL }},
8925 { &hf_h225_ipAddress_port,
8926 { "Port", "h225.ipAddress.port", FT_UINT16, BASE_DEC,
8927 NULL, 0, "Port number", HFILL }},
8928 { &hf_h225_ipAddress,
8929 { "ipAddress", "h225.ipAddress", FT_NONE, BASE_NONE,
8930 NULL, 0, "ipAddress sequence", HFILL }},
8932 { "routing", "h225.routing", FT_UINT32, BASE_DEC,
8933 VALS(routing_vals), 0, "routing choice", HFILL }},
8934 { &hf_h225_ipSourceRoute,
8935 { "ipSourceRoute", "h225.ipSourceRoute", FT_NONE, BASE_NONE,
8936 NULL, 0, "ipSourceRoute sequence", HFILL }},
8938 { "Node", "h225.ipx.node", FT_BYTES, BASE_HEX,
8939 NULL, 0, "ipx node", HFILL }},
8940 { &hf_h225_ipxNetnum,
8941 { "Netnum", "h225.ipx.netnum", FT_BYTES, BASE_HEX,
8942 NULL, 0, "ipx netnum", HFILL }},
8944 { "Port", "h225.ipx.port", FT_BYTES, BASE_HEX,
8945 NULL, 0, "ipx port number", HFILL }},
8946 { &hf_h225_ipxAddress,
8947 { "ipxAddress", "h225.ipxAddress", FT_NONE, BASE_NONE,
8948 NULL, 0, "ipxAddress sequence", HFILL }},
8949 { &hf_h225_ipv6Address_ip,
8950 { "IP", "h225.ipv6Address.ip", FT_BYTES, BASE_HEX,
8951 NULL, 0, "ipv6 address", HFILL }},
8952 { &hf_h225_ipv6Address_port,
8953 { "Port", "h225.ipv6Address.port", FT_UINT16, BASE_DEC,
8954 NULL, 0, "Port number", HFILL }},
8955 { &hf_h225_ip6Address,
8956 { "ip6Address", "h225.ip6Address", FT_NONE, BASE_NONE,
8957 NULL, 0, "ip6Address sequence", HFILL }},
8959 { "netBios", "h225.netBios", FT_BYTES, BASE_HEX,
8960 NULL, 0, "netBios octet string", HFILL }},
8962 { "nsap", "h225.nsap", FT_BYTES, BASE_HEX,
8963 NULL, 0, "nsap octet string", HFILL }},
8964 { &hf_h225_rasAddress,
8965 { "rasAddress", "h225.rasAddress", FT_UINT32, BASE_DEC,
8966 VALS(TransportAddress_vals), 0, "rasAddress choice", HFILL }},
8967 { &hf_h225_TransportAddress,
8968 { "TransportAddress", "h225.TransportAddress", FT_UINT32, BASE_DEC,
8969 VALS(TransportAddress_vals), 0, "TransportAddress choice", HFILL }},
8970 { &hf_h225_replyAddress,
8971 { "replyAddress", "h225.replyAddress", FT_UINT32, BASE_DEC,
8972 VALS(TransportAddress_vals), 0, "replyAddress choice", HFILL }},
8973 { &hf_h225_h245Address,
8974 { "h245Address", "h225.h245Address", FT_UINT32, BASE_DEC,
8975 VALS(TransportAddress_vals), 0, "h245Address choice", HFILL }},
8976 { &hf_h225_destCallSignalAddress,
8977 { "destCallSignalAddress", "h225.destCallSignalAddress", FT_UINT32, BASE_DEC,
8978 VALS(TransportAddress_vals), 0, "destCallSignalAddress choice", HFILL }},
8979 { &hf_h225_sourceCallSignalAddress,
8980 { "sourceCallSignalAddress", "h225.sourceCallSignalAddress", FT_UINT32, BASE_DEC,
8981 VALS(TransportAddress_vals), 0, "sourceCallSignalAddress choice", HFILL }},
8982 { &hf_h225_CallSignalAddress2,
8983 { "CallSignalAddress2", "h225.CallSignalAddress2", FT_UINT32, BASE_DEC,
8984 VALS(TransportAddress_vals), 0, "CallSignalAddress2 choice", HFILL }},
8985 { &hf_h225_alternativeAddress,
8986 { "alternativeAddress", "h225.alternativeAddress", FT_UINT32, BASE_DEC,
8987 VALS(TransportAddress_vals), 0, "alternativeAddress choice", HFILL }},
8988 { &hf_h225_transportID,
8989 { "transportID", "h225.transportID", FT_UINT32, BASE_DEC,
8990 VALS(TransportAddress_vals), 0, "transportID choice", HFILL }},
8991 { &hf_h225_sendAddress,
8992 { "sendAddress", "h225.sendAddress", FT_UINT32, BASE_DEC,
8993 VALS(TransportAddress_vals), 0, "sendAddress choice", HFILL }},
8994 { &hf_h225_recvAddress,
8995 { "recvAddress", "h225.recvAddress", FT_UINT32, BASE_DEC,
8996 VALS(TransportAddress_vals), 0, "recvAddress choice", HFILL }},
8997 { &hf_h225_rtpAddress,
8998 { "rtpAddress", "h225.rtpAddress", FT_NONE, BASE_NONE,
8999 NULL, 0, "rtpAddress sequence", HFILL }},
9000 { &hf_h225_rtcpAddress,
9001 { "rtcpAddress", "h225.rtcpAddress", FT_NONE, BASE_NONE,
9002 NULL, 0, "rtcpAddress sequence", HFILL }},
9004 { "h245", "h225.h245", FT_NONE, BASE_NONE,
9005 NULL, 0, "h245 sequence", HFILL }},
9006 { &hf_h225_callSignaling,
9007 { "callSignaling", "h225.callSignaling", FT_NONE, BASE_NONE,
9008 NULL, 0, "callSignaling sequence", HFILL }},
9009 { &hf_h225_carrierName,
9010 { "carrierName", "h225.carrierName", FT_BYTES, BASE_HEX,
9011 NULL, 0, "carrierName IA5String", HFILL }},
9012 { &hf_h225_carrierIdentificationCode,
9013 { "carrierIdentificationCode", "h225.carrierIdentificationCode", FT_BYTES, BASE_HEX,
9014 NULL, 0, "carrierIdentificationCode octet string", HFILL }},
9015 { &hf_h225_CarrierInfo,
9016 { "CarrierInfo", "h225.CarrierInfo", FT_NONE, BASE_NONE,
9017 NULL, 0, "CarrierInfo sequence", HFILL }},
9019 { "segment", "h225.segment", FT_UINT32, BASE_DEC,
9020 NULL, 0, "segment", HFILL }},
9021 { &hf_h225_InfoRequestResponseStatus,
9022 { "InfoRequestResponseStatus", "h225.InfoRequestResponseStatus", FT_UINT32, BASE_DEC,
9023 VALS(InfoRequestResponseStatus_vals), 0, "InfoRequestResponseStatus choice", HFILL }},
9024 { &hf_h225_CallIdentifier,
9025 { "CallIdentifier", "h225.CallIdentifier", FT_NONE, BASE_NONE,
9026 NULL, 0, "CallIdentifier sequence", HFILL }},
9027 { &hf_h225_globalCallId,
9028 { "globalCallId", "h225.globalCallId", FT_BYTES, BASE_HEX,
9029 NULL, 0, "globalCallId octet string", HFILL }},
9030 { &hf_h225_threadId,
9031 { "threadId", "h225.threadId", FT_BYTES, BASE_HEX,
9032 NULL, 0, "threadId octet string", HFILL }},
9033 { &hf_h225_CallLinkage,
9034 { "CallLinkage", "h225.CallLinkage", FT_NONE, BASE_NONE,
9035 NULL, 0, "CallLinkage sequence", HFILL }},
9037 { "tokens", "h225.tokens", FT_NONE, BASE_NONE,
9038 NULL, 0, "tokens sequence of", HFILL }},
9039 { &hf_h225_CryptoH323Tokens,
9040 { "CryptoH323Tokens", "h225.cryptoh323tokens", FT_NONE, BASE_NONE,
9041 NULL, 0, "sequence of cryptoh323tokens", HFILL }},
9042 { &hf_h225_needToRegister,
9043 { "needToRegister", "h225.needToRegister", FT_BOOLEAN, 8,
9044 TFS(&tfs_needToRegister_bit), 0x01, "needToRegister boolean", HFILL }},
9045 { &hf_h225_priority,
9046 { "priority", "h225.priority", FT_UINT32, BASE_DEC,
9047 NULL, 0, "priority", HFILL }},
9048 { &hf_h225_AlternateGK,
9049 { "AlternateGK", "h225.AlternateGK", FT_NONE, BASE_NONE,
9050 NULL, 0, "AlternateGK sequence", HFILL }},
9051 { &hf_h225_alternateGatekeeper,
9052 { "alternateGatekeeper", "h225.alternateGatekeeper", FT_NONE, BASE_NONE,
9053 NULL, 0, "alternateGatekeeper sequence of", HFILL }},
9054 { &hf_h225_altGKisPermanent,
9055 { "altGKisPermanent", "h225.altGKisPermanent", FT_BOOLEAN, 8,
9056 TFS(&tfs_altGKisPermanent_bit), 0x01, "altGKisPermanent boolean", HFILL }},
9057 { &hf_h225_AltGKInfo,
9058 { "AltGKInfo", "h225.AltGKInfo", FT_NONE, BASE_NONE,
9059 NULL, 0, "AltGKInfo sequence", HFILL }},
9061 { "annexE", "h225.annexE", FT_NONE, BASE_NONE,
9062 NULL, 0, "annexE sequence of", HFILL }},
9064 { "sctp", "h225.sctp", FT_NONE, BASE_NONE,
9065 NULL, 0, "sctp sequence of", HFILL }},
9066 { &hf_h225_AlternateTransportAddress,
9067 { "AlternateTransportAddress", "h225.AlternateTransportAddress", FT_NONE, BASE_NONE,
9068 NULL, 0, "AlternateTransportAddress sequence", HFILL }},
9069 { &hf_h225_setup_bool,
9070 { "setup_bool", "h225.setup_bool", FT_BOOLEAN, 8,
9071 TFS(&tfs_setup_bool_bit), 0x01, "setup_bool boolean", HFILL }},
9072 { &hf_h225_callProceeding_bool,
9073 { "callProceeding_bool", "h225.callProceeding_bool", FT_BOOLEAN, 8,
9074 TFS(&tfs_callProceeding_bool_bit), 0x01, "callProceeding_bool boolean", HFILL }},
9075 { &hf_h225_connect_bool,
9076 { "connect_bool", "h225.connect_bool", FT_BOOLEAN, 8,
9077 TFS(&tfs_connect_bool_bit), 0x01, "connect_bool boolean", HFILL }},
9078 { &hf_h225_alerting_bool,
9079 { "alerting_bool", "h225.alerting_bool", FT_BOOLEAN, 8,
9080 TFS(&tfs_alerting_bool_bit), 0x01, "alerting_bool boolean", HFILL }},
9081 { &hf_h225_information_bool,
9082 { "information_bool", "h225.information_bool", FT_BOOLEAN, 8,
9083 TFS(&tfs_information_bool_bit), 0x01, "information_bool boolean", HFILL }},
9084 { &hf_h225_releaseComplete_bool,
9085 { "releaseComplete_bool", "h225.releaseComplete_bool", FT_BOOLEAN, 8,
9086 TFS(&tfs_releaseComplete_bool_bit), 0x01, "releaseComplete_bool boolean", HFILL }},
9087 { &hf_h225_facility_bool,
9088 { "facility_bool", "h225.facility_bool", FT_BOOLEAN, 8,
9089 TFS(&tfs_facility_bool_bit), 0x01, "facility_bool boolean", HFILL }},
9090 { &hf_h225_progress_bool,
9091 { "progress_bool", "h225.progress_bool", FT_BOOLEAN, 8,
9092 TFS(&tfs_progress_bool_bit), 0x01, "progress_bool boolean", HFILL }},
9093 { &hf_h225_empty_bool,
9094 { "empty_bool", "h225.empty_bool", FT_BOOLEAN, 8,
9095 TFS(&tfs_empty_bool_bit), 0x01, "empty_bool boolean", HFILL }},
9096 { &hf_h225_status_bool,
9097 { "status_bool", "h225.status_bool", FT_BOOLEAN, 8,
9098 TFS(&tfs_status_bool_bit), 0x01, "status_bool boolean", HFILL }},
9099 { &hf_h225_statusInquiry_bool,
9100 { "statusInquiry_bool", "h225.statusInquiry_bool", FT_BOOLEAN, 8,
9101 TFS(&tfs_statusInquiry_bool_bit), 0x01, "statusInquiry_bool boolean", HFILL }},
9102 { &hf_h225_setupAcknowledge_bool,
9103 { "setupAcknowledge_bool", "h225.setupAcknowledge_bool", FT_BOOLEAN, 8,
9104 TFS(&tfs_setupAcknowledge_bool_bit), 0x01, "setupAcknowledge_bool boolean", HFILL }},
9105 { &hf_h225_notify_bool,
9106 { "notify_bool", "h225.notify_bool", FT_BOOLEAN, 8,
9107 TFS(&tfs_notify_bool_bit), 0x01, "notify_bool boolean", HFILL }},
9108 { &hf_h225_UUIEsRequested,
9109 { "UUIEsRequested", "h225.UUIEsRequested", FT_NONE, BASE_NONE,
9110 NULL, 0, "UUIEsRequested sequence", HFILL }},
9111 { &hf_h225_conferenceCalling,
9112 { "conferenceCalling", "h225.conferenceCalling", FT_BOOLEAN, 8,
9113 TFS(&tfs_conferenceCalling_bit), 0x01, "conferenceCalling boolean", HFILL }},
9114 { &hf_h225_threePartyService,
9115 { "threePartyService", "h225.threePartyService", FT_BOOLEAN, 8,
9116 TFS(&tfs_threePartyService_bit), 0x01, "threePartyService boolean", HFILL }},
9117 { &hf_h225_Q954Details,
9118 { "Q954Details", "h225.Q954Details", FT_NONE, BASE_NONE,
9119 NULL, 0, "Q954Details sequence", HFILL }},
9120 { &hf_h225_q932Full,
9121 { "q932Full", "h225.q932Full", FT_BOOLEAN, 8,
9122 TFS(&tfs_q932Full_bit), 0x01, "q932Full boolean", HFILL }},
9123 { &hf_h225_q951Full,
9124 { "q951Full", "h225.q951Full", FT_BOOLEAN, 8,
9125 TFS(&tfs_q951Full_bit), 0x01, "q951Full boolean", HFILL }},
9126 { &hf_h225_q952Full,
9127 { "q952Full", "h225.q952Full", FT_BOOLEAN, 8,
9128 TFS(&tfs_q952Full_bit), 0x01, "q952Full boolean", HFILL }},
9129 { &hf_h225_q953Full,
9130 { "q953Full", "h225.q953Full", FT_BOOLEAN, 8,
9131 TFS(&tfs_q953Full_bit), 0x01, "q953Full boolean", HFILL }},
9132 { &hf_h225_q955Full,
9133 { "q955Full", "h225.q955Full", FT_BOOLEAN, 8,
9134 TFS(&tfs_q955Full_bit), 0x01, "q955Full boolean", HFILL }},
9135 { &hf_h225_q956Full,
9136 { "q956Full", "h225.q956Full", FT_BOOLEAN, 8,
9137 TFS(&tfs_q956Full_bit), 0x01, "q956Full boolean", HFILL }},
9138 { &hf_h225_q957Full,
9139 { "q957Full", "h225.q957Full", FT_BOOLEAN, 8,
9140 TFS(&tfs_q957Full_bit), 0x01, "q957Full boolean", HFILL }},
9141 { &hf_h225_QseriesOptions,
9142 { "callServices", "h225.callServices", FT_NONE, BASE_NONE,
9143 NULL, 0, "QseriesOptions sequence", HFILL }},
9145 { "ssrc", "h225.ssrc", FT_UINT32, BASE_DEC,
9146 NULL, 0, "ssrc", HFILL }},
9147 { &hf_h225_RTPsessionId,
9148 { "RTPsessionId", "h225.RTPsessionId", FT_UINT32, BASE_DEC,
9149 NULL, 0, "RTPsessionId", HFILL }},
9150 { &hf_h225_associatedSessionIds,
9151 { "associatedSessionIds", "h225.associatedSessionIds", FT_NONE, BASE_NONE,
9152 NULL, 0, "associatedSessionIds sequence of", HFILL }},
9153 { &hf_h225_RTPSession,
9154 { "RTPSession", "h225.RTPSession", FT_NONE, BASE_NONE,
9155 NULL, 0, "RTPSession sequence", HFILL }},
9156 { &hf_h225_tunnelledProtocolObjectID,
9157 { "tunnelledProtocolObjectID", "h225.tunnelledProtocolObjectID", FT_STRING, BASE_NONE,
9158 NULL, 0, "tunnelledProtocolObjectID object", HFILL }},
9159 { &hf_h225_ProtocolIdentifier,
9160 { "ProtocolIdentifier", "h225.ProtocolIdentifier", FT_STRING, BASE_NONE,
9161 NULL, 0, "ProtocolIdentifier object", HFILL }},
9162 { &hf_h225_isoAlgorithm,
9163 { "isoAlgorithm", "h225.isoAlgorithm", FT_STRING, BASE_NONE,
9164 NULL, 0, "isoAlgorithm object", HFILL }},
9165 { &hf_h225_algorithmOID,
9166 { "algorithmOID", "h225.algorithmOID", FT_STRING, BASE_NONE,
9167 NULL, 0, "algorithmOID object", HFILL }},
9169 { "iso9797", "h225.iso9797", FT_STRING, BASE_NONE,
9170 NULL, 0, "iso9797 object", HFILL }},
9171 { &hf_h225_hMAC_iso10118_3,
9172 { "hMAC_iso10118_3", "h225.hMAC_iso10118_3", FT_STRING, BASE_NONE,
9173 NULL, 0, "hMAC_iso10118_3 object", HFILL }},
9174 { &hf_h225_enterpriseNumber,
9175 { "enterpriseNumber", "h225.enterpriseNumber", FT_STRING, BASE_NONE,
9176 NULL, 0, "enterpriseNumber object", HFILL }},
9177 { &hf_h225_Generic_oid,
9178 { "OID", "h225.Generic_oid", FT_STRING, BASE_NONE,
9179 NULL, 0, "Generic OID object", HFILL }},
9180 { &hf_h225_StatusUUIE,
9181 { "StatusUUIE", "h225.StatusUUIE", FT_NONE, BASE_NONE,
9182 NULL, 0, "StatusUUIE sequence", HFILL }},
9183 { &hf_h225_StatusInquiryUUIE,
9184 { "StatusInquiryUUIE", "h225.StatusInquiryUUIE", FT_NONE, BASE_NONE,
9185 NULL, 0, "StatusInquiryUUIE sequence", HFILL }},
9186 { &hf_h225_SetupAcknowledgeUUIE,
9187 { "SetupAcknowledgeUUIE", "h225.SetupAcknowledgeUUIE", FT_NONE, BASE_NONE,
9188 NULL, 0, "SetupAcknowledgeUUIE sequence", HFILL }},
9189 { &hf_h225_NotifyUUIE,
9190 { "NotifyUUIE", "h225.NotifyUUIE", FT_NONE, BASE_NONE,
9191 NULL, 0, "NotifyUUIE sequence", HFILL }},
9193 { "imsi", "h225.imsi", FT_STRING, BASE_HEX,
9194 NULL, 0, "imsi string", HFILL }},
9196 { "tmsi", "h225.tmsi", FT_BYTES, BASE_HEX,
9197 NULL, 0, "tmsi octet string", HFILL }},
9199 { "msisdn", "h225.msisdn", FT_STRING, BASE_HEX,
9200 NULL, 0, "msisdn string", HFILL }},
9202 { "imei", "h225.imei", FT_STRING, BASE_HEX,
9203 NULL, 0, "imei string", HFILL }},
9205 { "hplmn", "h225.hplmn", FT_STRING, BASE_HEX,
9206 NULL, 0, "hplmn string", HFILL }},
9208 { "vplmn", "h225.vplmn", FT_STRING, BASE_HEX,
9209 NULL, 0, "vplmn string", HFILL }},
9211 { "GSMUIM", "h225.GSMUIM", FT_NONE, BASE_NONE,
9212 NULL, 0, "GSMUIM sequence", HFILL }},
9214 { "sid", "h225.sid", FT_STRING, BASE_HEX,
9215 NULL, 0, "sid string", HFILL }},
9217 { "mid", "h225.mid", FT_STRING, BASE_HEX,
9218 NULL, 0, "mid string", HFILL }},
9219 { &hf_h225_systemid,
9220 { "systemid", "h225.sustemid", FT_UINT32, BASE_DEC,
9221 VALS(systemid_vals), 0, "systemid choice", HFILL }},
9223 { "min", "h225.min", FT_STRING, BASE_HEX,
9224 NULL, 0, "min string", HFILL }},
9226 { "mdn", "h225.mdn", FT_STRING, BASE_HEX,
9227 NULL, 0, "mdn string", HFILL }},
9229 { "esn", "h225.esn", FT_STRING, BASE_HEX,
9230 NULL, 0, "esn string", HFILL }},
9232 { "mscid", "h225.mscid", FT_STRING, BASE_HEX,
9233 NULL, 0, "mscid string", HFILL }},
9234 { &hf_h225_systemMyTypeCode,
9235 { "systemMyTypeCode", "h225.systemMyTypeCode", FT_BYTES, BASE_HEX,
9236 NULL, 0, "systemMyTypeCode octet string", HFILL }},
9237 { &hf_h225_systemAccessType,
9238 { "systemAccessType", "h225.systemAccessType", FT_BYTES, BASE_HEX,
9239 NULL, 0, "systemAccessType octet string", HFILL }},
9240 { &hf_h225_qualificationInformationCode,
9241 { "qualificationInformationCode", "h225.qualificationInformationCode", FT_BYTES, BASE_HEX,
9242 NULL, 0, "qualificationInformationCode octet string", HFILL }},
9244 { "sesn", "h225.sesn", FT_STRING, BASE_HEX,
9245 NULL, 0, "sesn string", HFILL }},
9247 { "soc", "h225.soc", FT_STRING, BASE_HEX,
9248 NULL, 0, "soc string", HFILL }},
9249 { &hf_h225_ANSI41UIM,
9250 { "ANSI41UIM", "h225.ANSI41UIM", FT_NONE, BASE_NONE,
9251 NULL, 0, "ANSI41UIM sequence", HFILL }},
9252 { &hf_h225_MobileUIM,
9253 { "MobileUIM", "h225.MobileUIM", FT_UINT32, BASE_DEC,
9254 VALS(MobileUIM_vals), 0, "MobileUIM choice", HFILL }},
9255 { &hf_h225_dataPartyNumber,
9256 { "dataPartyNumber", "h225.dataPartyNumber", FT_STRING, BASE_HEX,
9257 NULL, 0, "dataPartyNumber string", HFILL }},
9258 { &hf_h225_telexPartyNumber,
9259 { "telexPartyNumber", "h225.telexPartyNumber", FT_STRING, BASE_HEX,
9260 NULL, 0, "telexPartyNumber string", HFILL }},
9261 { &hf_h225_nationalStandardPartyNumber,
9262 { "nationalStandardPartyNumber", "h225.nationalStandardPartyNumber", FT_STRING, BASE_HEX,
9263 NULL, 0, "nationalStandardPartyNumber string", HFILL }},
9264 { &hf_h225_publicNumberDigits,
9265 { "publicNumberDigits", "h225.publicNumberDigits", FT_STRING, BASE_HEX,
9266 NULL, 0, "publicNumberDigits string", HFILL }},
9267 { &hf_h225_privateNumberDigits,
9268 { "privateNumberDigits", "h225.privateNumberDigits", FT_STRING, BASE_HEX,
9269 NULL, 0, "privateNumberDigits string", HFILL }},
9270 { &hf_h225_e164Number,
9271 { "e164Number", "h225.e164Number", FT_NONE, BASE_NONE,
9272 NULL, 0, "e164Number sequence", HFILL }},
9273 { &hf_h225_privateNumber,
9274 { "privateNumber", "h225.privateNumber", FT_NONE, BASE_NONE,
9275 NULL, 0, "privateNumber sequence", HFILL }},
9276 { &hf_h225_startOfRange,
9277 { "startOfRange", "h225.startOfRange", FT_UINT32, BASE_DEC,
9278 VALS(PartyNumber_vals), 0, "startOfRange choice", HFILL }},
9279 { &hf_h225_endOfRange,
9280 { "endOfRange", "h225.endOfRange", FT_UINT32, BASE_DEC,
9281 VALS(PartyNumber_vals), 0, "endOfRange choice", HFILL }},
9282 { &hf_h225_PartyNumber,
9283 { "PartyNumber", "h225.PartyNumber", FT_UINT32, BASE_DEC,
9284 VALS(PartyNumber_vals), 0, "PartyNumber choice", HFILL }},
9285 { &hf_h225_protocolType,
9286 { "protocolType", "h225.protocolType", FT_STRING, BASE_HEX,
9287 NULL, 0, "protocolType IA5String", HFILL }},
9288 { &hf_h225_protocolVariant,
9289 { "protocolVariant", "h225.protocolVariant", FT_STRING, BASE_HEX,
9290 NULL, 0, "protocolVariant IA5String", HFILL }},
9291 { &hf_h225_TunnelledProtocolAlternateIdentifier,
9292 { "TunnelledProtocolAlternateIdentifier", "h225.TunnelledProtocolAlternateIdentifier", FT_NONE, BASE_NONE,
9293 NULL, 0, "TunnelledProtocolAlternateIdentifier sequence", HFILL }},
9294 { &hf_h225_dialedDigits,
9295 { "dialedDigits", "h225.dialedDigits", FT_BYTES, BASE_HEX,
9296 NULL, 0, "dialedDigits IA5String", HFILL }},
9298 { "urlId", "h225.urlId", FT_BYTES, BASE_HEX,
9299 NULL, 0, "urlId IA5String", HFILL }},
9301 { "h323ID", "h225.h323ID", FT_STRING, BASE_HEX,
9302 NULL, 0, "h323ID BMPString", HFILL }},
9303 { &hf_h225_GatekeeperIdentifier,
9304 { "GatekeeperIdentifier", "h225.GatekeeperIdentifier", FT_STRING, BASE_HEX,
9305 NULL, 0, "GatekeeperIdentifier BMPString", HFILL }},
9307 { "unicode", "h225.unicode", FT_STRING, BASE_HEX,
9308 NULL, 0, "unicode BMPString", HFILL }},
9309 { &hf_h225_EndpointIdentifier,
9310 { "EndpointIdentifier", "h225.EndpointIdentifier", FT_STRING, BASE_HEX,
9311 NULL, 0, "EndpointIdentifier BMPString", HFILL }},
9313 { "emailId", "h225.emailId", FT_STRING, BASE_NONE,
9314 NULL, 0, "emailId IA5String", HFILL }},
9315 { &hf_h225_conferenceAlias,
9316 { "conferenceAlias", "h225.conferenceAlias", FT_UINT32, BASE_DEC,
9317 VALS(AliasAddress_vals), 0, "conferenceAlias choice", HFILL }},
9318 { &hf_h225_AliasAddress,
9319 { "AliasAddress", "h225.AliasAddress", FT_UINT32, BASE_DEC,
9320 VALS(AliasAddress_vals), 0, "AliasAddress choice", HFILL }},
9321 { &hf_h225_RemoteExtensionAddress,
9322 { "RemoteExtensionAddress", "h225.RemoteExtensionAddress", FT_UINT32, BASE_DEC,
9323 VALS(AliasAddress_vals), 0, "RemoteExtensionAddress choice", HFILL }},
9324 { &hf_h225_wildcard,
9325 { "wildcard", "h225.wildcard", FT_UINT32, BASE_DEC,
9326 VALS(AliasAddress_vals), 0, "wildcard choice", HFILL }},
9328 { "prefix", "h225.prefix", FT_UINT32, BASE_DEC,
9329 VALS(AliasAddress_vals), 0, "prefix choice", HFILL }},
9330 { &hf_h225_SupportedPrefix,
9331 { "SupportedPrefix", "h225.SupportedPrefix", FT_NONE, BASE_NONE,
9332 NULL, 0, "SupportedPrefix sequence", HFILL }},
9333 { &hf_h225_SupportedPrefixes,
9334 { "SupportedPrefixes", "h225.SupportedPrefixes", FT_NONE, BASE_NONE,
9335 NULL, 0, "SupportedPrefixes sequence of", HFILL }},
9336 { &hf_h225_H310Caps,
9337 { "H310Caps", "h225.H310Caps", FT_NONE, BASE_NONE,
9338 NULL, 0, "H310Caps sequence", HFILL }},
9339 { &hf_h225_H320Caps,
9340 { "H320Caps", "h225.H320Caps", FT_NONE, BASE_NONE,
9341 NULL, 0, "H320Caps sequence", HFILL }},
9342 { &hf_h225_H321Caps,
9343 { "H321Caps", "h225.H321Caps", FT_NONE, BASE_NONE,
9344 NULL, 0, "H321Caps sequence", HFILL }},
9345 { &hf_h225_H322Caps,
9346 { "H322Caps", "h225.H322Caps", FT_NONE, BASE_NONE,
9347 NULL, 0, "H322Caps sequence", HFILL }},
9348 { &hf_h225_H323Caps,
9349 { "H323Caps", "h225.H323Caps", FT_NONE, BASE_NONE,
9350 NULL, 0, "H323Caps sequence", HFILL }},
9351 { &hf_h225_H324Caps,
9352 { "H324Caps", "h225.H324Caps", FT_NONE, BASE_NONE,
9353 NULL, 0, "H324Caps sequence", HFILL }},
9354 { &hf_h225_VoiceCaps,
9355 { "VoiceCaps", "h225.VoiceCaps", FT_NONE, BASE_NONE,
9356 NULL, 0, "VoiceCaps sequence", HFILL }},
9357 { &hf_h225_T120OnlyCaps,
9358 { "T120OnlyCaps", "h225.T120OnlyCaps", FT_NONE, BASE_NONE,
9359 NULL, 0, "T120OnlyCaps sequence", HFILL }},
9360 { &hf_h225_NonStandardProtocol,
9361 { "NonStandardProtocol", "h225.NonStandardProtocol", FT_NONE, BASE_NONE,
9362 NULL, 0, "NonStandardProtocol sequence", HFILL }},
9364 { "SIPCaps", "h225.SIPCaps", FT_NONE, BASE_NONE,
9365 NULL, 0, "SIPCaps sequence", HFILL }},
9366 { &hf_h225_AddressPattern_range,
9367 { "AddressPattern_range", "h225.AddressPattern_range", FT_NONE, BASE_NONE,
9368 NULL, 0, "AddressPattern_range sequence", HFILL }},
9369 { &hf_h225_AddressPattern,
9370 { "AddressPattern", "h225.AddressPattern", FT_UINT32, BASE_DEC,
9371 VALS(AddressPattern_vals), 0, "AddressPattern choice", HFILL }},
9372 { &hf_h225_ConferenceList,
9373 { "ConferenceList", "h225.ConferenceList", FT_NONE, BASE_NONE,
9374 NULL, 0, "ConferenceList sequence", HFILL }},
9375 { &hf_h225_conferences,
9376 { "conferences", "h225.conferences", FT_NONE, BASE_NONE,
9377 NULL, 0, "conferences sequence of", HFILL }},
9378 { &hf_h225_T38FaxAnnexbOnlyCaps,
9379 { "T38FaxAnnexbOnlyCaps", "h225.T38FaxAnnexbOnlyCaps", FT_NONE, BASE_NONE,
9380 NULL, 0, "T38FaxAnnexbOnlyCaps sequence", HFILL }},
9381 { &hf_h225_SupportedProtocols,
9382 { "SupportedProtocols", "h225.SupportedProtocols", FT_UINT32, BASE_DEC,
9383 VALS(SupportedProtocols_vals), 0, "SupportedProtocols choice", HFILL }},
9384 { &hf_h225_protocol,
9385 { "protocol", "h225.protocol", FT_NONE, BASE_NONE,
9386 NULL, 0, "protocol sequence of", HFILL }},
9387 { &hf_h225_GatewayInfo,
9388 { "GatewayInfo", "h225.GatewayInfo", FT_NONE, BASE_NONE,
9389 NULL, 0, "GatewayInfo sequence", HFILL }},
9391 { "McuInfo", "h225.McuInfo", FT_NONE, BASE_NONE,
9392 NULL, 0, "McuInfo sequence", HFILL }},
9393 { &hf_h225_TunnelledProtocol_id,
9394 { "id", "h225.TunnelledProtocol_id", FT_UINT32, BASE_DEC,
9395 VALS(TunnelledProtocol_id_vals), 0, "TunnelledProtocol_id choice", HFILL }},
9396 { &hf_h225_TunnelledProtocol_subIdentifier,
9397 { "subIdentifier", "h225.TunnelledProtocol_subIdentifier", FT_BYTES, BASE_HEX,
9398 NULL, 0, "TunnelledProtocol_subIdentifier IA5String", HFILL }},
9399 { &hf_h225_TunnelledProtocol,
9400 { "TunnelledProtocol", "h225.TunnelledProtocol", FT_NONE, BASE_NONE,
9401 NULL, 0, "TunnelledProtocol sequence", HFILL }},
9402 { &hf_h225_TunnelledProtocols,
9403 { "TunnelledProtocols", "h225.TunnelledProtocols", FT_NONE, BASE_NONE,
9404 NULL, 0, "SEQUENCE OF TunnelledProtocol", HFILL }},
9405 { &hf_h225_desiredTunnelledProtocol,
9406 { "desiredTunnelledProtocol", "h225.desiredTunnelledProtocol", FT_NONE, BASE_NONE,
9407 NULL, 0, "desiredTunnelledProtocol sequence", HFILL }},
9408 { &hf_h225_CicInfo_cic_item,
9409 { "item", "h225.CicInfo_cic_item", FT_BYTES, BASE_HEX,
9410 NULL, 0, "CicInfo_cic_item octet string", HFILL }},
9411 { &hf_h225_CicInfo_pointCode,
9412 { "pointCode", "h225.CicInfo_pointCode", FT_BYTES, BASE_HEX,
9413 NULL, 0, "CicInfo_pointCode octet string", HFILL }},
9414 { &hf_h225_CicInfo_cic,
9415 { "cic", "h225.CicInfo_cic", FT_NONE, BASE_NONE,
9416 NULL, 0, "CicInfo_cic sequence of", HFILL }},
9418 { "CicInfo", "h225.CicInfo", FT_NONE, BASE_NONE,
9419 NULL, 0, "CicInfo sequence", HFILL }},
9420 { &hf_h225_GroupID_member_item,
9421 { "item", "h225.GroupID_member_item", FT_UINT32, BASE_DEC,
9422 NULL, 0, "GroupID_member_item", HFILL }},
9423 { &hf_h225_GroupID_member,
9424 { "member", "h225.GroupID_member", FT_NONE, BASE_NONE,
9425 NULL, 0, "GroupID_member sequence of", HFILL }},
9426 { &hf_h225_GroupID_group,
9427 { "group", "h225.GroupID_group", FT_STRING, BASE_NONE,
9428 NULL, 0, "GroupID_group IA5String", HFILL }},
9430 { "GroupID", "h225.GroupID", FT_NONE, BASE_NONE,
9431 NULL, 0, "GroupID sequence", HFILL }},
9432 { &hf_h225_sourceCircuitID,
9433 { "sourceCircuitID", "h225.sourceCircuitID", FT_NONE, BASE_NONE,
9434 NULL, 0, "sourceCircuitID sequence", HFILL }},
9435 { &hf_h225_destinationCircuitID,
9436 { "destinationCircuitID", "h225.destinationCircuitID", FT_NONE, BASE_NONE,
9437 NULL, 0, "destinationCircuitID sequence", HFILL }},
9438 { &hf_h225_Generic_standard,
9439 { "standard", "h225.Generic_standard", FT_UINT32, BASE_DEC,
9440 NULL, 0, "Generic_standard", HFILL }},
9441 { &hf_h225_GenericIdentifier,
9442 { "GenericIdentifier", "h225.GenericIdentifier", FT_UINT32, BASE_DEC,
9443 VALS(GenericIdentifier_vals), 0, "GenericIdentifier choice", HFILL }},
9444 { &hf_h225_EnumeratedParameter,
9445 { "EnumeratedParameter", "h225.EnumeratedParameter", FT_NONE, BASE_NONE,
9446 NULL, 0, "EnumeratedParameter sequence", HFILL }},
9447 { &hf_h225_parameters,
9448 { "parameters", "h225.parameters", FT_NONE, BASE_NONE,
9449 NULL, 0, "parameters sequence of", HFILL }},
9450 { &hf_h225_GenericData,
9451 { "GenericData", "h225.GenericData", FT_NONE, BASE_NONE,
9452 NULL, 0, "GenericData sequence", HFILL }},
9453 { &hf_h225_FeatureDescriptor,
9454 { "FeatureDescriptor", "h225.FeatureDescriptor", FT_NONE, BASE_NONE,
9455 NULL, 0, "FeatureDescriptor sequence", HFILL }},
9456 { &hf_h225_Content_raw,
9457 { "Content_raw", "h225.Content_raw", FT_BYTES, BASE_HEX,
9458 NULL, 0, "Content_raw octet string", HFILL }},
9459 { &hf_h225_Content_text,
9460 { "Content_text", "h225.Content_text", FT_BYTES, BASE_HEX,
9461 NULL, 0, "Content_text IA5String", HFILL }},
9463 { "Content", "h225.Content", FT_UINT32, BASE_DEC,
9464 VALS(Content_vals), 0, "Content choice", HFILL }},
9465 { &hf_h225_Content_bool,
9466 { "Content_bool", "h225.Content_bool", FT_BOOLEAN, 8,
9467 TFS(&tfs_Content_bool_bit), 0x01, "Content_bool boolean", HFILL }},
9468 { &hf_h225_Content_number8,
9469 { "Content_number8", "h225.Content_number8", FT_UINT32, BASE_DEC,
9470 NULL, 0, "Content_number8", HFILL }},
9471 { &hf_h225_number16,
9472 { "number16", "h225.number16", FT_UINT32, BASE_DEC,
9473 NULL, 0, "number16", HFILL }},
9474 { &hf_h225_Content_number32,
9475 { "Content_number32", "h225.Content_number32", FT_UINT32, BASE_DEC,
9476 NULL, 0, "Content_number32", HFILL }},
9477 { &hf_h225_Content_compound,
9478 { "Content_compound", "h225.Content_compound", FT_NONE, BASE_NONE,
9479 NULL, 0, "Content_compound sequence of", HFILL }},
9480 { &hf_h225_Content_nested,
9481 { "Content_nested", "h225.Content_nested", FT_NONE, BASE_NONE,
9482 NULL, 0, "Content_nested sequence of", HFILL }},
9483 { &hf_h225_replacementFeatureSet,
9484 { "replacementFeatureSet", "h225.replacementFeatureSet", FT_BOOLEAN, 8,
9485 TFS(&tfs_replacementFeatureSet_bit), 0x01, "replacementFeatureSet boolean", HFILL }},
9486 { &hf_h225_neededFeatures,
9487 { "neededFeatures", "h225.neededFeatures", FT_NONE, BASE_NONE,
9488 NULL, 0, "neededFeatures sequence of", HFILL }},
9489 { &hf_h225_desiredFeatures,
9490 { "desiredFeatures", "h225.desiredFeatures", FT_NONE, BASE_NONE,
9491 NULL, 0, "desiredFeatures sequence of", HFILL }},
9492 { &hf_h225_supportedFeatures,
9493 { "supportedFeatures", "h225.supportedFeatures", FT_NONE, BASE_NONE,
9494 NULL, 0, "supportedFeatures sequence of", HFILL }},
9495 { &hf_h225_FeatureSet,
9496 { "FeatureSet", "h225.FeatureSet", FT_NONE, BASE_NONE,
9497 NULL, 0, "FeatureSet sequence", HFILL }},
9498 { &hf_h225_CallsAvailable_calls,
9499 { "CallsAvailable_calls", "h225.CallsAvailable_calls", FT_UINT32, BASE_DEC,
9500 NULL, 0, "CallsAvailable_calls", HFILL }},
9501 { &hf_h225_CallsAvailable_group,
9502 { "CallsAvailable_group", "h225.CallsAvailable_group", FT_STRING, BASE_HEX,
9503 NULL, 0, "CallsAvailable_group IA5String", HFILL }},
9504 { &hf_h225_CallsAvailable,
9505 { "CallsAvailable", "h225.CallsAvailable", FT_NONE, BASE_NONE,
9506 NULL, 0, "CallsAvailable sequence", HFILL }},
9507 { &hf_h225_voiceGwCallsAvailable,
9508 { "voiceGwCallsAvailable", "h225.voiceGwCallsAvailable", FT_NONE, BASE_NONE,
9509 NULL, 0, "voiceGwCallsAvailable sequence of", HFILL }},
9510 { &hf_h225_h310GwCallsAvailable,
9511 { "h310GwCallsAvailable", "h225.h310GwCallsAvailable", FT_NONE, BASE_NONE,
9512 NULL, 0, "h310GwCallsAvailable sequence of", HFILL }},
9513 { &hf_h225_h320GwCallsAvailable,
9514 { "h320GwCallsAvailable", "h225.h320GwCallsAvailable", FT_NONE, BASE_NONE,
9515 NULL, 0, "h320GwCallsAvailable sequence of", HFILL }},
9516 { &hf_h225_h321GwCallsAvailable,
9517 { "h321GwCallsAvailable", "h225.h321GwCallsAvailable", FT_NONE, BASE_NONE,
9518 NULL, 0, "h321GwCallsAvailable sequence of", HFILL }},
9519 { &hf_h225_h322GwCallsAvailable,
9520 { "h322GwCallsAvailable", "h225.h322GwCallsAvailable", FT_NONE, BASE_NONE,
9521 NULL, 0, "h322GwCallsAvailable sequence of", HFILL }},
9522 { &hf_h225_h323GwCallsAvailable,
9523 { "h323GwCallsAvailable", "h225.h323GwCallsAvailable", FT_NONE, BASE_NONE,
9524 NULL, 0, "h323GwCallsAvailable sequence of", HFILL }},
9525 { &hf_h225_h324GwCallsAvailable,
9526 { "h324GwCallsAvailable", "h225.h324GwCallsAvailable", FT_NONE, BASE_NONE,
9527 NULL, 0, "h324GwCallsAvailable sequence of", HFILL }},
9528 { &hf_h225_t120OnlyGwCallsAvailable,
9529 { "t120OnlyGwCallsAvailable", "h225.t120OnlyGwCallsAvailable", FT_NONE, BASE_NONE,
9530 NULL, 0, "t120OnlyGwCallsAvailable sequence of", HFILL }},
9531 { &hf_h225_t38FaxAnnexbOnlyGwCallsAvailable,
9532 { "t38FaxAnnexbOnlyGwCallsAvailable", "h225.t38FaxAnnexbOnlyGwCallsAvailable", FT_NONE, BASE_NONE,
9533 NULL, 0, "t38FaxAnnexbOnlyGwCallsAvailable sequence of", HFILL }},
9534 { &hf_h225_terminalCallsAvailable,
9535 { "terminalCallsAvailable", "h225.terminalCallsAvailable", FT_NONE, BASE_NONE,
9536 NULL, 0, "terminalCallsAvailable sequence of", HFILL }},
9537 { &hf_h225_mcuCallsAvailable,
9538 { "mcuCallsAvailable", "h225.mcuCallsAvailable", FT_NONE, BASE_NONE,
9539 NULL, 0, "mcuCallsAvailable sequence of", HFILL }},
9540 { &hf_h225_sipGwCallsAvailable,
9541 { "sipGwCallsAvailable", "h225.sipGwCallsAvailable", FT_NONE, BASE_NONE,
9542 NULL, 0, "sipGwCallsAvailable sequence of", HFILL }},
9543 { &hf_h225_maximumCallCapacity,
9544 { "maximumCallCapacity", "h225.maximumCallCapacity", FT_NONE, BASE_NONE,
9545 NULL, 0, "maximumCallCapacity sequence", HFILL }},
9546 { &hf_h225_currentCallCapacity,
9547 { "currentCallCapacity", "h225.currentCallCapacity", FT_NONE, BASE_NONE,
9548 NULL, 0, "currentCallCapacity sequence", HFILL }},
9549 { &hf_h225_CallCapacity,
9550 { "CallCapacity", "h225.CallCapacity", FT_NONE, BASE_NONE,
9551 NULL, 0, "CallCapacity sequence", HFILL }},
9552 { &hf_h225_productID,
9553 { "productID", "h225.productID", FT_STRING, BASE_HEX,
9554 NULL, 0, "productID octet string", HFILL }},
9555 { &hf_h225_versionID,
9556 { "versionID", "h225.versionID", FT_STRING, BASE_HEX,
9557 NULL, 0, "versionID octet string", HFILL }},
9558 { &hf_h225_VendorIdentifier,
9559 { "VendorIdentifier", "h225.VendorIdentifier", FT_NONE, BASE_NONE,
9560 NULL, 0, "VendorIdentifier sequence", HFILL }},
9561 { &hf_h225_canReportCallCapacity,
9562 { "canReportCallCapacity", "h225.canReportCallCapacity", FT_BOOLEAN, 8,
9563 TFS(&tfs_canReportCallCapacity_bit), 0x01, "canReportCallCapacity boolean", HFILL }},
9564 { &hf_h225_CapacityReportingCapability,
9565 { "CapacityReportingCapability", "h225.CapacityReportingCapability", FT_NONE, BASE_NONE,
9566 NULL, 0, "CapacityReportingCapability sequence", HFILL }},
9567 { &hf_h225_canDisplayAmountString,
9568 { "canDisplayAmountString", "h225.canDisplayAmountString", FT_BOOLEAN, 8,
9569 TFS(&tfs_canDisplayAmountString_bit), 0x01, "canDisplayAmountString boolean", HFILL }},
9570 { &hf_h225_canEnforceDurationLimit,
9571 { "canEnforceDurationLimit", "h225.canEnforceDurationLimit", FT_BOOLEAN, 8,
9572 TFS(&tfs_canEnforceDurationLimit_bit), 0x01, "canEnforceDurationLimit boolean", HFILL }},
9573 { &hf_h225_CallCreditCapability,
9574 { "CallCreditCapability", "h225.CallCreditCapability", FT_NONE, BASE_NONE,
9575 NULL, 0, "CallCreditCapability sequence", HFILL }},
9576 { &hf_h225_BandwidthDetails_sender,
9577 { "BandwidthDetails_sender", "h225.BandwidthDetails_sender", FT_BOOLEAN, 8,
9578 TFS(&tfs_BandwidthDetails_sender_bit), 0x01, "BandwidthDetails_sender boolean", HFILL }},
9579 { &hf_h225_BandwidthDetails_multicast,
9580 { "BandwidthDetails_multicast", "h225.BandwidthDetails_multicast", FT_BOOLEAN, 8,
9581 TFS(&tfs_BandwidthDetails_multicast_bit), 0x01, "BandwidthDetails_multicast boolean", HFILL }},
9582 { &hf_h225_BandwidthDetails,
9583 { "BandwidthDetails", "h225.BandwidthDetails", FT_NONE, BASE_NONE,
9584 NULL, 0, "BandwidthDetails sequence", HFILL }},
9585 { &hf_h225_releaseCompleteCauseIE,
9586 { "releaseCompleteCauseIE", "h225.releaseCompleteCauseIE", FT_BYTES, BASE_HEX,
9587 NULL, 0, "releaseCompleteCauseIE octet string", HFILL }},
9588 { &hf_h225_CallTerminationCause,
9589 { "CallTerminationCause", "h225.CallTerminationCause", FT_UINT32, BASE_DEC,
9590 VALS(CallTerminationCause_vals), 0, "CallTerminationCause choice", HFILL }},
9591 { &hf_h225_CircuitInfo,
9592 { "CircuitInfo", "h225.CircuitInfo", FT_NONE, BASE_NONE,
9593 NULL, 0, "CircuitInfo sequence", HFILL }},
9594 { &hf_h225_genericData,
9595 { "genericData", "h225.genericData", FT_NONE, BASE_NONE,
9596 NULL, 0, "genericData sequence of", HFILL }},
9597 { &hf_h225_fastStart_item_length,
9598 { "fastStart item length", "h225.fastStart_item_length", FT_UINT32, BASE_DEC,
9599 NULL, 0, "fastStart item length", HFILL }},
9600 { &hf_h225_fastStart,
9601 { "fastStart", "h225.fastStart", FT_NONE, BASE_NONE,
9602 NULL, 0, "fastStart sequence of", HFILL }},
9603 { &hf_h225_fastConnectRefused,
9604 { "fastConnectRefused", "h225.fastConnectRefused", FT_BOOLEAN, 8,
9605 TFS(&tfs_fastConnectRefused_bit), 0x01, "fastConnectRefused boolean", HFILL }},
9606 { &hf_h225_InformationUUIE,
9607 { "InformationUUIE", "h225.InformationUUIE", FT_NONE, BASE_NONE,
9608 NULL, 0, "InformationUUIE sequence", HFILL }},
9609 { &hf_h225_routeCallToSCN,
9610 { "routeCallToSCN", "h225.routeCallToSCN", FT_NONE, BASE_NONE,
9611 NULL, 0, "routeCallToSCN sequence of", HFILL }},
9612 { &hf_h225_AdmissionRejectReason,
9613 { "AdmissionRejectReason", "h225.AdmissionRejectReason", FT_UINT32, BASE_DEC,
9614 VALS(AdmissionRejectReason_vals), 0, "AdmissionRejectReason choice", HFILL }},
9615 { &hf_h225_hMAC_iso10118_2_s,
9616 { "hMAC_iso10118_2_s", "h225.hMAC_iso10118_2_s", FT_UINT32, BASE_DEC,
9617 VALS(EncryptIntAlg_vals), 0, "hMAC_iso10118_2_s choice", HFILL }},
9618 { &hf_h225_hMAC_iso10118_2_l,
9619 { "hMAC_iso10118_2_l", "h225.hMAC_iso10118_2_l", FT_UINT32, BASE_DEC,
9620 VALS(EncryptIntAlg_vals), 0, "hMAC_iso10118_2_l choice", HFILL }},
9621 { &hf_h225_NonIsoIntegrityMechanism,
9622 { "NonIsoIntegrityMechanism", "h225.NonIsoIntegrityMechanism", FT_UINT32, BASE_DEC,
9623 VALS(NonIsoIntegrityMechanism_vals), 0, "NonIsoIntegrityMechanism choice", HFILL }},
9624 { &hf_h225_IntegrityMechanism,
9625 { "IntegrityMechanism", "h225.IntegrityMechanism", FT_UINT32, BASE_DEC,
9626 VALS(IntegrityMechanism_vals), 0, "IntegrityMechanism choice", HFILL }},
9627 { &hf_h225_LocationRejectReason,
9628 { "LocationRejectReason", "h225.LocationRejectReason", FT_UINT32, BASE_DEC,
9629 VALS(LocationRejectReason_vals), 0, "LocationRejectReason choice", HFILL }},
9631 { "mc", "h225.mc", FT_BOOLEAN, 8,
9632 TFS(&tfs_mc_bit), 0x01, "mc boolean", HFILL }},
9633 { &hf_h225_undefinedNode,
9634 { "undefinedNode", "h225.undefinedNode", FT_BOOLEAN, 8,
9635 TFS(&tfs_undefinedNode_bit), 0x01, "undefinedNode boolean", HFILL }},
9636 { &hf_h225_destinationInfo,
9637 { "destinationInfo", "h225.destinationInfo", FT_NONE, BASE_NONE,
9638 NULL, 0, "destinationInfo sequence", HFILL }},
9639 { &hf_h225_EndPointType,
9640 { "EndPointType", "h225.EndPointType", FT_NONE, BASE_NONE,
9641 NULL, 0, "EndPointType sequence", HFILL }},
9642 { &hf_h225_terminalType,
9643 { "terminalType", "h225.terminalType", FT_NONE, BASE_NONE,
9644 NULL, 0, "terminalType sequence", HFILL }},
9645 { &hf_h225_sourceInfo,
9646 { "sourceInfo", "h225.sourceInfo", FT_NONE, BASE_NONE,
9647 NULL, 0, "sourceInfo sequence", HFILL }},
9648 { &hf_h225_multipleCalls,
9649 { "multipleCalls", "h225.multipleCalls", FT_BOOLEAN, 8,
9650 TFS(&tfs_multipleCalls_bit), 0x01, "multipleCalls boolean", HFILL }},
9651 { &hf_h225_maintainConnection,
9652 { "maintainConnection", "h225.maintainConnection", FT_BOOLEAN, 8,
9653 TFS(&tfs_maintainConnection_bit), 0x01, "maintainConnection boolean", HFILL }},
9654 { &hf_h225_CallProceedingUUIE,
9655 { "CallProceedingUUIE", "h225.CallProceedingUUIE", FT_NONE, BASE_NONE,
9656 NULL, 0, "CallProceedingUUIE sequence", HFILL }},
9657 { &hf_h225_CapacityReportingSpecification_when,
9658 { "CapacityReportingSpecification_when", "h225.CapacityReportingSpecification_when", FT_NONE, BASE_NONE,
9659 NULL, 0, "CapacityReportingSpecification_when sequence", HFILL }},
9660 { &hf_h225_CapacityReportingSpecification,
9661 { "CapacityReportingSpecification", "h225.CapacityReportingSpecification", FT_NONE, BASE_NONE,
9662 NULL, 0, "CapacityReportingSpecification sequence", HFILL }},
9663 { &hf_h225_ProgressUUIE,
9664 { "ProgressUUIE", "h225.ProgressUUIE", FT_NONE, BASE_NONE,
9665 NULL, 0, "ProgressUUIE sequence", HFILL }},
9666 { &hf_h225_EndPoint,
9667 { "EndPoint", "h225.EndPoint", FT_NONE, BASE_NONE,
9668 NULL, 0, "EndPoint sequence", HFILL }},
9669 { &hf_h225_destinationType,
9670 { "destinationType", "h225.destinationType", FT_NONE, BASE_NONE,
9671 NULL, 0, "destinationType sequence", HFILL }},
9672 { &hf_h225_destExtraCallInfo,
9673 { "destExtraCallInfo", "h225.destExtraCallInfo", FT_NONE, BASE_NONE,
9674 NULL, 0, "destExtraCallInfo sequence of", HFILL }},
9675 { &hf_h225_remoteExtensionAddress,
9676 { "remoteExtensionAddress", "h225.remoteExtensionAddress", FT_NONE, BASE_NONE,
9677 NULL, 0, "remoteExtensionAddress sequence of", HFILL }},
9678 { &hf_h225_aliasAddress_sequence,
9679 { "aliasAddress_sequence", "h225.aliasAddress_sequence", FT_NONE, BASE_NONE,
9680 NULL, 0, "aliasAddress_sequence sequence of", HFILL }},
9681 { &hf_h225_rasAddress_sequence,
9682 { "rasAddress_sequence", "h225.rasAddress_sequence", FT_NONE, BASE_NONE,
9683 NULL, 0, "rasAddress_sequence sequence of", HFILL }},
9684 { &hf_h225_callSignalAddress,
9685 { "callSignalAddress", "h225.callSignalAddress", FT_NONE, BASE_NONE,
9686 NULL, 0, "callSignalAddress sequence of", HFILL }},
9688 { "ICV", "h225.ICV", FT_NONE, BASE_NONE,
9689 NULL, 0, "ICV sequence", HFILL }},
9690 { &hf_h225_BandwidthConfirm,
9691 { "BandwidthConfirm", "h225.BandwidthConfirm", FT_NONE, BASE_NONE,
9692 NULL, 0, "BandwidthConfirm sequence", HFILL }},
9693 { &hf_h225_UnregistrationConfirm,
9694 { "UnregistrationConfirm", "h225.UnregistrationConfirm", FT_NONE, BASE_NONE,
9695 NULL, 0, "UnregistrationConfirm sequence", HFILL }},
9696 { &hf_h225_NonStandardMessage,
9697 { "NonStandardMessage", "h225.NonStandardMessage", FT_NONE, BASE_NONE,
9698 NULL, 0, "NonStandardMessage sequence", HFILL }},
9699 { &hf_h225_InfoRequestAck,
9700 { "InfoRequestAck", "h225.InfoRequestAck", FT_NONE, BASE_NONE,
9701 NULL, 0, "InfoRequestAck sequence", HFILL }},
9702 { &hf_h225_InfoRequestNak,
9703 { "InfoRequestNak", "h225.InfoRequestNak", FT_NONE, BASE_NONE,
9704 NULL, 0, "InfoRequestNak sequence", HFILL }},
9705 { &hf_h225_ResourcesAvailableConfirm,
9706 { "ResourcesAvailableConfirm", "h225.ResourcesAvailableConfirm", FT_NONE, BASE_NONE,
9707 NULL, 0, "ResourcesAvailableConfirm sequence", HFILL }},
9708 { &hf_h225_GatekeeperRequest,
9709 { "GatekeeperRequest", "h225.GatekeeperRequest", FT_NONE, BASE_NONE,
9710 NULL, 0, "GatekeeperRequest sequence", HFILL }},
9711 { &hf_h225_integrity,
9712 { "integrity", "h225.integrity", FT_NONE, BASE_NONE,
9713 NULL, 0, "integrity sequence of", HFILL }},
9714 { &hf_h225_algorithmOIDs,
9715 { "algorithmOIDs", "h225.algorithmOIDs", FT_NONE, BASE_NONE,
9716 NULL, 0, "algorithmOIDs sequence of", HFILL }},
9717 { &hf_h225_alternateEndpoints,
9718 { "alternateEndpoints", "h225.alternateEndpoints", FT_NONE, BASE_NONE,
9719 NULL, 0, "alternateEndpoints sequence of", HFILL }},
9720 { &hf_h225_endpointAlias,
9721 { "endpointAlias", "h225.endpointAlias", FT_NONE, BASE_NONE,
9722 NULL, 0, "endpointAlias sequence of", HFILL }},
9723 { &hf_h225_ServiceControlResponse,
9724 { "ServiceControlResponse", "h225.ServiceControlResponse", FT_NONE, BASE_NONE,
9725 NULL, 0, "ServiceControlResponse sequence", HFILL }},
9726 { &hf_h225_DisengageReject,
9727 { "DisengageReject", "h225.DisengageReject", FT_NONE, BASE_NONE,
9728 NULL, 0, "DisengageReject sequence", HFILL }},
9729 { &hf_h225_BandwidthReject,
9730 { "BandwidthReject", "h225.BandwidthReject", FT_NONE, BASE_NONE,
9731 NULL, 0, "BandwidthReject sequence", HFILL }},
9732 { &hf_h225_UnregistrationReject,
9733 { "UnregistrationReject", "h225.UnregistrationReject", FT_NONE, BASE_NONE,
9734 NULL, 0, "UnregistrationReject sequence", HFILL }},
9735 { &hf_h225_UnregistrationRequest,
9736 { "UnregistrationRequest", "h225.UnregistrationRequest", FT_NONE, BASE_NONE,
9737 NULL, 0, "UnregistrationRequest sequence", HFILL }},
9738 { &hf_h225_endpointAliasPattern,
9739 { "endpointAliasPattern", "h225.endpointAliasPattern", FT_NONE, BASE_NONE,
9740 NULL, 0, "endpointAliasPattern sequence of", HFILL }},
9741 { &hf_h225_RegistrationReject,
9742 { "RegistrationReject", "h225.RegistrationReject", FT_NONE, BASE_NONE,
9743 NULL, 0, "RegistrationReject sequence", HFILL }},
9744 { &hf_h225_invalidTerminalAliases,
9745 { "invalidTerminalAliases", "h225.invalidTerminalAliases", FT_NONE, BASE_NONE,
9746 NULL, 0, "invalidTerminalAliases sequence", HFILL }},
9747 { &hf_h225_terminalAlias,
9748 { "terminalAlias", "h225.terminalAlias", FT_NONE, BASE_NONE,
9749 NULL, 0, "terminalAlias sequence of", HFILL }},
9750 { &hf_h225_terminalAliasPattern,
9751 { "terminalAliasPattern", "h225.terminalAliasPattern", FT_NONE, BASE_NONE,
9752 NULL, 0, "terminalAliasPattern sequence of", HFILL }},
9753 { &hf_h225_RegistrationRejectReason,
9754 { "RegistrationRejectReason", "h225.RegistrationRejectReason", FT_UINT32, BASE_DEC,
9755 VALS(RegistrationRejectReason_vals), 0, "RegistrationRejectReason choice", HFILL }},
9756 { &hf_h225_duplicateAlias,
9757 { "duplicateAlias", "h225.duplicateAlias", FT_NONE, BASE_NONE,
9758 NULL, 0, "duplicateAlias sequence of", HFILL }},
9759 { &hf_h225_GatekeeperReject,
9760 { "GatekeeperReject", "h225.GatekeeperReject", FT_NONE, BASE_NONE,
9761 NULL, 0, "GatekeeperReject sequence", HFILL }},
9762 { &hf_h225_almostOutOfResources,
9763 { "almostOutOfResources", "h225.almostOutOfResources", FT_BOOLEAN, 8,
9764 TFS(&tfs_almostOutOfResources_bit), 0x01, "almostOutOfResources boolean", HFILL }},
9765 { &hf_h225_ResourcesAvailableIndicate,
9766 { "ResourcesAvailableIndicate", "h225.ResourcesAvailableIndicate", FT_NONE, BASE_NONE,
9767 NULL, 0, "ResourcesAvailableIndicate sequence", HFILL }},
9768 { &hf_h225_protocols,
9769 { "protocols", "h225.protocols", FT_NONE, BASE_NONE,
9770 NULL, 0, "protocols sequence of", HFILL }},
9771 { &hf_h225_callDurationLimit,
9772 { "callDurationLimit", "h225.callDurationLimit", FT_UINT32, BASE_DEC,
9773 NULL, 0, "callDurationLimit", HFILL }},
9774 { &hf_h225_enforceCallDurationLimit,
9775 { "enforceCallDurationLimit", "h225.enforceCallDurationLimit", FT_BOOLEAN, 8,
9776 TFS(&tfs_enforceCallDurationLimit_bit), 0x01, "enforceCallDurationLimit boolean", HFILL }},
9777 { &hf_h225_CallCreditServiceControl,
9778 { "CallCreditServiceControl", "h225.CallCreditServiceControl", FT_NONE, BASE_NONE,
9779 NULL, 0, "CallCreditServiceControl sequence", HFILL }},
9780 { &hf_h225_ScreeningIndicator,
9781 { "ScreeningIndicator", "h225.ScreeningIndicator", FT_UINT32, BASE_DEC,
9782 VALS(ScreeningIndicator_vals), 0, "ScreeningIndicator", HFILL }},
9783 { &hf_h225_ExtendedAliasAddress,
9784 { "ExtendedAliasAddress", "h225.ExtendedAliasAddress", FT_NONE, BASE_NONE,
9785 NULL, 0, "ExtendedAliasAddress sequence", HFILL }},
9786 { &hf_h225_messageNotUnderstood,
9787 { "messageNotUnderstood", "h225.messageNotUnderstood", FT_BYTES, BASE_HEX,
9788 NULL, 0, "messageNotUnderstood octet string", HFILL }},
9789 { &hf_h225_UnknownMessageResponse,
9790 { "UnknownMessageResponse", "h225.UnknownMessageResponse", FT_NONE, BASE_NONE,
9791 NULL, 0, "UnknownMessageResponse sequence", HFILL }},
9792 { &hf_h225_CallReferenceValue,
9793 { "CallReferenceValue", "h225.CallReferenceValue", FT_UINT32, BASE_DEC,
9794 NULL, 0, "CallReferenceValue", HFILL }},
9795 { &hf_h225_AdmissionRequest,
9796 { "AdmissionRequest", "h225.AdmissionRequest", FT_NONE, BASE_NONE,
9797 NULL, 0, "AdmissionRequest sequence", HFILL }},
9798 { &hf_h225_canMapSrcAlias,
9799 { "canMapSrcAlias", "h225.canMapSrcAlias", FT_BOOLEAN, 8,
9800 TFS(&tfs_canMapSrcAlias_bit), 0x01, "canMapSrcAlias boolean", HFILL }},
9801 { &hf_h225_desiredProtocols,
9802 { "desiredProtocols", "h225.desiredProtocols", FT_NONE, BASE_NONE,
9803 NULL, 0, "desiredProtocols sequence of", HFILL }},
9804 { &hf_h225_willSupplyUUIEs,
9805 { "willSupplyUUIEs", "h225.willSupplyUUIEs", FT_BOOLEAN, 8,
9806 TFS(&tfs_willSupplyUUIEs_bit), 0x01, "willSupplyUUIEs boolean", HFILL }},
9807 { &hf_h225_destAlternatives,
9808 { "destAlternatives", "h225.destAlternatives", FT_NONE, BASE_NONE,
9809 NULL, 0, "destAlternatives sequence of", HFILL }},
9810 { &hf_h225_srcAlternatives,
9811 { "srcAlternatives", "h225.srcAlternatives", FT_NONE, BASE_NONE,
9812 NULL, 0, "srcAlternatives sequence of", HFILL }},
9813 { &hf_h225_canMapAlias,
9814 { "canMapAlias", "h225.canMapAlias", FT_BOOLEAN, 8,
9815 TFS(&tfs_canMapAlias_bit), 0x01, "canMapAlias boolean", HFILL }},
9816 { &hf_h225_activeMC,
9817 { "activeMC", "h225.activeMC", FT_BOOLEAN, 8,
9818 TFS(&tfs_activeMC_bit), 0x01, "activeMC boolean", HFILL }},
9820 { "srcInfo", "h225.srcInfo", FT_NONE, BASE_NONE,
9821 NULL, 0, "srcInfo sequence of", HFILL }},
9822 { &hf_h225_DestinationInfo,
9823 { "DestinationInfo", "h225.DestinationInfo", FT_NONE, BASE_NONE,
9824 NULL, 0, "DestinationInfo sequence of", HFILL }},
9825 { &hf_h225_InfoRequest,
9826 { "InfoRequest", "h225.InfoRequest", FT_NONE, BASE_NONE,
9827 NULL, 0, "InfoRequest sequence", HFILL }},
9828 { &hf_h225_nextSegmentRequested,
9829 { "nextSegmentRequested", "h225.nextSegmentRequested", FT_UINT32, BASE_DEC,
9830 NULL, 0, "nextSegmentRequested", HFILL }},
9832 { "delay", "h225.delay", FT_UINT32, BASE_DEC,
9833 NULL, 0, "delay", HFILL }},
9834 { &hf_h225_RequestInProgress,
9835 { "RequestInProgress", "h225.RequestInProgress", FT_NONE, BASE_NONE,
9836 NULL, 0, "RequestInProgress sequence", HFILL }},
9837 { &hf_h225_H248SignalsDescriptor,
9838 { "H248SignalsDescriptor", "h225.H248SignalsDescriptor", FT_BYTES, BASE_HEX,
9839 NULL, 0, "H248SignalsDescriptor octet string", HFILL }},
9841 { "url", "h225.url", FT_BYTES, BASE_HEX,
9842 NULL, 0, "url IA5String", HFILL }},
9843 { &hf_h225_ServiceControlDescriptor,
9844 { "ServiceControlDescriptor", "h225.ServiceControlDescriptor", FT_UINT32, BASE_DEC,
9845 VALS(ServiceControlDescriptor_vals), 0, "ServiceControlDescriptor choice", HFILL }},
9846 { &hf_h225_ServiceControlSession,
9847 { "ServiceControlSession", "h225.ServiceControlSession", FT_NONE, BASE_NONE,
9848 NULL, 0, "ServiceControlSession sequence", HFILL }},
9849 { &hf_h225_sessionId,
9850 { "sessionId", "h225.sessionId", FT_UINT32, BASE_DEC,
9851 NULL, 0, "sessionId", HFILL }},
9852 { &hf_h225_AlertingUUIE,
9853 { "AlertingUUIE", "h225.AlertingUUIE", FT_NONE, BASE_NONE,
9854 NULL, 0, "AlertingUUIE sequence", HFILL }},
9855 { &hf_h225_serviceControl,
9856 { "serviceControl", "h225.serviceControl", FT_NONE, BASE_NONE,
9857 NULL, 0, "serviceControl sequence of", HFILL }},
9858 { &hf_h225_alertingAddress,
9859 { "alertingAddress", "h225.alertingAddress", FT_NONE, BASE_NONE,
9860 NULL, 0, "alertingAddress sequence of", HFILL }},
9861 { &hf_h225_ReleaseCompleteUUIE,
9862 { "ReleaseCompleteUUIE", "h225.ReleaseCompleteUUIE", FT_NONE, BASE_NONE,
9863 NULL, 0, "ReleaseCompleteUUIE sequence", HFILL }},
9864 { &hf_h225_busyAddress,
9865 { "busyAddress", "h225.busyAddress", FT_NONE, BASE_NONE,
9866 NULL, 0, "busyAddress sequence of", HFILL }},
9867 { &hf_h225_FacilityUUIE,
9868 { "FacilityUUIE", "h225.FacilityUUIE", FT_NONE, BASE_NONE,
9869 NULL, 0, "FacilityUUIE sequence", HFILL }},
9870 { &hf_h225_alternativeAliasAddress,
9871 { "alternativeAliasAddress", "h225.alternativeAliasAddress", FT_NONE, BASE_NONE,
9872 NULL, 0, "alternativeAliasAddress sequence of", HFILL }},
9873 { &hf_h225_AdmissionReject,
9874 { "AdmissionReject", "h225.AdmissionReject", FT_NONE, BASE_NONE,
9875 NULL, 0, "AdmissionReject sequence", HFILL }},
9876 { &hf_h225_hopCount,
9877 { "hopCount", "h225.hopCount", FT_UINT32, BASE_DEC,
9878 NULL, 0, "hopCount", HFILL }},
9879 { &hf_h225_parallelH245Control,
9880 { "parallelH245Control", "h225.parallelH245Control", FT_NONE, BASE_NONE,
9881 NULL, 0, "parallelH245Control sequence of", HFILL }},
9882 { &hf_h225_language,
9883 { "language", "h225.language", FT_BYTES, BASE_HEX,
9884 NULL, 0, "language IA5String", HFILL }},
9885 { &hf_h225_languages,
9886 { "languages", "h225.languages", FT_NONE, BASE_NONE,
9887 NULL, 0, "languages sequence of", HFILL }},
9888 { &hf_h225_mediaWaitForConnect,
9889 { "mediaWaitForConnect", "h225.mediaWaitForConnect", FT_BOOLEAN, 8,
9890 TFS(&tfs_mediaWaitForConnect_bit), 0x01, "mediaWaitForConnect boolean", HFILL }},
9891 { &hf_h225_canOverlapSend,
9892 { "canOverlapSend", "h225.canOverlapSend", FT_BOOLEAN, 8,
9893 TFS(&tfs_canOverlapSend_bit), 0x01, "canOverlapSend boolean", HFILL }},
9894 { &hf_h225_SetupUUIE,
9895 { "SetupUUIE", "h225.SetupUUIE", FT_NONE, BASE_NONE,
9896 NULL, 0, "SetupUUIE sequence", HFILL }},
9897 { &hf_h225_sourceAddress,
9898 { "sourceAddress", "h225.sourceAddress", FT_NONE, BASE_NONE,
9899 NULL, 0, "sourceAddress sequence of", HFILL }},
9900 { &hf_h225_destinationAddress,
9901 { "destinationAddress", "h225.destinationAddress", FT_NONE, BASE_NONE,
9902 NULL, 0, "destinationAddress sequence of", HFILL }},
9903 { &hf_h225_destExtraCRV,
9904 { "destExtraCRV", "h225.destExtraCRV", FT_NONE, BASE_NONE,
9905 NULL, 0, "destExtraCRV sequence of", HFILL }},
9906 { &hf_h225_h245SecurityCapability,
9907 { "h245SecurityCapability", "h225.h245SecurityCapability", FT_NONE, BASE_NONE,
9908 NULL, 0, "h245SecurityCapability sequence of", HFILL }},
9909 { &hf_h225_additionalSourceAddresses,
9910 { "additionalSourceAddresses", "h225.additionalSourceAddresses", FT_NONE, BASE_NONE,
9911 NULL, 0, "additionalSourceAddresses sequence of", HFILL }},
9912 { &hf_h225_ConnectUUIE,
9913 { "ConnectUUIE", "h225.ConnectUUIE", FT_NONE, BASE_NONE,
9914 NULL, 0, "ConnectUUIE sequence", HFILL }},
9915 { &hf_h225_connectedAddress,
9916 { "connectedAddress", "h225.connectedAddress", FT_NONE, BASE_NONE,
9917 NULL, 0, "connectedAddress sequence of", HFILL }},
9918 { &hf_h225_h323_message_body,
9919 { "h323_message_body", "h225.h323_message_body", FT_UINT32, BASE_DEC,
9920 VALS(h323_message_body_vals), 0, "h323_message_body choice", HFILL }},
9921 { &hf_h225_LocationConfirm,
9922 { "LocationConfirm", "h225.LocationConfirm", FT_NONE, BASE_NONE,
9923 NULL, 0, "LocationConfirm sequence", HFILL }},
9924 { &hf_h225_supportedProtocols,
9925 { "supportedProtocols", "h225.supportedProtocols", FT_NONE, BASE_NONE,
9926 NULL, 0, "supportedProtocols sequence of", HFILL }},
9927 { &hf_h225_modifiedSrcInfo,
9928 { "modifiedSrcInfo", "h225.modifiedSrcInfo", FT_NONE, BASE_NONE,
9929 NULL, 0, "modifiedSrcInfo sequence of", HFILL }},
9930 { &hf_h225_LocationReject,
9931 { "LocationReject", "h225.LocationReject", FT_NONE, BASE_NONE,
9932 NULL, 0, "LocationReject sequence", HFILL }},
9933 { &hf_h225_callSpecific,
9934 { "callSpecific", "h225.callSpecific", FT_NONE, BASE_NONE,
9935 NULL, 0, "callSpecific sequence", HFILL }},
9936 { &hf_h225_answeredCall,
9937 { "answeredCall", "h225.answeredCall", FT_BOOLEAN, 8,
9938 TFS(&tfs_answeredCall_bit), 0x01, "answeredCall boolean", HFILL }},
9939 { &hf_h225_ServiceControlIndication,
9940 { "ServiceControlIndication", "h225.ServiceControlIndication", FT_NONE, BASE_NONE,
9941 NULL, 0, "ServiceControlIndication sequence", HFILL }},
9942 { &hf_h225_RasUsageInformation,
9943 { "RasUsageInformation", "h225.RasUsageInformation", FT_NONE, BASE_NONE,
9944 NULL, 0, "RasUsageInformation sequence", HFILL }},
9945 { &hf_h225_nonStandardUsageFields,
9946 { "nonStandardUsageFields", "h225.nonStandardUsageFields", FT_NONE, BASE_NONE,
9947 NULL, 0, "SEQUENCE OF NonStandardParameter", HFILL }},
9948 { &hf_h225_nonStandardUsageFields_item,
9949 { "nonStandardUsageFields", "h225.nonStandardUsageFields_item", FT_NONE, BASE_NONE,
9950 NULL, 0, "NonStandardParameter", HFILL }},
9951 { &hf_h225_TimeToLive,
9952 { "TimeToLive", "h225.TimeToLive", FT_UINT32, BASE_DEC,
9953 NULL, 0, "TimeToLive in seconds", HFILL }},
9954 { &hf_h225_GatekeeperConfirm,
9955 { "GatekeeperConfirm", "h225.GatekeeperConfirm", FT_NONE, BASE_NONE,
9956 NULL, 0, "GatekeeperConfirm sequence", HFILL }},
9957 { &hf_h225_RegistrationRequest,
9958 { "RegistrationRequest", "h225.RegistrationRequest", FT_NONE, BASE_NONE,
9959 NULL, 0, "RegistrationRequest sequence", HFILL }},
9960 { &hf_h225_discoveryComplete,
9961 { "discoveryComplete", "h225.discoveryComplete", FT_BOOLEAN, 8,
9962 TFS(&tfs_discoveryComplete_bit), 0x01, "discoveryComplete boolean", HFILL }},
9963 { &hf_h225_keepAlive,
9964 { "keepAlive", "h225.keepAlive", FT_BOOLEAN, 8,
9965 TFS(&tfs_keepAlive_bit), 0x01, "keepAlive boolean", HFILL }},
9966 { &hf_h225_H248PackagesDescriptor,
9967 { "H248PackagesDescriptor", "h225.H248PackagesDescriptor", FT_BYTES, BASE_HEX,
9968 NULL, 0, "H248PackagesDescriptor octet string", HFILL }},
9969 { &hf_h225_supportedH248Packages,
9970 { "supportedH248Packages", "h225.supportedH248Packages", FT_NONE, BASE_NONE,
9971 NULL, 0, "supportedH248Packages sequence of", HFILL }},
9972 { &hf_h225_DisengageConfirm,
9973 { "DisengageConfirm", "h225.DisengageConfirm", FT_NONE, BASE_NONE,
9974 NULL, 0, "DisengageConfirm sequence", HFILL }},
9975 { &hf_h225_AdmissionConfirm,
9976 { "AdmissionConfirm", "h225.AdmissionConfirm", FT_NONE, BASE_NONE,
9977 NULL, 0, "AdmissionConfirm sequence", HFILL }},
9978 { &hf_h225_irrFrequency,
9979 { "irrFrequency", "h225.irrFrequency", FT_UINT32, BASE_DEC,
9980 NULL, 0, "irrFrequency", HFILL }},
9981 { &hf_h225_willRespondToIRR,
9982 { "willRespondToIRR", "h225.willRespondToIRR", FT_BOOLEAN, 8,
9983 TFS(&tfs_willRespondToIRR_bit), 0x01, "willRespondToIRR boolean", HFILL }},
9984 { &hf_h225_usageSpec,
9985 { "usageSpec", "h225.usageSpec", FT_NONE, BASE_NONE,
9986 NULL, 0, "usageSpec sequence of", HFILL }},
9987 { &hf_h225_DisengageRequest,
9988 { "DisengageRequest", "h225.DisengageRequest", FT_NONE, BASE_NONE,
9989 NULL, 0, "DisengageRequest sequence", HFILL }},
9990 { &hf_h225_LocationRequest,
9991 { "LocationRequest", "h225.LocationRequest", FT_NONE, BASE_NONE,
9992 NULL, 0, "LocationRequest sequence", HFILL }},
9993 { &hf_h225_SourceInfo,
9994 { "SourceInfo", "h225.SourceInfo", FT_NONE, BASE_NONE,
9995 NULL, 0, "SourceInfo sequence of", HFILL }},
9996 { &hf_h225_hopCount255,
9997 { "hopCount255", "h225.hopCount255", FT_UINT32, BASE_DEC,
9998 NULL, 0, "hopCount255", HFILL }},
9999 { &hf_h225_sourceEndpointInfo,
10000 { "sourceEndpointInfo", "h225.sourceEndpointInfo", FT_NONE, BASE_NONE,
10001 NULL, 0, "sourceEndpointInfo sequence of", HFILL }},
10002 { &hf_h225_BandwidthRequest,
10003 { "BandwidthRequest", "h225.BandwidthRequest", FT_NONE, BASE_NONE,
10004 NULL, 0, "BandwidthRequest sequence", HFILL }},
10005 { &hf_h225_bandwidthDetails,
10006 { "bandwidthDetails", "h225.bandwidthDetails", FT_NONE, BASE_NONE,
10007 NULL, 0, "bandwidthDetails sequence of", HFILL }},
10008 { &hf_h225_admissionConfirmSequence,
10009 { "admissionConfirmSequence", "h225.admissionConfirmSequence", FT_NONE, BASE_NONE,
10010 NULL, 0, "admissionConfirmSequence sequence of", HFILL }},
10011 { &hf_h225_tunnelledSignallingMessage,
10012 { "tunnelledSignallingMessage", "h225.tunnelledSignallingMessage", FT_NONE, BASE_NONE,
10013 NULL, 0, "tunnelledSignallingMessage sequence", HFILL }},
10014 { &hf_h225_messageContent_item,
10015 { "messageContent_item", "h225.messageContent_item", FT_BYTES, BASE_HEX,
10016 NULL, 0, "messageContent_item octet string", HFILL }},
10017 { &hf_h225_messageContent,
10018 { "messageContent", "h225.messageContent", FT_NONE, BASE_NONE,
10019 NULL, 0, "messageContent sequence of", HFILL }},
10020 { &hf_h225_H323_UU_PDU,
10021 { "H323_UU_PDU", "h225.H323_UU_PDU", FT_NONE, BASE_NONE,
10022 NULL, 0, "H323_UU_PDU sequence", HFILL }},
10023 { &hf_h225_h4501SupplementaryService,
10024 { "h4501SupplementaryService", "h225.h4501SupplementaryService", FT_NONE, BASE_NONE,
10025 NULL, 0, "h4501SupplementaryService sequence of", HFILL }},
10026 { &hf_h225_h245Tunneling,
10027 { "h245Tunneling", "h225.h245Tunneling", FT_BOOLEAN, 8,
10028 TFS(&tfs_h245Tunneling_bit), 0x01, "h245Tunneling boolean", HFILL }},
10029 { &hf_h225_h245Control,
10030 { "h245Control", "h225.h245Control", FT_NONE, BASE_NONE,
10031 NULL, 0, "h245Control sequence of", HFILL }},
10032 { &hf_h225_nonStandardControl,
10033 { "nonStandardControl", "h225.nonStandardControl", FT_NONE, BASE_NONE,
10034 NULL, 0, "SEQUENCE OF NonStandardParameter", HFILL }},
10035 { &hf_h225_nonStandardControl_item,
10036 { "nonStandardControl", "h225.nonStandardControl_item", FT_NONE, BASE_NONE,
10037 NULL, 0, "NonStandardParameter", HFILL }},
10038 { &hf_h225_preGrantedARQ,
10039 { "preGrantedARQ", "h225.preGrantedARQ", FT_NONE, BASE_NONE,
10040 NULL, 0, "preGrantedARQ sequence", HFILL }},
10041 { &hf_h225_makeCall,
10042 { "makeCall", "h225.makeCall", FT_BOOLEAN, 8,
10043 TFS(&tfs_makeCall_bit), 0x01, "makeCall boolean", HFILL }},
10044 { &hf_h225_useGKCallSignalAddressToMakeCall,
10045 { "useGKCallSignalAddressToMakeCall", "h225.useGKCallSignalAddressToMakeCall", FT_BOOLEAN, 8,
10046 TFS(&tfs_useGKCallSignalAddressToMakeCall_bit), 0x01, "useGKCallSignalAddressToMakeCall boolean", HFILL }},
10047 { &hf_h225_answerCall,
10048 { "answerCall", "h225.answerCall", FT_BOOLEAN, 8,
10049 TFS(&tfs_answerCall_bit), 0x01, "answerCall boolean", HFILL }},
10050 { &hf_h225_useGKCallSignalAddressToAnswer,
10051 { "useGKCallSignalAddressToAnswer", "h225.useGKCallSignalAddressToAnswer", FT_BOOLEAN, 8,
10052 TFS(&tfs_useGKCallSignalAddressToAnswer_bit), 0x01, "useGKCallSignalAddressToAnswer boolean", HFILL }},
10053 { &hf_h225_RegistrationConfirm,
10054 { "RegistrationConfirm", "h225.RegistrationConfirm", FT_NONE, BASE_NONE,
10055 NULL, 0, "RegistrationConfirm sequence", HFILL }},
10056 { &hf_h225_pdu_item,
10057 { "pdu_item", "h225.pdu_item", FT_NONE, BASE_NONE,
10058 NULL, 0, "pdu_item sequence", HFILL }},
10060 { "sent", "h225.sent", FT_BOOLEAN, 8,
10061 TFS(&tfs_sent_bit), 0x01, "sent boolean", HFILL }},
10063 { "pdu", "h225.pdu", FT_NONE, BASE_NONE,
10064 NULL, 0, "pdu sequence of", HFILL }},
10065 { &hf_h225_perCallInfo_item,
10066 { "perCallInfo_item", "h225.perCallInfo_item", FT_NONE, BASE_NONE,
10067 NULL, 0, "perCallInfo_item sequence", HFILL }},
10068 { &hf_h225_originator,
10069 { "originator", "h225.originator", FT_BOOLEAN, 8,
10070 TFS(&tfs_originator_bit), 0x01, "originator boolean", HFILL }},
10072 { "audio", "h225.audio", FT_NONE, BASE_NONE,
10073 NULL, 0, "audio sequence of", HFILL }},
10075 { "video", "h225.video", FT_NONE, BASE_NONE,
10076 NULL, 0, "video sequence of", HFILL }},
10078 { "data", "h225.data", FT_NONE, BASE_NONE,
10079 NULL, 0, "data sequence of", HFILL }},
10080 { &hf_h225_substituteConfIDs,
10081 { "substituteConfIDs", "h225.substituteConfIDs", FT_NONE, BASE_NONE,
10082 NULL, 0, "substituteConfIDs sequence of", HFILL }},
10083 { &hf_h225_perCallInfo,
10084 { "perCallInfo", "h225.perCallInfo", FT_NONE, BASE_NONE,
10085 NULL, 0, "perCallInfo sequence of", HFILL }},
10086 { &hf_h225_InfoRequestResponse,
10087 { "InfoRequestResponse", "h225.InfoRequestResponse", FT_NONE, BASE_NONE,
10088 NULL, 0, "InfoRequestResponse sequence", HFILL }},
10089 { &hf_h225_needResponse,
10090 { "needResponse", "h225.needResponse", FT_BOOLEAN, 8,
10091 TFS(&tfs_needResponse_bit), 0x01, "needResponse boolean", HFILL }},
10092 { &hf_h225_unsolicited,
10093 { "unsolicited", "h225.unsolicited", FT_BOOLEAN, 8,
10094 TFS(&tfs_unsolicited_bit), 0x01, "unsolicited boolean", HFILL }},
10095 { &hf_h225_RasMessage,
10096 { "RasMessage", "h225.RasMessage", FT_UINT32, BASE_DEC,
10097 VALS(RasMessage_vals), 0, "RasMessage choice", HFILL }},
10098 { &hf_h225_H323_UserInformation,
10099 { "H323_UserInformation", "h225.H323_UserInformation", FT_NONE, BASE_NONE,
10100 NULL, 0, "H323_UserInformation sequence", HFILL }},
10101 { &hf_h225_user_data,
10102 { "user_data", "h225.user_data", FT_NONE, BASE_NONE,
10103 NULL, 0, "user_data sequence", HFILL }},
10104 { &hf_h225_protocol_discriminator,
10105 { "protocol_discriminator", "h225.protocol_discriminator", FT_UINT32, BASE_DEC,
10106 NULL, 0, "protocol_discriminator", HFILL }},
10107 { &hf_h225_user_information,
10108 { "user_information", "h225.user_information", FT_BYTES, BASE_HEX,
10109 NULL, 0, "user_information octet string", HFILL }},
10111 { "object", "h225.object", FT_STRING, BASE_NONE,
10112 NULL, 0, "OBJECT IDENTIFIER", HFILL }},
10113 { &hf_h225_t35CountryCode,
10114 { "t35CountryCode", "h225.t35CountryCode", FT_UINT32, BASE_DEC,
10115 VALS(T35CountryCode_vals), 0, "t35CountryCode value", HFILL }},
10116 { &hf_h225_t35Extension,
10117 { "t35Extension", "h225.t35Extension", FT_UINT32, BASE_DEC,
10118 NULL, 0, "t35Extension value", HFILL }},
10119 { &hf_h225_manufacturerCode,
10120 { "manufacturerCode", "h225.manufacturerCode", FT_UINT32, BASE_DEC,
10121 NULL, 0, "manufacturerCode value", HFILL }},
10123 { &hf_h221Manufacturer,
10124 { "H.221 Manufacturer", "h221.Manufacturer", FT_UINT32, BASE_HEX,
10125 VALS(H221ManufacturerCode_vals), 0, "H.221 Manufacturer", HFILL }},
10127 { &hf_h225_h221NonStandard,
10128 { "h221NonStandard", "h225.h221NonStandard", FT_NONE, BASE_NONE,
10129 NULL, 0, "H221NonStandard SEQUENCE", HFILL }},
10130 { &hf_h225_nonStandardIdentifier,
10131 { "nonStandardIdentifier", "h245.NonStandardIdentifier_type", FT_UINT32, BASE_DEC,
10132 VALS(NonStandardIdentifier_vals), 0, "NonStandardIdentifier CHOICE", HFILL }},
10133 { &hf_h225_nsp_data,
10134 { "data", "h225.nsp_data", FT_BYTES, BASE_HEX,
10135 NULL, 0, "OCTET STRING", HFILL }},
10136 { &hf_h225_nonStandardData,
10137 { "nonStandardData", "h225.nonStandardData", FT_NONE, BASE_NONE,
10138 NULL, 0, "NonStandardParameter SEQUENCE", HFILL }},
10139 { &hf_h225_nonStandard,
10140 { "nonStandard", "h225.nonStandard", FT_NONE, BASE_NONE,
10141 NULL, 0, "NonStandardParameter SEQUENCE", HFILL }},
10142 { &hf_h225_nonStandardReason,
10143 { "nonStandardReason", "h225.nonStandardReason", FT_NONE, BASE_NONE,
10144 NULL, 0, "NonStandardParameter SEQUENCE", HFILL }},
10145 { &hf_h225_nonStandardAddress,
10146 { "nonStandardAddress", "h225.nonStandardAddress", FT_NONE, BASE_NONE,
10147 NULL, 0, "NonStandardParameter SEQUENCE", HFILL }},
10148 { &hf_h225_ras_req_frame,
10149 { "RAS Request Frame", "h225.ras.reqframe", FT_FRAMENUM, BASE_NONE,
10150 NULL, 0, "RAS Request Frame", HFILL }},
10151 { &hf_h225_ras_rsp_frame,
10152 { "RAS Response Frame", "h225.ras.rspframe", FT_FRAMENUM, BASE_NONE,
10153 NULL, 0, "RAS Response Frame", HFILL }},
10154 { &hf_h225_ras_dup,
10155 { "Duplicate RAS Message", "h225.ras.dup", FT_UINT32, BASE_DEC,
10156 NULL, 0, "Duplicate RAS Message", HFILL }},
10157 { &hf_h225_ras_deltatime,
10158 { "RAS Service Response Time", "h225.ras.timedelta", FT_RELATIVE_TIME, BASE_NONE,
10159 NULL, 0, "Timedelta between RAS-Request and RAS-Response", HFILL }},
10160 { &hf_h225_cleartoken,
10161 { "cleartoken", "h225.cleartoken", FT_NONE, BASE_NONE,
10162 NULL, 0, "ClearToken", HFILL }},
10163 { &hf_h225_cryptoEPPwdHash,
10164 { "cryptoEPPwdHash", "h225.cryptoEPPwdHash",
10165 FT_NONE, BASE_NONE, NULL, 0,
10166 "CryptoH323Token/cryptoEPPwdHash", HFILL }},
10167 { &hf_h225_timeStamp,
10168 { "timeStamp", "h225.timeStamp",
10169 FT_UINT32, BASE_DEC, NULL, 0,
10172 { "token", "h225.token",
10173 FT_NONE, BASE_NONE, NULL, 0,
10175 { &hf_h225_cryptoGKPwdHash,
10176 { "cryptoGKPwdHash", "h225.cryptoGKPwdHash",
10177 FT_NONE, BASE_NONE, NULL, 0,
10178 "CryptoH323Token/cryptoGKPwdHash", HFILL }},
10179 { &hf_h225_cryptoEPPwdEncr,
10180 { "cryptoEPPwdEncr", "h225.cryptoEPPwdEncr",
10181 FT_NONE, BASE_NONE, NULL, 0,
10182 "CryptoH323Token/cryptoEPPwdEncr", HFILL }},
10183 { &hf_h225_cryptoGKPwdEncr,
10184 { "cryptoGKPwdEncr", "h225.cryptoGKPwdEncr",
10185 FT_NONE, BASE_NONE, NULL, 0,
10186 "CryptoH323Token/cryptoGKPwdEncr", HFILL }},
10187 { &hf_h225_cryptoEPCert,
10188 { "cryptoEPCert", "h225.cryptoEPCert",
10189 FT_NONE, BASE_NONE, NULL, 0,
10190 "CryptoH323Token/cryptoEPCert", HFILL }},
10191 { &hf_h225_cryptoGKCert,
10192 { "cryptoGKCert", "h225.cryptoGKCert",
10193 FT_NONE, BASE_NONE, NULL, 0,
10194 "CryptoH323Token/cryptoGKCert", HFILL }},
10195 { &hf_h225_cryptoFastStart,
10196 { "cryptoFastStart", "h225.cryptoFastStart",
10197 FT_NONE, BASE_NONE, NULL, 0,
10198 "CryptoH323Token/cryptoFastStart", HFILL }},
10199 { &hf_h225_nestedcryptoToken,
10200 { "nestedcryptoToken", "h225.nestedcryptoToken",
10201 FT_UINT32, BASE_DEC, VALS(CryptoToken_vals), 0,
10202 "CryptoH323Token/nestedcryptoToken", HFILL }},
10203 { &hf_h225_cryptoTokens_item,
10204 { "CryptoH323Token", "h225.cryptoTokens_item",
10205 FT_UINT32, BASE_DEC, VALS(CryptoH323Token_vals), 0,
10207 { &hf_h225_authenticationCapability,
10208 { "authenticationCapability", "h225.authenticationCapability",
10209 FT_UINT32, BASE_DEC, NULL, 0,
10210 "GatekeeperRequest/authenticationCapability", HFILL }},
10211 { &hf_h225_authenticationCapability_item,
10212 { "authenticationCapability", "h225.authenticationCapability_item",
10213 FT_NONE, BASE_NONE, NULL, 0,
10214 "GatekeeperRequest/authenticationCapability/_item", HFILL }},
10215 { &hf_h225_authenticationMode,
10216 { "authenticationMode", "h225.authenticationMode",
10217 FT_NONE, BASE_NONE, NULL, 0,
10218 "GatekeeperConfirm/authenticationMode", HFILL }},
10219 { &hf_h225_alertingTime,
10220 { "alertingTime", "h225.alertingTime",
10221 FT_UINT32, BASE_DEC, NULL, 0,
10222 "RasUsageInformation/alertingTime", HFILL }},
10223 { &hf_h225_connectTime,
10224 { "connectTime", "h225.connectTime",
10225 FT_UINT32, BASE_DEC, NULL, 0,
10226 "RasUsageInformation/connectTime", HFILL }},
10227 { &hf_h225_endTimeStamp,
10228 { "endTime", "h225.endTime",
10229 FT_UINT32, BASE_DEC, NULL, 0,
10230 "RasUsageInformation/endTime", HFILL }},
10235 static gint *ett[] =
10238 &ett_h225_SecurityServiceMode_encryption,
10239 &ett_h225_SecurityServiceMode_authentication,
10240 &ett_h225_SecurityServiceMode_integrity,
10241 &ett_h225_H245Security,
10242 &ett_h225_ReleaseCompleteReason,
10244 &ett_h225_TransportAddress,
10245 &ett_h225_InfoRequestResponseStatus,
10246 &ett_h225_systemid,
10247 &ett_h225_MobileUIM,
10248 &ett_h225_PartyNumber,
10249 &ett_h225_AliasAddress,
10250 &ett_h225_AddressPattern,
10251 &ett_h225_SupportedProtocols,
10252 &ett_h225_GenericIdentifier,
10254 &ett_h225_CallTerminationCause,
10255 &ett_h225_AdmissionRejectReason,
10256 &ett_h225_EncryptIntAlg,
10257 &ett_h225_NonIsoIntegrityMechanism,
10258 &ett_h225_IntegrityMechanism,
10259 &ett_h225_LocationRejectReason,
10260 &ett_h225_RegistrationRejectReason,
10261 &ett_h225_ServiceControlDescriptor,
10262 &ett_h225_h323_message_body,
10263 &ett_h225_RasMessage,
10264 &ett_h225_GatekeeperRejectReason,
10265 &ett_h225_PresentationIndicator,
10266 &ett_h225_CryptoH323Token,
10267 &ett_h225_conferenceGoal,
10268 &ett_h225_ScnConnectionType,
10269 &ett_h225_ScnConnectionAggregation,
10270 &ett_h225_FacilityReason,
10271 &ett_h225_PublicTypeOfNumber,
10272 &ett_h225_PrivateTypeOfNumber,
10273 &ett_h225_UseSpecifiedTransport,
10274 &ett_h225_SecurityErrors,
10275 &ett_h225_SecurityErrors2,
10276 &ett_h225_ServiceControlSession_reason,
10277 &ett_h225_billingMode,
10278 &ett_h225_CCSCcallStartingPoint,
10279 &ett_h225_UnregRequestReason,
10280 &ett_h225_UnregRejectReason,
10281 &ett_h225_CallType,
10282 &ett_h225_CallModel,
10283 &ett_h225_TransportQOS,
10284 &ett_h225_BandRejectReason,
10285 &ett_h225_DisengageReason,
10286 &ett_h225_DisengageRejectReason,
10287 &ett_h225_InfoRequestNakReason,
10288 &ett_h225_SCRresult,
10289 &ett_h225_GatekeeperInfo,
10290 &ett_h225_SecurityCapabilities_tls,
10291 &ett_h225_SecurityCapabilities_ipsec,
10292 &ett_h225_RasUsageInfoTypes,
10293 &ett_h225_T_nonStandardUsageTypes,
10294 &ett_h225_DataRate,
10295 &ett_h225_dataRatesSupported,
10296 &ett_h225_TerminalInfo,
10297 &ett_h225_StimulusControl,
10298 &ett_h225_connectionParameters,
10299 &ett_h225_RasUsageSpecification_when,
10300 &ett_h225_RasUsageSpecification_callStartingPoint,
10301 &ett_h225_RasUsageSpecification,
10302 &ett_h225_ipAddress,
10304 &ett_h225_ipSourceRoute,
10305 &ett_h225_ipxAddress,
10306 &ett_h225_ip6Address,
10307 &ett_h225_TransportChannelInfo,
10308 &ett_h225_CarrierInfo,
10309 &ett_h225_CallIdentifier,
10310 &ett_h225_CallLinkage,
10312 &ett_h225_CryptoH323Tokens,
10313 &ett_h225_AlternateGK,
10314 &ett_h225_alternateGatekeeper,
10315 &ett_h225_AltGKInfo,
10318 &ett_h225_AlternateTransportAddress,
10319 &ett_h225_UUIEsRequested,
10320 &ett_h225_Q954Details,
10321 &ett_h225_QseriesOptions,
10322 &ett_h225_associatedSessionIds,
10323 &ett_h225_RTPSession,
10324 &ett_h225_StatusUUIE,
10325 &ett_h225_StatusInquiryUUIE,
10326 &ett_h225_SetupAcknowledgeUUIE,
10327 &ett_h225_NotifyUUIE,
10329 &ett_h225_ANSI41UIM,
10330 &ett_h225_e164Number,
10331 &ett_h225_privateNumber,
10332 &ett_h225_TunnelledProtocolAlternateIdentifier,
10333 &ett_h225_SupportedPrefix,
10334 &ett_h225_SupportedPrefixes,
10335 &ett_h225_H310Caps,
10336 &ett_h225_H320Caps,
10337 &ett_h225_H321Caps,
10338 &ett_h225_H322Caps,
10339 &ett_h225_H323Caps,
10340 &ett_h225_H324Caps,
10341 &ett_h225_VoiceCaps,
10342 &ett_h225_T120OnlyCaps,
10343 &ett_h225_NonStandardProtocol,
10345 &ett_h225_AddressPattern_range,
10346 &ett_h225_ConferenceList,
10347 &ett_h225_conferences,
10348 &ett_h225_T38FaxAnnexbOnlyCaps,
10349 &ett_h225_protocol,
10350 &ett_h225_GatewayInfo,
10352 &ett_h225_TunnelledProtocol_id,
10353 &ett_h225_TunnelledProtocol,
10354 &ett_h225_TunnelledProtocols,
10355 &ett_h225_CicInfo_cic,
10357 &ett_h225_GroupID_member,
10359 &ett_h225_CircuitIdentifier,
10360 &ett_h225_EnumeratedParameter,
10361 &ett_h225_parameters,
10362 &ett_h225_GenericData,
10363 &ett_h225_Content_compound,
10364 &ett_h225_Content_nested,
10365 &ett_h225_neededFeatures,
10366 &ett_h225_desiredFeatures,
10367 &ett_h225_supportedFeatures,
10368 &ett_h225_FeatureSet,
10369 &ett_h225_CallsAvailable,
10370 &ett_h225_voiceGwCallsAvailable,
10371 &ett_h225_h310GwCallsAvailable,
10372 &ett_h225_h320GwCallsAvailable,
10373 &ett_h225_h321GwCallsAvailable,
10374 &ett_h225_h322GwCallsAvailable,
10375 &ett_h225_h323GwCallsAvailable,
10376 &ett_h225_h324GwCallsAvailable,
10377 &ett_h225_t120OnlyGwCallsAvailable,
10378 &ett_h225_t38FaxAnnexbOnlyGwCallsAvailable,
10379 &ett_h225_terminalCallsAvailable,
10380 &ett_h225_mcuCallsAvailable,
10381 &ett_h225_sipGwCallsAvailable,
10382 &ett_h225_CallCapacityInfo,
10383 &ett_h225_CallCapacity,
10384 &ett_h225_VendorIdentifier,
10385 &ett_h225_CapacityReportingCapability,
10386 &ett_h225_CallCreditCapability,
10387 &ett_h225_BandwidthDetails,
10388 &ett_h225_CircuitInfo,
10389 &ett_h225_genericData,
10390 &ett_h225_fastStart,
10391 &ett_h225_InformationUUIE,
10392 &ett_h225_routeCallToSCN,
10393 &ett_h225_EndPointType,
10394 &ett_h225_CallProceedingUUIE,
10395 &ett_h225_CapacityReportingSpecification_when,
10396 &ett_h225_CapacityReportingSpecification,
10397 &ett_h225_ProgressUUIE,
10398 &ett_h225_EndPoint,
10399 &ett_h225_destExtraCallInfo,
10400 &ett_h225_remoteExtensionAddress,
10401 &ett_h225_rasAddress_sequence,
10402 &ett_h225_callSignalAddress,
10404 &ett_h225_BandwidthConfirm,
10405 &ett_h225_UnregistrationConfirm,
10406 &ett_h225_NonStandardMessage,
10407 &ett_h225_InfoRequestAck,
10408 &ett_h225_InfoRequestNak,
10409 &ett_h225_ResourcesAvailableConfirm,
10410 &ett_h225_GatekeeperRequest,
10411 &ett_h225_integrity,
10412 &ett_h225_algorithmOIDs,
10413 &ett_h225_alternateEndpoints,
10414 &ett_h225_endpointAlias,
10415 &ett_h225_ServiceControlResponse,
10416 &ett_h225_DisengageReject,
10417 &ett_h225_BandwidthReject,
10418 &ett_h225_UnregistrationReject,
10419 &ett_h225_UnregistrationRequest,
10420 &ett_h225_endpointAliasPattern,
10421 &ett_h225_RegistrationReject,
10422 &ett_h225_invalidTerminalAliases,
10423 &ett_h225_terminalAlias,
10424 &ett_h225_terminalAliasPattern,
10425 &ett_h225_duplicateAlias,
10426 &ett_h225_GatekeeperReject,
10427 &ett_h225_ResourcesAvailableIndicate,
10428 &ett_h225_protocols,
10429 &ett_h225_CallCreditServiceControl,
10430 &ett_h225_ExtendedAliasAddress,
10431 &ett_h225_UnknownMessageResponse,
10432 &ett_h225_AdmissionRequest,
10433 &ett_h225_desiredProtocols,
10434 &ett_h225_destAlternatives,
10435 &ett_h225_srcAlternatives,
10437 &ett_h225_DestinationInfo,
10438 &ett_h225_InfoRequest,
10439 &ett_h225_RequestInProgress,
10440 &ett_h225_ServiceControlSession,
10441 &ett_h225_AlertingUUIE,
10442 &ett_h225_serviceControl,
10443 &ett_h225_alertingAddress,
10444 &ett_h225_ReleaseCompleteUUIE,
10445 &ett_h225_busyAddress,
10446 &ett_h225_FacilityUUIE,
10447 &ett_h225_alternativeAliasAddress,
10448 &ett_h225_AdmissionReject,
10449 &ett_h225_parallelH245Control,
10450 &ett_h225_languages,
10451 &ett_h225_SetupUUIE,
10452 &ett_h225_sourceAddress,
10453 &ett_h225_destinationAddress,
10454 &ett_h225_destExtraCRV,
10455 &ett_h225_h245SecurityCapability,
10456 &ett_h225_additionalSourceAddresses,
10457 &ett_h225_ConnectUUIE,
10458 &ett_h225_connectedAddress,
10459 &ett_h225_LocationConfirm,
10460 &ett_h225_supportedProtocols,
10461 &ett_h225_modifiedSrcInfo,
10462 &ett_h225_LocationReject,
10463 &ett_h225_callSpecific,
10464 &ett_h225_ServiceControlIndication,
10465 &ett_h225_RasUsageInformation,
10466 &ett_h225_T_nonStandardUsageFields,
10467 &ett_h225_GatekeeperConfirm,
10468 &ett_h225_RegistrationRequest,
10469 &ett_h225_supportedH248Packages,
10470 &ett_h225_DisengageConfirm,
10471 &ett_h225_AdmissionConfirm,
10472 &ett_h225_usageSpec,
10473 &ett_h225_DisengageRequest,
10474 &ett_h225_LocationRequest,
10475 &ett_h225_SourceInfo,
10476 &ett_h225_sourceEndpointInfo,
10477 &ett_h225_BandwidthRequest,
10478 &ett_h225_bandwidthDetails,
10479 &ett_h225_admissionConfirmSequence,
10480 &ett_h225_tunnelledSignallingMessage,
10481 &ett_h225_messageContent,
10482 &ett_h225_H323_UU_PDU,
10483 &ett_h225_h4501SupplementaryService,
10484 &ett_h225_h245Control,
10485 &ett_h225_T_nonStandardControl,
10486 &ett_h225_preGrantedARQ,
10487 &ett_h225_RegistrationConfirm,
10488 &ett_h225_pdu_item,
10490 &ett_h225_perCallInfo_item,
10494 &ett_h225_substituteConfIDs,
10495 &ett_h225_perCallInfo,
10496 &ett_h225_InfoRequestResponse,
10497 &ett_h225_H323_UserInformation,
10498 &ett_h225_user_data,
10499 &ett_h225_H221NonStandard,
10500 &ett_h225_NonStandardIdentifier,
10501 &ett_h225_NonStandardParameter,
10502 &ett_h225_T_cryptoEPPwdHash,
10503 &ett_h225_T_cryptoGKPwdHash,
10504 &ett_h225_aliasAddress_sequence,
10507 module_t *h225_module;
10509 proto_h225 = proto_register_protocol("H225", "H225", "h225");
10510 proto_register_field_array(proto_h225, hf, array_length(hf));
10511 proto_register_subtree_array(ett, array_length(ett));
10512 h225_module = prefs_register_protocol(proto_h225, NULL);
10513 prefs_register_bool_preference(h225_module, "reassembly",
10514 "Reassemble H.225 over TCP",
10515 "Whether the dissector should reassemble H.225 PDUs spanning multiple TCP segments",
10517 register_dissector("h225", dissect_h225_H323UserInformation, proto_h225);
10519 nsp_object_dissector_table = register_dissector_table("h225.nsp.object", "H.225 NonStandardParameter (object)", FT_STRING, BASE_NONE);
10520 nsp_h221_dissector_table = register_dissector_table("h225.nsp.h221", "H.225 NonStandardParameter (h221)", FT_UINT32, BASE_HEX);
10521 tp_dissector_table = register_dissector_table("h225.tp", "H.225 TunnelledProtocol", FT_STRING, BASE_NONE);
10523 register_init_routine(&h225_init_routine);
10524 h225_tap = register_tap("h225");
10528 proto_reg_handoff_h225(void)
10530 h225ras_handle=create_dissector_handle(dissect_h225_RasMessage, proto_h225);
10531 H323UserInformation_handle=create_dissector_handle(dissect_h225_H323UserInformation, proto_h225);
10533 h245_handle = find_dissector("h245");
10534 h245dg_handle = find_dissector("h245dg");
10535 h4501_handle = find_dissector("h4501");
10536 data_handle = find_dissector("data");
10538 dissector_add("udp.port", UDP_PORT_RAS1, h225ras_handle);
10539 dissector_add("udp.port", UDP_PORT_RAS2, h225ras_handle);
10543 static void reset_h225_packet_info(h225_packet_info *pi)
10549 pi->msg_type = H225_OTHERS;
10552 pi->requestSeqNum = 0;
10553 memset(pi->guid,0,16);
10554 pi->is_duplicate = FALSE;
10555 pi->request_available = FALSE;
10559 The following function contains the routines for RAS request/response matching.
10560 A RAS response matches with a request, if both messages have the same
10561 RequestSequenceNumber, belong to the same IP conversation and belong to the same
10562 RAS "category" (e.g. Admission, Registration).
10564 We use hashtables to access the lists of RAS calls (request/response pairs).
10565 We have one hashtable for each RAS category. The hashkeys consist of the
10566 non-unique 16-bit RequestSequenceNumber and values representing the conversation.
10568 In big capture files, we might get different requests with identical keys.
10569 These requests aren't necessarily duplicates. They might be valid new requests.
10570 At the moment we just use the timedelta between the last valid and the new request
10571 to decide if the new request is a duplicate or not. There might be better ways.
10572 Two thresholds are defined below.
10574 However the decision is made, another problem arises. We can't just add those
10575 requests to our hashtables. Instead we create lists of RAS calls with identical keys.
10576 The hashtables for RAS calls contain now pointers to the first RAS call in a list of
10577 RAS calls with identical keys.
10578 These lists aren't expected to contain more than 3 items and are usually single item
10579 lists. So we don't need an expensive but intelligent way to access these lists
10580 (e.g. hashtables). Just walk through such a list.
10583 #define THRESHOLD_REPEATED_RESPONDED_CALL 300
10584 #define THRESHOLD_REPEATED_NOT_RESPONDED_CALL 1800
10586 static void ras_call_matching(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, h225_packet_info *pi)
10588 conversation_t* conversation = NULL;
10589 h225ras_call_info_key h225ras_call_key;
10590 h225ras_call_t *h225ras_call = NULL;
10592 guint msg_category;
10594 if(pi->msg_type == H225_RAS && pi->msg_tag < 21) {
10595 /* make RAS request/response matching only for tags from 0 to 20 for now */
10597 msg_category = pi->msg_tag / 3;
10598 if(pi->msg_tag % 3 == 0) { /* Request Message */
10599 conversation = find_conversation(&pinfo->src,
10600 &pinfo->dst, pinfo->ptype, pinfo->srcport,
10601 pinfo->destport, 0);
10603 if (conversation == NULL) {
10604 /* It's not part of any conversation - create a new one. */
10605 conversation = conversation_new(&pinfo->src,
10606 &pinfo->dst, pinfo->ptype, pinfo->srcport,
10607 pinfo->destport, 0);
10611 /* prepare the key data */
10612 h225ras_call_key.reqSeqNum = pi->requestSeqNum;
10613 h225ras_call_key.conversation = conversation;
10615 /* look up the request */
10616 h225ras_call = find_h225ras_call(&h225ras_call_key ,msg_category);
10618 if (h225ras_call != NULL) {
10619 /* We've seen requests with this reqSeqNum, with the same
10620 source and destination, before - do we have
10621 *this* request already? */
10622 /* Walk through list of ras requests with identical keys */
10624 if (pinfo->fd->num == h225ras_call->req_num) {
10625 /* We have seen this request before -> do nothing */
10629 /* if end of list is reached, exit loop and decide if request is duplicate or not. */
10630 if (h225ras_call->next_call == NULL) {
10631 if ( (pinfo->fd->num > h225ras_call->rsp_num && h225ras_call->rsp_num != 0
10632 && pinfo->fd->abs_secs > (guint) (h225ras_call->req_time.secs + THRESHOLD_REPEATED_RESPONDED_CALL) )
10633 ||(pinfo->fd->num > h225ras_call->req_num && h225ras_call->rsp_num == 0
10634 && pinfo->fd->abs_secs > (guint) (h225ras_call->req_time.secs + THRESHOLD_REPEATED_NOT_RESPONDED_CALL) ) )
10636 /* if last request has been responded
10637 and this request appears after last response (has bigger frame number)
10638 and last request occured more than 300 seconds ago,
10639 or if last request hasn't been responded
10640 and this request appears after last request (has bigger frame number)
10641 and last request occured more than 1800 seconds ago,
10642 we decide that we have a new request */
10643 /* Append new ras call to list */
10644 h225ras_call = append_h225ras_call(h225ras_call, pinfo, pi->guid, msg_category);
10646 /* No, so it's a duplicate request.
10647 Mark it as such. */
10648 pi->is_duplicate = TRUE;
10649 proto_tree_add_uint_hidden(tree, hf_h225_ras_dup, tvb, 0,0, pi->requestSeqNum);
10653 h225ras_call = h225ras_call->next_call;
10654 } while (h225ras_call != NULL );
10657 h225ras_call = new_h225ras_call(&h225ras_call_key, pinfo, pi->guid, msg_category);
10660 /* add link to response frame, if available */
10661 if(h225ras_call->rsp_num != 0){
10662 proto_tree_add_uint_format(tree, hf_h225_ras_rsp_frame, tvb, 0, 0, h225ras_call->rsp_num,
10663 "The response to this request is in frame %u", h225ras_call->rsp_num);
10666 /* end of request message handling*/
10668 else { /* Confirm or Reject Message */
10669 conversation = find_conversation(&pinfo->src,
10670 &pinfo->dst, pinfo->ptype, pinfo->srcport,
10671 pinfo->destport, 0);
10672 if (conversation != NULL) {
10673 /* look only for matching request, if
10674 matching conversation is available. */
10675 h225ras_call_key.reqSeqNum = pi->requestSeqNum;
10676 h225ras_call_key.conversation = conversation;
10677 h225ras_call = find_h225ras_call(&h225ras_call_key ,msg_category);
10679 /* find matching ras_call in list of ras calls with identical keys */
10681 if (pinfo->fd->num == h225ras_call->rsp_num) {
10682 /* We have seen this response before -> stop now with matching ras call */
10686 /* Break when list end is reached */
10687 if(h225ras_call->next_call == NULL) {
10690 h225ras_call = h225ras_call->next_call;
10691 } while (h225ras_call != NULL) ;
10693 /* if this is an ACF, ARJ or DCF, DRJ, give guid to tap and make it filterable */
10694 if (msg_category == 3 || msg_category == 5) {
10695 memcpy(pi->guid, h225ras_call->guid,16);
10696 proto_tree_add_bytes_hidden(tree, hf_h225_guid, tvb, 0, 16, pi->guid);
10699 if (h225ras_call->rsp_num == 0) {
10700 /* We have not yet seen a response to that call, so
10701 this must be the first response; remember its
10703 h225ras_call->rsp_num = pinfo->fd->num;
10706 /* We have seen a response to this call - but was it
10707 *this* response? */
10708 if (h225ras_call->rsp_num != pinfo->fd->num) {
10709 /* No, so it's a duplicate response.
10710 Mark it as such. */
10711 pi->is_duplicate = TRUE;
10712 proto_tree_add_uint_hidden(tree, hf_h225_ras_dup, tvb, 0,0, pi->requestSeqNum);
10716 if(h225ras_call->req_num != 0){
10717 h225ras_call->responded = TRUE;
10718 pi->request_available = TRUE;
10720 /* Indicate the frame to which this is a reply. */
10721 proto_tree_add_uint_format(tree, hf_h225_ras_req_frame, tvb, 0, 0, h225ras_call->req_num,
10722 "This is a response to a request in frame %u", h225ras_call->req_num);
10724 /* Calculate RAS Service Response Time */
10725 delta.secs= pinfo->fd->abs_secs-h225ras_call->req_time.secs;
10726 delta.nsecs=pinfo->fd->abs_usecs*1000-h225ras_call->req_time.nsecs;
10728 delta.nsecs+=1000000000;
10731 pi->delta_time.secs = delta.secs; /* give it to tap */
10732 pi->delta_time.nsecs = delta.nsecs;
10734 /* display Ras Service Response Time and make it filterable */
10735 proto_tree_add_time(tree, hf_h225_ras_deltatime, tvb, 0, 0, &(pi->delta_time));