Fix a small bug in h245.cnf.
[obnox/wireshark/wip.git] / epan / dissectors / packet-h245.c
1 /* Do not modify this file.                                                   */
2 /* It is created automatically by the ASN.1 to Ethereal dissector compiler    */
3 /* ./packet-h245.c                                                            */
4 /* ../../tools/asn2eth.py -X -e -p h245 -c h245.cnf -s packet-h245-template h245.asn */
5
6 /* Input file: packet-h245-template.c */
7
8 /* packet-h245_asn1.c
9  * Routines for h245 packet dissection
10  * Copyright 2004, Anders Broman <anders.broman@ericsson.com>
11  *
12  * $Id$
13  *
14  * Ethereal - Network traffic analyzer
15  * By Gerald Combs <gerald@ethereal.com>
16  * Copyright 1998 Gerald Combs
17  *
18  * This program is free software; you can redistribute it and/or
19  * modify it under the terms of the GNU General Public License
20  * as published by the Free Software Foundation; either version 2
21  * of the License, or (at your option) any later version.
22  *
23  * This program is distributed in the hope that it will be useful,
24  * but WITHOUT ANY WARRANTY; without even the implied warranty of
25  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
26  * GNU General Public License for more details.
27  *
28  * You should have received a copy of the GNU General Public License
29  * along with this program; if not, write to the Free Software
30  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
31  *
32  * To quote the author of the previous H245 dissector:
33  *   "This is a complete replacement of the previous limitied dissector
34  * that Ronnie was crazy enough to write by hand. It was a lot of time
35  * to hack it by hand, but it is incomplete and buggy and it is good when
36  * it will go away."
37  * Ronnie did a great job and all the VoIP users had made good use of it!
38  * Credit to Tomas Kukosa for developing the Asn2eth compiler.
39  *
40  */
41
42 #ifdef HAVE_CONFIG_H
43 # include "config.h"
44 #endif
45
46 #include <glib.h>
47 #include <epan/packet.h>
48 #include <epan/conversation.h>
49
50 #include <stdio.h>
51 #include <string.h>
52
53 #include <epan/prefs.h>
54 #include "tap.h"
55 #include "packet-h245.h"
56 #include "packet-tpkt.h"
57 #include "packet-per.h"
58 #include <epan/t35.h>
59 #include "packet-rtp.h"
60 #include "packet-rtcp.h"
61 #include "packet-ber.h"
62
63 #define PNAME  "h245"
64 #define PSNAME "h245"
65 #define PFNAME "h245"
66
67 static dissector_handle_t rtp_handle=NULL;
68 static dissector_handle_t rtcp_handle=NULL;
69 static dissector_table_t nsp_object_dissector_table;
70 static dissector_table_t nsp_h221_dissector_table;
71 static dissector_handle_t nsp_handle;
72 static dissector_handle_t h245_handle;
73 static dissector_handle_t MultimediaSystemControlMessage_handle;
74
75 static void reset_h245_packet_info(h245_packet_info *pi);
76 static int hf_h245_pdu_type = -1;
77 static int h245_tap = -1;
78 static int ett_h245 = -1;
79 static h245_packet_info h245_pi;
80
81 static gboolean h245_reassembly = TRUE;
82 static gboolean h245_shorttypes = FALSE;
83 static const value_string h245_RequestMessage_short_vals[] = {
84         {  0,   "NSM" },
85         {  1,   "MSD" },
86         {  2,   "TCS" },
87         {  3,   "OLC" },
88         {  4,   "CLC" },
89         {  5,   "RCC" },
90         {  6,   "MES" },
91         {  7,   "RME" },
92         {  8,   "RM" },
93         {  9,   "RTDR" },
94         { 10,   "MLR" },
95         { 11,   "CMR" },
96         { 12,   "CR" },
97         { 13,   "MR" },
98         { 14,   "LCRR" },
99         { 15,   "GR" },
100         {  0, NULL }
101 };
102 static const value_string h245_ResponseMessage_short_vals[] = {
103         {  0,   "NSM" },
104         {  1,   "MSDAck" },
105         {  2,   "MSDReject" },
106         {  3,   "TCSAck" },
107         {  4,   "TCSReject" },
108         {  5,   "OLCAck" },
109         {  6,   "OLCReject" },
110         {  7,   "CLCAck" },
111         {  8,   "RCCAck" },
112         {  9,   "RCCReject" },
113         { 10,   "MESAck" },
114         { 11,   "MESReject" },
115         { 12,   "RMEAck" },
116         { 13,   "RMEReject" },
117         { 14,   "RMAck" },
118         { 15,   "RMReject" },
119         { 16,   "RTDResponse" },
120         { 17,   "MLAck" },
121         { 18,   "MLReject" },
122         { 19,   "CMResponse" },
123         { 20,   "CResponse" },
124         { 21,   "MResponse" },
125         { 22,   "LCRAck" },
126         { 23,   "LCRReject" },
127         { 24,   "GR" },
128         {  0, NULL }
129 };
130 static const value_string h245_IndicationMessage_short_vals[] = {
131         {  0,   "NSM" },
132         {  1,   "FNU" },
133         {  2,   "MSDRelease" },
134         {  3,   "TCSRelease" },
135         {  4,   "OLCConfirm" },
136         {  5,   "RCCRelease" },
137         {  6,   "MESRelease" },
138         {  7,   "RMERelease" },
139         {  8,   "RMRelease" },
140         {  9,   "MI" },
141         { 10,   "JI" },
142         { 11,   "H223SI" },
143         { 12,   "NATMVCI" },
144         { 13,   "UII" },
145         { 14,   "H2250MSI" },
146         { 15,   "MCLI" },
147         { 16,   "CI" },
148         { 17,   "VI" },
149         { 18,   "FNS" },
150         { 19,   "MultilinkIndication" },
151         { 20,   "LCRRelease" },
152         { 21,   "FCIndication" },
153         { 22,   "MMRI" },
154         { 22,   "GI" },
155         {  0, NULL }
156 };
157 static const value_string h245_CommandMessage_short_vals[] = {
158         {  0,   "NSM" },
159         {  1,   "MLOC" },
160         {  2,   "STCS" },
161         {  3,   "EC" },
162         {  4,   "FCC" },
163         {  5,   "ESC" },
164         {  6,   "MC" },
165         {  7,   "CMC" },
166         {  8,   "CC" },
167         {  9,   "H223MR" },
168         { 10,   "NATMVCC" },
169         { 11,   "MMRC" },
170         { 12,   "GC" },
171         {  0, NULL }
172 };
173
174 /* To put the codec type only in COL_INFO when
175    an OLC is read */
176
177 char* codec_type = NULL;
178 static char standard_oid_str[256];
179 static guint32 ipv4_address;
180 static guint32 ipv4_port;
181 static guint32 rtcp_ipv4_address;
182 static guint32 rtcp_ipv4_port;
183 static gboolean media_channel;
184 static gboolean media_control_channel;
185
186 static const value_string h245_RFC_number_vals[] = {
187         {  2190,        "RFC 2190 - H.263 Video Streams" },
188         {  2429,        "RFC 2429 - 1998 Version of ITU-T Rec. H.263 Video (H.263+)" },
189         {  3267,        "RFC 3267 - Adaptive Multi-Rate (AMR) and Adaptive Multi-Rate Wideband (AMR-WB)" },
190         {  0, NULL }
191 };
192 /* Initialize the protocol and registered fields */
193 int proto_h245 = -1;
194
195 /*--- Included file: packet-h245-hf.c ---*/
196
197 static int hf_h245_request = -1;                  /* RequestMessage */
198 static int hf_h245_response = -1;                 /* ResponseMessage */
199 static int hf_h245_command = -1;                  /* CommandMessage */
200 static int hf_h245_indication = -1;               /* IndicationMessage */
201 static int hf_h245_nonStandardMsg = -1;           /* NonStandardMessage */
202 static int hf_h245_masterSlaveDetermination = -1;  /* MasterSlaveDetermination */
203 static int hf_h245_terminalCapabilitySet = -1;    /* TerminalCapabilitySet */
204 static int hf_h245_openLogicalChannel = -1;       /* OpenLogicalChannel */
205 static int hf_h245_closeLogicalChannel = -1;      /* CloseLogicalChannel */
206 static int hf_h245_requestChannelClose = -1;      /* RequestChannelClose */
207 static int hf_h245_multiplexEntrySend = -1;       /* MultiplexEntrySend */
208 static int hf_h245_requestMultiplexEntry = -1;    /* RequestMultiplexEntry */
209 static int hf_h245_requestMode = -1;              /* RequestMode */
210 static int hf_h245_roundTripDelayRequest = -1;    /* RoundTripDelayRequest */
211 static int hf_h245_maintenanceLoopRequest = -1;   /* MaintenanceLoopRequest */
212 static int hf_h245_communicationModeRequest = -1;  /* CommunicationModeRequest */
213 static int hf_h245_conferenceRequest = -1;        /* ConferenceRequest */
214 static int hf_h245_multilinkRequest = -1;         /* MultilinkRequest */
215 static int hf_h245_logicalChannelRateRequest = -1;  /* LogicalChannelRateRequest */
216 static int hf_h245_genericRequest = -1;           /* GenericMessage */
217 static int hf_h245_masterSlaveDeterminationAck = -1;  /* MasterSlaveDeterminationAck */
218 static int hf_h245_masterSlaveDeterminationReject = -1;  /* MasterSlaveDeterminationReject */
219 static int hf_h245_terminalCapabilitySetAck = -1;  /* TerminalCapabilitySetAck */
220 static int hf_h245_terminalCapabilitySetReject = -1;  /* TerminalCapabilitySetReject */
221 static int hf_h245_openLogicalChannelAck = -1;    /* OpenLogicalChannelAck */
222 static int hf_h245_openLogicalChannelReject = -1;  /* OpenLogicalChannelReject */
223 static int hf_h245_closeLogicalChannelAck = -1;   /* CloseLogicalChannelAck */
224 static int hf_h245_requestChannelCloseAck = -1;   /* RequestChannelCloseAck */
225 static int hf_h245_requestChannelCloseReject = -1;  /* RequestChannelCloseReject */
226 static int hf_h245_multiplexEntrySendAck = -1;    /* MultiplexEntrySendAck */
227 static int hf_h245_multiplexEntrySendReject = -1;  /* MultiplexEntrySendReject */
228 static int hf_h245_requestMultiplexEntryAck = -1;  /* RequestMultiplexEntryAck */
229 static int hf_h245_requestMultiplexEntryReject = -1;  /* RequestMultiplexEntryReject */
230 static int hf_h245_requestModeAck = -1;           /* RequestModeAck */
231 static int hf_h245_requestModeReject = -1;        /* RequestModeReject */
232 static int hf_h245_roundTripDelayResponse = -1;   /* RoundTripDelayResponse */
233 static int hf_h245_maintenanceLoopAck = -1;       /* MaintenanceLoopAck */
234 static int hf_h245_maintenanceLoopReject = -1;    /* MaintenanceLoopReject */
235 static int hf_h245_communicationModeResponse = -1;  /* CommunicationModeResponse */
236 static int hf_h245_conferenceResponse = -1;       /* ConferenceResponse */
237 static int hf_h245_multilinkResponse = -1;        /* MultilinkResponse */
238 static int hf_h245_logicalChannelRateAcknowledge = -1;  /* LogicalChannelRateAcknowledge */
239 static int hf_h245_logicalChannelRateReject = -1;  /* LogicalChannelRateReject */
240 static int hf_h245_genericResponse = -1;          /* GenericMessage */
241 static int hf_h245_maintenanceLoopOffCommand = -1;  /* MaintenanceLoopOffCommand */
242 static int hf_h245_sendTerminalCapabilitySet = -1;  /* SendTerminalCapabilitySet */
243 static int hf_h245_encryptionCommand = -1;        /* EncryptionCommand */
244 static int hf_h245_flowControlCommand = -1;       /* FlowControlCommand */
245 static int hf_h245_endSessionCommand = -1;        /* EndSessionCommand */
246 static int hf_h245_miscellaneousCommand = -1;     /* MiscellaneousCommand */
247 static int hf_h245_communicationModeCommand = -1;  /* CommunicationModeCommand */
248 static int hf_h245_conferenceCommand = -1;        /* ConferenceCommand */
249 static int hf_h245_h223MultiplexReconfiguration = -1;  /* H223MultiplexReconfiguration */
250 static int hf_h245_newATMVCCommand = -1;          /* NewATMVCCommand */
251 static int hf_h245_mobileMultilinkReconfigurationCommand = -1;  /* MobileMultilinkReconfigurationCommand */
252 static int hf_h245_genericCommand = -1;           /* GenericMessage */
253 static int hf_h245_functionNotUnderstood = -1;    /* FunctionNotUnderstood */
254 static int hf_h245_masterSlaveDeterminationRelease = -1;  /* MasterSlaveDeterminationRelease */
255 static int hf_h245_terminalCapabilitySetRelease = -1;  /* TerminalCapabilitySetRelease */
256 static int hf_h245_openLogicalChannelConfirm = -1;  /* OpenLogicalChannelConfirm */
257 static int hf_h245_requestChannelCloseRelease = -1;  /* RequestChannelCloseRelease */
258 static int hf_h245_multiplexEntrySendRelease = -1;  /* MultiplexEntrySendRelease */
259 static int hf_h245_requestMultiplexEntryRelease = -1;  /* RequestMultiplexEntryRelease */
260 static int hf_h245_requestModeRelease = -1;       /* RequestModeRelease */
261 static int hf_h245_miscellaneousIndication = -1;  /* MiscellaneousIndication */
262 static int hf_h245_jitterIndication = -1;         /* JitterIndication */
263 static int hf_h245_h223SkewIndication = -1;       /* H223SkewIndication */
264 static int hf_h245_newATMVCIndication = -1;       /* NewATMVCIndication */
265 static int hf_h245_userInput = -1;                /* UserInputIndication */
266 static int hf_h245_h2250MaximumSkewIndication = -1;  /* H2250MaximumSkewIndication */
267 static int hf_h245_mcLocationIndication = -1;     /* MCLocationIndication */
268 static int hf_h245_conferenceIndication = -1;     /* ConferenceIndication */
269 static int hf_h245_vendorIdentification = -1;     /* VendorIdentification */
270 static int hf_h245_functionNotSupported = -1;     /* FunctionNotSupported */
271 static int hf_h245_multilinkIndication = -1;      /* MultilinkIndication */
272 static int hf_h245_logicalChannelRateRelease = -1;  /* LogicalChannelRateRelease */
273 static int hf_h245_flowControlIndication = -1;    /* FlowControlIndication */
274 static int hf_h245_mobileMultilinkReconfigurationIndication = -1;  /* MobileMultilinkReconfigurationIndication */
275 static int hf_h245_genericIndication = -1;        /* GenericMessage */
276 static int hf_h245_messageIdentifier = -1;        /* CapabilityIdentifier */
277 static int hf_h245_subMessageIdentifer = -1;      /* T_subMessageIdentifer */
278 static int hf_h245_messageContent = -1;           /* SEQUNCE_OF_GenericParameter */
279 static int hf_h245_messageContent_item = -1;      /* GenericParameter */
280 static int hf_h245_nonStandardData = -1;          /* NonStandardParameter */
281 static int hf_h245_nonStandardIdentifier = -1;    /* NonStandardIdentifier */
282 static int hf_h245_nsd_data = -1;                 /* OCTET_STRING */
283 static int hf_h245_object = -1;                   /* OBJECT_IDENTIFIER */
284 static int hf_h245_h221NonStandardID = -1;        /* H221NonStandardID */
285 static int hf_h245_t35CountryCode = -1;           /* INTEGER_0_255 */
286 static int hf_h245_t35Extension = -1;             /* INTEGER_0_255 */
287 static int hf_h245_manufacturerCode = -1;         /* INTEGER_0_65535 */
288 static int hf_h245_terminalType = -1;             /* INTEGER_0_255 */
289 static int hf_h245_statusDeterminationNumber = -1;  /* INTEGER_0_16777215 */
290 static int hf_h245_decision = -1;                 /* T_decision */
291 static int hf_h245_master = -1;                   /* NULL */
292 static int hf_h245_slave = -1;                    /* NULL */
293 static int hf_h245_msd_rej_cause = -1;            /* MasterSlaveDeterminationRejectCause */
294 static int hf_h245_identicalNumbers = -1;         /* NULL */
295 static int hf_h245_sequenceNumber = -1;           /* SequenceNumber */
296 static int hf_h245_protocolIdentifier = -1;       /* OBJECT_IDENTIFIER */
297 static int hf_h245_multiplexCapability = -1;      /* MultiplexCapability */
298 static int hf_h245_capabilityTable = -1;          /* SET_SIZE_1_256_OF_CapabilityTableEntry */
299 static int hf_h245_capabilityTable_item = -1;     /* CapabilityTableEntry */
300 static int hf_h245_capabilityDescriptors = -1;    /* SET_SIZE_1_256_OF_CapabilityDescriptor */
301 static int hf_h245_capabilityDescriptors_item = -1;  /* CapabilityDescriptor */
302 static int hf_h245_capabilityTableEntryNumber = -1;  /* CapabilityTableEntryNumber */
303 static int hf_h245_capability = -1;               /* Capability */
304 static int hf_h245_capabilityDescriptorNumber = -1;  /* CapabilityDescriptorNumber */
305 static int hf_h245_simultaneousCapabilities = -1;  /* SET_SIZE_1_256_OF_AlternativeCapabilitySet */
306 static int hf_h245_simultaneousCapabilities_item = -1;  /* AlternativeCapabilitySet */
307 static int hf_h245_AlternativeCapabilitySet_item = -1;  /* CapabilityTableEntryNumber */
308 static int hf_h245_tcs_rej_cause = -1;            /* TerminalCapabilitySetRejectCause */
309 static int hf_h245_unspecified = -1;              /* NULL */
310 static int hf_h245_undefinedTableEntryUsed = -1;  /* NULL */
311 static int hf_h245_descriptorCapacityExceeded = -1;  /* NULL */
312 static int hf_h245_tableEntryCapacityExceeded = -1;  /* T_tableEntryCapacityExceeded */
313 static int hf_h245_highestEntryNumberProcessed = -1;  /* CapabilityTableEntryNumber */
314 static int hf_h245_noneProcessed = -1;            /* NULL */
315 static int hf_h245_nonStandard = -1;              /* NonStandardParameter */
316 static int hf_h245_receiveVideoCapability = -1;   /* VideoCapability */
317 static int hf_h245_transmitVideoCapability = -1;  /* VideoCapability */
318 static int hf_h245_receiveAndTransmitVideoCapability = -1;  /* VideoCapability */
319 static int hf_h245_receiveAudioCapability = -1;   /* AudioCapability */
320 static int hf_h245_transmitAudioCapability = -1;  /* AudioCapability */
321 static int hf_h245_receiveAndTransmitAudioCapability = -1;  /* AudioCapability */
322 static int hf_h245_receiveDataApplicationCapability = -1;  /* DataApplicationCapability */
323 static int hf_h245_transmitDataApplicationCapability = -1;  /* DataApplicationCapability */
324 static int hf_h245_receiveAndTransmitDataApplicationCapability = -1;  /* DataApplicationCapability */
325 static int hf_h245_h233EncryptionTransmitCapability = -1;  /* BOOLEAN */
326 static int hf_h245_h233EncryptionReceiveCapability = -1;  /* T_h233EncryptionReceiveCapability */
327 static int hf_h245_h233IVResponseTime = -1;       /* INTEGER_0_255 */
328 static int hf_h245_conferenceCapability = -1;     /* ConferenceCapability */
329 static int hf_h245_h235SecurityCapability = -1;   /* H235SecurityCapability */
330 static int hf_h245_maxPendingReplacementFor = -1;  /* INTEGER_0_255 */
331 static int hf_h245_receiveUserInputCapability = -1;  /* UserInputCapability */
332 static int hf_h245_transmitUserInputCapability = -1;  /* UserInputCapability */
333 static int hf_h245_receiveAndTransmitUserInputCapability = -1;  /* UserInputCapability */
334 static int hf_h245_genericControlCapability = -1;  /* GenericCapability */
335 static int hf_h245_receiveMultiplexedStreamCapability = -1;  /* MultiplexedStreamCapability */
336 static int hf_h245_transmitMultiplexedStreamCapability = -1;  /* MultiplexedStreamCapability */
337 static int hf_h245_receiveAndTransmitMultiplexedStreamCapability = -1;  /* MultiplexedStreamCapability */
338 static int hf_h245_receiveRTPAudioTelephonyEventCapability = -1;  /* AudioTelephonyEventCapability */
339 static int hf_h245_receiveRTPAudioToneCapability = -1;  /* AudioToneCapability */
340 static int hf_h245_fecCapability = -1;            /* FECCapability */
341 static int hf_h245_multiplePayloadStreamCapability = -1;  /* MultiplePayloadStreamCapability */
342 static int hf_h245_encryptionAuthenticationAndIntegrity = -1;  /* EncryptionAuthenticationAndIntegrity */
343 static int hf_h245_mediaCapability = -1;          /* CapabilityTableEntryNumber */
344 static int hf_h245_h222Capability = -1;           /* H222Capability */
345 static int hf_h245_h223Capability = -1;           /* H223Capability */
346 static int hf_h245_v76Capability = -1;            /* V76Capability */
347 static int hf_h245_h2250Capability = -1;          /* H2250Capability */
348 static int hf_h245_genericMultiplexCapability = -1;  /* GenericCapability */
349 static int hf_h245_numberOfVCs = -1;              /* INTEGER_1_256 */
350 static int hf_h245_vcCapability = -1;             /* SET_OF_VCCapability */
351 static int hf_h245_vcCapability_item = -1;        /* VCCapability */
352 static int hf_h245_aal1 = -1;                     /* T_aal1 */
353 static int hf_h245_nullClockRecovery = -1;        /* BOOLEAN */
354 static int hf_h245_srtsClockRecovery_bool = -1;   /* BOOLEAN */
355 static int hf_h245_adaptiveClockRecovery = -1;    /* BOOLEAN */
356 static int hf_h245_nullErrorCorrection = -1;      /* BOOLEAN */
357 static int hf_h245_longInterleaver = -1;          /* BOOLEAN */
358 static int hf_h245_shortInterleaver = -1;         /* BOOLEAN */
359 static int hf_h245_errorCorrectionOnly = -1;      /* BOOLEAN */
360 static int hf_h245_structuredDataTransfer = -1;   /* BOOLEAN */
361 static int hf_h245_partiallyFilledCells = -1;     /* BOOLEAN */
362 static int hf_h245_aal5 = -1;                     /* T_aal5 */
363 static int hf_h245_forwardMaximumSDUSize = -1;    /* INTEGER_0_65535 */
364 static int hf_h245_backwardMaximumSDUSize = -1;   /* INTEGER_0_65535 */
365 static int hf_h245_transportStream_bool = -1;     /* BOOLEAN */
366 static int hf_h245_programStream = -1;            /* BOOLEAN */
367 static int hf_h245_availableBitRates = -1;        /* T_availableBitRates */
368 static int hf_h245_Avb_type = -1;                 /* Avb_type */
369 static int hf_h245_singleBitRate = -1;            /* INTEGER_1_65535 */
370 static int hf_h245_rangeOfBitRates = -1;          /* T_rangeOfBitRates */
371 static int hf_h245_lowerBitRate = -1;             /* INTEGER_1_65535 */
372 static int hf_h245_higherBitRate = -1;            /* INTEGER_1_65535 */
373 static int hf_h245_aal1ViaGateway = -1;           /* T_aal1ViaGateway */
374 static int hf_h245_gatewayAddress = -1;           /* SET_SIZE_1_256_OF_Q2931Address */
375 static int hf_h245_gatewayAddress_item = -1;      /* Q2931Address */
376 static int hf_h245_srtsClockRecoveryflag = -1;    /* BOOLEAN */
377 static int hf_h245_transportWithI_frames = -1;    /* BOOLEAN */
378 static int hf_h245_videoWithAL1 = -1;             /* BOOLEAN */
379 static int hf_h245_videoWithAL2 = -1;             /* BOOLEAN */
380 static int hf_h245_videoWithAL3 = -1;             /* BOOLEAN */
381 static int hf_h245_audioWithAL1 = -1;             /* BOOLEAN */
382 static int hf_h245_audioWithAL2 = -1;             /* BOOLEAN */
383 static int hf_h245_audioWithAL3 = -1;             /* BOOLEAN */
384 static int hf_h245_dataWithAL1 = -1;              /* BOOLEAN */
385 static int hf_h245_dataWithAL2 = -1;              /* BOOLEAN */
386 static int hf_h245_dataWithAL3 = -1;              /* BOOLEAN */
387 static int hf_h245_maximumAl2SDUSize = -1;        /* INTEGER_0_65535 */
388 static int hf_h245_maximumAl3SDUSize = -1;        /* INTEGER_0_65535 */
389 static int hf_h245_maximumDelayJitter = -1;       /* INTEGER_0_1023 */
390 static int hf_h245_h223MultiplexTableCapability = -1;  /* T_h223MultiplexTableCapability */
391 static int hf_h245_basic = -1;                    /* NULL */
392 static int hf_h245_enhanced = -1;                 /* T_enhanced */
393 static int hf_h245_maximumNestingDepth = -1;      /* INTEGER_1_15 */
394 static int hf_h245_maximumElementListSize = -1;   /* INTEGER_2_255 */
395 static int hf_h245_maximumSubElementListSize = -1;  /* INTEGER_2_255 */
396 static int hf_h245_maxMUXPDUSizeCapability = -1;  /* BOOLEAN */
397 static int hf_h245_nsrpSupport = -1;              /* BOOLEAN */
398 static int hf_h245_mobileOperationTransmitCapability = -1;  /* T_mobileOperationTransmitCapability */
399 static int hf_h245_modeChangeCapability = -1;     /* BOOLEAN */
400 static int hf_h245_h223AnnexA = -1;               /* BOOLEAN */
401 static int hf_h245_h223AnnexADoubleFlagFlag = -1;  /* BOOLEAN */
402 static int hf_h245_h223AnnexB = -1;               /* BOOLEAN */
403 static int hf_h245_h223AnnexBwithHeader = -1;     /* BOOLEAN */
404 static int hf_h245_h223AnnexCCapability = -1;     /* H223AnnexCCapability */
405 static int hf_h245_bitRate_1_19200 = -1;          /* INTEGER_1_19200 */
406 static int hf_h245_mobileMultilinkFrameCapability = -1;  /* T_mobileMultilinkFrameCapability */
407 static int hf_h245_maximumSampleSize = -1;        /* INTEGER_1_255 */
408 static int hf_h245_maximumPayloadLength = -1;     /* INTEGER_1_65025 */
409 static int hf_h245_videoWithAL1M = -1;            /* BOOLEAN */
410 static int hf_h245_videoWithAL2M = -1;            /* BOOLEAN */
411 static int hf_h245_videoWithAL3M = -1;            /* BOOLEAN */
412 static int hf_h245_audioWithAL1M = -1;            /* BOOLEAN */
413 static int hf_h245_audioWithAL2M = -1;            /* BOOLEAN */
414 static int hf_h245_audioWithAL3M = -1;            /* BOOLEAN */
415 static int hf_h245_dataWithAL1M = -1;             /* BOOLEAN */
416 static int hf_h245_dataWithAL2M = -1;             /* BOOLEAN */
417 static int hf_h245_dataWithAL3M = -1;             /* BOOLEAN */
418 static int hf_h245_alpduInterleaving = -1;        /* BOOLEAN */
419 static int hf_h245_maximumAL1MPDUSize = -1;       /* INTEGER_0_65535 */
420 static int hf_h245_maximumAL2MSDUSize = -1;       /* INTEGER_0_65535 */
421 static int hf_h245_maximumAL3MSDUSize = -1;       /* INTEGER_0_65535 */
422 static int hf_h245_rsCodeCapability = -1;         /* BOOLEAN */
423 static int hf_h245_suspendResumeCapabilitywAddress = -1;  /* BOOLEAN */
424 static int hf_h245_suspendResumeCapabilitywoAddress = -1;  /* BOOLEAN */
425 static int hf_h245_rejCapability = -1;            /* BOOLEAN */
426 static int hf_h245_sREJCapability = -1;           /* BOOLEAN */
427 static int hf_h245_mREJCapability = -1;           /* BOOLEAN */
428 static int hf_h245_crc8bitCapability = -1;        /* BOOLEAN */
429 static int hf_h245_crc16bitCapability = -1;       /* BOOLEAN */
430 static int hf_h245_crc32bitCapability = -1;       /* BOOLEAN */
431 static int hf_h245_uihCapability = -1;            /* BOOLEAN */
432 static int hf_h245_numOfDLCS = -1;                /* INTEGER_2_8191 */
433 static int hf_h245_twoOctetAddressFieldCapability = -1;  /* BOOLEAN */
434 static int hf_h245_loopBackTestCapability = -1;   /* BOOLEAN */
435 static int hf_h245_n401Capability = -1;           /* INTEGER_1_4095 */
436 static int hf_h245_maxWindowSizeCapability = -1;  /* INTEGER_1_127 */
437 static int hf_h245_v75Capability = -1;            /* V75Capability */
438 static int hf_h245_audioHeader = -1;              /* BOOLEAN */
439 static int hf_h245_maximumAudioDelayJitter = -1;  /* INTEGER_0_1023 */
440 static int hf_h245_receiveMultipointCapability = -1;  /* MultipointCapability */
441 static int hf_h245_transmitMultipointCapability = -1;  /* MultipointCapability */
442 static int hf_h245_receiveAndTransmitMultipointCapability = -1;  /* MultipointCapability */
443 static int hf_h245_mcCapability = -1;             /* T_mcCapability */
444 static int hf_h245_centralizedConferenceMC = -1;  /* BOOLEAN */
445 static int hf_h245_decentralizedConferenceMC = -1;  /* BOOLEAN */
446 static int hf_h245_rtcpVideoControlCapability = -1;  /* BOOLEAN */
447 static int hf_h245_mediaPacketizationCapability = -1;  /* MediaPacketizationCapability */
448 static int hf_h245_transportCapability = -1;      /* TransportCapability */
449 static int hf_h245_redundancyEncodingCapability = -1;  /* SEQUNCE_SIZE_1_256_OF_RedundancyEncodingCapability */
450 static int hf_h245_redundancyEncodingCapability_item = -1;  /* RedundancyEncodingCapability */
451 static int hf_h245_logicalChannelSwitchingCapability = -1;  /* BOOLEAN */
452 static int hf_h245_t120DynamicPortCapability = -1;  /* BOOLEAN */
453 static int hf_h245_h261aVideoPacketization = -1;  /* BOOLEAN */
454 static int hf_h245_rtpPayloadType2 = -1;          /* SEQUNCE_SIZE_1_256_OF_RTPPayloadType */
455 static int hf_h245_rtpPayloadType2_item = -1;     /* RTPPayloadType */
456 static int hf_h245_qosMode = -1;                  /* QOSMode */
457 static int hf_h245_tokenRate = -1;                /* INTEGER_1_4294967295 */
458 static int hf_h245_bucketSize = -1;               /* INTEGER_1_4294967295 */
459 static int hf_h245_peakRate = -1;                 /* INTEGER_1_4294967295 */
460 static int hf_h245_minPoliced = -1;               /* INTEGER_1_4294967295 */
461 static int hf_h245_maxPktSize = -1;               /* INTEGER_1_4294967295 */
462 static int hf_h245_guaranteedQOS = -1;            /* NULL */
463 static int hf_h245_controlledLoad = -1;           /* NULL */
464 static int hf_h245_maxNTUSize = -1;               /* INTEGER_0_65535 */
465 static int hf_h245_atmUBR = -1;                   /* BOOLEAN */
466 static int hf_h245_atmrtVBR = -1;                 /* BOOLEAN */
467 static int hf_h245_atmnrtVBR = -1;                /* BOOLEAN */
468 static int hf_h245_atmABR = -1;                   /* BOOLEAN */
469 static int hf_h245_atmCBR = -1;                   /* BOOLEAN */
470 static int hf_h245_rsvpParameters = -1;           /* RSVPParameters */
471 static int hf_h245_atmParameters = -1;            /* ATMParameters */
472 static int hf_h245_ip_UDP = -1;                   /* NULL */
473 static int hf_h245_ip_TCP = -1;                   /* NULL */
474 static int hf_h245_atm_AAL5_UNIDIR = -1;          /* NULL */
475 static int hf_h245_atm_AAL5_BIDIR = -1;           /* NULL */
476 static int hf_h245_atm_AAL5_compressed = -1;      /* T_atm_AAL5_compressed */
477 static int hf_h245_variable_delta = -1;           /* BOOLEAN */
478 static int hf_h245_mediaTransport = -1;           /* MediaTransportType */
479 static int hf_h245_qOSCapabilities = -1;          /* SEQUNCE_SIZE_1_256_OF_QOSCapability */
480 static int hf_h245_qOSCapabilities_item = -1;     /* QOSCapability */
481 static int hf_h245_mediaChannelCapabilities = -1;  /* SEQUNCE_SIZE_1_256_OF_MediaChannelCapability */
482 static int hf_h245_mediaChannelCapabilities_item = -1;  /* MediaChannelCapability */
483 static int hf_h245_redundancyEncodingMethod = -1;  /* RedundancyEncodingMethod */
484 static int hf_h245_primaryEncoding = -1;          /* CapabilityTableEntryNumber */
485 static int hf_h245_secondaryEncoding2 = -1;       /* SEQUNCE_SIZE_1_256_OF_CapabilityTableEntryNumber */
486 static int hf_h245_secondaryEncoding2_item = -1;  /* CapabilityTableEntryNumber */
487 static int hf_h245_rtpAudioRedundancyEncoding = -1;  /* NULL */
488 static int hf_h245_rtpH263VideoRedundancyEncoding = -1;  /* RTPH263VideoRedundancyEncoding */
489 static int hf_h245_numberOfThreads = -1;          /* INTEGER_1_16 */
490 static int hf_h245_framesBetweenSyncPoints = -1;  /* INTEGER_1_256 */
491 static int hf_h245_frameToThreadMapping = -1;     /* T_frameToThreadMapping */
492 static int hf_h245_roundrobin = -1;               /* NULL */
493 static int hf_h245_custom = -1;                   /* SEQUNCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping */
494 static int hf_h245_custom_item = -1;              /* RTPH263VideoRedundancyFrameMapping */
495 static int hf_h245_containedThreads = -1;         /* SEQUNCE_SIZE_1_256_OF_INTEGER_0_15 */
496 static int hf_h245_containedThreads_item = -1;    /* INTEGER_0_15 */
497 static int hf_h245_threadNumber = -1;             /* INTEGER_0_15 */
498 static int hf_h245_frameSequence = -1;            /* SEQUNCE_SIZE_1_256_OF_INTEGER_0_255 */
499 static int hf_h245_frameSequence_item = -1;       /* INTEGER_0_255 */
500 static int hf_h245_multicastCapability = -1;      /* BOOLEAN */
501 static int hf_h245_multiUniCastConference = -1;   /* BOOLEAN */
502 static int hf_h245_mediaDistributionCapability = -1;  /* SEQUNCE_OF_MediaDistributionCapability */
503 static int hf_h245_mediaDistributionCapability_item = -1;  /* MediaDistributionCapability */
504 static int hf_h245_centralizedControl = -1;       /* BOOLEAN */
505 static int hf_h245_distributedControl = -1;       /* BOOLEAN */
506 static int hf_h245_centralizedAudio = -1;         /* BOOLEAN */
507 static int hf_h245_distributedAudio = -1;         /* BOOLEAN */
508 static int hf_h245_centralizedVideo = -1;         /* BOOLEAN */
509 static int hf_h245_distributedVideo = -1;         /* BOOLEAN */
510 static int hf_h245_centralizedData = -1;          /* SEQUNCE_OF_DataApplicationCapability */
511 static int hf_h245_centralizedData_item = -1;     /* DataApplicationCapability */
512 static int hf_h245_distributedData = -1;          /* SEQUNCE_OF_DataApplicationCapability */
513 static int hf_h245_distributedData_item = -1;     /* DataApplicationCapability */
514 static int hf_h245_h261VideoCapability = -1;      /* H261VideoCapability */
515 static int hf_h245_h262VideoCapability = -1;      /* H262VideoCapability */
516 static int hf_h245_h263VideoCapability = -1;      /* H263VideoCapability */
517 static int hf_h245_is11172VideoCapability = -1;   /* IS11172VideoCapability */
518 static int hf_h245_genericVideoCapability = -1;   /* GenericCapability */
519 static int hf_h245_extendedVideoCapability = -1;  /* ExtendedVideoCapability */
520 static int hf_h245_videoCapability = -1;          /* SEQUNCE_OF_VideoCapability */
521 static int hf_h245_videoCapability_item = -1;     /* VideoCapability */
522 static int hf_h245_videoCapabilityExtension = -1;  /* SEQUNCE_OF_GenericCapability */
523 static int hf_h245_videoCapabilityExtension_item = -1;  /* GenericCapability */
524 static int hf_h245_qcifMPI_1_4 = -1;              /* INTEGER_1_4 */
525 static int hf_h245_cifMPI_1_4 = -1;               /* INTEGER_1_4 */
526 static int hf_h245_temporalSpatialTradeOffCapability = -1;  /* BOOLEAN */
527 static int hf_h245_maxBitRate_1_19200 = -1;       /* INTEGER_1_19200 */
528 static int hf_h245_stillImageTransmission = -1;   /* BOOLEAN */
529 static int hf_h245_videoBadMBsCap = -1;           /* BOOLEAN */
530 static int hf_h245_profileAndLevel_SPatML = -1;   /* BOOLEAN */
531 static int hf_h245_profileAndLevel_MPatLL = -1;   /* BOOLEAN */
532 static int hf_h245_profileAndLevel_MPatML = -1;   /* BOOLEAN */
533 static int hf_h245_profileAndLevel_MPatH_14 = -1;  /* BOOLEAN */
534 static int hf_h245_profileAndLevel_MPatHL = -1;   /* BOOLEAN */
535 static int hf_h245_profileAndLevel_SNRatLL = -1;  /* BOOLEAN */
536 static int hf_h245_profileAndLevel_SNRatML = -1;  /* BOOLEAN */
537 static int hf_h245_profileAndLevel_SpatialatH_14 = -1;  /* BOOLEAN */
538 static int hf_h245_profileAndLevel_HPatML = -1;   /* BOOLEAN */
539 static int hf_h245_profileAndLevel_HPatH_14 = -1;  /* BOOLEAN */
540 static int hf_h245_profileAndLevel_HPatHL = -1;   /* BOOLEAN */
541 static int hf_h245_videoBitRate = -1;             /* INTEGER_0_1073741823 */
542 static int hf_h245_vbvBufferSize = -1;            /* INTEGER_0_262143 */
543 static int hf_h245_samplesPerLine = -1;           /* INTEGER_0_16383 */
544 static int hf_h245_linesPerFrame = -1;            /* INTEGER_0_16383 */
545 static int hf_h245_framesPerSecond = -1;          /* INTEGER_0_15 */
546 static int hf_h245_luminanceSampleRate = -1;      /* INTEGER_0_4294967295 */
547 static int hf_h245_sqcifMPI_1_32 = -1;            /* INTEGER_1_32 */
548 static int hf_h245_qcifMPI = -1;                  /* INTEGER_1_32 */
549 static int hf_h245_cifMPI = -1;                   /* INTEGER_1_32 */
550 static int hf_h245_cif4MPI_1_32 = -1;             /* INTEGER_1_32 */
551 static int hf_h245_cif16MPI_1_32 = -1;            /* INTEGER_1_32 */
552 static int hf_h245_maxBitRate = -1;               /* INTEGER_1_192400 */
553 static int hf_h245_unrestrictedVector = -1;       /* BOOLEAN */
554 static int hf_h245_arithmeticCoding = -1;         /* BOOLEAN */
555 static int hf_h245_advancedPrediction = -1;       /* BOOLEAN */
556 static int hf_h245_pbFrames = -1;                 /* BOOLEAN */
557 static int hf_h245_hrd_B = -1;                    /* INTEGER_0_524287 */
558 static int hf_h245_bppMaxKb = -1;                 /* INTEGER_0_65535 */
559 static int hf_h245_slowSqcifMPI = -1;             /* INTEGER_1_3600 */
560 static int hf_h245_slowQcifMPI = -1;              /* INTEGER_1_3600 */
561 static int hf_h245_slowCifMPI = -1;               /* INTEGER_1_3600 */
562 static int hf_h245_slowCif4MPI = -1;              /* INTEGER_1_3600 */
563 static int hf_h245_slowCif16MPI = -1;             /* INTEGER_1_3600 */
564 static int hf_h245_errorCompensation = -1;        /* BOOLEAN */
565 static int hf_h245_enhancementLayerInfo = -1;     /* EnhancementLayerInfo */
566 static int hf_h245_h263Options = -1;              /* H263Options */
567 static int hf_h245_baseBitRateConstrained = -1;   /* BOOLEAN */
568 static int hf_h245_snrEnhancement = -1;           /* SET_SIZE_1_14_OF_EnhancementOptions */
569 static int hf_h245_snrEnhancement_item = -1;      /* EnhancementOptions */
570 static int hf_h245_spatialEnhancement = -1;       /* SET_SIZE_1_14_OF_EnhancementOptions */
571 static int hf_h245_spatialEnhancement_item = -1;  /* EnhancementOptions */
572 static int hf_h245_bPictureEnhancement = -1;      /* SET_SIZE_1_14_OF_BEnhancementParameters */
573 static int hf_h245_bPictureEnhancement_item = -1;  /* BEnhancementParameters */
574 static int hf_h245_enhancementOptions = -1;       /* EnhancementOptions */
575 static int hf_h245_numberOfBPictures = -1;        /* INTEGER_1_64 */
576 static int hf_h245_advancedIntraCodingMode = -1;  /* BOOLEAN */
577 static int hf_h245_deblockingFilterMode = -1;     /* BOOLEAN */
578 static int hf_h245_improvedPBFramesMode = -1;     /* BOOLEAN */
579 static int hf_h245_unlimitedMotionVectors = -1;   /* BOOLEAN */
580 static int hf_h245_fullPictureFreeze = -1;        /* BOOLEAN */
581 static int hf_h245_partialPictureFreezeAndRelease = -1;  /* BOOLEAN */
582 static int hf_h245_resizingPartPicFreezeAndRelease = -1;  /* BOOLEAN */
583 static int hf_h245_fullPictureSnapshot = -1;      /* BOOLEAN */
584 static int hf_h245_partialPictureSnapshot = -1;   /* BOOLEAN */
585 static int hf_h245_videoSegmentTagging = -1;      /* BOOLEAN */
586 static int hf_h245_progressiveRefinement = -1;    /* BOOLEAN */
587 static int hf_h245_dynamicPictureResizingByFour = -1;  /* BOOLEAN */
588 static int hf_h245_dynamicPictureResizingSixteenthPel = -1;  /* BOOLEAN */
589 static int hf_h245_dynamicWarpingHalfPel = -1;    /* BOOLEAN */
590 static int hf_h245_dynamicWarpingSixteenthPel = -1;  /* BOOLEAN */
591 static int hf_h245_independentSegmentDecoding = -1;  /* BOOLEAN */
592 static int hf_h245_slicesInOrder_NonRect = -1;    /* BOOLEAN */
593 static int hf_h245_slicesInOrder_Rect = -1;       /* BOOLEAN */
594 static int hf_h245_slicesNoOrder_NonRect = -1;    /* BOOLEAN */
595 static int hf_h245_slicesNoOrder_Rect = -1;       /* BOOLEAN */
596 static int hf_h245_alternateInterVLCMode = -1;    /* BOOLEAN */
597 static int hf_h245_modifiedQuantizationMode = -1;  /* BOOLEAN */
598 static int hf_h245_reducedResolutionUpdate = -1;  /* BOOLEAN */
599 static int hf_h245_transparencyParameters = -1;   /* TransparencyParameters */
600 static int hf_h245_separateVideoBackChannel = -1;  /* BOOLEAN */
601 static int hf_h245_refPictureSelection = -1;      /* RefPictureSelection */
602 static int hf_h245_customPictureClockFrequency = -1;  /* SET_SIZE_1_16_OF_CustomPictureClockFrequency */
603 static int hf_h245_customPictureClockFrequency_item = -1;  /* CustomPictureClockFrequency */
604 static int hf_h245_customPictureFormat = -1;      /* SET_SIZE_1_16_OF_CustomPictureFormat */
605 static int hf_h245_customPictureFormat_item = -1;  /* CustomPictureFormat */
606 static int hf_h245_modeCombos = -1;               /* SET_SIZE_1_16_OF_H263VideoModeCombos */
607 static int hf_h245_modeCombos_item = -1;          /* H263VideoModeCombos */
608 static int hf_h245_h263Version3Options = -1;      /* H263Version3Options */
609 static int hf_h245_presentationOrder = -1;        /* INTEGER_1_256 */
610 static int hf_h245_offset_x = -1;                 /* INTEGER_M262144_262143 */
611 static int hf_h245_offset_y = -1;                 /* INTEGER_M262144_262143 */
612 static int hf_h245_scale_x = -1;                  /* INTEGER_1_255 */
613 static int hf_h245_scale_y = -1;                  /* INTEGER_1_255 */
614 static int hf_h245_additionalPictureMemory = -1;  /* T_additionalPictureMemory */
615 static int hf_h245_sqcifAdditionalPictureMemory = -1;  /* INTEGER_1_256 */
616 static int hf_h245_qcifAdditionalPictureMemory = -1;  /* INTEGER_1_256 */
617 static int hf_h245_cifAdditionalPictureMemory = -1;  /* INTEGER_1_256 */
618 static int hf_h245_cif4AdditionalPictureMemory = -1;  /* INTEGER_1_256 */
619 static int hf_h245_cif16AdditionalPictureMemory = -1;  /* INTEGER_1_256 */
620 static int hf_h245_bigCpfAdditionalPictureMemory = -1;  /* INTEGER_1_256 */
621 static int hf_h245_videoMux = -1;                 /* BOOLEAN */
622 static int hf_h245_videoBackChannelSend = -1;     /* T_videoBackChannelSend */
623 static int hf_h245_none = -1;                     /* NULL */
624 static int hf_h245_ackMessageOnly = -1;           /* NULL */
625 static int hf_h245_nackMessageOnly = -1;          /* NULL */
626 static int hf_h245_ackOrNackMessageOnly = -1;     /* NULL */
627 static int hf_h245_ackAndNackMessage = -1;        /* NULL */
628 static int hf_h245_enhancedReferencePicSelect = -1;  /* T_enhancedReferencePicSelect */
629 static int hf_h245_subPictureRemovalParameters = -1;  /* T_subPictureRemovalParameters */
630 static int hf_h245_mpuHorizMBs = -1;              /* INTEGER_1_128 */
631 static int hf_h245_mpuVertMBs = -1;               /* INTEGER_1_72 */
632 static int hf_h245_mpuTotalNumber = -1;           /* INTEGER_1_65536 */
633 static int hf_h245_clockConversionCode = -1;      /* INTEGER_1000_1001 */
634 static int hf_h245_clockDivisor = -1;             /* INTEGER_1_127 */
635 static int hf_h245_sqcifMPI = -1;                 /* INTEGER_1_2048 */
636 static int hf_h245_qcifMPI_1_2048 = -1;           /* INTEGER_1_2048 */
637 static int hf_h245_cifMPI2_1_2048 = -1;           /* INTEGER_1_2048 */
638 static int hf_h245_cif4MPI = -1;                  /* INTEGER_1_2048 */
639 static int hf_h245_cif16MPI = -1;                 /* INTEGER_1_2048 */
640 static int hf_h245_maxCustomPictureWidth = -1;    /* INTEGER_1_2048 */
641 static int hf_h245_maxCustomPictureHeight = -1;   /* INTEGER_1_2048 */
642 static int hf_h245_minCustomPictureWidth = -1;    /* INTEGER_1_2048 */
643 static int hf_h245_minCustomPictureHeight = -1;   /* INTEGER_1_2048 */
644 static int hf_h245_mPI = -1;                      /* T_mPI */
645 static int hf_h245_standardMPI = -1;              /* INTEGER_1_31 */
646 static int hf_h245_customPCF = -1;                /* T_customPCF */
647 static int hf_h245_customPCF_item = -1;           /* T_customPCF_item */
648 static int hf_h245_customMPI = -1;                /* INTEGER_1_2048 */
649 static int hf_h245_pixelAspectInformation = -1;   /* T_pixelAspectInformation */
650 static int hf_h245_anyPixelAspectRatio = -1;      /* BOOLEAN */
651 static int hf_h245_pixelAspectCode = -1;          /* SET_SIZE_1_14_OF_INTEGER_1_14 */
652 static int hf_h245_pixelAspectCode_item = -1;     /* INTEGER_1_14 */
653 static int hf_h245_extendedPAR = -1;              /* T_extendedPAR */
654 static int hf_h245_extendedPAR_item = -1;         /* T_extendedPAR_item */
655 static int hf_h245_width = -1;                    /* INTEGER_1_255 */
656 static int hf_h245_height = -1;                   /* INTEGER_1_255 */
657 static int hf_h245_h263VideoUncoupledModes = -1;  /* H263ModeComboFlags */
658 static int hf_h245_h263VideoCoupledModes = -1;    /* SET_SIZE_1_16_OF_H263ModeComboFlags */
659 static int hf_h245_h263VideoCoupledModes_item = -1;  /* H263ModeComboFlags */
660 static int hf_h245_referencePicSelect = -1;       /* BOOLEAN */
661 static int hf_h245_enhancedReferencePicSelectBool = -1;  /* BOOLEAN */
662 static int hf_h245_dataPartitionedSlices = -1;    /* BOOLEAN */
663 static int hf_h245_fixedPointIDCT0 = -1;          /* BOOLEAN */
664 static int hf_h245_interlacedFields = -1;         /* BOOLEAN */
665 static int hf_h245_currentPictureHeaderRepetition = -1;  /* BOOLEAN */
666 static int hf_h245_previousPictureHeaderRepetition = -1;  /* BOOLEAN */
667 static int hf_h245_nextPictureHeaderRepetition = -1;  /* BOOLEAN */
668 static int hf_h245_pictureNumberBoolean = -1;     /* BOOLEAN */
669 static int hf_h245_spareReferencePictures = -1;   /* BOOLEAN */
670 static int hf_h245_constrainedBitstream = -1;     /* BOOLEAN */
671 static int hf_h245_pictureRate = -1;              /* INTEGER_0_15 */
672 static int hf_h245_g711Alaw64k = -1;              /* INTEGER_1_256 */
673 static int hf_h245_g711Alaw56k = -1;              /* INTEGER_1_256 */
674 static int hf_h245_g711Ulaw64k = -1;              /* INTEGER_1_256 */
675 static int hf_h245_g711Ulaw56k = -1;              /* INTEGER_1_256 */
676 static int hf_h245_g722_64k = -1;                 /* INTEGER_1_256 */
677 static int hf_h245_g722_56k = -1;                 /* INTEGER_1_256 */
678 static int hf_h245_g722_48k = -1;                 /* INTEGER_1_256 */
679 static int hf_h245_g7231 = -1;                    /* T_g7231 */
680 static int hf_h245_maxAl_sduAudioFrames = -1;     /* INTEGER_1_256 */
681 static int hf_h245_silenceSuppression = -1;       /* BOOLEAN */
682 static int hf_h245_g728 = -1;                     /* INTEGER_1_256 */
683 static int hf_h245_g729 = -1;                     /* INTEGER_1_256 */
684 static int hf_h245_g729AnnexA = -1;               /* INTEGER_1_256 */
685 static int hf_h245_is11172AudioCapability = -1;   /* IS11172AudioCapability */
686 static int hf_h245_is13818AudioCapability = -1;   /* IS13818AudioCapability */
687 static int hf_h245_g729wAnnexB = -1;              /* INTEGER_1_256 */
688 static int hf_h245_g729AnnexAwAnnexB = -1;        /* INTEGER_1_256 */
689 static int hf_h245_g7231AnnexCCapability = -1;    /* G7231AnnexCCapability */
690 static int hf_h245_gsmFullRate = -1;              /* GSMAudioCapability */
691 static int hf_h245_gsmHalfRate = -1;              /* GSMAudioCapability */
692 static int hf_h245_gsmEnhancedFullRate = -1;      /* GSMAudioCapability */
693 static int hf_h245_genericAudioCapability = -1;   /* GenericCapability */
694 static int hf_h245_g729Extensions = -1;           /* G729Extensions */
695 static int hf_h245_vbd = -1;                      /* VBDCapability */
696 static int hf_h245_audioTelephonyEvent = -1;      /* NoPTAudioTelephonyEventCapability */
697 static int hf_h245_audioTone = -1;                /* NoPTAudioToneCapability */
698 static int hf_h245_audioUnit = -1;                /* INTEGER_1_256 */
699 static int hf_h245_annexA = -1;                   /* BOOLEAN */
700 static int hf_h245_annexB = -1;                   /* BOOLEAN */
701 static int hf_h245_annexD = -1;                   /* BOOLEAN */
702 static int hf_h245_annexE = -1;                   /* BOOLEAN */
703 static int hf_h245_annexF = -1;                   /* BOOLEAN */
704 static int hf_h245_annexG = -1;                   /* BOOLEAN */
705 static int hf_h245_annexH = -1;                   /* BOOLEAN */
706 static int hf_h245_g723AnnexCAudioMode = -1;      /* G723AnnexCAudioMode */
707 static int hf_h245_highRateMode0 = -1;            /* INTEGER_27_78 */
708 static int hf_h245_highRateMode1 = -1;            /* INTEGER_27_78 */
709 static int hf_h245_lowRateMode0 = -1;             /* INTEGER_23_66 */
710 static int hf_h245_lowRateMode1 = -1;             /* INTEGER_23_66 */
711 static int hf_h245_sidMode0 = -1;                 /* INTEGER_6_17 */
712 static int hf_h245_sidMode1 = -1;                 /* INTEGER_6_17 */
713 static int hf_h245_audioLayer1 = -1;              /* BOOLEAN */
714 static int hf_h245_audioLayer2 = -1;              /* BOOLEAN */
715 static int hf_h245_audioLayer3 = -1;              /* BOOLEAN */
716 static int hf_h245_audioSampling32k = -1;         /* BOOLEAN */
717 static int hf_h245_audioSampling44k1 = -1;        /* BOOLEAN */
718 static int hf_h245_audioSampling48k = -1;         /* BOOLEAN */
719 static int hf_h245_singleChannel = -1;            /* BOOLEAN */
720 static int hf_h245_twoChannels = -1;              /* BOOLEAN */
721 static int hf_h245_bitRate_1_448 = -1;            /* INTEGER_1_448 */
722 static int hf_h245_audioSampling16k = -1;         /* BOOLEAN */
723 static int hf_h245_audioSampling22k05 = -1;       /* BOOLEAN */
724 static int hf_h245_audioSampling24k = -1;         /* BOOLEAN */
725 static int hf_h245_threeChannels2_1 = -1;         /* BOOLEAN */
726 static int hf_h245_threeChannels3_0 = -1;         /* BOOLEAN */
727 static int hf_h245_fourChannels2_0_2_0 = -1;      /* BOOLEAN */
728 static int hf_h245_fourChannels2_2 = -1;          /* BOOLEAN */
729 static int hf_h245_fourChannels3_1 = -1;          /* BOOLEAN */
730 static int hf_h245_fiveChannels3_0_2_0 = -1;      /* BOOLEAN */
731 static int hf_h245_fiveChannels3_2 = -1;          /* BOOLEAN */
732 static int hf_h245_lowFrequencyEnhancement = -1;  /* BOOLEAN */
733 static int hf_h245_multilingual = -1;             /* BOOLEAN */
734 static int hf_h245_bitRate2_1_1130 = -1;          /* INTEGER_1_1130 */
735 static int hf_h245_audioUnitSize = -1;            /* INTEGER_1_256 */
736 static int hf_h245_comfortNoise = -1;             /* BOOLEAN */
737 static int hf_h245_scrambled = -1;                /* BOOLEAN */
738 static int hf_h245_vbd_cap_type = -1;             /* AudioCapability */
739 static int hf_h245_application = -1;              /* Application */
740 static int hf_h245_maxBitRate2_0_4294967295 = -1;  /* INTEGER_0_4294967295 */
741 static int hf_h245_t120 = -1;                     /* DataProtocolCapability */
742 static int hf_h245_dsm_cc = -1;                   /* DataProtocolCapability */
743 static int hf_h245_userData = -1;                 /* DataProtocolCapability */
744 static int hf_h245_t84 = -1;                      /* T_t84 */
745 static int hf_h245_t84Protocol = -1;              /* DataProtocolCapability */
746 static int hf_h245_t84Profile = -1;               /* T84Profile */
747 static int hf_h245_t434 = -1;                     /* DataProtocolCapability */
748 static int hf_h245_h224 = -1;                     /* DataProtocolCapability */
749 static int hf_h245_nlpid = -1;                    /* Nlpid */
750 static int hf_h245_dsvdControl = -1;              /* NULL */
751 static int hf_h245_h222DataPartitioning = -1;     /* DataProtocolCapability */
752 static int hf_h245_t30fax = -1;                   /* DataProtocolCapability */
753 static int hf_h245_t140 = -1;                     /* DataProtocolCapability */
754 static int hf_h245_t38fax = -1;                   /* T_t38fax */
755 static int hf_h245_t38FaxProtocol = -1;           /* DataProtocolCapability */
756 static int hf_h245_t38FaxProfile = -1;            /* T38FaxProfile */
757 static int hf_h245_genericDataCapability = -1;    /* GenericCapability */
758 static int hf_h245_v14buffered = -1;              /* NULL */
759 static int hf_h245_v42lapm = -1;                  /* NULL */
760 static int hf_h245_hdlcFrameTunnelling = -1;      /* NULL */
761 static int hf_h245_h310SeparateVCStack = -1;      /* NULL */
762 static int hf_h245_h310SingleVCStack = -1;        /* NULL */
763 static int hf_h245_transparent = -1;              /* NULL */
764 static int hf_h245_segmentationAndReassembly = -1;  /* NULL */
765 static int hf_h245_hdlcFrameTunnelingwSAR = -1;   /* NULL */
766 static int hf_h245_v120 = -1;                     /* NULL */
767 static int hf_h245_separateLANStack = -1;         /* NULL */
768 static int hf_h245_v76wCompression = -1;          /* T_v76wCompression */
769 static int hf_h245_transmitCompression = -1;      /* CompressionType */
770 static int hf_h245_receiveCompression = -1;       /* CompressionType */
771 static int hf_h245_transmitAndReceiveCompression = -1;  /* CompressionType */
772 static int hf_h245_tcp = -1;                      /* NULL */
773 static int hf_h245_udp = -1;                      /* NULL */
774 static int hf_h245_v42bis = -1;                   /* V42bis */
775 static int hf_h245_numberOfCodewords = -1;        /* INTEGER_1_65536 */
776 static int hf_h245_maximumStringLength = -1;      /* INTEGER_1_256 */
777 static int hf_h245_t84Unrestricted = -1;          /* NULL */
778 static int hf_h245_t84Restricted = -1;            /* T_t84Restricted */
779 static int hf_h245_qcif_bool = -1;                /* BOOLEAN */
780 static int hf_h245_cif_bool = -1;                 /* BOOLEAN */
781 static int hf_h245_ccir601Seq = -1;               /* BOOLEAN */
782 static int hf_h245_ccir601Prog = -1;              /* BOOLEAN */
783 static int hf_h245_hdtvSeq = -1;                  /* BOOLEAN */
784 static int hf_h245_hdtvProg = -1;                 /* BOOLEAN */
785 static int hf_h245_g3FacsMH200x100 = -1;          /* BOOLEAN */
786 static int hf_h245_g3FacsMH200x200 = -1;          /* BOOLEAN */
787 static int hf_h245_g4FacsMMR200x100 = -1;         /* BOOLEAN */
788 static int hf_h245_g4FacsMMR200x200 = -1;         /* BOOLEAN */
789 static int hf_h245_jbig200x200Seq = -1;           /* BOOLEAN */
790 static int hf_h245_jbig200x200Prog = -1;          /* BOOLEAN */
791 static int hf_h245_jbig300x300Seq = -1;           /* BOOLEAN */
792 static int hf_h245_jbig300x300Prog = -1;          /* BOOLEAN */
793 static int hf_h245_digPhotoLow = -1;              /* BOOLEAN */
794 static int hf_h245_digPhotoMedSeq = -1;           /* BOOLEAN */
795 static int hf_h245_digPhotoMedProg = -1;          /* BOOLEAN */
796 static int hf_h245_digPhotoHighSeq = -1;          /* BOOLEAN */
797 static int hf_h245_digPhotoHighProg = -1;         /* BOOLEAN */
798 static int hf_h245_fillBitRemoval = -1;           /* BOOLEAN */
799 static int hf_h245_transcodingJBIG = -1;          /* BOOLEAN */
800 static int hf_h245_transcodingMMR = -1;           /* BOOLEAN */
801 static int hf_h245_version = -1;                  /* INTEGER_0_255 */
802 static int hf_h245_t38FaxRateManagement = -1;     /* T38FaxRateManagement */
803 static int hf_h245_t38FaxUdpOptions = -1;         /* T38FaxUdpOptions */
804 static int hf_h245_t38FaxTcpOptions = -1;         /* T38FaxTcpOptions */
805 static int hf_h245_localTCF = -1;                 /* NULL */
806 static int hf_h245_transferredTCF = -1;           /* NULL */
807 static int hf_h245_t38FaxMaxBuffer = -1;          /* INTEGER */
808 static int hf_h245_t38FaxMaxDatagram = -1;        /* INTEGER */
809 static int hf_h245_t38FaxUdpEC = -1;              /* T_t38FaxUdpEC */
810 static int hf_h245_t38UDPFEC = -1;                /* NULL */
811 static int hf_h245_t38UDPRedundancy = -1;         /* NULL */
812 static int hf_h245_t38TCPBidirectionalMode = -1;  /* BOOLEAN */
813 static int hf_h245_nlpidProtocol = -1;            /* DataProtocolCapability */
814 static int hf_h245_nlpidData = -1;                /* OCTET_STRING */
815 static int hf_h245_encryptionCapability = -1;     /* EncryptionCapability */
816 static int hf_h245_authenticationCapability = -1;  /* AuthenticationCapability */
817 static int hf_h245_integrityCapability = -1;      /* IntegrityCapability */
818 static int hf_h245_EncryptionCapability_item = -1;  /* MediaEncryptionAlgorithm */
819 static int hf_h245_algorithm = -1;                /* OBJECT_IDENTIFIER */
820 static int hf_h245_antiSpamAlgorithm = -1;        /* OBJECT_IDENTIFIER */
821 static int hf_h245_ui_nonStandard = -1;           /* SEQUNCE_SIZE_1_16_OF_NonStandardParameter */
822 static int hf_h245_nonStandard_item = -1;         /* NonStandardParameter */
823 static int hf_h245_basicString = -1;              /* NULL */
824 static int hf_h245_iA5String = -1;                /* NULL */
825 static int hf_h245_generalString = -1;            /* NULL */
826 static int hf_h245_dtmf = -1;                     /* NULL */
827 static int hf_h245_hookflash = -1;                /* NULL */
828 static int hf_h245_extendedAlphanumericFlag = -1;  /* NULL */
829 static int hf_h245_encryptedBasicString = -1;     /* NULL */
830 static int hf_h245_encryptedIA5String = -1;       /* NULL */
831 static int hf_h245_encryptedGeneralString = -1;   /* NULL */
832 static int hf_h245_secureDTMF = -1;               /* NULL */
833 static int hf_h245_nonStandardParams = -1;        /* SEQUNCE_OF_NonStandardParameter */
834 static int hf_h245_nonStandardData_item = -1;     /* NonStandardParameter */
835 static int hf_h245_chairControlCapability = -1;   /* BOOLEAN */
836 static int hf_h245_videoIndicateMixingCapability = -1;  /* BOOLEAN */
837 static int hf_h245_multipointVisualizationCapability = -1;  /* BOOLEAN */
838 static int hf_h245_capabilityIdentifier = -1;     /* CapabilityIdentifier */
839 static int hf_h245_collapsing = -1;               /* SEQUNCE_OF_GenericParameter */
840 static int hf_h245_collapsing_item = -1;          /* GenericParameter */
841 static int hf_h245_nonCollapsing = -1;            /* SEQUNCE_OF_GenericParameter */
842 static int hf_h245_nonCollapsing_item = -1;       /* GenericParameter */
843 static int hf_h245_nonCollapsingRaw = -1;         /* OCTET_STRING */
844 static int hf_h245_transport = -1;                /* DataProtocolCapability */
845 static int hf_h245_standardOid = -1;              /* T_standard */
846 static int hf_h245_h221NonStandard = -1;          /* NonStandardParameter */
847 static int hf_h245_uuid = -1;                     /* OCTET_STRING_SIZE_16 */
848 static int hf_h245_domainBased = -1;              /* IA5String_SIZE_1_64 */
849 static int hf_h245_parameterIdentifier = -1;      /* ParameterIdentifier */
850 static int hf_h245_parameterValue = -1;           /* ParameterValue */
851 static int hf_h245_supersedes = -1;               /* SEQUNCE_OF_ParameterIdentifier */
852 static int hf_h245_supersedes_item = -1;          /* ParameterIdentifier */
853 static int hf_h245_standard = -1;                 /* INTEGER_0_127 */
854 static int hf_h245_logical = -1;                  /* NULL */
855 static int hf_h245_booleanArray = -1;             /* INTEGER_0_255 */
856 static int hf_h245_unsignedMin = -1;              /* INTEGER_0_65535 */
857 static int hf_h245_unsignedMax = -1;              /* INTEGER_0_65535 */
858 static int hf_h245_unsigned32Min = -1;            /* INTEGER_0_4294967295 */
859 static int hf_h245_unsigned32Max = -1;            /* INTEGER_0_4294967295 */
860 static int hf_h245_octetString = -1;              /* OCTET_STRING */
861 static int hf_h245_genericParameter = -1;         /* SEQUNCE_OF_GenericParameter */
862 static int hf_h245_genericParameter_item = -1;    /* GenericParameter */
863 static int hf_h245_multiplexFormat = -1;          /* MultiplexFormat */
864 static int hf_h245_controlOnMuxStream = -1;       /* BOOLEAN */
865 static int hf_h245_capabilityOnMuxStream = -1;    /* SET_SIZE_1_256_OF_AlternativeCapabilitySet */
866 static int hf_h245_capabilityOnMuxStream_item = -1;  /* AlternativeCapabilitySet */
867 static int hf_h245_dynamicRTPPayloadType = -1;    /* INTEGER_96_127 */
868 static int hf_h245_audioTelephoneEvent = -1;      /* GeneralString */
869 static int hf_h245_capabilities = -1;             /* SET_SIZE_1_256_OF_AlternativeCapabilitySet */
870 static int hf_h245_capabilities_item = -1;        /* AlternativeCapabilitySet */
871 static int hf_h245_fecc_rfc2733 = -1;             /* FECC_rfc2733 */
872 static int hf_h245_redundancyEncodingBool = -1;   /* BOOLEAN */
873 static int hf_h245_separateStreamBool = -1;       /* T_separateStream */
874 static int hf_h245_separatePort = -1;             /* BOOLEAN */
875 static int hf_h245_samePortBool = -1;             /* BOOLEAN */
876 static int hf_h245_forwardLogicalChannelNumber = -1;  /* LogicalChannelNumber */
877 static int hf_h245_forwardLogicalChannelParameters = -1;  /* T_forwardLogicalChannelParameters */
878 static int hf_h245_portNumber = -1;               /* INTEGER_0_65535 */
879 static int hf_h245_dataType = -1;                 /* DataType */
880 static int hf_h245_olc_forw_multiplexParameters = -1;  /* OLC_forw_multiplexParameters */
881 static int hf_h245_h222LogicalChannelParameters = -1;  /* H222LogicalChannelParameters */
882 static int hf_h245_h223LogicalChannelParameters = -1;  /* H223LogicalChannelParameters */
883 static int hf_h245_v76LogicalChannelParameters = -1;  /* V76LogicalChannelParameters */
884 static int hf_h245_h2250LogicalChannelParameters = -1;  /* H2250LogicalChannelParameters */
885 static int hf_h245_forwardLogicalChannelDependency = -1;  /* LogicalChannelNumber */
886 static int hf_h245_replacementFor = -1;           /* LogicalChannelNumber */
887 static int hf_h245_reverseLogicalChannelParameters = -1;  /* OLC_reverseLogicalChannelParameters */
888 static int hf_h245_olc_rev_multiplexParameter = -1;  /* OLC_rev_multiplexParameters */
889 static int hf_h245_reverseLogicalChannelDependency = -1;  /* LogicalChannelNumber */
890 static int hf_h245_separateStack = -1;            /* NetworkAccessParameters */
891 static int hf_h245_encryptionSync = -1;           /* EncryptionSync */
892 static int hf_h245_distribution = -1;             /* T_distribution */
893 static int hf_h245_unicast = -1;                  /* NULL */
894 static int hf_h245_multicast = -1;                /* NULL */
895 static int hf_h245_networkAddress = -1;           /* T_networkAddress */
896 static int hf_h245_q2931Address = -1;             /* Q2931Address */
897 static int hf_h245_e164Address = -1;              /* T_e164Address */
898 static int hf_h245_localAreaAddress = -1;         /* TransportAddress */
899 static int hf_h245_associateConference = -1;      /* BOOLEAN */
900 static int hf_h245_externalReference = -1;        /* OCTET_STRING_SIZE_1_255 */
901 static int hf_h245_t120SetupProcedure = -1;       /* T_t120SetupProcedure */
902 static int hf_h245_originateCall = -1;            /* NULL */
903 static int hf_h245_waitForCall = -1;              /* NULL */
904 static int hf_h245_issueQuery = -1;               /* NULL */
905 static int hf_h245_address = -1;                  /* T_address */
906 static int hf_h245_internationalNumber = -1;      /* NumericString_SIZE_1_16 */
907 static int hf_h245_nsapAddress = -1;              /* OCTET_STRING_SIZE_1_20 */
908 static int hf_h245_subaddress = -1;               /* OCTET_STRING_SIZE_1_20 */
909 static int hf_h245_audioHeaderPresent = -1;       /* BOOLEAN */
910 static int hf_h245_nullData = -1;                 /* NULL */
911 static int hf_h245_videoData = -1;                /* VideoCapability */
912 static int hf_h245_audioData = -1;                /* AudioCapability */
913 static int hf_h245_data = -1;                     /* DataApplicationCapability */
914 static int hf_h245_encryptionData = -1;           /* EncryptionMode */
915 static int hf_h245_h235Control = -1;              /* NonStandardParameter */
916 static int hf_h245_h235Media = -1;                /* H235Media */
917 static int hf_h245_multiplexedStream = -1;        /* MultiplexedStreamParameter */
918 static int hf_h245_redundancyEncoding = -1;       /* RedundancyEncoding */
919 static int hf_h245_multiplePayloadStream = -1;    /* MultiplePayloadStream */
920 static int hf_h245_fec = -1;                      /* FECData */
921 static int hf_h245_mediaType = -1;                /* T_mediaType */
922 static int hf_h245_resourceID = -1;               /* INTEGER_0_65535 */
923 static int hf_h245_subChannelID = -1;             /* INTEGER_0_8191 */
924 static int hf_h245_pcr_pid = -1;                  /* INTEGER_0_8191 */
925 static int hf_h245_programDescriptors = -1;       /* OCTET_STRING */
926 static int hf_h245_streamDescriptors = -1;        /* OCTET_STRING */
927 static int hf_h245_adaptationLayerType = -1;      /* T_adaptationLayerType */
928 static int hf_h245_al1Framed = -1;                /* NULL */
929 static int hf_h245_al1NotFramed = -1;             /* NULL */
930 static int hf_h245_al2WithoutSequenceNumbers = -1;  /* NULL */
931 static int hf_h245_al2WithSequenceNumbers = -1;   /* NULL */
932 static int hf_h245_al3 = -1;                      /* Al3 */
933 static int hf_h245_al1M = -1;                     /* H223AL1MParameters */
934 static int hf_h245_al2M = -1;                     /* H223AL2MParameters */
935 static int hf_h245_al3M = -1;                     /* H223AL3MParameters */
936 static int hf_h245_segmentableFlag = -1;          /* BOOLEAN */
937 static int hf_h245_controlFieldOctets = -1;       /* INTEGER_0_2 */
938 static int hf_h245_sendBufferSize = -1;           /* INTEGER_0_16777215 */
939 static int hf_h245_transferMode = -1;             /* T_transferMode */
940 static int hf_h245_framed = -1;                   /* NULL */
941 static int hf_h245_unframed = -1;                 /* NULL */
942 static int hf_h245_AL1HeaderFEC = -1;             /* AL1HeaderFEC */
943 static int hf_h245_sebch16_7 = -1;                /* NULL */
944 static int hf_h245_golay24_12 = -1;               /* NULL */
945 static int hf_h245_crcLength2 = -1;               /* AL1CrcLength */
946 static int hf_h245_crc4bit = -1;                  /* NULL */
947 static int hf_h245_crc12bit = -1;                 /* NULL */
948 static int hf_h245_crc20bit = -1;                 /* NULL */
949 static int hf_h245_crc28bit = -1;                 /* NULL */
950 static int hf_h245_crc8bit = -1;                  /* NULL */
951 static int hf_h245_crc16bit = -1;                 /* NULL */
952 static int hf_h245_crc32bit = -1;                 /* NULL */
953 static int hf_h245_crcNotUsed = -1;               /* NULL */
954 static int hf_h245_rcpcCodeRate = -1;             /* INTEGER_8_32 */
955 static int hf_h245_arqType = -1;                  /* ArqType */
956 static int hf_h245_alsduSplitting = -1;           /* BOOLEAN */
957 static int hf_h245_rsCodeCorrection = -1;         /* INTEGER_0_127 */
958 static int hf_h245_noArq = -1;                    /* NULL */
959 static int hf_h245_typeIArq = -1;                 /* H223AnnexCArqParameters */
960 static int hf_h245_typeIIArq = -1;                /* H223AnnexCArqParameters */
961 static int hf_h245_AL2HeaderFEC = -1;             /* AL2HeaderFEC */
962 static int hf_h245_sebch16_5 = -1;                /* NULL */
963 static int hf_h245_headerFormat = -1;             /* T_headerFormat */
964 static int hf_h245_crlength2 = -1;                /* AL3CrcLength */
965 static int hf_h245_numberOfRetransmissions = -1;  /* T_numberOfRetransmissions */
966 static int hf_h245_finite = -1;                   /* INTEGER_0_16 */
967 static int hf_h245_infinite = -1;                 /* NULL */
968 static int hf_h245_hdlcParameters = -1;           /* V76HDLCParameters */
969 static int hf_h245_suspendResume = -1;            /* T_suspendResume */
970 static int hf_h245_noSuspendResume = -1;          /* NULL */
971 static int hf_h245_suspendResumewAddress = -1;    /* NULL */
972 static int hf_h245_suspendResumewoAddress = -1;   /* NULL */
973 static int hf_h245_uIH = -1;                      /* BOOLEAN */
974 static int hf_h245_v76_mode = -1;                 /* V76LCP_mode */
975 static int hf_h245_eRM = -1;                      /* T_eRM */
976 static int hf_h245_windowSize = -1;               /* INTEGER_1_127 */
977 static int hf_h245_recovery = -1;                 /* T_recovery */
978 static int hf_h245_rej = -1;                      /* NULL */
979 static int hf_h245_sREJ = -1;                     /* NULL */
980 static int hf_h245_mSREJ = -1;                    /* NULL */
981 static int hf_h245_uNERM = -1;                    /* NULL */
982 static int hf_h245_v75Parameters = -1;            /* V75Parameters */
983 static int hf_h245_crcLength = -1;                /* CRCLength */
984 static int hf_h245_n401 = -1;                     /* INTEGER_1_4095 */
985 static int hf_h245_loopbackTestProcedure = -1;    /* BOOLEAN */
986 static int hf_h245_sessionID_0_255 = -1;          /* INTEGER_0_255 */
987 static int hf_h245_associatedSessionID = -1;      /* INTEGER_1_255 */
988 static int hf_h245_mediaChannel = -1;             /* TransportAddress */
989 static int hf_h245_mediaGuaranteedDelivery = -1;  /* BOOLEAN */
990 static int hf_h245_mediaControlChannel = -1;      /* TransportAddress */
991 static int hf_h245_mediaControlGuaranteedDelivery = -1;  /* BOOLEAN */
992 static int hf_h245_destination = -1;              /* TerminalLabel */
993 static int hf_h245_mediaPacketization = -1;       /* T_mediaPacketization */
994 static int hf_h245_h261aVideoPacketizationFlag = -1;  /* NULL */
995 static int hf_h245_rtpPayloadType = -1;           /* RTPPayloadType */
996 static int hf_h245_source = -1;                   /* TerminalLabel */
997 static int hf_h245_payloadDescriptor = -1;        /* T_payloadDescriptor */
998 static int hf_h245_rfc_number = -1;               /* INTEGER_1_32768_ */
999 static int hf_h245_oid = -1;                      /* OBJECT_IDENTIFIER */
1000 static int hf_h245_payloadType = -1;              /* INTEGER_0_127 */
1001 static int hf_h245_secondaryEncoding3 = -1;       /* DataType */
1002 static int hf_h245_rtpRedundancyEncoding = -1;    /* T_rtpRedundancyEncoding */
1003 static int hf_h245_primary = -1;                  /* RedundancyEncodingElement */
1004 static int hf_h245_secondary = -1;                /* SEQUNCE_OF_RedundancyEncodingElement */
1005 static int hf_h245_secondary_item = -1;           /* RedundancyEncodingElement */
1006 static int hf_h245_elements = -1;                 /* SEQUNCE_OF_MultiplePayloadStreamElement */
1007 static int hf_h245_elements_item = -1;            /* MultiplePayloadStreamElement */
1008 static int hf_h245_rfc2733 = -1;                  /* RFC2733Data */
1009 static int hf_h245_fec_data_mode = -1;            /* FECdata_mode */
1010 static int hf_h245_redundancyEncodingFlag = -1;   /* NULL */
1011 static int hf_h245_separateStream = -1;           /* SeparateStream */
1012 static int hf_h245_differentPort = -1;            /* T_differentPort */
1013 static int hf_h245_protectedSessionID = -1;       /* INTEGER_1_255 */
1014 static int hf_h245_protectedPayloadType = -1;     /* INTEGER_0_127 */
1015 static int hf_h245_samePort = -1;                 /* T_samePort */
1016 static int hf_h245_unicastAddress = -1;           /* UnicastAddress */
1017 static int hf_h245_multicastAddress = -1;         /* MulticastAddress */
1018 static int hf_h245_iPAddress = -1;                /* T_iPAddress */
1019 static int hf_h245_ip4_network = -1;              /* Ipv4_network */
1020 static int hf_h245_tsapIdentifier = -1;           /* TsapIdentifier */
1021 static int hf_h245_iPXAddress = -1;               /* T_iPXAddress */
1022 static int hf_h245_node = -1;                     /* OCTET_STRING_SIZE_6 */
1023 static int hf_h245_netnum = -1;                   /* OCTET_STRING_SIZE_4 */
1024 static int hf_h245_ipx_tsapIdentifier = -1;       /* OCTET_STRING_SIZE_2 */
1025 static int hf_h245_iP6Address = -1;               /* T_iP6Address */
1026 static int hf_h245_ip6_network = -1;              /* OCTET_STRING_SIZE_16 */
1027 static int hf_h245_ipv6_tsapIdentifier = -1;      /* INTEGER_0_65535 */
1028 static int hf_h245_netBios = -1;                  /* OCTET_STRING_SIZE_16 */
1029 static int hf_h245_iPSourceRouteAddress = -1;     /* T_iPSourceRouteAddress */
1030 static int hf_h245_routing = -1;                  /* T_routing */
1031 static int hf_h245_strict = -1;                   /* NULL */
1032 static int hf_h245_loose = -1;                    /* NULL */
1033 static int hf_h245_network = -1;                  /* OCTET_STRING_SIZE_4 */
1034 static int hf_h245_iPSrcRoute_tsapIdentifier = -1;  /* INTEGER_0_65535 */
1035 static int hf_h245_route = -1;                    /* SEQUNCE_OF_OCTET_STRING_SIZE_4 */
1036 static int hf_h245_route_item = -1;               /* OCTET_STRING_SIZE_4 */
1037 static int hf_h245_nsap = -1;                     /* OCTET_STRING_SIZE_1_20 */
1038 static int hf_h245_nonStandardAddress = -1;       /* NonStandardParameter */
1039 static int hf_h245_mIPAddress = -1;               /* MIPAddress */
1040 static int hf_h245_mip4_network = -1;             /* OCTET_STRING_SIZE_4 */
1041 static int hf_h245_multicast_tsapIdentifier = -1;  /* INTEGER_0_65535 */
1042 static int hf_h245_mIP6Address = -1;              /* MIP6Address */
1043 static int hf_h245_mip6_network = -1;             /* OCTET_STRING_SIZE_16 */
1044 static int hf_h245_multicast_IPv6_tsapIdentifier = -1;  /* INTEGER_0_65535 */
1045 static int hf_h245_synchFlag = -1;                /* INTEGER_0_255 */
1046 static int hf_h245_h235Key = -1;                  /* OCTET_STRING_SIZE_1_65535 */
1047 static int hf_h245_escrowentry = -1;              /* SEQUNCE_SIZE_1_256_OF_EscrowData */
1048 static int hf_h245_escrowentry_item = -1;         /* EscrowData */
1049 static int hf_h245_escrowID = -1;                 /* OBJECT_IDENTIFIER */
1050 static int hf_h245_escrowValue = -1;              /* BIT_STRING_SIZE_1_65535 */
1051 static int hf_h245_olc_ack_reverseLogicalChannelParameters = -1;  /* OLC_ack_reverseLogicalChannelParameters */
1052 static int hf_h245_reverseLogicalChannelNumber = -1;  /* LogicalChannelNumber */
1053 static int hf_h245_olc_ack_multiplexParameters = -1;  /* T_multiplexParameters */
1054 static int hf_h245_forwardMultiplexAckParameters = -1;  /* T_forwardMultiplexAckParameters */
1055 static int hf_h245_h2250LogicalChannelAckParameters = -1;  /* H2250LogicalChannelAckParameters */
1056 static int hf_h245_olc_rej_cause = -1;            /* OpenLogicalChannelRejectCause */
1057 static int hf_h245_unsuitableReverseParameters = -1;  /* NULL */
1058 static int hf_h245_dataTypeNotSupported = -1;     /* NULL */
1059 static int hf_h245_dataTypeNotAvailable = -1;     /* NULL */
1060 static int hf_h245_unknownDataType = -1;          /* NULL */
1061 static int hf_h245_dataTypeALCombinationNotSupported = -1;  /* NULL */
1062 static int hf_h245_multicastChannelNotAllowed = -1;  /* NULL */
1063 static int hf_h245_insufficientBandwidth = -1;    /* NULL */
1064 static int hf_h245_separateStackEstablishmentFailed = -1;  /* NULL */
1065 static int hf_h245_invalidSessionID = -1;         /* NULL */
1066 static int hf_h245_masterSlaveConflict = -1;      /* NULL */
1067 static int hf_h245_waitForCommunicationMode = -1;  /* NULL */
1068 static int hf_h245_invalidDependentChannel = -1;  /* NULL */
1069 static int hf_h245_replacementForRejected = -1;   /* NULL */
1070 static int hf_h245_sessionID = -1;                /* INTEGER_1_255 */
1071 static int hf_h245_ack_mediaChannel = -1;         /* T_mediaChannel */
1072 static int hf_h245_ack_mediaControlChannel = -1;  /* T_mediaControlChannel */
1073 static int hf_h245_flowControlToZero = -1;        /* BOOLEAN */
1074 static int hf_h245_CloseLogicalChannel_source = -1;  /* T_source */
1075 static int hf_h245_user = -1;                     /* NULL */
1076 static int hf_h245_lcse = -1;                     /* NULL */
1077 static int hf_h245_clc_reason = -1;               /* clc_reason */
1078 static int hf_h245_unknown = -1;                  /* NULL */
1079 static int hf_h245_reopen = -1;                   /* NULL */
1080 static int hf_h245_reservationFailure = -1;       /* NULL */
1081 static int hf_h245_qosCapability = -1;            /* QOSCapability */
1082 static int hf_h245_reason = -1;                   /* T_reason */
1083 static int hf_h245_normal = -1;                   /* NULL */
1084 static int hf_h245_req_chan_clos_rej_cause = -1;  /* RequestChannelCloseRejectCause */
1085 static int hf_h245_multiplexEntryDescriptors = -1;  /* SET_SIZE_1_15_OF_MultiplexEntryDescriptor */
1086 static int hf_h245_multiplexEntryDescriptors_item = -1;  /* MultiplexEntryDescriptor */
1087 static int hf_h245_multiplexTableEntryNumber = -1;  /* MultiplexTableEntryNumber */
1088 static int hf_h245_elementList = -1;              /* SEQUNCE_SIZE_1_256_OF_MultiplexElement */
1089 static int hf_h245_elementList_item = -1;         /* MultiplexElement */
1090 static int hf_h245_Me_type = -1;                  /* Me_type */
1091 static int hf_h245_logicalChannelNum = -1;        /* INTEGER_0_65535 */
1092 static int hf_h245_subElementList = -1;           /* SEQUNCE_SIZE_2_255_OF_MultiplexElement */
1093 static int hf_h245_subElementList_item = -1;      /* MultiplexElement */
1094 static int hf_h245_me_repeatCount = -1;           /* ME_repeatCount */
1095 static int hf_h245_finite_1_65535 = -1;           /* INTEGER_1_65535 */
1096 static int hf_h245_untilClosingFlag = -1;         /* NULL */
1097 static int hf_h245_multiplexTableEntryNumbers = -1;  /* SET_SIZE_1_15_OF_MultiplexTableEntryNumber */
1098 static int hf_h245_multiplexTableEntryNumber_item = -1;  /* MultiplexTableEntryNumber */
1099 static int hf_h245_rejectionDescriptions1 = -1;   /* SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions */
1100 static int hf_h245_rejectionDescriptions1_item = -1;  /* MultiplexEntryRejectionDescriptions */
1101 static int hf_h245_mux_rej_cause = -1;            /* MultiplexEntryRejectionDescriptionsCause */
1102 static int hf_h245_unspecifiedCause = -1;         /* NULL */
1103 static int hf_h245_descriptorTooComplex = -1;     /* NULL */
1104 static int hf_h245_entryNumbers = -1;             /* SET_SIZE_1_15_OF_MultiplexTableEntryNumber */
1105 static int hf_h245_entryNumbers_item = -1;        /* MultiplexTableEntryNumber */
1106 static int hf_h245_rejectionDescriptions2 = -1;   /* SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions */
1107 static int hf_h245_rejectionDescriptions2_item = -1;  /* RequestMultiplexEntryRejectionDescriptions */
1108 static int hf_h245_req_mux_rej_cause = -1;        /* RequestMultiplexEntryRejectionDescriptionsCause */
1109 static int hf_h245_requestedModes = -1;           /* SEQUNCE_SIZE_1_256_OF_ModeDescription */
1110 static int hf_h245_requestedModes_item = -1;      /* ModeDescription */
1111 static int hf_h245_req_mode_ack_response = -1;    /* Req_mode_ack_response */
1112 static int hf_h245_willTransmitMostPreferredMode = -1;  /* NULL */
1113 static int hf_h245_willTransmitLessPreferredMode = -1;  /* NULL */
1114 static int hf_h245_req_rej_cause = -1;            /* RequestModeRejectCause */
1115 static int hf_h245_modeUnavailable = -1;          /* NULL */
1116 static int hf_h245_multipointConstraint = -1;     /* NULL */
1117 static int hf_h245_requestDenied = -1;            /* NULL */
1118 static int hf_h245_ModeDescription_item = -1;     /* ModeElement */
1119 static int hf_h245_videoMode = -1;                /* VideoMode */
1120 static int hf_h245_audioMode = -1;                /* AudioMode */
1121 static int hf_h245_dataMode = -1;                 /* DataMode */
1122 static int hf_h245_encryptionMode = -1;           /* EncryptionMode */
1123 static int hf_h245_h235Mode = -1;                 /* H235Mode */
1124 static int hf_h245_multiplexedStreamMode = -1;    /* MultiplexedStreamParameter */
1125 static int hf_h245_redundancyEncodingDTMode = -1;  /* RedundancyEncodingDTMode */
1126 static int hf_h245_multiplePayloadStreamMode = -1;  /* MultiplePayloadStreamMode */
1127 static int hf_h245_fecMode = -1;                  /* FECMode */
1128 static int hf_h245_type = -1;                     /* ModeElementType */
1129 static int hf_h245_h223ModeParameters = -1;       /* H223ModeParameters */
1130 static int hf_h245_v76ModeParameters = -1;        /* V76ModeParameters */
1131 static int hf_h245_h2250ModeParameters = -1;      /* H2250ModeParameters */
1132 static int hf_h245_genericModeParameters = -1;    /* GenericCapability */
1133 static int hf_h245_multiplexedStreamModeParameters = -1;  /* MultiplexedStreamModeParameters */
1134 static int hf_h245_logicalChannelNumber = -1;     /* LogicalChannelNumber */
1135 static int hf_h245_mediaMode = -1;                /* T_mediaMode */
1136 static int hf_h245_prmary_dtmode = -1;            /* RedundancyEncodingDTModeElement */
1137 static int hf_h245_secondary2 = -1;               /* SEQUNCE_OF_RedundancyEncodingDTModeElement */
1138 static int hf_h245_secondary2_item = -1;          /* RedundancyEncodingDTModeElement */
1139 static int hf_h245_re_type = -1;                  /* Re_type */
1140 static int hf_h245_mpsmElements = -1;             /* SEQUNCE_OF_MultiplePayloadStreamElementMode */
1141 static int hf_h245_mpsmElements_item = -1;        /* MultiplePayloadStreamElementMode */
1142 static int hf_h245_rfc2733Mode = -1;              /* T_rfc2733Mode */
1143 static int hf_h245_fec_mode = -1;                 /* FEC_mode */
1144 static int hf_h245_adaptationLayer = -1;          /* AdaptationLayerType */
1145 static int hf_h245_redundancyEncodingMode = -1;   /* RedundancyEncodingMode */
1146 static int hf_h245_secondaryEncoding = -1;        /* T_secondaryEncoding */
1147 static int hf_h245_h261VideoMode = -1;            /* H261VideoMode */
1148 static int hf_h245_h262VideoMode = -1;            /* H262VideoMode */
1149 static int hf_h245_h263VideoMode = -1;            /* H263VideoMode */
1150 static int hf_h245_is11172VideoMode = -1;         /* IS11172VideoMode */
1151 static int hf_h245_genericVideoMode = -1;         /* GenericCapability */
1152 static int hf_h245_h261_resolution = -1;          /* H261Resolution */
1153 static int hf_h245_qcif = -1;                     /* NULL */
1154 static int hf_h245_cif = -1;                      /* NULL */
1155 static int hf_h245_profileAndLevel = -1;          /* T_profileAndLevel */
1156 static int hf_h245_profileAndLevel_SPatMLMode = -1;  /* NULL */
1157 static int hf_h245_profileAndLevel_MPatLLMode = -1;  /* NULL */
1158 static int hf_h245_profileAndLevel_MPatMLMode = -1;  /* NULL */
1159 static int hf_h245_profileAndLevel_MPatH_14Mode = -1;  /* NULL */
1160 static int hf_h245_profileAndLevel_MPatHLMode = -1;  /* NULL */
1161 static int hf_h245_profileAndLevel_SNRatLLMode = -1;  /* NULL */
1162 static int hf_h245_profileAndLevel_SNRatMLMode = -1;  /* NULL */
1163 static int hf_h245_profileAndLevel_SpatialatH_14Mode = -1;  /* NULL */
1164 static int hf_h245_profileAndLevel_HPatMLMode = -1;  /* NULL */
1165 static int hf_h245_profileAndLevel_HPatH_14Mode = -1;  /* NULL */
1166 static int hf_h245_profileAndLevel_HPatHLMode = -1;  /* NULL */
1167 static int hf_h245_h263_resolution = -1;          /* H263Resolution */
1168 static int hf_h245_sqcif = -1;                    /* NULL */
1169 static int hf_h245_cif4 = -1;                     /* NULL */
1170 static int hf_h245_cif16 = -1;                    /* NULL */
1171 static int hf_h245_custom_res = -1;               /* NULL */
1172 static int hf_h245_g711Alaw64k_mode = -1;         /* NULL */
1173 static int hf_h245_g711Alaw56k_mode = -1;         /* NULL */
1174 static int hf_h245_g711Ulaw64k_mode = -1;         /* NULL */
1175 static int hf_h245_g711Ulaw56k_mode = -1;         /* NULL */
1176 static int hf_h245_g722_64k_mode = -1;            /* NULL */
1177 static int hf_h245_g722_56k_mode = -1;            /* NULL */
1178 static int hf_h245_g722_48k_mode = -1;            /* NULL */
1179 static int hf_h245_g728_mode = -1;                /* NULL */
1180 static int hf_h245_g729_mode = -1;                /* NULL */
1181 static int hf_h245_g729AnnexA_mode = -1;          /* NULL */
1182 static int hf_h245_g7231_mode = -1;               /* Mode_g7231 */
1183 static int hf_h245_noSilenceSuppressionLowRate = -1;  /* NULL */
1184 static int hf_h245_noSilenceSuppressionHighRate = -1;  /* NULL */
1185 static int hf_h245_silenceSuppressionLowRate = -1;  /* NULL */
1186 static int hf_h245_silenceSuppressionHighRate = -1;  /* NULL */
1187 static int hf_h245_is11172AudioMode = -1;         /* IS11172AudioMode */
1188 static int hf_h245_is13818AudioMode = -1;         /* IS13818AudioMode */
1189 static int hf_h245_g7231AnnexCMode = -1;          /* G7231AnnexCMode */
1190 static int hf_h245_genericAudioMode = -1;         /* GenericCapability */
1191 static int hf_h245_vbd_mode = -1;                 /* VBDMode */
1192 static int hf_h245_audioLayer = -1;               /* T_audioLayer */
1193 static int hf_h245_audioLayer1Mode = -1;          /* NULL */
1194 static int hf_h245_audioLayer2Mode = -1;          /* NULL */
1195 static int hf_h245_audioLayer3Mode = -1;          /* NULL */
1196 static int hf_h245_audioSampling = -1;            /* T_audioSampling */
1197 static int hf_h245_audioSampling32kMode = -1;     /* NULL */
1198 static int hf_h245_audioSampling44k1Mode = -1;    /* NULL */
1199 static int hf_h245_audioSampling48kMode = -1;     /* NULL */
1200 static int hf_h245_is11172multichannelType = -1;  /* IS11172_multichannelType */
1201 static int hf_h245_singleChannelMode = -1;        /* NULL */
1202 static int hf_h245_twoChannelStereo = -1;         /* NULL */
1203 static int hf_h245_twoChannelDual = -1;           /* NULL */
1204 static int hf_h245_audioLayerMode = -1;           /* IS13818AudioLayer */
1205 static int hf_h245_audioSamplingMode = -1;        /* IS13818AudioSampling */
1206 static int hf_h245_audioSampling16kMode = -1;     /* NULL */
1207 static int hf_h245_audioSampling22k05Mode = -1;   /* NULL */
1208 static int hf_h245_audioSampling24kMode = -1;     /* NULL */
1209 static int hf_h245_is13818MultichannelType = -1;  /* IS13818MultichannelType */
1210 static int hf_h245_threeChannels2_1Mode = -1;     /* NULL */
1211 static int hf_h245_threeChannels3_0Mode = -1;     /* NULL */
1212 static int hf_h245_fourChannels2_0_2_0Mode = -1;  /* NULL */
1213 static int hf_h245_fourChannels2_2Mode = -1;      /* NULL */
1214 static int hf_h245_fourChannels3_1Mode = -1;      /* NULL */
1215 static int hf_h245_fiveChannels3_0_2_0Mode = -1;  /* NULL */
1216 static int hf_h245_fiveChannels3_2Mode = -1;      /* NULL */
1217 static int hf_h245_vbd_type = -1;                 /* AudioMode */
1218 static int hf_h245_datamodeapplication = -1;      /* DataModeApplication */
1219 static int hf_h245_t84DataProtocolCapability = -1;  /* DataProtocolCapability */
1220 static int hf_h245_t38faxDataProtocolCapability = -1;  /* T38faxApp */
1221 static int hf_h245_genericDataMode = -1;          /* GenericCapability */
1222 static int hf_h245_bitRate_0_4294967295 = -1;     /* INTEGER_0_4294967295 */
1223 static int hf_h245_h233Encryption = -1;           /* NULL */
1224 static int hf_h245_mlr_type = -1;                 /* Mlr_type */
1225 static int hf_h245_systemLoop = -1;               /* NULL */
1226 static int hf_h245_mediaLoop = -1;                /* LogicalChannelNumber */
1227 static int hf_h245_logicalChannelLoop = -1;       /* LogicalChannelNumber */
1228 static int hf_h245_Mla_type = -1;                 /* Mla_type */
1229 static int hf_h245_mlrej_type = -1;               /* Mlrej_type */
1230 static int hf_h245_maintloop_rej_cause = -1;      /* MaintenanceLoopRejectCause */
1231 static int hf_h245_canNotPerformLoop = -1;        /* NULL */
1232 static int hf_h245_communicationModeTable = -1;   /* SET_SIZE_1_256_OF_CommunicationModeTableEntry */
1233 static int hf_h245_communicationModeTable_item = -1;  /* CommunicationModeTableEntry */
1234 static int hf_h245_terminalLabel = -1;            /* TerminalLabel */
1235 static int hf_h245_sessionDescription = -1;       /* BMPString_SIZE_1_128 */
1236 static int hf_h245_entryDataType = -1;            /* T_dataType */
1237 static int hf_h245_sessionDependency = -1;        /* INTEGER_1_255 */
1238 static int hf_h245_terminalListRequest = -1;      /* NULL */
1239 static int hf_h245_makeMeChair = -1;              /* NULL */
1240 static int hf_h245_cancelMakeMeChair = -1;        /* NULL */
1241 static int hf_h245_dropTerminal = -1;             /* TerminalLabel */
1242 static int hf_h245_requestTerminalID = -1;        /* TerminalLabel */
1243 static int hf_h245_enterH243Password = -1;        /* NULL */
1244 static int hf_h245_enterH243TerminalID = -1;      /* NULL */
1245 static int hf_h245_enterH243ConferenceID = -1;    /* NULL */
1246 static int hf_h245_enterExtensionAddress = -1;    /* NULL */
1247 static int hf_h245_requestChairTokenOwner = -1;   /* NULL */
1248 static int hf_h245_requestTerminalCertificate = -1;  /* T_requestTerminalCertificate */
1249 static int hf_h245_certSelectionCriteria = -1;    /* CertSelectionCriteria */
1250 static int hf_h245_sRandom = -1;                  /* INTEGER_1_4294967295 */
1251 static int hf_h245_broadcastMyLogicalChannel = -1;  /* LogicalChannelNumber */
1252 static int hf_h245_makeTerminalBroadcaster = -1;  /* TerminalLabel */
1253 static int hf_h245_sendThisSource = -1;           /* TerminalLabel */
1254 static int hf_h245_requestAllTerminalIDs = -1;    /* NULL */
1255 static int hf_h245_remoteMCRequest = -1;          /* RemoteMCRequest */
1256 static int hf_h245_CertSelectionCriteria_item = -1;  /* Criteria */
1257 static int hf_h245_field = -1;                    /* OBJECT_IDENTIFIER */
1258 static int hf_h245_value = -1;                    /* OCTET_STRING_SIZE_1_65535 */
1259 static int hf_h245_mcuNumber = -1;                /* McuNumber */
1260 static int hf_h245_terminalNumber = -1;           /* TerminalNumber */
1261 static int hf_h245_mCTerminalIDResponse = -1;     /* T_mCTerminalIDResponse */
1262 static int hf_h245_terminalID = -1;               /* TerminalID */
1263 static int hf_h245_terminalIDResponse = -1;       /* T_terminalIDResponse */
1264 static int hf_h245_conferenceIDResponse = -1;     /* T_conferenceIDResponse */
1265 static int hf_h245_conferenceID = -1;             /* ConferenceID */
1266 static int hf_h245_passwordResponse = -1;         /* T_passwordResponse */
1267 static int hf_h245_password = -1;                 /* Password */
1268 static int hf_h245_terminalListResponse = -1;     /* SET_SIZE_1_256_OF_TerminalLabel */
1269 static int hf_h245_terminalListResponse_item = -1;  /* TerminalLabel */
1270 static int hf_h245_videoCommandReject = -1;       /* NULL */
1271 static int hf_h245_terminalDropReject = -1;       /* NULL */
1272 static int hf_h245_makeMeChairResponse = -1;      /* T_makeMeChairResponse */
1273 static int hf_h245_grantedChairToken = -1;        /* NULL */
1274 static int hf_h245_deniedChairToken = -1;         /* NULL */
1275 static int hf_h245_extensionAddressResponse = -1;  /* T_extensionAddressResponse */
1276 static int hf_h245_extensionAddress = -1;         /* TerminalID */
1277 static int hf_h245_chairTokenOwnerResponse = -1;  /* T_chairTokenOwnerResponse */
1278 static int hf_h245_terminalCertificateResponse = -1;  /* T_terminalCertificateResponse */
1279 static int hf_h245_certificateResponse = -1;      /* OCTET_STRING_SIZE_1_65535 */
1280 static int hf_h245_broadcastMyLogicalChannelResponse = -1;  /* T_broadcastMyLogicalChannelResponse */
1281 static int hf_h245_grantedBroadcastMyLogicalChannel = -1;  /* NULL */
1282 static int hf_h245_deniedBroadcastMyLogicalChannel = -1;  /* NULL */
1283 static int hf_h245_makeTerminalBroadcasterResponse = -1;  /* T_makeTerminalBroadcasterResponse */
1284 static int hf_h245_grantedMakeTerminalBroadcaster = -1;  /* NULL */
1285 static int hf_h245_deniedMakeTerminalBroadcaster = -1;  /* NULL */
1286 static int hf_h245_sendThisSourceResponse = -1;   /* T_sendThisSourceResponse */
1287 static int hf_h245_grantedSendThisSource = -1;    /* NULL */
1288 static int hf_h245_deniedSendThisSource = -1;     /* NULL */
1289 static int hf_h245_requestAllTerminalIDsResponse = -1;  /* RequestAllTerminalIDsResponse */
1290 static int hf_h245_remoteMCResponse = -1;         /* RemoteMCResponse */
1291 static int hf_h245_terminalInformation = -1;      /* SEQUNCE_OF_TerminalInformation */
1292 static int hf_h245_terminalInformation_item = -1;  /* TerminalInformation */
1293 static int hf_h245_masterActivate = -1;           /* NULL */
1294 static int hf_h245_slaveActivate = -1;            /* NULL */
1295 static int hf_h245_deActivate = -1;               /* NULL */
1296 static int hf_h245_accept = -1;                   /* NULL */
1297 static int hf_h245_reject = -1;                   /* T_reject */
1298 static int hf_h245_functionNotSupportedFlag = -1;  /* NULL */
1299 static int hf_h245_callInformationReq = -1;       /* CallInformationReq */
1300 static int hf_h245_maxNumberOfAdditionalConnections = -1;  /* INTEGER_1_65535 */
1301 static int hf_h245_addConnectionReq = -1;         /* AddConnectionReq */
1302 static int hf_h245_dialingInformation = -1;       /* DialingInformation */
1303 static int hf_h245_removeConnectionReq = -1;      /* RemoveConnectionReq */
1304 static int hf_h245_maximumHeaderIntervalReq = -1;  /* MaximumHeaderIntervalReq */
1305 static int hf_h245_requestType = -1;              /* T_requestType */
1306 static int hf_h245_currentIntervalInformation = -1;  /* NULL */
1307 static int hf_h245_requestedInterval = -1;        /* INTEGER_0_65535 */
1308 static int hf_h245_callInformationResp = -1;      /* CallInformationResp */
1309 static int hf_h245_callAssociationNumber = -1;    /* INTEGER_0_4294967295 */
1310 static int hf_h245_addConnectionResp = -1;        /* AddConnectionResp */
1311 static int hf_h245_responseCode = -1;             /* T_responseCode */
1312 static int hf_h245_accepted = -1;                 /* NULL */
1313 static int hf_h245_rejected = -1;                 /* T_rejected */
1314 static int hf_h245_connectionsNotAvailable = -1;  /* NULL */
1315 static int hf_h245_userRejected = -1;             /* NULL */
1316 static int hf_h245_removeConnectionResp = -1;     /* RemoveConnectionResp */
1317 static int hf_h245_maximumHeaderIntervalResp = -1;  /* MaximumHeaderIntervalResp */
1318 static int hf_h245_currentInterval = -1;          /* INTEGER_0_65535 */
1319 static int hf_h245_connectionIdentifier = -1;     /* ConnectionIdentifier */
1320 static int hf_h245_crcDesired = -1;               /* T_crcDesired */
1321 static int hf_h245_excessiveError = -1;           /* T_excessiveError */
1322 static int hf_h245_differential = -1;             /* SET_SIZE_1_65535_OF_DialingInformationNumber */
1323 static int hf_h245_differential_item = -1;        /* DialingInformationNumber */
1324 static int hf_h245_infoNotAvailable = -1;         /* INTEGER_1_65535 */
1325 static int hf_h245_networkAddressNum = -1;        /* NumericString_SIZE_0_40 */
1326 static int hf_h245_subAddress = -1;               /* IA5String_SIZE_1_40 */
1327 static int hf_h245_networkType = -1;              /* SET_SIZE_1_255_OF_DialingInformationNetworkType */
1328 static int hf_h245_networkType_item = -1;         /* DialingInformationNetworkType */
1329 static int hf_h245_n_isdn = -1;                   /* NULL */
1330 static int hf_h245_gstn = -1;                     /* NULL */
1331 static int hf_h245_mobile = -1;                   /* NULL */
1332 static int hf_h245_channelTag = -1;               /* INTEGER_0_4294967295 */
1333 static int hf_h245_sequenceNum = -1;              /* INTEGER_0_4294967295 */
1334 static int hf_h245_maximumBitRate = -1;           /* MaximumBitRate */
1335 static int hf_h245_rejectReason = -1;             /* LogicalChannelRateRejectReason */
1336 static int hf_h245_currentMaximumBitRate = -1;    /* MaximumBitRate */
1337 static int hf_h245_undefinedReason = -1;          /* NULL */
1338 static int hf_h245_insufficientResources = -1;    /* NULL */
1339 static int hf_h245_specificRequest = -1;          /* T_specificRequest */
1340 static int hf_h245_multiplexCapabilityBool = -1;  /* BOOLEAN */
1341 static int hf_h245_capabilityTableEntryNumbers = -1;  /* SET_SIZE_1_65535_OF_CapabilityTableEntryNumber */
1342 static int hf_h245_capabilityTableEntryNumbers_item = -1;  /* CapabilityTableEntryNumber */
1343 static int hf_h245_capabilityDescriptorNumbers = -1;  /* SET_SIZE_1_256_OF_CapabilityDescriptorNumber */
1344 static int hf_h245_capabilityDescriptorNumbers_item = -1;  /* CapabilityDescriptorNumber */
1345 static int hf_h245_genericRequestFlag = -1;       /* NULL */
1346 static int hf_h245_encryptionSE = -1;             /* OCTET_STRING */
1347 static int hf_h245_encryptionIVRequest = -1;      /* NULL */
1348 static int hf_h245_encryptionAlgorithmID = -1;    /* T_encryptionAlgorithmID */
1349 static int hf_h245_h233AlgorithmIdentifier = -1;  /* SequenceNumber */
1350 static int hf_h245_associatedAlgorithm = -1;      /* NonStandardParameter */
1351 static int hf_h245_scope = -1;                    /* Scope */
1352 static int hf_h245_restriction = -1;              /* Restriction */
1353 static int hf_h245_wholeMultiplex = -1;           /* NULL */
1354 static int hf_h245_Res_maximumBitRate = -1;       /* INTEGER_0_16777215 */
1355 static int hf_h245_noRestriction = -1;            /* NULL */
1356 static int hf_h245_disconnect = -1;               /* NULL */
1357 static int hf_h245_gstnOptions = -1;              /* T_gstnOptions */
1358 static int hf_h245_telephonyMode = -1;            /* NULL */
1359 static int hf_h245_v8bis = -1;                    /* NULL */
1360 static int hf_h245_v34DSVD = -1;                  /* NULL */
1361 static int hf_h245_v34DuplexFAX = -1;             /* NULL */
1362 static int hf_h245_v34H324 = -1;                  /* NULL */
1363 static int hf_h245_isdnOptions = -1;              /* T_isdnOptions */
1364 static int hf_h245_v140 = -1;                     /* NULL */
1365 static int hf_h245_terminalOnHold = -1;           /* NULL */
1366 static int hf_h245_cancelBroadcastMyLogicalChannel = -1;  /* LogicalChannelNumber */
1367 static int hf_h245_cancelMakeTerminalBroadcaster = -1;  /* NULL */
1368 static int hf_h245_cancelSendThisSource = -1;     /* NULL */
1369 static int hf_h245_dropConference = -1;           /* NULL */
1370 static int hf_h245_substituteConferenceIDCommand = -1;  /* SubstituteConferenceIDCommand */
1371 static int hf_h245_conferenceIdentifier = -1;     /* OCTET_STRING_SIZE_16 */
1372 static int hf_h245_masterToSlave = -1;            /* NULL */
1373 static int hf_h245_slaveToMaster = -1;            /* NULL */
1374 static int hf_h245_mc_type = -1;                  /* Mc_type */
1375 static int hf_h245_equaliseDelay = -1;            /* NULL */
1376 static int hf_h245_zeroDelay = -1;                /* NULL */
1377 static int hf_h245_multipointModeCommand = -1;    /* NULL */
1378 static int hf_h245_cancelMultipointModeCommand = -1;  /* NULL */
1379 static int hf_h245_videoFreezePicture = -1;       /* NULL */
1380 static int hf_h245_videoFastUpdatePicture = -1;   /* NULL */
1381 static int hf_h245_videoFastUpdateGOB = -1;       /* T_videoFastUpdateGOB */
1382 static int hf_h245_firstGOB = -1;                 /* INTEGER_0_17 */
1383 static int hf_h245_numberOfGOBs = -1;             /* INTEGER_1_18 */
1384 static int hf_h245_videoTemporalSpatialTradeOff = -1;  /* INTEGER_0_31 */
1385 static int hf_h245_videoSendSyncEveryGOB = -1;    /* NULL */
1386 static int hf_h245_videoSendSyncEveryGOBCancel = -1;  /* NULL */
1387 static int hf_h245_videoFastUpdateMB = -1;        /* T_videoFastUpdateMB */
1388 static int hf_h245_firstGOB_0_255 = -1;           /* INTEGER_0_255 */
1389 static int hf_h245_firstMB_1_8192 = -1;           /* INTEGER_1_8192 */
1390 static int hf_h245_numberOfMBs = -1;              /* INTEGER_1_8192 */
1391 static int hf_h245_maxH223MUXPDUsize = -1;        /* INTEGER_1_65535 */
1392 static int hf_h245_encryptionUpdate = -1;         /* EncryptionSync */
1393 static int hf_h245_encryptionUpdateRequest = -1;  /* EncryptionUpdateRequest */
1394 static int hf_h245_switchReceiveMediaOff = -1;    /* NULL */
1395 static int hf_h245_switchReceiveMediaOn = -1;     /* NULL */
1396 static int hf_h245_progressiveRefinementStart = -1;  /* T_progressiveRefinementStart */
1397 static int hf_h245_repeatCount = -1;              /* RepeatCount */
1398 static int hf_h245_progressiveRefinementAbortOne = -1;  /* NULL */
1399 static int hf_h245_progressiveRefinementAbortContinuous = -1;  /* NULL */
1400 static int hf_h245_videoBadMBs = -1;              /* T_videoBadMBs */
1401 static int hf_h245_firstMB = -1;                  /* INTEGER_1_9216 */
1402 static int hf_h245_numberOfMBs1_1_9216 = -1;      /* INTEGER_1_9216 */
1403 static int hf_h245_temporalReference = -1;        /* INTEGER_0_1023 */
1404 static int hf_h245_lostPicture = -1;              /* SEQUNCE_OF_PictureReference */
1405 static int hf_h245_lostPicture_item = -1;         /* PictureReference */
1406 static int hf_h245_lostPartialPicture = -1;       /* T_lostPartialPicture */
1407 static int hf_h245_pictureReference = -1;         /* PictureReference */
1408 static int hf_h245_recoveryReferencePicture = -1;  /* SEQUNCE_OF_PictureReference */
1409 static int hf_h245_recoveryReferencePicture_item = -1;  /* PictureReference */
1410 static int hf_h245_encryptionUpdateCommand = -1;  /* T_encryptionUpdateCommand */
1411 static int hf_h245_encryptionUpdateAck = -1;      /* T_encryptionUpdateAck */
1412 static int hf_h245_direction = -1;                /* EncryptionUpdateDirection */
1413 static int hf_h245_doOneProgression = -1;         /* NULL */
1414 static int hf_h245_doContinuousProgressions = -1;  /* NULL */
1415 static int hf_h245_doOneIndependentProgression = -1;  /* NULL */
1416 static int hf_h245_doContinuousIndependentProgressions = -1;  /* NULL */
1417 static int hf_h245_secureChannel = -1;            /* BOOLEAN */
1418 static int hf_h245_sharedSecret = -1;             /* BOOLEAN */
1419 static int hf_h245_certProtectedKey = -1;         /* BOOLEAN */
1420 static int hf_h245_keyProtectionMethod = -1;      /* KeyProtectionMethod */
1421 static int hf_h245_pictureNumber = -1;            /* INTEGER_0_1023 */
1422 static int hf_h245_longTermPictureIndex = -1;     /* INTEGER_0_255 */
1423 static int hf_h245_h223ModeChange = -1;           /* T_h223ModeChange */
1424 static int hf_h245_toLevel0 = -1;                 /* NULL */
1425 static int hf_h245_toLevel1 = -1;                 /* NULL */
1426 static int hf_h245_toLevel2 = -1;                 /* NULL */
1427 static int hf_h245_toLevel2withOptionalHeader = -1;  /* NULL */
1428 static int hf_h245_h223AnnexADoubleFlag = -1;     /* T_h223AnnexADoubleFlag */
1429 static int hf_h245_start = -1;                    /* NULL */
1430 static int hf_h245_stop = -1;                     /* NULL */
1431 static int hf_h245_bitRate = -1;                  /* INTEGER_1_65535 */
1432 static int hf_h245_bitRateLockedToPCRClock = -1;  /* BOOLEAN */
1433 static int hf_h245_bitRateLockedToNetworkClock = -1;  /* BOOLEAN */
1434 static int hf_h245_cmd_aal = -1;                  /* Cmd_aal */
1435 static int hf_h245_cmd_aal1 = -1;                 /* Cmd_aal1 */
1436 static int hf_h245_cmd_clockRecovery = -1;        /* Cmd_clockRecovery */
1437 static int hf_h245_nullClockRecoveryflag = -1;    /* NULL */
1438 static int hf_h245_srtsClockRecovery = -1;        /* NULL */
1439 static int hf_h245_adaptiveClockRecoveryFlag = -1;  /* NULL */
1440 static int hf_h245_cmd_errorCorrection = -1;      /* Cmd_errorCorrection */
1441 static int hf_h245_nullErrorCorrectionFlag = -1;  /* NULL */
1442 static int hf_h245_longInterleaverFlag = -1;      /* NULL */
1443 static int hf_h245_shortInterleaverFlag = -1;     /* NULL */
1444 static int hf_h245_errorCorrectionOnlyFlag = -1;  /* NULL */
1445 static int hf_h245_cmd_aal5 = -1;                 /* Cmd_aal5 */
1446 static int hf_h245_cmd_multiplex = -1;            /* Cmd_multiplex */
1447 static int hf_h245_noMultiplex = -1;              /* NULL */
1448 static int hf_h245_transportStream = -1;          /* NULL */
1449 static int hf_h245_programStreamFlag = -1;        /* NULL */
1450 static int hf_h245_cmd_reverseParameters = -1;    /* Cmd_reverseParameters */
1451 static int hf_h245_cmdr_multiplex = -1;           /* CmdR_multiplex */
1452 static int hf_h245_sampleSize = -1;               /* INTEGER_1_255 */
1453 static int hf_h245_samplesPerFrame = -1;          /* INTEGER_1_255 */
1454 static int hf_h245_status = -1;                   /* T_status */
1455 static int hf_h245_synchronized = -1;             /* NULL */
1456 static int hf_h245_reconfiguration = -1;          /* NULL */
1457 static int hf_h245_fns_cause = -1;                /* FunctionNotSupportedCause */
1458 static int hf_h245_syntaxError = -1;              /* NULL */
1459 static int hf_h245_semanticError = -1;            /* NULL */
1460 static int hf_h245_unknownFunction = -1;          /* NULL */
1461 static int hf_h245_returnedFunction = -1;         /* OCTET_STRING */
1462 static int hf_h245_sbeNumber = -1;                /* INTEGER_0_9 */
1463 static int hf_h245_terminalNumberAssign = -1;     /* TerminalLabel */
1464 static int hf_h245_terminalJoinedConference = -1;  /* TerminalLabel */
1465 static int hf_h245_terminalLeftConference = -1;   /* TerminalLabel */
1466 static int hf_h245_seenByAtLeastOneOther = -1;    /* NULL */
1467 static int hf_h245_cancelSeenByAtLeastOneOther = -1;  /* NULL */
1468 static int hf_h245_seenByAll = -1;                /* NULL */
1469 static int hf_h245_cancelSeenByAll = -1;          /* NULL */
1470 static int hf_h245_terminalYouAreSeeing = -1;     /* TerminalLabel */
1471 static int hf_h245_requestForFloor = -1;          /* NULL */
1472 static int hf_h245_withdrawChairToken = -1;       /* NULL */
1473 static int hf_h245_floorRequested = -1;           /* TerminalLabel */
1474 static int hf_h245_terminalYouAreSeeingInSubPictureNumber = -1;  /* TerminalYouAreSeeingInSubPictureNumber */
1475 static int hf_h245_videoIndicateCompose = -1;     /* VideoIndicateCompose */
1476 static int hf_h245_subPictureNumber = -1;         /* INTEGER_0_255 */
1477 static int hf_h245_compositionNumber = -1;        /* INTEGER_0_255 */
1478 static int hf_h245_mi_type = -1;                  /* Mi_type */
1479 static int hf_h245_logicalChannelActive = -1;     /* NULL */
1480 static int hf_h245_logicalChannelInactive = -1;   /* NULL */
1481 static int hf_h245_multipointConference = -1;     /* NULL */
1482 static int hf_h245_cancelMultipointConference = -1;  /* NULL */
1483 static int hf_h245_multipointZeroComm = -1;       /* NULL */
1484 static int hf_h245_cancelMultipointZeroComm = -1;  /* NULL */
1485 static int hf_h245_multipointSecondaryStatus = -1;  /* NULL */
1486 static int hf_h245_cancelMultipointSecondaryStatus = -1;  /* NULL */
1487 static int hf_h245_videoIndicateReadyToActivate = -1;  /* NULL */
1488 static int hf_h245_videoNotDecodedMBs = -1;       /* T_videoNotDecodedMBs */
1489 static int hf_h245_temporalReference_0_255 = -1;  /* INTEGER_0_255 */
1490 static int hf_h245_estimatedReceivedJitterMantissa = -1;  /* INTEGER_0_3 */
1491 static int hf_h245_estimatedReceivedJitterExponent = -1;  /* INTEGER_0_7 */
1492 static int hf_h245_skippedFrameCount = -1;        /* INTEGER_0_15 */
1493 static int hf_h245_additionalDecoderBuffer = -1;  /* INTEGER_0_262143 */
1494 static int hf_h245_logicalChannelNumber1 = -1;    /* LogicalChannelNumber */
1495 static int hf_h245_logicalChannelNumber2 = -1;    /* LogicalChannelNumber */
1496 static int hf_h245_skew = -1;                     /* INTEGER_0_4095 */
1497 static int hf_h245_maximumSkew = -1;              /* INTEGER_0_4095 */
1498 static int hf_h245_signalAddress = -1;            /* TransportAddress */
1499 static int hf_h245_vendor = -1;                   /* NonStandardIdentifier */
1500 static int hf_h245_productNumber = -1;            /* OCTET_STRING_SIZE_1_256 */
1501 static int hf_h245_versionNumber = -1;            /* OCTET_STRING_SIZE_1_256 */
1502 static int hf_h245_ind_aal = -1;                  /* Ind_aal */
1503 static int hf_h245_ind_aal1 = -1;                 /* Ind_aal1 */
1504 static int hf_h245_ind_clockRecovery = -1;        /* Ind_clockRecovery */
1505 static int hf_h245_ind_errorCorrection = -1;      /* Ind_errorCorrection */
1506 static int hf_h245_ind_aal5 = -1;                 /* Ind_aal5 */
1507 static int hf_h245_ind_multiplex = -1;            /* Ind_multiplex */
1508 static int hf_h245_ind_reverseParameters = -1;    /* Ind_reverseParameters */
1509 static int hf_h245_indr_multiplex = -1;           /* IndR_multiplex */
1510 static int hf_h245_iv8 = -1;                      /* IV8 */
1511 static int hf_h245_iv16 = -1;                     /* IV16 */
1512 static int hf_h245_iv = -1;                       /* OCTET_STRING */
1513 static int hf_h245_alphanumeric = -1;             /* GeneralString */
1514 static int hf_h245_userInputSupportIndication = -1;  /* T_userInputSupportIndication */
1515 static int hf_h245_signal = -1;                   /* T_signal */
1516 static int hf_h245_signalType = -1;               /* IA5String_SIZE_1 */
1517 static int hf_h245_duration = -1;                 /* INTEGER_1_65535 */
1518 static int hf_h245_rtp = -1;                      /* Rtp */
1519 static int hf_h245_rtpPayloadIndication = -1;     /* NULL */
1520 static int hf_h245_paramS = -1;                   /* Params */
1521 static int hf_h245_encryptedSignalType = -1;      /* OCTET_STRING_SIZE_1 */
1522 static int hf_h245_signalUpdate = -1;             /* T_signalUpdate */
1523 static int hf_h245_si_rtp = -1;                   /* Si_rtp */
1524 static int hf_h245_extendedAlphanumeric = -1;     /* T_extendedAlphanumeric */
1525 static int hf_h245_encryptedAlphanumeric = -1;    /* EncryptedAlphanumeric */
1526 static int hf_h245_algorithmOID = -1;             /* OBJECT_IDENTIFIER */
1527 static int hf_h245_encrypted = -1;                /* OCTET_STRING */
1528 static int hf_h245_timestamp = -1;                /* INTEGER_0_4294967295 */
1529 static int hf_h245_expirationTime = -1;           /* INTEGER_0_4294967295 */
1530
1531 /*--- End of included file: packet-h245-hf.c ---*/
1532
1533
1534 /* Initialize the subtree pointers */
1535
1536 /*--- Included file: packet-h245-ett.c ---*/
1537
1538 static gint ett_h245_MultimediaSystemControlMessage = -1;
1539 static gint ett_h245_RequestMessage = -1;
1540 static gint ett_h245_ResponseMessage = -1;
1541 static gint ett_h245_CommandMessage = -1;
1542 static gint ett_h245_IndicationMessage = -1;
1543 static gint ett_h245_GenericMessage = -1;
1544 static gint ett_h245_SEQUNCE_OF_GenericParameter = -1;
1545 static gint ett_h245_NonStandardMessage = -1;
1546 static gint ett_h245_NonStandardParameter = -1;
1547 static gint ett_h245_NonStandardIdentifier = -1;
1548 static gint ett_h245_H221NonStandardID = -1;
1549 static gint ett_h245_MasterSlaveDetermination = -1;
1550 static gint ett_h245_MasterSlaveDeterminationAck = -1;
1551 static gint ett_h245_T_decision = -1;
1552 static gint ett_h245_MasterSlaveDeterminationReject = -1;
1553 static gint ett_h245_MasterSlaveDeterminationRejectCause = -1;
1554 static gint ett_h245_MasterSlaveDeterminationRelease = -1;
1555 static gint ett_h245_TerminalCapabilitySet = -1;
1556 static gint ett_h245_SET_SIZE_1_256_OF_CapabilityTableEntry = -1;
1557 static gint ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptor = -1;
1558 static gint ett_h245_CapabilityTableEntry = -1;
1559 static gint ett_h245_CapabilityDescriptor = -1;
1560 static gint ett_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet = -1;
1561 static gint ett_h245_AlternativeCapabilitySet = -1;
1562 static gint ett_h245_TerminalCapabilitySetAck = -1;
1563 static gint ett_h245_TerminalCapabilitySetReject = -1;
1564 static gint ett_h245_TerminalCapabilitySetRejectCause = -1;
1565 static gint ett_h245_T_tableEntryCapacityExceeded = -1;
1566 static gint ett_h245_TerminalCapabilitySetRelease = -1;
1567 static gint ett_h245_Capability = -1;
1568 static gint ett_h245_T_h233EncryptionReceiveCapability = -1;
1569 static gint ett_h245_H235SecurityCapability = -1;
1570 static gint ett_h245_MultiplexCapability = -1;
1571 static gint ett_h245_H222Capability = -1;
1572 static gint ett_h245_SET_OF_VCCapability = -1;
1573 static gint ett_h245_VCCapability = -1;
1574 static gint ett_h245_T_aal1 = -1;
1575 static gint ett_h245_T_aal5 = -1;
1576 static gint ett_h245_T_availableBitRates = -1;
1577 static gint ett_h245_Avb_type = -1;
1578 static gint ett_h245_T_rangeOfBitRates = -1;
1579 static gint ett_h245_T_aal1ViaGateway = -1;
1580 static gint ett_h245_SET_SIZE_1_256_OF_Q2931Address = -1;
1581 static gint ett_h245_H223Capability = -1;
1582 static gint ett_h245_T_h223MultiplexTableCapability = -1;
1583 static gint ett_h245_T_enhanced = -1;
1584 static gint ett_h245_T_mobileOperationTransmitCapability = -1;
1585 static gint ett_h245_T_mobileMultilinkFrameCapability = -1;
1586 static gint ett_h245_H223AnnexCCapability = -1;
1587 static gint ett_h245_V76Capability = -1;
1588 static gint ett_h245_V75Capability = -1;
1589 static gint ett_h245_H2250Capability = -1;
1590 static gint ett_h245_T_mcCapability = -1;
1591 static gint ett_h245_SEQUNCE_SIZE_1_256_OF_RedundancyEncodingCapability = -1;
1592 static gint ett_h245_MediaPacketizationCapability = -1;
1593 static gint ett_h245_SEQUNCE_SIZE_1_256_OF_RTPPayloadType = -1;
1594 static gint ett_h245_RSVPParameters = -1;
1595 static gint ett_h245_QOSMode = -1;
1596 static gint ett_h245_ATMParameters = -1;
1597 static gint ett_h245_QOSCapability = -1;
1598 static gint ett_h245_MediaTransportType = -1;
1599 static gint ett_h245_T_atm_AAL5_compressed = -1;
1600 static gint ett_h245_MediaChannelCapability = -1;
1601 static gint ett_h245_TransportCapability = -1;
1602 static gint ett_h245_SEQUNCE_SIZE_1_256_OF_QOSCapability = -1;
1603 static gint ett_h245_SEQUNCE_SIZE_1_256_OF_MediaChannelCapability = -1;
1604 static gint ett_h245_RedundancyEncodingCapability = -1;
1605 static gint ett_h245_SEQUNCE_SIZE_1_256_OF_CapabilityTableEntryNumber = -1;
1606 static gint ett_h245_RedundancyEncodingMethod = -1;
1607 static gint ett_h245_RTPH263VideoRedundancyEncoding = -1;
1608 static gint ett_h245_T_frameToThreadMapping = -1;
1609 static gint ett_h245_SEQUNCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping = -1;
1610 static gint ett_h245_SEQUNCE_SIZE_1_256_OF_INTEGER_0_15 = -1;
1611 static gint ett_h245_RTPH263VideoRedundancyFrameMapping = -1;
1612 static gint ett_h245_SEQUNCE_SIZE_1_256_OF_INTEGER_0_255 = -1;
1613 static gint ett_h245_MultipointCapability = -1;
1614 static gint ett_h245_SEQUNCE_OF_MediaDistributionCapability = -1;
1615 static gint ett_h245_MediaDistributionCapability = -1;
1616 static gint ett_h245_SEQUNCE_OF_DataApplicationCapability = -1;
1617 static gint ett_h245_VideoCapability = -1;
1618 static gint ett_h245_ExtendedVideoCapability = -1;
1619 static gint ett_h245_SEQUNCE_OF_VideoCapability = -1;
1620 static gint ett_h245_SEQUNCE_OF_GenericCapability = -1;
1621 static gint ett_h245_H261VideoCapability = -1;
1622 static gint ett_h245_H262VideoCapability = -1;
1623 static gint ett_h245_H263VideoCapability = -1;
1624 static gint ett_h245_EnhancementLayerInfo = -1;
1625 static gint ett_h245_SET_SIZE_1_14_OF_EnhancementOptions = -1;
1626 static gint ett_h245_SET_SIZE_1_14_OF_BEnhancementParameters = -1;
1627 static gint ett_h245_BEnhancementParameters = -1;
1628 static gint ett_h245_EnhancementOptions = -1;
1629 static gint ett_h245_H263Options = -1;
1630 static gint ett_h245_SET_SIZE_1_16_OF_CustomPictureClockFrequency = -1;
1631 static gint ett_h245_SET_SIZE_1_16_OF_CustomPictureFormat = -1;
1632 static gint ett_h245_SET_SIZE_1_16_OF_H263VideoModeCombos = -1;
1633 static gint ett_h245_TransparencyParameters = -1;
1634 static gint ett_h245_RefPictureSelection = -1;
1635 static gint ett_h245_T_additionalPictureMemory = -1;
1636 static gint ett_h245_T_videoBackChannelSend = -1;
1637 static gint ett_h245_T_enhancedReferencePicSelect = -1;
1638 static gint ett_h245_T_subPictureRemovalParameters = -1;
1639 static gint ett_h245_CustomPictureClockFrequency = -1;
1640 static gint ett_h245_CustomPictureFormat = -1;
1641 static gint ett_h245_T_mPI = -1;
1642 static gint ett_h245_T_customPCF = -1;
1643 static gint ett_h245_T_customPCF_item = -1;
1644 static gint ett_h245_T_pixelAspectInformation = -1;
1645 static gint ett_h245_SET_SIZE_1_14_OF_INTEGER_1_14 = -1;
1646 static gint ett_h245_T_extendedPAR = -1;
1647 static gint ett_h245_T_extendedPAR_item = -1;
1648 static gint ett_h245_H263VideoModeCombos = -1;
1649 static gint ett_h245_SET_SIZE_1_16_OF_H263ModeComboFlags = -1;
1650 static gint ett_h245_H263ModeComboFlags = -1;
1651 static gint ett_h245_H263Version3Options = -1;
1652 static gint ett_h245_IS11172VideoCapability = -1;
1653 static gint ett_h245_AudioCapability = -1;
1654 static gint ett_h245_T_g7231 = -1;
1655 static gint ett_h245_G729Extensions = -1;
1656 static gint ett_h245_G7231AnnexCCapability = -1;
1657 static gint ett_h245_G723AnnexCAudioMode = -1;
1658 static gint ett_h245_IS11172AudioCapability = -1;
1659 static gint ett_h245_IS13818AudioCapability = -1;
1660 static gint ett_h245_GSMAudioCapability = -1;
1661 static gint ett_h245_VBDCapability = -1;
1662 static gint ett_h245_DataApplicationCapability = -1;
1663 static gint ett_h245_Application = -1;
1664 static gint ett_h245_T_t84 = -1;
1665 static gint ett_h245_T_t38fax = -1;
1666 static gint ett_h245_DataProtocolCapability = -1;
1667 static gint ett_h245_T_v76wCompression = -1;
1668 static gint ett_h245_CompressionType = -1;
1669 static gint ett_h245_V42bis = -1;
1670 static gint ett_h245_T84Profile = -1;
1671 static gint ett_h245_T_t84Restricted = -1;
1672 static gint ett_h245_T38FaxProfile = -1;
1673 static gint ett_h245_T38FaxRateManagement = -1;
1674 static gint ett_h245_T38FaxUdpOptions = -1;
1675 static gint ett_h245_T_t38FaxUdpEC = -1;
1676 static gint ett_h245_T38FaxTcpOptions = -1;
1677 static gint ett_h245_Nlpid = -1;
1678 static gint ett_h245_EncryptionAuthenticationAndIntegrity = -1;
1679 static gint ett_h245_EncryptionCapability = -1;
1680 static gint ett_h245_MediaEncryptionAlgorithm = -1;
1681 static gint ett_h245_AuthenticationCapability = -1;
1682 static gint ett_h245_IntegrityCapability = -1;
1683 static gint ett_h245_UserInputCapability = -1;
1684 static gint ett_h245_SEQUNCE_SIZE_1_16_OF_NonStandardParameter = -1;
1685 static gint ett_h245_ConferenceCapability = -1;
1686 static gint ett_h245_SEQUNCE_OF_NonStandardParameter = -1;
1687 static gint ett_h245_GenericCapability = -1;
1688 static gint ett_h245_CapabilityIdentifier = -1;
1689 static gint ett_h245_GenericParameter = -1;
1690 static gint ett_h245_SEQUNCE_OF_ParameterIdentifier = -1;
1691 static gint ett_h245_ParameterIdentifier = -1;
1692 static gint ett_h245_ParameterValue = -1;
1693 static gint ett_h245_MultiplexedStreamCapability = -1;
1694 static gint ett_h245_MultiplexFormat = -1;
1695 static gint ett_h245_AudioTelephonyEventCapability = -1;
1696 static gint ett_h245_AudioToneCapability = -1;
1697 static gint ett_h245_NoPTAudioTelephonyEventCapability = -1;
1698 static gint ett_h245_NoPTAudioToneCapability = -1;
1699 static gint ett_h245_MultiplePayloadStreamCapability = -1;
1700 static gint ett_h245_FECCapability = -1;
1701 static gint ett_h245_FECC_rfc2733 = -1;
1702 static gint ett_h245_T_separateStream = -1;
1703 static gint ett_h245_OpenLogicalChannel = -1;
1704 static gint ett_h245_T_forwardLogicalChannelParameters = -1;
1705 static gint ett_h245_OLC_forw_multiplexParameters = -1;
1706 static gint ett_h245_OLC_reverseLogicalChannelParameters = -1;
1707 static gint ett_h245_OLC_rev_multiplexParameters = -1;
1708 static gint ett_h245_NetworkAccessParameters = -1;
1709 static gint ett_h245_T_distribution = -1;
1710 static gint ett_h245_T_networkAddress = -1;
1711 static gint ett_h245_T_t120SetupProcedure = -1;
1712 static gint ett_h245_Q2931Address = -1;
1713 static gint ett_h245_T_address = -1;
1714 static gint ett_h245_V75Parameters = -1;
1715 static gint ett_h245_DataType = -1;
1716 static gint ett_h245_H235Media = -1;
1717 static gint ett_h245_T_mediaType = -1;
1718 static gint ett_h245_MultiplexedStreamParameter = -1;
1719 static gint ett_h245_H222LogicalChannelParameters = -1;
1720 static gint ett_h245_H223LogicalChannelParameters = -1;
1721 static gint ett_h245_T_adaptationLayerType = -1;
1722 static gint ett_h245_Al3 = -1;
1723 static gint ett_h245_H223AL1MParameters = -1;
1724 static gint ett_h245_T_transferMode = -1;
1725 static gint ett_h245_AL1HeaderFEC = -1;
1726 static gint ett_h245_AL1CrcLength = -1;
1727 static gint ett_h245_ArqType = -1;
1728 static gint ett_h245_H223AL2MParameters = -1;
1729 static gint ett_h245_AL2HeaderFEC = -1;
1730 static gint ett_h245_H223AL3MParameters = -1;
1731 static gint ett_h245_T_headerFormat = -1;
1732 static gint ett_h245_AL3CrcLength = -1;
1733 static gint ett_h245_H223AnnexCArqParameters = -1;
1734 static gint ett_h245_T_numberOfRetransmissions = -1;
1735 static gint ett_h245_V76LogicalChannelParameters = -1;
1736 static gint ett_h245_T_suspendResume = -1;
1737 static gint ett_h245_V76LCP_mode = -1;
1738 static gint ett_h245_T_eRM = -1;
1739 static gint ett_h245_T_recovery = -1;
1740 static gint ett_h245_V76HDLCParameters = -1;
1741 static gint ett_h245_CRCLength = -1;
1742 static gint ett_h245_H2250LogicalChannelParameters = -1;
1743 static gint ett_h245_T_mediaPacketization = -1;
1744 static gint ett_h245_RTPPayloadType = -1;
1745 static gint ett_h245_T_payloadDescriptor = -1;
1746 static gint ett_h245_RedundancyEncoding = -1;
1747 static gint ett_h245_T_rtpRedundancyEncoding = -1;
1748 static gint ett_h245_SEQUNCE_OF_RedundancyEncodingElement = -1;
1749 static gint ett_h245_RedundancyEncodingElement = -1;
1750 static gint ett_h245_MultiplePayloadStream = -1;
1751 static gint ett_h245_SEQUNCE_OF_MultiplePayloadStreamElement = -1;
1752 static gint ett_h245_MultiplePayloadStreamElement = -1;
1753 static gint ett_h245_FECData = -1;
1754 static gint ett_h245_RFC2733Data = -1;
1755 static gint ett_h245_FECdata_mode = -1;
1756 static gint ett_h245_Moderfc2733 = -1;
1757 static gint ett_h245_SeparateStream = -1;
1758 static gint ett_h245_T_differentPort = -1;
1759 static gint ett_h245_T_samePort = -1;
1760 static gint ett_h245_TransportAddress = -1;
1761 static gint ett_h245_UnicastAddress = -1;
1762 static gint ett_h245_T_iPAddress = -1;
1763 static gint ett_h245_T_iPXAddress = -1;
1764 static gint ett_h245_T_iP6Address = -1;
1765 static gint ett_h245_T_iPSourceRouteAddress = -1;
1766 static gint ett_h245_T_routing = -1;
1767 static gint ett_h245_SEQUNCE_OF_OCTET_STRING_SIZE_4 = -1;
1768 static gint ett_h245_MulticastAddress = -1;
1769 static gint ett_h245_MIPAddress = -1;
1770 static gint ett_h245_MIP6Address = -1;
1771 static gint ett_h245_EncryptionSync = -1;
1772 static gint ett_h245_SEQUNCE_SIZE_1_256_OF_EscrowData = -1;
1773 static gint ett_h245_EscrowData = -1;
1774 static gint ett_h245_OpenLogicalChannelAck = -1;
1775 static gint ett_h245_OLC_ack_reverseLogicalChannelParameters = -1;
1776 static gint ett_h245_T_multiplexParameters = -1;
1777 static gint ett_h245_T_forwardMultiplexAckParameters = -1;
1778 static gint ett_h245_OpenLogicalChannelReject = -1;
1779 static gint ett_h245_OpenLogicalChannelRejectCause = -1;
1780 static gint ett_h245_OpenLogicalChannelConfirm = -1;
1781 static gint ett_h245_H2250LogicalChannelAckParameters = -1;
1782 static gint ett_h245_CloseLogicalChannel = -1;
1783 static gint ett_h245_T_source = -1;
1784 static gint ett_h245_clc_reason = -1;
1785 static gint ett_h245_CloseLogicalChannelAck = -1;
1786 static gint ett_h245_RequestChannelClose = -1;
1787 static gint ett_h245_T_reason = -1;
1788 static gint ett_h245_RequestChannelCloseAck = -1;
1789 static gint ett_h245_RequestChannelCloseReject = -1;
1790 static gint ett_h245_RequestChannelCloseRejectCause = -1;
1791 static gint ett_h245_RequestChannelCloseRelease = -1;
1792 static gint ett_h245_MultiplexEntrySend = -1;
1793 static gint ett_h245_SET_SIZE_1_15_OF_MultiplexEntryDescriptor = -1;
1794 static gint ett_h245_MultiplexEntryDescriptor = -1;
1795 static gint ett_h245_SEQUNCE_SIZE_1_256_OF_MultiplexElement = -1;
1796 static gint ett_h245_MultiplexElement = -1;
1797 static gint ett_h245_Me_type = -1;
1798 static gint ett_h245_SEQUNCE_SIZE_2_255_OF_MultiplexElement = -1;
1799 static gint ett_h245_ME_repeatCount = -1;
1800 static gint ett_h245_MultiplexEntrySendAck = -1;
1801 static gint ett_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber = -1;
1802 static gint ett_h245_MultiplexEntrySendReject = -1;
1803 static gint ett_h245_SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions = -1;
1804 static gint ett_h245_MultiplexEntryRejectionDescriptions = -1;
1805 static gint ett_h245_MultiplexEntryRejectionDescriptionsCause = -1;
1806 static gint ett_h245_MultiplexEntrySendRelease = -1;
1807 static gint ett_h245_RequestMultiplexEntry = -1;
1808 static gint ett_h245_RequestMultiplexEntryAck = -1;
1809 static gint ett_h245_RequestMultiplexEntryReject = -1;
1810 static gint ett_h245_SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions = -1;
1811 static gint ett_h245_RequestMultiplexEntryRejectionDescriptions = -1;
1812 static gint ett_h245_RequestMultiplexEntryRejectionDescriptionsCause = -1;
1813 static gint ett_h245_RequestMultiplexEntryRelease = -1;
1814 static gint ett_h245_RequestMode = -1;
1815 static gint ett_h245_SEQUNCE_SIZE_1_256_OF_ModeDescription = -1;
1816 static gint ett_h245_RequestModeAck = -1;
1817 static gint ett_h245_Req_mode_ack_response = -1;
1818 static gint ett_h245_RequestModeReject = -1;
1819 static gint ett_h245_RequestModeRejectCause = -1;
1820 static gint ett_h245_RequestModeRelease = -1;
1821 static gint ett_h245_ModeDescription = -1;
1822 static gint ett_h245_ModeElementType = -1;
1823 static gint ett_h245_ModeElement = -1;
1824 static gint ett_h245_H235Mode = -1;
1825 static gint ett_h245_T_mediaMode = -1;
1826 static gint ett_h245_MultiplexedStreamModeParameters = -1;
1827 static gint ett_h245_RedundancyEncodingDTMode = -1;
1828 static gint ett_h245_SEQUNCE_OF_RedundancyEncodingDTModeElement = -1;
1829 static gint ett_h245_RedundancyEncodingDTModeElement = -1;
1830 static gint ett_h245_Re_type = -1;
1831 static gint ett_h245_MultiplePayloadStreamMode = -1;
1832 static gint ett_h245_SEQUNCE_OF_MultiplePayloadStreamElementMode = -1;
1833 static gint ett_h245_MultiplePayloadStreamElementMode = -1;
1834 static gint ett_h245_FECMode = -1;
1835 static gint ett_h245_T_rfc2733Mode = -1;
1836 static gint ett_h245_FEC_mode = -1;
1837 static gint ett_h245_H223ModeParameters = -1;
1838 static gint ett_h245_AdaptationLayerType = -1;
1839 static gint ett_h245_V76ModeParameters = -1;
1840 static gint ett_h245_H2250ModeParameters = -1;
1841 static gint ett_h245_RedundancyEncodingMode = -1;
1842 static gint ett_h245_T_secondaryEncoding = -1;
1843 static gint ett_h245_VideoMode = -1;
1844 static gint ett_h245_H261VideoMode = -1;
1845 static gint ett_h245_H261Resolution = -1;
1846 static gint ett_h245_H262VideoMode = -1;
1847 static gint ett_h245_T_profileAndLevel = -1;
1848 static gint ett_h245_H263VideoMode = -1;
1849 static gint ett_h245_H263Resolution = -1;
1850 static gint ett_h245_IS11172VideoMode = -1;
1851 static gint ett_h245_AudioMode = -1;
1852 static gint ett_h245_Mode_g7231 = -1;
1853 static gint ett_h245_IS11172AudioMode = -1;
1854 static gint ett_h245_T_audioLayer = -1;
1855 static gint ett_h245_T_audioSampling = -1;
1856 static gint ett_h245_IS11172_multichannelType = -1;
1857 static gint ett_h245_IS13818AudioMode = -1;
1858 static gint ett_h245_IS13818AudioLayer = -1;
1859 static gint ett_h245_IS13818AudioSampling = -1;
1860 static gint ett_h245_IS13818MultichannelType = -1;
1861 static gint ett_h245_G7231AnnexCMode = -1;
1862 static gint ett_h245_VBDMode = -1;
1863 static gint ett_h245_DataMode = -1;
1864 static gint ett_h245_DataModeApplication = -1;
1865 static gint ett_h245_T38faxApp = -1;
1866 static gint ett_h245_EncryptionMode = -1;
1867 static gint ett_h245_RoundTripDelayRequest = -1;
1868 static gint ett_h245_RoundTripDelayResponse = -1;
1869 static gint ett_h245_MaintenanceLoopRequest = -1;
1870 static gint ett_h245_Mlr_type = -1;
1871 static gint ett_h245_MaintenanceLoopAck = -1;
1872 static gint ett_h245_Mla_type = -1;
1873 static gint ett_h245_MaintenanceLoopReject = -1;
1874 static gint ett_h245_Mlrej_type = -1;
1875 static gint ett_h245_MaintenanceLoopRejectCause = -1;
1876 static gint ett_h245_MaintenanceLoopOffCommand = -1;
1877 static gint ett_h245_CommunicationModeCommand = -1;
1878 static gint ett_h245_SET_SIZE_1_256_OF_CommunicationModeTableEntry = -1;
1879 static gint ett_h245_CommunicationModeRequest = -1;
1880 static gint ett_h245_CommunicationModeResponse = -1;
1881 static gint ett_h245_CommunicationModeTableEntry = -1;
1882 static gint ett_h245_T_dataType = -1;
1883 static gint ett_h245_ConferenceRequest = -1;
1884 static gint ett_h245_T_requestTerminalCertificate = -1;
1885 static gint ett_h245_CertSelectionCriteria = -1;
1886 static gint ett_h245_Criteria = -1;
1887 static gint ett_h245_TerminalLabel = -1;
1888 static gint ett_h245_ConferenceResponse = -1;
1889 static gint ett_h245_T_mCTerminalIDResponse = -1;
1890 static gint ett_h245_T_terminalIDResponse = -1;
1891 static gint ett_h245_T_conferenceIDResponse = -1;
1892 static gint ett_h245_T_passwordResponse = -1;
1893 static gint ett_h245_SET_SIZE_1_256_OF_TerminalLabel = -1;
1894 static gint ett_h245_T_makeMeChairResponse = -1;
1895 static gint ett_h245_T_extensionAddressResponse = -1;
1896 static gint ett_h245_T_chairTokenOwnerResponse = -1;
1897 static gint ett_h245_T_terminalCertificateResponse = -1;
1898 static gint ett_h245_T_broadcastMyLogicalChannelResponse = -1;
1899 static gint ett_h245_T_makeTerminalBroadcasterResponse = -1;
1900 static gint ett_h245_T_sendThisSourceResponse = -1;
1901 static gint ett_h245_RequestAllTerminalIDsResponse = -1;
1902 static gint ett_h245_SEQUNCE_OF_TerminalInformation = -1;
1903 static gint ett_h245_TerminalInformation = -1;
1904 static gint ett_h245_RemoteMCRequest = -1;
1905 static gint ett_h245_RemoteMCResponse = -1;
1906 static gint ett_h245_T_reject = -1;
1907 static gint ett_h245_MultilinkRequest = -1;
1908 static gint ett_h245_CallInformationReq = -1;
1909 static gint ett_h245_AddConnectionReq = -1;
1910 static gint ett_h245_MaximumHeaderIntervalReq = -1;
1911 static gint ett_h245_T_requestType = -1;
1912 static gint ett_h245_MultilinkResponse = -1;
1913 static gint ett_h245_CallInformationResp = -1;
1914 static gint ett_h245_AddConnectionResp = -1;
1915 static gint ett_h245_T_responseCode = -1;
1916 static gint ett_h245_T_rejected = -1;
1917 static gint ett_h245_MaximumHeaderIntervalResp = -1;
1918 static gint ett_h245_RemoveConnection = -1;
1919 static gint ett_h245_MultilinkIndication = -1;
1920 static gint ett_h245_T_crcDesired = -1;
1921 static gint ett_h245_T_excessiveError = -1;
1922 static gint ett_h245_DialingInformation = -1;
1923 static gint ett_h245_SET_SIZE_1_65535_OF_DialingInformationNumber = -1;
1924 static gint ett_h245_DialingInformationNumber = -1;
1925 static gint ett_h245_SET_SIZE_1_255_OF_DialingInformationNetworkType = -1;
1926 static gint ett_h245_DialingInformationNetworkType = -1;
1927 static gint ett_h245_ConnectionIdentifier = -1;
1928 static gint ett_h245_LogicalChannelRateRequest = -1;
1929 static gint ett_h245_LogicalChannelRateAcknowledge = -1;
1930 static gint ett_h245_LogicalChannelRateReject = -1;
1931 static gint ett_h245_LogicalChannelRateRejectReason = -1;
1932 static gint ett_h245_LogicalChannelRateRelease = -1;
1933 static gint ett_h245_SendTerminalCapabilitySet = -1;
1934 static gint ett_h245_T_specificRequest = -1;
1935 static gint ett_h245_SET_SIZE_1_65535_OF_CapabilityTableEntryNumber = -1;
1936 static gint ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptorNumber = -1;
1937 static gint ett_h245_EncryptionCommand = -1;
1938 static gint ett_h245_T_encryptionAlgorithmID = -1;
1939 static gint ett_h245_FlowControlCommand = -1;
1940 static gint ett_h245_Scope = -1;
1941 static gint ett_h245_Restriction = -1;
1942 static gint ett_h245_EndSessionCommand = -1;
1943 static gint ett_h245_T_gstnOptions = -1;
1944 static gint ett_h245_T_isdnOptions = -1;
1945 static gint ett_h245_ConferenceCommand = -1;
1946 static gint ett_h245_SubstituteConferenceIDCommand = -1;
1947 static gint ett_h245_EncryptionUpdateDirection = -1;
1948 static gint ett_h245_MiscellaneousCommand = -1;
1949 static gint ett_h245_Mc_type = -1;
1950 static gint ett_h245_T_videoFastUpdateGOB = -1;
1951 static gint ett_h245_T_videoFastUpdateMB = -1;
1952 static gint ett_h245_T_progressiveRefinementStart = -1;
1953 static gint ett_h245_T_videoBadMBs = -1;
1954 static gint ett_h245_SEQUNCE_OF_PictureReference = -1;
1955 static gint ett_h245_T_lostPartialPicture = -1;
1956 static gint ett_h245_T_encryptionUpdateCommand = -1;
1957 static gint ett_h245_T_encryptionUpdateAck = -1;
1958 static gint ett_h245_RepeatCount = -1;
1959 static gint ett_h245_KeyProtectionMethod = -1;
1960 static gint ett_h245_EncryptionUpdateRequest = -1;
1961 static gint ett_h245_PictureReference = -1;
1962 static gint ett_h245_H223MultiplexReconfiguration = -1;
1963 static gint ett_h245_T_h223ModeChange = -1;
1964 static gint ett_h245_T_h223AnnexADoubleFlag = -1;
1965 static gint ett_h245_NewATMVCCommand = -1;
1966 static gint ett_h245_Cmd_aal = -1;
1967 static gint ett_h245_Cmd_aal1 = -1;
1968 static gint ett_h245_Cmd_clockRecovery = -1;
1969 static gint ett_h245_Cmd_errorCorrection = -1;
1970 static gint ett_h245_Cmd_aal5 = -1;
1971 static gint ett_h245_Cmd_multiplex = -1;
1972 static gint ett_h245_Cmd_reverseParameters = -1;
1973 static gint ett_h245_CmdR_multiplex = -1;
1974 static gint ett_h245_MobileMultilinkReconfigurationCommand = -1;
1975 static gint ett_h245_T_status = -1;
1976 static gint ett_h245_FunctionNotUnderstood = -1;
1977 static gint ett_h245_FunctionNotSupported = -1;
1978 static gint ett_h245_FunctionNotSupportedCause = -1;
1979 static gint ett_h245_ConferenceIndication = -1;
1980 static gint ett_h245_TerminalYouAreSeeingInSubPictureNumber = -1;
1981 static gint ett_h245_VideoIndicateCompose = -1;
1982 static gint ett_h245_MiscellaneousIndication = -1;
1983 static gint ett_h245_Mi_type = -1;
1984 static gint ett_h245_T_videoNotDecodedMBs = -1;
1985 static gint ett_h245_JitterIndication = -1;
1986 static gint ett_h245_H223SkewIndication = -1;
1987 static gint ett_h245_H2250MaximumSkewIndication = -1;
1988 static gint ett_h245_MCLocationIndication = -1;
1989 static gint ett_h245_VendorIdentification = -1;
1990 static gint ett_h245_NewATMVCIndication = -1;
1991 static gint ett_h245_Ind_aal = -1;
1992 static gint ett_h245_Ind_aal1 = -1;
1993 static gint ett_h245_Ind_clockRecovery = -1;
1994 static gint ett_h245_Ind_errorCorrection = -1;
1995 static gint ett_h245_Ind_aal5 = -1;
1996 static gint ett_h245_Ind_multiplex = -1;
1997 static gint ett_h245_Ind_reverseParameters = -1;
1998 static gint ett_h245_IndR_multiplex = -1;
1999 static gint ett_h245_Params = -1;
2000 static gint ett_h245_UserInputIndication = -1;
2001 static gint ett_h245_T_userInputSupportIndication = -1;
2002 static gint ett_h245_T_signal = -1;
2003 static gint ett_h245_T_signalUpdate = -1;
2004 static gint ett_h245_Si_rtp = -1;
2005 static gint ett_h245_T_extendedAlphanumeric = -1;
2006 static gint ett_h245_EncryptedAlphanumeric = -1;
2007 static gint ett_h245_Rtp = -1;
2008 static gint ett_h245_FlowControlIndication = -1;
2009 static gint ett_h245_MobileMultilinkReconfigurationIndication = -1;
2010
2011 /*--- End of included file: packet-h245-ett.c ---*/
2012
2013
2014
2015 /*--- Included file: packet-h245-fn.c ---*/
2016
2017 /*--- Cyclic dependencies ---*/
2018
2019 /* GenericParameter -> ParameterValue -> ParameterValue/genericParameter -> GenericParameter */
2020 static int dissect_h245_GenericParameter(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
2021
2022 static int dissect_messageContent_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2023   return dissect_h245_GenericParameter(tvb, offset, pinfo, tree, hf_h245_messageContent_item);
2024 }
2025 static int dissect_collapsing_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2026   return dissect_h245_GenericParameter(tvb, offset, pinfo, tree, hf_h245_collapsing_item);
2027 }
2028 static int dissect_nonCollapsing_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2029   return dissect_h245_GenericParameter(tvb, offset, pinfo, tree, hf_h245_nonCollapsing_item);
2030 }
2031 static int dissect_genericParameter_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2032   return dissect_h245_GenericParameter(tvb, offset, pinfo, tree, hf_h245_genericParameter_item);
2033 }
2034
2035 /* VideoCapability -> ExtendedVideoCapability -> ExtendedVideoCapability/videoCapability -> VideoCapability */
2036 static int dissect_h245_VideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
2037
2038 static int dissect_receiveVideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2039   return dissect_h245_VideoCapability(tvb, offset, pinfo, tree, hf_h245_receiveVideoCapability);
2040 }
2041 static int dissect_transmitVideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2042   return dissect_h245_VideoCapability(tvb, offset, pinfo, tree, hf_h245_transmitVideoCapability);
2043 }
2044 static int dissect_receiveAndTransmitVideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2045   return dissect_h245_VideoCapability(tvb, offset, pinfo, tree, hf_h245_receiveAndTransmitVideoCapability);
2046 }
2047 static int dissect_videoCapability_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2048   return dissect_h245_VideoCapability(tvb, offset, pinfo, tree, hf_h245_videoCapability_item);
2049 }
2050 static int dissect_videoData(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2051   return dissect_h245_VideoCapability(tvb, offset, pinfo, tree, hf_h245_videoData);
2052 }
2053
2054 /* AudioCapability -> VBDCapability -> AudioCapability */
2055 static int dissect_h245_AudioCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
2056
2057 static int dissect_receiveAudioCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2058   return dissect_h245_AudioCapability(tvb, offset, pinfo, tree, hf_h245_receiveAudioCapability);
2059 }
2060 static int dissect_transmitAudioCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2061   return dissect_h245_AudioCapability(tvb, offset, pinfo, tree, hf_h245_transmitAudioCapability);
2062 }
2063 static int dissect_receiveAndTransmitAudioCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2064   return dissect_h245_AudioCapability(tvb, offset, pinfo, tree, hf_h245_receiveAndTransmitAudioCapability);
2065 }
2066 static int dissect_vbd_cap_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2067   return dissect_h245_AudioCapability(tvb, offset, pinfo, tree, hf_h245_vbd_cap_type);
2068 }
2069 static int dissect_audioData(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2070   return dissect_h245_AudioCapability(tvb, offset, pinfo, tree, hf_h245_audioData);
2071 }
2072
2073 /* DataType -> H235Media -> H235Media/mediaType -> RedundancyEncoding -> DataType */
2074 /* DataType -> H235Media -> H235Media/mediaType -> RedundancyEncoding -> RedundancyEncoding/rtpRedundancyEncoding -> RedundancyEncodingElement -> DataType */
2075 /* DataType -> H235Media -> H235Media/mediaType -> MultiplePayloadStream -> MultiplePayloadStream/elements -> MultiplePayloadStreamElement -> DataType */
2076 static int dissect_h245_DataType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
2077
2078 static int dissect_dataType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2079   return dissect_h245_DataType(tvb, offset, pinfo, tree, hf_h245_dataType);
2080 }
2081 static int dissect_secondaryEncoding3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2082   return dissect_h245_DataType(tvb, offset, pinfo, tree, hf_h245_secondaryEncoding3);
2083 }
2084
2085 /* MultiplexElement -> MultiplexElement/type -> MultiplexElement/type/subElementList -> MultiplexElement */
2086 static int dissect_h245_MultiplexElement(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
2087
2088 static int dissect_elementList_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2089   return dissect_h245_MultiplexElement(tvb, offset, pinfo, tree, hf_h245_elementList_item);
2090 }
2091 static int dissect_subElementList_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2092   return dissect_h245_MultiplexElement(tvb, offset, pinfo, tree, hf_h245_subElementList_item);
2093 }
2094
2095 /* AudioMode -> VBDMode -> AudioMode */
2096 static int dissect_h245_AudioMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
2097
2098 static int dissect_audioMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2099   return dissect_h245_AudioMode(tvb, offset, pinfo, tree, hf_h245_audioMode);
2100 }
2101 static int dissect_vbd_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2102   return dissect_h245_AudioMode(tvb, offset, pinfo, tree, hf_h245_vbd_type);
2103 }
2104
2105 /* ModeElementType -> MultiplePayloadStreamMode -> MultiplePayloadStreamMode/mpsmElements -> MultiplePayloadStreamElementMode -> ModeElementType */
2106 static int dissect_h245_ModeElementType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
2107
2108 static int dissect_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2109   return dissect_h245_ModeElementType(tvb, offset, pinfo, tree, hf_h245_type);
2110 }
2111
2112
2113 /*--- Fields for imported types ---*/
2114
2115
2116
2117 static int
2118 dissect_h245_OBJECT_IDENTIFIER(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2119   offset = dissect_per_object_identifier(tvb, offset, pinfo, tree, hf_index,
2120                                          NULL);
2121
2122   return offset;
2123 }
2124 static int dissect_object(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2125   return dissect_h245_OBJECT_IDENTIFIER(tvb, offset, pinfo, tree, hf_h245_object);
2126 }
2127 static int dissect_protocolIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2128   return dissect_h245_OBJECT_IDENTIFIER(tvb, offset, pinfo, tree, hf_h245_protocolIdentifier);
2129 }
2130 static int dissect_algorithm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2131   return dissect_h245_OBJECT_IDENTIFIER(tvb, offset, pinfo, tree, hf_h245_algorithm);
2132 }
2133 static int dissect_antiSpamAlgorithm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2134   return dissect_h245_OBJECT_IDENTIFIER(tvb, offset, pinfo, tree, hf_h245_antiSpamAlgorithm);
2135 }
2136 static int dissect_oid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2137   return dissect_h245_OBJECT_IDENTIFIER(tvb, offset, pinfo, tree, hf_h245_oid);
2138 }
2139 static int dissect_escrowID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2140   return dissect_h245_OBJECT_IDENTIFIER(tvb, offset, pinfo, tree, hf_h245_escrowID);
2141 }
2142 static int dissect_field(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2143   return dissect_h245_OBJECT_IDENTIFIER(tvb, offset, pinfo, tree, hf_h245_field);
2144 }
2145 static int dissect_algorithmOID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2146   return dissect_h245_OBJECT_IDENTIFIER(tvb, offset, pinfo, tree, hf_h245_algorithmOID);
2147 }
2148
2149
2150
2151 static int
2152 dissect_h245_INTEGER_0_255(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2153   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
2154                                            0U, 255U, NULL, NULL, FALSE);
2155
2156   return offset;
2157 }
2158 static int dissect_t35CountryCode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2159   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_t35CountryCode);
2160 }
2161 static int dissect_t35Extension(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2162   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_t35Extension);
2163 }
2164 static int dissect_terminalType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2165   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_terminalType);
2166 }
2167 static int dissect_h233IVResponseTime(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2168   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_h233IVResponseTime);
2169 }
2170 static int dissect_maxPendingReplacementFor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2171   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_maxPendingReplacementFor);
2172 }
2173 static int dissect_frameSequence_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2174   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_frameSequence_item);
2175 }
2176 static int dissect_version(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2177   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_version);
2178 }
2179 static int dissect_booleanArray(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2180   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_booleanArray);
2181 }
2182 static int dissect_sessionID_0_255(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2183   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_sessionID_0_255);
2184 }
2185 static int dissect_synchFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2186   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_synchFlag);
2187 }
2188 static int dissect_firstGOB_0_255(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2189   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_firstGOB_0_255);
2190 }
2191 static int dissect_longTermPictureIndex(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2192   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_longTermPictureIndex);
2193 }
2194 static int dissect_subPictureNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2195   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_subPictureNumber);
2196 }
2197 static int dissect_compositionNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2198   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_compositionNumber);
2199 }
2200 static int dissect_temporalReference_0_255(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2201   return dissect_h245_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_temporalReference_0_255);
2202 }
2203
2204
2205
2206 static int
2207 dissect_h245_INTEGER_0_65535(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2208   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
2209                                            0U, 65535U, NULL, NULL, FALSE);
2210
2211   return offset;
2212 }
2213 static int dissect_manufacturerCode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2214   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_manufacturerCode);
2215 }
2216 static int dissect_forwardMaximumSDUSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2217   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_forwardMaximumSDUSize);
2218 }
2219 static int dissect_backwardMaximumSDUSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2220   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_backwardMaximumSDUSize);
2221 }
2222 static int dissect_maximumAl2SDUSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2223   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_maximumAl2SDUSize);
2224 }
2225 static int dissect_maximumAl3SDUSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2226   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_maximumAl3SDUSize);
2227 }
2228 static int dissect_maximumAL1MPDUSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2229   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_maximumAL1MPDUSize);
2230 }
2231 static int dissect_maximumAL2MSDUSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2232   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_maximumAL2MSDUSize);
2233 }
2234 static int dissect_maximumAL3MSDUSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2235   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_maximumAL3MSDUSize);
2236 }
2237 static int dissect_maxNTUSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2238   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_maxNTUSize);
2239 }
2240 static int dissect_bppMaxKb(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2241   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_bppMaxKb);
2242 }
2243 static int dissect_unsignedMin(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2244   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_unsignedMin);
2245 }
2246 static int dissect_unsignedMax(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2247   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_unsignedMax);
2248 }
2249 static int dissect_portNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2250   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_portNumber);
2251 }
2252 static int dissect_resourceID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2253   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_resourceID);
2254 }
2255 static int dissect_ipv6_tsapIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2256   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_ipv6_tsapIdentifier);
2257 }
2258 static int dissect_iPSrcRoute_tsapIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2259   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_iPSrcRoute_tsapIdentifier);
2260 }
2261 static int dissect_multicast_tsapIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2262   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_multicast_tsapIdentifier);
2263 }
2264 static int dissect_multicast_IPv6_tsapIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2265   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_multicast_IPv6_tsapIdentifier);
2266 }
2267 static int dissect_logicalChannelNum(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2268   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_logicalChannelNum);
2269 }
2270 static int dissect_requestedInterval(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2271   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_requestedInterval);
2272 }
2273 static int dissect_currentInterval(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2274   return dissect_h245_INTEGER_0_65535(tvb, offset, pinfo, tree, hf_h245_currentInterval);
2275 }
2276
2277 static const per_sequence_t H221NonStandardID_sequence[] = {
2278   { "t35CountryCode"              , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_t35CountryCode },
2279   { "t35Extension"                , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_t35Extension },
2280   { "manufacturerCode"            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_manufacturerCode },
2281   { NULL, 0, 0, NULL }
2282 };
2283
2284 static int
2285 dissect_h245_H221NonStandardID(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2286   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
2287                                 ett_h245_H221NonStandardID, H221NonStandardID_sequence);
2288
2289   return offset;
2290 }
2291 static int dissect_h221NonStandardID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2292   return dissect_h245_H221NonStandardID(tvb, offset, pinfo, tree, hf_h245_h221NonStandardID);
2293 }
2294
2295
2296 static const value_string h245_NonStandardIdentifier_vals[] = {
2297   {   0, "object" },
2298   {   1, "h221NonStandard" },
2299   { 0, NULL }
2300 };
2301
2302 static const per_choice_t NonStandardIdentifier_choice[] = {
2303   {   0, "object"                      , ASN1_NO_EXTENSIONS     , dissect_object },
2304   {   1, "h221NonStandard"             , ASN1_NO_EXTENSIONS     , dissect_h221NonStandardID },
2305   { 0, NULL, 0, NULL }
2306 };
2307
2308 static int
2309 dissect_h245_NonStandardIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2310   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
2311                               ett_h245_NonStandardIdentifier, NonStandardIdentifier_choice, "NonStandardIdentifier",
2312                               NULL);
2313
2314   return offset;
2315 }
2316 static int dissect_nonStandardIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2317   return dissect_h245_NonStandardIdentifier(tvb, offset, pinfo, tree, hf_h245_nonStandardIdentifier);
2318 }
2319 static int dissect_vendor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2320   return dissect_h245_NonStandardIdentifier(tvb, offset, pinfo, tree, hf_h245_vendor);
2321 }
2322
2323
2324 static int
2325 dissect_h245_OCTET_STRING(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2326   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
2327                                     -1, -1,
2328                                     NULL, NULL);
2329
2330   return offset;
2331 }
2332 static int dissect_nsd_data(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2333   return dissect_h245_OCTET_STRING(tvb, offset, pinfo, tree, hf_h245_nsd_data);
2334 }
2335 static int dissect_nlpidData(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2336   return dissect_h245_OCTET_STRING(tvb, offset, pinfo, tree, hf_h245_nlpidData);
2337 }
2338 static int dissect_nonCollapsingRaw(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2339   return dissect_h245_OCTET_STRING(tvb, offset, pinfo, tree, hf_h245_nonCollapsingRaw);
2340 }
2341 static int dissect_octetString(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2342   return dissect_h245_OCTET_STRING(tvb, offset, pinfo, tree, hf_h245_octetString);
2343 }
2344 static int dissect_programDescriptors(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2345   return dissect_h245_OCTET_STRING(tvb, offset, pinfo, tree, hf_h245_programDescriptors);
2346 }
2347 static int dissect_streamDescriptors(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2348   return dissect_h245_OCTET_STRING(tvb, offset, pinfo, tree, hf_h245_streamDescriptors);
2349 }
2350 static int dissect_encryptionSE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2351   return dissect_h245_OCTET_STRING(tvb, offset, pinfo, tree, hf_h245_encryptionSE);
2352 }
2353 static int dissect_returnedFunction(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2354   return dissect_h245_OCTET_STRING(tvb, offset, pinfo, tree, hf_h245_returnedFunction);
2355 }
2356 static int dissect_iv(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2357   return dissect_h245_OCTET_STRING(tvb, offset, pinfo, tree, hf_h245_iv);
2358 }
2359 static int dissect_encrypted(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2360   return dissect_h245_OCTET_STRING(tvb, offset, pinfo, tree, hf_h245_encrypted);
2361 }
2362
2363 static const per_sequence_t NonStandardParameter_sequence[] = {
2364   { "nonStandardIdentifier"       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nonStandardIdentifier },
2365   { "data"                        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nsd_data },
2366   { NULL, 0, 0, NULL }
2367 };
2368
2369 static int
2370 dissect_h245_NonStandardParameter(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2371   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
2372                                 ett_h245_NonStandardParameter, NonStandardParameter_sequence);
2373
2374   return offset;
2375 }
2376 static int dissect_nonStandardData(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2377   return dissect_h245_NonStandardParameter(tvb, offset, pinfo, tree, hf_h245_nonStandardData);
2378 }
2379 static int dissect_nonStandard(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2380   return dissect_h245_NonStandardParameter(tvb, offset, pinfo, tree, hf_h245_nonStandard);
2381 }
2382 static int dissect_nonStandard_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2383   return dissect_h245_NonStandardParameter(tvb, offset, pinfo, tree, hf_h245_nonStandard_item);
2384 }
2385 static int dissect_nonStandardData_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2386   return dissect_h245_NonStandardParameter(tvb, offset, pinfo, tree, hf_h245_nonStandardData_item);
2387 }
2388 static int dissect_h221NonStandard(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2389   return dissect_h245_NonStandardParameter(tvb, offset, pinfo, tree, hf_h245_h221NonStandard);
2390 }
2391 static int dissect_h235Control(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2392   return dissect_h245_NonStandardParameter(tvb, offset, pinfo, tree, hf_h245_h235Control);
2393 }
2394 static int dissect_nonStandardAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2395   return dissect_h245_NonStandardParameter(tvb, offset, pinfo, tree, hf_h245_nonStandardAddress);
2396 }
2397 static int dissect_associatedAlgorithm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2398   return dissect_h245_NonStandardParameter(tvb, offset, pinfo, tree, hf_h245_associatedAlgorithm);
2399 }
2400
2401 static const per_sequence_t NonStandardMessage_sequence[] = {
2402   { "nonStandardData"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nonStandardData },
2403   { NULL, 0, 0, NULL }
2404 };
2405
2406 static int
2407 dissect_h245_NonStandardMessage(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2408   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
2409                                 ett_h245_NonStandardMessage, NonStandardMessage_sequence);
2410
2411   return offset;
2412 }
2413 static int dissect_nonStandardMsg(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2414   return dissect_h245_NonStandardMessage(tvb, offset, pinfo, tree, hf_h245_nonStandardMsg);
2415 }
2416
2417
2418
2419 static int
2420 dissect_h245_INTEGER_0_16777215(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2421   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
2422                                            0U, 16777215U, NULL, NULL, FALSE);
2423
2424   return offset;
2425 }
2426 static int dissect_statusDeterminationNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2427   return dissect_h245_INTEGER_0_16777215(tvb, offset, pinfo, tree, hf_h245_statusDeterminationNumber);
2428 }
2429 static int dissect_sendBufferSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2430   return dissect_h245_INTEGER_0_16777215(tvb, offset, pinfo, tree, hf_h245_sendBufferSize);
2431 }
2432 static int dissect_Res_maximumBitRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2433   return dissect_h245_INTEGER_0_16777215(tvb, offset, pinfo, tree, hf_h245_Res_maximumBitRate);
2434 }
2435
2436 static const per_sequence_t MasterSlaveDetermination_sequence[] = {
2437   { "terminalType"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalType },
2438   { "statusDeterminationNumber"   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_statusDeterminationNumber },
2439   { NULL, 0, 0, NULL }
2440 };
2441
2442 static int
2443 dissect_h245_MasterSlaveDetermination(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2444   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
2445                                 ett_h245_MasterSlaveDetermination, MasterSlaveDetermination_sequence);
2446
2447
2448   h245_pi.msg_type = H245_MastSlvDet;
2449   return offset;
2450 }
2451 static int dissect_masterSlaveDetermination(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2452   return dissect_h245_MasterSlaveDetermination(tvb, offset, pinfo, tree, hf_h245_masterSlaveDetermination);
2453 }
2454
2455
2456
2457 static int
2458 dissect_h245_SequenceNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2459   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
2460                                            0U, 255U, NULL, NULL, FALSE);
2461
2462   return offset;
2463 }
2464 static int dissect_sequenceNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2465   return dissect_h245_SequenceNumber(tvb, offset, pinfo, tree, hf_h245_sequenceNumber);
2466 }
2467 static int dissect_h233AlgorithmIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2468   return dissect_h245_SequenceNumber(tvb, offset, pinfo, tree, hf_h245_h233AlgorithmIdentifier);
2469 }
2470
2471
2472
2473 static int
2474 dissect_h245_INTEGER_1_256(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2475   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
2476                                            1U, 256U, NULL, NULL, FALSE);
2477
2478   return offset;
2479 }
2480 static int dissect_numberOfVCs(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2481   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_numberOfVCs);
2482 }
2483 static int dissect_framesBetweenSyncPoints(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2484   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_framesBetweenSyncPoints);
2485 }
2486 static int dissect_presentationOrder(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2487   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_presentationOrder);
2488 }
2489 static int dissect_sqcifAdditionalPictureMemory(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2490   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_sqcifAdditionalPictureMemory);
2491 }
2492 static int dissect_qcifAdditionalPictureMemory(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2493   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_qcifAdditionalPictureMemory);
2494 }
2495 static int dissect_cifAdditionalPictureMemory(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2496   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_cifAdditionalPictureMemory);
2497 }
2498 static int dissect_cif4AdditionalPictureMemory(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2499   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_cif4AdditionalPictureMemory);
2500 }
2501 static int dissect_cif16AdditionalPictureMemory(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2502   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_cif16AdditionalPictureMemory);
2503 }
2504 static int dissect_bigCpfAdditionalPictureMemory(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2505   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_bigCpfAdditionalPictureMemory);
2506 }
2507 static int dissect_g711Alaw64k(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2508   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_g711Alaw64k);
2509 }
2510 static int dissect_g711Alaw56k(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2511   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_g711Alaw56k);
2512 }
2513 static int dissect_g711Ulaw64k(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2514   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_g711Ulaw64k);
2515 }
2516 static int dissect_g711Ulaw56k(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2517   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_g711Ulaw56k);
2518 }
2519 static int dissect_g722_64k(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2520   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_g722_64k);
2521 }
2522 static int dissect_g722_56k(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2523   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_g722_56k);
2524 }
2525 static int dissect_g722_48k(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2526   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_g722_48k);
2527 }
2528 static int dissect_maxAl_sduAudioFrames(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2529   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_maxAl_sduAudioFrames);
2530 }
2531 static int dissect_g728(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2532   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_g728);
2533 }
2534 static int dissect_g729(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2535   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_g729);
2536 }
2537 static int dissect_g729AnnexA(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2538   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_g729AnnexA);
2539 }
2540 static int dissect_g729wAnnexB(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2541   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_g729wAnnexB);
2542 }
2543 static int dissect_g729AnnexAwAnnexB(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2544   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_g729AnnexAwAnnexB);
2545 }
2546 static int dissect_audioUnit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2547   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_audioUnit);
2548 }
2549 static int dissect_audioUnitSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2550   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_audioUnitSize);
2551 }
2552 static int dissect_maximumStringLength(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2553   return dissect_h245_INTEGER_1_256(tvb, offset, pinfo, tree, hf_h245_maximumStringLength);
2554 }
2555
2556
2557 static int
2558 dissect_h245_BOOLEAN(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
2559   offset = dissect_per_boolean(tvb, offset, pinfo, tree, hf_index,
2560                                NULL, NULL);
2561
2562   return offset;
2563 }
2564 static int dissect_h233EncryptionTransmitCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2565   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_h233EncryptionTransmitCapability);
2566 }
2567 static int dissect_nullClockRecovery(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2568   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_nullClockRecovery);
2569 }
2570 static int dissect_srtsClockRecovery_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2571   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_srtsClockRecovery_bool);
2572 }
2573 static int dissect_adaptiveClockRecovery(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2574   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_adaptiveClockRecovery);
2575 }
2576 static int dissect_nullErrorCorrection(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2577   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_nullErrorCorrection);
2578 }
2579 static int dissect_longInterleaver(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2580   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_longInterleaver);
2581 }
2582 static int dissect_shortInterleaver(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2583   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_shortInterleaver);
2584 }
2585 static int dissect_errorCorrectionOnly(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2586   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_errorCorrectionOnly);
2587 }
2588 static int dissect_structuredDataTransfer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2589   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_structuredDataTransfer);
2590 }
2591 static int dissect_partiallyFilledCells(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2592   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_partiallyFilledCells);
2593 }
2594 static int dissect_transportStream_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2595   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_transportStream_bool);
2596 }
2597 static int dissect_programStream(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2598   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_programStream);
2599 }
2600 static int dissect_srtsClockRecoveryflag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2601   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_srtsClockRecoveryflag);
2602 }
2603 static int dissect_transportWithI_frames(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2604   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_transportWithI_frames);
2605 }
2606 static int dissect_videoWithAL1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2607   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_videoWithAL1);
2608 }
2609 static int dissect_videoWithAL2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2610   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_videoWithAL2);
2611 }
2612 static int dissect_videoWithAL3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2613   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_videoWithAL3);
2614 }
2615 static int dissect_audioWithAL1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2616   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioWithAL1);
2617 }
2618 static int dissect_audioWithAL2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2619   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioWithAL2);
2620 }
2621 static int dissect_audioWithAL3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2622   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioWithAL3);
2623 }
2624 static int dissect_dataWithAL1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2625   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_dataWithAL1);
2626 }
2627 static int dissect_dataWithAL2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2628   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_dataWithAL2);
2629 }
2630 static int dissect_dataWithAL3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2631   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_dataWithAL3);
2632 }
2633 static int dissect_maxMUXPDUSizeCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2634   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_maxMUXPDUSizeCapability);
2635 }
2636 static int dissect_nsrpSupport(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2637   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_nsrpSupport);
2638 }
2639 static int dissect_modeChangeCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2640   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_modeChangeCapability);
2641 }
2642 static int dissect_h223AnnexA(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2643   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_h223AnnexA);
2644 }
2645 static int dissect_h223AnnexADoubleFlagFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2646   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_h223AnnexADoubleFlagFlag);
2647 }
2648 static int dissect_h223AnnexB(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2649   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_h223AnnexB);
2650 }
2651 static int dissect_h223AnnexBwithHeader(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2652   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_h223AnnexBwithHeader);
2653 }
2654 static int dissect_videoWithAL1M(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2655   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_videoWithAL1M);
2656 }
2657 static int dissect_videoWithAL2M(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2658   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_videoWithAL2M);
2659 }
2660 static int dissect_videoWithAL3M(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2661   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_videoWithAL3M);
2662 }
2663 static int dissect_audioWithAL1M(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2664   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioWithAL1M);
2665 }
2666 static int dissect_audioWithAL2M(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2667   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioWithAL2M);
2668 }
2669 static int dissect_audioWithAL3M(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2670   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioWithAL3M);
2671 }
2672 static int dissect_dataWithAL1M(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2673   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_dataWithAL1M);
2674 }
2675 static int dissect_dataWithAL2M(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2676   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_dataWithAL2M);
2677 }
2678 static int dissect_dataWithAL3M(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2679   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_dataWithAL3M);
2680 }
2681 static int dissect_alpduInterleaving(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2682   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_alpduInterleaving);
2683 }
2684 static int dissect_rsCodeCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2685   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_rsCodeCapability);
2686 }
2687 static int dissect_suspendResumeCapabilitywAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2688   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_suspendResumeCapabilitywAddress);
2689 }
2690 static int dissect_suspendResumeCapabilitywoAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2691   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_suspendResumeCapabilitywoAddress);
2692 }
2693 static int dissect_rejCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2694   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_rejCapability);
2695 }
2696 static int dissect_sREJCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2697   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_sREJCapability);
2698 }
2699 static int dissect_mREJCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2700   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_mREJCapability);
2701 }
2702 static int dissect_crc8bitCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2703   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_crc8bitCapability);
2704 }
2705 static int dissect_crc16bitCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2706   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_crc16bitCapability);
2707 }
2708 static int dissect_crc32bitCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2709   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_crc32bitCapability);
2710 }
2711 static int dissect_uihCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2712   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_uihCapability);
2713 }
2714 static int dissect_twoOctetAddressFieldCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2715   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_twoOctetAddressFieldCapability);
2716 }
2717 static int dissect_loopBackTestCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2718   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_loopBackTestCapability);
2719 }
2720 static int dissect_audioHeader(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2721   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioHeader);
2722 }
2723 static int dissect_centralizedConferenceMC(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2724   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_centralizedConferenceMC);
2725 }
2726 static int dissect_decentralizedConferenceMC(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2727   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_decentralizedConferenceMC);
2728 }
2729 static int dissect_rtcpVideoControlCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2730   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_rtcpVideoControlCapability);
2731 }
2732 static int dissect_logicalChannelSwitchingCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2733   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_logicalChannelSwitchingCapability);
2734 }
2735 static int dissect_t120DynamicPortCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2736   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_t120DynamicPortCapability);
2737 }
2738 static int dissect_h261aVideoPacketization(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2739   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_h261aVideoPacketization);
2740 }
2741 static int dissect_atmUBR(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2742   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_atmUBR);
2743 }
2744 static int dissect_atmrtVBR(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2745   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_atmrtVBR);
2746 }
2747 static int dissect_atmnrtVBR(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2748   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_atmnrtVBR);
2749 }
2750 static int dissect_atmABR(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2751   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_atmABR);
2752 }
2753 static int dissect_atmCBR(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2754   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_atmCBR);
2755 }
2756 static int dissect_variable_delta(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2757   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_variable_delta);
2758 }
2759 static int dissect_multicastCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2760   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_multicastCapability);
2761 }
2762 static int dissect_multiUniCastConference(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2763   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_multiUniCastConference);
2764 }
2765 static int dissect_centralizedControl(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2766   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_centralizedControl);
2767 }
2768 static int dissect_distributedControl(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2769   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_distributedControl);
2770 }
2771 static int dissect_centralizedAudio(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2772   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_centralizedAudio);
2773 }
2774 static int dissect_distributedAudio(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2775   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_distributedAudio);
2776 }
2777 static int dissect_centralizedVideo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2778   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_centralizedVideo);
2779 }
2780 static int dissect_distributedVideo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2781   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_distributedVideo);
2782 }
2783 static int dissect_temporalSpatialTradeOffCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2784   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_temporalSpatialTradeOffCapability);
2785 }
2786 static int dissect_stillImageTransmission(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2787   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_stillImageTransmission);
2788 }
2789 static int dissect_videoBadMBsCap(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2790   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_videoBadMBsCap);
2791 }
2792 static int dissect_profileAndLevel_SPatML(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2793   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_SPatML);
2794 }
2795 static int dissect_profileAndLevel_MPatLL(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2796   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_MPatLL);
2797 }
2798 static int dissect_profileAndLevel_MPatML(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2799   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_MPatML);
2800 }
2801 static int dissect_profileAndLevel_MPatH_14(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2802   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_MPatH_14);
2803 }
2804 static int dissect_profileAndLevel_MPatHL(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2805   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_MPatHL);
2806 }
2807 static int dissect_profileAndLevel_SNRatLL(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2808   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_SNRatLL);
2809 }
2810 static int dissect_profileAndLevel_SNRatML(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2811   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_SNRatML);
2812 }
2813 static int dissect_profileAndLevel_SpatialatH_14(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2814   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_SpatialatH_14);
2815 }
2816 static int dissect_profileAndLevel_HPatML(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2817   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_HPatML);
2818 }
2819 static int dissect_profileAndLevel_HPatH_14(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2820   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_HPatH_14);
2821 }
2822 static int dissect_profileAndLevel_HPatHL(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2823   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_HPatHL);
2824 }
2825 static int dissect_unrestrictedVector(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2826   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_unrestrictedVector);
2827 }
2828 static int dissect_arithmeticCoding(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2829   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_arithmeticCoding);
2830 }
2831 static int dissect_advancedPrediction(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2832   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_advancedPrediction);
2833 }
2834 static int dissect_pbFrames(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2835   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_pbFrames);
2836 }
2837 static int dissect_errorCompensation(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2838   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_errorCompensation);
2839 }
2840 static int dissect_baseBitRateConstrained(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2841   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_baseBitRateConstrained);
2842 }
2843 static int dissect_advancedIntraCodingMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2844   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_advancedIntraCodingMode);
2845 }
2846 static int dissect_deblockingFilterMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2847   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_deblockingFilterMode);
2848 }
2849 static int dissect_improvedPBFramesMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2850   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_improvedPBFramesMode);
2851 }
2852 static int dissect_unlimitedMotionVectors(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2853   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_unlimitedMotionVectors);
2854 }
2855 static int dissect_fullPictureFreeze(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2856   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_fullPictureFreeze);
2857 }
2858 static int dissect_partialPictureFreezeAndRelease(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2859   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_partialPictureFreezeAndRelease);
2860 }
2861 static int dissect_resizingPartPicFreezeAndRelease(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2862   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_resizingPartPicFreezeAndRelease);
2863 }
2864 static int dissect_fullPictureSnapshot(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2865   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_fullPictureSnapshot);
2866 }
2867 static int dissect_partialPictureSnapshot(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2868   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_partialPictureSnapshot);
2869 }
2870 static int dissect_videoSegmentTagging(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2871   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_videoSegmentTagging);
2872 }
2873 static int dissect_progressiveRefinement(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2874   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_progressiveRefinement);
2875 }
2876 static int dissect_dynamicPictureResizingByFour(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2877   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_dynamicPictureResizingByFour);
2878 }
2879 static int dissect_dynamicPictureResizingSixteenthPel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2880   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_dynamicPictureResizingSixteenthPel);
2881 }
2882 static int dissect_dynamicWarpingHalfPel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2883   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_dynamicWarpingHalfPel);
2884 }
2885 static int dissect_dynamicWarpingSixteenthPel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2886   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_dynamicWarpingSixteenthPel);
2887 }
2888 static int dissect_independentSegmentDecoding(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2889   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_independentSegmentDecoding);
2890 }
2891 static int dissect_slicesInOrder_NonRect(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2892   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_slicesInOrder_NonRect);
2893 }
2894 static int dissect_slicesInOrder_Rect(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2895   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_slicesInOrder_Rect);
2896 }
2897 static int dissect_slicesNoOrder_NonRect(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2898   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_slicesNoOrder_NonRect);
2899 }
2900 static int dissect_slicesNoOrder_Rect(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2901   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_slicesNoOrder_Rect);
2902 }
2903 static int dissect_alternateInterVLCMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2904   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_alternateInterVLCMode);
2905 }
2906 static int dissect_modifiedQuantizationMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2907   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_modifiedQuantizationMode);
2908 }
2909 static int dissect_reducedResolutionUpdate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2910   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_reducedResolutionUpdate);
2911 }
2912 static int dissect_separateVideoBackChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2913   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_separateVideoBackChannel);
2914 }
2915 static int dissect_videoMux(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2916   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_videoMux);
2917 }
2918 static int dissect_anyPixelAspectRatio(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2919   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_anyPixelAspectRatio);
2920 }
2921 static int dissect_referencePicSelect(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2922   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_referencePicSelect);
2923 }
2924 static int dissect_enhancedReferencePicSelectBool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2925   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_enhancedReferencePicSelectBool);
2926 }
2927 static int dissect_dataPartitionedSlices(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2928   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_dataPartitionedSlices);
2929 }
2930 static int dissect_fixedPointIDCT0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2931   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_fixedPointIDCT0);
2932 }
2933 static int dissect_interlacedFields(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2934   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_interlacedFields);
2935 }
2936 static int dissect_currentPictureHeaderRepetition(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2937   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_currentPictureHeaderRepetition);
2938 }
2939 static int dissect_previousPictureHeaderRepetition(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2940   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_previousPictureHeaderRepetition);
2941 }
2942 static int dissect_nextPictureHeaderRepetition(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2943   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_nextPictureHeaderRepetition);
2944 }
2945 static int dissect_pictureNumberBoolean(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2946   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_pictureNumberBoolean);
2947 }
2948 static int dissect_spareReferencePictures(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2949   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_spareReferencePictures);
2950 }
2951 static int dissect_constrainedBitstream(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2952   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_constrainedBitstream);
2953 }
2954 static int dissect_silenceSuppression(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2955   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_silenceSuppression);
2956 }
2957 static int dissect_annexA(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2958   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_annexA);
2959 }
2960 static int dissect_annexB(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2961   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_annexB);
2962 }
2963 static int dissect_annexD(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2964   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_annexD);
2965 }
2966 static int dissect_annexE(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2967   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_annexE);
2968 }
2969 static int dissect_annexF(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2970   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_annexF);
2971 }
2972 static int dissect_annexG(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2973   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_annexG);
2974 }
2975 static int dissect_annexH(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2976   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_annexH);
2977 }
2978 static int dissect_audioLayer1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2979   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioLayer1);
2980 }
2981 static int dissect_audioLayer2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2982   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioLayer2);
2983 }
2984 static int dissect_audioLayer3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2985   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioLayer3);
2986 }
2987 static int dissect_audioSampling32k(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2988   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioSampling32k);
2989 }
2990 static int dissect_audioSampling44k1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2991   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioSampling44k1);
2992 }
2993 static int dissect_audioSampling48k(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2994   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioSampling48k);
2995 }
2996 static int dissect_singleChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
2997   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_singleChannel);
2998 }
2999 static int dissect_twoChannels(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3000   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_twoChannels);
3001 }
3002 static int dissect_audioSampling16k(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3003   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioSampling16k);
3004 }
3005 static int dissect_audioSampling22k05(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3006   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioSampling22k05);
3007 }
3008 static int dissect_audioSampling24k(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3009   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioSampling24k);
3010 }
3011 static int dissect_threeChannels2_1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3012   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_threeChannels2_1);
3013 }
3014 static int dissect_threeChannels3_0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3015   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_threeChannels3_0);
3016 }
3017 static int dissect_fourChannels2_0_2_0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3018   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_fourChannels2_0_2_0);
3019 }
3020 static int dissect_fourChannels2_2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3021   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_fourChannels2_2);
3022 }
3023 static int dissect_fourChannels3_1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3024   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_fourChannels3_1);
3025 }
3026 static int dissect_fiveChannels3_0_2_0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3027   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_fiveChannels3_0_2_0);
3028 }
3029 static int dissect_fiveChannels3_2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3030   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_fiveChannels3_2);
3031 }
3032 static int dissect_lowFrequencyEnhancement(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3033   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_lowFrequencyEnhancement);
3034 }
3035 static int dissect_multilingual(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3036   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_multilingual);
3037 }
3038 static int dissect_comfortNoise(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3039   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_comfortNoise);
3040 }
3041 static int dissect_scrambled(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3042   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_scrambled);
3043 }
3044 static int dissect_qcif_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3045   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_qcif_bool);
3046 }
3047 static int dissect_cif_bool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3048   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_cif_bool);
3049 }
3050 static int dissect_ccir601Seq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3051   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_ccir601Seq);
3052 }
3053 static int dissect_ccir601Prog(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3054   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_ccir601Prog);
3055 }
3056 static int dissect_hdtvSeq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3057   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_hdtvSeq);
3058 }
3059 static int dissect_hdtvProg(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3060   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_hdtvProg);
3061 }
3062 static int dissect_g3FacsMH200x100(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3063   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_g3FacsMH200x100);
3064 }
3065 static int dissect_g3FacsMH200x200(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3066   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_g3FacsMH200x200);
3067 }
3068 static int dissect_g4FacsMMR200x100(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3069   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_g4FacsMMR200x100);
3070 }
3071 static int dissect_g4FacsMMR200x200(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3072   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_g4FacsMMR200x200);
3073 }
3074 static int dissect_jbig200x200Seq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3075   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_jbig200x200Seq);
3076 }
3077 static int dissect_jbig200x200Prog(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3078   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_jbig200x200Prog);
3079 }
3080 static int dissect_jbig300x300Seq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3081   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_jbig300x300Seq);
3082 }
3083 static int dissect_jbig300x300Prog(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3084   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_jbig300x300Prog);
3085 }
3086 static int dissect_digPhotoLow(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3087   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_digPhotoLow);
3088 }
3089 static int dissect_digPhotoMedSeq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3090   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_digPhotoMedSeq);
3091 }
3092 static int dissect_digPhotoMedProg(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3093   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_digPhotoMedProg);
3094 }
3095 static int dissect_digPhotoHighSeq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3096   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_digPhotoHighSeq);
3097 }
3098 static int dissect_digPhotoHighProg(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3099   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_digPhotoHighProg);
3100 }
3101 static int dissect_fillBitRemoval(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3102   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_fillBitRemoval);
3103 }
3104 static int dissect_transcodingJBIG(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3105   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_transcodingJBIG);
3106 }
3107 static int dissect_transcodingMMR(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3108   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_transcodingMMR);
3109 }
3110 static int dissect_t38TCPBidirectionalMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3111   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_t38TCPBidirectionalMode);
3112 }
3113 static int dissect_chairControlCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3114   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_chairControlCapability);
3115 }
3116 static int dissect_videoIndicateMixingCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3117   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_videoIndicateMixingCapability);
3118 }
3119 static int dissect_multipointVisualizationCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3120   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_multipointVisualizationCapability);
3121 }
3122 static int dissect_controlOnMuxStream(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3123   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_controlOnMuxStream);
3124 }
3125 static int dissect_redundancyEncodingBool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3126   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_redundancyEncodingBool);
3127 }
3128 static int dissect_separatePort(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3129   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_separatePort);
3130 }
3131 static int dissect_samePortBool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3132   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_samePortBool);
3133 }
3134 static int dissect_associateConference(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3135   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_associateConference);
3136 }
3137 static int dissect_audioHeaderPresent(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3138   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_audioHeaderPresent);
3139 }
3140 static int dissect_segmentableFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3141   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_segmentableFlag);
3142 }
3143 static int dissect_alsduSplitting(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3144   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_alsduSplitting);
3145 }
3146 static int dissect_uIH(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3147   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_uIH);
3148 }
3149 static int dissect_loopbackTestProcedure(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3150   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_loopbackTestProcedure);
3151 }
3152 static int dissect_mediaGuaranteedDelivery(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3153   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_mediaGuaranteedDelivery);
3154 }
3155 static int dissect_mediaControlGuaranteedDelivery(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3156   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_mediaControlGuaranteedDelivery);
3157 }
3158 static int dissect_flowControlToZero(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3159   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_flowControlToZero);
3160 }
3161 static int dissect_multiplexCapabilityBool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3162   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_multiplexCapabilityBool);
3163 }
3164 static int dissect_secureChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3165   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_secureChannel);
3166 }
3167 static int dissect_sharedSecret(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3168   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_sharedSecret);
3169 }
3170 static int dissect_certProtectedKey(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3171   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_certProtectedKey);
3172 }
3173 static int dissect_bitRateLockedToPCRClock(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3174   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_bitRateLockedToPCRClock);
3175 }
3176 static int dissect_bitRateLockedToNetworkClock(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3177   return dissect_h245_BOOLEAN(tvb, offset, pinfo, tree, hf_h245_bitRateLockedToNetworkClock);
3178 }
3179
3180 static const per_sequence_t T_aal1_sequence[] = {
3181   { "nullClockRecovery"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nullClockRecovery },
3182   { "srtsClockRecovery"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_srtsClockRecovery_bool },
3183   { "adaptiveClockRecovery"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_adaptiveClockRecovery },
3184   { "nullErrorCorrection"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nullErrorCorrection },
3185   { "longInterleaver"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_longInterleaver },
3186   { "shortInterleaver"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_shortInterleaver },
3187   { "errorCorrectionOnly"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_errorCorrectionOnly },
3188   { "structuredDataTransfer"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_structuredDataTransfer },
3189   { "partiallyFilledCells"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_partiallyFilledCells },
3190   { NULL, 0, 0, NULL }
3191 };
3192
3193 static int
3194 dissect_h245_T_aal1(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3195   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
3196                                 ett_h245_T_aal1, T_aal1_sequence);
3197
3198   return offset;
3199 }
3200 static int dissect_aal1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3201   return dissect_h245_T_aal1(tvb, offset, pinfo, tree, hf_h245_aal1);
3202 }
3203
3204 static const per_sequence_t T_aal5_sequence[] = {
3205   { "forwardMaximumSDUSize"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardMaximumSDUSize },
3206   { "backwardMaximumSDUSize"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_backwardMaximumSDUSize },
3207   { NULL, 0, 0, NULL }
3208 };
3209
3210 static int
3211 dissect_h245_T_aal5(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3212   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
3213                                 ett_h245_T_aal5, T_aal5_sequence);
3214
3215   return offset;
3216 }
3217 static int dissect_aal5(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3218   return dissect_h245_T_aal5(tvb, offset, pinfo, tree, hf_h245_aal5);
3219 }
3220
3221
3222
3223 static int
3224 dissect_h245_INTEGER_1_65535(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3225   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
3226                                            1U, 65535U, NULL, NULL, FALSE);
3227
3228   return offset;
3229 }
3230 static int dissect_singleBitRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3231   return dissect_h245_INTEGER_1_65535(tvb, offset, pinfo, tree, hf_h245_singleBitRate);
3232 }
3233 static int dissect_lowerBitRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3234   return dissect_h245_INTEGER_1_65535(tvb, offset, pinfo, tree, hf_h245_lowerBitRate);
3235 }
3236 static int dissect_higherBitRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3237   return dissect_h245_INTEGER_1_65535(tvb, offset, pinfo, tree, hf_h245_higherBitRate);
3238 }
3239 static int dissect_finite_1_65535(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3240   return dissect_h245_INTEGER_1_65535(tvb, offset, pinfo, tree, hf_h245_finite_1_65535);
3241 }
3242 static int dissect_maxNumberOfAdditionalConnections(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3243   return dissect_h245_INTEGER_1_65535(tvb, offset, pinfo, tree, hf_h245_maxNumberOfAdditionalConnections);
3244 }
3245 static int dissect_infoNotAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3246   return dissect_h245_INTEGER_1_65535(tvb, offset, pinfo, tree, hf_h245_infoNotAvailable);
3247 }
3248 static int dissect_maxH223MUXPDUsize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3249   return dissect_h245_INTEGER_1_65535(tvb, offset, pinfo, tree, hf_h245_maxH223MUXPDUsize);
3250 }
3251 static int dissect_bitRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3252   return dissect_h245_INTEGER_1_65535(tvb, offset, pinfo, tree, hf_h245_bitRate);
3253 }
3254 static int dissect_duration(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3255   return dissect_h245_INTEGER_1_65535(tvb, offset, pinfo, tree, hf_h245_duration);
3256 }
3257
3258 static const per_sequence_t T_rangeOfBitRates_sequence[] = {
3259   { "lowerBitRate"                , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lowerBitRate },
3260   { "higherBitRate"               , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_higherBitRate },
3261   { NULL, 0, 0, NULL }
3262 };
3263
3264 static int
3265 dissect_h245_T_rangeOfBitRates(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3266   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
3267                                 ett_h245_T_rangeOfBitRates, T_rangeOfBitRates_sequence);
3268
3269   return offset;
3270 }
3271 static int dissect_rangeOfBitRates(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3272   return dissect_h245_T_rangeOfBitRates(tvb, offset, pinfo, tree, hf_h245_rangeOfBitRates);
3273 }
3274
3275
3276 static const value_string h245_Avb_type_vals[] = {
3277   {   0, "singleBitRate" },
3278   {   1, "rangeOfBitRates" },
3279   { 0, NULL }
3280 };
3281
3282 static const per_choice_t Avb_type_choice[] = {
3283   {   0, "singleBitRate"               , ASN1_NO_EXTENSIONS     , dissect_singleBitRate },
3284   {   1, "rangeOfBitRates"             , ASN1_NO_EXTENSIONS     , dissect_rangeOfBitRates },
3285   { 0, NULL, 0, NULL }
3286 };
3287
3288 static int
3289 dissect_h245_Avb_type(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3290   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
3291                               ett_h245_Avb_type, Avb_type_choice, "Avb_type",
3292                               NULL);
3293
3294   return offset;
3295 }
3296 static int dissect_Avb_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3297   return dissect_h245_Avb_type(tvb, offset, pinfo, tree, hf_h245_Avb_type);
3298 }
3299
3300 static const per_sequence_t T_availableBitRates_sequence[] = {
3301   { "type"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_Avb_type },
3302   { NULL, 0, 0, NULL }
3303 };
3304
3305 static int
3306 dissect_h245_T_availableBitRates(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3307   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
3308                                 ett_h245_T_availableBitRates, T_availableBitRates_sequence);
3309
3310   return offset;
3311 }
3312 static int dissect_availableBitRates(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3313   return dissect_h245_T_availableBitRates(tvb, offset, pinfo, tree, hf_h245_availableBitRates);
3314 }
3315
3316
3317 static int
3318 dissect_h245_NumericString_SIZE_1_16(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3319   offset = dissect_per_NumericString(tvb, offset, pinfo, tree, hf_index,
3320                                      1, 16);
3321
3322   return offset;
3323 }
3324 static int dissect_internationalNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3325   return dissect_h245_NumericString_SIZE_1_16(tvb, offset, pinfo, tree, hf_h245_internationalNumber);
3326 }
3327
3328
3329 static int
3330 dissect_h245_OCTET_STRING_SIZE_1_20(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3331   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
3332                                     1, 20,
3333                                     NULL, NULL);
3334
3335   return offset;
3336 }
3337 static int dissect_nsapAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3338   return dissect_h245_OCTET_STRING_SIZE_1_20(tvb, offset, pinfo, tree, hf_h245_nsapAddress);
3339 }
3340 static int dissect_subaddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3341   return dissect_h245_OCTET_STRING_SIZE_1_20(tvb, offset, pinfo, tree, hf_h245_subaddress);
3342 }
3343 static int dissect_nsap(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3344   return dissect_h245_OCTET_STRING_SIZE_1_20(tvb, offset, pinfo, tree, hf_h245_nsap);
3345 }
3346
3347
3348 static const value_string h245_T_address_vals[] = {
3349   {   0, "internationalNumber" },
3350   {   1, "nsapAddress" },
3351   { 0, NULL }
3352 };
3353
3354 static const per_choice_t T_address_choice[] = {
3355   {   0, "internationalNumber"         , ASN1_EXTENSION_ROOT    , dissect_internationalNumber },
3356   {   1, "nsapAddress"                 , ASN1_EXTENSION_ROOT    , dissect_nsapAddress },
3357   { 0, NULL, 0, NULL }
3358 };
3359
3360 static int
3361 dissect_h245_T_address(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3362   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
3363                               ett_h245_T_address, T_address_choice, "T_address",
3364                               NULL);
3365
3366   return offset;
3367 }
3368 static int dissect_address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3369   return dissect_h245_T_address(tvb, offset, pinfo, tree, hf_h245_address);
3370 }
3371
3372 static const per_sequence_t Q2931Address_sequence[] = {
3373   { "address"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_address },
3374   { "subaddress"                  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_subaddress },
3375   { NULL, 0, 0, NULL }
3376 };
3377
3378 static int
3379 dissect_h245_Q2931Address(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3380   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
3381                                 ett_h245_Q2931Address, Q2931Address_sequence);
3382
3383   return offset;
3384 }
3385 static int dissect_gatewayAddress_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3386   return dissect_h245_Q2931Address(tvb, offset, pinfo, tree, hf_h245_gatewayAddress_item);
3387 }
3388 static int dissect_q2931Address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3389   return dissect_h245_Q2931Address(tvb, offset, pinfo, tree, hf_h245_q2931Address);
3390 }
3391
3392
3393 static int
3394 dissect_h245_SET_SIZE_1_256_OF_Q2931Address(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3395   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
3396                                           ett_h245_SET_SIZE_1_256_OF_Q2931Address, dissect_gatewayAddress_item,
3397                                           1, 256);
3398
3399   return offset;
3400 }
3401 static int dissect_gatewayAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3402   return dissect_h245_SET_SIZE_1_256_OF_Q2931Address(tvb, offset, pinfo, tree, hf_h245_gatewayAddress);
3403 }
3404
3405 static const per_sequence_t T_aal1ViaGateway_sequence[] = {
3406   { "gatewayAddress"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_gatewayAddress },
3407   { "nullClockRecovery"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nullClockRecovery },
3408   { "srtsClockRecovery"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_srtsClockRecoveryflag },
3409   { "adaptiveClockRecovery"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_adaptiveClockRecovery },
3410   { "nullErrorCorrection"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nullErrorCorrection },
3411   { "longInterleaver"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_longInterleaver },
3412   { "shortInterleaver"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_shortInterleaver },
3413   { "errorCorrectionOnly"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_errorCorrectionOnly },
3414   { "structuredDataTransfer"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_structuredDataTransfer },
3415   { "partiallyFilledCells"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_partiallyFilledCells },
3416   { NULL, 0, 0, NULL }
3417 };
3418
3419 static int
3420 dissect_h245_T_aal1ViaGateway(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3421   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
3422                                 ett_h245_T_aal1ViaGateway, T_aal1ViaGateway_sequence);
3423
3424   return offset;
3425 }
3426 static int dissect_aal1ViaGateway(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3427   return dissect_h245_T_aal1ViaGateway(tvb, offset, pinfo, tree, hf_h245_aal1ViaGateway);
3428 }
3429
3430 static const per_sequence_t VCCapability_sequence[] = {
3431   { "aal1"                        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_aal1 },
3432   { "aal5"                        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_aal5 },
3433   { "transportStream"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_transportStream_bool },
3434   { "programStream"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_programStream },
3435   { "availableBitRates"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_availableBitRates },
3436   { "aal1ViaGateway"              , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_aal1ViaGateway },
3437   { NULL, 0, 0, NULL }
3438 };
3439
3440 static int
3441 dissect_h245_VCCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3442   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
3443                                 ett_h245_VCCapability, VCCapability_sequence);
3444
3445   return offset;
3446 }
3447 static int dissect_vcCapability_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3448   return dissect_h245_VCCapability(tvb, offset, pinfo, tree, hf_h245_vcCapability_item);
3449 }
3450
3451
3452 static int
3453 dissect_h245_SET_OF_VCCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3454   offset = dissect_per_set_of(tvb, offset, pinfo, tree, hf_index,
3455                               ett_h245_SET_OF_VCCapability, dissect_vcCapability_item);
3456
3457   return offset;
3458 }
3459 static int dissect_vcCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3460   return dissect_h245_SET_OF_VCCapability(tvb, offset, pinfo, tree, hf_h245_vcCapability);
3461 }
3462
3463 static const per_sequence_t H222Capability_sequence[] = {
3464   { "numberOfVCs"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_numberOfVCs },
3465   { "vcCapability"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_vcCapability },
3466   { NULL, 0, 0, NULL }
3467 };
3468
3469 static int
3470 dissect_h245_H222Capability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3471   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
3472                                 ett_h245_H222Capability, H222Capability_sequence);
3473
3474   return offset;
3475 }
3476 static int dissect_h222Capability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3477   return dissect_h245_H222Capability(tvb, offset, pinfo, tree, hf_h245_h222Capability);
3478 }
3479
3480
3481
3482 static int
3483 dissect_h245_INTEGER_0_1023(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3484   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
3485                                            0U, 1023U, NULL, NULL, FALSE);
3486
3487   return offset;
3488 }
3489 static int dissect_maximumDelayJitter(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3490   return dissect_h245_INTEGER_0_1023(tvb, offset, pinfo, tree, hf_h245_maximumDelayJitter);
3491 }
3492 static int dissect_maximumAudioDelayJitter(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3493   return dissect_h245_INTEGER_0_1023(tvb, offset, pinfo, tree, hf_h245_maximumAudioDelayJitter);
3494 }
3495 static int dissect_temporalReference(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3496   return dissect_h245_INTEGER_0_1023(tvb, offset, pinfo, tree, hf_h245_temporalReference);
3497 }
3498 static int dissect_pictureNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3499   return dissect_h245_INTEGER_0_1023(tvb, offset, pinfo, tree, hf_h245_pictureNumber);
3500 }
3501
3502
3503 static int
3504 dissect_h245_NULL(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
3505   { proto_item *ti_tmp;
3506   ti_tmp = proto_tree_add_item(tree, hf_index, tvb, offset>>8, 0, FALSE);
3507   proto_item_append_text(ti_tmp, ": NULL");
3508   }
3509
3510   return offset;
3511 }
3512 static int dissect_master(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3513   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_master);
3514 }
3515 static int dissect_slave(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3516   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_slave);
3517 }
3518 static int dissect_identicalNumbers(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3519   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_identicalNumbers);
3520 }
3521 static int dissect_unspecified(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3522   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_unspecified);
3523 }
3524 static int dissect_undefinedTableEntryUsed(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3525   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_undefinedTableEntryUsed);
3526 }
3527 static int dissect_descriptorCapacityExceeded(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3528   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_descriptorCapacityExceeded);
3529 }
3530 static int dissect_noneProcessed(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3531   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_noneProcessed);
3532 }
3533 static int dissect_basic(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3534   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_basic);
3535 }
3536 static int dissect_guaranteedQOS(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3537   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_guaranteedQOS);
3538 }
3539 static int dissect_controlledLoad(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3540   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_controlledLoad);
3541 }
3542 static int dissect_ip_UDP(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3543   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_ip_UDP);
3544 }
3545 static int dissect_ip_TCP(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3546   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_ip_TCP);
3547 }
3548 static int dissect_atm_AAL5_UNIDIR(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3549   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_atm_AAL5_UNIDIR);
3550 }
3551 static int dissect_atm_AAL5_BIDIR(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3552   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_atm_AAL5_BIDIR);
3553 }
3554 static int dissect_rtpAudioRedundancyEncoding(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3555   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_rtpAudioRedundancyEncoding);
3556 }
3557 static int dissect_roundrobin(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3558   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_roundrobin);
3559 }
3560 static int dissect_none(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3561   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_none);
3562 }
3563 static int dissect_ackMessageOnly(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3564   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_ackMessageOnly);
3565 }
3566 static int dissect_nackMessageOnly(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3567   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_nackMessageOnly);
3568 }
3569 static int dissect_ackOrNackMessageOnly(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3570   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_ackOrNackMessageOnly);
3571 }
3572 static int dissect_ackAndNackMessage(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3573   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_ackAndNackMessage);
3574 }
3575 static int dissect_dsvdControl(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3576   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_dsvdControl);
3577 }
3578 static int dissect_v14buffered(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3579   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_v14buffered);
3580 }
3581 static int dissect_v42lapm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3582   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_v42lapm);
3583 }
3584 static int dissect_hdlcFrameTunnelling(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3585   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_hdlcFrameTunnelling);
3586 }
3587 static int dissect_h310SeparateVCStack(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3588   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_h310SeparateVCStack);
3589 }
3590 static int dissect_h310SingleVCStack(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3591   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_h310SingleVCStack);
3592 }
3593 static int dissect_transparent(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3594   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_transparent);
3595 }
3596 static int dissect_segmentationAndReassembly(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3597   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_segmentationAndReassembly);
3598 }
3599 static int dissect_hdlcFrameTunnelingwSAR(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3600   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_hdlcFrameTunnelingwSAR);
3601 }
3602 static int dissect_v120(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3603   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_v120);
3604 }
3605 static int dissect_separateLANStack(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3606   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_separateLANStack);
3607 }
3608 static int dissect_tcp(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3609   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_tcp);
3610 }
3611 static int dissect_udp(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3612   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_udp);
3613 }
3614 static int dissect_t84Unrestricted(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3615   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_t84Unrestricted);
3616 }
3617 static int dissect_localTCF(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3618   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_localTCF);
3619 }
3620 static int dissect_transferredTCF(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3621   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_transferredTCF);
3622 }
3623 static int dissect_t38UDPFEC(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3624   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_t38UDPFEC);
3625 }
3626 static int dissect_t38UDPRedundancy(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3627   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_t38UDPRedundancy);
3628 }
3629 static int dissect_basicString(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3630   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_basicString);
3631 }
3632 static int dissect_iA5String(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3633   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_iA5String);
3634 }
3635 static int dissect_generalString(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3636   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_generalString);
3637 }
3638 static int dissect_dtmf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3639   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_dtmf);
3640 }
3641 static int dissect_hookflash(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3642   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_hookflash);
3643 }
3644 static int dissect_extendedAlphanumericFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3645   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_extendedAlphanumericFlag);
3646 }
3647 static int dissect_encryptedBasicString(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3648   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_encryptedBasicString);
3649 }
3650 static int dissect_encryptedIA5String(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3651   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_encryptedIA5String);
3652 }
3653 static int dissect_encryptedGeneralString(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3654   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_encryptedGeneralString);
3655 }
3656 static int dissect_secureDTMF(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3657   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_secureDTMF);
3658 }
3659 static int dissect_logical(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3660   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_logical);
3661 }
3662 static int dissect_unicast(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3663   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_unicast);
3664 }
3665 static int dissect_multicast(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3666   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_multicast);
3667 }
3668 static int dissect_originateCall(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3669   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_originateCall);
3670 }
3671 static int dissect_waitForCall(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3672   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_waitForCall);
3673 }
3674 static int dissect_issueQuery(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3675   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_issueQuery);
3676 }
3677 static int dissect_nullData(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3678   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_nullData);
3679 }
3680 static int dissect_al1Framed(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3681   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_al1Framed);
3682 }
3683 static int dissect_al1NotFramed(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3684   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_al1NotFramed);
3685 }
3686 static int dissect_al2WithoutSequenceNumbers(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3687   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_al2WithoutSequenceNumbers);
3688 }
3689 static int dissect_al2WithSequenceNumbers(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3690   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_al2WithSequenceNumbers);
3691 }
3692 static int dissect_framed(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3693   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_framed);
3694 }
3695 static int dissect_unframed(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3696   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_unframed);
3697 }
3698 static int dissect_sebch16_7(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3699   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_sebch16_7);
3700 }
3701 static int dissect_golay24_12(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3702   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_golay24_12);
3703 }
3704 static int dissect_crc4bit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3705   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_crc4bit);
3706 }
3707 static int dissect_crc12bit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3708   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_crc12bit);
3709 }
3710 static int dissect_crc20bit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3711   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_crc20bit);
3712 }
3713 static int dissect_crc28bit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3714   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_crc28bit);
3715 }
3716 static int dissect_crc8bit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3717   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_crc8bit);
3718 }
3719 static int dissect_crc16bit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3720   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_crc16bit);
3721 }
3722 static int dissect_crc32bit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3723   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_crc32bit);
3724 }
3725 static int dissect_crcNotUsed(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3726   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_crcNotUsed);
3727 }
3728 static int dissect_noArq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3729   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_noArq);
3730 }
3731 static int dissect_sebch16_5(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3732   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_sebch16_5);
3733 }
3734 static int dissect_infinite(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3735   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_infinite);
3736 }
3737 static int dissect_noSuspendResume(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3738   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_noSuspendResume);
3739 }
3740 static int dissect_suspendResumewAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3741   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_suspendResumewAddress);
3742 }
3743 static int dissect_suspendResumewoAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3744   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_suspendResumewoAddress);
3745 }
3746 static int dissect_rej(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3747   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_rej);
3748 }
3749 static int dissect_sREJ(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3750   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_sREJ);
3751 }
3752 static int dissect_mSREJ(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3753   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_mSREJ);
3754 }
3755 static int dissect_uNERM(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3756   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_uNERM);
3757 }
3758 static int dissect_h261aVideoPacketizationFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3759   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_h261aVideoPacketizationFlag);
3760 }
3761 static int dissect_redundancyEncodingFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3762   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_redundancyEncodingFlag);
3763 }
3764 static int dissect_strict(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3765   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_strict);
3766 }
3767 static int dissect_loose(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3768   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_loose);
3769 }
3770 static int dissect_unsuitableReverseParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3771   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_unsuitableReverseParameters);
3772 }
3773 static int dissect_dataTypeNotSupported(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3774   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_dataTypeNotSupported);
3775 }
3776 static int dissect_dataTypeNotAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3777   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_dataTypeNotAvailable);
3778 }
3779 static int dissect_unknownDataType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3780   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_unknownDataType);
3781 }
3782 static int dissect_dataTypeALCombinationNotSupported(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3783   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_dataTypeALCombinationNotSupported);
3784 }
3785 static int dissect_multicastChannelNotAllowed(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3786   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_multicastChannelNotAllowed);
3787 }
3788 static int dissect_insufficientBandwidth(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3789   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_insufficientBandwidth);
3790 }
3791 static int dissect_separateStackEstablishmentFailed(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3792   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_separateStackEstablishmentFailed);
3793 }
3794 static int dissect_invalidSessionID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3795   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_invalidSessionID);
3796 }
3797 static int dissect_masterSlaveConflict(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3798   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_masterSlaveConflict);
3799 }
3800 static int dissect_waitForCommunicationMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3801   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_waitForCommunicationMode);
3802 }
3803 static int dissect_invalidDependentChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3804   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_invalidDependentChannel);
3805 }
3806 static int dissect_replacementForRejected(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3807   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_replacementForRejected);
3808 }
3809 static int dissect_user(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3810   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_user);
3811 }
3812 static int dissect_lcse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3813   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_lcse);
3814 }
3815 static int dissect_unknown(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3816   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_unknown);
3817 }
3818 static int dissect_reopen(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3819   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_reopen);
3820 }
3821 static int dissect_reservationFailure(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3822   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_reservationFailure);
3823 }
3824 static int dissect_normal(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3825   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_normal);
3826 }
3827 static int dissect_untilClosingFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3828   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_untilClosingFlag);
3829 }
3830 static int dissect_unspecifiedCause(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3831   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_unspecifiedCause);
3832 }
3833 static int dissect_descriptorTooComplex(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3834   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_descriptorTooComplex);
3835 }
3836 static int dissect_willTransmitMostPreferredMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3837   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_willTransmitMostPreferredMode);
3838 }
3839 static int dissect_willTransmitLessPreferredMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3840   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_willTransmitLessPreferredMode);
3841 }
3842 static int dissect_modeUnavailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3843   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_modeUnavailable);
3844 }
3845 static int dissect_multipointConstraint(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3846   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_multipointConstraint);
3847 }
3848 static int dissect_requestDenied(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3849   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_requestDenied);
3850 }
3851 static int dissect_qcif(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3852   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_qcif);
3853 }
3854 static int dissect_cif(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3855   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_cif);
3856 }
3857 static int dissect_profileAndLevel_SPatMLMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3858   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_SPatMLMode);
3859 }
3860 static int dissect_profileAndLevel_MPatLLMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3861   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_MPatLLMode);
3862 }
3863 static int dissect_profileAndLevel_MPatMLMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3864   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_MPatMLMode);
3865 }
3866 static int dissect_profileAndLevel_MPatH_14Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3867   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_MPatH_14Mode);
3868 }
3869 static int dissect_profileAndLevel_MPatHLMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3870   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_MPatHLMode);
3871 }
3872 static int dissect_profileAndLevel_SNRatLLMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3873   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_SNRatLLMode);
3874 }
3875 static int dissect_profileAndLevel_SNRatMLMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3876   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_SNRatMLMode);
3877 }
3878 static int dissect_profileAndLevel_SpatialatH_14Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3879   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_SpatialatH_14Mode);
3880 }
3881 static int dissect_profileAndLevel_HPatMLMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3882   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_HPatMLMode);
3883 }
3884 static int dissect_profileAndLevel_HPatH_14Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3885   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_HPatH_14Mode);
3886 }
3887 static int dissect_profileAndLevel_HPatHLMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3888   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_profileAndLevel_HPatHLMode);
3889 }
3890 static int dissect_sqcif(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3891   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_sqcif);
3892 }
3893 static int dissect_cif4(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3894   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_cif4);
3895 }
3896 static int dissect_cif16(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3897   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_cif16);
3898 }
3899 static int dissect_custom_res(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3900   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_custom_res);
3901 }
3902 static int dissect_g711Alaw64k_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3903   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_g711Alaw64k_mode);
3904 }
3905 static int dissect_g711Alaw56k_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3906   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_g711Alaw56k_mode);
3907 }
3908 static int dissect_g711Ulaw64k_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3909   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_g711Ulaw64k_mode);
3910 }
3911 static int dissect_g711Ulaw56k_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3912   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_g711Ulaw56k_mode);
3913 }
3914 static int dissect_g722_64k_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3915   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_g722_64k_mode);
3916 }
3917 static int dissect_g722_56k_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3918   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_g722_56k_mode);
3919 }
3920 static int dissect_g722_48k_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3921   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_g722_48k_mode);
3922 }
3923 static int dissect_g728_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3924   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_g728_mode);
3925 }
3926 static int dissect_g729_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3927   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_g729_mode);
3928 }
3929 static int dissect_g729AnnexA_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3930   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_g729AnnexA_mode);
3931 }
3932 static int dissect_noSilenceSuppressionLowRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3933   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_noSilenceSuppressionLowRate);
3934 }
3935 static int dissect_noSilenceSuppressionHighRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3936   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_noSilenceSuppressionHighRate);
3937 }
3938 static int dissect_silenceSuppressionLowRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3939   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_silenceSuppressionLowRate);
3940 }
3941 static int dissect_silenceSuppressionHighRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3942   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_silenceSuppressionHighRate);
3943 }
3944 static int dissect_audioLayer1Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3945   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_audioLayer1Mode);
3946 }
3947 static int dissect_audioLayer2Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3948   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_audioLayer2Mode);
3949 }
3950 static int dissect_audioLayer3Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3951   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_audioLayer3Mode);
3952 }
3953 static int dissect_audioSampling32kMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3954   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_audioSampling32kMode);
3955 }
3956 static int dissect_audioSampling44k1Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3957   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_audioSampling44k1Mode);
3958 }
3959 static int dissect_audioSampling48kMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3960   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_audioSampling48kMode);
3961 }
3962 static int dissect_singleChannelMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3963   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_singleChannelMode);
3964 }
3965 static int dissect_twoChannelStereo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3966   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_twoChannelStereo);
3967 }
3968 static int dissect_twoChannelDual(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3969   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_twoChannelDual);
3970 }
3971 static int dissect_audioSampling16kMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3972   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_audioSampling16kMode);
3973 }
3974 static int dissect_audioSampling22k05Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3975   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_audioSampling22k05Mode);
3976 }
3977 static int dissect_audioSampling24kMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3978   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_audioSampling24kMode);
3979 }
3980 static int dissect_threeChannels2_1Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3981   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_threeChannels2_1Mode);
3982 }
3983 static int dissect_threeChannels3_0Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3984   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_threeChannels3_0Mode);
3985 }
3986 static int dissect_fourChannels2_0_2_0Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3987   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_fourChannels2_0_2_0Mode);
3988 }
3989 static int dissect_fourChannels2_2Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3990   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_fourChannels2_2Mode);
3991 }
3992 static int dissect_fourChannels3_1Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3993   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_fourChannels3_1Mode);
3994 }
3995 static int dissect_fiveChannels3_0_2_0Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3996   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_fiveChannels3_0_2_0Mode);
3997 }
3998 static int dissect_fiveChannels3_2Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
3999   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_fiveChannels3_2Mode);
4000 }
4001 static int dissect_h233Encryption(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4002   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_h233Encryption);
4003 }
4004 static int dissect_systemLoop(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4005   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_systemLoop);
4006 }
4007 static int dissect_canNotPerformLoop(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4008   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_canNotPerformLoop);
4009 }
4010 static int dissect_terminalListRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4011   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_terminalListRequest);
4012 }
4013 static int dissect_makeMeChair(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4014   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_makeMeChair);
4015 }
4016 static int dissect_cancelMakeMeChair(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4017   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_cancelMakeMeChair);
4018 }
4019 static int dissect_enterH243Password(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4020   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_enterH243Password);
4021 }
4022 static int dissect_enterH243TerminalID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4023   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_enterH243TerminalID);
4024 }
4025 static int dissect_enterH243ConferenceID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4026   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_enterH243ConferenceID);
4027 }
4028 static int dissect_enterExtensionAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4029   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_enterExtensionAddress);
4030 }
4031 static int dissect_requestChairTokenOwner(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4032   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_requestChairTokenOwner);
4033 }
4034 static int dissect_requestAllTerminalIDs(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4035   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_requestAllTerminalIDs);
4036 }
4037 static int dissect_videoCommandReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4038   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_videoCommandReject);
4039 }
4040 static int dissect_terminalDropReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4041   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_terminalDropReject);
4042 }
4043 static int dissect_grantedChairToken(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4044   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_grantedChairToken);
4045 }
4046 static int dissect_deniedChairToken(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4047   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_deniedChairToken);
4048 }
4049 static int dissect_grantedBroadcastMyLogicalChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4050   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_grantedBroadcastMyLogicalChannel);
4051 }
4052 static int dissect_deniedBroadcastMyLogicalChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4053   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_deniedBroadcastMyLogicalChannel);
4054 }
4055 static int dissect_grantedMakeTerminalBroadcaster(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4056   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_grantedMakeTerminalBroadcaster);
4057 }
4058 static int dissect_deniedMakeTerminalBroadcaster(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4059   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_deniedMakeTerminalBroadcaster);
4060 }
4061 static int dissect_grantedSendThisSource(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4062   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_grantedSendThisSource);
4063 }
4064 static int dissect_deniedSendThisSource(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4065   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_deniedSendThisSource);
4066 }
4067 static int dissect_masterActivate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4068   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_masterActivate);
4069 }
4070 static int dissect_slaveActivate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4071   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_slaveActivate);
4072 }
4073 static int dissect_deActivate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4074   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_deActivate);
4075 }
4076 static int dissect_accept(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4077   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_accept);
4078 }
4079 static int dissect_functionNotSupportedFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4080   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_functionNotSupportedFlag);
4081 }
4082 static int dissect_currentIntervalInformation(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4083   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_currentIntervalInformation);
4084 }
4085 static int dissect_accepted(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4086   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_accepted);
4087 }
4088 static int dissect_connectionsNotAvailable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4089   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_connectionsNotAvailable);
4090 }
4091 static int dissect_userRejected(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4092   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_userRejected);
4093 }
4094 static int dissect_n_isdn(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4095   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_n_isdn);
4096 }
4097 static int dissect_gstn(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4098   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_gstn);
4099 }
4100 static int dissect_mobile(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4101   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_mobile);
4102 }
4103 static int dissect_undefinedReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4104   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_undefinedReason);
4105 }
4106 static int dissect_insufficientResources(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4107   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_insufficientResources);
4108 }
4109 static int dissect_genericRequestFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4110   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_genericRequestFlag);
4111 }
4112 static int dissect_encryptionIVRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4113   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_encryptionIVRequest);
4114 }
4115 static int dissect_wholeMultiplex(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4116   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_wholeMultiplex);
4117 }
4118 static int dissect_noRestriction(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4119   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_noRestriction);
4120 }
4121 static int dissect_disconnect(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4122   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_disconnect);
4123 }
4124 static int dissect_telephonyMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4125   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_telephonyMode);
4126 }
4127 static int dissect_v8bis(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4128   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_v8bis);
4129 }
4130 static int dissect_v34DSVD(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4131   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_v34DSVD);
4132 }
4133 static int dissect_v34DuplexFAX(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4134   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_v34DuplexFAX);
4135 }
4136 static int dissect_v34H324(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4137   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_v34H324);
4138 }
4139 static int dissect_v140(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4140   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_v140);
4141 }
4142 static int dissect_terminalOnHold(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4143   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_terminalOnHold);
4144 }
4145 static int dissect_cancelMakeTerminalBroadcaster(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4146   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_cancelMakeTerminalBroadcaster);
4147 }
4148 static int dissect_cancelSendThisSource(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4149   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_cancelSendThisSource);
4150 }
4151 static int dissect_dropConference(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4152   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_dropConference);
4153 }
4154 static int dissect_masterToSlave(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4155   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_masterToSlave);
4156 }
4157 static int dissect_slaveToMaster(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4158   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_slaveToMaster);
4159 }
4160 static int dissect_equaliseDelay(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4161   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_equaliseDelay);
4162 }
4163 static int dissect_zeroDelay(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4164   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_zeroDelay);
4165 }
4166 static int dissect_multipointModeCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4167   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_multipointModeCommand);
4168 }
4169 static int dissect_cancelMultipointModeCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4170   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_cancelMultipointModeCommand);
4171 }
4172 static int dissect_videoFreezePicture(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4173   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_videoFreezePicture);
4174 }
4175 static int dissect_videoFastUpdatePicture(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4176   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_videoFastUpdatePicture);
4177 }
4178 static int dissect_videoSendSyncEveryGOB(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4179   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_videoSendSyncEveryGOB);
4180 }
4181 static int dissect_videoSendSyncEveryGOBCancel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4182   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_videoSendSyncEveryGOBCancel);
4183 }
4184 static int dissect_switchReceiveMediaOff(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4185   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_switchReceiveMediaOff);
4186 }
4187 static int dissect_switchReceiveMediaOn(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4188   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_switchReceiveMediaOn);
4189 }
4190 static int dissect_progressiveRefinementAbortOne(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4191   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_progressiveRefinementAbortOne);
4192 }
4193 static int dissect_progressiveRefinementAbortContinuous(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4194   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_progressiveRefinementAbortContinuous);
4195 }
4196 static int dissect_doOneProgression(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4197   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_doOneProgression);
4198 }
4199 static int dissect_doContinuousProgressions(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4200   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_doContinuousProgressions);
4201 }
4202 static int dissect_doOneIndependentProgression(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4203   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_doOneIndependentProgression);
4204 }
4205 static int dissect_doContinuousIndependentProgressions(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4206   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_doContinuousIndependentProgressions);
4207 }
4208 static int dissect_toLevel0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4209   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_toLevel0);
4210 }
4211 static int dissect_toLevel1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4212   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_toLevel1);
4213 }
4214 static int dissect_toLevel2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4215   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_toLevel2);
4216 }
4217 static int dissect_toLevel2withOptionalHeader(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4218   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_toLevel2withOptionalHeader);
4219 }
4220 static int dissect_start(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4221   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_start);
4222 }
4223 static int dissect_stop(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4224   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_stop);
4225 }
4226 static int dissect_nullClockRecoveryflag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4227   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_nullClockRecoveryflag);
4228 }
4229 static int dissect_srtsClockRecovery(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4230   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_srtsClockRecovery);
4231 }
4232 static int dissect_adaptiveClockRecoveryFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4233   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_adaptiveClockRecoveryFlag);
4234 }
4235 static int dissect_nullErrorCorrectionFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4236   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_nullErrorCorrectionFlag);
4237 }
4238 static int dissect_longInterleaverFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4239   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_longInterleaverFlag);
4240 }
4241 static int dissect_shortInterleaverFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4242   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_shortInterleaverFlag);
4243 }
4244 static int dissect_errorCorrectionOnlyFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4245   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_errorCorrectionOnlyFlag);
4246 }
4247 static int dissect_noMultiplex(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4248   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_noMultiplex);
4249 }
4250 static int dissect_transportStream(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4251   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_transportStream);
4252 }
4253 static int dissect_programStreamFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4254   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_programStreamFlag);
4255 }
4256 static int dissect_synchronized(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4257   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_synchronized);
4258 }
4259 static int dissect_reconfiguration(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4260   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_reconfiguration);
4261 }
4262 static int dissect_syntaxError(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4263   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_syntaxError);
4264 }
4265 static int dissect_semanticError(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4266   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_semanticError);
4267 }
4268 static int dissect_unknownFunction(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4269   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_unknownFunction);
4270 }
4271 static int dissect_seenByAtLeastOneOther(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4272   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_seenByAtLeastOneOther);
4273 }
4274 static int dissect_cancelSeenByAtLeastOneOther(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4275   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_cancelSeenByAtLeastOneOther);
4276 }
4277 static int dissect_seenByAll(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4278   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_seenByAll);
4279 }
4280 static int dissect_cancelSeenByAll(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4281   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_cancelSeenByAll);
4282 }
4283 static int dissect_requestForFloor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4284   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_requestForFloor);
4285 }
4286 static int dissect_withdrawChairToken(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4287   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_withdrawChairToken);
4288 }
4289 static int dissect_logicalChannelActive(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4290   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_logicalChannelActive);
4291 }
4292 static int dissect_logicalChannelInactive(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4293   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_logicalChannelInactive);
4294 }
4295 static int dissect_multipointConference(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4296   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_multipointConference);
4297 }
4298 static int dissect_cancelMultipointConference(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4299   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_cancelMultipointConference);
4300 }
4301 static int dissect_multipointZeroComm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4302   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_multipointZeroComm);
4303 }
4304 static int dissect_cancelMultipointZeroComm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4305   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_cancelMultipointZeroComm);
4306 }
4307 static int dissect_multipointSecondaryStatus(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4308   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_multipointSecondaryStatus);
4309 }
4310 static int dissect_cancelMultipointSecondaryStatus(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4311   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_cancelMultipointSecondaryStatus);
4312 }
4313 static int dissect_videoIndicateReadyToActivate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4314   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_videoIndicateReadyToActivate);
4315 }
4316 static int dissect_rtpPayloadIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4317   return dissect_h245_NULL(tvb, offset, pinfo, tree, hf_h245_rtpPayloadIndication);
4318 }
4319
4320
4321
4322 static int
4323 dissect_h245_INTEGER_1_15(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4324   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
4325                                            1U, 15U, NULL, NULL, FALSE);
4326
4327   return offset;
4328 }
4329 static int dissect_maximumNestingDepth(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4330   return dissect_h245_INTEGER_1_15(tvb, offset, pinfo, tree, hf_h245_maximumNestingDepth);
4331 }
4332
4333
4334
4335 static int
4336 dissect_h245_INTEGER_2_255(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4337   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
4338                                            2U, 255U, NULL, NULL, FALSE);
4339
4340   return offset;
4341 }
4342 static int dissect_maximumElementListSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4343   return dissect_h245_INTEGER_2_255(tvb, offset, pinfo, tree, hf_h245_maximumElementListSize);
4344 }
4345 static int dissect_maximumSubElementListSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4346   return dissect_h245_INTEGER_2_255(tvb, offset, pinfo, tree, hf_h245_maximumSubElementListSize);
4347 }
4348
4349 static const per_sequence_t T_enhanced_sequence[] = {
4350   { "maximumNestingDepth"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumNestingDepth },
4351   { "maximumElementListSize"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumElementListSize },
4352   { "maximumSubElementListSize"   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumSubElementListSize },
4353   { NULL, 0, 0, NULL }
4354 };
4355
4356 static int
4357 dissect_h245_T_enhanced(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4358   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
4359                                 ett_h245_T_enhanced, T_enhanced_sequence);
4360
4361   return offset;
4362 }
4363 static int dissect_enhanced(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4364   return dissect_h245_T_enhanced(tvb, offset, pinfo, tree, hf_h245_enhanced);
4365 }
4366
4367
4368 static const value_string h245_T_h223MultiplexTableCapability_vals[] = {
4369   {   0, "basic" },
4370   {   1, "enhanced" },
4371   { 0, NULL }
4372 };
4373
4374 static const per_choice_t T_h223MultiplexTableCapability_choice[] = {
4375   {   0, "basic"                       , ASN1_NO_EXTENSIONS     , dissect_basic },
4376   {   1, "enhanced"                    , ASN1_NO_EXTENSIONS     , dissect_enhanced },
4377   { 0, NULL, 0, NULL }
4378 };
4379
4380 static int
4381 dissect_h245_T_h223MultiplexTableCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4382   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
4383                               ett_h245_T_h223MultiplexTableCapability, T_h223MultiplexTableCapability_choice, "T_h223MultiplexTableCapability",
4384                               NULL);
4385
4386   return offset;
4387 }
4388 static int dissect_h223MultiplexTableCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4389   return dissect_h245_T_h223MultiplexTableCapability(tvb, offset, pinfo, tree, hf_h245_h223MultiplexTableCapability);
4390 }
4391
4392 static const per_sequence_t T_mobileOperationTransmitCapability_sequence[] = {
4393   { "modeChangeCapability"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_modeChangeCapability },
4394   { "h223AnnexA"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h223AnnexA },
4395   { "h223AnnexADoubleFlag"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h223AnnexADoubleFlagFlag },
4396   { "h223AnnexB"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h223AnnexB },
4397   { "h223AnnexBwithHeader"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h223AnnexBwithHeader },
4398   { NULL, 0, 0, NULL }
4399 };
4400
4401 static int
4402 dissect_h245_T_mobileOperationTransmitCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4403   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
4404                                 ett_h245_T_mobileOperationTransmitCapability, T_mobileOperationTransmitCapability_sequence);
4405
4406   return offset;
4407 }
4408 static int dissect_mobileOperationTransmitCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4409   return dissect_h245_T_mobileOperationTransmitCapability(tvb, offset, pinfo, tree, hf_h245_mobileOperationTransmitCapability);
4410 }
4411
4412 static const per_sequence_t H223AnnexCCapability_sequence[] = {
4413   { "videoWithAL1M"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_videoWithAL1M },
4414   { "videoWithAL2M"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_videoWithAL2M },
4415   { "videoWithAL3M"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_videoWithAL3M },
4416   { "audioWithAL1M"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioWithAL1M },
4417   { "audioWithAL2M"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioWithAL2M },
4418   { "audioWithAL3M"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioWithAL3M },
4419   { "dataWithAL1M"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dataWithAL1M },
4420   { "dataWithAL2M"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dataWithAL2M },
4421   { "dataWithAL3M"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dataWithAL3M },
4422   { "alpduInterleaving"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_alpduInterleaving },
4423   { "maximumAL1MPDUSize"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumAL1MPDUSize },
4424   { "maximumAL2MSDUSize"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumAL2MSDUSize },
4425   { "maximumAL3MSDUSize"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumAL3MSDUSize },
4426   { "rsCodeCapability"            , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rsCodeCapability },
4427   { NULL, 0, 0, NULL }
4428 };
4429
4430 static int
4431 dissect_h245_H223AnnexCCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4432   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
4433                                 ett_h245_H223AnnexCCapability, H223AnnexCCapability_sequence);
4434
4435   return offset;
4436 }
4437 static int dissect_h223AnnexCCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4438   return dissect_h245_H223AnnexCCapability(tvb, offset, pinfo, tree, hf_h245_h223AnnexCCapability);
4439 }
4440
4441
4442
4443 static int
4444 dissect_h245_INTEGER_1_19200(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4445   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
4446                                            1U, 19200U, NULL, NULL, FALSE);
4447
4448   return offset;
4449 }
4450 static int dissect_bitRate_1_19200(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4451   return dissect_h245_INTEGER_1_19200(tvb, offset, pinfo, tree, hf_h245_bitRate_1_19200);
4452 }
4453 static int dissect_maxBitRate_1_19200(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4454   return dissect_h245_INTEGER_1_19200(tvb, offset, pinfo, tree, hf_h245_maxBitRate_1_19200);
4455 }
4456
4457
4458
4459 static int
4460 dissect_h245_INTEGER_1_255(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4461   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
4462                                            1U, 255U, NULL, NULL, FALSE);
4463
4464   return offset;
4465 }
4466 static int dissect_maximumSampleSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4467   return dissect_h245_INTEGER_1_255(tvb, offset, pinfo, tree, hf_h245_maximumSampleSize);
4468 }
4469 static int dissect_scale_x(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4470   return dissect_h245_INTEGER_1_255(tvb, offset, pinfo, tree, hf_h245_scale_x);
4471 }
4472 static int dissect_scale_y(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4473   return dissect_h245_INTEGER_1_255(tvb, offset, pinfo, tree, hf_h245_scale_y);
4474 }
4475 static int dissect_width(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4476   return dissect_h245_INTEGER_1_255(tvb, offset, pinfo, tree, hf_h245_width);
4477 }
4478 static int dissect_height(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4479   return dissect_h245_INTEGER_1_255(tvb, offset, pinfo, tree, hf_h245_height);
4480 }
4481 static int dissect_associatedSessionID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4482   return dissect_h245_INTEGER_1_255(tvb, offset, pinfo, tree, hf_h245_associatedSessionID);
4483 }
4484 static int dissect_protectedSessionID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4485   return dissect_h245_INTEGER_1_255(tvb, offset, pinfo, tree, hf_h245_protectedSessionID);
4486 }
4487 static int dissect_sessionID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4488   return dissect_h245_INTEGER_1_255(tvb, offset, pinfo, tree, hf_h245_sessionID);
4489 }
4490 static int dissect_sessionDependency(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4491   return dissect_h245_INTEGER_1_255(tvb, offset, pinfo, tree, hf_h245_sessionDependency);
4492 }
4493 static int dissect_sampleSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4494   return dissect_h245_INTEGER_1_255(tvb, offset, pinfo, tree, hf_h245_sampleSize);
4495 }
4496 static int dissect_samplesPerFrame(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4497   return dissect_h245_INTEGER_1_255(tvb, offset, pinfo, tree, hf_h245_samplesPerFrame);
4498 }
4499
4500
4501
4502 static int
4503 dissect_h245_INTEGER_1_65025(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4504   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
4505                                            1U, 65025U, NULL, NULL, FALSE);
4506
4507   return offset;
4508 }
4509 static int dissect_maximumPayloadLength(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4510   return dissect_h245_INTEGER_1_65025(tvb, offset, pinfo, tree, hf_h245_maximumPayloadLength);
4511 }
4512
4513 static const per_sequence_t T_mobileMultilinkFrameCapability_sequence[] = {
4514   { "maximumSampleSize"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumSampleSize },
4515   { "maximumPayloadLength"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumPayloadLength },
4516   { NULL, 0, 0, NULL }
4517 };
4518
4519 static int
4520 dissect_h245_T_mobileMultilinkFrameCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4521   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
4522                                 ett_h245_T_mobileMultilinkFrameCapability, T_mobileMultilinkFrameCapability_sequence);
4523
4524   return offset;
4525 }
4526 static int dissect_mobileMultilinkFrameCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4527   return dissect_h245_T_mobileMultilinkFrameCapability(tvb, offset, pinfo, tree, hf_h245_mobileMultilinkFrameCapability);
4528 }
4529
4530 static const per_sequence_t H223Capability_sequence[] = {
4531   { "transportWithI-frames"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_transportWithI_frames },
4532   { "videoWithAL1"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_videoWithAL1 },
4533   { "videoWithAL2"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_videoWithAL2 },
4534   { "videoWithAL3"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_videoWithAL3 },
4535   { "audioWithAL1"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioWithAL1 },
4536   { "audioWithAL2"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioWithAL2 },
4537   { "audioWithAL3"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioWithAL3 },
4538   { "dataWithAL1"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dataWithAL1 },
4539   { "dataWithAL2"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dataWithAL2 },
4540   { "dataWithAL3"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dataWithAL3 },
4541   { "maximumAl2SDUSize"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumAl2SDUSize },
4542   { "maximumAl3SDUSize"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumAl3SDUSize },
4543   { "maximumDelayJitter"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumDelayJitter },
4544   { "h223MultiplexTableCapability", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h223MultiplexTableCapability },
4545   { "maxMUXPDUSizeCapability"     , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_maxMUXPDUSizeCapability },
4546   { "nsrpSupport"                 , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nsrpSupport },
4547   { "mobileOperationTransmitCapability", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_mobileOperationTransmitCapability },
4548   { "h223AnnexCCapability"        , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h223AnnexCCapability },
4549   { "bitRate"                     , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_bitRate_1_19200 },
4550   { "mobileMultilinkFrameCapability", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_mobileMultilinkFrameCapability },
4551   { NULL, 0, 0, NULL }
4552 };
4553
4554 static int
4555 dissect_h245_H223Capability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4556   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
4557                                 ett_h245_H223Capability, H223Capability_sequence);
4558
4559   return offset;
4560 }
4561 static int dissect_h223Capability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4562   return dissect_h245_H223Capability(tvb, offset, pinfo, tree, hf_h245_h223Capability);
4563 }
4564
4565
4566
4567 static int
4568 dissect_h245_INTEGER_2_8191(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4569   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
4570                                            2U, 8191U, NULL, NULL, FALSE);
4571
4572   return offset;
4573 }
4574 static int dissect_numOfDLCS(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4575   return dissect_h245_INTEGER_2_8191(tvb, offset, pinfo, tree, hf_h245_numOfDLCS);
4576 }
4577
4578
4579
4580 static int
4581 dissect_h245_INTEGER_1_4095(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4582   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
4583                                            1U, 4095U, NULL, NULL, FALSE);
4584
4585   return offset;
4586 }
4587 static int dissect_n401Capability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4588   return dissect_h245_INTEGER_1_4095(tvb, offset, pinfo, tree, hf_h245_n401Capability);
4589 }
4590 static int dissect_n401(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4591   return dissect_h245_INTEGER_1_4095(tvb, offset, pinfo, tree, hf_h245_n401);
4592 }
4593
4594
4595
4596 static int
4597 dissect_h245_INTEGER_1_127(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4598   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
4599                                            1U, 127U, NULL, NULL, FALSE);
4600
4601   return offset;
4602 }
4603 static int dissect_maxWindowSizeCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4604   return dissect_h245_INTEGER_1_127(tvb, offset, pinfo, tree, hf_h245_maxWindowSizeCapability);
4605 }
4606 static int dissect_clockDivisor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4607   return dissect_h245_INTEGER_1_127(tvb, offset, pinfo, tree, hf_h245_clockDivisor);
4608 }
4609 static int dissect_windowSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4610   return dissect_h245_INTEGER_1_127(tvb, offset, pinfo, tree, hf_h245_windowSize);
4611 }
4612
4613 static const per_sequence_t V75Capability_sequence[] = {
4614   { "audioHeader"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioHeader },
4615   { NULL, 0, 0, NULL }
4616 };
4617
4618 static int
4619 dissect_h245_V75Capability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4620   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
4621                                 ett_h245_V75Capability, V75Capability_sequence);
4622
4623   return offset;
4624 }
4625 static int dissect_v75Capability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4626   return dissect_h245_V75Capability(tvb, offset, pinfo, tree, hf_h245_v75Capability);
4627 }
4628
4629 static const per_sequence_t V76Capability_sequence[] = {
4630   { "suspendResumeCapabilitywAddress", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_suspendResumeCapabilitywAddress },
4631   { "suspendResumeCapabilitywoAddress", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_suspendResumeCapabilitywoAddress },
4632   { "rejCapability"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rejCapability },
4633   { "sREJCapability"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sREJCapability },
4634   { "mREJCapability"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mREJCapability },
4635   { "crc8bitCapability"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_crc8bitCapability },
4636   { "crc16bitCapability"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_crc16bitCapability },
4637   { "crc32bitCapability"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_crc32bitCapability },
4638   { "uihCapability"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_uihCapability },
4639   { "numOfDLCS"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_numOfDLCS },
4640   { "twoOctetAddressFieldCapability", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_twoOctetAddressFieldCapability },
4641   { "loopBackTestCapability"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_loopBackTestCapability },
4642   { "n401Capability"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_n401Capability },
4643   { "maxWindowSizeCapability"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maxWindowSizeCapability },
4644   { "v75Capability"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_v75Capability },
4645   { NULL, 0, 0, NULL }
4646 };
4647
4648 static int
4649 dissect_h245_V76Capability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4650   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
4651                                 ett_h245_V76Capability, V76Capability_sequence);
4652
4653   return offset;
4654 }
4655 static int dissect_v76Capability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4656   return dissect_h245_V76Capability(tvb, offset, pinfo, tree, hf_h245_v76Capability);
4657 }
4658
4659
4660
4661 static int
4662 dissect_h245_INTEGER_1_65536(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4663   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
4664                                            1U, 65536U, NULL, NULL, FALSE);
4665
4666   return offset;
4667 }
4668 static int dissect_mpuTotalNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4669   return dissect_h245_INTEGER_1_65536(tvb, offset, pinfo, tree, hf_h245_mpuTotalNumber);
4670 }
4671 static int dissect_numberOfCodewords(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4672   return dissect_h245_INTEGER_1_65536(tvb, offset, pinfo, tree, hf_h245_numberOfCodewords);
4673 }
4674
4675 static const per_sequence_t V42bis_sequence[] = {
4676   { "numberOfCodewords"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_numberOfCodewords },
4677   { "maximumStringLength"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumStringLength },
4678   { NULL, 0, 0, NULL }
4679 };
4680
4681 static int
4682 dissect_h245_V42bis(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4683   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
4684                                 ett_h245_V42bis, V42bis_sequence);
4685
4686   return offset;
4687 }
4688 static int dissect_v42bis(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4689   return dissect_h245_V42bis(tvb, offset, pinfo, tree, hf_h245_v42bis);
4690 }
4691
4692
4693 static const value_string h245_CompressionType_vals[] = {
4694   {   0, "v42bis" },
4695   { 0, NULL }
4696 };
4697
4698 static const per_choice_t CompressionType_choice[] = {
4699   {   0, "v42bis"                      , ASN1_EXTENSION_ROOT    , dissect_v42bis },
4700   { 0, NULL, 0, NULL }
4701 };
4702
4703 static int
4704 dissect_h245_CompressionType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4705   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
4706                               ett_h245_CompressionType, CompressionType_choice, "CompressionType",
4707                               NULL);
4708
4709   return offset;
4710 }
4711 static int dissect_transmitCompression(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4712   return dissect_h245_CompressionType(tvb, offset, pinfo, tree, hf_h245_transmitCompression);
4713 }
4714 static int dissect_receiveCompression(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4715   return dissect_h245_CompressionType(tvb, offset, pinfo, tree, hf_h245_receiveCompression);
4716 }
4717 static int dissect_transmitAndReceiveCompression(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4718   return dissect_h245_CompressionType(tvb, offset, pinfo, tree, hf_h245_transmitAndReceiveCompression);
4719 }
4720
4721
4722 static const value_string h245_T_v76wCompression_vals[] = {
4723   {   0, "transmitCompression" },
4724   {   1, "receiveCompression" },
4725   {   2, "transmitAndReceiveCompression" },
4726   { 0, NULL }
4727 };
4728
4729 static const per_choice_t T_v76wCompression_choice[] = {
4730   {   0, "transmitCompression"         , ASN1_EXTENSION_ROOT    , dissect_transmitCompression },
4731   {   1, "receiveCompression"          , ASN1_EXTENSION_ROOT    , dissect_receiveCompression },
4732   {   2, "transmitAndReceiveCompression", ASN1_EXTENSION_ROOT    , dissect_transmitAndReceiveCompression },
4733   { 0, NULL, 0, NULL }
4734 };
4735
4736 static int
4737 dissect_h245_T_v76wCompression(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4738   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
4739                               ett_h245_T_v76wCompression, T_v76wCompression_choice, "T_v76wCompression",
4740                               NULL);
4741
4742   return offset;
4743 }
4744 static int dissect_v76wCompression(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4745   return dissect_h245_T_v76wCompression(tvb, offset, pinfo, tree, hf_h245_v76wCompression);
4746 }
4747
4748
4749 const value_string DataProtocolCapability_vals[] = {
4750   {   0, "nonStandard" },
4751   {   1, "v14buffered" },
4752   {   2, "v42lapm" },
4753   {   3, "hdlcFrameTunnelling" },
4754   {   4, "h310SeparateVCStack" },
4755   {   5, "h310SingleVCStack" },
4756   {   6, "transparent" },
4757   {   7, "segmentationAndReassembly" },
4758   {   8, "hdlcFrameTunnelingwSAR" },
4759   {   9, "v120" },
4760   {  10, "separateLANStack" },
4761   {  11, "v76wCompression" },
4762   {  12, "tcp" },
4763   {  13, "udp" },
4764   { 0, NULL }
4765 };
4766
4767 static const per_choice_t DataProtocolCapability_choice[] = {
4768   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
4769   {   1, "v14buffered"                 , ASN1_EXTENSION_ROOT    , dissect_v14buffered },
4770   {   2, "v42lapm"                     , ASN1_EXTENSION_ROOT    , dissect_v42lapm },
4771   {   3, "hdlcFrameTunnelling"         , ASN1_EXTENSION_ROOT    , dissect_hdlcFrameTunnelling },
4772   {   4, "h310SeparateVCStack"         , ASN1_EXTENSION_ROOT    , dissect_h310SeparateVCStack },
4773   {   5, "h310SingleVCStack"           , ASN1_EXTENSION_ROOT    , dissect_h310SingleVCStack },
4774   {   6, "transparent"                 , ASN1_EXTENSION_ROOT    , dissect_transparent },
4775   {   7, "segmentationAndReassembly"   , ASN1_NOT_EXTENSION_ROOT, dissect_segmentationAndReassembly },
4776   {   8, "hdlcFrameTunnelingwSAR"      , ASN1_NOT_EXTENSION_ROOT, dissect_hdlcFrameTunnelingwSAR },
4777   {   9, "v120"                        , ASN1_NOT_EXTENSION_ROOT, dissect_v120 },
4778   {  10, "separateLANStack"            , ASN1_NOT_EXTENSION_ROOT, dissect_separateLANStack },
4779   {  11, "v76wCompression"             , ASN1_NOT_EXTENSION_ROOT, dissect_v76wCompression },
4780   {  12, "tcp"                         , ASN1_NOT_EXTENSION_ROOT, dissect_tcp },
4781   {  13, "udp"                         , ASN1_NOT_EXTENSION_ROOT, dissect_udp },
4782   { 0, NULL, 0, NULL }
4783 };
4784
4785 int
4786 dissect_h245_DataProtocolCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4787   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
4788                               ett_h245_DataProtocolCapability, DataProtocolCapability_choice, "DataProtocolCapability",
4789                               NULL);
4790
4791   return offset;
4792 }
4793 static int dissect_t120(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4794   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_t120);
4795 }
4796 static int dissect_dsm_cc(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4797   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_dsm_cc);
4798 }
4799 static int dissect_userData(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4800   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_userData);
4801 }
4802 static int dissect_t84Protocol(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4803   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_t84Protocol);
4804 }
4805 static int dissect_t434(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4806   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_t434);
4807 }
4808 static int dissect_h224(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4809   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_h224);
4810 }
4811 static int dissect_h222DataPartitioning(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4812   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_h222DataPartitioning);
4813 }
4814 static int dissect_t30fax(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4815   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_t30fax);
4816 }
4817 static int dissect_t140(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4818   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_t140);
4819 }
4820 static int dissect_t38FaxProtocol(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4821   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_t38FaxProtocol);
4822 }
4823 static int dissect_nlpidProtocol(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4824   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_nlpidProtocol);
4825 }
4826 static int dissect_transport(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4827   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_transport);
4828 }
4829 static int dissect_t84DataProtocolCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4830   return dissect_h245_DataProtocolCapability(tvb, offset, pinfo, tree, hf_h245_t84DataProtocolCapability);
4831 }
4832
4833 static const per_sequence_t T_t84Restricted_sequence[] = {
4834   { "qcif"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_qcif_bool },
4835   { "cif"                         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_cif_bool },
4836   { "ccir601Seq"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_ccir601Seq },
4837   { "ccir601Prog"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_ccir601Prog },
4838   { "hdtvSeq"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_hdtvSeq },
4839   { "hdtvProg"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_hdtvProg },
4840   { "g3FacsMH200x100"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_g3FacsMH200x100 },
4841   { "g3FacsMH200x200"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_g3FacsMH200x200 },
4842   { "g4FacsMMR200x100"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_g4FacsMMR200x100 },
4843   { "g4FacsMMR200x200"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_g4FacsMMR200x200 },
4844   { "jbig200x200Seq"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_jbig200x200Seq },
4845   { "jbig200x200Prog"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_jbig200x200Prog },
4846   { "jbig300x300Seq"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_jbig300x300Seq },
4847   { "jbig300x300Prog"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_jbig300x300Prog },
4848   { "digPhotoLow"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_digPhotoLow },
4849   { "digPhotoMedSeq"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_digPhotoMedSeq },
4850   { "digPhotoMedProg"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_digPhotoMedProg },
4851   { "digPhotoHighSeq"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_digPhotoHighSeq },
4852   { "digPhotoHighProg"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_digPhotoHighProg },
4853   { NULL, 0, 0, NULL }
4854 };
4855
4856 static int
4857 dissect_h245_T_t84Restricted(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4858   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
4859                                 ett_h245_T_t84Restricted, T_t84Restricted_sequence);
4860
4861   return offset;
4862 }
4863 static int dissect_t84Restricted(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4864   return dissect_h245_T_t84Restricted(tvb, offset, pinfo, tree, hf_h245_t84Restricted);
4865 }
4866
4867
4868 static const value_string h245_T84Profile_vals[] = {
4869   {   0, "t84Unrestricted" },
4870   {   1, "t84Restricted" },
4871   { 0, NULL }
4872 };
4873
4874 static const per_choice_t T84Profile_choice[] = {
4875   {   0, "t84Unrestricted"             , ASN1_NO_EXTENSIONS     , dissect_t84Unrestricted },
4876   {   1, "t84Restricted"               , ASN1_NO_EXTENSIONS     , dissect_t84Restricted },
4877   { 0, NULL, 0, NULL }
4878 };
4879
4880 static int
4881 dissect_h245_T84Profile(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4882   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
4883                               ett_h245_T84Profile, T84Profile_choice, "T84Profile",
4884                               NULL);
4885
4886   return offset;
4887 }
4888 static int dissect_t84Profile(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4889   return dissect_h245_T84Profile(tvb, offset, pinfo, tree, hf_h245_t84Profile);
4890 }
4891
4892 static const per_sequence_t T_t84_sequence[] = {
4893   { "t84Protocol"                 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_t84Protocol },
4894   { "t84Profile"                  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_t84Profile },
4895   { NULL, 0, 0, NULL }
4896 };
4897
4898 static int
4899 dissect_h245_T_t84(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4900   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
4901                                 ett_h245_T_t84, T_t84_sequence);
4902
4903   return offset;
4904 }
4905 static int dissect_t84(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4906   return dissect_h245_T_t84(tvb, offset, pinfo, tree, hf_h245_t84);
4907 }
4908
4909 static const per_sequence_t Nlpid_sequence[] = {
4910   { "nlpidProtocol"               , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nlpidProtocol },
4911   { "nlpidData"                   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nlpidData },
4912   { NULL, 0, 0, NULL }
4913 };
4914
4915 static int
4916 dissect_h245_Nlpid(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4917   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
4918                                 ett_h245_Nlpid, Nlpid_sequence);
4919
4920   return offset;
4921 }
4922 static int dissect_nlpid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4923   return dissect_h245_Nlpid(tvb, offset, pinfo, tree, hf_h245_nlpid);
4924 }
4925
4926
4927 static const value_string h245_T38FaxRateManagement_vals[] = {
4928   {   0, "localTCF" },
4929   {   1, "transferredTCF" },
4930   { 0, NULL }
4931 };
4932
4933 static const per_choice_t T38FaxRateManagement_choice[] = {
4934   {   0, "localTCF"                    , ASN1_EXTENSION_ROOT    , dissect_localTCF },
4935   {   1, "transferredTCF"              , ASN1_EXTENSION_ROOT    , dissect_transferredTCF },
4936   { 0, NULL, 0, NULL }
4937 };
4938
4939 static int
4940 dissect_h245_T38FaxRateManagement(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4941   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
4942                               ett_h245_T38FaxRateManagement, T38FaxRateManagement_choice, "T38FaxRateManagement",
4943                               NULL);
4944
4945   return offset;
4946 }
4947 static int dissect_t38FaxRateManagement(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4948   return dissect_h245_T38FaxRateManagement(tvb, offset, pinfo, tree, hf_h245_t38FaxRateManagement);
4949 }
4950
4951
4952
4953 static int
4954 dissect_h245_INTEGER(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4955   offset = dissect_per_integer(tvb, offset, pinfo, tree, hf_index,
4956                                NULL, NULL);
4957
4958   return offset;
4959 }
4960 static int dissect_t38FaxMaxBuffer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4961   return dissect_h245_INTEGER(tvb, offset, pinfo, tree, hf_h245_t38FaxMaxBuffer);
4962 }
4963 static int dissect_t38FaxMaxDatagram(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4964   return dissect_h245_INTEGER(tvb, offset, pinfo, tree, hf_h245_t38FaxMaxDatagram);
4965 }
4966
4967
4968 static const value_string h245_T_t38FaxUdpEC_vals[] = {
4969   {   0, "t38UDPFEC" },
4970   {   1, "t38UDPRedundancy" },
4971   { 0, NULL }
4972 };
4973
4974 static const per_choice_t T_t38FaxUdpEC_choice[] = {
4975   {   0, "t38UDPFEC"                   , ASN1_EXTENSION_ROOT    , dissect_t38UDPFEC },
4976   {   1, "t38UDPRedundancy"            , ASN1_EXTENSION_ROOT    , dissect_t38UDPRedundancy },
4977   { 0, NULL, 0, NULL }
4978 };
4979
4980 static int
4981 dissect_h245_T_t38FaxUdpEC(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
4982   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
4983                               ett_h245_T_t38FaxUdpEC, T_t38FaxUdpEC_choice, "T_t38FaxUdpEC",
4984                               NULL);
4985
4986   return offset;
4987 }
4988 static int dissect_t38FaxUdpEC(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
4989   return dissect_h245_T_t38FaxUdpEC(tvb, offset, pinfo, tree, hf_h245_t38FaxUdpEC);
4990 }
4991
4992 static const per_sequence_t T38FaxUdpOptions_sequence[] = {
4993   { "t38FaxMaxBuffer"             , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_t38FaxMaxBuffer },
4994   { "t38FaxMaxDatagram"           , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_t38FaxMaxDatagram },
4995   { "t38FaxUdpEC"                 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_t38FaxUdpEC },
4996   { NULL, 0, 0, NULL }
4997 };
4998
4999 static int
5000 dissect_h245_T38FaxUdpOptions(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5001   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5002                                 ett_h245_T38FaxUdpOptions, T38FaxUdpOptions_sequence);
5003
5004   return offset;
5005 }
5006 static int dissect_t38FaxUdpOptions(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5007   return dissect_h245_T38FaxUdpOptions(tvb, offset, pinfo, tree, hf_h245_t38FaxUdpOptions);
5008 }
5009
5010 static const per_sequence_t T38FaxTcpOptions_sequence[] = {
5011   { "t38TCPBidirectionalMode"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_t38TCPBidirectionalMode },
5012   { NULL, 0, 0, NULL }
5013 };
5014
5015 static int
5016 dissect_h245_T38FaxTcpOptions(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5017   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5018                                 ett_h245_T38FaxTcpOptions, T38FaxTcpOptions_sequence);
5019
5020   return offset;
5021 }
5022 static int dissect_t38FaxTcpOptions(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5023   return dissect_h245_T38FaxTcpOptions(tvb, offset, pinfo, tree, hf_h245_t38FaxTcpOptions);
5024 }
5025
5026 static const per_sequence_t T38FaxProfile_sequence[] = {
5027   { "fillBitRemoval"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_fillBitRemoval },
5028   { "transcodingJBIG"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_transcodingJBIG },
5029   { "transcodingMMR"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_transcodingMMR },
5030   { "version"                     , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_version },
5031   { "t38FaxRateManagement"        , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_t38FaxRateManagement },
5032   { "t38FaxUdpOptions"            , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_t38FaxUdpOptions },
5033   { "t38FaxTcpOptions"            , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_t38FaxTcpOptions },
5034   { NULL, 0, 0, NULL }
5035 };
5036
5037 int
5038 dissect_h245_T38FaxProfile(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5039   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5040                                 ett_h245_T38FaxProfile, T38FaxProfile_sequence);
5041
5042   return offset;
5043 }
5044 static int dissect_t38FaxProfile(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5045   return dissect_h245_T38FaxProfile(tvb, offset, pinfo, tree, hf_h245_t38FaxProfile);
5046 }
5047
5048 static const per_sequence_t T_t38fax_sequence[] = {
5049   { "t38FaxProtocol"              , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_t38FaxProtocol },
5050   { "t38FaxProfile"               , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_t38FaxProfile },
5051   { NULL, 0, 0, NULL }
5052 };
5053
5054 static int
5055 dissect_h245_T_t38fax(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5056   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5057                                 ett_h245_T_t38fax, T_t38fax_sequence);
5058
5059   return offset;
5060 }
5061 static int dissect_t38fax(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5062   return dissect_h245_T_t38fax(tvb, offset, pinfo, tree, hf_h245_t38fax);
5063 }
5064
5065
5066 static int
5067 dissect_h245_T_standard(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5068   offset = dissect_per_object_identifier(tvb, offset, pinfo, tree, hf_index,
5069                                          standard_oid_str);
5070
5071
5072   return offset;
5073 }
5074 static int dissect_standardOid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5075   return dissect_h245_T_standard(tvb, offset, pinfo, tree, hf_h245_standardOid);
5076 }
5077
5078
5079 static int
5080 dissect_h245_OCTET_STRING_SIZE_16(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5081   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
5082                                     16, 16,
5083                                     NULL, NULL);
5084
5085   return offset;
5086 }
5087 static int dissect_uuid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5088   return dissect_h245_OCTET_STRING_SIZE_16(tvb, offset, pinfo, tree, hf_h245_uuid);
5089 }
5090 static int dissect_ip6_network(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5091   return dissect_h245_OCTET_STRING_SIZE_16(tvb, offset, pinfo, tree, hf_h245_ip6_network);
5092 }
5093 static int dissect_netBios(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5094   return dissect_h245_OCTET_STRING_SIZE_16(tvb, offset, pinfo, tree, hf_h245_netBios);
5095 }
5096 static int dissect_mip6_network(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5097   return dissect_h245_OCTET_STRING_SIZE_16(tvb, offset, pinfo, tree, hf_h245_mip6_network);
5098 }
5099 static int dissect_conferenceIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5100   return dissect_h245_OCTET_STRING_SIZE_16(tvb, offset, pinfo, tree, hf_h245_conferenceIdentifier);
5101 }
5102
5103
5104 static int
5105 dissect_h245_IA5String_SIZE_1_64(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5106   offset = dissect_per_IA5String(tvb, offset, pinfo, tree, hf_index,
5107                                  1, 64);
5108
5109   return offset;
5110 }
5111 static int dissect_domainBased(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5112   return dissect_h245_IA5String_SIZE_1_64(tvb, offset, pinfo, tree, hf_h245_domainBased);
5113 }
5114
5115
5116 static const value_string h245_CapabilityIdentifier_vals[] = {
5117   {   0, "standard" },
5118   {   1, "h221NonStandard" },
5119   {   2, "uuid" },
5120   {   3, "domainBased" },
5121   { 0, NULL }
5122 };
5123
5124 static const per_choice_t CapabilityIdentifier_choice[] = {
5125   {   0, "standard"                    , ASN1_EXTENSION_ROOT    , dissect_standardOid },
5126   {   1, "h221NonStandard"             , ASN1_EXTENSION_ROOT    , dissect_h221NonStandard },
5127   {   2, "uuid"                        , ASN1_EXTENSION_ROOT    , dissect_uuid },
5128   {   3, "domainBased"                 , ASN1_EXTENSION_ROOT    , dissect_domainBased },
5129   { 0, NULL, 0, NULL }
5130 };
5131
5132 static int
5133 dissect_h245_CapabilityIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5134   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
5135                               ett_h245_CapabilityIdentifier, CapabilityIdentifier_choice, "CapabilityIdentifier",
5136                               NULL);
5137
5138   return offset;
5139 }
5140 static int dissect_messageIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5141   return dissect_h245_CapabilityIdentifier(tvb, offset, pinfo, tree, hf_h245_messageIdentifier);
5142 }
5143 static int dissect_capabilityIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5144   return dissect_h245_CapabilityIdentifier(tvb, offset, pinfo, tree, hf_h245_capabilityIdentifier);
5145 }
5146
5147
5148
5149 static int
5150 dissect_h245_INTEGER_0_4294967295(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5151   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
5152                                            0U, 4294967295U, NULL, NULL, FALSE);
5153
5154   return offset;
5155 }
5156 static int dissect_luminanceSampleRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5157   return dissect_h245_INTEGER_0_4294967295(tvb, offset, pinfo, tree, hf_h245_luminanceSampleRate);
5158 }
5159 static int dissect_maxBitRate2_0_4294967295(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5160   return dissect_h245_INTEGER_0_4294967295(tvb, offset, pinfo, tree, hf_h245_maxBitRate2_0_4294967295);
5161 }
5162 static int dissect_unsigned32Min(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5163   return dissect_h245_INTEGER_0_4294967295(tvb, offset, pinfo, tree, hf_h245_unsigned32Min);
5164 }
5165 static int dissect_unsigned32Max(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5166   return dissect_h245_INTEGER_0_4294967295(tvb, offset, pinfo, tree, hf_h245_unsigned32Max);
5167 }
5168 static int dissect_bitRate_0_4294967295(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5169   return dissect_h245_INTEGER_0_4294967295(tvb, offset, pinfo, tree, hf_h245_bitRate_0_4294967295);
5170 }
5171 static int dissect_callAssociationNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5172   return dissect_h245_INTEGER_0_4294967295(tvb, offset, pinfo, tree, hf_h245_callAssociationNumber);
5173 }
5174 static int dissect_channelTag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5175   return dissect_h245_INTEGER_0_4294967295(tvb, offset, pinfo, tree, hf_h245_channelTag);
5176 }
5177 static int dissect_sequenceNum(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5178   return dissect_h245_INTEGER_0_4294967295(tvb, offset, pinfo, tree, hf_h245_sequenceNum);
5179 }
5180 static int dissect_timestamp(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5181   return dissect_h245_INTEGER_0_4294967295(tvb, offset, pinfo, tree, hf_h245_timestamp);
5182 }
5183 static int dissect_expirationTime(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5184   return dissect_h245_INTEGER_0_4294967295(tvb, offset, pinfo, tree, hf_h245_expirationTime);
5185 }
5186
5187
5188
5189 static int
5190 dissect_h245_INTEGER_0_127(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5191   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
5192                                            0U, 127U, NULL, NULL, FALSE);
5193
5194   return offset;
5195 }
5196 static int dissect_standard(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5197   return dissect_h245_INTEGER_0_127(tvb, offset, pinfo, tree, hf_h245_standard);
5198 }
5199 static int dissect_rsCodeCorrection(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5200   return dissect_h245_INTEGER_0_127(tvb, offset, pinfo, tree, hf_h245_rsCodeCorrection);
5201 }
5202 static int dissect_payloadType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5203   return dissect_h245_INTEGER_0_127(tvb, offset, pinfo, tree, hf_h245_payloadType);
5204 }
5205 static int dissect_protectedPayloadType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5206   return dissect_h245_INTEGER_0_127(tvb, offset, pinfo, tree, hf_h245_protectedPayloadType);
5207 }
5208
5209
5210 static const value_string h245_ParameterIdentifier_vals[] = {
5211   {   0, "standard" },
5212   {   1, "h221NonStandard" },
5213   {   2, "uuid" },
5214   {   3, "domainBased" },
5215   { 0, NULL }
5216 };
5217
5218 static const per_choice_t ParameterIdentifier_choice[] = {
5219   {   0, "standard"                    , ASN1_EXTENSION_ROOT    , dissect_standard },
5220   {   1, "h221NonStandard"             , ASN1_EXTENSION_ROOT    , dissect_h221NonStandard },
5221   {   2, "uuid"                        , ASN1_EXTENSION_ROOT    , dissect_uuid },
5222   {   3, "domainBased"                 , ASN1_EXTENSION_ROOT    , dissect_domainBased },
5223   { 0, NULL, 0, NULL }
5224 };
5225
5226 static int
5227 dissect_h245_ParameterIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5228   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
5229                               ett_h245_ParameterIdentifier, ParameterIdentifier_choice, "ParameterIdentifier",
5230                               NULL);
5231
5232   return offset;
5233 }
5234 static int dissect_parameterIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5235   return dissect_h245_ParameterIdentifier(tvb, offset, pinfo, tree, hf_h245_parameterIdentifier);
5236 }
5237 static int dissect_supersedes_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5238   return dissect_h245_ParameterIdentifier(tvb, offset, pinfo, tree, hf_h245_supersedes_item);
5239 }
5240
5241
5242 static int
5243 dissect_h245_SEQUNCE_OF_GenericParameter(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5244   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
5245                                    ett_h245_SEQUNCE_OF_GenericParameter, dissect_messageContent_item);
5246
5247   return offset;
5248 }
5249 static int dissect_messageContent(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5250   return dissect_h245_SEQUNCE_OF_GenericParameter(tvb, offset, pinfo, tree, hf_h245_messageContent);
5251 }
5252 static int dissect_collapsing(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5253   return dissect_h245_SEQUNCE_OF_GenericParameter(tvb, offset, pinfo, tree, hf_h245_collapsing);
5254 }
5255 static int dissect_nonCollapsing(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5256   return dissect_h245_SEQUNCE_OF_GenericParameter(tvb, offset, pinfo, tree, hf_h245_nonCollapsing);
5257 }
5258 static int dissect_genericParameter(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5259   return dissect_h245_SEQUNCE_OF_GenericParameter(tvb, offset, pinfo, tree, hf_h245_genericParameter);
5260 }
5261
5262
5263 static const value_string h245_ParameterValue_vals[] = {
5264   {   0, "logical" },
5265   {   1, "booleanArray" },
5266   {   2, "unsignedMin" },
5267   {   3, "unsignedMax" },
5268   {   4, "unsigned32Min" },
5269   {   5, "unsigned32Max" },
5270   {   6, "octetString" },
5271   {   7, "genericParameter" },
5272   { 0, NULL }
5273 };
5274
5275 static const per_choice_t ParameterValue_choice[] = {
5276   {   0, "logical"                     , ASN1_EXTENSION_ROOT    , dissect_logical },
5277   {   1, "booleanArray"                , ASN1_EXTENSION_ROOT    , dissect_booleanArray },
5278   {   2, "unsignedMin"                 , ASN1_EXTENSION_ROOT    , dissect_unsignedMin },
5279   {   3, "unsignedMax"                 , ASN1_EXTENSION_ROOT    , dissect_unsignedMax },
5280   {   4, "unsigned32Min"               , ASN1_EXTENSION_ROOT    , dissect_unsigned32Min },
5281   {   5, "unsigned32Max"               , ASN1_EXTENSION_ROOT    , dissect_unsigned32Max },
5282   {   6, "octetString"                 , ASN1_EXTENSION_ROOT    , dissect_octetString },
5283   {   7, "genericParameter"            , ASN1_EXTENSION_ROOT    , dissect_genericParameter },
5284   { 0, NULL, 0, NULL }
5285 };
5286
5287 static int
5288 dissect_h245_ParameterValue(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5289   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
5290                               ett_h245_ParameterValue, ParameterValue_choice, "ParameterValue",
5291                               NULL);
5292
5293   return offset;
5294 }
5295 static int dissect_parameterValue(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5296   return dissect_h245_ParameterValue(tvb, offset, pinfo, tree, hf_h245_parameterValue);
5297 }
5298
5299
5300 static int
5301 dissect_h245_SEQUNCE_OF_ParameterIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5302   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
5303                                    ett_h245_SEQUNCE_OF_ParameterIdentifier, dissect_supersedes_item);
5304
5305   return offset;
5306 }
5307 static int dissect_supersedes(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5308   return dissect_h245_SEQUNCE_OF_ParameterIdentifier(tvb, offset, pinfo, tree, hf_h245_supersedes);
5309 }
5310
5311 static const per_sequence_t GenericParameter_sequence[] = {
5312   { "parameterIdentifier"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_parameterIdentifier },
5313   { "parameterValue"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_parameterValue },
5314   { "supersedes"                  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_supersedes },
5315   { NULL, 0, 0, NULL }
5316 };
5317
5318 static int
5319 dissect_h245_GenericParameter(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5320   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5321                                 ett_h245_GenericParameter, GenericParameter_sequence);
5322
5323   return offset;
5324 }
5325
5326 static const per_sequence_t GenericCapability_sequence[] = {
5327   { "capabilityIdentifier"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_capabilityIdentifier },
5328   { "maxBitRate"                  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_maxBitRate2_0_4294967295 },
5329   { "collapsing"                  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_collapsing },
5330   { "nonCollapsing"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nonCollapsing },
5331   { "nonCollapsingRaw"            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nonCollapsingRaw },
5332   { "transport"                   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_transport },
5333   { NULL, 0, 0, NULL }
5334 };
5335
5336 static int
5337 dissect_h245_GenericCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5338   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5339                                 ett_h245_GenericCapability, GenericCapability_sequence);
5340
5341   return offset;
5342 }
5343 static int dissect_genericControlCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5344   return dissect_h245_GenericCapability(tvb, offset, pinfo, tree, hf_h245_genericControlCapability);
5345 }
5346 static int dissect_genericMultiplexCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5347   return dissect_h245_GenericCapability(tvb, offset, pinfo, tree, hf_h245_genericMultiplexCapability);
5348 }
5349 static int dissect_genericVideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5350   return dissect_h245_GenericCapability(tvb, offset, pinfo, tree, hf_h245_genericVideoCapability);
5351 }
5352 static int dissect_videoCapabilityExtension_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5353   return dissect_h245_GenericCapability(tvb, offset, pinfo, tree, hf_h245_videoCapabilityExtension_item);
5354 }
5355 static int dissect_genericAudioCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5356   return dissect_h245_GenericCapability(tvb, offset, pinfo, tree, hf_h245_genericAudioCapability);
5357 }
5358 static int dissect_genericDataCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5359   return dissect_h245_GenericCapability(tvb, offset, pinfo, tree, hf_h245_genericDataCapability);
5360 }
5361 static int dissect_genericModeParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5362   return dissect_h245_GenericCapability(tvb, offset, pinfo, tree, hf_h245_genericModeParameters);
5363 }
5364 static int dissect_genericVideoMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5365   return dissect_h245_GenericCapability(tvb, offset, pinfo, tree, hf_h245_genericVideoMode);
5366 }
5367 static int dissect_genericAudioMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5368   return dissect_h245_GenericCapability(tvb, offset, pinfo, tree, hf_h245_genericAudioMode);
5369 }
5370 static int dissect_genericDataMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5371   return dissect_h245_GenericCapability(tvb, offset, pinfo, tree, hf_h245_genericDataMode);
5372 }
5373
5374
5375 static const value_string h245_Application_vals[] = {
5376   {   0, "nonStandard" },
5377   {   1, "t120" },
5378   {   2, "dsm-cc" },
5379   {   3, "userData" },
5380   {   4, "t84" },
5381   {   5, "t434" },
5382   {   6, "h224" },
5383   {   7, "nlpid" },
5384   {   8, "dsvdControl" },
5385   {   9, "h222DataPartitioning" },
5386   {  10, "t30fax" },
5387   {  11, "t140" },
5388   {  12, "t38fax" },
5389   {  13, "genericDataCapability" },
5390   { 0, NULL }
5391 };
5392
5393 static const per_choice_t Application_choice[] = {
5394   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
5395   {   1, "t120"                        , ASN1_EXTENSION_ROOT    , dissect_t120 },
5396   {   2, "dsm-cc"                      , ASN1_EXTENSION_ROOT    , dissect_dsm_cc },
5397   {   3, "userData"                    , ASN1_EXTENSION_ROOT    , dissect_userData },
5398   {   4, "t84"                         , ASN1_EXTENSION_ROOT    , dissect_t84 },
5399   {   5, "t434"                        , ASN1_EXTENSION_ROOT    , dissect_t434 },
5400   {   6, "h224"                        , ASN1_EXTENSION_ROOT    , dissect_h224 },
5401   {   7, "nlpid"                       , ASN1_EXTENSION_ROOT    , dissect_nlpid },
5402   {   8, "dsvdControl"                 , ASN1_EXTENSION_ROOT    , dissect_dsvdControl },
5403   {   9, "h222DataPartitioning"        , ASN1_EXTENSION_ROOT    , dissect_h222DataPartitioning },
5404   {  10, "t30fax"                      , ASN1_NOT_EXTENSION_ROOT, dissect_t30fax },
5405   {  11, "t140"                        , ASN1_NOT_EXTENSION_ROOT, dissect_t140 },
5406   {  12, "t38fax"                      , ASN1_NOT_EXTENSION_ROOT, dissect_t38fax },
5407   {  13, "genericDataCapability"       , ASN1_NOT_EXTENSION_ROOT, dissect_genericDataCapability },
5408   { 0, NULL, 0, NULL }
5409 };
5410
5411 static int
5412 dissect_h245_Application(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5413   guint32 value;
5414
5415   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
5416                               ett_h245_Application, Application_choice, "Application",
5417                               &value);
5418
5419         codec_type = val_to_str(value, h245_Application_vals, "<unknown>");
5420
5421   return offset;
5422 }
5423 static int dissect_application(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5424   return dissect_h245_Application(tvb, offset, pinfo, tree, hf_h245_application);
5425 }
5426
5427 static const per_sequence_t DataApplicationCapability_sequence[] = {
5428   { "application"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_application },
5429   { "maxBitRate"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maxBitRate2_0_4294967295 },
5430   { NULL, 0, 0, NULL }
5431 };
5432
5433 static int
5434 dissect_h245_DataApplicationCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5435   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5436                                 ett_h245_DataApplicationCapability, DataApplicationCapability_sequence);
5437
5438   return offset;
5439 }
5440 static int dissect_receiveDataApplicationCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5441   return dissect_h245_DataApplicationCapability(tvb, offset, pinfo, tree, hf_h245_receiveDataApplicationCapability);
5442 }
5443 static int dissect_transmitDataApplicationCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5444   return dissect_h245_DataApplicationCapability(tvb, offset, pinfo, tree, hf_h245_transmitDataApplicationCapability);
5445 }
5446 static int dissect_receiveAndTransmitDataApplicationCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5447   return dissect_h245_DataApplicationCapability(tvb, offset, pinfo, tree, hf_h245_receiveAndTransmitDataApplicationCapability);
5448 }
5449 static int dissect_centralizedData_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5450   return dissect_h245_DataApplicationCapability(tvb, offset, pinfo, tree, hf_h245_centralizedData_item);
5451 }
5452 static int dissect_distributedData_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5453   return dissect_h245_DataApplicationCapability(tvb, offset, pinfo, tree, hf_h245_distributedData_item);
5454 }
5455 static int dissect_data(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5456   return dissect_h245_DataApplicationCapability(tvb, offset, pinfo, tree, hf_h245_data);
5457 }
5458
5459
5460 static int
5461 dissect_h245_SEQUNCE_OF_DataApplicationCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5462   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
5463                                    ett_h245_SEQUNCE_OF_DataApplicationCapability, dissect_centralizedData_item);
5464
5465   return offset;
5466 }
5467 static int dissect_centralizedData(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5468   return dissect_h245_SEQUNCE_OF_DataApplicationCapability(tvb, offset, pinfo, tree, hf_h245_centralizedData);
5469 }
5470 static int dissect_distributedData(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5471   return dissect_h245_SEQUNCE_OF_DataApplicationCapability(tvb, offset, pinfo, tree, hf_h245_distributedData);
5472 }
5473
5474 static const per_sequence_t MediaDistributionCapability_sequence[] = {
5475   { "centralizedControl"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_centralizedControl },
5476   { "distributedControl"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_distributedControl },
5477   { "centralizedAudio"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_centralizedAudio },
5478   { "distributedAudio"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_distributedAudio },
5479   { "centralizedVideo"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_centralizedVideo },
5480   { "distributedVideo"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_distributedVideo },
5481   { "centralizedData"             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_centralizedData },
5482   { "distributedData"             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_distributedData },
5483   { NULL, 0, 0, NULL }
5484 };
5485
5486 static int
5487 dissect_h245_MediaDistributionCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5488   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5489                                 ett_h245_MediaDistributionCapability, MediaDistributionCapability_sequence);
5490
5491   return offset;
5492 }
5493 static int dissect_mediaDistributionCapability_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5494   return dissect_h245_MediaDistributionCapability(tvb, offset, pinfo, tree, hf_h245_mediaDistributionCapability_item);
5495 }
5496
5497
5498 static int
5499 dissect_h245_SEQUNCE_OF_MediaDistributionCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5500   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
5501                                    ett_h245_SEQUNCE_OF_MediaDistributionCapability, dissect_mediaDistributionCapability_item);
5502
5503   return offset;
5504 }
5505 static int dissect_mediaDistributionCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5506   return dissect_h245_SEQUNCE_OF_MediaDistributionCapability(tvb, offset, pinfo, tree, hf_h245_mediaDistributionCapability);
5507 }
5508
5509 static const per_sequence_t MultipointCapability_sequence[] = {
5510   { "multicastCapability"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multicastCapability },
5511   { "multiUniCastConference"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multiUniCastConference },
5512   { "mediaDistributionCapability" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mediaDistributionCapability },
5513   { NULL, 0, 0, NULL }
5514 };
5515
5516 static int
5517 dissect_h245_MultipointCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5518   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5519                                 ett_h245_MultipointCapability, MultipointCapability_sequence);
5520
5521   return offset;
5522 }
5523 static int dissect_receiveMultipointCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5524   return dissect_h245_MultipointCapability(tvb, offset, pinfo, tree, hf_h245_receiveMultipointCapability);
5525 }
5526 static int dissect_transmitMultipointCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5527   return dissect_h245_MultipointCapability(tvb, offset, pinfo, tree, hf_h245_transmitMultipointCapability);
5528 }
5529 static int dissect_receiveAndTransmitMultipointCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5530   return dissect_h245_MultipointCapability(tvb, offset, pinfo, tree, hf_h245_receiveAndTransmitMultipointCapability);
5531 }
5532
5533 static const per_sequence_t T_mcCapability_sequence[] = {
5534   { "centralizedConferenceMC"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_centralizedConferenceMC },
5535   { "decentralizedConferenceMC"   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_decentralizedConferenceMC },
5536   { NULL, 0, 0, NULL }
5537 };
5538
5539 static int
5540 dissect_h245_T_mcCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5541   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5542                                 ett_h245_T_mcCapability, T_mcCapability_sequence);
5543
5544   return offset;
5545 }
5546 static int dissect_mcCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5547   return dissect_h245_T_mcCapability(tvb, offset, pinfo, tree, hf_h245_mcCapability);
5548 }
5549
5550
5551
5552 static int
5553 dissect_h245_INTEGER_1_32768_(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5554   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
5555                                            1U, 32768U, NULL, NULL, TRUE);
5556
5557   return offset;
5558 }
5559 static int dissect_rfc_number(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5560   return dissect_h245_INTEGER_1_32768_(tvb, offset, pinfo, tree, hf_h245_rfc_number);
5561 }
5562
5563
5564 static const value_string h245_T_payloadDescriptor_vals[] = {
5565   {   0, "nonStandardIdentifier" },
5566   {   1, "rfc-number" },
5567   {   2, "oid" },
5568   { 0, NULL }
5569 };
5570
5571 static const per_choice_t T_payloadDescriptor_choice[] = {
5572   {   0, "nonStandardIdentifier"       , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
5573   {   1, "rfc-number"                  , ASN1_EXTENSION_ROOT    , dissect_rfc_number },
5574   {   2, "oid"                         , ASN1_EXTENSION_ROOT    , dissect_oid },
5575   { 0, NULL, 0, NULL }
5576 };
5577
5578 static int
5579 dissect_h245_T_payloadDescriptor(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5580   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
5581                               ett_h245_T_payloadDescriptor, T_payloadDescriptor_choice, "T_payloadDescriptor",
5582                               NULL);
5583
5584   return offset;
5585 }
5586 static int dissect_payloadDescriptor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5587   return dissect_h245_T_payloadDescriptor(tvb, offset, pinfo, tree, hf_h245_payloadDescriptor);
5588 }
5589
5590 static const per_sequence_t RTPPayloadType_sequence[] = {
5591   { "payloadDescriptor"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_payloadDescriptor },
5592   { "payloadType"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_payloadType },
5593   { NULL, 0, 0, NULL }
5594 };
5595
5596 static int
5597 dissect_h245_RTPPayloadType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5598   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5599                                 ett_h245_RTPPayloadType, RTPPayloadType_sequence);
5600
5601   return offset;
5602 }
5603 static int dissect_rtpPayloadType2_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5604   return dissect_h245_RTPPayloadType(tvb, offset, pinfo, tree, hf_h245_rtpPayloadType2_item);
5605 }
5606 static int dissect_rtpPayloadType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5607   return dissect_h245_RTPPayloadType(tvb, offset, pinfo, tree, hf_h245_rtpPayloadType);
5608 }
5609
5610
5611 static int
5612 dissect_h245_SEQUNCE_SIZE_1_256_OF_RTPPayloadType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5613   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
5614                                                ett_h245_SEQUNCE_SIZE_1_256_OF_RTPPayloadType, dissect_rtpPayloadType2_item,
5615                                                1, 256);
5616
5617   return offset;
5618 }
5619 static int dissect_rtpPayloadType2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5620   return dissect_h245_SEQUNCE_SIZE_1_256_OF_RTPPayloadType(tvb, offset, pinfo, tree, hf_h245_rtpPayloadType2);
5621 }
5622
5623 static const per_sequence_t MediaPacketizationCapability_sequence[] = {
5624   { "h261aVideoPacketization"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h261aVideoPacketization },
5625   { "rtpPayloadType2"             , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rtpPayloadType2 },
5626   { NULL, 0, 0, NULL }
5627 };
5628
5629 static int
5630 dissect_h245_MediaPacketizationCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5631   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5632                                 ett_h245_MediaPacketizationCapability, MediaPacketizationCapability_sequence);
5633
5634   return offset;
5635 }
5636 static int dissect_mediaPacketizationCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5637   return dissect_h245_MediaPacketizationCapability(tvb, offset, pinfo, tree, hf_h245_mediaPacketizationCapability);
5638 }
5639
5640
5641 static const value_string h245_QOSMode_vals[] = {
5642   {   0, "guaranteedQOS" },
5643   {   1, "controlledLoad" },
5644   { 0, NULL }
5645 };
5646
5647 static const per_choice_t QOSMode_choice[] = {
5648   {   0, "guaranteedQOS"               , ASN1_EXTENSION_ROOT    , dissect_guaranteedQOS },
5649   {   1, "controlledLoad"              , ASN1_EXTENSION_ROOT    , dissect_controlledLoad },
5650   { 0, NULL, 0, NULL }
5651 };
5652
5653 static int
5654 dissect_h245_QOSMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5655   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
5656                               ett_h245_QOSMode, QOSMode_choice, "QOSMode",
5657                               NULL);
5658
5659   return offset;
5660 }
5661 static int dissect_qosMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5662   return dissect_h245_QOSMode(tvb, offset, pinfo, tree, hf_h245_qosMode);
5663 }
5664
5665
5666
5667 static int
5668 dissect_h245_INTEGER_1_4294967295(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5669   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
5670                                            1U, 4294967295U, NULL, NULL, FALSE);
5671
5672   return offset;
5673 }
5674 static int dissect_tokenRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5675   return dissect_h245_INTEGER_1_4294967295(tvb, offset, pinfo, tree, hf_h245_tokenRate);
5676 }
5677 static int dissect_bucketSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5678   return dissect_h245_INTEGER_1_4294967295(tvb, offset, pinfo, tree, hf_h245_bucketSize);
5679 }
5680 static int dissect_peakRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5681   return dissect_h245_INTEGER_1_4294967295(tvb, offset, pinfo, tree, hf_h245_peakRate);
5682 }
5683 static int dissect_minPoliced(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5684   return dissect_h245_INTEGER_1_4294967295(tvb, offset, pinfo, tree, hf_h245_minPoliced);
5685 }
5686 static int dissect_maxPktSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5687   return dissect_h245_INTEGER_1_4294967295(tvb, offset, pinfo, tree, hf_h245_maxPktSize);
5688 }
5689 static int dissect_sRandom(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5690   return dissect_h245_INTEGER_1_4294967295(tvb, offset, pinfo, tree, hf_h245_sRandom);
5691 }
5692
5693 static const per_sequence_t RSVPParameters_sequence[] = {
5694   { "qosMode"                     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_qosMode },
5695   { "tokenRate"                   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_tokenRate },
5696   { "bucketSize"                  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_bucketSize },
5697   { "peakRate"                    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_peakRate },
5698   { "minPoliced"                  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_minPoliced },
5699   { "maxPktSize"                  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_maxPktSize },
5700   { NULL, 0, 0, NULL }
5701 };
5702
5703 static int
5704 dissect_h245_RSVPParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5705   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5706                                 ett_h245_RSVPParameters, RSVPParameters_sequence);
5707
5708   return offset;
5709 }
5710 static int dissect_rsvpParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5711   return dissect_h245_RSVPParameters(tvb, offset, pinfo, tree, hf_h245_rsvpParameters);
5712 }
5713
5714 static const per_sequence_t ATMParameters_sequence[] = {
5715   { "maxNTUSize"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maxNTUSize },
5716   { "atmUBR"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_atmUBR },
5717   { "atmrtVBR"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_atmrtVBR },
5718   { "atmnrtVBR"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_atmnrtVBR },
5719   { "atmABR"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_atmABR },
5720   { "atmCBR"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_atmCBR },
5721   { NULL, 0, 0, NULL }
5722 };
5723
5724 static int
5725 dissect_h245_ATMParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5726   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5727                                 ett_h245_ATMParameters, ATMParameters_sequence);
5728
5729   return offset;
5730 }
5731 static int dissect_atmParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5732   return dissect_h245_ATMParameters(tvb, offset, pinfo, tree, hf_h245_atmParameters);
5733 }
5734
5735 static const per_sequence_t QOSCapability_sequence[] = {
5736   { "nonStandardData"             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nonStandardData },
5737   { "rsvpParameters"              , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rsvpParameters },
5738   { "atmParameters"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_atmParameters },
5739   { NULL, 0, 0, NULL }
5740 };
5741
5742 static int
5743 dissect_h245_QOSCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5744   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5745                                 ett_h245_QOSCapability, QOSCapability_sequence);
5746
5747   return offset;
5748 }
5749 static int dissect_qOSCapabilities_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5750   return dissect_h245_QOSCapability(tvb, offset, pinfo, tree, hf_h245_qOSCapabilities_item);
5751 }
5752 static int dissect_qosCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5753   return dissect_h245_QOSCapability(tvb, offset, pinfo, tree, hf_h245_qosCapability);
5754 }
5755
5756
5757 static int
5758 dissect_h245_SEQUNCE_SIZE_1_256_OF_QOSCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5759   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
5760                                                ett_h245_SEQUNCE_SIZE_1_256_OF_QOSCapability, dissect_qOSCapabilities_item,
5761                                                1, 256);
5762
5763   return offset;
5764 }
5765 static int dissect_qOSCapabilities(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5766   return dissect_h245_SEQUNCE_SIZE_1_256_OF_QOSCapability(tvb, offset, pinfo, tree, hf_h245_qOSCapabilities);
5767 }
5768
5769 static const per_sequence_t T_atm_AAL5_compressed_sequence[] = {
5770   { "variable-delta"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_variable_delta },
5771   { NULL, 0, 0, NULL }
5772 };
5773
5774 static int
5775 dissect_h245_T_atm_AAL5_compressed(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5776   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5777                                 ett_h245_T_atm_AAL5_compressed, T_atm_AAL5_compressed_sequence);
5778
5779   return offset;
5780 }
5781 static int dissect_atm_AAL5_compressed(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5782   return dissect_h245_T_atm_AAL5_compressed(tvb, offset, pinfo, tree, hf_h245_atm_AAL5_compressed);
5783 }
5784
5785
5786 static const value_string h245_MediaTransportType_vals[] = {
5787   {   0, "ip-UDP" },
5788   {   1, "ip-TCP" },
5789   {   2, "atm-AAL5-UNIDIR" },
5790   {   3, "atm-AAL5-BIDIR" },
5791   {   4, "atm-AAL5-compressed" },
5792   { 0, NULL }
5793 };
5794
5795 static const per_choice_t MediaTransportType_choice[] = {
5796   {   0, "ip-UDP"                      , ASN1_EXTENSION_ROOT    , dissect_ip_UDP },
5797   {   1, "ip-TCP"                      , ASN1_EXTENSION_ROOT    , dissect_ip_TCP },
5798   {   2, "atm-AAL5-UNIDIR"             , ASN1_EXTENSION_ROOT    , dissect_atm_AAL5_UNIDIR },
5799   {   3, "atm-AAL5-BIDIR"              , ASN1_EXTENSION_ROOT    , dissect_atm_AAL5_BIDIR },
5800   {   4, "atm-AAL5-compressed"         , ASN1_NOT_EXTENSION_ROOT, dissect_atm_AAL5_compressed },
5801   { 0, NULL, 0, NULL }
5802 };
5803
5804 static int
5805 dissect_h245_MediaTransportType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5806   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
5807                               ett_h245_MediaTransportType, MediaTransportType_choice, "MediaTransportType",
5808                               NULL);
5809
5810   return offset;
5811 }
5812 static int dissect_mediaTransport(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5813   return dissect_h245_MediaTransportType(tvb, offset, pinfo, tree, hf_h245_mediaTransport);
5814 }
5815
5816 static const per_sequence_t MediaChannelCapability_sequence[] = {
5817   { "mediaTransport"              , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_mediaTransport },
5818   { NULL, 0, 0, NULL }
5819 };
5820
5821 static int
5822 dissect_h245_MediaChannelCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5823   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5824                                 ett_h245_MediaChannelCapability, MediaChannelCapability_sequence);
5825
5826   return offset;
5827 }
5828 static int dissect_mediaChannelCapabilities_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5829   return dissect_h245_MediaChannelCapability(tvb, offset, pinfo, tree, hf_h245_mediaChannelCapabilities_item);
5830 }
5831
5832
5833 static int
5834 dissect_h245_SEQUNCE_SIZE_1_256_OF_MediaChannelCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5835   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
5836                                                ett_h245_SEQUNCE_SIZE_1_256_OF_MediaChannelCapability, dissect_mediaChannelCapabilities_item,
5837                                                1, 256);
5838
5839   return offset;
5840 }
5841 static int dissect_mediaChannelCapabilities(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5842   return dissect_h245_SEQUNCE_SIZE_1_256_OF_MediaChannelCapability(tvb, offset, pinfo, tree, hf_h245_mediaChannelCapabilities);
5843 }
5844
5845 static const per_sequence_t TransportCapability_sequence[] = {
5846   { "nonStandard"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nonStandard },
5847   { "qOSCapabilities"             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_qOSCapabilities },
5848   { "mediaChannelCapabilities"    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_mediaChannelCapabilities },
5849   { NULL, 0, 0, NULL }
5850 };
5851
5852 static int
5853 dissect_h245_TransportCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5854   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5855                                 ett_h245_TransportCapability, TransportCapability_sequence);
5856
5857   return offset;
5858 }
5859 static int dissect_transportCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5860   return dissect_h245_TransportCapability(tvb, offset, pinfo, tree, hf_h245_transportCapability);
5861 }
5862
5863
5864
5865 static int
5866 dissect_h245_INTEGER_1_16(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5867   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
5868                                            1U, 16U, NULL, NULL, FALSE);
5869
5870   return offset;
5871 }
5872 static int dissect_numberOfThreads(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5873   return dissect_h245_INTEGER_1_16(tvb, offset, pinfo, tree, hf_h245_numberOfThreads);
5874 }
5875
5876
5877
5878 static int
5879 dissect_h245_INTEGER_0_15(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5880   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
5881                                            0U, 15U, NULL, NULL, FALSE);
5882
5883   return offset;
5884 }
5885 static int dissect_containedThreads_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5886   return dissect_h245_INTEGER_0_15(tvb, offset, pinfo, tree, hf_h245_containedThreads_item);
5887 }
5888 static int dissect_threadNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5889   return dissect_h245_INTEGER_0_15(tvb, offset, pinfo, tree, hf_h245_threadNumber);
5890 }
5891 static int dissect_framesPerSecond(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5892   return dissect_h245_INTEGER_0_15(tvb, offset, pinfo, tree, hf_h245_framesPerSecond);
5893 }
5894 static int dissect_pictureRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5895   return dissect_h245_INTEGER_0_15(tvb, offset, pinfo, tree, hf_h245_pictureRate);
5896 }
5897 static int dissect_skippedFrameCount(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5898   return dissect_h245_INTEGER_0_15(tvb, offset, pinfo, tree, hf_h245_skippedFrameCount);
5899 }
5900
5901
5902 static int
5903 dissect_h245_SEQUNCE_SIZE_1_256_OF_INTEGER_0_255(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5904   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
5905                                                ett_h245_SEQUNCE_SIZE_1_256_OF_INTEGER_0_255, dissect_frameSequence_item,
5906                                                1, 256);
5907
5908   return offset;
5909 }
5910 static int dissect_frameSequence(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5911   return dissect_h245_SEQUNCE_SIZE_1_256_OF_INTEGER_0_255(tvb, offset, pinfo, tree, hf_h245_frameSequence);
5912 }
5913
5914 static const per_sequence_t RTPH263VideoRedundancyFrameMapping_sequence[] = {
5915   { "threadNumber"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_threadNumber },
5916   { "frameSequence"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_frameSequence },
5917   { NULL, 0, 0, NULL }
5918 };
5919
5920 static int
5921 dissect_h245_RTPH263VideoRedundancyFrameMapping(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5922   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5923                                 ett_h245_RTPH263VideoRedundancyFrameMapping, RTPH263VideoRedundancyFrameMapping_sequence);
5924
5925   return offset;
5926 }
5927 static int dissect_custom_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5928   return dissect_h245_RTPH263VideoRedundancyFrameMapping(tvb, offset, pinfo, tree, hf_h245_custom_item);
5929 }
5930
5931
5932 static int
5933 dissect_h245_SEQUNCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5934   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
5935                                                ett_h245_SEQUNCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping, dissect_custom_item,
5936                                                1, 256);
5937
5938   return offset;
5939 }
5940 static int dissect_custom(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5941   return dissect_h245_SEQUNCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping(tvb, offset, pinfo, tree, hf_h245_custom);
5942 }
5943
5944
5945 static const value_string h245_T_frameToThreadMapping_vals[] = {
5946   {   0, "roundrobin" },
5947   {   1, "custom" },
5948   { 0, NULL }
5949 };
5950
5951 static const per_choice_t T_frameToThreadMapping_choice[] = {
5952   {   0, "roundrobin"                  , ASN1_EXTENSION_ROOT    , dissect_roundrobin },
5953   {   1, "custom"                      , ASN1_EXTENSION_ROOT    , dissect_custom },
5954   { 0, NULL, 0, NULL }
5955 };
5956
5957 static int
5958 dissect_h245_T_frameToThreadMapping(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5959   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
5960                               ett_h245_T_frameToThreadMapping, T_frameToThreadMapping_choice, "T_frameToThreadMapping",
5961                               NULL);
5962
5963   return offset;
5964 }
5965 static int dissect_frameToThreadMapping(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5966   return dissect_h245_T_frameToThreadMapping(tvb, offset, pinfo, tree, hf_h245_frameToThreadMapping);
5967 }
5968
5969
5970 static int
5971 dissect_h245_SEQUNCE_SIZE_1_256_OF_INTEGER_0_15(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5972   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
5973                                                ett_h245_SEQUNCE_SIZE_1_256_OF_INTEGER_0_15, dissect_containedThreads_item,
5974                                                1, 256);
5975
5976   return offset;
5977 }
5978 static int dissect_containedThreads(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5979   return dissect_h245_SEQUNCE_SIZE_1_256_OF_INTEGER_0_15(tvb, offset, pinfo, tree, hf_h245_containedThreads);
5980 }
5981
5982 static const per_sequence_t RTPH263VideoRedundancyEncoding_sequence[] = {
5983   { "numberOfThreads"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_numberOfThreads },
5984   { "framesBetweenSyncPoints"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_framesBetweenSyncPoints },
5985   { "frameToThreadMapping"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_frameToThreadMapping },
5986   { "containedThreads"            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_containedThreads },
5987   { NULL, 0, 0, NULL }
5988 };
5989
5990 static int
5991 dissect_h245_RTPH263VideoRedundancyEncoding(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
5992   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
5993                                 ett_h245_RTPH263VideoRedundancyEncoding, RTPH263VideoRedundancyEncoding_sequence);
5994
5995   return offset;
5996 }
5997 static int dissect_rtpH263VideoRedundancyEncoding(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
5998   return dissect_h245_RTPH263VideoRedundancyEncoding(tvb, offset, pinfo, tree, hf_h245_rtpH263VideoRedundancyEncoding);
5999 }
6000
6001
6002 static const value_string h245_RedundancyEncodingMethod_vals[] = {
6003   {   0, "nonStandard" },
6004   {   1, "rtpAudioRedundancyEncoding" },
6005   {   2, "rtpH263VideoRedundancyEncoding" },
6006   { 0, NULL }
6007 };
6008
6009 static const per_choice_t RedundancyEncodingMethod_choice[] = {
6010   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
6011   {   1, "rtpAudioRedundancyEncoding"  , ASN1_EXTENSION_ROOT    , dissect_rtpAudioRedundancyEncoding },
6012   {   2, "rtpH263VideoRedundancyEncoding", ASN1_NOT_EXTENSION_ROOT, dissect_rtpH263VideoRedundancyEncoding },
6013   { 0, NULL, 0, NULL }
6014 };
6015
6016 static int
6017 dissect_h245_RedundancyEncodingMethod(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6018   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
6019                               ett_h245_RedundancyEncodingMethod, RedundancyEncodingMethod_choice, "RedundancyEncodingMethod",
6020                               NULL);
6021
6022   return offset;
6023 }
6024 static int dissect_redundancyEncodingMethod(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6025   return dissect_h245_RedundancyEncodingMethod(tvb, offset, pinfo, tree, hf_h245_redundancyEncodingMethod);
6026 }
6027
6028
6029
6030 static int
6031 dissect_h245_CapabilityTableEntryNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6032   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6033                                            1U, 65535U, NULL, NULL, FALSE);
6034
6035   return offset;
6036 }
6037 static int dissect_capabilityTableEntryNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6038   return dissect_h245_CapabilityTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_capabilityTableEntryNumber);
6039 }
6040 static int dissect_AlternativeCapabilitySet_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6041   return dissect_h245_CapabilityTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_AlternativeCapabilitySet_item);
6042 }
6043 static int dissect_highestEntryNumberProcessed(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6044   return dissect_h245_CapabilityTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_highestEntryNumberProcessed);
6045 }
6046 static int dissect_mediaCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6047   return dissect_h245_CapabilityTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_mediaCapability);
6048 }
6049 static int dissect_primaryEncoding(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6050   return dissect_h245_CapabilityTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_primaryEncoding);
6051 }
6052 static int dissect_secondaryEncoding2_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6053   return dissect_h245_CapabilityTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_secondaryEncoding2_item);
6054 }
6055 static int dissect_capabilityTableEntryNumbers_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6056   return dissect_h245_CapabilityTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_capabilityTableEntryNumbers_item);
6057 }
6058
6059
6060 static int
6061 dissect_h245_SEQUNCE_SIZE_1_256_OF_CapabilityTableEntryNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6062   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
6063                                                ett_h245_SEQUNCE_SIZE_1_256_OF_CapabilityTableEntryNumber, dissect_secondaryEncoding2_item,
6064                                                1, 256);
6065
6066   return offset;
6067 }
6068 static int dissect_secondaryEncoding2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6069   return dissect_h245_SEQUNCE_SIZE_1_256_OF_CapabilityTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_secondaryEncoding2);
6070 }
6071
6072 static const per_sequence_t RedundancyEncodingCapability_sequence[] = {
6073   { "redundancyEncodingMethod"    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_redundancyEncodingMethod },
6074   { "primaryEncoding"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_primaryEncoding },
6075   { "secondaryEncoding2"          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_secondaryEncoding2 },
6076   { NULL, 0, 0, NULL }
6077 };
6078
6079 static int
6080 dissect_h245_RedundancyEncodingCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6081   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6082                                 ett_h245_RedundancyEncodingCapability, RedundancyEncodingCapability_sequence);
6083
6084   return offset;
6085 }
6086 static int dissect_redundancyEncodingCapability_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6087   return dissect_h245_RedundancyEncodingCapability(tvb, offset, pinfo, tree, hf_h245_redundancyEncodingCapability_item);
6088 }
6089
6090
6091 static int
6092 dissect_h245_SEQUNCE_SIZE_1_256_OF_RedundancyEncodingCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6093   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
6094                                                ett_h245_SEQUNCE_SIZE_1_256_OF_RedundancyEncodingCapability, dissect_redundancyEncodingCapability_item,
6095                                                1, 256);
6096
6097   return offset;
6098 }
6099 static int dissect_redundancyEncodingCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6100   return dissect_h245_SEQUNCE_SIZE_1_256_OF_RedundancyEncodingCapability(tvb, offset, pinfo, tree, hf_h245_redundancyEncodingCapability);
6101 }
6102
6103 static const per_sequence_t H2250Capability_sequence[] = {
6104   { "maximumAudioDelayJitter"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumAudioDelayJitter },
6105   { "receiveMultipointCapability" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_receiveMultipointCapability },
6106   { "transmitMultipointCapability", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_transmitMultipointCapability },
6107   { "receiveAndTransmitMultipointCapability", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_receiveAndTransmitMultipointCapability },
6108   { "mcCapability"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mcCapability },
6109   { "rtcpVideoControlCapability"  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rtcpVideoControlCapability },
6110   { "mediaPacketizationCapability", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mediaPacketizationCapability },
6111   { "transportCapability"         , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_transportCapability },
6112   { "redundancyEncodingCapability", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_redundancyEncodingCapability },
6113   { "logicalChannelSwitchingCapability", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_logicalChannelSwitchingCapability },
6114   { "t120DynamicPortCapability"   , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_t120DynamicPortCapability },
6115   { NULL, 0, 0, NULL }
6116 };
6117
6118 static int
6119 dissect_h245_H2250Capability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6120   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6121                                 ett_h245_H2250Capability, H2250Capability_sequence);
6122
6123   return offset;
6124 }
6125 static int dissect_h2250Capability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6126   return dissect_h245_H2250Capability(tvb, offset, pinfo, tree, hf_h245_h2250Capability);
6127 }
6128
6129
6130 static const value_string h245_MultiplexCapability_vals[] = {
6131   {   0, "nonStandard" },
6132   {   1, "h222Capability" },
6133   {   2, "h223Capability" },
6134   {   3, "v76Capability" },
6135   {   4, "h2250Capability" },
6136   {   5, "genericMultiplexCapability" },
6137   { 0, NULL }
6138 };
6139
6140 static const per_choice_t MultiplexCapability_choice[] = {
6141   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
6142   {   1, "h222Capability"              , ASN1_EXTENSION_ROOT    , dissect_h222Capability },
6143   {   2, "h223Capability"              , ASN1_EXTENSION_ROOT    , dissect_h223Capability },
6144   {   3, "v76Capability"               , ASN1_EXTENSION_ROOT    , dissect_v76Capability },
6145   {   4, "h2250Capability"             , ASN1_NOT_EXTENSION_ROOT, dissect_h2250Capability },
6146   {   5, "genericMultiplexCapability"  , ASN1_NOT_EXTENSION_ROOT, dissect_genericMultiplexCapability },
6147   { 0, NULL, 0, NULL }
6148 };
6149
6150 static int
6151 dissect_h245_MultiplexCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6152   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
6153                               ett_h245_MultiplexCapability, MultiplexCapability_choice, "MultiplexCapability",
6154                               NULL);
6155
6156   return offset;
6157 }
6158 static int dissect_multiplexCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6159   return dissect_h245_MultiplexCapability(tvb, offset, pinfo, tree, hf_h245_multiplexCapability);
6160 }
6161
6162
6163
6164 static int
6165 dissect_h245_INTEGER_1_4(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6166   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6167                                            1U, 4U, NULL, NULL, FALSE);
6168
6169   return offset;
6170 }
6171 static int dissect_qcifMPI_1_4(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6172   return dissect_h245_INTEGER_1_4(tvb, offset, pinfo, tree, hf_h245_qcifMPI_1_4);
6173 }
6174 static int dissect_cifMPI_1_4(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6175   return dissect_h245_INTEGER_1_4(tvb, offset, pinfo, tree, hf_h245_cifMPI_1_4);
6176 }
6177
6178 static const per_sequence_t H261VideoCapability_sequence[] = {
6179   { "qcifMPI"                     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_qcifMPI_1_4 },
6180   { "cifMPI"                      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cifMPI_1_4 },
6181   { "temporalSpatialTradeOffCapability", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_temporalSpatialTradeOffCapability },
6182   { "maxBitRate"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maxBitRate_1_19200 },
6183   { "stillImageTransmission"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_stillImageTransmission },
6184   { "videoBadMBsCap"              , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_videoBadMBsCap },
6185   { NULL, 0, 0, NULL }
6186 };
6187
6188 static int
6189 dissect_h245_H261VideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6190   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6191                                 ett_h245_H261VideoCapability, H261VideoCapability_sequence);
6192
6193   return offset;
6194 }
6195 static int dissect_h261VideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6196   return dissect_h245_H261VideoCapability(tvb, offset, pinfo, tree, hf_h245_h261VideoCapability);
6197 }
6198
6199
6200
6201 static int
6202 dissect_h245_INTEGER_0_1073741823(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6203   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6204                                            0U, 1073741823U, NULL, NULL, FALSE);
6205
6206   return offset;
6207 }
6208 static int dissect_videoBitRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6209   return dissect_h245_INTEGER_0_1073741823(tvb, offset, pinfo, tree, hf_h245_videoBitRate);
6210 }
6211
6212
6213
6214 static int
6215 dissect_h245_INTEGER_0_262143(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6216   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6217                                            0U, 262143U, NULL, NULL, FALSE);
6218
6219   return offset;
6220 }
6221 static int dissect_vbvBufferSize(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6222   return dissect_h245_INTEGER_0_262143(tvb, offset, pinfo, tree, hf_h245_vbvBufferSize);
6223 }
6224 static int dissect_additionalDecoderBuffer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6225   return dissect_h245_INTEGER_0_262143(tvb, offset, pinfo, tree, hf_h245_additionalDecoderBuffer);
6226 }
6227
6228
6229
6230 static int
6231 dissect_h245_INTEGER_0_16383(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6232   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6233                                            0U, 16383U, NULL, NULL, FALSE);
6234
6235   return offset;
6236 }
6237 static int dissect_samplesPerLine(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6238   return dissect_h245_INTEGER_0_16383(tvb, offset, pinfo, tree, hf_h245_samplesPerLine);
6239 }
6240 static int dissect_linesPerFrame(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6241   return dissect_h245_INTEGER_0_16383(tvb, offset, pinfo, tree, hf_h245_linesPerFrame);
6242 }
6243
6244 static const per_sequence_t H262VideoCapability_sequence[] = {
6245   { "profileAndLevel-SPatML"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_SPatML },
6246   { "profileAndLevel-MPatLL"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_MPatLL },
6247   { "profileAndLevel-MPatML"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_MPatML },
6248   { "profileAndLevel-MPatH-14"    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_MPatH_14 },
6249   { "profileAndLevel-MPatHL"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_MPatHL },
6250   { "profileAndLevel-SNRatLL"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_SNRatLL },
6251   { "profileAndLevel-SNRatML"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_SNRatML },
6252   { "profileAndLevel-SpatialatH-14", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_SpatialatH_14 },
6253   { "profileAndLevel-HPatML"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_HPatML },
6254   { "profileAndLevel-HPatH-14"    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_HPatH_14 },
6255   { "profileAndLevel-HPatHL"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_HPatHL },
6256   { "videoBitRate"                , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_videoBitRate },
6257   { "vbvBufferSize"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_vbvBufferSize },
6258   { "samplesPerLine"              , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_samplesPerLine },
6259   { "linesPerFrame"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_linesPerFrame },
6260   { "framesPerSecond"             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_framesPerSecond },
6261   { "luminanceSampleRate"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_luminanceSampleRate },
6262   { "videoBadMBsCap"              , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_videoBadMBsCap },
6263   { NULL, 0, 0, NULL }
6264 };
6265
6266 static int
6267 dissect_h245_H262VideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6268   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6269                                 ett_h245_H262VideoCapability, H262VideoCapability_sequence);
6270
6271   return offset;
6272 }
6273 static int dissect_h262VideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6274   return dissect_h245_H262VideoCapability(tvb, offset, pinfo, tree, hf_h245_h262VideoCapability);
6275 }
6276
6277
6278
6279 static int
6280 dissect_h245_INTEGER_1_32(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6281   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6282                                            1U, 32U, NULL, NULL, FALSE);
6283
6284   return offset;
6285 }
6286 static int dissect_sqcifMPI_1_32(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6287   return dissect_h245_INTEGER_1_32(tvb, offset, pinfo, tree, hf_h245_sqcifMPI_1_32);
6288 }
6289 static int dissect_qcifMPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6290   return dissect_h245_INTEGER_1_32(tvb, offset, pinfo, tree, hf_h245_qcifMPI);
6291 }
6292 static int dissect_cifMPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6293   return dissect_h245_INTEGER_1_32(tvb, offset, pinfo, tree, hf_h245_cifMPI);
6294 }
6295 static int dissect_cif4MPI_1_32(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6296   return dissect_h245_INTEGER_1_32(tvb, offset, pinfo, tree, hf_h245_cif4MPI_1_32);
6297 }
6298 static int dissect_cif16MPI_1_32(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6299   return dissect_h245_INTEGER_1_32(tvb, offset, pinfo, tree, hf_h245_cif16MPI_1_32);
6300 }
6301
6302
6303
6304 static int
6305 dissect_h245_INTEGER_1_192400(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6306   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6307                                            1U, 192400U, NULL, NULL, FALSE);
6308
6309   return offset;
6310 }
6311 static int dissect_maxBitRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6312   return dissect_h245_INTEGER_1_192400(tvb, offset, pinfo, tree, hf_h245_maxBitRate);
6313 }
6314
6315
6316
6317 static int
6318 dissect_h245_INTEGER_0_524287(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6319   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6320                                            0U, 524287U, NULL, NULL, FALSE);
6321
6322   return offset;
6323 }
6324 static int dissect_hrd_B(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6325   return dissect_h245_INTEGER_0_524287(tvb, offset, pinfo, tree, hf_h245_hrd_B);
6326 }
6327
6328
6329
6330 static int
6331 dissect_h245_INTEGER_1_3600(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6332   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6333                                            1U, 3600U, NULL, NULL, FALSE);
6334
6335   return offset;
6336 }
6337 static int dissect_slowSqcifMPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6338   return dissect_h245_INTEGER_1_3600(tvb, offset, pinfo, tree, hf_h245_slowSqcifMPI);
6339 }
6340 static int dissect_slowQcifMPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6341   return dissect_h245_INTEGER_1_3600(tvb, offset, pinfo, tree, hf_h245_slowQcifMPI);
6342 }
6343 static int dissect_slowCifMPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6344   return dissect_h245_INTEGER_1_3600(tvb, offset, pinfo, tree, hf_h245_slowCifMPI);
6345 }
6346 static int dissect_slowCif4MPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6347   return dissect_h245_INTEGER_1_3600(tvb, offset, pinfo, tree, hf_h245_slowCif4MPI);
6348 }
6349 static int dissect_slowCif16MPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6350   return dissect_h245_INTEGER_1_3600(tvb, offset, pinfo, tree, hf_h245_slowCif16MPI);
6351 }
6352
6353
6354
6355 static int
6356 dissect_h245_INTEGER_M262144_262143(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6357   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6358                                            -262144, 262143U, NULL, NULL, FALSE);
6359
6360   return offset;
6361 }
6362 static int dissect_offset_x(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6363   return dissect_h245_INTEGER_M262144_262143(tvb, offset, pinfo, tree, hf_h245_offset_x);
6364 }
6365 static int dissect_offset_y(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6366   return dissect_h245_INTEGER_M262144_262143(tvb, offset, pinfo, tree, hf_h245_offset_y);
6367 }
6368
6369 static const per_sequence_t TransparencyParameters_sequence[] = {
6370   { "presentationOrder"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_presentationOrder },
6371   { "offset-x"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_offset_x },
6372   { "offset-y"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_offset_y },
6373   { "scale-x"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_scale_x },
6374   { "scale-y"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_scale_y },
6375   { NULL, 0, 0, NULL }
6376 };
6377
6378 static int
6379 dissect_h245_TransparencyParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6380   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6381                                 ett_h245_TransparencyParameters, TransparencyParameters_sequence);
6382
6383   return offset;
6384 }
6385 static int dissect_transparencyParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6386   return dissect_h245_TransparencyParameters(tvb, offset, pinfo, tree, hf_h245_transparencyParameters);
6387 }
6388
6389 static const per_sequence_t T_additionalPictureMemory_sequence[] = {
6390   { "sqcifAdditionalPictureMemory", ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_sqcifAdditionalPictureMemory },
6391   { "qcifAdditionalPictureMemory" , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_qcifAdditionalPictureMemory },
6392   { "cifAdditionalPictureMemory"  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cifAdditionalPictureMemory },
6393   { "cif4AdditionalPictureMemory" , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cif4AdditionalPictureMemory },
6394   { "cif16AdditionalPictureMemory", ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cif16AdditionalPictureMemory },
6395   { "bigCpfAdditionalPictureMemory", ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_bigCpfAdditionalPictureMemory },
6396   { NULL, 0, 0, NULL }
6397 };
6398
6399 static int
6400 dissect_h245_T_additionalPictureMemory(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6401   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6402                                 ett_h245_T_additionalPictureMemory, T_additionalPictureMemory_sequence);
6403
6404   return offset;
6405 }
6406 static int dissect_additionalPictureMemory(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6407   return dissect_h245_T_additionalPictureMemory(tvb, offset, pinfo, tree, hf_h245_additionalPictureMemory);
6408 }
6409
6410
6411 static const value_string h245_T_videoBackChannelSend_vals[] = {
6412   {   0, "none" },
6413   {   1, "ackMessageOnly" },
6414   {   2, "nackMessageOnly" },
6415   {   3, "ackOrNackMessageOnly" },
6416   {   4, "ackAndNackMessage" },
6417   { 0, NULL }
6418 };
6419
6420 static const per_choice_t T_videoBackChannelSend_choice[] = {
6421   {   0, "none"                        , ASN1_EXTENSION_ROOT    , dissect_none },
6422   {   1, "ackMessageOnly"              , ASN1_EXTENSION_ROOT    , dissect_ackMessageOnly },
6423   {   2, "nackMessageOnly"             , ASN1_EXTENSION_ROOT    , dissect_nackMessageOnly },
6424   {   3, "ackOrNackMessageOnly"        , ASN1_EXTENSION_ROOT    , dissect_ackOrNackMessageOnly },
6425   {   4, "ackAndNackMessage"           , ASN1_EXTENSION_ROOT    , dissect_ackAndNackMessage },
6426   { 0, NULL, 0, NULL }
6427 };
6428
6429 static int
6430 dissect_h245_T_videoBackChannelSend(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6431   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
6432                               ett_h245_T_videoBackChannelSend, T_videoBackChannelSend_choice, "T_videoBackChannelSend",
6433                               NULL);
6434
6435   return offset;
6436 }
6437 static int dissect_videoBackChannelSend(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6438   return dissect_h245_T_videoBackChannelSend(tvb, offset, pinfo, tree, hf_h245_videoBackChannelSend);
6439 }
6440
6441
6442
6443 static int
6444 dissect_h245_INTEGER_1_128(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6445   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6446                                            1U, 128U, NULL, NULL, FALSE);
6447
6448   return offset;
6449 }
6450 static int dissect_mpuHorizMBs(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6451   return dissect_h245_INTEGER_1_128(tvb, offset, pinfo, tree, hf_h245_mpuHorizMBs);
6452 }
6453
6454
6455
6456 static int
6457 dissect_h245_INTEGER_1_72(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6458   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6459                                            1U, 72U, NULL, NULL, FALSE);
6460
6461   return offset;
6462 }
6463 static int dissect_mpuVertMBs(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6464   return dissect_h245_INTEGER_1_72(tvb, offset, pinfo, tree, hf_h245_mpuVertMBs);
6465 }
6466
6467 static const per_sequence_t T_subPictureRemovalParameters_sequence[] = {
6468   { "mpuHorizMBs"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mpuHorizMBs },
6469   { "mpuVertMBs"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mpuVertMBs },
6470   { "mpuTotalNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mpuTotalNumber },
6471   { NULL, 0, 0, NULL }
6472 };
6473
6474 static int
6475 dissect_h245_T_subPictureRemovalParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6476   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6477                                 ett_h245_T_subPictureRemovalParameters, T_subPictureRemovalParameters_sequence);
6478
6479   return offset;
6480 }
6481 static int dissect_subPictureRemovalParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6482   return dissect_h245_T_subPictureRemovalParameters(tvb, offset, pinfo, tree, hf_h245_subPictureRemovalParameters);
6483 }
6484
6485 static const per_sequence_t T_enhancedReferencePicSelect_sequence[] = {
6486   { "subPictureRemovalParameters" , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_subPictureRemovalParameters },
6487   { NULL, 0, 0, NULL }
6488 };
6489
6490 static int
6491 dissect_h245_T_enhancedReferencePicSelect(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6492   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6493                                 ett_h245_T_enhancedReferencePicSelect, T_enhancedReferencePicSelect_sequence);
6494
6495   return offset;
6496 }
6497 static int dissect_enhancedReferencePicSelect(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6498   return dissect_h245_T_enhancedReferencePicSelect(tvb, offset, pinfo, tree, hf_h245_enhancedReferencePicSelect);
6499 }
6500
6501 static const per_sequence_t RefPictureSelection_sequence[] = {
6502   { "additionalPictureMemory"     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_additionalPictureMemory },
6503   { "videoMux"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_videoMux },
6504   { "videoBackChannelSend"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_videoBackChannelSend },
6505   { "enhancedReferencePicSelect"  , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_enhancedReferencePicSelect },
6506   { NULL, 0, 0, NULL }
6507 };
6508
6509 static int
6510 dissect_h245_RefPictureSelection(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6511   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6512                                 ett_h245_RefPictureSelection, RefPictureSelection_sequence);
6513
6514   return offset;
6515 }
6516 static int dissect_refPictureSelection(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6517   return dissect_h245_RefPictureSelection(tvb, offset, pinfo, tree, hf_h245_refPictureSelection);
6518 }
6519
6520
6521
6522 static int
6523 dissect_h245_INTEGER_1000_1001(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6524   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6525                                            1000U, 1001U, NULL, NULL, FALSE);
6526
6527   return offset;
6528 }
6529 static int dissect_clockConversionCode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6530   return dissect_h245_INTEGER_1000_1001(tvb, offset, pinfo, tree, hf_h245_clockConversionCode);
6531 }
6532
6533
6534
6535 static int
6536 dissect_h245_INTEGER_1_2048(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6537   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6538                                            1U, 2048U, NULL, NULL, FALSE);
6539
6540   return offset;
6541 }
6542 static int dissect_sqcifMPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6543   return dissect_h245_INTEGER_1_2048(tvb, offset, pinfo, tree, hf_h245_sqcifMPI);
6544 }
6545 static int dissect_qcifMPI_1_2048(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6546   return dissect_h245_INTEGER_1_2048(tvb, offset, pinfo, tree, hf_h245_qcifMPI_1_2048);
6547 }
6548 static int dissect_cifMPI2_1_2048(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6549   return dissect_h245_INTEGER_1_2048(tvb, offset, pinfo, tree, hf_h245_cifMPI2_1_2048);
6550 }
6551 static int dissect_cif4MPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6552   return dissect_h245_INTEGER_1_2048(tvb, offset, pinfo, tree, hf_h245_cif4MPI);
6553 }
6554 static int dissect_cif16MPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6555   return dissect_h245_INTEGER_1_2048(tvb, offset, pinfo, tree, hf_h245_cif16MPI);
6556 }
6557 static int dissect_maxCustomPictureWidth(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6558   return dissect_h245_INTEGER_1_2048(tvb, offset, pinfo, tree, hf_h245_maxCustomPictureWidth);
6559 }
6560 static int dissect_maxCustomPictureHeight(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6561   return dissect_h245_INTEGER_1_2048(tvb, offset, pinfo, tree, hf_h245_maxCustomPictureHeight);
6562 }
6563 static int dissect_minCustomPictureWidth(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6564   return dissect_h245_INTEGER_1_2048(tvb, offset, pinfo, tree, hf_h245_minCustomPictureWidth);
6565 }
6566 static int dissect_minCustomPictureHeight(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6567   return dissect_h245_INTEGER_1_2048(tvb, offset, pinfo, tree, hf_h245_minCustomPictureHeight);
6568 }
6569 static int dissect_customMPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6570   return dissect_h245_INTEGER_1_2048(tvb, offset, pinfo, tree, hf_h245_customMPI);
6571 }
6572
6573 static const per_sequence_t CustomPictureClockFrequency_sequence[] = {
6574   { "clockConversionCode"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_clockConversionCode },
6575   { "clockDivisor"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_clockDivisor },
6576   { "sqcifMPI"                    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_sqcifMPI },
6577   { "qcifMPI"                     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_qcifMPI_1_2048 },
6578   { "cifMPI"                      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cifMPI2_1_2048 },
6579   { "cif4MPI"                     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cif4MPI },
6580   { "cif16MPI"                    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cif16MPI },
6581   { NULL, 0, 0, NULL }
6582 };
6583
6584 static int
6585 dissect_h245_CustomPictureClockFrequency(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6586   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6587                                 ett_h245_CustomPictureClockFrequency, CustomPictureClockFrequency_sequence);
6588
6589   return offset;
6590 }
6591 static int dissect_customPictureClockFrequency_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6592   return dissect_h245_CustomPictureClockFrequency(tvb, offset, pinfo, tree, hf_h245_customPictureClockFrequency_item);
6593 }
6594
6595
6596 static int
6597 dissect_h245_SET_SIZE_1_16_OF_CustomPictureClockFrequency(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6598   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
6599                                           ett_h245_SET_SIZE_1_16_OF_CustomPictureClockFrequency, dissect_customPictureClockFrequency_item,
6600                                           1, 16);
6601
6602   return offset;
6603 }
6604 static int dissect_customPictureClockFrequency(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6605   return dissect_h245_SET_SIZE_1_16_OF_CustomPictureClockFrequency(tvb, offset, pinfo, tree, hf_h245_customPictureClockFrequency);
6606 }
6607
6608
6609
6610 static int
6611 dissect_h245_INTEGER_1_31(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6612   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6613                                            1U, 31U, NULL, NULL, FALSE);
6614
6615   return offset;
6616 }
6617 static int dissect_standardMPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6618   return dissect_h245_INTEGER_1_31(tvb, offset, pinfo, tree, hf_h245_standardMPI);
6619 }
6620
6621 static const per_sequence_t T_customPCF_item_sequence[] = {
6622   { "clockConversionCode"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_clockConversionCode },
6623   { "clockDivisor"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_clockDivisor },
6624   { "customMPI"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_customMPI },
6625   { NULL, 0, 0, NULL }
6626 };
6627
6628 static int
6629 dissect_h245_T_customPCF_item(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6630   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6631                                 ett_h245_T_customPCF_item, T_customPCF_item_sequence);
6632
6633   return offset;
6634 }
6635 static int dissect_customPCF_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6636   return dissect_h245_T_customPCF_item(tvb, offset, pinfo, tree, hf_h245_customPCF_item);
6637 }
6638
6639
6640 static int
6641 dissect_h245_T_customPCF(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6642   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
6643                                           ett_h245_T_customPCF, dissect_customPCF_item,
6644                                           1, 16);
6645
6646   return offset;
6647 }
6648 static int dissect_customPCF(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6649   return dissect_h245_T_customPCF(tvb, offset, pinfo, tree, hf_h245_customPCF);
6650 }
6651
6652 static const per_sequence_t T_mPI_sequence[] = {
6653   { "standardMPI"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_standardMPI },
6654   { "customPCF"                   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_customPCF },
6655   { NULL, 0, 0, NULL }
6656 };
6657
6658 static int
6659 dissect_h245_T_mPI(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6660   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6661                                 ett_h245_T_mPI, T_mPI_sequence);
6662
6663   return offset;
6664 }
6665 static int dissect_mPI(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6666   return dissect_h245_T_mPI(tvb, offset, pinfo, tree, hf_h245_mPI);
6667 }
6668
6669
6670
6671 static int
6672 dissect_h245_INTEGER_1_14(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6673   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6674                                            1U, 14U, NULL, NULL, FALSE);
6675
6676   return offset;
6677 }
6678 static int dissect_pixelAspectCode_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6679   return dissect_h245_INTEGER_1_14(tvb, offset, pinfo, tree, hf_h245_pixelAspectCode_item);
6680 }
6681
6682
6683 static int
6684 dissect_h245_SET_SIZE_1_14_OF_INTEGER_1_14(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6685   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
6686                                           ett_h245_SET_SIZE_1_14_OF_INTEGER_1_14, dissect_pixelAspectCode_item,
6687                                           1, 14);
6688
6689   return offset;
6690 }
6691 static int dissect_pixelAspectCode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6692   return dissect_h245_SET_SIZE_1_14_OF_INTEGER_1_14(tvb, offset, pinfo, tree, hf_h245_pixelAspectCode);
6693 }
6694
6695 static const per_sequence_t T_extendedPAR_item_sequence[] = {
6696   { "width"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_width },
6697   { "height"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_height },
6698   { NULL, 0, 0, NULL }
6699 };
6700
6701 static int
6702 dissect_h245_T_extendedPAR_item(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6703   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6704                                 ett_h245_T_extendedPAR_item, T_extendedPAR_item_sequence);
6705
6706   return offset;
6707 }
6708 static int dissect_extendedPAR_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6709   return dissect_h245_T_extendedPAR_item(tvb, offset, pinfo, tree, hf_h245_extendedPAR_item);
6710 }
6711
6712
6713 static int
6714 dissect_h245_T_extendedPAR(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6715   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
6716                                           ett_h245_T_extendedPAR, dissect_extendedPAR_item,
6717                                           1, 256);
6718
6719   return offset;
6720 }
6721 static int dissect_extendedPAR(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6722   return dissect_h245_T_extendedPAR(tvb, offset, pinfo, tree, hf_h245_extendedPAR);
6723 }
6724
6725
6726 static const value_string h245_T_pixelAspectInformation_vals[] = {
6727   {   0, "anyPixelAspectRatio" },
6728   {   1, "pixelAspectCode" },
6729   {   2, "extendedPAR" },
6730   { 0, NULL }
6731 };
6732
6733 static const per_choice_t T_pixelAspectInformation_choice[] = {
6734   {   0, "anyPixelAspectRatio"         , ASN1_EXTENSION_ROOT    , dissect_anyPixelAspectRatio },
6735   {   1, "pixelAspectCode"             , ASN1_EXTENSION_ROOT    , dissect_pixelAspectCode },
6736   {   2, "extendedPAR"                 , ASN1_EXTENSION_ROOT    , dissect_extendedPAR },
6737   { 0, NULL, 0, NULL }
6738 };
6739
6740 static int
6741 dissect_h245_T_pixelAspectInformation(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6742   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
6743                               ett_h245_T_pixelAspectInformation, T_pixelAspectInformation_choice, "T_pixelAspectInformation",
6744                               NULL);
6745
6746   return offset;
6747 }
6748 static int dissect_pixelAspectInformation(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6749   return dissect_h245_T_pixelAspectInformation(tvb, offset, pinfo, tree, hf_h245_pixelAspectInformation);
6750 }
6751
6752 static const per_sequence_t CustomPictureFormat_sequence[] = {
6753   { "maxCustomPictureWidth"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maxCustomPictureWidth },
6754   { "maxCustomPictureHeight"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maxCustomPictureHeight },
6755   { "minCustomPictureWidth"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_minCustomPictureWidth },
6756   { "minCustomPictureHeight"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_minCustomPictureHeight },
6757   { "mPI"                         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mPI },
6758   { "pixelAspectInformation"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_pixelAspectInformation },
6759   { NULL, 0, 0, NULL }
6760 };
6761
6762 static int
6763 dissect_h245_CustomPictureFormat(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6764   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6765                                 ett_h245_CustomPictureFormat, CustomPictureFormat_sequence);
6766
6767   return offset;
6768 }
6769 static int dissect_customPictureFormat_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6770   return dissect_h245_CustomPictureFormat(tvb, offset, pinfo, tree, hf_h245_customPictureFormat_item);
6771 }
6772
6773
6774 static int
6775 dissect_h245_SET_SIZE_1_16_OF_CustomPictureFormat(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6776   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
6777                                           ett_h245_SET_SIZE_1_16_OF_CustomPictureFormat, dissect_customPictureFormat_item,
6778                                           1, 16);
6779
6780   return offset;
6781 }
6782 static int dissect_customPictureFormat(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6783   return dissect_h245_SET_SIZE_1_16_OF_CustomPictureFormat(tvb, offset, pinfo, tree, hf_h245_customPictureFormat);
6784 }
6785
6786 static const per_sequence_t H263Version3Options_sequence[] = {
6787   { "dataPartitionedSlices"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dataPartitionedSlices },
6788   { "fixedPointIDCT0"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_fixedPointIDCT0 },
6789   { "interlacedFields"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_interlacedFields },
6790   { "currentPictureHeaderRepetition", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_currentPictureHeaderRepetition },
6791   { "previousPictureHeaderRepetition", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_previousPictureHeaderRepetition },
6792   { "nextPictureHeaderRepetition" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nextPictureHeaderRepetition },
6793   { "pictureNumber"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_pictureNumberBoolean },
6794   { "spareReferencePictures"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_spareReferencePictures },
6795   { NULL, 0, 0, NULL }
6796 };
6797
6798 static int
6799 dissect_h245_H263Version3Options(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6800   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6801                                 ett_h245_H263Version3Options, H263Version3Options_sequence);
6802
6803   return offset;
6804 }
6805 static int dissect_h263Version3Options(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6806   return dissect_h245_H263Version3Options(tvb, offset, pinfo, tree, hf_h245_h263Version3Options);
6807 }
6808
6809 static const per_sequence_t H263ModeComboFlags_sequence[] = {
6810   { "unrestrictedVector"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_unrestrictedVector },
6811   { "arithmeticCoding"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_arithmeticCoding },
6812   { "advancedPrediction"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_advancedPrediction },
6813   { "pbFrames"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_pbFrames },
6814   { "advancedIntraCodingMode"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_advancedIntraCodingMode },
6815   { "deblockingFilterMode"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_deblockingFilterMode },
6816   { "unlimitedMotionVectors"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_unlimitedMotionVectors },
6817   { "slicesInOrder-NonRect"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_slicesInOrder_NonRect },
6818   { "slicesInOrder-Rect"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_slicesInOrder_Rect },
6819   { "slicesNoOrder-NonRect"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_slicesNoOrder_NonRect },
6820   { "slicesNoOrder-Rect"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_slicesNoOrder_Rect },
6821   { "improvedPBFramesMode"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_improvedPBFramesMode },
6822   { "referencePicSelect"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_referencePicSelect },
6823   { "dynamicPictureResizingByFour", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dynamicPictureResizingByFour },
6824   { "dynamicPictureResizingSixteenthPel", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dynamicPictureResizingSixteenthPel },
6825   { "dynamicWarpingHalfPel"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dynamicWarpingHalfPel },
6826   { "dynamicWarpingSixteenthPel"  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dynamicWarpingSixteenthPel },
6827   { "reducedResolutionUpdate"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_reducedResolutionUpdate },
6828   { "independentSegmentDecoding"  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_independentSegmentDecoding },
6829   { "alternateInterVLCMode"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_alternateInterVLCMode },
6830   { "modifiedQuantizationMode"    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_modifiedQuantizationMode },
6831   { "enhancedReferencePicSelect"  , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_enhancedReferencePicSelectBool },
6832   { "h263Version3Options"         , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h263Version3Options },
6833   { NULL, 0, 0, NULL }
6834 };
6835
6836 static int
6837 dissect_h245_H263ModeComboFlags(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6838   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6839                                 ett_h245_H263ModeComboFlags, H263ModeComboFlags_sequence);
6840
6841   return offset;
6842 }
6843 static int dissect_h263VideoUncoupledModes(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6844   return dissect_h245_H263ModeComboFlags(tvb, offset, pinfo, tree, hf_h245_h263VideoUncoupledModes);
6845 }
6846 static int dissect_h263VideoCoupledModes_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6847   return dissect_h245_H263ModeComboFlags(tvb, offset, pinfo, tree, hf_h245_h263VideoCoupledModes_item);
6848 }
6849
6850
6851 static int
6852 dissect_h245_SET_SIZE_1_16_OF_H263ModeComboFlags(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6853   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
6854                                           ett_h245_SET_SIZE_1_16_OF_H263ModeComboFlags, dissect_h263VideoCoupledModes_item,
6855                                           1, 16);
6856
6857   return offset;
6858 }
6859 static int dissect_h263VideoCoupledModes(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6860   return dissect_h245_SET_SIZE_1_16_OF_H263ModeComboFlags(tvb, offset, pinfo, tree, hf_h245_h263VideoCoupledModes);
6861 }
6862
6863 static const per_sequence_t H263VideoModeCombos_sequence[] = {
6864   { "h263VideoUncoupledModes"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h263VideoUncoupledModes },
6865   { "h263VideoCoupledModes"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h263VideoCoupledModes },
6866   { NULL, 0, 0, NULL }
6867 };
6868
6869 static int
6870 dissect_h245_H263VideoModeCombos(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6871   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6872                                 ett_h245_H263VideoModeCombos, H263VideoModeCombos_sequence);
6873
6874   return offset;
6875 }
6876 static int dissect_modeCombos_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6877   return dissect_h245_H263VideoModeCombos(tvb, offset, pinfo, tree, hf_h245_modeCombos_item);
6878 }
6879
6880
6881 static int
6882 dissect_h245_SET_SIZE_1_16_OF_H263VideoModeCombos(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6883   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
6884                                           ett_h245_SET_SIZE_1_16_OF_H263VideoModeCombos, dissect_modeCombos_item,
6885                                           1, 16);
6886
6887   return offset;
6888 }
6889 static int dissect_modeCombos(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6890   return dissect_h245_SET_SIZE_1_16_OF_H263VideoModeCombos(tvb, offset, pinfo, tree, hf_h245_modeCombos);
6891 }
6892
6893 static const per_sequence_t H263Options_sequence[] = {
6894   { "advancedIntraCodingMode"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_advancedIntraCodingMode },
6895   { "deblockingFilterMode"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_deblockingFilterMode },
6896   { "improvedPBFramesMode"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_improvedPBFramesMode },
6897   { "unlimitedMotionVectors"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_unlimitedMotionVectors },
6898   { "fullPictureFreeze"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_fullPictureFreeze },
6899   { "partialPictureFreezeAndRelease", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_partialPictureFreezeAndRelease },
6900   { "resizingPartPicFreezeAndRelease", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_resizingPartPicFreezeAndRelease },
6901   { "fullPictureSnapshot"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_fullPictureSnapshot },
6902   { "partialPictureSnapshot"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_partialPictureSnapshot },
6903   { "videoSegmentTagging"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_videoSegmentTagging },
6904   { "progressiveRefinement"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_progressiveRefinement },
6905   { "dynamicPictureResizingByFour", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dynamicPictureResizingByFour },
6906   { "dynamicPictureResizingSixteenthPel", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dynamicPictureResizingSixteenthPel },
6907   { "dynamicWarpingHalfPel"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dynamicWarpingHalfPel },
6908   { "dynamicWarpingSixteenthPel"  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dynamicWarpingSixteenthPel },
6909   { "independentSegmentDecoding"  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_independentSegmentDecoding },
6910   { "slicesInOrder-NonRect"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_slicesInOrder_NonRect },
6911   { "slicesInOrder-Rect"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_slicesInOrder_Rect },
6912   { "slicesNoOrder-NonRect"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_slicesNoOrder_NonRect },
6913   { "slicesNoOrder-Rect"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_slicesNoOrder_Rect },
6914   { "alternateInterVLCMode"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_alternateInterVLCMode },
6915   { "modifiedQuantizationMode"    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_modifiedQuantizationMode },
6916   { "reducedResolutionUpdate"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_reducedResolutionUpdate },
6917   { "transparencyParameters"      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_transparencyParameters },
6918   { "separateVideoBackChannel"    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_separateVideoBackChannel },
6919   { "refPictureSelection"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_refPictureSelection },
6920   { "customPictureClockFrequency" , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_customPictureClockFrequency },
6921   { "customPictureFormat"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_customPictureFormat },
6922   { "modeCombos"                  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_modeCombos },
6923   { "videoBadMBsCap"              , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_videoBadMBsCap },
6924   { "h263Version3Options"         , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h263Version3Options },
6925   { NULL, 0, 0, NULL }
6926 };
6927
6928 static int
6929 dissect_h245_H263Options(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6930   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6931                                 ett_h245_H263Options, H263Options_sequence);
6932
6933   return offset;
6934 }
6935 static int dissect_h263Options(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6936   return dissect_h245_H263Options(tvb, offset, pinfo, tree, hf_h245_h263Options);
6937 }
6938
6939 static const per_sequence_t EnhancementOptions_sequence[] = {
6940   { "sqcifMPI"                    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_sqcifMPI_1_32 },
6941   { "qcifMPI"                     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_qcifMPI },
6942   { "cifMPI"                      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cifMPI },
6943   { "cif4MPI"                     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cif4MPI_1_32 },
6944   { "cif16MPI"                    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cif16MPI_1_32 },
6945   { "maxBitRate"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maxBitRate },
6946   { "unrestrictedVector"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_unrestrictedVector },
6947   { "arithmeticCoding"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_arithmeticCoding },
6948   { "temporalSpatialTradeOffCapability", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_temporalSpatialTradeOffCapability },
6949   { "slowSqcifMPI"                , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_slowSqcifMPI },
6950   { "slowQcifMPI"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_slowQcifMPI },
6951   { "slowCifMPI"                  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_slowCifMPI },
6952   { "slowCif4MPI"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_slowCif4MPI },
6953   { "slowCif16MPI"                , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_slowCif16MPI },
6954   { "errorCompensation"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_errorCompensation },
6955   { "h263Options"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h263Options },
6956   { NULL, 0, 0, NULL }
6957 };
6958
6959 static int
6960 dissect_h245_EnhancementOptions(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6961   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
6962                                 ett_h245_EnhancementOptions, EnhancementOptions_sequence);
6963
6964   return offset;
6965 }
6966 static int dissect_snrEnhancement_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6967   return dissect_h245_EnhancementOptions(tvb, offset, pinfo, tree, hf_h245_snrEnhancement_item);
6968 }
6969 static int dissect_spatialEnhancement_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6970   return dissect_h245_EnhancementOptions(tvb, offset, pinfo, tree, hf_h245_spatialEnhancement_item);
6971 }
6972 static int dissect_enhancementOptions(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6973   return dissect_h245_EnhancementOptions(tvb, offset, pinfo, tree, hf_h245_enhancementOptions);
6974 }
6975
6976
6977 static int
6978 dissect_h245_SET_SIZE_1_14_OF_EnhancementOptions(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6979   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
6980                                           ett_h245_SET_SIZE_1_14_OF_EnhancementOptions, dissect_snrEnhancement_item,
6981                                           1, 14);
6982
6983   return offset;
6984 }
6985 static int dissect_snrEnhancement(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6986   return dissect_h245_SET_SIZE_1_14_OF_EnhancementOptions(tvb, offset, pinfo, tree, hf_h245_snrEnhancement);
6987 }
6988 static int dissect_spatialEnhancement(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
6989   return dissect_h245_SET_SIZE_1_14_OF_EnhancementOptions(tvb, offset, pinfo, tree, hf_h245_spatialEnhancement);
6990 }
6991
6992
6993
6994 static int
6995 dissect_h245_INTEGER_1_64(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
6996   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
6997                                            1U, 64U, NULL, NULL, FALSE);
6998
6999   return offset;
7000 }
7001 static int dissect_numberOfBPictures(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7002   return dissect_h245_INTEGER_1_64(tvb, offset, pinfo, tree, hf_h245_numberOfBPictures);
7003 }
7004
7005 static const per_sequence_t BEnhancementParameters_sequence[] = {
7006   { "enhancementOptions"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_enhancementOptions },
7007   { "numberOfBPictures"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_numberOfBPictures },
7008   { NULL, 0, 0, NULL }
7009 };
7010
7011 static int
7012 dissect_h245_BEnhancementParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7013   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7014                                 ett_h245_BEnhancementParameters, BEnhancementParameters_sequence);
7015
7016   return offset;
7017 }
7018 static int dissect_bPictureEnhancement_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7019   return dissect_h245_BEnhancementParameters(tvb, offset, pinfo, tree, hf_h245_bPictureEnhancement_item);
7020 }
7021
7022
7023 static int
7024 dissect_h245_SET_SIZE_1_14_OF_BEnhancementParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7025   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
7026                                           ett_h245_SET_SIZE_1_14_OF_BEnhancementParameters, dissect_bPictureEnhancement_item,
7027                                           1, 14);
7028
7029   return offset;
7030 }
7031 static int dissect_bPictureEnhancement(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7032   return dissect_h245_SET_SIZE_1_14_OF_BEnhancementParameters(tvb, offset, pinfo, tree, hf_h245_bPictureEnhancement);
7033 }
7034
7035 static const per_sequence_t EnhancementLayerInfo_sequence[] = {
7036   { "baseBitRateConstrained"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_baseBitRateConstrained },
7037   { "snrEnhancement"              , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_snrEnhancement },
7038   { "spatialEnhancement"          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_spatialEnhancement },
7039   { "bPictureEnhancement"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_bPictureEnhancement },
7040   { NULL, 0, 0, NULL }
7041 };
7042
7043 static int
7044 dissect_h245_EnhancementLayerInfo(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7045   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7046                                 ett_h245_EnhancementLayerInfo, EnhancementLayerInfo_sequence);
7047
7048   return offset;
7049 }
7050 static int dissect_enhancementLayerInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7051   return dissect_h245_EnhancementLayerInfo(tvb, offset, pinfo, tree, hf_h245_enhancementLayerInfo);
7052 }
7053
7054 static const per_sequence_t H263VideoCapability_sequence[] = {
7055   { "sqcifMPI"                    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_sqcifMPI_1_32 },
7056   { "qcifMPI"                     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_qcifMPI },
7057   { "cifMPI"                      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cifMPI },
7058   { "cif4MPI"                     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cif4MPI_1_32 },
7059   { "cif16MPI"                    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_cif16MPI_1_32 },
7060   { "maxBitRate"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maxBitRate },
7061   { "unrestrictedVector"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_unrestrictedVector },
7062   { "arithmeticCoding"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_arithmeticCoding },
7063   { "advancedPrediction"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_advancedPrediction },
7064   { "pbFrames"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_pbFrames },
7065   { "temporalSpatialTradeOffCapability", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_temporalSpatialTradeOffCapability },
7066   { "hrd-B"                       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_hrd_B },
7067   { "bppMaxKb"                    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_bppMaxKb },
7068   { "slowSqcifMPI"                , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_slowSqcifMPI },
7069   { "slowQcifMPI"                 , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_slowQcifMPI },
7070   { "slowCifMPI"                  , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_slowCifMPI },
7071   { "slowCif4MPI"                 , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_slowCif4MPI },
7072   { "slowCif16MPI"                , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_slowCif16MPI },
7073   { "errorCompensation"           , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_errorCompensation },
7074   { "enhancementLayerInfo"        , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_enhancementLayerInfo },
7075   { "h263Options"                 , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h263Options },
7076   { NULL, 0, 0, NULL }
7077 };
7078
7079 static int
7080 dissect_h245_H263VideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7081   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7082                                 ett_h245_H263VideoCapability, H263VideoCapability_sequence);
7083
7084   return offset;
7085 }
7086 static int dissect_h263VideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7087   return dissect_h245_H263VideoCapability(tvb, offset, pinfo, tree, hf_h245_h263VideoCapability);
7088 }
7089
7090 static const per_sequence_t IS11172VideoCapability_sequence[] = {
7091   { "constrainedBitstream"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_constrainedBitstream },
7092   { "videoBitRate"                , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_videoBitRate },
7093   { "vbvBufferSize"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_vbvBufferSize },
7094   { "samplesPerLine"              , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_samplesPerLine },
7095   { "linesPerFrame"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_linesPerFrame },
7096   { "pictureRate"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_pictureRate },
7097   { "luminanceSampleRate"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_luminanceSampleRate },
7098   { "videoBadMBsCap"              , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_videoBadMBsCap },
7099   { NULL, 0, 0, NULL }
7100 };
7101
7102 static int
7103 dissect_h245_IS11172VideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7104   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7105                                 ett_h245_IS11172VideoCapability, IS11172VideoCapability_sequence);
7106
7107   return offset;
7108 }
7109 static int dissect_is11172VideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7110   return dissect_h245_IS11172VideoCapability(tvb, offset, pinfo, tree, hf_h245_is11172VideoCapability);
7111 }
7112
7113
7114 static int
7115 dissect_h245_SEQUNCE_OF_VideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7116   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
7117                                    ett_h245_SEQUNCE_OF_VideoCapability, dissect_videoCapability_item);
7118
7119   return offset;
7120 }
7121 static int dissect_videoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7122   return dissect_h245_SEQUNCE_OF_VideoCapability(tvb, offset, pinfo, tree, hf_h245_videoCapability);
7123 }
7124
7125
7126 static int
7127 dissect_h245_SEQUNCE_OF_GenericCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7128   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
7129                                    ett_h245_SEQUNCE_OF_GenericCapability, dissect_videoCapabilityExtension_item);
7130
7131   return offset;
7132 }
7133 static int dissect_videoCapabilityExtension(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7134   return dissect_h245_SEQUNCE_OF_GenericCapability(tvb, offset, pinfo, tree, hf_h245_videoCapabilityExtension);
7135 }
7136
7137 static const per_sequence_t ExtendedVideoCapability_sequence[] = {
7138   { "videoCapability"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_videoCapability },
7139   { "videoCapabilityExtension"    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_videoCapabilityExtension },
7140   { NULL, 0, 0, NULL }
7141 };
7142
7143 static int
7144 dissect_h245_ExtendedVideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7145   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7146                                 ett_h245_ExtendedVideoCapability, ExtendedVideoCapability_sequence);
7147
7148   return offset;
7149 }
7150 static int dissect_extendedVideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7151   return dissect_h245_ExtendedVideoCapability(tvb, offset, pinfo, tree, hf_h245_extendedVideoCapability);
7152 }
7153
7154
7155 static const value_string h245_VideoCapability_vals[] = {
7156   {   0, "nonStandard" },
7157   {   1, "h261VideoCapability" },
7158   {   2, "h262VideoCapability" },
7159   {   3, "h263VideoCapability" },
7160   {   4, "is11172VideoCapability" },
7161   {   5, "genericVideoCapability" },
7162   {   6, "extendedVideoCapability" },
7163   { 0, NULL }
7164 };
7165
7166 static const per_choice_t VideoCapability_choice[] = {
7167   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
7168   {   1, "h261VideoCapability"         , ASN1_EXTENSION_ROOT    , dissect_h261VideoCapability },
7169   {   2, "h262VideoCapability"         , ASN1_EXTENSION_ROOT    , dissect_h262VideoCapability },
7170   {   3, "h263VideoCapability"         , ASN1_EXTENSION_ROOT    , dissect_h263VideoCapability },
7171   {   4, "is11172VideoCapability"      , ASN1_EXTENSION_ROOT    , dissect_is11172VideoCapability },
7172   {   5, "genericVideoCapability"      , ASN1_NOT_EXTENSION_ROOT, dissect_genericVideoCapability },
7173   {   6, "extendedVideoCapability"     , ASN1_NOT_EXTENSION_ROOT, dissect_extendedVideoCapability },
7174   { 0, NULL, 0, NULL }
7175 };
7176
7177 static int
7178 dissect_h245_VideoCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7179   guint32 value;
7180
7181   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
7182                               ett_h245_VideoCapability, VideoCapability_choice, "VideoCapability",
7183                               &value);
7184
7185         codec_type = val_to_str(value, h245_VideoCapability_vals, "<unknown>");
7186
7187   return offset;
7188 }
7189
7190 static const per_sequence_t T_g7231_sequence[] = {
7191   { "maxAl-sduAudioFrames"        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_maxAl_sduAudioFrames },
7192   { "silenceSuppression"          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_silenceSuppression },
7193   { NULL, 0, 0, NULL }
7194 };
7195
7196 static int
7197 dissect_h245_T_g7231(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7198   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7199                                 ett_h245_T_g7231, T_g7231_sequence);
7200
7201   return offset;
7202 }
7203 static int dissect_g7231(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7204   return dissect_h245_T_g7231(tvb, offset, pinfo, tree, hf_h245_g7231);
7205 }
7206
7207
7208
7209 static int
7210 dissect_h245_INTEGER_1_448(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7211   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
7212                                            1U, 448U, NULL, NULL, FALSE);
7213
7214   return offset;
7215 }
7216 static int dissect_bitRate_1_448(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7217   return dissect_h245_INTEGER_1_448(tvb, offset, pinfo, tree, hf_h245_bitRate_1_448);
7218 }
7219
7220 static const per_sequence_t IS11172AudioCapability_sequence[] = {
7221   { "audioLayer1"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioLayer1 },
7222   { "audioLayer2"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioLayer2 },
7223   { "audioLayer3"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioLayer3 },
7224   { "audioSampling32k"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioSampling32k },
7225   { "audioSampling44k1"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioSampling44k1 },
7226   { "audioSampling48k"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioSampling48k },
7227   { "singleChannel"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_singleChannel },
7228   { "twoChannels"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_twoChannels },
7229   { "bitRate"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRate_1_448 },
7230   { NULL, 0, 0, NULL }
7231 };
7232
7233 static int
7234 dissect_h245_IS11172AudioCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7235   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7236                                 ett_h245_IS11172AudioCapability, IS11172AudioCapability_sequence);
7237
7238   return offset;
7239 }
7240 static int dissect_is11172AudioCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7241   return dissect_h245_IS11172AudioCapability(tvb, offset, pinfo, tree, hf_h245_is11172AudioCapability);
7242 }
7243
7244
7245
7246 static int
7247 dissect_h245_INTEGER_1_1130(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7248   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
7249                                            1U, 1130U, NULL, NULL, FALSE);
7250
7251   return offset;
7252 }
7253 static int dissect_bitRate2_1_1130(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7254   return dissect_h245_INTEGER_1_1130(tvb, offset, pinfo, tree, hf_h245_bitRate2_1_1130);
7255 }
7256
7257 static const per_sequence_t IS13818AudioCapability_sequence[] = {
7258   { "audioLayer1"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioLayer1 },
7259   { "audioLayer2"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioLayer2 },
7260   { "audioLayer3"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioLayer3 },
7261   { "audioSampling16k"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioSampling16k },
7262   { "audioSampling22k05"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioSampling22k05 },
7263   { "audioSampling24k"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioSampling24k },
7264   { "audioSampling32k"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioSampling32k },
7265   { "audioSampling44k1"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioSampling44k1 },
7266   { "audioSampling48k"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioSampling48k },
7267   { "singleChannel"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_singleChannel },
7268   { "twoChannels"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_twoChannels },
7269   { "threeChannels2-1"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_threeChannels2_1 },
7270   { "threeChannels3-0"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_threeChannels3_0 },
7271   { "fourChannels2-0-2-0"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_fourChannels2_0_2_0 },
7272   { "fourChannels2-2"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_fourChannels2_2 },
7273   { "fourChannels3-1"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_fourChannels3_1 },
7274   { "fiveChannels3-0-2-0"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_fiveChannels3_0_2_0 },
7275   { "fiveChannels3-2"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_fiveChannels3_2 },
7276   { "lowFrequencyEnhancement"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lowFrequencyEnhancement },
7277   { "multilingual"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multilingual },
7278   { "bitRate"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRate2_1_1130 },
7279   { NULL, 0, 0, NULL }
7280 };
7281
7282 static int
7283 dissect_h245_IS13818AudioCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7284   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7285                                 ett_h245_IS13818AudioCapability, IS13818AudioCapability_sequence);
7286
7287   return offset;
7288 }
7289 static int dissect_is13818AudioCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7290   return dissect_h245_IS13818AudioCapability(tvb, offset, pinfo, tree, hf_h245_is13818AudioCapability);
7291 }
7292
7293
7294
7295 static int
7296 dissect_h245_INTEGER_27_78(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7297   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
7298                                            27U, 78U, NULL, NULL, FALSE);
7299
7300   return offset;
7301 }
7302 static int dissect_highRateMode0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7303   return dissect_h245_INTEGER_27_78(tvb, offset, pinfo, tree, hf_h245_highRateMode0);
7304 }
7305 static int dissect_highRateMode1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7306   return dissect_h245_INTEGER_27_78(tvb, offset, pinfo, tree, hf_h245_highRateMode1);
7307 }
7308
7309
7310
7311 static int
7312 dissect_h245_INTEGER_23_66(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7313   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
7314                                            23U, 66U, NULL, NULL, FALSE);
7315
7316   return offset;
7317 }
7318 static int dissect_lowRateMode0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7319   return dissect_h245_INTEGER_23_66(tvb, offset, pinfo, tree, hf_h245_lowRateMode0);
7320 }
7321 static int dissect_lowRateMode1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7322   return dissect_h245_INTEGER_23_66(tvb, offset, pinfo, tree, hf_h245_lowRateMode1);
7323 }
7324
7325
7326
7327 static int
7328 dissect_h245_INTEGER_6_17(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7329   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
7330                                            6U, 17U, NULL, NULL, FALSE);
7331
7332   return offset;
7333 }
7334 static int dissect_sidMode0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7335   return dissect_h245_INTEGER_6_17(tvb, offset, pinfo, tree, hf_h245_sidMode0);
7336 }
7337 static int dissect_sidMode1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7338   return dissect_h245_INTEGER_6_17(tvb, offset, pinfo, tree, hf_h245_sidMode1);
7339 }
7340
7341 static const per_sequence_t G723AnnexCAudioMode_sequence[] = {
7342   { "highRateMode0"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_highRateMode0 },
7343   { "highRateMode1"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_highRateMode1 },
7344   { "lowRateMode0"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lowRateMode0 },
7345   { "lowRateMode1"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lowRateMode1 },
7346   { "sidMode0"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sidMode0 },
7347   { "sidMode1"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sidMode1 },
7348   { NULL, 0, 0, NULL }
7349 };
7350
7351 static int
7352 dissect_h245_G723AnnexCAudioMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7353   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7354                                 ett_h245_G723AnnexCAudioMode, G723AnnexCAudioMode_sequence);
7355
7356   return offset;
7357 }
7358 static int dissect_g723AnnexCAudioMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7359   return dissect_h245_G723AnnexCAudioMode(tvb, offset, pinfo, tree, hf_h245_g723AnnexCAudioMode);
7360 }
7361
7362 static const per_sequence_t G7231AnnexCCapability_sequence[] = {
7363   { "maxAl-sduAudioFrames"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maxAl_sduAudioFrames },
7364   { "silenceSuppression"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_silenceSuppression },
7365   { "g723AnnexCAudioMode"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_g723AnnexCAudioMode },
7366   { NULL, 0, 0, NULL }
7367 };
7368
7369 static int
7370 dissect_h245_G7231AnnexCCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7371   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7372                                 ett_h245_G7231AnnexCCapability, G7231AnnexCCapability_sequence);
7373
7374   return offset;
7375 }
7376 static int dissect_g7231AnnexCCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7377   return dissect_h245_G7231AnnexCCapability(tvb, offset, pinfo, tree, hf_h245_g7231AnnexCCapability);
7378 }
7379
7380 static const per_sequence_t GSMAudioCapability_sequence[] = {
7381   { "audioUnitSize"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioUnitSize },
7382   { "comfortNoise"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_comfortNoise },
7383   { "scrambled"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_scrambled },
7384   { NULL, 0, 0, NULL }
7385 };
7386
7387 static int
7388 dissect_h245_GSMAudioCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7389   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7390                                 ett_h245_GSMAudioCapability, GSMAudioCapability_sequence);
7391
7392   return offset;
7393 }
7394 static int dissect_gsmFullRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7395   return dissect_h245_GSMAudioCapability(tvb, offset, pinfo, tree, hf_h245_gsmFullRate);
7396 }
7397 static int dissect_gsmHalfRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7398   return dissect_h245_GSMAudioCapability(tvb, offset, pinfo, tree, hf_h245_gsmHalfRate);
7399 }
7400 static int dissect_gsmEnhancedFullRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7401   return dissect_h245_GSMAudioCapability(tvb, offset, pinfo, tree, hf_h245_gsmEnhancedFullRate);
7402 }
7403
7404 static const per_sequence_t G729Extensions_sequence[] = {
7405   { "audioUnit"                   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_audioUnit },
7406   { "annexA"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_annexA },
7407   { "annexB"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_annexB },
7408   { "annexD"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_annexD },
7409   { "annexE"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_annexE },
7410   { "annexF"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_annexF },
7411   { "annexG"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_annexG },
7412   { "annexH"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_annexH },
7413   { NULL, 0, 0, NULL }
7414 };
7415
7416 static int
7417 dissect_h245_G729Extensions(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7418   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7419                                 ett_h245_G729Extensions, G729Extensions_sequence);
7420
7421   return offset;
7422 }
7423 static int dissect_g729Extensions(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7424   return dissect_h245_G729Extensions(tvb, offset, pinfo, tree, hf_h245_g729Extensions);
7425 }
7426
7427 static const per_sequence_t VBDCapability_sequence[] = {
7428   { "type"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_vbd_cap_type },
7429   { NULL, 0, 0, NULL }
7430 };
7431
7432 static int
7433 dissect_h245_VBDCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7434   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7435                                 ett_h245_VBDCapability, VBDCapability_sequence);
7436
7437   return offset;
7438 }
7439 static int dissect_vbd(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7440   return dissect_h245_VBDCapability(tvb, offset, pinfo, tree, hf_h245_vbd);
7441 }
7442
7443
7444 static int
7445 dissect_h245_GeneralString(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7446   offset = dissect_per_GeneralString(tvb, offset, pinfo, tree, hf_index);
7447
7448   return offset;
7449 }
7450 static int dissect_audioTelephoneEvent(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7451   return dissect_h245_GeneralString(tvb, offset, pinfo, tree, hf_h245_audioTelephoneEvent);
7452 }
7453 static int dissect_alphanumeric(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7454   return dissect_h245_GeneralString(tvb, offset, pinfo, tree, hf_h245_alphanumeric);
7455 }
7456
7457 static const per_sequence_t NoPTAudioTelephonyEventCapability_sequence[] = {
7458   { "audioTelephoneEvent"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioTelephoneEvent },
7459   { NULL, 0, 0, NULL }
7460 };
7461
7462 static int
7463 dissect_h245_NoPTAudioTelephonyEventCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7464   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7465                                 ett_h245_NoPTAudioTelephonyEventCapability, NoPTAudioTelephonyEventCapability_sequence);
7466
7467   return offset;
7468 }
7469 static int dissect_audioTelephonyEvent(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7470   return dissect_h245_NoPTAudioTelephonyEventCapability(tvb, offset, pinfo, tree, hf_h245_audioTelephonyEvent);
7471 }
7472
7473 static const per_sequence_t NoPTAudioToneCapability_sequence[] = {
7474   { NULL, 0, 0, NULL }
7475 };
7476
7477 static int
7478 dissect_h245_NoPTAudioToneCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7479   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7480                                 ett_h245_NoPTAudioToneCapability, NoPTAudioToneCapability_sequence);
7481
7482   return offset;
7483 }
7484 static int dissect_audioTone(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7485   return dissect_h245_NoPTAudioToneCapability(tvb, offset, pinfo, tree, hf_h245_audioTone);
7486 }
7487
7488
7489 static const value_string h245_AudioCapability_vals[] = {
7490   {   0, "nonStandard" },
7491   {   1, "g711Alaw64k" },
7492   {   2, "g711Alaw56k" },
7493   {   3, "g711Ulaw64k" },
7494   {   4, "g711Ulaw56k" },
7495   {   5, "g722-64k" },
7496   {   6, "g722-56k" },
7497   {   7, "g722-48k" },
7498   {   8, "g7231" },
7499   {   9, "g728" },
7500   {  10, "g729" },
7501   {  11, "g729AnnexA" },
7502   {  12, "is11172AudioCapability" },
7503   {  13, "is13818AudioCapability" },
7504   {  14, "g729wAnnexB" },
7505   {  15, "g729AnnexAwAnnexB" },
7506   {  16, "g7231AnnexCCapability" },
7507   {  17, "gsmFullRate" },
7508   {  18, "gsmHalfRate" },
7509   {  19, "gsmEnhancedFullRate" },
7510   {  20, "genericAudioCapability" },
7511   {  21, "g729Extensions" },
7512   {  22, "vbd" },
7513   {  23, "audioTelephonyEvent" },
7514   {  24, "audioTone" },
7515   { 0, NULL }
7516 };
7517
7518 static const per_choice_t AudioCapability_choice[] = {
7519   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
7520   {   1, "g711Alaw64k"                 , ASN1_EXTENSION_ROOT    , dissect_g711Alaw64k },
7521   {   2, "g711Alaw56k"                 , ASN1_EXTENSION_ROOT    , dissect_g711Alaw56k },
7522   {   3, "g711Ulaw64k"                 , ASN1_EXTENSION_ROOT    , dissect_g711Ulaw64k },
7523   {   4, "g711Ulaw56k"                 , ASN1_EXTENSION_ROOT    , dissect_g711Ulaw56k },
7524   {   5, "g722-64k"                    , ASN1_EXTENSION_ROOT    , dissect_g722_64k },
7525   {   6, "g722-56k"                    , ASN1_EXTENSION_ROOT    , dissect_g722_56k },
7526   {   7, "g722-48k"                    , ASN1_EXTENSION_ROOT    , dissect_g722_48k },
7527   {   8, "g7231"                       , ASN1_EXTENSION_ROOT    , dissect_g7231 },
7528   {   9, "g728"                        , ASN1_EXTENSION_ROOT    , dissect_g728 },
7529   {  10, "g729"                        , ASN1_EXTENSION_ROOT    , dissect_g729 },
7530   {  11, "g729AnnexA"                  , ASN1_EXTENSION_ROOT    , dissect_g729AnnexA },
7531   {  12, "is11172AudioCapability"      , ASN1_EXTENSION_ROOT    , dissect_is11172AudioCapability },
7532   {  13, "is13818AudioCapability"      , ASN1_EXTENSION_ROOT    , dissect_is13818AudioCapability },
7533   {  14, "g729wAnnexB"                 , ASN1_NOT_EXTENSION_ROOT, dissect_g729wAnnexB },
7534   {  15, "g729AnnexAwAnnexB"           , ASN1_NOT_EXTENSION_ROOT, dissect_g729AnnexAwAnnexB },
7535   {  16, "g7231AnnexCCapability"       , ASN1_NOT_EXTENSION_ROOT, dissect_g7231AnnexCCapability },
7536   {  17, "gsmFullRate"                 , ASN1_NOT_EXTENSION_ROOT, dissect_gsmFullRate },
7537   {  18, "gsmHalfRate"                 , ASN1_NOT_EXTENSION_ROOT, dissect_gsmHalfRate },
7538   {  19, "gsmEnhancedFullRate"         , ASN1_NOT_EXTENSION_ROOT, dissect_gsmEnhancedFullRate },
7539   {  20, "genericAudioCapability"      , ASN1_NOT_EXTENSION_ROOT, dissect_genericAudioCapability },
7540   {  21, "g729Extensions"              , ASN1_NOT_EXTENSION_ROOT, dissect_g729Extensions },
7541   {  22, "vbd"                         , ASN1_NOT_EXTENSION_ROOT, dissect_vbd },
7542   {  23, "audioTelephonyEvent"         , ASN1_NOT_EXTENSION_ROOT, dissect_audioTelephonyEvent },
7543   {  24, "audioTone"                   , ASN1_NOT_EXTENSION_ROOT, dissect_audioTone },
7544   { 0, NULL, 0, NULL }
7545 };
7546
7547 static int
7548 dissect_h245_AudioCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7549   guint32 value;
7550
7551   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
7552                               ett_h245_AudioCapability, AudioCapability_choice, "AudioCapability",
7553                               &value);
7554
7555         codec_type = val_to_str(value, h245_AudioCapability_vals, "<unknown>");
7556
7557   return offset;
7558 }
7559
7560 static const per_sequence_t T_h233EncryptionReceiveCapability_sequence[] = {
7561   { "h233IVResponseTime"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h233IVResponseTime },
7562   { NULL, 0, 0, NULL }
7563 };
7564
7565 static int
7566 dissect_h245_T_h233EncryptionReceiveCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7567   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7568                                 ett_h245_T_h233EncryptionReceiveCapability, T_h233EncryptionReceiveCapability_sequence);
7569
7570   return offset;
7571 }
7572 static int dissect_h233EncryptionReceiveCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7573   return dissect_h245_T_h233EncryptionReceiveCapability(tvb, offset, pinfo, tree, hf_h245_h233EncryptionReceiveCapability);
7574 }
7575
7576
7577 static int
7578 dissect_h245_SEQUNCE_OF_NonStandardParameter(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7579   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
7580                                    ett_h245_SEQUNCE_OF_NonStandardParameter, dissect_nonStandardData_item);
7581
7582   return offset;
7583 }
7584 static int dissect_nonStandardParams(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7585   return dissect_h245_SEQUNCE_OF_NonStandardParameter(tvb, offset, pinfo, tree, hf_h245_nonStandardParams);
7586 }
7587
7588 static const per_sequence_t ConferenceCapability_sequence[] = {
7589   { "nonStandardData"             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nonStandardParams },
7590   { "chairControlCapability"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_chairControlCapability },
7591   { "videoIndicateMixingCapability", ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_videoIndicateMixingCapability },
7592   { "multipointVisualizationCapability", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_multipointVisualizationCapability },
7593   { NULL, 0, 0, NULL }
7594 };
7595
7596 static int
7597 dissect_h245_ConferenceCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7598   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7599                                 ett_h245_ConferenceCapability, ConferenceCapability_sequence);
7600
7601   return offset;
7602 }
7603 static int dissect_conferenceCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7604   return dissect_h245_ConferenceCapability(tvb, offset, pinfo, tree, hf_h245_conferenceCapability);
7605 }
7606
7607
7608 static const value_string h245_MediaEncryptionAlgorithm_vals[] = {
7609   {   0, "nonStandard" },
7610   {   1, "algorithm" },
7611   { 0, NULL }
7612 };
7613
7614 static const per_choice_t MediaEncryptionAlgorithm_choice[] = {
7615   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
7616   {   1, "algorithm"                   , ASN1_EXTENSION_ROOT    , dissect_algorithm },
7617   { 0, NULL, 0, NULL }
7618 };
7619
7620 static int
7621 dissect_h245_MediaEncryptionAlgorithm(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7622   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
7623                               ett_h245_MediaEncryptionAlgorithm, MediaEncryptionAlgorithm_choice, "MediaEncryptionAlgorithm",
7624                               NULL);
7625
7626   return offset;
7627 }
7628 static int dissect_EncryptionCapability_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7629   return dissect_h245_MediaEncryptionAlgorithm(tvb, offset, pinfo, tree, hf_h245_EncryptionCapability_item);
7630 }
7631
7632
7633 static int
7634 dissect_h245_EncryptionCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7635   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
7636                                                ett_h245_EncryptionCapability, dissect_EncryptionCapability_item,
7637                                                1, 256);
7638
7639   return offset;
7640 }
7641 static int dissect_encryptionCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7642   return dissect_h245_EncryptionCapability(tvb, offset, pinfo, tree, hf_h245_encryptionCapability);
7643 }
7644
7645 static const per_sequence_t AuthenticationCapability_sequence[] = {
7646   { "nonStandard"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nonStandard },
7647   { "antiSpamAlgorithm"           , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_antiSpamAlgorithm },
7648   { NULL, 0, 0, NULL }
7649 };
7650
7651 static int
7652 dissect_h245_AuthenticationCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7653   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7654                                 ett_h245_AuthenticationCapability, AuthenticationCapability_sequence);
7655
7656   return offset;
7657 }
7658 static int dissect_authenticationCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7659   return dissect_h245_AuthenticationCapability(tvb, offset, pinfo, tree, hf_h245_authenticationCapability);
7660 }
7661
7662 static const per_sequence_t IntegrityCapability_sequence[] = {
7663   { "nonStandard"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nonStandard },
7664   { NULL, 0, 0, NULL }
7665 };
7666
7667 static int
7668 dissect_h245_IntegrityCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7669   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7670                                 ett_h245_IntegrityCapability, IntegrityCapability_sequence);
7671
7672   return offset;
7673 }
7674 static int dissect_integrityCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7675   return dissect_h245_IntegrityCapability(tvb, offset, pinfo, tree, hf_h245_integrityCapability);
7676 }
7677
7678 static const per_sequence_t EncryptionAuthenticationAndIntegrity_sequence[] = {
7679   { "encryptionCapability"        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_encryptionCapability },
7680   { "authenticationCapability"    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_authenticationCapability },
7681   { "integrityCapability"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_integrityCapability },
7682   { NULL, 0, 0, NULL }
7683 };
7684
7685 static int
7686 dissect_h245_EncryptionAuthenticationAndIntegrity(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7687   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7688                                 ett_h245_EncryptionAuthenticationAndIntegrity, EncryptionAuthenticationAndIntegrity_sequence);
7689
7690   return offset;
7691 }
7692 static int dissect_encryptionAuthenticationAndIntegrity(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7693   return dissect_h245_EncryptionAuthenticationAndIntegrity(tvb, offset, pinfo, tree, hf_h245_encryptionAuthenticationAndIntegrity);
7694 }
7695
7696 static const per_sequence_t H235SecurityCapability_sequence[] = {
7697   { "encryptionAuthenticationAndIntegrity", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_encryptionAuthenticationAndIntegrity },
7698   { "mediaCapability"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mediaCapability },
7699   { NULL, 0, 0, NULL }
7700 };
7701
7702 static int
7703 dissect_h245_H235SecurityCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7704   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7705                                 ett_h245_H235SecurityCapability, H235SecurityCapability_sequence);
7706
7707   return offset;
7708 }
7709 static int dissect_h235SecurityCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7710   return dissect_h245_H235SecurityCapability(tvb, offset, pinfo, tree, hf_h245_h235SecurityCapability);
7711 }
7712
7713
7714 static int
7715 dissect_h245_SEQUNCE_SIZE_1_16_OF_NonStandardParameter(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7716   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
7717                                                ett_h245_SEQUNCE_SIZE_1_16_OF_NonStandardParameter, dissect_nonStandard_item,
7718                                                1, 16);
7719
7720   return offset;
7721 }
7722 static int dissect_ui_nonStandard(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7723   return dissect_h245_SEQUNCE_SIZE_1_16_OF_NonStandardParameter(tvb, offset, pinfo, tree, hf_h245_ui_nonStandard);
7724 }
7725
7726
7727 static const value_string h245_UserInputCapability_vals[] = {
7728   {   0, "nonStandard" },
7729   {   1, "basicString" },
7730   {   2, "iA5String" },
7731   {   3, "generalString" },
7732   {   4, "dtmf" },
7733   {   5, "hookflash" },
7734   {   6, "extendedAlphanumeric" },
7735   {   7, "encryptedBasicString" },
7736   {   8, "encryptedIA5String" },
7737   {   9, "encryptedGeneralString" },
7738   {  10, "secureDTMF" },
7739   { 0, NULL }
7740 };
7741
7742 static const per_choice_t UserInputCapability_choice[] = {
7743   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_ui_nonStandard },
7744   {   1, "basicString"                 , ASN1_EXTENSION_ROOT    , dissect_basicString },
7745   {   2, "iA5String"                   , ASN1_EXTENSION_ROOT    , dissect_iA5String },
7746   {   3, "generalString"               , ASN1_EXTENSION_ROOT    , dissect_generalString },
7747   {   4, "dtmf"                        , ASN1_EXTENSION_ROOT    , dissect_dtmf },
7748   {   5, "hookflash"                   , ASN1_EXTENSION_ROOT    , dissect_hookflash },
7749   {   6, "extendedAlphanumeric"        , ASN1_NOT_EXTENSION_ROOT, dissect_extendedAlphanumericFlag },
7750   {   7, "encryptedBasicString"        , ASN1_NOT_EXTENSION_ROOT, dissect_encryptedBasicString },
7751   {   8, "encryptedIA5String"          , ASN1_NOT_EXTENSION_ROOT, dissect_encryptedIA5String },
7752   {   9, "encryptedGeneralString"      , ASN1_NOT_EXTENSION_ROOT, dissect_encryptedGeneralString },
7753   {  10, "secureDTMF"                  , ASN1_NOT_EXTENSION_ROOT, dissect_secureDTMF },
7754   { 0, NULL, 0, NULL }
7755 };
7756
7757 static int
7758 dissect_h245_UserInputCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7759   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
7760                               ett_h245_UserInputCapability, UserInputCapability_choice, "UserInputCapability",
7761                               NULL);
7762
7763   return offset;
7764 }
7765 static int dissect_receiveUserInputCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7766   return dissect_h245_UserInputCapability(tvb, offset, pinfo, tree, hf_h245_receiveUserInputCapability);
7767 }
7768 static int dissect_transmitUserInputCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7769   return dissect_h245_UserInputCapability(tvb, offset, pinfo, tree, hf_h245_transmitUserInputCapability);
7770 }
7771 static int dissect_receiveAndTransmitUserInputCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7772   return dissect_h245_UserInputCapability(tvb, offset, pinfo, tree, hf_h245_receiveAndTransmitUserInputCapability);
7773 }
7774
7775
7776 static const value_string h245_MultiplexFormat_vals[] = {
7777   {   0, "nonStandard" },
7778   {   1, "h222Capability" },
7779   {   2, "h223Capability" },
7780   { 0, NULL }
7781 };
7782
7783 static const per_choice_t MultiplexFormat_choice[] = {
7784   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
7785   {   1, "h222Capability"              , ASN1_EXTENSION_ROOT    , dissect_h222Capability },
7786   {   2, "h223Capability"              , ASN1_EXTENSION_ROOT    , dissect_h223Capability },
7787   { 0, NULL, 0, NULL }
7788 };
7789
7790 static int
7791 dissect_h245_MultiplexFormat(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7792   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
7793                               ett_h245_MultiplexFormat, MultiplexFormat_choice, "MultiplexFormat",
7794                               NULL);
7795
7796   return offset;
7797 }
7798 static int dissect_multiplexFormat(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7799   return dissect_h245_MultiplexFormat(tvb, offset, pinfo, tree, hf_h245_multiplexFormat);
7800 }
7801
7802
7803 static int
7804 dissect_h245_AlternativeCapabilitySet(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7805   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
7806                                                ett_h245_AlternativeCapabilitySet, dissect_AlternativeCapabilitySet_item,
7807                                                1, 256);
7808
7809   return offset;
7810 }
7811 static int dissect_simultaneousCapabilities_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7812   return dissect_h245_AlternativeCapabilitySet(tvb, offset, pinfo, tree, hf_h245_simultaneousCapabilities_item);
7813 }
7814 static int dissect_capabilityOnMuxStream_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7815   return dissect_h245_AlternativeCapabilitySet(tvb, offset, pinfo, tree, hf_h245_capabilityOnMuxStream_item);
7816 }
7817 static int dissect_capabilities_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7818   return dissect_h245_AlternativeCapabilitySet(tvb, offset, pinfo, tree, hf_h245_capabilities_item);
7819 }
7820
7821
7822 static int
7823 dissect_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7824   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
7825                                           ett_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet, dissect_simultaneousCapabilities_item,
7826                                           1, 256);
7827
7828   return offset;
7829 }
7830 static int dissect_simultaneousCapabilities(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7831   return dissect_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet(tvb, offset, pinfo, tree, hf_h245_simultaneousCapabilities);
7832 }
7833 static int dissect_capabilityOnMuxStream(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7834   return dissect_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet(tvb, offset, pinfo, tree, hf_h245_capabilityOnMuxStream);
7835 }
7836 static int dissect_capabilities(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7837   return dissect_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet(tvb, offset, pinfo, tree, hf_h245_capabilities);
7838 }
7839
7840 static const per_sequence_t MultiplexedStreamCapability_sequence[] = {
7841   { "multiplexFormat"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multiplexFormat },
7842   { "controlOnMuxStream"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_controlOnMuxStream },
7843   { "capabilityOnMuxStream"       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_capabilityOnMuxStream },
7844   { NULL, 0, 0, NULL }
7845 };
7846
7847 static int
7848 dissect_h245_MultiplexedStreamCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7849   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7850                                 ett_h245_MultiplexedStreamCapability, MultiplexedStreamCapability_sequence);
7851
7852   return offset;
7853 }
7854 static int dissect_receiveMultiplexedStreamCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7855   return dissect_h245_MultiplexedStreamCapability(tvb, offset, pinfo, tree, hf_h245_receiveMultiplexedStreamCapability);
7856 }
7857 static int dissect_transmitMultiplexedStreamCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7858   return dissect_h245_MultiplexedStreamCapability(tvb, offset, pinfo, tree, hf_h245_transmitMultiplexedStreamCapability);
7859 }
7860 static int dissect_receiveAndTransmitMultiplexedStreamCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7861   return dissect_h245_MultiplexedStreamCapability(tvb, offset, pinfo, tree, hf_h245_receiveAndTransmitMultiplexedStreamCapability);
7862 }
7863
7864
7865
7866 static int
7867 dissect_h245_INTEGER_96_127(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7868   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
7869                                            96U, 127U, NULL, NULL, FALSE);
7870
7871   return offset;
7872 }
7873 static int dissect_dynamicRTPPayloadType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7874   return dissect_h245_INTEGER_96_127(tvb, offset, pinfo, tree, hf_h245_dynamicRTPPayloadType);
7875 }
7876
7877 static const per_sequence_t AudioTelephonyEventCapability_sequence[] = {
7878   { "dynamicRTPPayloadType"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dynamicRTPPayloadType },
7879   { "audioTelephoneEvent"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioTelephoneEvent },
7880   { NULL, 0, 0, NULL }
7881 };
7882
7883 static int
7884 dissect_h245_AudioTelephonyEventCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7885   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7886                                 ett_h245_AudioTelephonyEventCapability, AudioTelephonyEventCapability_sequence);
7887
7888   return offset;
7889 }
7890 static int dissect_receiveRTPAudioTelephonyEventCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7891   return dissect_h245_AudioTelephonyEventCapability(tvb, offset, pinfo, tree, hf_h245_receiveRTPAudioTelephonyEventCapability);
7892 }
7893
7894 static const per_sequence_t AudioToneCapability_sequence[] = {
7895   { "dynamicRTPPayloadType"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dynamicRTPPayloadType },
7896   { NULL, 0, 0, NULL }
7897 };
7898
7899 static int
7900 dissect_h245_AudioToneCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7901   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7902                                 ett_h245_AudioToneCapability, AudioToneCapability_sequence);
7903
7904   return offset;
7905 }
7906 static int dissect_receiveRTPAudioToneCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7907   return dissect_h245_AudioToneCapability(tvb, offset, pinfo, tree, hf_h245_receiveRTPAudioToneCapability);
7908 }
7909
7910 static const per_sequence_t T_separateStream_sequence[] = {
7911   { "separatePort"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_separatePort },
7912   { "samePort"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_samePortBool },
7913   { NULL, 0, 0, NULL }
7914 };
7915
7916 static int
7917 dissect_h245_T_separateStream(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7918   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7919                                 ett_h245_T_separateStream, T_separateStream_sequence);
7920
7921   return offset;
7922 }
7923 static int dissect_separateStreamBool(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7924   return dissect_h245_T_separateStream(tvb, offset, pinfo, tree, hf_h245_separateStreamBool);
7925 }
7926
7927 static const per_sequence_t FECC_rfc2733_sequence[] = {
7928   { "redundancyEncoding"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_redundancyEncodingBool },
7929   { "separateStream"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_separateStreamBool },
7930   { NULL, 0, 0, NULL }
7931 };
7932
7933 static int
7934 dissect_h245_FECC_rfc2733(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7935   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7936                                 ett_h245_FECC_rfc2733, FECC_rfc2733_sequence);
7937
7938   return offset;
7939 }
7940 static int dissect_fecc_rfc2733(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7941   return dissect_h245_FECC_rfc2733(tvb, offset, pinfo, tree, hf_h245_fecc_rfc2733);
7942 }
7943
7944
7945 static const value_string h245_FECCapability_vals[] = {
7946   {   0, "rfc2733" },
7947   { 0, NULL }
7948 };
7949
7950 static const per_choice_t FECCapability_choice[] = {
7951   {   0, "rfc2733"                     , ASN1_EXTENSION_ROOT    , dissect_fecc_rfc2733 },
7952   { 0, NULL, 0, NULL }
7953 };
7954
7955 static int
7956 dissect_h245_FECCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7957   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
7958                               ett_h245_FECCapability, FECCapability_choice, "FECCapability",
7959                               NULL);
7960
7961   return offset;
7962 }
7963 static int dissect_fecCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7964   return dissect_h245_FECCapability(tvb, offset, pinfo, tree, hf_h245_fecCapability);
7965 }
7966
7967 static const per_sequence_t MultiplePayloadStreamCapability_sequence[] = {
7968   { "capabilities"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_capabilities },
7969   { NULL, 0, 0, NULL }
7970 };
7971
7972 static int
7973 dissect_h245_MultiplePayloadStreamCapability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
7974   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
7975                                 ett_h245_MultiplePayloadStreamCapability, MultiplePayloadStreamCapability_sequence);
7976
7977   return offset;
7978 }
7979 static int dissect_multiplePayloadStreamCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
7980   return dissect_h245_MultiplePayloadStreamCapability(tvb, offset, pinfo, tree, hf_h245_multiplePayloadStreamCapability);
7981 }
7982
7983
7984 static const value_string h245_Capability_vals[] = {
7985   {   0, "nonStandard" },
7986   {   1, "receiveVideoCapability" },
7987   {   2, "transmitVideoCapability" },
7988   {   3, "receiveAndTransmitVideoCapability" },
7989   {   4, "receiveAudioCapability" },
7990   {   5, "transmitAudioCapability" },
7991   {   6, "receiveAndTransmitAudioCapability" },
7992   {   7, "receiveDataApplicationCapability" },
7993   {   8, "transmitDataApplicationCapability" },
7994   {   9, "receiveAndTransmitDataApplicationCapability" },
7995   {  10, "h233EncryptionTransmitCapability" },
7996   {  11, "h233EncryptionReceiveCapability" },
7997   {  12, "conferenceCapability" },
7998   {  13, "h235SecurityCapability" },
7999   {  14, "maxPendingReplacementFor" },
8000   {  15, "receiveUserInputCapability" },
8001   {  16, "transmitUserInputCapability" },
8002   {  17, "receiveAndTransmitUserInputCapability" },
8003   {  18, "genericControlCapability" },
8004   {  19, "receiveMultiplexedStreamCapability" },
8005   {  20, "transmitMultiplexedStreamCapability" },
8006   {  21, "receiveAndTransmitMultiplexedStreamCapability" },
8007   {  22, "receiveRTPAudioTelephonyEventCapability" },
8008   {  23, "receiveRTPAudioToneCapability" },
8009   {  24, "fecCapability" },
8010   {  25, "multiplePayloadStreamCapability" },
8011   { 0, NULL }
8012 };
8013
8014 static const per_choice_t Capability_choice[] = {
8015   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
8016   {   1, "receiveVideoCapability"      , ASN1_EXTENSION_ROOT    , dissect_receiveVideoCapability },
8017   {   2, "transmitVideoCapability"     , ASN1_EXTENSION_ROOT    , dissect_transmitVideoCapability },
8018   {   3, "receiveAndTransmitVideoCapability", ASN1_EXTENSION_ROOT    , dissect_receiveAndTransmitVideoCapability },
8019   {   4, "receiveAudioCapability"      , ASN1_EXTENSION_ROOT    , dissect_receiveAudioCapability },
8020   {   5, "transmitAudioCapability"     , ASN1_EXTENSION_ROOT    , dissect_transmitAudioCapability },
8021   {   6, "receiveAndTransmitAudioCapability", ASN1_EXTENSION_ROOT    , dissect_receiveAndTransmitAudioCapability },
8022   {   7, "receiveDataApplicationCapability", ASN1_EXTENSION_ROOT    , dissect_receiveDataApplicationCapability },
8023   {   8, "transmitDataApplicationCapability", ASN1_EXTENSION_ROOT    , dissect_transmitDataApplicationCapability },
8024   {   9, "receiveAndTransmitDataApplicationCapability", ASN1_EXTENSION_ROOT    , dissect_receiveAndTransmitDataApplicationCapability },
8025   {  10, "h233EncryptionTransmitCapability", ASN1_EXTENSION_ROOT    , dissect_h233EncryptionTransmitCapability },
8026   {  11, "h233EncryptionReceiveCapability", ASN1_EXTENSION_ROOT    , dissect_h233EncryptionReceiveCapability },
8027   {  12, "conferenceCapability"        , ASN1_NOT_EXTENSION_ROOT, dissect_conferenceCapability },
8028   {  13, "h235SecurityCapability"      , ASN1_NOT_EXTENSION_ROOT, dissect_h235SecurityCapability },
8029   {  14, "maxPendingReplacementFor"    , ASN1_NOT_EXTENSION_ROOT, dissect_maxPendingReplacementFor },
8030   {  15, "receiveUserInputCapability"  , ASN1_NOT_EXTENSION_ROOT, dissect_receiveUserInputCapability },
8031   {  16, "transmitUserInputCapability" , ASN1_NOT_EXTENSION_ROOT, dissect_transmitUserInputCapability },
8032   {  17, "receiveAndTransmitUserInputCapability", ASN1_NOT_EXTENSION_ROOT, dissect_receiveAndTransmitUserInputCapability },
8033   {  18, "genericControlCapability"    , ASN1_NOT_EXTENSION_ROOT, dissect_genericControlCapability },
8034   {  19, "receiveMultiplexedStreamCapability", ASN1_NOT_EXTENSION_ROOT, dissect_receiveMultiplexedStreamCapability },
8035   {  20, "transmitMultiplexedStreamCapability", ASN1_NOT_EXTENSION_ROOT, dissect_transmitMultiplexedStreamCapability },
8036   {  21, "receiveAndTransmitMultiplexedStreamCapability", ASN1_NOT_EXTENSION_ROOT, dissect_receiveAndTransmitMultiplexedStreamCapability },
8037   {  22, "receiveRTPAudioTelephonyEventCapability", ASN1_NOT_EXTENSION_ROOT, dissect_receiveRTPAudioTelephonyEventCapability },
8038   {  23, "receiveRTPAudioToneCapability", ASN1_NOT_EXTENSION_ROOT, dissect_receiveRTPAudioToneCapability },
8039   {  24, "fecCapability"               , ASN1_NOT_EXTENSION_ROOT, dissect_fecCapability },
8040   {  25, "multiplePayloadStreamCapability", ASN1_NOT_EXTENSION_ROOT, dissect_multiplePayloadStreamCapability },
8041   { 0, NULL, 0, NULL }
8042 };
8043
8044 static int
8045 dissect_h245_Capability(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8046   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8047                               ett_h245_Capability, Capability_choice, "Capability",
8048                               NULL);
8049
8050   return offset;
8051 }
8052 static int dissect_capability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8053   return dissect_h245_Capability(tvb, offset, pinfo, tree, hf_h245_capability);
8054 }
8055
8056 static const per_sequence_t CapabilityTableEntry_sequence[] = {
8057   { "capabilityTableEntryNumber"  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_capabilityTableEntryNumber },
8058   { "capability"                  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_capability },
8059   { NULL, 0, 0, NULL }
8060 };
8061
8062 static int
8063 dissect_h245_CapabilityTableEntry(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8064   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8065                                 ett_h245_CapabilityTableEntry, CapabilityTableEntry_sequence);
8066
8067   return offset;
8068 }
8069 static int dissect_capabilityTable_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8070   return dissect_h245_CapabilityTableEntry(tvb, offset, pinfo, tree, hf_h245_capabilityTable_item);
8071 }
8072
8073
8074 static int
8075 dissect_h245_SET_SIZE_1_256_OF_CapabilityTableEntry(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8076   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
8077                                           ett_h245_SET_SIZE_1_256_OF_CapabilityTableEntry, dissect_capabilityTable_item,
8078                                           1, 256);
8079
8080   return offset;
8081 }
8082 static int dissect_capabilityTable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8083   return dissect_h245_SET_SIZE_1_256_OF_CapabilityTableEntry(tvb, offset, pinfo, tree, hf_h245_capabilityTable);
8084 }
8085
8086
8087
8088 static int
8089 dissect_h245_CapabilityDescriptorNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8090   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
8091                                            0U, 255U, NULL, NULL, FALSE);
8092
8093   return offset;
8094 }
8095 static int dissect_capabilityDescriptorNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8096   return dissect_h245_CapabilityDescriptorNumber(tvb, offset, pinfo, tree, hf_h245_capabilityDescriptorNumber);
8097 }
8098 static int dissect_capabilityDescriptorNumbers_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8099   return dissect_h245_CapabilityDescriptorNumber(tvb, offset, pinfo, tree, hf_h245_capabilityDescriptorNumbers_item);
8100 }
8101
8102 static const per_sequence_t CapabilityDescriptor_sequence[] = {
8103   { "capabilityDescriptorNumber"  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_capabilityDescriptorNumber },
8104   { "simultaneousCapabilities"    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_simultaneousCapabilities },
8105   { NULL, 0, 0, NULL }
8106 };
8107
8108 static int
8109 dissect_h245_CapabilityDescriptor(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8110   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8111                                 ett_h245_CapabilityDescriptor, CapabilityDescriptor_sequence);
8112
8113   return offset;
8114 }
8115 static int dissect_capabilityDescriptors_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8116   return dissect_h245_CapabilityDescriptor(tvb, offset, pinfo, tree, hf_h245_capabilityDescriptors_item);
8117 }
8118
8119
8120 static int
8121 dissect_h245_SET_SIZE_1_256_OF_CapabilityDescriptor(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8122   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
8123                                           ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptor, dissect_capabilityDescriptors_item,
8124                                           1, 256);
8125
8126   return offset;
8127 }
8128 static int dissect_capabilityDescriptors(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8129   return dissect_h245_SET_SIZE_1_256_OF_CapabilityDescriptor(tvb, offset, pinfo, tree, hf_h245_capabilityDescriptors);
8130 }
8131
8132 static const per_sequence_t TerminalCapabilitySet_sequence[] = {
8133   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
8134   { "protocolIdentifier"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_protocolIdentifier },
8135   { "multiplexCapability"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_multiplexCapability },
8136   { "capabilityTable"             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_capabilityTable },
8137   { "capabilityDescriptors"       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_capabilityDescriptors },
8138   { NULL, 0, 0, NULL }
8139 };
8140
8141 static int
8142 dissect_h245_TerminalCapabilitySet(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8143   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8144                                 ett_h245_TerminalCapabilitySet, TerminalCapabilitySet_sequence);
8145
8146
8147   h245_pi.msg_type = H245_TermCapSet;
8148   return offset;
8149 }
8150 static int dissect_terminalCapabilitySet(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8151   return dissect_h245_TerminalCapabilitySet(tvb, offset, pinfo, tree, hf_h245_terminalCapabilitySet);
8152 }
8153
8154
8155
8156 static int
8157 dissect_h245_LogicalChannelNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8158   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
8159                                            1U, 65535U, NULL, NULL, FALSE);
8160
8161   return offset;
8162 }
8163 static int dissect_forwardLogicalChannelNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8164   return dissect_h245_LogicalChannelNumber(tvb, offset, pinfo, tree, hf_h245_forwardLogicalChannelNumber);
8165 }
8166 static int dissect_forwardLogicalChannelDependency(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8167   return dissect_h245_LogicalChannelNumber(tvb, offset, pinfo, tree, hf_h245_forwardLogicalChannelDependency);
8168 }
8169 static int dissect_replacementFor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8170   return dissect_h245_LogicalChannelNumber(tvb, offset, pinfo, tree, hf_h245_replacementFor);
8171 }
8172 static int dissect_reverseLogicalChannelDependency(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8173   return dissect_h245_LogicalChannelNumber(tvb, offset, pinfo, tree, hf_h245_reverseLogicalChannelDependency);
8174 }
8175 static int dissect_reverseLogicalChannelNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8176   return dissect_h245_LogicalChannelNumber(tvb, offset, pinfo, tree, hf_h245_reverseLogicalChannelNumber);
8177 }
8178 static int dissect_logicalChannelNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8179   return dissect_h245_LogicalChannelNumber(tvb, offset, pinfo, tree, hf_h245_logicalChannelNumber);
8180 }
8181 static int dissect_mediaLoop(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8182   return dissect_h245_LogicalChannelNumber(tvb, offset, pinfo, tree, hf_h245_mediaLoop);
8183 }
8184 static int dissect_logicalChannelLoop(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8185   return dissect_h245_LogicalChannelNumber(tvb, offset, pinfo, tree, hf_h245_logicalChannelLoop);
8186 }
8187 static int dissect_broadcastMyLogicalChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8188   return dissect_h245_LogicalChannelNumber(tvb, offset, pinfo, tree, hf_h245_broadcastMyLogicalChannel);
8189 }
8190 static int dissect_cancelBroadcastMyLogicalChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8191   return dissect_h245_LogicalChannelNumber(tvb, offset, pinfo, tree, hf_h245_cancelBroadcastMyLogicalChannel);
8192 }
8193 static int dissect_logicalChannelNumber1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8194   return dissect_h245_LogicalChannelNumber(tvb, offset, pinfo, tree, hf_h245_logicalChannelNumber1);
8195 }
8196 static int dissect_logicalChannelNumber2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8197   return dissect_h245_LogicalChannelNumber(tvb, offset, pinfo, tree, hf_h245_logicalChannelNumber2);
8198 }
8199
8200
8201 static const value_string h245_EncryptionMode_vals[] = {
8202   {   0, "nonStandard" },
8203   {   1, "h233Encryption" },
8204   { 0, NULL }
8205 };
8206
8207 static const per_choice_t EncryptionMode_choice[] = {
8208   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
8209   {   1, "h233Encryption"              , ASN1_EXTENSION_ROOT    , dissect_h233Encryption },
8210   { 0, NULL, 0, NULL }
8211 };
8212
8213 static int
8214 dissect_h245_EncryptionMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8215   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8216                               ett_h245_EncryptionMode, EncryptionMode_choice, "EncryptionMode",
8217                               NULL);
8218
8219   return offset;
8220 }
8221 static int dissect_encryptionData(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8222   return dissect_h245_EncryptionMode(tvb, offset, pinfo, tree, hf_h245_encryptionData);
8223 }
8224 static int dissect_encryptionMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8225   return dissect_h245_EncryptionMode(tvb, offset, pinfo, tree, hf_h245_encryptionMode);
8226 }
8227
8228 static const per_sequence_t RedundancyEncodingElement_sequence[] = {
8229   { "dataType"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dataType },
8230   { "payloadType"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_payloadType },
8231   { NULL, 0, 0, NULL }
8232 };
8233
8234 static int
8235 dissect_h245_RedundancyEncodingElement(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8236   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8237                                 ett_h245_RedundancyEncodingElement, RedundancyEncodingElement_sequence);
8238
8239   return offset;
8240 }
8241 static int dissect_primary(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8242   return dissect_h245_RedundancyEncodingElement(tvb, offset, pinfo, tree, hf_h245_primary);
8243 }
8244 static int dissect_secondary_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8245   return dissect_h245_RedundancyEncodingElement(tvb, offset, pinfo, tree, hf_h245_secondary_item);
8246 }
8247
8248
8249 static int
8250 dissect_h245_SEQUNCE_OF_RedundancyEncodingElement(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8251   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
8252                                    ett_h245_SEQUNCE_OF_RedundancyEncodingElement, dissect_secondary_item);
8253
8254   return offset;
8255 }
8256 static int dissect_secondary(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8257   return dissect_h245_SEQUNCE_OF_RedundancyEncodingElement(tvb, offset, pinfo, tree, hf_h245_secondary);
8258 }
8259
8260 static const per_sequence_t T_rtpRedundancyEncoding_sequence[] = {
8261   { "primary"                     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_primary },
8262   { "secondary"                   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_secondary },
8263   { NULL, 0, 0, NULL }
8264 };
8265
8266 static int
8267 dissect_h245_T_rtpRedundancyEncoding(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8268   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8269                                 ett_h245_T_rtpRedundancyEncoding, T_rtpRedundancyEncoding_sequence);
8270
8271   return offset;
8272 }
8273 static int dissect_rtpRedundancyEncoding(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8274   return dissect_h245_T_rtpRedundancyEncoding(tvb, offset, pinfo, tree, hf_h245_rtpRedundancyEncoding);
8275 }
8276
8277 static const per_sequence_t RedundancyEncoding_sequence[] = {
8278   { "redundancyEncodingMethod"    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_redundancyEncodingMethod },
8279   { "secondaryEncoding3"          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_secondaryEncoding3 },
8280   { "rtpRedundancyEncoding"       , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rtpRedundancyEncoding },
8281   { NULL, 0, 0, NULL }
8282 };
8283
8284 static int
8285 dissect_h245_RedundancyEncoding(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8286   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8287                                 ett_h245_RedundancyEncoding, RedundancyEncoding_sequence);
8288
8289   return offset;
8290 }
8291 static int dissect_redundancyEncoding(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8292   return dissect_h245_RedundancyEncoding(tvb, offset, pinfo, tree, hf_h245_redundancyEncoding);
8293 }
8294
8295 static const per_sequence_t MultiplePayloadStreamElement_sequence[] = {
8296   { "dataType"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dataType },
8297   { "payloadType"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_payloadType },
8298   { NULL, 0, 0, NULL }
8299 };
8300
8301 static int
8302 dissect_h245_MultiplePayloadStreamElement(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8303   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8304                                 ett_h245_MultiplePayloadStreamElement, MultiplePayloadStreamElement_sequence);
8305
8306   return offset;
8307 }
8308 static int dissect_elements_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8309   return dissect_h245_MultiplePayloadStreamElement(tvb, offset, pinfo, tree, hf_h245_elements_item);
8310 }
8311
8312
8313 static int
8314 dissect_h245_SEQUNCE_OF_MultiplePayloadStreamElement(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8315   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
8316                                    ett_h245_SEQUNCE_OF_MultiplePayloadStreamElement, dissect_elements_item);
8317
8318   return offset;
8319 }
8320 static int dissect_elements(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8321   return dissect_h245_SEQUNCE_OF_MultiplePayloadStreamElement(tvb, offset, pinfo, tree, hf_h245_elements);
8322 }
8323
8324 static const per_sequence_t MultiplePayloadStream_sequence[] = {
8325   { "elements"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_elements },
8326   { NULL, 0, 0, NULL }
8327 };
8328
8329 static int
8330 dissect_h245_MultiplePayloadStream(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8331   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8332                                 ett_h245_MultiplePayloadStream, MultiplePayloadStream_sequence);
8333
8334   return offset;
8335 }
8336 static int dissect_multiplePayloadStream(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8337   return dissect_h245_MultiplePayloadStream(tvb, offset, pinfo, tree, hf_h245_multiplePayloadStream);
8338 }
8339
8340 static const per_sequence_t T_differentPort_sequence[] = {
8341   { "protectedSessionID"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_protectedSessionID },
8342   { "protectedPayloadType"        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_protectedPayloadType },
8343   { NULL, 0, 0, NULL }
8344 };
8345
8346 static int
8347 dissect_h245_T_differentPort(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8348   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8349                                 ett_h245_T_differentPort, T_differentPort_sequence);
8350
8351   return offset;
8352 }
8353 static int dissect_differentPort(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8354   return dissect_h245_T_differentPort(tvb, offset, pinfo, tree, hf_h245_differentPort);
8355 }
8356
8357 static const per_sequence_t T_samePort_sequence[] = {
8358   { "protectedPayloadType"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_protectedPayloadType },
8359   { NULL, 0, 0, NULL }
8360 };
8361
8362 static int
8363 dissect_h245_T_samePort(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8364   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8365                                 ett_h245_T_samePort, T_samePort_sequence);
8366
8367   return offset;
8368 }
8369 static int dissect_samePort(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8370   return dissect_h245_T_samePort(tvb, offset, pinfo, tree, hf_h245_samePort);
8371 }
8372
8373
8374 static const value_string h245_SeparateStream_vals[] = {
8375   {   0, "differentPort" },
8376   {   1, "samePort" },
8377   { 0, NULL }
8378 };
8379
8380 static const per_choice_t SeparateStream_choice[] = {
8381   {   0, "differentPort"               , ASN1_EXTENSION_ROOT    , dissect_differentPort },
8382   {   1, "samePort"                    , ASN1_EXTENSION_ROOT    , dissect_samePort },
8383   { 0, NULL, 0, NULL }
8384 };
8385
8386 static int
8387 dissect_h245_SeparateStream(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8388   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8389                               ett_h245_SeparateStream, SeparateStream_choice, "SeparateStream",
8390                               NULL);
8391
8392   return offset;
8393 }
8394 static int dissect_separateStream(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8395   return dissect_h245_SeparateStream(tvb, offset, pinfo, tree, hf_h245_separateStream);
8396 }
8397
8398
8399 static const value_string h245_FECdata_mode_vals[] = {
8400   {   0, "redundancyEncoding" },
8401   {   1, "separateStream" },
8402   { 0, NULL }
8403 };
8404
8405 static const per_choice_t FECdata_mode_choice[] = {
8406   {   0, "redundancyEncoding"          , ASN1_EXTENSION_ROOT    , dissect_redundancyEncodingFlag },
8407   {   1, "separateStream"              , ASN1_EXTENSION_ROOT    , dissect_separateStream },
8408   { 0, NULL, 0, NULL }
8409 };
8410
8411 static int
8412 dissect_h245_FECdata_mode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8413   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8414                               ett_h245_FECdata_mode, FECdata_mode_choice, "FECdata_mode",
8415                               NULL);
8416
8417   return offset;
8418 }
8419 static int dissect_fec_data_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8420   return dissect_h245_FECdata_mode(tvb, offset, pinfo, tree, hf_h245_fec_data_mode);
8421 }
8422
8423 static const per_sequence_t RFC2733Data_sequence[] = {
8424   { "mode"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_fec_data_mode },
8425   { NULL, 0, 0, NULL }
8426 };
8427
8428 static int
8429 dissect_h245_RFC2733Data(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8430   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8431                                 ett_h245_RFC2733Data, RFC2733Data_sequence);
8432
8433   return offset;
8434 }
8435 static int dissect_rfc2733(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8436   return dissect_h245_RFC2733Data(tvb, offset, pinfo, tree, hf_h245_rfc2733);
8437 }
8438
8439
8440 static const value_string h245_FECData_vals[] = {
8441   {   0, "rfc2733" },
8442   { 0, NULL }
8443 };
8444
8445 static const per_choice_t FECData_choice[] = {
8446   {   0, "rfc2733"                     , ASN1_NO_EXTENSIONS     , dissect_rfc2733 },
8447   { 0, NULL, 0, NULL }
8448 };
8449
8450 static int
8451 dissect_h245_FECData(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8452   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8453                               ett_h245_FECData, FECData_choice, "FECData",
8454                               NULL);
8455
8456   return offset;
8457 }
8458 static int dissect_fec(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8459   return dissect_h245_FECData(tvb, offset, pinfo, tree, hf_h245_fec);
8460 }
8461
8462
8463 static const value_string h245_T_mediaType_vals[] = {
8464   {   0, "nonStandard" },
8465   {   1, "videoData" },
8466   {   2, "audioData" },
8467   {   3, "data" },
8468   {   4, "redundancyEncoding" },
8469   {   5, "multiplePayloadStream" },
8470   {   6, "fec" },
8471   { 0, NULL }
8472 };
8473
8474 static const per_choice_t T_mediaType_choice[] = {
8475   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
8476   {   1, "videoData"                   , ASN1_EXTENSION_ROOT    , dissect_videoData },
8477   {   2, "audioData"                   , ASN1_EXTENSION_ROOT    , dissect_audioData },
8478   {   3, "data"                        , ASN1_EXTENSION_ROOT    , dissect_data },
8479   {   4, "redundancyEncoding"          , ASN1_NOT_EXTENSION_ROOT, dissect_redundancyEncoding },
8480   {   5, "multiplePayloadStream"       , ASN1_NOT_EXTENSION_ROOT, dissect_multiplePayloadStream },
8481   {   6, "fec"                         , ASN1_NOT_EXTENSION_ROOT, dissect_fec },
8482   { 0, NULL, 0, NULL }
8483 };
8484
8485 static int
8486 dissect_h245_T_mediaType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8487   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8488                               ett_h245_T_mediaType, T_mediaType_choice, "T_mediaType",
8489                               NULL);
8490
8491   return offset;
8492 }
8493 static int dissect_mediaType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8494   return dissect_h245_T_mediaType(tvb, offset, pinfo, tree, hf_h245_mediaType);
8495 }
8496
8497 static const per_sequence_t H235Media_sequence[] = {
8498   { "encryptionAuthenticationAndIntegrity", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_encryptionAuthenticationAndIntegrity },
8499   { "mediaType"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mediaType },
8500   { NULL, 0, 0, NULL }
8501 };
8502
8503 static int
8504 dissect_h245_H235Media(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8505   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8506                                 ett_h245_H235Media, H235Media_sequence);
8507
8508   return offset;
8509 }
8510 static int dissect_h235Media(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8511   return dissect_h245_H235Media(tvb, offset, pinfo, tree, hf_h245_h235Media);
8512 }
8513
8514 static const per_sequence_t MultiplexedStreamParameter_sequence[] = {
8515   { "multiplexFormat"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multiplexFormat },
8516   { "controlOnMuxStream"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_controlOnMuxStream },
8517   { NULL, 0, 0, NULL }
8518 };
8519
8520 static int
8521 dissect_h245_MultiplexedStreamParameter(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8522   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8523                                 ett_h245_MultiplexedStreamParameter, MultiplexedStreamParameter_sequence);
8524
8525   return offset;
8526 }
8527 static int dissect_multiplexedStream(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8528   return dissect_h245_MultiplexedStreamParameter(tvb, offset, pinfo, tree, hf_h245_multiplexedStream);
8529 }
8530 static int dissect_multiplexedStreamMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8531   return dissect_h245_MultiplexedStreamParameter(tvb, offset, pinfo, tree, hf_h245_multiplexedStreamMode);
8532 }
8533
8534
8535 static const value_string h245_DataType_vals[] = {
8536   {   0, "nonStandard" },
8537   {   1, "nullData" },
8538   {   2, "videoData" },
8539   {   3, "audioData" },
8540   {   4, "data" },
8541   {   5, "encryptionData" },
8542   {   6, "h235Control" },
8543   {   7, "h235Media" },
8544   {   8, "multiplexedStream" },
8545   {   9, "redundancyEncoding" },
8546   {  10, "multiplePayloadStream" },
8547   {  11, "fec" },
8548   { 0, NULL }
8549 };
8550
8551 static const per_choice_t DataType_choice[] = {
8552   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
8553   {   1, "nullData"                    , ASN1_EXTENSION_ROOT    , dissect_nullData },
8554   {   2, "videoData"                   , ASN1_EXTENSION_ROOT    , dissect_videoData },
8555   {   3, "audioData"                   , ASN1_EXTENSION_ROOT    , dissect_audioData },
8556   {   4, "data"                        , ASN1_EXTENSION_ROOT    , dissect_data },
8557   {   5, "encryptionData"              , ASN1_EXTENSION_ROOT    , dissect_encryptionData },
8558   {   6, "h235Control"                 , ASN1_NOT_EXTENSION_ROOT, dissect_h235Control },
8559   {   7, "h235Media"                   , ASN1_NOT_EXTENSION_ROOT, dissect_h235Media },
8560   {   8, "multiplexedStream"           , ASN1_NOT_EXTENSION_ROOT, dissect_multiplexedStream },
8561   {   9, "redundancyEncoding"          , ASN1_NOT_EXTENSION_ROOT, dissect_redundancyEncoding },
8562   {  10, "multiplePayloadStream"       , ASN1_NOT_EXTENSION_ROOT, dissect_multiplePayloadStream },
8563   {  11, "fec"                         , ASN1_NOT_EXTENSION_ROOT, dissect_fec },
8564   { 0, NULL, 0, NULL }
8565 };
8566
8567 static int
8568 dissect_h245_DataType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8569   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8570                               ett_h245_DataType, DataType_choice, "DataType",
8571                               NULL);
8572
8573   return offset;
8574 }
8575
8576
8577
8578 static int
8579 dissect_h245_INTEGER_0_8191(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8580   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
8581                                            0U, 8191U, NULL, NULL, FALSE);
8582
8583   return offset;
8584 }
8585 static int dissect_subChannelID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8586   return dissect_h245_INTEGER_0_8191(tvb, offset, pinfo, tree, hf_h245_subChannelID);
8587 }
8588 static int dissect_pcr_pid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8589   return dissect_h245_INTEGER_0_8191(tvb, offset, pinfo, tree, hf_h245_pcr_pid);
8590 }
8591
8592 static const per_sequence_t H222LogicalChannelParameters_sequence[] = {
8593   { "resourceID"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_resourceID },
8594   { "subChannelID"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_subChannelID },
8595   { "pcr-pid"                     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_pcr_pid },
8596   { "programDescriptors"          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_programDescriptors },
8597   { "streamDescriptors"           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_streamDescriptors },
8598   { NULL, 0, 0, NULL }
8599 };
8600
8601 static int
8602 dissect_h245_H222LogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8603   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8604                                 ett_h245_H222LogicalChannelParameters, H222LogicalChannelParameters_sequence);
8605
8606   return offset;
8607 }
8608 static int dissect_h222LogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8609   return dissect_h245_H222LogicalChannelParameters(tvb, offset, pinfo, tree, hf_h245_h222LogicalChannelParameters);
8610 }
8611
8612
8613
8614 static int
8615 dissect_h245_INTEGER_0_2(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8616   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
8617                                            0U, 2U, NULL, NULL, FALSE);
8618
8619   return offset;
8620 }
8621 static int dissect_controlFieldOctets(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8622   return dissect_h245_INTEGER_0_2(tvb, offset, pinfo, tree, hf_h245_controlFieldOctets);
8623 }
8624
8625 static const per_sequence_t Al3_sequence[] = {
8626   { "controlFieldOctets"          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_controlFieldOctets },
8627   { "sendBufferSize"              , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_sendBufferSize },
8628   { NULL, 0, 0, NULL }
8629 };
8630
8631 static int
8632 dissect_h245_Al3(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8633   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8634                                 ett_h245_Al3, Al3_sequence);
8635
8636   return offset;
8637 }
8638 static int dissect_al3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8639   return dissect_h245_Al3(tvb, offset, pinfo, tree, hf_h245_al3);
8640 }
8641
8642
8643 static const value_string h245_T_transferMode_vals[] = {
8644   {   0, "framed" },
8645   {   1, "unframed" },
8646   { 0, NULL }
8647 };
8648
8649 static const per_choice_t T_transferMode_choice[] = {
8650   {   0, "framed"                      , ASN1_EXTENSION_ROOT    , dissect_framed },
8651   {   1, "unframed"                    , ASN1_EXTENSION_ROOT    , dissect_unframed },
8652   { 0, NULL, 0, NULL }
8653 };
8654
8655 static int
8656 dissect_h245_T_transferMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8657   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8658                               ett_h245_T_transferMode, T_transferMode_choice, "T_transferMode",
8659                               NULL);
8660
8661   return offset;
8662 }
8663 static int dissect_transferMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8664   return dissect_h245_T_transferMode(tvb, offset, pinfo, tree, hf_h245_transferMode);
8665 }
8666
8667
8668 static const value_string h245_AL1HeaderFEC_vals[] = {
8669   {   0, "sebch16-7" },
8670   {   1, "golay24-12" },
8671   { 0, NULL }
8672 };
8673
8674 static const per_choice_t AL1HeaderFEC_choice[] = {
8675   {   0, "sebch16-7"                   , ASN1_EXTENSION_ROOT    , dissect_sebch16_7 },
8676   {   1, "golay24-12"                  , ASN1_EXTENSION_ROOT    , dissect_golay24_12 },
8677   { 0, NULL, 0, NULL }
8678 };
8679
8680 static int
8681 dissect_h245_AL1HeaderFEC(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8682   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8683                               ett_h245_AL1HeaderFEC, AL1HeaderFEC_choice, "AL1HeaderFEC",
8684                               NULL);
8685
8686   return offset;
8687 }
8688 static int dissect_AL1HeaderFEC(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8689   return dissect_h245_AL1HeaderFEC(tvb, offset, pinfo, tree, hf_h245_AL1HeaderFEC);
8690 }
8691
8692
8693 static const value_string h245_AL1CrcLength_vals[] = {
8694   {   0, "crc4bit" },
8695   {   1, "crc12bit" },
8696   {   2, "crc20bit" },
8697   {   3, "crc28bit" },
8698   {   4, "crc8bit" },
8699   {   5, "crc16bit" },
8700   {   6, "crc32bit" },
8701   {   7, "crcNotUsed" },
8702   { 0, NULL }
8703 };
8704
8705 static const per_choice_t AL1CrcLength_choice[] = {
8706   {   0, "crc4bit"                     , ASN1_EXTENSION_ROOT    , dissect_crc4bit },
8707   {   1, "crc12bit"                    , ASN1_EXTENSION_ROOT    , dissect_crc12bit },
8708   {   2, "crc20bit"                    , ASN1_EXTENSION_ROOT    , dissect_crc20bit },
8709   {   3, "crc28bit"                    , ASN1_EXTENSION_ROOT    , dissect_crc28bit },
8710   {   4, "crc8bit"                     , ASN1_NOT_EXTENSION_ROOT, dissect_crc8bit },
8711   {   5, "crc16bit"                    , ASN1_NOT_EXTENSION_ROOT, dissect_crc16bit },
8712   {   6, "crc32bit"                    , ASN1_NOT_EXTENSION_ROOT, dissect_crc32bit },
8713   {   7, "crcNotUsed"                  , ASN1_NOT_EXTENSION_ROOT, dissect_crcNotUsed },
8714   { 0, NULL, 0, NULL }
8715 };
8716
8717 static int
8718 dissect_h245_AL1CrcLength(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8719   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8720                               ett_h245_AL1CrcLength, AL1CrcLength_choice, "AL1CrcLength",
8721                               NULL);
8722
8723   return offset;
8724 }
8725 static int dissect_crcLength2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8726   return dissect_h245_AL1CrcLength(tvb, offset, pinfo, tree, hf_h245_crcLength2);
8727 }
8728
8729
8730
8731 static int
8732 dissect_h245_INTEGER_8_32(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8733   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
8734                                            8U, 32U, NULL, NULL, FALSE);
8735
8736   return offset;
8737 }
8738 static int dissect_rcpcCodeRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8739   return dissect_h245_INTEGER_8_32(tvb, offset, pinfo, tree, hf_h245_rcpcCodeRate);
8740 }
8741
8742
8743
8744 static int
8745 dissect_h245_INTEGER_0_16(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8746   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
8747                                            0U, 16U, NULL, NULL, FALSE);
8748
8749   return offset;
8750 }
8751 static int dissect_finite(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8752   return dissect_h245_INTEGER_0_16(tvb, offset, pinfo, tree, hf_h245_finite);
8753 }
8754
8755
8756 static const value_string h245_T_numberOfRetransmissions_vals[] = {
8757   {   0, "finite" },
8758   {   1, "infinite" },
8759   { 0, NULL }
8760 };
8761
8762 static const per_choice_t T_numberOfRetransmissions_choice[] = {
8763   {   0, "finite"                      , ASN1_EXTENSION_ROOT    , dissect_finite },
8764   {   1, "infinite"                    , ASN1_EXTENSION_ROOT    , dissect_infinite },
8765   { 0, NULL, 0, NULL }
8766 };
8767
8768 static int
8769 dissect_h245_T_numberOfRetransmissions(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8770   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8771                               ett_h245_T_numberOfRetransmissions, T_numberOfRetransmissions_choice, "T_numberOfRetransmissions",
8772                               NULL);
8773
8774   return offset;
8775 }
8776 static int dissect_numberOfRetransmissions(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8777   return dissect_h245_T_numberOfRetransmissions(tvb, offset, pinfo, tree, hf_h245_numberOfRetransmissions);
8778 }
8779
8780 static const per_sequence_t H223AnnexCArqParameters_sequence[] = {
8781   { "numberOfRetransmissions"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_numberOfRetransmissions },
8782   { "sendBufferSize"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sendBufferSize },
8783   { NULL, 0, 0, NULL }
8784 };
8785
8786 static int
8787 dissect_h245_H223AnnexCArqParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8788   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8789                                 ett_h245_H223AnnexCArqParameters, H223AnnexCArqParameters_sequence);
8790
8791   return offset;
8792 }
8793 static int dissect_typeIArq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8794   return dissect_h245_H223AnnexCArqParameters(tvb, offset, pinfo, tree, hf_h245_typeIArq);
8795 }
8796 static int dissect_typeIIArq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8797   return dissect_h245_H223AnnexCArqParameters(tvb, offset, pinfo, tree, hf_h245_typeIIArq);
8798 }
8799
8800
8801 static const value_string h245_ArqType_vals[] = {
8802   {   0, "noArq" },
8803   {   1, "typeIArq" },
8804   {   2, "typeIIArq" },
8805   { 0, NULL }
8806 };
8807
8808 static const per_choice_t ArqType_choice[] = {
8809   {   0, "noArq"                       , ASN1_EXTENSION_ROOT    , dissect_noArq },
8810   {   1, "typeIArq"                    , ASN1_EXTENSION_ROOT    , dissect_typeIArq },
8811   {   2, "typeIIArq"                   , ASN1_EXTENSION_ROOT    , dissect_typeIIArq },
8812   { 0, NULL, 0, NULL }
8813 };
8814
8815 static int
8816 dissect_h245_ArqType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8817   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8818                               ett_h245_ArqType, ArqType_choice, "ArqType",
8819                               NULL);
8820
8821   return offset;
8822 }
8823 static int dissect_arqType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8824   return dissect_h245_ArqType(tvb, offset, pinfo, tree, hf_h245_arqType);
8825 }
8826
8827 static const per_sequence_t H223AL1MParameters_sequence[] = {
8828   { "transferMode"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_transferMode },
8829   { "headerFEC"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_AL1HeaderFEC },
8830   { "crcLength"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_crcLength2 },
8831   { "rcpcCodeRate"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rcpcCodeRate },
8832   { "arqType"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_arqType },
8833   { "alpduInterleaving"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_alpduInterleaving },
8834   { "alsduSplitting"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_alsduSplitting },
8835   { "rsCodeCorrection"            , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rsCodeCorrection },
8836   { NULL, 0, 0, NULL }
8837 };
8838
8839 static int
8840 dissect_h245_H223AL1MParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8841   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8842                                 ett_h245_H223AL1MParameters, H223AL1MParameters_sequence);
8843
8844   return offset;
8845 }
8846 static int dissect_al1M(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8847   return dissect_h245_H223AL1MParameters(tvb, offset, pinfo, tree, hf_h245_al1M);
8848 }
8849
8850
8851 static const value_string h245_AL2HeaderFEC_vals[] = {
8852   {   0, "sebch16-5" },
8853   {   1, "golay24-12" },
8854   { 0, NULL }
8855 };
8856
8857 static const per_choice_t AL2HeaderFEC_choice[] = {
8858   {   0, "sebch16-5"                   , ASN1_EXTENSION_ROOT    , dissect_sebch16_5 },
8859   {   1, "golay24-12"                  , ASN1_EXTENSION_ROOT    , dissect_golay24_12 },
8860   { 0, NULL, 0, NULL }
8861 };
8862
8863 static int
8864 dissect_h245_AL2HeaderFEC(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8865   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8866                               ett_h245_AL2HeaderFEC, AL2HeaderFEC_choice, "AL2HeaderFEC",
8867                               NULL);
8868
8869   return offset;
8870 }
8871 static int dissect_AL2HeaderFEC(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8872   return dissect_h245_AL2HeaderFEC(tvb, offset, pinfo, tree, hf_h245_AL2HeaderFEC);
8873 }
8874
8875 static const per_sequence_t H223AL2MParameters_sequence[] = {
8876   { "headerFEC"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_AL2HeaderFEC },
8877   { "alpduInterleaving"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_alpduInterleaving },
8878   { NULL, 0, 0, NULL }
8879 };
8880
8881 static int
8882 dissect_h245_H223AL2MParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8883   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8884                                 ett_h245_H223AL2MParameters, H223AL2MParameters_sequence);
8885
8886   return offset;
8887 }
8888 static int dissect_al2M(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8889   return dissect_h245_H223AL2MParameters(tvb, offset, pinfo, tree, hf_h245_al2M);
8890 }
8891
8892
8893 static const value_string h245_T_headerFormat_vals[] = {
8894   {   0, "sebch16-7" },
8895   {   1, "golay24-12" },
8896   { 0, NULL }
8897 };
8898
8899 static const per_choice_t T_headerFormat_choice[] = {
8900   {   0, "sebch16-7"                   , ASN1_EXTENSION_ROOT    , dissect_sebch16_7 },
8901   {   1, "golay24-12"                  , ASN1_EXTENSION_ROOT    , dissect_golay24_12 },
8902   { 0, NULL, 0, NULL }
8903 };
8904
8905 static int
8906 dissect_h245_T_headerFormat(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8907   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8908                               ett_h245_T_headerFormat, T_headerFormat_choice, "T_headerFormat",
8909                               NULL);
8910
8911   return offset;
8912 }
8913 static int dissect_headerFormat(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8914   return dissect_h245_T_headerFormat(tvb, offset, pinfo, tree, hf_h245_headerFormat);
8915 }
8916
8917
8918 static const value_string h245_AL3CrcLength_vals[] = {
8919   {   0, "crc4bit" },
8920   {   1, "crc12bit" },
8921   {   2, "crc20bit" },
8922   {   3, "crc28bit" },
8923   {   4, "crc8bit" },
8924   {   5, "crc16bit" },
8925   {   6, "crc32bit" },
8926   {   7, "crcNotUsed" },
8927   { 0, NULL }
8928 };
8929
8930 static const per_choice_t AL3CrcLength_choice[] = {
8931   {   0, "crc4bit"                     , ASN1_EXTENSION_ROOT    , dissect_crc4bit },
8932   {   1, "crc12bit"                    , ASN1_EXTENSION_ROOT    , dissect_crc12bit },
8933   {   2, "crc20bit"                    , ASN1_EXTENSION_ROOT    , dissect_crc20bit },
8934   {   3, "crc28bit"                    , ASN1_EXTENSION_ROOT    , dissect_crc28bit },
8935   {   4, "crc8bit"                     , ASN1_NOT_EXTENSION_ROOT, dissect_crc8bit },
8936   {   5, "crc16bit"                    , ASN1_NOT_EXTENSION_ROOT, dissect_crc16bit },
8937   {   6, "crc32bit"                    , ASN1_NOT_EXTENSION_ROOT, dissect_crc32bit },
8938   {   7, "crcNotUsed"                  , ASN1_NOT_EXTENSION_ROOT, dissect_crcNotUsed },
8939   { 0, NULL, 0, NULL }
8940 };
8941
8942 static int
8943 dissect_h245_AL3CrcLength(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8944   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
8945                               ett_h245_AL3CrcLength, AL3CrcLength_choice, "AL3CrcLength",
8946                               NULL);
8947
8948   return offset;
8949 }
8950 static int dissect_crlength2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8951   return dissect_h245_AL3CrcLength(tvb, offset, pinfo, tree, hf_h245_crlength2);
8952 }
8953
8954 static const per_sequence_t H223AL3MParameters_sequence[] = {
8955   { "headerFormat"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_headerFormat },
8956   { "crcLength"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_crlength2 },
8957   { "rcpcCodeRate"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rcpcCodeRate },
8958   { "arqType"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_arqType },
8959   { "alpduInterleaving"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_alpduInterleaving },
8960   { "rsCodeCorrection"            , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rsCodeCorrection },
8961   { NULL, 0, 0, NULL }
8962 };
8963
8964 static int
8965 dissect_h245_H223AL3MParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
8966   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
8967                                 ett_h245_H223AL3MParameters, H223AL3MParameters_sequence);
8968
8969   return offset;
8970 }
8971 static int dissect_al3M(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
8972   return dissect_h245_H223AL3MParameters(tvb, offset, pinfo, tree, hf_h245_al3M);
8973 }
8974
8975
8976 static const value_string h245_T_adaptationLayerType_vals[] = {
8977   {   0, "nonStandard" },
8978   {   1, "al1Framed" },
8979   {   2, "al1NotFramed" },
8980   {   3, "al2WithoutSequenceNumbers" },
8981   {   4, "al2WithSequenceNumbers" },
8982   {   5, "al3" },
8983   {   6, "al1M" },
8984   {   7, "al2M" },
8985   {   8, "al3M" },
8986   { 0, NULL }
8987 };
8988
8989 static const per_choice_t T_adaptationLayerType_choice[] = {
8990   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
8991   {   1, "al1Framed"                   , ASN1_EXTENSION_ROOT    , dissect_al1Framed },
8992   {   2, "al1NotFramed"                , ASN1_EXTENSION_ROOT    , dissect_al1NotFramed },
8993   {   3, "al2WithoutSequenceNumbers"   , ASN1_EXTENSION_ROOT    , dissect_al2WithoutSequenceNumbers },
8994   {   4, "al2WithSequenceNumbers"      , ASN1_EXTENSION_ROOT    , dissect_al2WithSequenceNumbers },
8995   {   5, "al3"                         , ASN1_EXTENSION_ROOT    , dissect_al3 },
8996   {   6, "al1M"                        , ASN1_NOT_EXTENSION_ROOT, dissect_al1M },
8997   {   7, "al2M"                        , ASN1_NOT_EXTENSION_ROOT, dissect_al2M },
8998   {   8, "al3M"                        , ASN1_NOT_EXTENSION_ROOT, dissect_al3M },
8999   { 0, NULL, 0, NULL }
9000 };
9001
9002 static int
9003 dissect_h245_T_adaptationLayerType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9004   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9005                               ett_h245_T_adaptationLayerType, T_adaptationLayerType_choice, "T_adaptationLayerType",
9006                               NULL);
9007
9008   return offset;
9009 }
9010 static int dissect_adaptationLayerType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9011   return dissect_h245_T_adaptationLayerType(tvb, offset, pinfo, tree, hf_h245_adaptationLayerType);
9012 }
9013
9014 static const per_sequence_t H223LogicalChannelParameters_sequence[] = {
9015   { "adaptationLayerType"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_adaptationLayerType },
9016   { "segmentableFlag"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_segmentableFlag },
9017   { NULL, 0, 0, NULL }
9018 };
9019
9020 static int
9021 dissect_h245_H223LogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9022   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9023                                 ett_h245_H223LogicalChannelParameters, H223LogicalChannelParameters_sequence);
9024
9025   return offset;
9026 }
9027 static int dissect_h223LogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9028   return dissect_h245_H223LogicalChannelParameters(tvb, offset, pinfo, tree, hf_h245_h223LogicalChannelParameters);
9029 }
9030
9031
9032 static const value_string h245_CRCLength_vals[] = {
9033   {   0, "crc8bit" },
9034   {   1, "crc16bit" },
9035   {   2, "crc32bit" },
9036   { 0, NULL }
9037 };
9038
9039 static const per_choice_t CRCLength_choice[] = {
9040   {   0, "crc8bit"                     , ASN1_EXTENSION_ROOT    , dissect_crc8bit },
9041   {   1, "crc16bit"                    , ASN1_EXTENSION_ROOT    , dissect_crc16bit },
9042   {   2, "crc32bit"                    , ASN1_EXTENSION_ROOT    , dissect_crc32bit },
9043   { 0, NULL, 0, NULL }
9044 };
9045
9046 static int
9047 dissect_h245_CRCLength(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9048   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9049                               ett_h245_CRCLength, CRCLength_choice, "CRCLength",
9050                               NULL);
9051
9052   return offset;
9053 }
9054 static int dissect_crcLength(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9055   return dissect_h245_CRCLength(tvb, offset, pinfo, tree, hf_h245_crcLength);
9056 }
9057
9058 static const per_sequence_t V76HDLCParameters_sequence[] = {
9059   { "crcLength"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_crcLength },
9060   { "n401"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_n401 },
9061   { "loopbackTestProcedure"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_loopbackTestProcedure },
9062   { NULL, 0, 0, NULL }
9063 };
9064
9065 static int
9066 dissect_h245_V76HDLCParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9067   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9068                                 ett_h245_V76HDLCParameters, V76HDLCParameters_sequence);
9069
9070   return offset;
9071 }
9072 static int dissect_hdlcParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9073   return dissect_h245_V76HDLCParameters(tvb, offset, pinfo, tree, hf_h245_hdlcParameters);
9074 }
9075
9076
9077 static const value_string h245_T_suspendResume_vals[] = {
9078   {   0, "noSuspendResume" },
9079   {   1, "suspendResumewAddress" },
9080   {   2, "suspendResumewoAddress" },
9081   { 0, NULL }
9082 };
9083
9084 static const per_choice_t T_suspendResume_choice[] = {
9085   {   0, "noSuspendResume"             , ASN1_EXTENSION_ROOT    , dissect_noSuspendResume },
9086   {   1, "suspendResumewAddress"       , ASN1_EXTENSION_ROOT    , dissect_suspendResumewAddress },
9087   {   2, "suspendResumewoAddress"      , ASN1_EXTENSION_ROOT    , dissect_suspendResumewoAddress },
9088   { 0, NULL, 0, NULL }
9089 };
9090
9091 static int
9092 dissect_h245_T_suspendResume(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9093   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9094                               ett_h245_T_suspendResume, T_suspendResume_choice, "T_suspendResume",
9095                               NULL);
9096
9097   return offset;
9098 }
9099 static int dissect_suspendResume(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9100   return dissect_h245_T_suspendResume(tvb, offset, pinfo, tree, hf_h245_suspendResume);
9101 }
9102
9103
9104 static const value_string h245_T_recovery_vals[] = {
9105   {   0, "rej" },
9106   {   1, "sREJ" },
9107   {   2, "mSREJ" },
9108   { 0, NULL }
9109 };
9110
9111 static const per_choice_t T_recovery_choice[] = {
9112   {   0, "rej"                         , ASN1_EXTENSION_ROOT    , dissect_rej },
9113   {   1, "sREJ"                        , ASN1_EXTENSION_ROOT    , dissect_sREJ },
9114   {   2, "mSREJ"                       , ASN1_EXTENSION_ROOT    , dissect_mSREJ },
9115   { 0, NULL, 0, NULL }
9116 };
9117
9118 static int
9119 dissect_h245_T_recovery(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9120   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9121                               ett_h245_T_recovery, T_recovery_choice, "T_recovery",
9122                               NULL);
9123
9124   return offset;
9125 }
9126 static int dissect_recovery(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9127   return dissect_h245_T_recovery(tvb, offset, pinfo, tree, hf_h245_recovery);
9128 }
9129
9130 static const per_sequence_t T_eRM_sequence[] = {
9131   { "windowSize"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_windowSize },
9132   { "recovery"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_recovery },
9133   { NULL, 0, 0, NULL }
9134 };
9135
9136 static int
9137 dissect_h245_T_eRM(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9138   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9139                                 ett_h245_T_eRM, T_eRM_sequence);
9140
9141   return offset;
9142 }
9143 static int dissect_eRM(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9144   return dissect_h245_T_eRM(tvb, offset, pinfo, tree, hf_h245_eRM);
9145 }
9146
9147
9148 static const value_string h245_V76LCP_mode_vals[] = {
9149   {   0, "eRM" },
9150   {   1, "uNERM" },
9151   { 0, NULL }
9152 };
9153
9154 static const per_choice_t V76LCP_mode_choice[] = {
9155   {   0, "eRM"                         , ASN1_EXTENSION_ROOT    , dissect_eRM },
9156   {   1, "uNERM"                       , ASN1_EXTENSION_ROOT    , dissect_uNERM },
9157   { 0, NULL, 0, NULL }
9158 };
9159
9160 static int
9161 dissect_h245_V76LCP_mode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9162   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9163                               ett_h245_V76LCP_mode, V76LCP_mode_choice, "V76LCP_mode",
9164                               NULL);
9165
9166   return offset;
9167 }
9168 static int dissect_v76_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9169   return dissect_h245_V76LCP_mode(tvb, offset, pinfo, tree, hf_h245_v76_mode);
9170 }
9171
9172 static const per_sequence_t V75Parameters_sequence[] = {
9173   { "audioHeaderPresent"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioHeaderPresent },
9174   { NULL, 0, 0, NULL }
9175 };
9176
9177 static int
9178 dissect_h245_V75Parameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9179   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9180                                 ett_h245_V75Parameters, V75Parameters_sequence);
9181
9182   return offset;
9183 }
9184 static int dissect_v75Parameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9185   return dissect_h245_V75Parameters(tvb, offset, pinfo, tree, hf_h245_v75Parameters);
9186 }
9187
9188 static const per_sequence_t V76LogicalChannelParameters_sequence[] = {
9189   { "hdlcParameters"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_hdlcParameters },
9190   { "suspendResume"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_suspendResume },
9191   { "uIH"                         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_uIH },
9192   { "mode"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_v76_mode },
9193   { "v75Parameters"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_v75Parameters },
9194   { NULL, 0, 0, NULL }
9195 };
9196
9197 static int
9198 dissect_h245_V76LogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9199   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9200                                 ett_h245_V76LogicalChannelParameters, V76LogicalChannelParameters_sequence);
9201
9202   return offset;
9203 }
9204 static int dissect_v76LogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9205   return dissect_h245_V76LogicalChannelParameters(tvb, offset, pinfo, tree, hf_h245_v76LogicalChannelParameters);
9206 }
9207
9208
9209 static int
9210 dissect_h245_Ipv4_network(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9211
9212 guint32 value_offset;
9213 guint32 value_len;
9214
9215   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
9216                                     4, 4,
9217                                     &value_offset, &value_len);
9218   if ( media_channel )
9219         tvb_memcpy(tvb, (char *)&ipv4_address, value_offset, 4);
9220
9221   if ( media_control_channel )
9222         tvb_memcpy(tvb, (char *)&ipv4_address, value_offset, 4);
9223
9224
9225   return offset;
9226 }
9227 static int dissect_ip4_network(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9228   return dissect_h245_Ipv4_network(tvb, offset, pinfo, tree, hf_h245_ip4_network);
9229 }
9230
9231
9232
9233 static int
9234 dissect_h245_TsapIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9235 guint32 tsapIdentifier;
9236
9237
9238         offset=dissect_per_constrained_integer(tvb, offset, pinfo, tree,
9239                 hf_h245_tsapIdentifier,  0,  65535,
9240                 &tsapIdentifier, NULL, FALSE);
9241   if ( media_channel )
9242         ipv4_port = tsapIdentifier;
9243
9244   if ( media_control_channel )
9245         rtcp_ipv4_port = tsapIdentifier;
9246
9247
9248   return offset;
9249 }
9250 static int dissect_tsapIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9251   return dissect_h245_TsapIdentifier(tvb, offset, pinfo, tree, hf_h245_tsapIdentifier);
9252 }
9253
9254 static const per_sequence_t T_iPAddress_sequence[] = {
9255   { "network"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_ip4_network },
9256   { "tsapIdentifier"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_tsapIdentifier },
9257   { NULL, 0, 0, NULL }
9258 };
9259
9260 static int
9261 dissect_h245_T_iPAddress(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9262   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9263                                 ett_h245_T_iPAddress, T_iPAddress_sequence);
9264
9265   return offset;
9266 }
9267 static int dissect_iPAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9268   return dissect_h245_T_iPAddress(tvb, offset, pinfo, tree, hf_h245_iPAddress);
9269 }
9270
9271
9272 static int
9273 dissect_h245_OCTET_STRING_SIZE_6(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9274   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
9275                                     6, 6,
9276                                     NULL, NULL);
9277
9278   return offset;
9279 }
9280 static int dissect_node(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9281   return dissect_h245_OCTET_STRING_SIZE_6(tvb, offset, pinfo, tree, hf_h245_node);
9282 }
9283
9284
9285 static int
9286 dissect_h245_OCTET_STRING_SIZE_4(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9287   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
9288                                     4, 4,
9289                                     NULL, NULL);
9290
9291   return offset;
9292 }
9293 static int dissect_netnum(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9294   return dissect_h245_OCTET_STRING_SIZE_4(tvb, offset, pinfo, tree, hf_h245_netnum);
9295 }
9296 static int dissect_network(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9297   return dissect_h245_OCTET_STRING_SIZE_4(tvb, offset, pinfo, tree, hf_h245_network);
9298 }
9299 static int dissect_route_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9300   return dissect_h245_OCTET_STRING_SIZE_4(tvb, offset, pinfo, tree, hf_h245_route_item);
9301 }
9302 static int dissect_mip4_network(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9303   return dissect_h245_OCTET_STRING_SIZE_4(tvb, offset, pinfo, tree, hf_h245_mip4_network);
9304 }
9305
9306
9307 static int
9308 dissect_h245_OCTET_STRING_SIZE_2(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9309   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
9310                                     2, 2,
9311                                     NULL, NULL);
9312
9313   return offset;
9314 }
9315 static int dissect_ipx_tsapIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9316   return dissect_h245_OCTET_STRING_SIZE_2(tvb, offset, pinfo, tree, hf_h245_ipx_tsapIdentifier);
9317 }
9318
9319 static const per_sequence_t T_iPXAddress_sequence[] = {
9320   { "node"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_node },
9321   { "netnum"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_netnum },
9322   { "tsapIdentifier"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_ipx_tsapIdentifier },
9323   { NULL, 0, 0, NULL }
9324 };
9325
9326 static int
9327 dissect_h245_T_iPXAddress(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9328   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9329                                 ett_h245_T_iPXAddress, T_iPXAddress_sequence);
9330
9331   return offset;
9332 }
9333 static int dissect_iPXAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9334   return dissect_h245_T_iPXAddress(tvb, offset, pinfo, tree, hf_h245_iPXAddress);
9335 }
9336
9337 static const per_sequence_t T_iP6Address_sequence[] = {
9338   { "network"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_ip6_network },
9339   { "tsapIdentifier"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_ipv6_tsapIdentifier },
9340   { NULL, 0, 0, NULL }
9341 };
9342
9343 static int
9344 dissect_h245_T_iP6Address(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9345   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9346                                 ett_h245_T_iP6Address, T_iP6Address_sequence);
9347
9348   return offset;
9349 }
9350 static int dissect_iP6Address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9351   return dissect_h245_T_iP6Address(tvb, offset, pinfo, tree, hf_h245_iP6Address);
9352 }
9353
9354
9355 static const value_string h245_T_routing_vals[] = {
9356   {   0, "strict" },
9357   {   1, "loose" },
9358   { 0, NULL }
9359 };
9360
9361 static const per_choice_t T_routing_choice[] = {
9362   {   0, "strict"                      , ASN1_NO_EXTENSIONS     , dissect_strict },
9363   {   1, "loose"                       , ASN1_NO_EXTENSIONS     , dissect_loose },
9364   { 0, NULL, 0, NULL }
9365 };
9366
9367 static int
9368 dissect_h245_T_routing(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9369   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9370                               ett_h245_T_routing, T_routing_choice, "T_routing",
9371                               NULL);
9372
9373   return offset;
9374 }
9375 static int dissect_routing(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9376   return dissect_h245_T_routing(tvb, offset, pinfo, tree, hf_h245_routing);
9377 }
9378
9379
9380 static int
9381 dissect_h245_SEQUNCE_OF_OCTET_STRING_SIZE_4(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9382   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
9383                                    ett_h245_SEQUNCE_OF_OCTET_STRING_SIZE_4, dissect_route_item);
9384
9385   return offset;
9386 }
9387 static int dissect_route(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9388   return dissect_h245_SEQUNCE_OF_OCTET_STRING_SIZE_4(tvb, offset, pinfo, tree, hf_h245_route);
9389 }
9390
9391 static const per_sequence_t T_iPSourceRouteAddress_sequence[] = {
9392   { "routing"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_routing },
9393   { "network"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_network },
9394   { "tsapIdentifier"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_iPSrcRoute_tsapIdentifier },
9395   { "route"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_route },
9396   { NULL, 0, 0, NULL }
9397 };
9398
9399 static int
9400 dissect_h245_T_iPSourceRouteAddress(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9401   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9402                                 ett_h245_T_iPSourceRouteAddress, T_iPSourceRouteAddress_sequence);
9403
9404   return offset;
9405 }
9406 static int dissect_iPSourceRouteAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9407   return dissect_h245_T_iPSourceRouteAddress(tvb, offset, pinfo, tree, hf_h245_iPSourceRouteAddress);
9408 }
9409
9410
9411 static const value_string h245_UnicastAddress_vals[] = {
9412   {   0, "iPAddress" },
9413   {   1, "iPXAddress" },
9414   {   2, "iP6Address" },
9415   {   3, "netBios" },
9416   {   4, "iPSourceRouteAddress" },
9417   {   5, "nsap" },
9418   {   6, "nonStandardAddress" },
9419   { 0, NULL }
9420 };
9421
9422 static const per_choice_t UnicastAddress_choice[] = {
9423   {   0, "iPAddress"                   , ASN1_EXTENSION_ROOT    , dissect_iPAddress },
9424   {   1, "iPXAddress"                  , ASN1_EXTENSION_ROOT    , dissect_iPXAddress },
9425   {   2, "iP6Address"                  , ASN1_EXTENSION_ROOT    , dissect_iP6Address },
9426   {   3, "netBios"                     , ASN1_EXTENSION_ROOT    , dissect_netBios },
9427   {   4, "iPSourceRouteAddress"        , ASN1_EXTENSION_ROOT    , dissect_iPSourceRouteAddress },
9428   {   5, "nsap"                        , ASN1_NOT_EXTENSION_ROOT, dissect_nsap },
9429   {   6, "nonStandardAddress"          , ASN1_NOT_EXTENSION_ROOT, dissect_nonStandardAddress },
9430   { 0, NULL, 0, NULL }
9431 };
9432
9433 static int
9434 dissect_h245_UnicastAddress(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9435   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9436                               ett_h245_UnicastAddress, UnicastAddress_choice, "UnicastAddress",
9437                               NULL);
9438
9439   return offset;
9440 }
9441 static int dissect_unicastAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9442   return dissect_h245_UnicastAddress(tvb, offset, pinfo, tree, hf_h245_unicastAddress);
9443 }
9444
9445 static const per_sequence_t MIPAddress_sequence[] = {
9446   { "network"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mip4_network },
9447   { "tsapIdentifier"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multicast_tsapIdentifier },
9448   { NULL, 0, 0, NULL }
9449 };
9450
9451 static int
9452 dissect_h245_MIPAddress(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9453   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9454                                 ett_h245_MIPAddress, MIPAddress_sequence);
9455
9456   return offset;
9457 }
9458 static int dissect_mIPAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9459   return dissect_h245_MIPAddress(tvb, offset, pinfo, tree, hf_h245_mIPAddress);
9460 }
9461
9462 static const per_sequence_t MIP6Address_sequence[] = {
9463   { "network"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mip6_network },
9464   { "tsapIdentifier"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multicast_IPv6_tsapIdentifier },
9465   { NULL, 0, 0, NULL }
9466 };
9467
9468 static int
9469 dissect_h245_MIP6Address(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9470   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9471                                 ett_h245_MIP6Address, MIP6Address_sequence);
9472
9473   return offset;
9474 }
9475 static int dissect_mIP6Address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9476   return dissect_h245_MIP6Address(tvb, offset, pinfo, tree, hf_h245_mIP6Address);
9477 }
9478
9479
9480 static const value_string h245_MulticastAddress_vals[] = {
9481   {   0, "iPAddress" },
9482   {   1, "iP6Address" },
9483   {   2, "nsap" },
9484   {   3, "nonStandardAddress" },
9485   { 0, NULL }
9486 };
9487
9488 static const per_choice_t MulticastAddress_choice[] = {
9489   {   0, "iPAddress"                   , ASN1_EXTENSION_ROOT    , dissect_mIPAddress },
9490   {   1, "iP6Address"                  , ASN1_EXTENSION_ROOT    , dissect_mIP6Address },
9491   {   2, "nsap"                        , ASN1_NOT_EXTENSION_ROOT, dissect_nsap },
9492   {   3, "nonStandardAddress"          , ASN1_NOT_EXTENSION_ROOT, dissect_nonStandardAddress },
9493   { 0, NULL, 0, NULL }
9494 };
9495
9496 static int
9497 dissect_h245_MulticastAddress(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9498   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9499                               ett_h245_MulticastAddress, MulticastAddress_choice, "MulticastAddress",
9500                               NULL);
9501
9502   return offset;
9503 }
9504 static int dissect_multicastAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9505   return dissect_h245_MulticastAddress(tvb, offset, pinfo, tree, hf_h245_multicastAddress);
9506 }
9507
9508
9509 static const value_string h245_TransportAddress_vals[] = {
9510   {   0, "unicastAddress" },
9511   {   1, "multicastAddress" },
9512   { 0, NULL }
9513 };
9514
9515 static const per_choice_t TransportAddress_choice[] = {
9516   {   0, "unicastAddress"              , ASN1_EXTENSION_ROOT    , dissect_unicastAddress },
9517   {   1, "multicastAddress"            , ASN1_EXTENSION_ROOT    , dissect_multicastAddress },
9518   { 0, NULL, 0, NULL }
9519 };
9520
9521 static int
9522 dissect_h245_TransportAddress(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9523   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9524                               ett_h245_TransportAddress, TransportAddress_choice, "TransportAddress",
9525                               NULL);
9526
9527   return offset;
9528 }
9529 static int dissect_localAreaAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9530   return dissect_h245_TransportAddress(tvb, offset, pinfo, tree, hf_h245_localAreaAddress);
9531 }
9532 static int dissect_mediaChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9533   return dissect_h245_TransportAddress(tvb, offset, pinfo, tree, hf_h245_mediaChannel);
9534 }
9535 static int dissect_mediaControlChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9536   return dissect_h245_TransportAddress(tvb, offset, pinfo, tree, hf_h245_mediaControlChannel);
9537 }
9538 static int dissect_signalAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9539   return dissect_h245_TransportAddress(tvb, offset, pinfo, tree, hf_h245_signalAddress);
9540 }
9541
9542
9543
9544 static int
9545 dissect_h245_McuNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9546   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
9547                                            0U, 192U, NULL, NULL, FALSE);
9548
9549   return offset;
9550 }
9551 static int dissect_mcuNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9552   return dissect_h245_McuNumber(tvb, offset, pinfo, tree, hf_h245_mcuNumber);
9553 }
9554
9555
9556
9557 static int
9558 dissect_h245_TerminalNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9559   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
9560                                            0U, 192U, NULL, NULL, FALSE);
9561
9562   return offset;
9563 }
9564 static int dissect_terminalNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9565   return dissect_h245_TerminalNumber(tvb, offset, pinfo, tree, hf_h245_terminalNumber);
9566 }
9567
9568 static const per_sequence_t TerminalLabel_sequence[] = {
9569   { "mcuNumber"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mcuNumber },
9570   { "terminalNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalNumber },
9571   { NULL, 0, 0, NULL }
9572 };
9573
9574 static int
9575 dissect_h245_TerminalLabel(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9576   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9577                                 ett_h245_TerminalLabel, TerminalLabel_sequence);
9578
9579   return offset;
9580 }
9581 static int dissect_destination(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9582   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_destination);
9583 }
9584 static int dissect_source(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9585   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_source);
9586 }
9587 static int dissect_terminalLabel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9588   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_terminalLabel);
9589 }
9590 static int dissect_dropTerminal(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9591   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_dropTerminal);
9592 }
9593 static int dissect_requestTerminalID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9594   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_requestTerminalID);
9595 }
9596 static int dissect_makeTerminalBroadcaster(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9597   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_makeTerminalBroadcaster);
9598 }
9599 static int dissect_sendThisSource(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9600   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_sendThisSource);
9601 }
9602 static int dissect_terminalListResponse_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9603   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_terminalListResponse_item);
9604 }
9605 static int dissect_terminalNumberAssign(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9606   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_terminalNumberAssign);
9607 }
9608 static int dissect_terminalJoinedConference(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9609   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_terminalJoinedConference);
9610 }
9611 static int dissect_terminalLeftConference(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9612   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_terminalLeftConference);
9613 }
9614 static int dissect_terminalYouAreSeeing(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9615   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_terminalYouAreSeeing);
9616 }
9617 static int dissect_floorRequested(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9618   return dissect_h245_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_floorRequested);
9619 }
9620
9621
9622 static const value_string h245_T_mediaPacketization_vals[] = {
9623   {   0, "h261aVideoPacketization" },
9624   {   1, "rtpPayloadType" },
9625   { 0, NULL }
9626 };
9627
9628 static const per_choice_t T_mediaPacketization_choice[] = {
9629   {   0, "h261aVideoPacketization"     , ASN1_EXTENSION_ROOT    , dissect_h261aVideoPacketizationFlag },
9630   {   1, "rtpPayloadType"              , ASN1_NOT_EXTENSION_ROOT, dissect_rtpPayloadType },
9631   { 0, NULL, 0, NULL }
9632 };
9633
9634 static int
9635 dissect_h245_T_mediaPacketization(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9636   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9637                               ett_h245_T_mediaPacketization, T_mediaPacketization_choice, "T_mediaPacketization",
9638                               NULL);
9639
9640   return offset;
9641 }
9642 static int dissect_mediaPacketization(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9643   return dissect_h245_T_mediaPacketization(tvb, offset, pinfo, tree, hf_h245_mediaPacketization);
9644 }
9645
9646 static const per_sequence_t H2250LogicalChannelParameters_sequence[] = {
9647   { "nonStandard"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nonStandardParams },
9648   { "sessionID"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sessionID_0_255 },
9649   { "associatedSessionID"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_associatedSessionID },
9650   { "mediaChannel"                , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_mediaChannel },
9651   { "mediaGuaranteedDelivery"     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_mediaGuaranteedDelivery },
9652   { "mediaControlChannel"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_mediaControlChannel },
9653   { "mediaControlGuaranteedDelivery", ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_mediaControlGuaranteedDelivery },
9654   { "silenceSuppression"          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_silenceSuppression },
9655   { "destination"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_destination },
9656   { "dynamicRTPPayloadType"       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_dynamicRTPPayloadType },
9657   { "mediaPacketization"          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_mediaPacketization },
9658   { "transportCapability"         , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_transportCapability },
9659   { "redundancyEncoding"          , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_redundancyEncoding },
9660   { "source"                      , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_source },
9661   { NULL, 0, 0, NULL }
9662 };
9663
9664 static int
9665 dissect_h245_H2250LogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9666   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9667                                 ett_h245_H2250LogicalChannelParameters, H2250LogicalChannelParameters_sequence);
9668
9669   return offset;
9670 }
9671 static int dissect_h2250LogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9672   return dissect_h245_H2250LogicalChannelParameters(tvb, offset, pinfo, tree, hf_h245_h2250LogicalChannelParameters);
9673 }
9674
9675
9676 static const value_string h245_OLC_forw_multiplexParameters_vals[] = {
9677   {   0, "h222LogicalChannelParameters" },
9678   {   1, "h223LogicalChannelParameters" },
9679   {   2, "v76LogicalChannelParameters" },
9680   {   3, "h2250LogicalChannelParameters" },
9681   {   4, "none" },
9682   { 0, NULL }
9683 };
9684
9685 static const per_choice_t OLC_forw_multiplexParameters_choice[] = {
9686   {   0, "h222LogicalChannelParameters", ASN1_EXTENSION_ROOT    , dissect_h222LogicalChannelParameters },
9687   {   1, "h223LogicalChannelParameters", ASN1_EXTENSION_ROOT    , dissect_h223LogicalChannelParameters },
9688   {   2, "v76LogicalChannelParameters" , ASN1_EXTENSION_ROOT    , dissect_v76LogicalChannelParameters },
9689   {   3, "h2250LogicalChannelParameters", ASN1_NOT_EXTENSION_ROOT, dissect_h2250LogicalChannelParameters },
9690   {   4, "none"                        , ASN1_NOT_EXTENSION_ROOT, dissect_none },
9691   { 0, NULL, 0, NULL }
9692 };
9693
9694 static int
9695 dissect_h245_OLC_forw_multiplexParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9696   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9697                               ett_h245_OLC_forw_multiplexParameters, OLC_forw_multiplexParameters_choice, "OLC_forw_multiplexParameters",
9698                               NULL);
9699
9700   return offset;
9701 }
9702 static int dissect_olc_forw_multiplexParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9703   return dissect_h245_OLC_forw_multiplexParameters(tvb, offset, pinfo, tree, hf_h245_olc_forw_multiplexParameters);
9704 }
9705
9706 static const per_sequence_t T_forwardLogicalChannelParameters_sequence[] = {
9707   { "portNumber"                  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_portNumber },
9708   { "dataType"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dataType },
9709   { "multiplexParameters"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_olc_forw_multiplexParameters },
9710   { "forwardLogicalChannelDependency", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_forwardLogicalChannelDependency },
9711   { "replacementFor"              , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_replacementFor },
9712   { NULL, 0, 0, NULL }
9713 };
9714
9715 static int
9716 dissect_h245_T_forwardLogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9717   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9718                                 ett_h245_T_forwardLogicalChannelParameters, T_forwardLogicalChannelParameters_sequence);
9719
9720   return offset;
9721 }
9722 static int dissect_forwardLogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9723   return dissect_h245_T_forwardLogicalChannelParameters(tvb, offset, pinfo, tree, hf_h245_forwardLogicalChannelParameters);
9724 }
9725
9726
9727 static const value_string h245_OLC_rev_multiplexParameters_vals[] = {
9728   {   0, "h223LogicalChannelParameters" },
9729   {   1, "v76LogicalChannelParameters" },
9730   {   2, "h2250LogicalChannelParameters" },
9731   { 0, NULL }
9732 };
9733
9734 static const per_choice_t OLC_rev_multiplexParameters_choice[] = {
9735   {   0, "h223LogicalChannelParameters", ASN1_EXTENSION_ROOT    , dissect_h223LogicalChannelParameters },
9736   {   1, "v76LogicalChannelParameters" , ASN1_EXTENSION_ROOT    , dissect_v76LogicalChannelParameters },
9737   {   2, "h2250LogicalChannelParameters", ASN1_NOT_EXTENSION_ROOT, dissect_h2250LogicalChannelParameters },
9738   { 0, NULL, 0, NULL }
9739 };
9740
9741 static int
9742 dissect_h245_OLC_rev_multiplexParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9743   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9744                               ett_h245_OLC_rev_multiplexParameters, OLC_rev_multiplexParameters_choice, "OLC_rev_multiplexParameters",
9745                               NULL);
9746
9747   return offset;
9748 }
9749 static int dissect_olc_rev_multiplexParameter(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9750   return dissect_h245_OLC_rev_multiplexParameters(tvb, offset, pinfo, tree, hf_h245_olc_rev_multiplexParameter);
9751 }
9752
9753 static const per_sequence_t OLC_reverseLogicalChannelParameters_sequence[] = {
9754   { "dataType"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dataType },
9755   { "multiplexParameters"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_olc_rev_multiplexParameter },
9756   { "reverseLogicalChannelDependency", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_reverseLogicalChannelDependency },
9757   { "replacementFor"              , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_replacementFor },
9758   { NULL, 0, 0, NULL }
9759 };
9760
9761 static int
9762 dissect_h245_OLC_reverseLogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9763   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9764                                 ett_h245_OLC_reverseLogicalChannelParameters, OLC_reverseLogicalChannelParameters_sequence);
9765
9766   return offset;
9767 }
9768 static int dissect_reverseLogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9769   return dissect_h245_OLC_reverseLogicalChannelParameters(tvb, offset, pinfo, tree, hf_h245_reverseLogicalChannelParameters);
9770 }
9771
9772
9773 static const value_string h245_T_distribution_vals[] = {
9774   {   0, "unicast" },
9775   {   1, "multicast" },
9776   { 0, NULL }
9777 };
9778
9779 static const per_choice_t T_distribution_choice[] = {
9780   {   0, "unicast"                     , ASN1_EXTENSION_ROOT    , dissect_unicast },
9781   {   1, "multicast"                   , ASN1_EXTENSION_ROOT    , dissect_multicast },
9782   { 0, NULL, 0, NULL }
9783 };
9784
9785 static int
9786 dissect_h245_T_distribution(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9787   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9788                               ett_h245_T_distribution, T_distribution_choice, "T_distribution",
9789                               NULL);
9790
9791   return offset;
9792 }
9793 static int dissect_distribution(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9794   return dissect_h245_T_distribution(tvb, offset, pinfo, tree, hf_h245_distribution);
9795 }
9796
9797
9798 static int
9799 dissect_h245_T_e164Address(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9800   offset = dissect_per_IA5String(tvb, offset, pinfo, tree, hf_index,
9801                                  -1, -1);
9802
9803   return offset;
9804 }
9805 static int dissect_e164Address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9806   return dissect_h245_T_e164Address(tvb, offset, pinfo, tree, hf_h245_e164Address);
9807 }
9808
9809
9810 static const value_string h245_T_networkAddress_vals[] = {
9811   {   0, "q2931Address" },
9812   {   1, "e164Address" },
9813   {   2, "localAreaAddress" },
9814   { 0, NULL }
9815 };
9816
9817 static const per_choice_t T_networkAddress_choice[] = {
9818   {   0, "q2931Address"                , ASN1_EXTENSION_ROOT    , dissect_q2931Address },
9819   {   1, "e164Address"                 , ASN1_EXTENSION_ROOT    , dissect_e164Address },
9820   {   2, "localAreaAddress"            , ASN1_EXTENSION_ROOT    , dissect_localAreaAddress },
9821   { 0, NULL, 0, NULL }
9822 };
9823
9824 static int
9825 dissect_h245_T_networkAddress(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9826   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9827                               ett_h245_T_networkAddress, T_networkAddress_choice, "T_networkAddress",
9828                               NULL);
9829
9830   return offset;
9831 }
9832 static int dissect_networkAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9833   return dissect_h245_T_networkAddress(tvb, offset, pinfo, tree, hf_h245_networkAddress);
9834 }
9835
9836
9837 static int
9838 dissect_h245_OCTET_STRING_SIZE_1_255(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9839   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
9840                                     1, 255,
9841                                     NULL, NULL);
9842
9843   return offset;
9844 }
9845 static int dissect_externalReference(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9846   return dissect_h245_OCTET_STRING_SIZE_1_255(tvb, offset, pinfo, tree, hf_h245_externalReference);
9847 }
9848
9849
9850 static const value_string h245_T_t120SetupProcedure_vals[] = {
9851   {   0, "originateCall" },
9852   {   1, "waitForCall" },
9853   {   2, "issueQuery" },
9854   { 0, NULL }
9855 };
9856
9857 static const per_choice_t T_t120SetupProcedure_choice[] = {
9858   {   0, "originateCall"               , ASN1_EXTENSION_ROOT    , dissect_originateCall },
9859   {   1, "waitForCall"                 , ASN1_EXTENSION_ROOT    , dissect_waitForCall },
9860   {   2, "issueQuery"                  , ASN1_EXTENSION_ROOT    , dissect_issueQuery },
9861   { 0, NULL, 0, NULL }
9862 };
9863
9864 static int
9865 dissect_h245_T_t120SetupProcedure(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9866   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
9867                               ett_h245_T_t120SetupProcedure, T_t120SetupProcedure_choice, "T_t120SetupProcedure",
9868                               NULL);
9869
9870   return offset;
9871 }
9872 static int dissect_t120SetupProcedure(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9873   return dissect_h245_T_t120SetupProcedure(tvb, offset, pinfo, tree, hf_h245_t120SetupProcedure);
9874 }
9875
9876 static const per_sequence_t NetworkAccessParameters_sequence[] = {
9877   { "distribution"                , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_distribution },
9878   { "networkAddress"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_networkAddress },
9879   { "associateConference"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_associateConference },
9880   { "externalReference"           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_externalReference },
9881   { "t120SetupProcedure"          , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_t120SetupProcedure },
9882   { NULL, 0, 0, NULL }
9883 };
9884
9885 static int
9886 dissect_h245_NetworkAccessParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9887   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9888                                 ett_h245_NetworkAccessParameters, NetworkAccessParameters_sequence);
9889
9890   return offset;
9891 }
9892 static int dissect_separateStack(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9893   return dissect_h245_NetworkAccessParameters(tvb, offset, pinfo, tree, hf_h245_separateStack);
9894 }
9895
9896
9897 static int
9898 dissect_h245_OCTET_STRING_SIZE_1_65535(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9899   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
9900                                     1, 65535,
9901                                     NULL, NULL);
9902
9903   return offset;
9904 }
9905 static int dissect_h235Key(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9906   return dissect_h245_OCTET_STRING_SIZE_1_65535(tvb, offset, pinfo, tree, hf_h245_h235Key);
9907 }
9908 static int dissect_value(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9909   return dissect_h245_OCTET_STRING_SIZE_1_65535(tvb, offset, pinfo, tree, hf_h245_value);
9910 }
9911 static int dissect_certificateResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9912   return dissect_h245_OCTET_STRING_SIZE_1_65535(tvb, offset, pinfo, tree, hf_h245_certificateResponse);
9913 }
9914
9915
9916 static int
9917 dissect_h245_BIT_STRING_SIZE_1_65535(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9918   offset = dissect_per_bit_string(tvb, offset, pinfo, tree, hf_index,
9919                                   1, 65535);
9920
9921   return offset;
9922 }
9923 static int dissect_escrowValue(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9924   return dissect_h245_BIT_STRING_SIZE_1_65535(tvb, offset, pinfo, tree, hf_h245_escrowValue);
9925 }
9926
9927 static const per_sequence_t EscrowData_sequence[] = {
9928   { "escrowID"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_escrowID },
9929   { "escrowValue"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_escrowValue },
9930   { NULL, 0, 0, NULL }
9931 };
9932
9933 static int
9934 dissect_h245_EscrowData(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9935   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9936                                 ett_h245_EscrowData, EscrowData_sequence);
9937
9938   return offset;
9939 }
9940 static int dissect_escrowentry_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9941   return dissect_h245_EscrowData(tvb, offset, pinfo, tree, hf_h245_escrowentry_item);
9942 }
9943
9944
9945 static int
9946 dissect_h245_SEQUNCE_SIZE_1_256_OF_EscrowData(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9947   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
9948                                                ett_h245_SEQUNCE_SIZE_1_256_OF_EscrowData, dissect_escrowentry_item,
9949                                                1, 256);
9950
9951   return offset;
9952 }
9953 static int dissect_escrowentry(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9954   return dissect_h245_SEQUNCE_SIZE_1_256_OF_EscrowData(tvb, offset, pinfo, tree, hf_h245_escrowentry);
9955 }
9956
9957 static const per_sequence_t EncryptionSync_sequence[] = {
9958   { "nonStandard"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nonStandard },
9959   { "synchFlag"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_synchFlag },
9960   { "h235Key"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h235Key },
9961   { "escrowentry"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_escrowentry },
9962   { NULL, 0, 0, NULL }
9963 };
9964
9965 static int
9966 dissect_h245_EncryptionSync(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9967   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9968                                 ett_h245_EncryptionSync, EncryptionSync_sequence);
9969
9970   return offset;
9971 }
9972 static int dissect_encryptionSync(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9973   return dissect_h245_EncryptionSync(tvb, offset, pinfo, tree, hf_h245_encryptionSync);
9974 }
9975 static int dissect_encryptionUpdate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9976   return dissect_h245_EncryptionSync(tvb, offset, pinfo, tree, hf_h245_encryptionUpdate);
9977 }
9978
9979 static const per_sequence_t OpenLogicalChannel_sequence[] = {
9980   { "forwardLogicalChannelNumber" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelNumber },
9981   { "forwardLogicalChannelParameters", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelParameters },
9982   { "reverseLogicalChannelParameters", ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_reverseLogicalChannelParameters },
9983   { "separateStack"               , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_separateStack },
9984   { "encryptionSync"              , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_encryptionSync },
9985   { NULL, 0, 0, NULL }
9986 };
9987
9988 int
9989 dissect_h245_OpenLogicalChannel(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
9990   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
9991                                 ett_h245_OpenLogicalChannel, OpenLogicalChannel_sequence);
9992
9993
9994   h245_pi.msg_type = H245_OpenLogChn;
9995   return offset;
9996 }
9997 static int dissect_openLogicalChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
9998   return dissect_h245_OpenLogicalChannel(tvb, offset, pinfo, tree, hf_h245_openLogicalChannel);
9999 }
10000
10001
10002 static const value_string h245_T_source_vals[] = {
10003   {   0, "user" },
10004   {   1, "lcse" },
10005   { 0, NULL }
10006 };
10007
10008 static const per_choice_t T_source_choice[] = {
10009   {   0, "user"                        , ASN1_NO_EXTENSIONS     , dissect_user },
10010   {   1, "lcse"                        , ASN1_NO_EXTENSIONS     , dissect_lcse },
10011   { 0, NULL, 0, NULL }
10012 };
10013
10014 static int
10015 dissect_h245_T_source(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10016   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10017                               ett_h245_T_source, T_source_choice, "T_source",
10018                               NULL);
10019
10020   return offset;
10021 }
10022 static int dissect_CloseLogicalChannel_source(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10023   return dissect_h245_T_source(tvb, offset, pinfo, tree, hf_h245_CloseLogicalChannel_source);
10024 }
10025
10026
10027 static const value_string h245_clc_reason_vals[] = {
10028   {   0, "unknown" },
10029   {   1, "reopen" },
10030   {   2, "reservationFailure" },
10031   { 0, NULL }
10032 };
10033
10034 static const per_choice_t clc_reason_choice[] = {
10035   {   0, "unknown"                     , ASN1_EXTENSION_ROOT    , dissect_unknown },
10036   {   1, "reopen"                      , ASN1_EXTENSION_ROOT    , dissect_reopen },
10037   {   2, "reservationFailure"          , ASN1_EXTENSION_ROOT    , dissect_reservationFailure },
10038   { 0, NULL, 0, NULL }
10039 };
10040
10041 static int
10042 dissect_h245_clc_reason(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10043   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10044                               ett_h245_clc_reason, clc_reason_choice, "clc_reason",
10045                               NULL);
10046
10047   return offset;
10048 }
10049 static int dissect_clc_reason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10050   return dissect_h245_clc_reason(tvb, offset, pinfo, tree, hf_h245_clc_reason);
10051 }
10052
10053 static const per_sequence_t CloseLogicalChannel_sequence[] = {
10054   { "forwardLogicalChannelNumber" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelNumber },
10055   { "source"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_CloseLogicalChannel_source },
10056   { "reason"                      , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_clc_reason },
10057   { NULL, 0, 0, NULL }
10058 };
10059
10060 static int
10061 dissect_h245_CloseLogicalChannel(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10062   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10063                                 ett_h245_CloseLogicalChannel, CloseLogicalChannel_sequence);
10064
10065
10066   h245_pi.msg_type = H245_CloseLogChn;
10067   return offset;
10068 }
10069 static int dissect_closeLogicalChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10070   return dissect_h245_CloseLogicalChannel(tvb, offset, pinfo, tree, hf_h245_closeLogicalChannel);
10071 }
10072
10073
10074 static const value_string h245_T_reason_vals[] = {
10075   {   0, "unknown" },
10076   {   1, "normal" },
10077   {   2, "reopen" },
10078   {   3, "reservationFailure" },
10079   { 0, NULL }
10080 };
10081
10082 static const per_choice_t T_reason_choice[] = {
10083   {   0, "unknown"                     , ASN1_EXTENSION_ROOT    , dissect_unknown },
10084   {   1, "normal"                      , ASN1_EXTENSION_ROOT    , dissect_normal },
10085   {   2, "reopen"                      , ASN1_EXTENSION_ROOT    , dissect_reopen },
10086   {   3, "reservationFailure"          , ASN1_EXTENSION_ROOT    , dissect_reservationFailure },
10087   { 0, NULL, 0, NULL }
10088 };
10089
10090 static int
10091 dissect_h245_T_reason(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10092   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10093                               ett_h245_T_reason, T_reason_choice, "T_reason",
10094                               NULL);
10095
10096   return offset;
10097 }
10098 static int dissect_reason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10099   return dissect_h245_T_reason(tvb, offset, pinfo, tree, hf_h245_reason);
10100 }
10101
10102 static const per_sequence_t RequestChannelClose_sequence[] = {
10103   { "forwardLogicalChannelNumber" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelNumber },
10104   { "qosCapability"               , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_qosCapability },
10105   { "reason"                      , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_reason },
10106   { NULL, 0, 0, NULL }
10107 };
10108
10109 static int
10110 dissect_h245_RequestChannelClose(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10111   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10112                                 ett_h245_RequestChannelClose, RequestChannelClose_sequence);
10113
10114   return offset;
10115 }
10116 static int dissect_requestChannelClose(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10117   return dissect_h245_RequestChannelClose(tvb, offset, pinfo, tree, hf_h245_requestChannelClose);
10118 }
10119
10120
10121
10122 static int
10123 dissect_h245_MultiplexTableEntryNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10124   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
10125                                            1U, 15U, NULL, NULL, FALSE);
10126
10127   return offset;
10128 }
10129 static int dissect_multiplexTableEntryNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10130   return dissect_h245_MultiplexTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_multiplexTableEntryNumber);
10131 }
10132 static int dissect_multiplexTableEntryNumber_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10133   return dissect_h245_MultiplexTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_multiplexTableEntryNumber_item);
10134 }
10135 static int dissect_entryNumbers_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10136   return dissect_h245_MultiplexTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_entryNumbers_item);
10137 }
10138
10139
10140 static int
10141 dissect_h245_SEQUNCE_SIZE_2_255_OF_MultiplexElement(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10142   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
10143                                                ett_h245_SEQUNCE_SIZE_2_255_OF_MultiplexElement, dissect_subElementList_item,
10144                                                2, 255);
10145
10146   return offset;
10147 }
10148 static int dissect_subElementList(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10149   return dissect_h245_SEQUNCE_SIZE_2_255_OF_MultiplexElement(tvb, offset, pinfo, tree, hf_h245_subElementList);
10150 }
10151
10152
10153 static const value_string h245_Me_type_vals[] = {
10154   {   0, "logicalChannelNumber" },
10155   {   1, "subElementList" },
10156   { 0, NULL }
10157 };
10158
10159 static const per_choice_t Me_type_choice[] = {
10160   {   0, "logicalChannelNumber"        , ASN1_NO_EXTENSIONS     , dissect_logicalChannelNum },
10161   {   1, "subElementList"              , ASN1_NO_EXTENSIONS     , dissect_subElementList },
10162   { 0, NULL, 0, NULL }
10163 };
10164
10165 static int
10166 dissect_h245_Me_type(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10167   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10168                               ett_h245_Me_type, Me_type_choice, "Me_type",
10169                               NULL);
10170
10171   return offset;
10172 }
10173 static int dissect_Me_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10174   return dissect_h245_Me_type(tvb, offset, pinfo, tree, hf_h245_Me_type);
10175 }
10176
10177
10178 static const value_string h245_ME_repeatCount_vals[] = {
10179   {   0, "finite" },
10180   {   1, "untilClosingFlag" },
10181   { 0, NULL }
10182 };
10183
10184 static const per_choice_t ME_repeatCount_choice[] = {
10185   {   0, "finite"                      , ASN1_NO_EXTENSIONS     , dissect_finite_1_65535 },
10186   {   1, "untilClosingFlag"            , ASN1_NO_EXTENSIONS     , dissect_untilClosingFlag },
10187   { 0, NULL, 0, NULL }
10188 };
10189
10190 static int
10191 dissect_h245_ME_repeatCount(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10192   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10193                               ett_h245_ME_repeatCount, ME_repeatCount_choice, "ME_repeatCount",
10194                               NULL);
10195
10196   return offset;
10197 }
10198 static int dissect_me_repeatCount(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10199   return dissect_h245_ME_repeatCount(tvb, offset, pinfo, tree, hf_h245_me_repeatCount);
10200 }
10201
10202 static const per_sequence_t MultiplexElement_sequence[] = {
10203   { "type"                        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_Me_type },
10204   { "repeatCount"                 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_me_repeatCount },
10205   { NULL, 0, 0, NULL }
10206 };
10207
10208 static int
10209 dissect_h245_MultiplexElement(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10210   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10211                                 ett_h245_MultiplexElement, MultiplexElement_sequence);
10212
10213   return offset;
10214 }
10215
10216
10217 static int
10218 dissect_h245_SEQUNCE_SIZE_1_256_OF_MultiplexElement(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10219   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
10220                                                ett_h245_SEQUNCE_SIZE_1_256_OF_MultiplexElement, dissect_elementList_item,
10221                                                1, 256);
10222
10223   return offset;
10224 }
10225 static int dissect_elementList(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10226   return dissect_h245_SEQUNCE_SIZE_1_256_OF_MultiplexElement(tvb, offset, pinfo, tree, hf_h245_elementList);
10227 }
10228
10229 static const per_sequence_t MultiplexEntryDescriptor_sequence[] = {
10230   { "multiplexTableEntryNumber"   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_multiplexTableEntryNumber },
10231   { "elementList"                 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_elementList },
10232   { NULL, 0, 0, NULL }
10233 };
10234
10235 static int
10236 dissect_h245_MultiplexEntryDescriptor(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10237   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10238                                 ett_h245_MultiplexEntryDescriptor, MultiplexEntryDescriptor_sequence);
10239
10240   return offset;
10241 }
10242 static int dissect_multiplexEntryDescriptors_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10243   return dissect_h245_MultiplexEntryDescriptor(tvb, offset, pinfo, tree, hf_h245_multiplexEntryDescriptors_item);
10244 }
10245
10246
10247 static int
10248 dissect_h245_SET_SIZE_1_15_OF_MultiplexEntryDescriptor(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10249   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
10250                                           ett_h245_SET_SIZE_1_15_OF_MultiplexEntryDescriptor, dissect_multiplexEntryDescriptors_item,
10251                                           1, 15);
10252
10253   return offset;
10254 }
10255 static int dissect_multiplexEntryDescriptors(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10256   return dissect_h245_SET_SIZE_1_15_OF_MultiplexEntryDescriptor(tvb, offset, pinfo, tree, hf_h245_multiplexEntryDescriptors);
10257 }
10258
10259 static const per_sequence_t MultiplexEntrySend_sequence[] = {
10260   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
10261   { "multiplexEntryDescriptors"   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multiplexEntryDescriptors },
10262   { NULL, 0, 0, NULL }
10263 };
10264
10265 static int
10266 dissect_h245_MultiplexEntrySend(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10267   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10268                                 ett_h245_MultiplexEntrySend, MultiplexEntrySend_sequence);
10269
10270   return offset;
10271 }
10272 static int dissect_multiplexEntrySend(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10273   return dissect_h245_MultiplexEntrySend(tvb, offset, pinfo, tree, hf_h245_multiplexEntrySend);
10274 }
10275
10276
10277 static int
10278 dissect_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10279   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
10280                                           ett_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber, dissect_multiplexTableEntryNumber_item,
10281                                           1, 15);
10282
10283   return offset;
10284 }
10285 static int dissect_multiplexTableEntryNumbers(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10286   return dissect_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_multiplexTableEntryNumbers);
10287 }
10288 static int dissect_entryNumbers(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10289   return dissect_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_entryNumbers);
10290 }
10291
10292 static const per_sequence_t RequestMultiplexEntry_sequence[] = {
10293   { "entryNumbers"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_entryNumbers },
10294   { NULL, 0, 0, NULL }
10295 };
10296
10297 static int
10298 dissect_h245_RequestMultiplexEntry(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10299   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10300                                 ett_h245_RequestMultiplexEntry, RequestMultiplexEntry_sequence);
10301
10302   return offset;
10303 }
10304 static int dissect_requestMultiplexEntry(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10305   return dissect_h245_RequestMultiplexEntry(tvb, offset, pinfo, tree, hf_h245_requestMultiplexEntry);
10306 }
10307
10308
10309 static const value_string h245_H261Resolution_vals[] = {
10310   {   0, "qcif" },
10311   {   1, "cif" },
10312   { 0, NULL }
10313 };
10314
10315 static const per_choice_t H261Resolution_choice[] = {
10316   {   0, "qcif"                        , ASN1_NO_EXTENSIONS     , dissect_qcif },
10317   {   1, "cif"                         , ASN1_NO_EXTENSIONS     , dissect_cif },
10318   { 0, NULL, 0, NULL }
10319 };
10320
10321 static int
10322 dissect_h245_H261Resolution(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10323   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10324                               ett_h245_H261Resolution, H261Resolution_choice, "H261Resolution",
10325                               NULL);
10326
10327   return offset;
10328 }
10329 static int dissect_h261_resolution(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10330   return dissect_h245_H261Resolution(tvb, offset, pinfo, tree, hf_h245_h261_resolution);
10331 }
10332
10333 static const per_sequence_t H261VideoMode_sequence[] = {
10334   { "resolution"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h261_resolution },
10335   { "bitRate"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRate_1_19200 },
10336   { "stillImageTransmission"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_stillImageTransmission },
10337   { NULL, 0, 0, NULL }
10338 };
10339
10340 static int
10341 dissect_h245_H261VideoMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10342   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10343                                 ett_h245_H261VideoMode, H261VideoMode_sequence);
10344
10345   return offset;
10346 }
10347 static int dissect_h261VideoMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10348   return dissect_h245_H261VideoMode(tvb, offset, pinfo, tree, hf_h245_h261VideoMode);
10349 }
10350
10351
10352 static const value_string h245_T_profileAndLevel_vals[] = {
10353   {   0, "profileAndLevel-SPatML" },
10354   {   1, "profileAndLevel-MPatLL" },
10355   {   2, "profileAndLevel-MPatML" },
10356   {   3, "profileAndLevel-MPatH-14" },
10357   {   4, "profileAndLevel-MPatHL" },
10358   {   5, "profileAndLevel-SNRatLL" },
10359   {   6, "profileAndLevel-SNRatML" },
10360   {   7, "profileAndLevel-SpatialatH-14" },
10361   {   8, "profileAndLevel-HPatML" },
10362   {   9, "profileAndLevel-HPatH-14" },
10363   {  10, "profileAndLevel-HPatHL" },
10364   { 0, NULL }
10365 };
10366
10367 static const per_choice_t T_profileAndLevel_choice[] = {
10368   {   0, "profileAndLevel-SPatML"      , ASN1_EXTENSION_ROOT    , dissect_profileAndLevel_SPatMLMode },
10369   {   1, "profileAndLevel-MPatLL"      , ASN1_EXTENSION_ROOT    , dissect_profileAndLevel_MPatLLMode },
10370   {   2, "profileAndLevel-MPatML"      , ASN1_EXTENSION_ROOT    , dissect_profileAndLevel_MPatMLMode },
10371   {   3, "profileAndLevel-MPatH-14"    , ASN1_EXTENSION_ROOT    , dissect_profileAndLevel_MPatH_14Mode },
10372   {   4, "profileAndLevel-MPatHL"      , ASN1_EXTENSION_ROOT    , dissect_profileAndLevel_MPatHLMode },
10373   {   5, "profileAndLevel-SNRatLL"     , ASN1_EXTENSION_ROOT    , dissect_profileAndLevel_SNRatLLMode },
10374   {   6, "profileAndLevel-SNRatML"     , ASN1_EXTENSION_ROOT    , dissect_profileAndLevel_SNRatMLMode },
10375   {   7, "profileAndLevel-SpatialatH-14", ASN1_EXTENSION_ROOT    , dissect_profileAndLevel_SpatialatH_14Mode },
10376   {   8, "profileAndLevel-HPatML"      , ASN1_EXTENSION_ROOT    , dissect_profileAndLevel_HPatMLMode },
10377   {   9, "profileAndLevel-HPatH-14"    , ASN1_EXTENSION_ROOT    , dissect_profileAndLevel_HPatH_14Mode },
10378   {  10, "profileAndLevel-HPatHL"      , ASN1_EXTENSION_ROOT    , dissect_profileAndLevel_HPatHLMode },
10379   { 0, NULL, 0, NULL }
10380 };
10381
10382 static int
10383 dissect_h245_T_profileAndLevel(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10384   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10385                               ett_h245_T_profileAndLevel, T_profileAndLevel_choice, "T_profileAndLevel",
10386                               NULL);
10387
10388   return offset;
10389 }
10390 static int dissect_profileAndLevel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10391   return dissect_h245_T_profileAndLevel(tvb, offset, pinfo, tree, hf_h245_profileAndLevel);
10392 }
10393
10394 static const per_sequence_t H262VideoMode_sequence[] = {
10395   { "profileAndLevel"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_profileAndLevel },
10396   { "videoBitRate"                , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_videoBitRate },
10397   { "vbvBufferSize"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_vbvBufferSize },
10398   { "samplesPerLine"              , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_samplesPerLine },
10399   { "linesPerFrame"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_linesPerFrame },
10400   { "framesPerSecond"             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_framesPerSecond },
10401   { "luminanceSampleRate"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_luminanceSampleRate },
10402   { NULL, 0, 0, NULL }
10403 };
10404
10405 static int
10406 dissect_h245_H262VideoMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10407   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10408                                 ett_h245_H262VideoMode, H262VideoMode_sequence);
10409
10410   return offset;
10411 }
10412 static int dissect_h262VideoMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10413   return dissect_h245_H262VideoMode(tvb, offset, pinfo, tree, hf_h245_h262VideoMode);
10414 }
10415
10416
10417 static const value_string h245_H263Resolution_vals[] = {
10418   {   0, "sqcif" },
10419   {   1, "qcif" },
10420   {   2, "cif" },
10421   {   3, "cif4" },
10422   {   4, "cif16" },
10423   {   5, "custom" },
10424   { 0, NULL }
10425 };
10426
10427 static const per_choice_t H263Resolution_choice[] = {
10428   {   0, "sqcif"                       , ASN1_EXTENSION_ROOT    , dissect_sqcif },
10429   {   1, "qcif"                        , ASN1_EXTENSION_ROOT    , dissect_qcif },
10430   {   2, "cif"                         , ASN1_EXTENSION_ROOT    , dissect_cif },
10431   {   3, "cif4"                        , ASN1_EXTENSION_ROOT    , dissect_cif4 },
10432   {   4, "cif16"                       , ASN1_EXTENSION_ROOT    , dissect_cif16 },
10433   {   5, "custom"                      , ASN1_NOT_EXTENSION_ROOT, dissect_custom_res },
10434   { 0, NULL, 0, NULL }
10435 };
10436
10437 static int
10438 dissect_h245_H263Resolution(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10439   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10440                               ett_h245_H263Resolution, H263Resolution_choice, "H263Resolution",
10441                               NULL);
10442
10443   return offset;
10444 }
10445 static int dissect_h263_resolution(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10446   return dissect_h245_H263Resolution(tvb, offset, pinfo, tree, hf_h245_h263_resolution);
10447 }
10448
10449 static const per_sequence_t H263VideoMode_sequence[] = {
10450   { "resolution"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h263_resolution },
10451   { "bitRate"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRate_1_19200 },
10452   { "unrestrictedVector"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_unrestrictedVector },
10453   { "arithmeticCoding"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_arithmeticCoding },
10454   { "advancedPrediction"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_advancedPrediction },
10455   { "pbFrames"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_pbFrames },
10456   { "errorCompensation"           , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_errorCompensation },
10457   { "enhancementLayerInfo"        , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_enhancementLayerInfo },
10458   { "h263Options"                 , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h263Options },
10459   { NULL, 0, 0, NULL }
10460 };
10461
10462 static int
10463 dissect_h245_H263VideoMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10464   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10465                                 ett_h245_H263VideoMode, H263VideoMode_sequence);
10466
10467   return offset;
10468 }
10469 static int dissect_h263VideoMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10470   return dissect_h245_H263VideoMode(tvb, offset, pinfo, tree, hf_h245_h263VideoMode);
10471 }
10472
10473 static const per_sequence_t IS11172VideoMode_sequence[] = {
10474   { "constrainedBitstream"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_constrainedBitstream },
10475   { "videoBitRate"                , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_videoBitRate },
10476   { "vbvBufferSize"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_vbvBufferSize },
10477   { "samplesPerLine"              , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_samplesPerLine },
10478   { "linesPerFrame"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_linesPerFrame },
10479   { "pictureRate"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_pictureRate },
10480   { "luminanceSampleRate"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_luminanceSampleRate },
10481   { NULL, 0, 0, NULL }
10482 };
10483
10484 static int
10485 dissect_h245_IS11172VideoMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10486   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10487                                 ett_h245_IS11172VideoMode, IS11172VideoMode_sequence);
10488
10489   return offset;
10490 }
10491 static int dissect_is11172VideoMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10492   return dissect_h245_IS11172VideoMode(tvb, offset, pinfo, tree, hf_h245_is11172VideoMode);
10493 }
10494
10495
10496 static const value_string h245_VideoMode_vals[] = {
10497   {   0, "nonStandard" },
10498   {   1, "h261VideoMode" },
10499   {   2, "h262VideoMode" },
10500   {   3, "h263VideoMode" },
10501   {   4, "is11172VideoMode" },
10502   {   5, "genericVideoMode" },
10503   { 0, NULL }
10504 };
10505
10506 static const per_choice_t VideoMode_choice[] = {
10507   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
10508   {   1, "h261VideoMode"               , ASN1_EXTENSION_ROOT    , dissect_h261VideoMode },
10509   {   2, "h262VideoMode"               , ASN1_EXTENSION_ROOT    , dissect_h262VideoMode },
10510   {   3, "h263VideoMode"               , ASN1_EXTENSION_ROOT    , dissect_h263VideoMode },
10511   {   4, "is11172VideoMode"            , ASN1_EXTENSION_ROOT    , dissect_is11172VideoMode },
10512   {   5, "genericVideoMode"            , ASN1_NOT_EXTENSION_ROOT, dissect_genericVideoMode },
10513   { 0, NULL, 0, NULL }
10514 };
10515
10516 static int
10517 dissect_h245_VideoMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10518   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10519                               ett_h245_VideoMode, VideoMode_choice, "VideoMode",
10520                               NULL);
10521
10522   return offset;
10523 }
10524 static int dissect_videoMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10525   return dissect_h245_VideoMode(tvb, offset, pinfo, tree, hf_h245_videoMode);
10526 }
10527
10528
10529 static const value_string h245_Mode_g7231_vals[] = {
10530   {   0, "noSilenceSuppressionLowRate" },
10531   {   1, "noSilenceSuppressionHighRate" },
10532   {   2, "silenceSuppressionLowRate" },
10533   {   3, "silenceSuppressionHighRate" },
10534   { 0, NULL }
10535 };
10536
10537 static const per_choice_t Mode_g7231_choice[] = {
10538   {   0, "noSilenceSuppressionLowRate" , ASN1_NO_EXTENSIONS     , dissect_noSilenceSuppressionLowRate },
10539   {   1, "noSilenceSuppressionHighRate", ASN1_NO_EXTENSIONS     , dissect_noSilenceSuppressionHighRate },
10540   {   2, "silenceSuppressionLowRate"   , ASN1_NO_EXTENSIONS     , dissect_silenceSuppressionLowRate },
10541   {   3, "silenceSuppressionHighRate"  , ASN1_NO_EXTENSIONS     , dissect_silenceSuppressionHighRate },
10542   { 0, NULL, 0, NULL }
10543 };
10544
10545 static int
10546 dissect_h245_Mode_g7231(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10547   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10548                               ett_h245_Mode_g7231, Mode_g7231_choice, "Mode_g7231",
10549                               NULL);
10550
10551   return offset;
10552 }
10553 static int dissect_g7231_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10554   return dissect_h245_Mode_g7231(tvb, offset, pinfo, tree, hf_h245_g7231_mode);
10555 }
10556
10557
10558 static const value_string h245_T_audioLayer_vals[] = {
10559   {   0, "audioLayer1" },
10560   {   1, "audioLayer2" },
10561   {   2, "audioLayer3" },
10562   { 0, NULL }
10563 };
10564
10565 static const per_choice_t T_audioLayer_choice[] = {
10566   {   0, "audioLayer1"                 , ASN1_NO_EXTENSIONS     , dissect_audioLayer1Mode },
10567   {   1, "audioLayer2"                 , ASN1_NO_EXTENSIONS     , dissect_audioLayer2Mode },
10568   {   2, "audioLayer3"                 , ASN1_NO_EXTENSIONS     , dissect_audioLayer3Mode },
10569   { 0, NULL, 0, NULL }
10570 };
10571
10572 static int
10573 dissect_h245_T_audioLayer(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10574   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10575                               ett_h245_T_audioLayer, T_audioLayer_choice, "T_audioLayer",
10576                               NULL);
10577
10578   return offset;
10579 }
10580 static int dissect_audioLayer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10581   return dissect_h245_T_audioLayer(tvb, offset, pinfo, tree, hf_h245_audioLayer);
10582 }
10583
10584
10585 static const value_string h245_T_audioSampling_vals[] = {
10586   {   0, "audioSampling32k" },
10587   {   1, "audioSampling44k1" },
10588   {   2, "audioSampling48k" },
10589   { 0, NULL }
10590 };
10591
10592 static const per_choice_t T_audioSampling_choice[] = {
10593   {   0, "audioSampling32k"            , ASN1_NO_EXTENSIONS     , dissect_audioSampling32kMode },
10594   {   1, "audioSampling44k1"           , ASN1_NO_EXTENSIONS     , dissect_audioSampling44k1Mode },
10595   {   2, "audioSampling48k"            , ASN1_NO_EXTENSIONS     , dissect_audioSampling48kMode },
10596   { 0, NULL, 0, NULL }
10597 };
10598
10599 static int
10600 dissect_h245_T_audioSampling(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10601   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10602                               ett_h245_T_audioSampling, T_audioSampling_choice, "T_audioSampling",
10603                               NULL);
10604
10605   return offset;
10606 }
10607 static int dissect_audioSampling(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10608   return dissect_h245_T_audioSampling(tvb, offset, pinfo, tree, hf_h245_audioSampling);
10609 }
10610
10611
10612 static const value_string h245_IS11172_multichannelType_vals[] = {
10613   {   0, "singleChannel" },
10614   {   1, "twoChannelStereo" },
10615   {   2, "twoChannelDual" },
10616   { 0, NULL }
10617 };
10618
10619 static const per_choice_t IS11172_multichannelType_choice[] = {
10620   {   0, "singleChannel"               , ASN1_NO_EXTENSIONS     , dissect_singleChannelMode },
10621   {   1, "twoChannelStereo"            , ASN1_NO_EXTENSIONS     , dissect_twoChannelStereo },
10622   {   2, "twoChannelDual"              , ASN1_NO_EXTENSIONS     , dissect_twoChannelDual },
10623   { 0, NULL, 0, NULL }
10624 };
10625
10626 static int
10627 dissect_h245_IS11172_multichannelType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10628   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10629                               ett_h245_IS11172_multichannelType, IS11172_multichannelType_choice, "IS11172_multichannelType",
10630                               NULL);
10631
10632   return offset;
10633 }
10634 static int dissect_is11172multichannelType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10635   return dissect_h245_IS11172_multichannelType(tvb, offset, pinfo, tree, hf_h245_is11172multichannelType);
10636 }
10637
10638 static const per_sequence_t IS11172AudioMode_sequence[] = {
10639   { "audioLayer"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioLayer },
10640   { "audioSampling"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioSampling },
10641   { "multichannelType"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_is11172multichannelType },
10642   { "bitRate"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRate_1_448 },
10643   { NULL, 0, 0, NULL }
10644 };
10645
10646 static int
10647 dissect_h245_IS11172AudioMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10648   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10649                                 ett_h245_IS11172AudioMode, IS11172AudioMode_sequence);
10650
10651   return offset;
10652 }
10653 static int dissect_is11172AudioMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10654   return dissect_h245_IS11172AudioMode(tvb, offset, pinfo, tree, hf_h245_is11172AudioMode);
10655 }
10656
10657
10658 static const value_string h245_IS13818AudioLayer_vals[] = {
10659   {   0, "audioLayer1" },
10660   {   1, "audioLayer2" },
10661   {   2, "audioLayer3" },
10662   { 0, NULL }
10663 };
10664
10665 static const per_choice_t IS13818AudioLayer_choice[] = {
10666   {   0, "audioLayer1"                 , ASN1_NO_EXTENSIONS     , dissect_audioLayer1Mode },
10667   {   1, "audioLayer2"                 , ASN1_NO_EXTENSIONS     , dissect_audioLayer2Mode },
10668   {   2, "audioLayer3"                 , ASN1_NO_EXTENSIONS     , dissect_audioLayer3Mode },
10669   { 0, NULL, 0, NULL }
10670 };
10671
10672 static int
10673 dissect_h245_IS13818AudioLayer(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10674   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10675                               ett_h245_IS13818AudioLayer, IS13818AudioLayer_choice, "IS13818AudioLayer",
10676                               NULL);
10677
10678   return offset;
10679 }
10680 static int dissect_audioLayerMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10681   return dissect_h245_IS13818AudioLayer(tvb, offset, pinfo, tree, hf_h245_audioLayerMode);
10682 }
10683
10684
10685 static const value_string h245_IS13818AudioSampling_vals[] = {
10686   {   0, "audioSampling16k" },
10687   {   1, "audioSampling22k05" },
10688   {   2, "audioSampling24k" },
10689   {   3, "audioSampling32k" },
10690   {   4, "audioSampling44k1" },
10691   {   5, "audioSampling48k" },
10692   { 0, NULL }
10693 };
10694
10695 static const per_choice_t IS13818AudioSampling_choice[] = {
10696   {   0, "audioSampling16k"            , ASN1_NO_EXTENSIONS     , dissect_audioSampling16kMode },
10697   {   1, "audioSampling22k05"          , ASN1_NO_EXTENSIONS     , dissect_audioSampling22k05Mode },
10698   {   2, "audioSampling24k"            , ASN1_NO_EXTENSIONS     , dissect_audioSampling24kMode },
10699   {   3, "audioSampling32k"            , ASN1_NO_EXTENSIONS     , dissect_audioSampling32kMode },
10700   {   4, "audioSampling44k1"           , ASN1_NO_EXTENSIONS     , dissect_audioSampling44k1Mode },
10701   {   5, "audioSampling48k"            , ASN1_NO_EXTENSIONS     , dissect_audioSampling48kMode },
10702   { 0, NULL, 0, NULL }
10703 };
10704
10705 static int
10706 dissect_h245_IS13818AudioSampling(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10707   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10708                               ett_h245_IS13818AudioSampling, IS13818AudioSampling_choice, "IS13818AudioSampling",
10709                               NULL);
10710
10711   return offset;
10712 }
10713 static int dissect_audioSamplingMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10714   return dissect_h245_IS13818AudioSampling(tvb, offset, pinfo, tree, hf_h245_audioSamplingMode);
10715 }
10716
10717
10718 static const value_string h245_IS13818MultichannelType_vals[] = {
10719   {   0, "singleChannel" },
10720   {   1, "twoChannelStereo" },
10721   {   2, "twoChannelDual" },
10722   {   3, "threeChannels2-1" },
10723   {   4, "threeChannels3-0" },
10724   {   5, "fourChannels2-0-2-0" },
10725   {   6, "fourChannels2-2" },
10726   {   7, "fourChannels3-1" },
10727   {   8, "fiveChannels3-0-2-0" },
10728   {   9, "fiveChannels3-2" },
10729   { 0, NULL }
10730 };
10731
10732 static const per_choice_t IS13818MultichannelType_choice[] = {
10733   {   0, "singleChannel"               , ASN1_NO_EXTENSIONS     , dissect_singleChannelMode },
10734   {   1, "twoChannelStereo"            , ASN1_NO_EXTENSIONS     , dissect_twoChannelStereo },
10735   {   2, "twoChannelDual"              , ASN1_NO_EXTENSIONS     , dissect_twoChannelDual },
10736   {   3, "threeChannels2-1"            , ASN1_NO_EXTENSIONS     , dissect_threeChannels2_1Mode },
10737   {   4, "threeChannels3-0"            , ASN1_NO_EXTENSIONS     , dissect_threeChannels3_0Mode },
10738   {   5, "fourChannels2-0-2-0"         , ASN1_NO_EXTENSIONS     , dissect_fourChannels2_0_2_0Mode },
10739   {   6, "fourChannels2-2"             , ASN1_NO_EXTENSIONS     , dissect_fourChannels2_2Mode },
10740   {   7, "fourChannels3-1"             , ASN1_NO_EXTENSIONS     , dissect_fourChannels3_1Mode },
10741   {   8, "fiveChannels3-0-2-0"         , ASN1_NO_EXTENSIONS     , dissect_fiveChannels3_0_2_0Mode },
10742   {   9, "fiveChannels3-2"             , ASN1_NO_EXTENSIONS     , dissect_fiveChannels3_2Mode },
10743   { 0, NULL, 0, NULL }
10744 };
10745
10746 static int
10747 dissect_h245_IS13818MultichannelType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10748   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10749                               ett_h245_IS13818MultichannelType, IS13818MultichannelType_choice, "IS13818MultichannelType",
10750                               NULL);
10751
10752   return offset;
10753 }
10754 static int dissect_is13818MultichannelType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10755   return dissect_h245_IS13818MultichannelType(tvb, offset, pinfo, tree, hf_h245_is13818MultichannelType);
10756 }
10757
10758 static const per_sequence_t IS13818AudioMode_sequence[] = {
10759   { "audioLayer"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioLayerMode },
10760   { "audioSampling"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_audioSamplingMode },
10761   { "multichannelType"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_is13818MultichannelType },
10762   { "lowFrequencyEnhancement"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lowFrequencyEnhancement },
10763   { "multilingual"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multilingual },
10764   { "bitRate"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRate2_1_1130 },
10765   { NULL, 0, 0, NULL }
10766 };
10767
10768 static int
10769 dissect_h245_IS13818AudioMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10770   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10771                                 ett_h245_IS13818AudioMode, IS13818AudioMode_sequence);
10772
10773   return offset;
10774 }
10775 static int dissect_is13818AudioMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10776   return dissect_h245_IS13818AudioMode(tvb, offset, pinfo, tree, hf_h245_is13818AudioMode);
10777 }
10778
10779 static const per_sequence_t G7231AnnexCMode_sequence[] = {
10780   { "maxAl-sduAudioFrames"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maxAl_sduAudioFrames },
10781   { "silenceSuppression"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_silenceSuppression },
10782   { "g723AnnexCAudioMode"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_g723AnnexCAudioMode },
10783   { NULL, 0, 0, NULL }
10784 };
10785
10786 static int
10787 dissect_h245_G7231AnnexCMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10788   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10789                                 ett_h245_G7231AnnexCMode, G7231AnnexCMode_sequence);
10790
10791   return offset;
10792 }
10793 static int dissect_g7231AnnexCMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10794   return dissect_h245_G7231AnnexCMode(tvb, offset, pinfo, tree, hf_h245_g7231AnnexCMode);
10795 }
10796
10797 static const per_sequence_t VBDMode_sequence[] = {
10798   { "type"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_vbd_type },
10799   { NULL, 0, 0, NULL }
10800 };
10801
10802 static int
10803 dissect_h245_VBDMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10804   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10805                                 ett_h245_VBDMode, VBDMode_sequence);
10806
10807   return offset;
10808 }
10809 static int dissect_vbd_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10810   return dissect_h245_VBDMode(tvb, offset, pinfo, tree, hf_h245_vbd_mode);
10811 }
10812
10813
10814 static const value_string h245_AudioMode_vals[] = {
10815   {   0, "nonStandard" },
10816   {   1, "g711Alaw64k" },
10817   {   2, "g711Alaw56k" },
10818   {   3, "g711Ulaw64k" },
10819   {   4, "g711Ulaw56k" },
10820   {   5, "g722-64k" },
10821   {   6, "g722-56k" },
10822   {   7, "g722-48k" },
10823   {   8, "g728" },
10824   {   9, "g729" },
10825   {  10, "g729AnnexA" },
10826   {  11, "g7231" },
10827   {  12, "is11172AudioMode" },
10828   {  13, "is13818AudioMode" },
10829   {  14, "g729wAnnexB" },
10830   {  15, "g729AnnexAwAnnexB" },
10831   {  16, "g7231AnnexCMode" },
10832   {  17, "gsmFullRate" },
10833   {  18, "gsmHalfRate" },
10834   {  19, "gsmEnhancedFullRate" },
10835   {  20, "genericAudioMode" },
10836   {  21, "g729Extensions" },
10837   {  22, "vbd" },
10838   { 0, NULL }
10839 };
10840
10841 static const per_choice_t AudioMode_choice[] = {
10842   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
10843   {   1, "g711Alaw64k"                 , ASN1_EXTENSION_ROOT    , dissect_g711Alaw64k_mode },
10844   {   2, "g711Alaw56k"                 , ASN1_EXTENSION_ROOT    , dissect_g711Alaw56k_mode },
10845   {   3, "g711Ulaw64k"                 , ASN1_EXTENSION_ROOT    , dissect_g711Ulaw64k_mode },
10846   {   4, "g711Ulaw56k"                 , ASN1_EXTENSION_ROOT    , dissect_g711Ulaw56k_mode },
10847   {   5, "g722-64k"                    , ASN1_EXTENSION_ROOT    , dissect_g722_64k_mode },
10848   {   6, "g722-56k"                    , ASN1_EXTENSION_ROOT    , dissect_g722_56k_mode },
10849   {   7, "g722-48k"                    , ASN1_EXTENSION_ROOT    , dissect_g722_48k_mode },
10850   {   8, "g728"                        , ASN1_EXTENSION_ROOT    , dissect_g728_mode },
10851   {   9, "g729"                        , ASN1_EXTENSION_ROOT    , dissect_g729_mode },
10852   {  10, "g729AnnexA"                  , ASN1_EXTENSION_ROOT    , dissect_g729AnnexA_mode },
10853   {  11, "g7231"                       , ASN1_EXTENSION_ROOT    , dissect_g7231_mode },
10854   {  12, "is11172AudioMode"            , ASN1_EXTENSION_ROOT    , dissect_is11172AudioMode },
10855   {  13, "is13818AudioMode"            , ASN1_EXTENSION_ROOT    , dissect_is13818AudioMode },
10856   {  14, "g729wAnnexB"                 , ASN1_NOT_EXTENSION_ROOT, dissect_g729wAnnexB },
10857   {  15, "g729AnnexAwAnnexB"           , ASN1_NOT_EXTENSION_ROOT, dissect_g729AnnexAwAnnexB },
10858   {  16, "g7231AnnexCMode"             , ASN1_NOT_EXTENSION_ROOT, dissect_g7231AnnexCMode },
10859   {  17, "gsmFullRate"                 , ASN1_NOT_EXTENSION_ROOT, dissect_gsmFullRate },
10860   {  18, "gsmHalfRate"                 , ASN1_NOT_EXTENSION_ROOT, dissect_gsmHalfRate },
10861   {  19, "gsmEnhancedFullRate"         , ASN1_NOT_EXTENSION_ROOT, dissect_gsmEnhancedFullRate },
10862   {  20, "genericAudioMode"            , ASN1_NOT_EXTENSION_ROOT, dissect_genericAudioMode },
10863   {  21, "g729Extensions"              , ASN1_NOT_EXTENSION_ROOT, dissect_g729Extensions },
10864   {  22, "vbd"                         , ASN1_NOT_EXTENSION_ROOT, dissect_vbd_mode },
10865   { 0, NULL, 0, NULL }
10866 };
10867
10868 static int
10869 dissect_h245_AudioMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10870   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10871                               ett_h245_AudioMode, AudioMode_choice, "AudioMode",
10872                               NULL);
10873
10874   return offset;
10875 }
10876
10877 static const per_sequence_t T38faxApp_sequence[] = {
10878   { "t38FaxProtocol"              , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_t38FaxProtocol },
10879   { "t38FaxProfile"               , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_t38FaxProfile },
10880   { NULL, 0, 0, NULL }
10881 };
10882
10883 static int
10884 dissect_h245_T38faxApp(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10885   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10886                                 ett_h245_T38faxApp, T38faxApp_sequence);
10887
10888   return offset;
10889 }
10890 static int dissect_t38faxDataProtocolCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10891   return dissect_h245_T38faxApp(tvb, offset, pinfo, tree, hf_h245_t38faxDataProtocolCapability);
10892 }
10893
10894
10895 static const value_string h245_DataModeApplication_vals[] = {
10896   {   0, "nonStandard" },
10897   {   1, "t120" },
10898   {   2, "dsm-cc" },
10899   {   3, "userData" },
10900   {   4, "t84" },
10901   {   5, "t434" },
10902   {   6, "h224" },
10903   {   7, "nlpid" },
10904   {   8, "dsvdControl" },
10905   {   9, "h222DataPartitioning" },
10906   {  10, "t30fax" },
10907   {  11, "t140" },
10908   {  12, "t38fax" },
10909   {  13, "genericDataMode" },
10910   { 0, NULL }
10911 };
10912
10913 static const per_choice_t DataModeApplication_choice[] = {
10914   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
10915   {   1, "t120"                        , ASN1_EXTENSION_ROOT    , dissect_t120 },
10916   {   2, "dsm-cc"                      , ASN1_EXTENSION_ROOT    , dissect_dsm_cc },
10917   {   3, "userData"                    , ASN1_EXTENSION_ROOT    , dissect_userData },
10918   {   4, "t84"                         , ASN1_EXTENSION_ROOT    , dissect_t84DataProtocolCapability },
10919   {   5, "t434"                        , ASN1_EXTENSION_ROOT    , dissect_t434 },
10920   {   6, "h224"                        , ASN1_EXTENSION_ROOT    , dissect_h224 },
10921   {   7, "nlpid"                       , ASN1_EXTENSION_ROOT    , dissect_nlpid },
10922   {   8, "dsvdControl"                 , ASN1_EXTENSION_ROOT    , dissect_dsvdControl },
10923   {   9, "h222DataPartitioning"        , ASN1_EXTENSION_ROOT    , dissect_h222DataPartitioning },
10924   {  10, "t30fax"                      , ASN1_NOT_EXTENSION_ROOT, dissect_t30fax },
10925   {  11, "t140"                        , ASN1_NOT_EXTENSION_ROOT, dissect_t140 },
10926   {  12, "t38fax"                      , ASN1_NOT_EXTENSION_ROOT, dissect_t38faxDataProtocolCapability },
10927   {  13, "genericDataMode"             , ASN1_NOT_EXTENSION_ROOT, dissect_genericDataMode },
10928   { 0, NULL, 0, NULL }
10929 };
10930
10931 static int
10932 dissect_h245_DataModeApplication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10933   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10934                               ett_h245_DataModeApplication, DataModeApplication_choice, "DataModeApplication",
10935                               NULL);
10936
10937   return offset;
10938 }
10939 static int dissect_datamodeapplication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10940   return dissect_h245_DataModeApplication(tvb, offset, pinfo, tree, hf_h245_datamodeapplication);
10941 }
10942
10943 static const per_sequence_t DataMode_sequence[] = {
10944   { "application"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_datamodeapplication },
10945   { "bitRate"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRate_0_4294967295 },
10946   { NULL, 0, 0, NULL }
10947 };
10948
10949 static int
10950 dissect_h245_DataMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10951   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10952                                 ett_h245_DataMode, DataMode_sequence);
10953
10954   return offset;
10955 }
10956 static int dissect_dataMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10957   return dissect_h245_DataMode(tvb, offset, pinfo, tree, hf_h245_dataMode);
10958 }
10959
10960
10961 static const value_string h245_T_mediaMode_vals[] = {
10962   {   0, "nonStandard" },
10963   {   1, "videoMode" },
10964   {   2, "audioMode" },
10965   {   3, "dataMode" },
10966   { 0, NULL }
10967 };
10968
10969 static const per_choice_t T_mediaMode_choice[] = {
10970   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
10971   {   1, "videoMode"                   , ASN1_EXTENSION_ROOT    , dissect_videoMode },
10972   {   2, "audioMode"                   , ASN1_EXTENSION_ROOT    , dissect_audioMode },
10973   {   3, "dataMode"                    , ASN1_EXTENSION_ROOT    , dissect_dataMode },
10974   { 0, NULL, 0, NULL }
10975 };
10976
10977 static int
10978 dissect_h245_T_mediaMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10979   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
10980                               ett_h245_T_mediaMode, T_mediaMode_choice, "T_mediaMode",
10981                               NULL);
10982
10983   return offset;
10984 }
10985 static int dissect_mediaMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
10986   return dissect_h245_T_mediaMode(tvb, offset, pinfo, tree, hf_h245_mediaMode);
10987 }
10988
10989 static const per_sequence_t H235Mode_sequence[] = {
10990   { "encryptionAuthenticationAndIntegrity", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_encryptionAuthenticationAndIntegrity },
10991   { "mediaMode"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mediaMode },
10992   { NULL, 0, 0, NULL }
10993 };
10994
10995 static int
10996 dissect_h245_H235Mode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
10997   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
10998                                 ett_h245_H235Mode, H235Mode_sequence);
10999
11000   return offset;
11001 }
11002 static int dissect_h235Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11003   return dissect_h245_H235Mode(tvb, offset, pinfo, tree, hf_h245_h235Mode);
11004 }
11005
11006
11007 static const value_string h245_Re_type_vals[] = {
11008   {   0, "nonStandard" },
11009   {   1, "videoMode" },
11010   {   2, "audioMode" },
11011   {   3, "dataMode" },
11012   {   4, "encryptionMode" },
11013   {   5, "h235Mode" },
11014   { 0, NULL }
11015 };
11016
11017 static const per_choice_t Re_type_choice[] = {
11018   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
11019   {   1, "videoMode"                   , ASN1_EXTENSION_ROOT    , dissect_videoMode },
11020   {   2, "audioMode"                   , ASN1_EXTENSION_ROOT    , dissect_audioMode },
11021   {   3, "dataMode"                    , ASN1_EXTENSION_ROOT    , dissect_dataMode },
11022   {   4, "encryptionMode"              , ASN1_EXTENSION_ROOT    , dissect_encryptionMode },
11023   {   5, "h235Mode"                    , ASN1_EXTENSION_ROOT    , dissect_h235Mode },
11024   { 0, NULL, 0, NULL }
11025 };
11026
11027 static int
11028 dissect_h245_Re_type(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11029   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11030                               ett_h245_Re_type, Re_type_choice, "Re_type",
11031                               NULL);
11032
11033   return offset;
11034 }
11035 static int dissect_re_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11036   return dissect_h245_Re_type(tvb, offset, pinfo, tree, hf_h245_re_type);
11037 }
11038
11039 static const per_sequence_t RedundancyEncodingDTModeElement_sequence[] = {
11040   { "type"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_re_type },
11041   { NULL, 0, 0, NULL }
11042 };
11043
11044 static int
11045 dissect_h245_RedundancyEncodingDTModeElement(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11046   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11047                                 ett_h245_RedundancyEncodingDTModeElement, RedundancyEncodingDTModeElement_sequence);
11048
11049   return offset;
11050 }
11051 static int dissect_prmary_dtmode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11052   return dissect_h245_RedundancyEncodingDTModeElement(tvb, offset, pinfo, tree, hf_h245_prmary_dtmode);
11053 }
11054 static int dissect_secondary2_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11055   return dissect_h245_RedundancyEncodingDTModeElement(tvb, offset, pinfo, tree, hf_h245_secondary2_item);
11056 }
11057
11058
11059 static int
11060 dissect_h245_SEQUNCE_OF_RedundancyEncodingDTModeElement(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11061   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
11062                                    ett_h245_SEQUNCE_OF_RedundancyEncodingDTModeElement, dissect_secondary2_item);
11063
11064   return offset;
11065 }
11066 static int dissect_secondary2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11067   return dissect_h245_SEQUNCE_OF_RedundancyEncodingDTModeElement(tvb, offset, pinfo, tree, hf_h245_secondary2);
11068 }
11069
11070 static const per_sequence_t RedundancyEncodingDTMode_sequence[] = {
11071   { "redundancyEncodingMethod"    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_redundancyEncodingMethod },
11072   { "primary"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_prmary_dtmode },
11073   { "secondary2"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_secondary2 },
11074   { NULL, 0, 0, NULL }
11075 };
11076
11077 static int
11078 dissect_h245_RedundancyEncodingDTMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11079   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11080                                 ett_h245_RedundancyEncodingDTMode, RedundancyEncodingDTMode_sequence);
11081
11082   return offset;
11083 }
11084 static int dissect_redundancyEncodingDTMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11085   return dissect_h245_RedundancyEncodingDTMode(tvb, offset, pinfo, tree, hf_h245_redundancyEncodingDTMode);
11086 }
11087
11088 static const per_sequence_t MultiplePayloadStreamElementMode_sequence[] = {
11089   { "type"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_type },
11090   { NULL, 0, 0, NULL }
11091 };
11092
11093 static int
11094 dissect_h245_MultiplePayloadStreamElementMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11095   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11096                                 ett_h245_MultiplePayloadStreamElementMode, MultiplePayloadStreamElementMode_sequence);
11097
11098   return offset;
11099 }
11100 static int dissect_mpsmElements_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11101   return dissect_h245_MultiplePayloadStreamElementMode(tvb, offset, pinfo, tree, hf_h245_mpsmElements_item);
11102 }
11103
11104
11105 static int
11106 dissect_h245_SEQUNCE_OF_MultiplePayloadStreamElementMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11107   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
11108                                    ett_h245_SEQUNCE_OF_MultiplePayloadStreamElementMode, dissect_mpsmElements_item);
11109
11110   return offset;
11111 }
11112 static int dissect_mpsmElements(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11113   return dissect_h245_SEQUNCE_OF_MultiplePayloadStreamElementMode(tvb, offset, pinfo, tree, hf_h245_mpsmElements);
11114 }
11115
11116 static const per_sequence_t MultiplePayloadStreamMode_sequence[] = {
11117   { "mpsmElements"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mpsmElements },
11118   { NULL, 0, 0, NULL }
11119 };
11120
11121 static int
11122 dissect_h245_MultiplePayloadStreamMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11123   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11124                                 ett_h245_MultiplePayloadStreamMode, MultiplePayloadStreamMode_sequence);
11125
11126   return offset;
11127 }
11128 static int dissect_multiplePayloadStreamMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11129   return dissect_h245_MultiplePayloadStreamMode(tvb, offset, pinfo, tree, hf_h245_multiplePayloadStreamMode);
11130 }
11131
11132
11133 static const value_string h245_FEC_mode_vals[] = {
11134   {   0, "redundancyEncoding" },
11135   {   1, "separateStream" },
11136   { 0, NULL }
11137 };
11138
11139 static const per_choice_t FEC_mode_choice[] = {
11140   {   0, "redundancyEncoding"          , ASN1_EXTENSION_ROOT    , dissect_redundancyEncodingFlag },
11141   {   1, "separateStream"              , ASN1_EXTENSION_ROOT    , dissect_separateStream },
11142   { 0, NULL, 0, NULL }
11143 };
11144
11145 static int
11146 dissect_h245_FEC_mode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11147   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11148                               ett_h245_FEC_mode, FEC_mode_choice, "FEC_mode",
11149                               NULL);
11150
11151   return offset;
11152 }
11153 static int dissect_fec_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11154   return dissect_h245_FEC_mode(tvb, offset, pinfo, tree, hf_h245_fec_mode);
11155 }
11156
11157 static const per_sequence_t T_rfc2733Mode_sequence[] = {
11158   { "mode"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_fec_mode },
11159   { NULL, 0, 0, NULL }
11160 };
11161
11162 static int
11163 dissect_h245_T_rfc2733Mode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11164   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11165                                 ett_h245_T_rfc2733Mode, T_rfc2733Mode_sequence);
11166
11167   return offset;
11168 }
11169 static int dissect_rfc2733Mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11170   return dissect_h245_T_rfc2733Mode(tvb, offset, pinfo, tree, hf_h245_rfc2733Mode);
11171 }
11172
11173
11174 static const value_string h245_FECMode_vals[] = {
11175   {   0, "rfc2733Mode" },
11176   { 0, NULL }
11177 };
11178
11179 static const per_choice_t FECMode_choice[] = {
11180   {   0, "rfc2733Mode"                 , ASN1_EXTENSION_ROOT    , dissect_rfc2733Mode },
11181   { 0, NULL, 0, NULL }
11182 };
11183
11184 static int
11185 dissect_h245_FECMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11186   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11187                               ett_h245_FECMode, FECMode_choice, "FECMode",
11188                               NULL);
11189
11190   return offset;
11191 }
11192 static int dissect_fecMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11193   return dissect_h245_FECMode(tvb, offset, pinfo, tree, hf_h245_fecMode);
11194 }
11195
11196
11197 static const value_string h245_ModeElementType_vals[] = {
11198   {   0, "nonStandard" },
11199   {   1, "videoMode" },
11200   {   2, "audioMode" },
11201   {   3, "dataMode" },
11202   {   4, "encryptionMode" },
11203   {   5, "h235Mode" },
11204   {   6, "multiplexedStreamMode" },
11205   {   7, "redundancyEncodingDTMode" },
11206   {   8, "multiplePayloadStreamMode" },
11207   {   9, "fecMode" },
11208   { 0, NULL }
11209 };
11210
11211 static const per_choice_t ModeElementType_choice[] = {
11212   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
11213   {   1, "videoMode"                   , ASN1_EXTENSION_ROOT    , dissect_videoMode },
11214   {   2, "audioMode"                   , ASN1_EXTENSION_ROOT    , dissect_audioMode },
11215   {   3, "dataMode"                    , ASN1_EXTENSION_ROOT    , dissect_dataMode },
11216   {   4, "encryptionMode"              , ASN1_EXTENSION_ROOT    , dissect_encryptionMode },
11217   {   5, "h235Mode"                    , ASN1_NOT_EXTENSION_ROOT, dissect_h235Mode },
11218   {   6, "multiplexedStreamMode"       , ASN1_NOT_EXTENSION_ROOT, dissect_multiplexedStreamMode },
11219   {   7, "redundancyEncodingDTMode"    , ASN1_NOT_EXTENSION_ROOT, dissect_redundancyEncodingDTMode },
11220   {   8, "multiplePayloadStreamMode"   , ASN1_NOT_EXTENSION_ROOT, dissect_multiplePayloadStreamMode },
11221   {   9, "fecMode"                     , ASN1_NOT_EXTENSION_ROOT, dissect_fecMode },
11222   { 0, NULL, 0, NULL }
11223 };
11224
11225 static int
11226 dissect_h245_ModeElementType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11227   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11228                               ett_h245_ModeElementType, ModeElementType_choice, "ModeElementType",
11229                               NULL);
11230
11231   return offset;
11232 }
11233
11234
11235 static const value_string h245_AdaptationLayerType_vals[] = {
11236   {   0, "nonStandard" },
11237   {   1, "al1Framed" },
11238   {   2, "al1NotFramed" },
11239   {   3, "al2WithoutSequenceNumbers" },
11240   {   4, "al2WithSequenceNumbers" },
11241   {   5, "al3" },
11242   {   6, "al1M" },
11243   {   7, "al2M" },
11244   {   8, "al3M" },
11245   { 0, NULL }
11246 };
11247
11248 static const per_choice_t AdaptationLayerType_choice[] = {
11249   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
11250   {   1, "al1Framed"                   , ASN1_EXTENSION_ROOT    , dissect_al1Framed },
11251   {   2, "al1NotFramed"                , ASN1_EXTENSION_ROOT    , dissect_al1NotFramed },
11252   {   3, "al2WithoutSequenceNumbers"   , ASN1_EXTENSION_ROOT    , dissect_al2WithoutSequenceNumbers },
11253   {   4, "al2WithSequenceNumbers"      , ASN1_EXTENSION_ROOT    , dissect_al2WithSequenceNumbers },
11254   {   5, "al3"                         , ASN1_EXTENSION_ROOT    , dissect_al3 },
11255   {   6, "al1M"                        , ASN1_NOT_EXTENSION_ROOT, dissect_al1M },
11256   {   7, "al2M"                        , ASN1_NOT_EXTENSION_ROOT, dissect_al2M },
11257   {   8, "al3M"                        , ASN1_NOT_EXTENSION_ROOT, dissect_al3M },
11258   { 0, NULL, 0, NULL }
11259 };
11260
11261 static int
11262 dissect_h245_AdaptationLayerType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11263   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11264                               ett_h245_AdaptationLayerType, AdaptationLayerType_choice, "AdaptationLayerType",
11265                               NULL);
11266
11267   return offset;
11268 }
11269 static int dissect_adaptationLayer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11270   return dissect_h245_AdaptationLayerType(tvb, offset, pinfo, tree, hf_h245_adaptationLayer);
11271 }
11272
11273 static const per_sequence_t H223ModeParameters_sequence[] = {
11274   { "adaptationLayerType"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_adaptationLayer },
11275   { "segmentableFlag"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_segmentableFlag },
11276   { NULL, 0, 0, NULL }
11277 };
11278
11279 static int
11280 dissect_h245_H223ModeParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11281   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11282                                 ett_h245_H223ModeParameters, H223ModeParameters_sequence);
11283
11284   return offset;
11285 }
11286 static int dissect_h223ModeParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11287   return dissect_h245_H223ModeParameters(tvb, offset, pinfo, tree, hf_h245_h223ModeParameters);
11288 }
11289
11290
11291 static const value_string h245_V76ModeParameters_vals[] = {
11292   {   0, "suspendResumewAddress" },
11293   {   1, "suspendResumewoAddress" },
11294   { 0, NULL }
11295 };
11296
11297 static const per_choice_t V76ModeParameters_choice[] = {
11298   {   0, "suspendResumewAddress"       , ASN1_EXTENSION_ROOT    , dissect_suspendResumewAddress },
11299   {   1, "suspendResumewoAddress"      , ASN1_EXTENSION_ROOT    , dissect_suspendResumewoAddress },
11300   { 0, NULL, 0, NULL }
11301 };
11302
11303 static int
11304 dissect_h245_V76ModeParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11305   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11306                               ett_h245_V76ModeParameters, V76ModeParameters_choice, "V76ModeParameters",
11307                               NULL);
11308
11309   return offset;
11310 }
11311 static int dissect_v76ModeParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11312   return dissect_h245_V76ModeParameters(tvb, offset, pinfo, tree, hf_h245_v76ModeParameters);
11313 }
11314
11315
11316 static const value_string h245_T_secondaryEncoding_vals[] = {
11317   {   0, "nonStandard" },
11318   {   1, "audioData" },
11319   { 0, NULL }
11320 };
11321
11322 static const per_choice_t T_secondaryEncoding_choice[] = {
11323   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
11324   {   1, "audioData"                   , ASN1_EXTENSION_ROOT    , dissect_audioMode },
11325   { 0, NULL, 0, NULL }
11326 };
11327
11328 static int
11329 dissect_h245_T_secondaryEncoding(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11330   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11331                               ett_h245_T_secondaryEncoding, T_secondaryEncoding_choice, "T_secondaryEncoding",
11332                               NULL);
11333
11334   return offset;
11335 }
11336 static int dissect_secondaryEncoding(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11337   return dissect_h245_T_secondaryEncoding(tvb, offset, pinfo, tree, hf_h245_secondaryEncoding);
11338 }
11339
11340 static const per_sequence_t RedundancyEncodingMode_sequence[] = {
11341   { "redundancyEncodingMethod"    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_redundancyEncodingMethod },
11342   { "secondaryEncoding"           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_secondaryEncoding },
11343   { NULL, 0, 0, NULL }
11344 };
11345
11346 static int
11347 dissect_h245_RedundancyEncodingMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11348   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11349                                 ett_h245_RedundancyEncodingMode, RedundancyEncodingMode_sequence);
11350
11351   return offset;
11352 }
11353 static int dissect_redundancyEncodingMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11354   return dissect_h245_RedundancyEncodingMode(tvb, offset, pinfo, tree, hf_h245_redundancyEncodingMode);
11355 }
11356
11357 static const per_sequence_t H2250ModeParameters_sequence[] = {
11358   { "redundancyEncodingMode"      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_redundancyEncodingMode },
11359   { NULL, 0, 0, NULL }
11360 };
11361
11362 static int
11363 dissect_h245_H2250ModeParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11364   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11365                                 ett_h245_H2250ModeParameters, H2250ModeParameters_sequence);
11366
11367   return offset;
11368 }
11369 static int dissect_h2250ModeParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11370   return dissect_h245_H2250ModeParameters(tvb, offset, pinfo, tree, hf_h245_h2250ModeParameters);
11371 }
11372
11373 static const per_sequence_t MultiplexedStreamModeParameters_sequence[] = {
11374   { "logicalChannelNumber"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_logicalChannelNumber },
11375   { NULL, 0, 0, NULL }
11376 };
11377
11378 static int
11379 dissect_h245_MultiplexedStreamModeParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11380   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11381                                 ett_h245_MultiplexedStreamModeParameters, MultiplexedStreamModeParameters_sequence);
11382
11383   return offset;
11384 }
11385 static int dissect_multiplexedStreamModeParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11386   return dissect_h245_MultiplexedStreamModeParameters(tvb, offset, pinfo, tree, hf_h245_multiplexedStreamModeParameters);
11387 }
11388
11389 static const per_sequence_t ModeElement_sequence[] = {
11390   { "type"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_type },
11391   { "h223ModeParameters"          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h223ModeParameters },
11392   { "v76ModeParameters"           , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_v76ModeParameters },
11393   { "h2250ModeParameters"         , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h2250ModeParameters },
11394   { "genericModeParameters"       , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_genericModeParameters },
11395   { "multiplexedStreamModeParameters", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_multiplexedStreamModeParameters },
11396   { "logicalChannelNumber"        , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_logicalChannelNumber },
11397   { NULL, 0, 0, NULL }
11398 };
11399
11400 static int
11401 dissect_h245_ModeElement(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11402   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11403                                 ett_h245_ModeElement, ModeElement_sequence);
11404
11405   return offset;
11406 }
11407 static int dissect_ModeDescription_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11408   return dissect_h245_ModeElement(tvb, offset, pinfo, tree, hf_h245_ModeDescription_item);
11409 }
11410
11411
11412 static int
11413 dissect_h245_ModeDescription(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11414   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
11415                                           ett_h245_ModeDescription, dissect_ModeDescription_item,
11416                                           1, 256);
11417
11418   return offset;
11419 }
11420 static int dissect_requestedModes_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11421   return dissect_h245_ModeDescription(tvb, offset, pinfo, tree, hf_h245_requestedModes_item);
11422 }
11423
11424
11425 static int
11426 dissect_h245_SEQUNCE_SIZE_1_256_OF_ModeDescription(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11427   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
11428                                                ett_h245_SEQUNCE_SIZE_1_256_OF_ModeDescription, dissect_requestedModes_item,
11429                                                1, 256);
11430
11431   return offset;
11432 }
11433 static int dissect_requestedModes(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11434   return dissect_h245_SEQUNCE_SIZE_1_256_OF_ModeDescription(tvb, offset, pinfo, tree, hf_h245_requestedModes);
11435 }
11436
11437 static const per_sequence_t RequestMode_sequence[] = {
11438   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
11439   { "requestedModes"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_requestedModes },
11440   { NULL, 0, 0, NULL }
11441 };
11442
11443 static int
11444 dissect_h245_RequestMode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11445   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11446                                 ett_h245_RequestMode, RequestMode_sequence);
11447
11448   return offset;
11449 }
11450 static int dissect_requestMode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11451   return dissect_h245_RequestMode(tvb, offset, pinfo, tree, hf_h245_requestMode);
11452 }
11453
11454 static const per_sequence_t RoundTripDelayRequest_sequence[] = {
11455   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
11456   { NULL, 0, 0, NULL }
11457 };
11458
11459 static int
11460 dissect_h245_RoundTripDelayRequest(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11461   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11462                                 ett_h245_RoundTripDelayRequest, RoundTripDelayRequest_sequence);
11463
11464   return offset;
11465 }
11466 static int dissect_roundTripDelayRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11467   return dissect_h245_RoundTripDelayRequest(tvb, offset, pinfo, tree, hf_h245_roundTripDelayRequest);
11468 }
11469
11470
11471 static const value_string h245_Mlr_type_vals[] = {
11472   {   0, "systemLoop" },
11473   {   1, "mediaLoop" },
11474   {   2, "logicalChannelLoop" },
11475   { 0, NULL }
11476 };
11477
11478 static const per_choice_t Mlr_type_choice[] = {
11479   {   0, "systemLoop"                  , ASN1_EXTENSION_ROOT    , dissect_systemLoop },
11480   {   1, "mediaLoop"                   , ASN1_EXTENSION_ROOT    , dissect_mediaLoop },
11481   {   2, "logicalChannelLoop"          , ASN1_EXTENSION_ROOT    , dissect_logicalChannelLoop },
11482   { 0, NULL, 0, NULL }
11483 };
11484
11485 static int
11486 dissect_h245_Mlr_type(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11487   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11488                               ett_h245_Mlr_type, Mlr_type_choice, "Mlr_type",
11489                               NULL);
11490
11491   return offset;
11492 }
11493 static int dissect_mlr_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11494   return dissect_h245_Mlr_type(tvb, offset, pinfo, tree, hf_h245_mlr_type);
11495 }
11496
11497 static const per_sequence_t MaintenanceLoopRequest_sequence[] = {
11498   { "type"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mlr_type },
11499   { NULL, 0, 0, NULL }
11500 };
11501
11502 static int
11503 dissect_h245_MaintenanceLoopRequest(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11504   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11505                                 ett_h245_MaintenanceLoopRequest, MaintenanceLoopRequest_sequence);
11506
11507   return offset;
11508 }
11509 static int dissect_maintenanceLoopRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11510   return dissect_h245_MaintenanceLoopRequest(tvb, offset, pinfo, tree, hf_h245_maintenanceLoopRequest);
11511 }
11512
11513 static const per_sequence_t CommunicationModeRequest_sequence[] = {
11514   { NULL, 0, 0, NULL }
11515 };
11516
11517 static int
11518 dissect_h245_CommunicationModeRequest(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11519   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11520                                 ett_h245_CommunicationModeRequest, CommunicationModeRequest_sequence);
11521
11522   return offset;
11523 }
11524 static int dissect_communicationModeRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11525   return dissect_h245_CommunicationModeRequest(tvb, offset, pinfo, tree, hf_h245_communicationModeRequest);
11526 }
11527
11528 static const per_sequence_t Criteria_sequence[] = {
11529   { "field"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_field },
11530   { "value"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_value },
11531   { NULL, 0, 0, NULL }
11532 };
11533
11534 static int
11535 dissect_h245_Criteria(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11536   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11537                                 ett_h245_Criteria, Criteria_sequence);
11538
11539   return offset;
11540 }
11541 static int dissect_CertSelectionCriteria_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11542   return dissect_h245_Criteria(tvb, offset, pinfo, tree, hf_h245_CertSelectionCriteria_item);
11543 }
11544
11545
11546 static int
11547 dissect_h245_CertSelectionCriteria(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11548   offset = dissect_per_constrained_sequence_of(tvb, offset, pinfo, tree, hf_index,
11549                                                ett_h245_CertSelectionCriteria, dissect_CertSelectionCriteria_item,
11550                                                1, 16);
11551
11552   return offset;
11553 }
11554 static int dissect_certSelectionCriteria(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11555   return dissect_h245_CertSelectionCriteria(tvb, offset, pinfo, tree, hf_h245_certSelectionCriteria);
11556 }
11557
11558 static const per_sequence_t T_requestTerminalCertificate_sequence[] = {
11559   { "terminalLabel"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_terminalLabel },
11560   { "certSelectionCriteria"       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_certSelectionCriteria },
11561   { "sRandom"                     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_sRandom },
11562   { NULL, 0, 0, NULL }
11563 };
11564
11565 static int
11566 dissect_h245_T_requestTerminalCertificate(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11567   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11568                                 ett_h245_T_requestTerminalCertificate, T_requestTerminalCertificate_sequence);
11569
11570   return offset;
11571 }
11572 static int dissect_requestTerminalCertificate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11573   return dissect_h245_T_requestTerminalCertificate(tvb, offset, pinfo, tree, hf_h245_requestTerminalCertificate);
11574 }
11575
11576
11577 static const value_string h245_RemoteMCRequest_vals[] = {
11578   {   0, "masterActivate" },
11579   {   1, "slaveActivate" },
11580   {   2, "deActivate" },
11581   { 0, NULL }
11582 };
11583
11584 static const per_choice_t RemoteMCRequest_choice[] = {
11585   {   0, "masterActivate"              , ASN1_EXTENSION_ROOT    , dissect_masterActivate },
11586   {   1, "slaveActivate"               , ASN1_EXTENSION_ROOT    , dissect_slaveActivate },
11587   {   2, "deActivate"                  , ASN1_EXTENSION_ROOT    , dissect_deActivate },
11588   { 0, NULL, 0, NULL }
11589 };
11590
11591 static int
11592 dissect_h245_RemoteMCRequest(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11593   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11594                               ett_h245_RemoteMCRequest, RemoteMCRequest_choice, "RemoteMCRequest",
11595                               NULL);
11596
11597   return offset;
11598 }
11599 static int dissect_remoteMCRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11600   return dissect_h245_RemoteMCRequest(tvb, offset, pinfo, tree, hf_h245_remoteMCRequest);
11601 }
11602
11603
11604 static const value_string h245_ConferenceRequest_vals[] = {
11605   {   0, "terminalListRequest" },
11606   {   1, "makeMeChair" },
11607   {   2, "cancelMakeMeChair" },
11608   {   3, "dropTerminal" },
11609   {   4, "requestTerminalID" },
11610   {   5, "enterH243Password" },
11611   {   6, "enterH243TerminalID" },
11612   {   7, "enterH243ConferenceID" },
11613   {   8, "enterExtensionAddress" },
11614   {   9, "requestChairTokenOwner" },
11615   {  10, "requestTerminalCertificate" },
11616   {  11, "broadcastMyLogicalChannel" },
11617   {  12, "makeTerminalBroadcaster" },
11618   {  13, "sendThisSource" },
11619   {  14, "requestAllTerminalIDs" },
11620   {  15, "remoteMCRequest" },
11621   { 0, NULL }
11622 };
11623
11624 static const per_choice_t ConferenceRequest_choice[] = {
11625   {   0, "terminalListRequest"         , ASN1_EXTENSION_ROOT    , dissect_terminalListRequest },
11626   {   1, "makeMeChair"                 , ASN1_EXTENSION_ROOT    , dissect_makeMeChair },
11627   {   2, "cancelMakeMeChair"           , ASN1_EXTENSION_ROOT    , dissect_cancelMakeMeChair },
11628   {   3, "dropTerminal"                , ASN1_EXTENSION_ROOT    , dissect_dropTerminal },
11629   {   4, "requestTerminalID"           , ASN1_EXTENSION_ROOT    , dissect_requestTerminalID },
11630   {   5, "enterH243Password"           , ASN1_EXTENSION_ROOT    , dissect_enterH243Password },
11631   {   6, "enterH243TerminalID"         , ASN1_EXTENSION_ROOT    , dissect_enterH243TerminalID },
11632   {   7, "enterH243ConferenceID"       , ASN1_EXTENSION_ROOT    , dissect_enterH243ConferenceID },
11633   {   8, "enterExtensionAddress"       , ASN1_NOT_EXTENSION_ROOT, dissect_enterExtensionAddress },
11634   {   9, "requestChairTokenOwner"      , ASN1_NOT_EXTENSION_ROOT, dissect_requestChairTokenOwner },
11635   {  10, "requestTerminalCertificate"  , ASN1_NOT_EXTENSION_ROOT, dissect_requestTerminalCertificate },
11636   {  11, "broadcastMyLogicalChannel"   , ASN1_NOT_EXTENSION_ROOT, dissect_broadcastMyLogicalChannel },
11637   {  12, "makeTerminalBroadcaster"     , ASN1_NOT_EXTENSION_ROOT, dissect_makeTerminalBroadcaster },
11638   {  13, "sendThisSource"              , ASN1_NOT_EXTENSION_ROOT, dissect_sendThisSource },
11639   {  14, "requestAllTerminalIDs"       , ASN1_NOT_EXTENSION_ROOT, dissect_requestAllTerminalIDs },
11640   {  15, "remoteMCRequest"             , ASN1_NOT_EXTENSION_ROOT, dissect_remoteMCRequest },
11641   { 0, NULL, 0, NULL }
11642 };
11643
11644 static int
11645 dissect_h245_ConferenceRequest(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11646   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11647                               ett_h245_ConferenceRequest, ConferenceRequest_choice, "ConferenceRequest",
11648                               NULL);
11649
11650   return offset;
11651 }
11652 static int dissect_conferenceRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11653   return dissect_h245_ConferenceRequest(tvb, offset, pinfo, tree, hf_h245_conferenceRequest);
11654 }
11655
11656 static const per_sequence_t CallInformationReq_sequence[] = {
11657   { "maxNumberOfAdditionalConnections", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maxNumberOfAdditionalConnections },
11658   { NULL, 0, 0, NULL }
11659 };
11660
11661 static int
11662 dissect_h245_CallInformationReq(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11663   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11664                                 ett_h245_CallInformationReq, CallInformationReq_sequence);
11665
11666   return offset;
11667 }
11668 static int dissect_callInformationReq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11669   return dissect_h245_CallInformationReq(tvb, offset, pinfo, tree, hf_h245_callInformationReq);
11670 }
11671
11672
11673 static int
11674 dissect_h245_NumericString_SIZE_0_40(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11675   offset = dissect_per_NumericString(tvb, offset, pinfo, tree, hf_index,
11676                                      0, 40);
11677
11678   return offset;
11679 }
11680 static int dissect_networkAddressNum(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11681   return dissect_h245_NumericString_SIZE_0_40(tvb, offset, pinfo, tree, hf_h245_networkAddressNum);
11682 }
11683
11684
11685 static int
11686 dissect_h245_IA5String_SIZE_1_40(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11687   offset = dissect_per_IA5String(tvb, offset, pinfo, tree, hf_index,
11688                                  1, 40);
11689
11690   return offset;
11691 }
11692 static int dissect_subAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11693   return dissect_h245_IA5String_SIZE_1_40(tvb, offset, pinfo, tree, hf_h245_subAddress);
11694 }
11695
11696
11697 static const value_string h245_DialingInformationNetworkType_vals[] = {
11698   {   0, "nonStandard" },
11699   {   1, "n-isdn" },
11700   {   2, "gstn" },
11701   {   3, "mobile" },
11702   { 0, NULL }
11703 };
11704
11705 static const per_choice_t DialingInformationNetworkType_choice[] = {
11706   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandardMsg },
11707   {   1, "n-isdn"                      , ASN1_EXTENSION_ROOT    , dissect_n_isdn },
11708   {   2, "gstn"                        , ASN1_EXTENSION_ROOT    , dissect_gstn },
11709   {   3, "mobile"                      , ASN1_NOT_EXTENSION_ROOT, dissect_mobile },
11710   { 0, NULL, 0, NULL }
11711 };
11712
11713 static int
11714 dissect_h245_DialingInformationNetworkType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11715   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11716                               ett_h245_DialingInformationNetworkType, DialingInformationNetworkType_choice, "DialingInformationNetworkType",
11717                               NULL);
11718
11719   return offset;
11720 }
11721 static int dissect_networkType_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11722   return dissect_h245_DialingInformationNetworkType(tvb, offset, pinfo, tree, hf_h245_networkType_item);
11723 }
11724
11725
11726 static int
11727 dissect_h245_SET_SIZE_1_255_OF_DialingInformationNetworkType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11728   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
11729                                           ett_h245_SET_SIZE_1_255_OF_DialingInformationNetworkType, dissect_networkType_item,
11730                                           1, 255);
11731
11732   return offset;
11733 }
11734 static int dissect_networkType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11735   return dissect_h245_SET_SIZE_1_255_OF_DialingInformationNetworkType(tvb, offset, pinfo, tree, hf_h245_networkType);
11736 }
11737
11738 static const per_sequence_t DialingInformationNumber_sequence[] = {
11739   { "networkAddress"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_networkAddressNum },
11740   { "subAddress"                  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_subAddress },
11741   { "networkType"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_networkType },
11742   { NULL, 0, 0, NULL }
11743 };
11744
11745 static int
11746 dissect_h245_DialingInformationNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11747   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11748                                 ett_h245_DialingInformationNumber, DialingInformationNumber_sequence);
11749
11750   return offset;
11751 }
11752 static int dissect_differential_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11753   return dissect_h245_DialingInformationNumber(tvb, offset, pinfo, tree, hf_h245_differential_item);
11754 }
11755
11756
11757 static int
11758 dissect_h245_SET_SIZE_1_65535_OF_DialingInformationNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11759   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
11760                                           ett_h245_SET_SIZE_1_65535_OF_DialingInformationNumber, dissect_differential_item,
11761                                           1, 65535);
11762
11763   return offset;
11764 }
11765 static int dissect_differential(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11766   return dissect_h245_SET_SIZE_1_65535_OF_DialingInformationNumber(tvb, offset, pinfo, tree, hf_h245_differential);
11767 }
11768
11769
11770 static const value_string h245_DialingInformation_vals[] = {
11771   {   0, "nonStandard" },
11772   {   1, "differential" },
11773   {   2, "infoNotAvailable" },
11774   { 0, NULL }
11775 };
11776
11777 static const per_choice_t DialingInformation_choice[] = {
11778   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandardMsg },
11779   {   1, "differential"                , ASN1_EXTENSION_ROOT    , dissect_differential },
11780   {   2, "infoNotAvailable"            , ASN1_EXTENSION_ROOT    , dissect_infoNotAvailable },
11781   { 0, NULL, 0, NULL }
11782 };
11783
11784 static int
11785 dissect_h245_DialingInformation(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11786   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11787                               ett_h245_DialingInformation, DialingInformation_choice, "DialingInformation",
11788                               NULL);
11789
11790   return offset;
11791 }
11792 static int dissect_dialingInformation(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11793   return dissect_h245_DialingInformation(tvb, offset, pinfo, tree, hf_h245_dialingInformation);
11794 }
11795
11796 static const per_sequence_t AddConnectionReq_sequence[] = {
11797   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
11798   { "dialingInformation"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dialingInformation },
11799   { NULL, 0, 0, NULL }
11800 };
11801
11802 static int
11803 dissect_h245_AddConnectionReq(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11804   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11805                                 ett_h245_AddConnectionReq, AddConnectionReq_sequence);
11806
11807   return offset;
11808 }
11809 static int dissect_addConnectionReq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11810   return dissect_h245_AddConnectionReq(tvb, offset, pinfo, tree, hf_h245_addConnectionReq);
11811 }
11812
11813 static const per_sequence_t ConnectionIdentifier_sequence[] = {
11814   { "channelTag"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_channelTag },
11815   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNum },
11816   { NULL, 0, 0, NULL }
11817 };
11818
11819 static int
11820 dissect_h245_ConnectionIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11821   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11822                                 ett_h245_ConnectionIdentifier, ConnectionIdentifier_sequence);
11823
11824   return offset;
11825 }
11826 static int dissect_connectionIdentifier(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11827   return dissect_h245_ConnectionIdentifier(tvb, offset, pinfo, tree, hf_h245_connectionIdentifier);
11828 }
11829
11830 static const per_sequence_t RemoveConnection_sequence[] = {
11831   { "connectionIdentifier"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_connectionIdentifier },
11832   { NULL, 0, 0, NULL }
11833 };
11834
11835 static int
11836 dissect_h245_RemoveConnection(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11837   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11838                                 ett_h245_RemoveConnection, RemoveConnection_sequence);
11839
11840   return offset;
11841 }
11842
11843
11844 static int
11845 dissect_h245_RemoveConnectionReq(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11846   offset = dissect_h245_RemoveConnection(tvb, offset, pinfo, tree, hf_index);
11847
11848   return offset;
11849 }
11850 static int dissect_removeConnectionReq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11851   return dissect_h245_RemoveConnectionReq(tvb, offset, pinfo, tree, hf_h245_removeConnectionReq);
11852 }
11853
11854
11855 static const value_string h245_T_requestType_vals[] = {
11856   {   0, "currentIntervalInformation" },
11857   {   1, "requestedInterval" },
11858   { 0, NULL }
11859 };
11860
11861 static const per_choice_t T_requestType_choice[] = {
11862   {   0, "currentIntervalInformation"  , ASN1_EXTENSION_ROOT    , dissect_currentIntervalInformation },
11863   {   1, "requestedInterval"           , ASN1_EXTENSION_ROOT    , dissect_requestedInterval },
11864   { 0, NULL, 0, NULL }
11865 };
11866
11867 static int
11868 dissect_h245_T_requestType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11869   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11870                               ett_h245_T_requestType, T_requestType_choice, "T_requestType",
11871                               NULL);
11872
11873   return offset;
11874 }
11875 static int dissect_requestType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11876   return dissect_h245_T_requestType(tvb, offset, pinfo, tree, hf_h245_requestType);
11877 }
11878
11879 static const per_sequence_t MaximumHeaderIntervalReq_sequence[] = {
11880   { "requestType"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_requestType },
11881   { NULL, 0, 0, NULL }
11882 };
11883
11884 static int
11885 dissect_h245_MaximumHeaderIntervalReq(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11886   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11887                                 ett_h245_MaximumHeaderIntervalReq, MaximumHeaderIntervalReq_sequence);
11888
11889   return offset;
11890 }
11891 static int dissect_maximumHeaderIntervalReq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11892   return dissect_h245_MaximumHeaderIntervalReq(tvb, offset, pinfo, tree, hf_h245_maximumHeaderIntervalReq);
11893 }
11894
11895
11896 static const value_string h245_MultilinkRequest_vals[] = {
11897   {   0, "nonStandard" },
11898   {   1, "callInformation" },
11899   {   2, "addConnection" },
11900   {   3, "removeConnection" },
11901   {   4, "maximumHeaderInterval" },
11902   { 0, NULL }
11903 };
11904
11905 static const per_choice_t MultilinkRequest_choice[] = {
11906   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandardMsg },
11907   {   1, "callInformation"             , ASN1_EXTENSION_ROOT    , dissect_callInformationReq },
11908   {   2, "addConnection"               , ASN1_EXTENSION_ROOT    , dissect_addConnectionReq },
11909   {   3, "removeConnection"            , ASN1_EXTENSION_ROOT    , dissect_removeConnectionReq },
11910   {   4, "maximumHeaderInterval"       , ASN1_EXTENSION_ROOT    , dissect_maximumHeaderIntervalReq },
11911   { 0, NULL, 0, NULL }
11912 };
11913
11914 static int
11915 dissect_h245_MultilinkRequest(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11916   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
11917                               ett_h245_MultilinkRequest, MultilinkRequest_choice, "MultilinkRequest",
11918                               NULL);
11919
11920   return offset;
11921 }
11922 static int dissect_multilinkRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11923   return dissect_h245_MultilinkRequest(tvb, offset, pinfo, tree, hf_h245_multilinkRequest);
11924 }
11925
11926
11927
11928 static int
11929 dissect_h245_MaximumBitRate(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11930   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
11931                                            0U, 4294967295U, NULL, NULL, FALSE);
11932
11933   return offset;
11934 }
11935 static int dissect_maximumBitRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11936   return dissect_h245_MaximumBitRate(tvb, offset, pinfo, tree, hf_h245_maximumBitRate);
11937 }
11938 static int dissect_currentMaximumBitRate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11939   return dissect_h245_MaximumBitRate(tvb, offset, pinfo, tree, hf_h245_currentMaximumBitRate);
11940 }
11941
11942 static const per_sequence_t LogicalChannelRateRequest_sequence[] = {
11943   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
11944   { "logicalChannelNumber"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_logicalChannelNumber },
11945   { "maximumBitRate"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumBitRate },
11946   { NULL, 0, 0, NULL }
11947 };
11948
11949 static int
11950 dissect_h245_LogicalChannelRateRequest(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11951   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11952                                 ett_h245_LogicalChannelRateRequest, LogicalChannelRateRequest_sequence);
11953
11954   return offset;
11955 }
11956 static int dissect_logicalChannelRateRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11957   return dissect_h245_LogicalChannelRateRequest(tvb, offset, pinfo, tree, hf_h245_logicalChannelRateRequest);
11958 }
11959
11960
11961
11962 static int
11963 dissect_h245_T_subMessageIdentifer(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11964
11965 guint32 subMessageIdentifer;
11966
11967   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
11968                                            0U, 127U, &subMessageIdentifer, NULL, FALSE);
11969
11970
11971   return offset;
11972 }
11973 static int dissect_subMessageIdentifer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11974   return dissect_h245_T_subMessageIdentifer(tvb, offset, pinfo, tree, hf_h245_subMessageIdentifer);
11975 }
11976
11977 static const per_sequence_t GenericMessage_sequence[] = {
11978   { "messageIdentifier"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_messageIdentifier },
11979   { "subMessageIdentifer"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_subMessageIdentifer },
11980   { "messageContent"              , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_messageContent },
11981   { NULL, 0, 0, NULL }
11982 };
11983
11984 static int
11985 dissect_h245_GenericMessage(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
11986   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
11987                                 ett_h245_GenericMessage, GenericMessage_sequence);
11988
11989   return offset;
11990 }
11991 static int dissect_genericRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11992   return dissect_h245_GenericMessage(tvb, offset, pinfo, tree, hf_h245_genericRequest);
11993 }
11994 static int dissect_genericResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11995   return dissect_h245_GenericMessage(tvb, offset, pinfo, tree, hf_h245_genericResponse);
11996 }
11997 static int dissect_genericCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
11998   return dissect_h245_GenericMessage(tvb, offset, pinfo, tree, hf_h245_genericCommand);
11999 }
12000 static int dissect_genericIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12001   return dissect_h245_GenericMessage(tvb, offset, pinfo, tree, hf_h245_genericIndication);
12002 }
12003
12004
12005 static const value_string h245_RequestMessage_vals[] = {
12006   {   0, "nonStandard" },
12007   {   1, "masterSlaveDetermination" },
12008   {   2, "terminalCapabilitySet" },
12009   {   3, "openLogicalChannel" },
12010   {   4, "closeLogicalChannel" },
12011   {   5, "requestChannelClose" },
12012   {   6, "multiplexEntrySend" },
12013   {   7, "requestMultiplexEntry" },
12014   {   8, "requestMode" },
12015   {   9, "roundTripDelayRequest" },
12016   {  10, "maintenanceLoopRequest" },
12017   {  11, "communicationModeRequest" },
12018   {  12, "conferenceRequest" },
12019   {  13, "multilinkRequest" },
12020   {  14, "logicalChannelRateRequest" },
12021   {  15, "genericRequest" },
12022   { 0, NULL }
12023 };
12024
12025 static const per_choice_t RequestMessage_choice[] = {
12026   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandardMsg },
12027   {   1, "masterSlaveDetermination"    , ASN1_EXTENSION_ROOT    , dissect_masterSlaveDetermination },
12028   {   2, "terminalCapabilitySet"       , ASN1_EXTENSION_ROOT    , dissect_terminalCapabilitySet },
12029   {   3, "openLogicalChannel"          , ASN1_EXTENSION_ROOT    , dissect_openLogicalChannel },
12030   {   4, "closeLogicalChannel"         , ASN1_EXTENSION_ROOT    , dissect_closeLogicalChannel },
12031   {   5, "requestChannelClose"         , ASN1_EXTENSION_ROOT    , dissect_requestChannelClose },
12032   {   6, "multiplexEntrySend"          , ASN1_EXTENSION_ROOT    , dissect_multiplexEntrySend },
12033   {   7, "requestMultiplexEntry"       , ASN1_EXTENSION_ROOT    , dissect_requestMultiplexEntry },
12034   {   8, "requestMode"                 , ASN1_EXTENSION_ROOT    , dissect_requestMode },
12035   {   9, "roundTripDelayRequest"       , ASN1_EXTENSION_ROOT    , dissect_roundTripDelayRequest },
12036   {  10, "maintenanceLoopRequest"      , ASN1_EXTENSION_ROOT    , dissect_maintenanceLoopRequest },
12037   {  11, "communicationModeRequest"    , ASN1_NOT_EXTENSION_ROOT, dissect_communicationModeRequest },
12038   {  12, "conferenceRequest"           , ASN1_NOT_EXTENSION_ROOT, dissect_conferenceRequest },
12039   {  13, "multilinkRequest"            , ASN1_NOT_EXTENSION_ROOT, dissect_multilinkRequest },
12040   {  14, "logicalChannelRateRequest"   , ASN1_NOT_EXTENSION_ROOT, dissect_logicalChannelRateRequest },
12041   {  15, "genericRequest"              , ASN1_NOT_EXTENSION_ROOT, dissect_genericRequest },
12042   { 0, NULL, 0, NULL }
12043 };
12044
12045 static int
12046 dissect_h245_RequestMessage(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12047   guint32 value;
12048   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12049                               ett_h245_RequestMessage, RequestMessage_choice, "RequestMessage",
12050                               &value);
12051
12052         if (check_col(pinfo->cinfo, COL_INFO)){
12053                 if ( h245_shorttypes == TRUE )
12054                 {
12055                         col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
12056                                 val_to_str(value, h245_RequestMessage_short_vals, "<unknown>"));
12057                 }
12058                 else
12059                 {
12060                         col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
12061                                 val_to_str(value, h245_RequestMessage_vals, "<unknown>"));
12062                 }
12063         }
12064
12065         if (( check_col(pinfo->cinfo, COL_INFO)) && ( codec_type != NULL ) && ( value == 3) ){
12066                 col_append_fstr(pinfo->cinfo, COL_INFO, "(%s) ", codec_type );
12067         }
12068
12069         col_set_fence(pinfo->cinfo,COL_INFO);
12070
12071   return offset;
12072 }
12073 static int dissect_request(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12074   return dissect_h245_RequestMessage(tvb, offset, pinfo, tree, hf_h245_request);
12075 }
12076
12077
12078 static const value_string h245_T_decision_vals[] = {
12079   {   0, "master" },
12080   {   1, "slave" },
12081   { 0, NULL }
12082 };
12083
12084 static const per_choice_t T_decision_choice[] = {
12085   {   0, "master"                      , ASN1_NO_EXTENSIONS     , dissect_master },
12086   {   1, "slave"                       , ASN1_NO_EXTENSIONS     , dissect_slave },
12087   { 0, NULL, 0, NULL }
12088 };
12089
12090 static int
12091 dissect_h245_T_decision(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12092   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12093                               ett_h245_T_decision, T_decision_choice, "T_decision",
12094                               NULL);
12095
12096   return offset;
12097 }
12098 static int dissect_decision(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12099   return dissect_h245_T_decision(tvb, offset, pinfo, tree, hf_h245_decision);
12100 }
12101
12102 static const per_sequence_t MasterSlaveDeterminationAck_sequence[] = {
12103   { "decision"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_decision },
12104   { NULL, 0, 0, NULL }
12105 };
12106
12107 static int
12108 dissect_h245_MasterSlaveDeterminationAck(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12109   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12110                                 ett_h245_MasterSlaveDeterminationAck, MasterSlaveDeterminationAck_sequence);
12111
12112
12113   h245_pi.msg_type = H245_MastSlvDetAck;
12114   return offset;
12115 }
12116 static int dissect_masterSlaveDeterminationAck(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12117   return dissect_h245_MasterSlaveDeterminationAck(tvb, offset, pinfo, tree, hf_h245_masterSlaveDeterminationAck);
12118 }
12119
12120
12121 static const value_string h245_MasterSlaveDeterminationRejectCause_vals[] = {
12122   {   0, "identicalNumbers" },
12123   { 0, NULL }
12124 };
12125
12126 static const per_choice_t MasterSlaveDeterminationRejectCause_choice[] = {
12127   {   0, "identicalNumbers"            , ASN1_EXTENSION_ROOT    , dissect_identicalNumbers },
12128   { 0, NULL, 0, NULL }
12129 };
12130
12131 static int
12132 dissect_h245_MasterSlaveDeterminationRejectCause(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12133   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12134                               ett_h245_MasterSlaveDeterminationRejectCause, MasterSlaveDeterminationRejectCause_choice, "MasterSlaveDeterminationRejectCause",
12135                               NULL);
12136
12137   return offset;
12138 }
12139 static int dissect_msd_rej_cause(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12140   return dissect_h245_MasterSlaveDeterminationRejectCause(tvb, offset, pinfo, tree, hf_h245_msd_rej_cause);
12141 }
12142
12143 static const per_sequence_t MasterSlaveDeterminationReject_sequence[] = {
12144   { "cause"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_msd_rej_cause },
12145   { NULL, 0, 0, NULL }
12146 };
12147
12148 static int
12149 dissect_h245_MasterSlaveDeterminationReject(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12150   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12151                                 ett_h245_MasterSlaveDeterminationReject, MasterSlaveDeterminationReject_sequence);
12152
12153
12154   h245_pi.msg_type = H245_MastSlvDetRjc;
12155   return offset;
12156 }
12157 static int dissect_masterSlaveDeterminationReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12158   return dissect_h245_MasterSlaveDeterminationReject(tvb, offset, pinfo, tree, hf_h245_masterSlaveDeterminationReject);
12159 }
12160
12161 static const per_sequence_t TerminalCapabilitySetAck_sequence[] = {
12162   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
12163   { NULL, 0, 0, NULL }
12164 };
12165
12166 static int
12167 dissect_h245_TerminalCapabilitySetAck(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12168   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12169                                 ett_h245_TerminalCapabilitySetAck, TerminalCapabilitySetAck_sequence);
12170
12171
12172   h245_pi.msg_type = H245_TermCapSetAck;
12173   return offset;
12174 }
12175 static int dissect_terminalCapabilitySetAck(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12176   return dissect_h245_TerminalCapabilitySetAck(tvb, offset, pinfo, tree, hf_h245_terminalCapabilitySetAck);
12177 }
12178
12179
12180 static const value_string h245_T_tableEntryCapacityExceeded_vals[] = {
12181   {   0, "highestEntryNumberProcessed" },
12182   {   1, "noneProcessed" },
12183   { 0, NULL }
12184 };
12185
12186 static const per_choice_t T_tableEntryCapacityExceeded_choice[] = {
12187   {   0, "highestEntryNumberProcessed" , ASN1_NO_EXTENSIONS     , dissect_highestEntryNumberProcessed },
12188   {   1, "noneProcessed"               , ASN1_NO_EXTENSIONS     , dissect_noneProcessed },
12189   { 0, NULL, 0, NULL }
12190 };
12191
12192 static int
12193 dissect_h245_T_tableEntryCapacityExceeded(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12194   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12195                               ett_h245_T_tableEntryCapacityExceeded, T_tableEntryCapacityExceeded_choice, "T_tableEntryCapacityExceeded",
12196                               NULL);
12197
12198   return offset;
12199 }
12200 static int dissect_tableEntryCapacityExceeded(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12201   return dissect_h245_T_tableEntryCapacityExceeded(tvb, offset, pinfo, tree, hf_h245_tableEntryCapacityExceeded);
12202 }
12203
12204
12205 static const value_string h245_TerminalCapabilitySetRejectCause_vals[] = {
12206   {   0, "unspecified" },
12207   {   1, "undefinedTableEntryUsed" },
12208   {   2, "descriptorCapacityExceeded" },
12209   {   3, "tableEntryCapacityExceeded" },
12210   { 0, NULL }
12211 };
12212
12213 static const per_choice_t TerminalCapabilitySetRejectCause_choice[] = {
12214   {   0, "unspecified"                 , ASN1_EXTENSION_ROOT    , dissect_unspecified },
12215   {   1, "undefinedTableEntryUsed"     , ASN1_EXTENSION_ROOT    , dissect_undefinedTableEntryUsed },
12216   {   2, "descriptorCapacityExceeded"  , ASN1_EXTENSION_ROOT    , dissect_descriptorCapacityExceeded },
12217   {   3, "tableEntryCapacityExceeded"  , ASN1_EXTENSION_ROOT    , dissect_tableEntryCapacityExceeded },
12218   { 0, NULL, 0, NULL }
12219 };
12220
12221 static int
12222 dissect_h245_TerminalCapabilitySetRejectCause(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12223   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12224                               ett_h245_TerminalCapabilitySetRejectCause, TerminalCapabilitySetRejectCause_choice, "TerminalCapabilitySetRejectCause",
12225                               NULL);
12226
12227   return offset;
12228 }
12229 static int dissect_tcs_rej_cause(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12230   return dissect_h245_TerminalCapabilitySetRejectCause(tvb, offset, pinfo, tree, hf_h245_tcs_rej_cause);
12231 }
12232
12233 static const per_sequence_t TerminalCapabilitySetReject_sequence[] = {
12234   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
12235   { "cause"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_tcs_rej_cause },
12236   { NULL, 0, 0, NULL }
12237 };
12238
12239 static int
12240 dissect_h245_TerminalCapabilitySetReject(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12241   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12242                                 ett_h245_TerminalCapabilitySetReject, TerminalCapabilitySetReject_sequence);
12243
12244
12245   h245_pi.msg_type = H245_TermCapSetRjc;
12246   return offset;
12247 }
12248 static int dissect_terminalCapabilitySetReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12249   return dissect_h245_TerminalCapabilitySetReject(tvb, offset, pinfo, tree, hf_h245_terminalCapabilitySetReject);
12250 }
12251
12252
12253 static const value_string h245_T_multiplexParameters_vals[] = {
12254   {   0, "h222LogicalChannelParameters" },
12255   {   1, "h2250LogicalChannelParameters" },
12256   { 0, NULL }
12257 };
12258
12259 static const per_choice_t T_multiplexParameters_choice[] = {
12260   {   0, "h222LogicalChannelParameters", ASN1_EXTENSION_ROOT    , dissect_h222LogicalChannelParameters },
12261   {   1, "h2250LogicalChannelParameters", ASN1_NOT_EXTENSION_ROOT, dissect_h2250LogicalChannelParameters },
12262   { 0, NULL, 0, NULL }
12263 };
12264
12265 static int
12266 dissect_h245_T_multiplexParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12267   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12268                               ett_h245_T_multiplexParameters, T_multiplexParameters_choice, "T_multiplexParameters",
12269                               NULL);
12270
12271   return offset;
12272 }
12273 static int dissect_olc_ack_multiplexParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12274   return dissect_h245_T_multiplexParameters(tvb, offset, pinfo, tree, hf_h245_olc_ack_multiplexParameters);
12275 }
12276
12277 static const per_sequence_t OLC_ack_reverseLogicalChannelParameters_sequence[] = {
12278   { "reverseLogicalChannelNumber" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_reverseLogicalChannelNumber },
12279   { "portNumber"                  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_portNumber },
12280   { "multiplexParameters"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_olc_ack_multiplexParameters },
12281   { "replacementFor"              , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_replacementFor },
12282   { NULL, 0, 0, NULL }
12283 };
12284
12285 static int
12286 dissect_h245_OLC_ack_reverseLogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12287   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12288                                 ett_h245_OLC_ack_reverseLogicalChannelParameters, OLC_ack_reverseLogicalChannelParameters_sequence);
12289
12290   return offset;
12291 }
12292 static int dissect_olc_ack_reverseLogicalChannelParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12293   return dissect_h245_OLC_ack_reverseLogicalChannelParameters(tvb, offset, pinfo, tree, hf_h245_olc_ack_reverseLogicalChannelParameters);
12294 }
12295
12296
12297 static int
12298 dissect_h245_T_mediaChannel(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12299
12300
12301         media_channel = TRUE;
12302   offset = dissect_h245_TransportAddress(tvb, offset, pinfo, tree, hf_index);
12303
12304
12305
12306         media_channel = FALSE;
12307   return offset;
12308 }
12309 static int dissect_ack_mediaChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12310   return dissect_h245_T_mediaChannel(tvb, offset, pinfo, tree, hf_h245_ack_mediaChannel);
12311 }
12312
12313
12314 static int
12315 dissect_h245_T_mediaControlChannel(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12316
12317
12318         media_control_channel = TRUE;
12319   offset = dissect_h245_TransportAddress(tvb, offset, pinfo, tree, hf_index);
12320
12321
12322
12323         media_control_channel = FALSE;
12324   return offset;
12325 }
12326 static int dissect_ack_mediaControlChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12327   return dissect_h245_T_mediaControlChannel(tvb, offset, pinfo, tree, hf_h245_ack_mediaControlChannel);
12328 }
12329
12330 static const per_sequence_t H2250LogicalChannelAckParameters_sequence[] = {
12331   { "nonStandard"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nonStandardParams },
12332   { "sessionID"                   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_sessionID },
12333   { "mediaChannel"                , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_ack_mediaChannel },
12334   { "mediaControlChannel"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_ack_mediaControlChannel },
12335   { "dynamicRTPPayloadType"       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_dynamicRTPPayloadType },
12336   { "flowControlToZero"           , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_flowControlToZero },
12337   { "portNumber"                  , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_portNumber },
12338   { NULL, 0, 0, NULL }
12339 };
12340
12341 static int
12342 dissect_h245_H2250LogicalChannelAckParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12343   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12344                                 ett_h245_H2250LogicalChannelAckParameters, H2250LogicalChannelAckParameters_sequence);
12345
12346   return offset;
12347 }
12348 static int dissect_h2250LogicalChannelAckParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12349   return dissect_h245_H2250LogicalChannelAckParameters(tvb, offset, pinfo, tree, hf_h245_h2250LogicalChannelAckParameters);
12350 }
12351
12352
12353 static const value_string h245_T_forwardMultiplexAckParameters_vals[] = {
12354   {   0, "h2250LogicalChannelAckParameters" },
12355   { 0, NULL }
12356 };
12357
12358 static const per_choice_t T_forwardMultiplexAckParameters_choice[] = {
12359   {   0, "h2250LogicalChannelAckParameters", ASN1_EXTENSION_ROOT    , dissect_h2250LogicalChannelAckParameters },
12360   { 0, NULL, 0, NULL }
12361 };
12362
12363 static int
12364 dissect_h245_T_forwardMultiplexAckParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12365
12366
12367         media_channel = FALSE;
12368         media_control_channel = FALSE;
12369
12370   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12371                               ett_h245_T_forwardMultiplexAckParameters, T_forwardMultiplexAckParameters_choice, "T_forwardMultiplexAckParameters",
12372                               NULL);
12373
12374         
12375         if((!pinfo->fd->flags.visited) && ipv4_address!=0 && ipv4_port!=0 && rtp_handle){
12376                 address src_addr;
12377
12378                 src_addr.type=AT_IPv4;
12379                 src_addr.len=4;
12380                 src_addr.data=(char *)&ipv4_address;
12381
12382                 rtp_add_address(pinfo, &src_addr, ipv4_port, 0, "H245", pinfo->fd->num);
12383         }
12384         if((!pinfo->fd->flags.visited) && rtcp_ipv4_address!=0 && rtcp_ipv4_port!=0 && rtcp_handle){
12385                 address src_addr;
12386
12387                 src_addr.type=AT_IPv4;
12388                 src_addr.len=4;
12389                 src_addr.data=(char *)&rtcp_ipv4_address;
12390
12391                 rtcp_add_address(pinfo, &src_addr, rtcp_ipv4_port, 0, "H245", pinfo->fd->num);
12392         }
12393
12394   return offset;
12395 }
12396 static int dissect_forwardMultiplexAckParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12397   return dissect_h245_T_forwardMultiplexAckParameters(tvb, offset, pinfo, tree, hf_h245_forwardMultiplexAckParameters);
12398 }
12399
12400 static const per_sequence_t OpenLogicalChannelAck_sequence[] = {
12401   { "forwardLogicalChannelNumber" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelNumber },
12402   { "reverseLogicalChannelParameters", ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_olc_ack_reverseLogicalChannelParameters },
12403   { "separateStack"               , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_separateStack },
12404   { "forwardMultiplexAckParameters", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_forwardMultiplexAckParameters },
12405   { "encryptionSync"              , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_encryptionSync },
12406   { NULL, 0, 0, NULL }
12407 };
12408
12409 static int
12410 dissect_h245_OpenLogicalChannelAck(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12411   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12412                                 ett_h245_OpenLogicalChannelAck, OpenLogicalChannelAck_sequence);
12413
12414
12415   h245_pi.msg_type = H245_OpenLogChnAck;
12416   return offset;
12417 }
12418 static int dissect_openLogicalChannelAck(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12419   return dissect_h245_OpenLogicalChannelAck(tvb, offset, pinfo, tree, hf_h245_openLogicalChannelAck);
12420 }
12421
12422
12423 static const value_string h245_OpenLogicalChannelRejectCause_vals[] = {
12424   {   0, "unspecified" },
12425   {   1, "unsuitableReverseParameters" },
12426   {   2, "dataTypeNotSupported" },
12427   {   3, "dataTypeNotAvailable" },
12428   {   4, "unknownDataType" },
12429   {   5, "dataTypeALCombinationNotSupported" },
12430   {   6, "multicastChannelNotAllowed" },
12431   {   7, "insufficientBandwidth" },
12432   {   8, "separateStackEstablishmentFailed" },
12433   {   9, "invalidSessionID" },
12434   {  10, "masterSlaveConflict" },
12435   {  11, "waitForCommunicationMode" },
12436   {  12, "invalidDependentChannel" },
12437   {  13, "replacementForRejected" },
12438   { 0, NULL }
12439 };
12440
12441 static const per_choice_t OpenLogicalChannelRejectCause_choice[] = {
12442   {   0, "unspecified"                 , ASN1_EXTENSION_ROOT    , dissect_unspecified },
12443   {   1, "unsuitableReverseParameters" , ASN1_EXTENSION_ROOT    , dissect_unsuitableReverseParameters },
12444   {   2, "dataTypeNotSupported"        , ASN1_EXTENSION_ROOT    , dissect_dataTypeNotSupported },
12445   {   3, "dataTypeNotAvailable"        , ASN1_EXTENSION_ROOT    , dissect_dataTypeNotAvailable },
12446   {   4, "unknownDataType"             , ASN1_EXTENSION_ROOT    , dissect_unknownDataType },
12447   {   5, "dataTypeALCombinationNotSupported", ASN1_EXTENSION_ROOT    , dissect_dataTypeALCombinationNotSupported },
12448   {   6, "multicastChannelNotAllowed"  , ASN1_NOT_EXTENSION_ROOT, dissect_multicastChannelNotAllowed },
12449   {   7, "insufficientBandwidth"       , ASN1_NOT_EXTENSION_ROOT, dissect_insufficientBandwidth },
12450   {   8, "separateStackEstablishmentFailed", ASN1_NOT_EXTENSION_ROOT, dissect_separateStackEstablishmentFailed },
12451   {   9, "invalidSessionID"            , ASN1_NOT_EXTENSION_ROOT, dissect_invalidSessionID },
12452   {  10, "masterSlaveConflict"         , ASN1_NOT_EXTENSION_ROOT, dissect_masterSlaveConflict },
12453   {  11, "waitForCommunicationMode"    , ASN1_NOT_EXTENSION_ROOT, dissect_waitForCommunicationMode },
12454   {  12, "invalidDependentChannel"     , ASN1_NOT_EXTENSION_ROOT, dissect_invalidDependentChannel },
12455   {  13, "replacementForRejected"      , ASN1_NOT_EXTENSION_ROOT, dissect_replacementForRejected },
12456   { 0, NULL, 0, NULL }
12457 };
12458
12459 static int
12460 dissect_h245_OpenLogicalChannelRejectCause(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12461   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12462                               ett_h245_OpenLogicalChannelRejectCause, OpenLogicalChannelRejectCause_choice, "OpenLogicalChannelRejectCause",
12463                               NULL);
12464
12465   return offset;
12466 }
12467 static int dissect_olc_rej_cause(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12468   return dissect_h245_OpenLogicalChannelRejectCause(tvb, offset, pinfo, tree, hf_h245_olc_rej_cause);
12469 }
12470
12471 static const per_sequence_t OpenLogicalChannelReject_sequence[] = {
12472   { "forwardLogicalChannelNumber" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelNumber },
12473   { "cause"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_olc_rej_cause },
12474   { NULL, 0, 0, NULL }
12475 };
12476
12477 static int
12478 dissect_h245_OpenLogicalChannelReject(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12479   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12480                                 ett_h245_OpenLogicalChannelReject, OpenLogicalChannelReject_sequence);
12481
12482
12483   h245_pi.msg_type = H245_OpenLogChnRjc;
12484   return offset;
12485 }
12486 static int dissect_openLogicalChannelReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12487   return dissect_h245_OpenLogicalChannelReject(tvb, offset, pinfo, tree, hf_h245_openLogicalChannelReject);
12488 }
12489
12490 static const per_sequence_t CloseLogicalChannelAck_sequence[] = {
12491   { "forwardLogicalChannelNumber" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelNumber },
12492   { NULL, 0, 0, NULL }
12493 };
12494
12495 static int
12496 dissect_h245_CloseLogicalChannelAck(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12497   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12498                                 ett_h245_CloseLogicalChannelAck, CloseLogicalChannelAck_sequence);
12499
12500
12501   h245_pi.msg_type = H245_CloseLogChnAck;
12502   return offset;
12503 }
12504 static int dissect_closeLogicalChannelAck(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12505   return dissect_h245_CloseLogicalChannelAck(tvb, offset, pinfo, tree, hf_h245_closeLogicalChannelAck);
12506 }
12507
12508 static const per_sequence_t RequestChannelCloseAck_sequence[] = {
12509   { "forwardLogicalChannelNumber" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelNumber },
12510   { NULL, 0, 0, NULL }
12511 };
12512
12513 static int
12514 dissect_h245_RequestChannelCloseAck(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12515   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12516                                 ett_h245_RequestChannelCloseAck, RequestChannelCloseAck_sequence);
12517
12518   return offset;
12519 }
12520 static int dissect_requestChannelCloseAck(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12521   return dissect_h245_RequestChannelCloseAck(tvb, offset, pinfo, tree, hf_h245_requestChannelCloseAck);
12522 }
12523
12524
12525 static const value_string h245_RequestChannelCloseRejectCause_vals[] = {
12526   {   0, "unspecified" },
12527   { 0, NULL }
12528 };
12529
12530 static const per_choice_t RequestChannelCloseRejectCause_choice[] = {
12531   {   0, "unspecified"                 , ASN1_EXTENSION_ROOT    , dissect_unspecified },
12532   { 0, NULL, 0, NULL }
12533 };
12534
12535 static int
12536 dissect_h245_RequestChannelCloseRejectCause(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12537   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12538                               ett_h245_RequestChannelCloseRejectCause, RequestChannelCloseRejectCause_choice, "RequestChannelCloseRejectCause",
12539                               NULL);
12540
12541   return offset;
12542 }
12543 static int dissect_req_chan_clos_rej_cause(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12544   return dissect_h245_RequestChannelCloseRejectCause(tvb, offset, pinfo, tree, hf_h245_req_chan_clos_rej_cause);
12545 }
12546
12547 static const per_sequence_t RequestChannelCloseReject_sequence[] = {
12548   { "forwardLogicalChannelNumber" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelNumber },
12549   { "cause"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_req_chan_clos_rej_cause },
12550   { NULL, 0, 0, NULL }
12551 };
12552
12553 static int
12554 dissect_h245_RequestChannelCloseReject(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12555   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12556                                 ett_h245_RequestChannelCloseReject, RequestChannelCloseReject_sequence);
12557
12558   return offset;
12559 }
12560 static int dissect_requestChannelCloseReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12561   return dissect_h245_RequestChannelCloseReject(tvb, offset, pinfo, tree, hf_h245_requestChannelCloseReject);
12562 }
12563
12564 static const per_sequence_t MultiplexEntrySendAck_sequence[] = {
12565   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
12566   { "multiplexTableEntryNumber"   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multiplexTableEntryNumbers },
12567   { NULL, 0, 0, NULL }
12568 };
12569
12570 static int
12571 dissect_h245_MultiplexEntrySendAck(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12572   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12573                                 ett_h245_MultiplexEntrySendAck, MultiplexEntrySendAck_sequence);
12574
12575   return offset;
12576 }
12577 static int dissect_multiplexEntrySendAck(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12578   return dissect_h245_MultiplexEntrySendAck(tvb, offset, pinfo, tree, hf_h245_multiplexEntrySendAck);
12579 }
12580
12581
12582 static const value_string h245_MultiplexEntryRejectionDescriptionsCause_vals[] = {
12583   {   0, "unspecifiedCause" },
12584   {   1, "descriptorTooComplex" },
12585   { 0, NULL }
12586 };
12587
12588 static const per_choice_t MultiplexEntryRejectionDescriptionsCause_choice[] = {
12589   {   0, "unspecifiedCause"            , ASN1_EXTENSION_ROOT    , dissect_unspecifiedCause },
12590   {   1, "descriptorTooComplex"        , ASN1_EXTENSION_ROOT    , dissect_descriptorTooComplex },
12591   { 0, NULL, 0, NULL }
12592 };
12593
12594 static int
12595 dissect_h245_MultiplexEntryRejectionDescriptionsCause(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12596   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12597                               ett_h245_MultiplexEntryRejectionDescriptionsCause, MultiplexEntryRejectionDescriptionsCause_choice, "MultiplexEntryRejectionDescriptionsCause",
12598                               NULL);
12599
12600   return offset;
12601 }
12602 static int dissect_mux_rej_cause(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12603   return dissect_h245_MultiplexEntryRejectionDescriptionsCause(tvb, offset, pinfo, tree, hf_h245_mux_rej_cause);
12604 }
12605
12606 static const per_sequence_t MultiplexEntryRejectionDescriptions_sequence[] = {
12607   { "multiplexTableEntryNumber"   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multiplexTableEntryNumber },
12608   { "cause"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mux_rej_cause },
12609   { NULL, 0, 0, NULL }
12610 };
12611
12612 static int
12613 dissect_h245_MultiplexEntryRejectionDescriptions(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12614   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12615                                 ett_h245_MultiplexEntryRejectionDescriptions, MultiplexEntryRejectionDescriptions_sequence);
12616
12617   return offset;
12618 }
12619 static int dissect_rejectionDescriptions1_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12620   return dissect_h245_MultiplexEntryRejectionDescriptions(tvb, offset, pinfo, tree, hf_h245_rejectionDescriptions1_item);
12621 }
12622
12623
12624 static int
12625 dissect_h245_SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12626   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
12627                                           ett_h245_SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions, dissect_rejectionDescriptions1_item,
12628                                           1, 15);
12629
12630   return offset;
12631 }
12632 static int dissect_rejectionDescriptions1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12633   return dissect_h245_SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions(tvb, offset, pinfo, tree, hf_h245_rejectionDescriptions1);
12634 }
12635
12636 static const per_sequence_t MultiplexEntrySendReject_sequence[] = {
12637   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
12638   { "rejectionDescriptions1"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rejectionDescriptions1 },
12639   { NULL, 0, 0, NULL }
12640 };
12641
12642 static int
12643 dissect_h245_MultiplexEntrySendReject(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12644   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12645                                 ett_h245_MultiplexEntrySendReject, MultiplexEntrySendReject_sequence);
12646
12647   return offset;
12648 }
12649 static int dissect_multiplexEntrySendReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12650   return dissect_h245_MultiplexEntrySendReject(tvb, offset, pinfo, tree, hf_h245_multiplexEntrySendReject);
12651 }
12652
12653 static const per_sequence_t RequestMultiplexEntryAck_sequence[] = {
12654   { "entryNumbers"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_entryNumbers },
12655   { NULL, 0, 0, NULL }
12656 };
12657
12658 static int
12659 dissect_h245_RequestMultiplexEntryAck(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12660   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12661                                 ett_h245_RequestMultiplexEntryAck, RequestMultiplexEntryAck_sequence);
12662
12663   return offset;
12664 }
12665 static int dissect_requestMultiplexEntryAck(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12666   return dissect_h245_RequestMultiplexEntryAck(tvb, offset, pinfo, tree, hf_h245_requestMultiplexEntryAck);
12667 }
12668
12669
12670 static const value_string h245_RequestMultiplexEntryRejectionDescriptionsCause_vals[] = {
12671   {   0, "unspecifiedCause" },
12672   { 0, NULL }
12673 };
12674
12675 static const per_choice_t RequestMultiplexEntryRejectionDescriptionsCause_choice[] = {
12676   {   0, "unspecifiedCause"            , ASN1_EXTENSION_ROOT    , dissect_unspecifiedCause },
12677   { 0, NULL, 0, NULL }
12678 };
12679
12680 static int
12681 dissect_h245_RequestMultiplexEntryRejectionDescriptionsCause(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12682   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12683                               ett_h245_RequestMultiplexEntryRejectionDescriptionsCause, RequestMultiplexEntryRejectionDescriptionsCause_choice, "RequestMultiplexEntryRejectionDescriptionsCause",
12684                               NULL);
12685
12686   return offset;
12687 }
12688 static int dissect_req_mux_rej_cause(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12689   return dissect_h245_RequestMultiplexEntryRejectionDescriptionsCause(tvb, offset, pinfo, tree, hf_h245_req_mux_rej_cause);
12690 }
12691
12692 static const per_sequence_t RequestMultiplexEntryRejectionDescriptions_sequence[] = {
12693   { "multiplexTableEntryNumber"   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multiplexTableEntryNumber },
12694   { "cause"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_req_mux_rej_cause },
12695   { NULL, 0, 0, NULL }
12696 };
12697
12698 static int
12699 dissect_h245_RequestMultiplexEntryRejectionDescriptions(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12700   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12701                                 ett_h245_RequestMultiplexEntryRejectionDescriptions, RequestMultiplexEntryRejectionDescriptions_sequence);
12702
12703   return offset;
12704 }
12705 static int dissect_rejectionDescriptions2_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12706   return dissect_h245_RequestMultiplexEntryRejectionDescriptions(tvb, offset, pinfo, tree, hf_h245_rejectionDescriptions2_item);
12707 }
12708
12709
12710 static int
12711 dissect_h245_SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12712   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
12713                                           ett_h245_SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions, dissect_rejectionDescriptions2_item,
12714                                           1, 15);
12715
12716   return offset;
12717 }
12718 static int dissect_rejectionDescriptions2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12719   return dissect_h245_SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions(tvb, offset, pinfo, tree, hf_h245_rejectionDescriptions2);
12720 }
12721
12722 static const per_sequence_t RequestMultiplexEntryReject_sequence[] = {
12723   { "entryNumbers"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_entryNumbers },
12724   { "rejectionDescriptions2"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rejectionDescriptions2 },
12725   { NULL, 0, 0, NULL }
12726 };
12727
12728 static int
12729 dissect_h245_RequestMultiplexEntryReject(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12730   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12731                                 ett_h245_RequestMultiplexEntryReject, RequestMultiplexEntryReject_sequence);
12732
12733   return offset;
12734 }
12735 static int dissect_requestMultiplexEntryReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12736   return dissect_h245_RequestMultiplexEntryReject(tvb, offset, pinfo, tree, hf_h245_requestMultiplexEntryReject);
12737 }
12738
12739
12740 static const value_string h245_Req_mode_ack_response_vals[] = {
12741   {   0, "willTransmitMostPreferredMode" },
12742   {   1, "willTransmitLessPreferredMode" },
12743   { 0, NULL }
12744 };
12745
12746 static const per_choice_t Req_mode_ack_response_choice[] = {
12747   {   0, "willTransmitMostPreferredMode", ASN1_EXTENSION_ROOT    , dissect_willTransmitMostPreferredMode },
12748   {   1, "willTransmitLessPreferredMode", ASN1_EXTENSION_ROOT    , dissect_willTransmitLessPreferredMode },
12749   { 0, NULL, 0, NULL }
12750 };
12751
12752 static int
12753 dissect_h245_Req_mode_ack_response(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12754   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12755                               ett_h245_Req_mode_ack_response, Req_mode_ack_response_choice, "Req_mode_ack_response",
12756                               NULL);
12757
12758   return offset;
12759 }
12760 static int dissect_req_mode_ack_response(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12761   return dissect_h245_Req_mode_ack_response(tvb, offset, pinfo, tree, hf_h245_req_mode_ack_response);
12762 }
12763
12764 static const per_sequence_t RequestModeAck_sequence[] = {
12765   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
12766   { "response"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_req_mode_ack_response },
12767   { NULL, 0, 0, NULL }
12768 };
12769
12770 static int
12771 dissect_h245_RequestModeAck(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12772   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12773                                 ett_h245_RequestModeAck, RequestModeAck_sequence);
12774
12775   return offset;
12776 }
12777 static int dissect_requestModeAck(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12778   return dissect_h245_RequestModeAck(tvb, offset, pinfo, tree, hf_h245_requestModeAck);
12779 }
12780
12781
12782 static const value_string h245_RequestModeRejectCause_vals[] = {
12783   {   0, "modeUnavailable" },
12784   {   1, "multipointConstraint" },
12785   {   2, "requestDenied" },
12786   { 0, NULL }
12787 };
12788
12789 static const per_choice_t RequestModeRejectCause_choice[] = {
12790   {   0, "modeUnavailable"             , ASN1_EXTENSION_ROOT    , dissect_modeUnavailable },
12791   {   1, "multipointConstraint"        , ASN1_EXTENSION_ROOT    , dissect_multipointConstraint },
12792   {   2, "requestDenied"               , ASN1_EXTENSION_ROOT    , dissect_requestDenied },
12793   { 0, NULL, 0, NULL }
12794 };
12795
12796 static int
12797 dissect_h245_RequestModeRejectCause(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12798   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12799                               ett_h245_RequestModeRejectCause, RequestModeRejectCause_choice, "RequestModeRejectCause",
12800                               NULL);
12801
12802   return offset;
12803 }
12804 static int dissect_req_rej_cause(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12805   return dissect_h245_RequestModeRejectCause(tvb, offset, pinfo, tree, hf_h245_req_rej_cause);
12806 }
12807
12808 static const per_sequence_t RequestModeReject_sequence[] = {
12809   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
12810   { "cause"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_req_rej_cause },
12811   { NULL, 0, 0, NULL }
12812 };
12813
12814 static int
12815 dissect_h245_RequestModeReject(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12816   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12817                                 ett_h245_RequestModeReject, RequestModeReject_sequence);
12818
12819   return offset;
12820 }
12821 static int dissect_requestModeReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12822   return dissect_h245_RequestModeReject(tvb, offset, pinfo, tree, hf_h245_requestModeReject);
12823 }
12824
12825 static const per_sequence_t RoundTripDelayResponse_sequence[] = {
12826   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
12827   { NULL, 0, 0, NULL }
12828 };
12829
12830 static int
12831 dissect_h245_RoundTripDelayResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12832   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12833                                 ett_h245_RoundTripDelayResponse, RoundTripDelayResponse_sequence);
12834
12835   return offset;
12836 }
12837 static int dissect_roundTripDelayResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12838   return dissect_h245_RoundTripDelayResponse(tvb, offset, pinfo, tree, hf_h245_roundTripDelayResponse);
12839 }
12840
12841
12842 static const value_string h245_Mla_type_vals[] = {
12843   {   0, "systemLoop" },
12844   {   1, "mediaLoop" },
12845   {   2, "logicalChannelLoop" },
12846   { 0, NULL }
12847 };
12848
12849 static const per_choice_t Mla_type_choice[] = {
12850   {   0, "systemLoop"                  , ASN1_EXTENSION_ROOT    , dissect_systemLoop },
12851   {   1, "mediaLoop"                   , ASN1_EXTENSION_ROOT    , dissect_mediaLoop },
12852   {   2, "logicalChannelLoop"          , ASN1_EXTENSION_ROOT    , dissect_logicalChannelLoop },
12853   { 0, NULL, 0, NULL }
12854 };
12855
12856 static int
12857 dissect_h245_Mla_type(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12858   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12859                               ett_h245_Mla_type, Mla_type_choice, "Mla_type",
12860                               NULL);
12861
12862   return offset;
12863 }
12864 static int dissect_Mla_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12865   return dissect_h245_Mla_type(tvb, offset, pinfo, tree, hf_h245_Mla_type);
12866 }
12867
12868 static const per_sequence_t MaintenanceLoopAck_sequence[] = {
12869   { "type"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_Mla_type },
12870   { NULL, 0, 0, NULL }
12871 };
12872
12873 static int
12874 dissect_h245_MaintenanceLoopAck(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12875   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12876                                 ett_h245_MaintenanceLoopAck, MaintenanceLoopAck_sequence);
12877
12878   return offset;
12879 }
12880 static int dissect_maintenanceLoopAck(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12881   return dissect_h245_MaintenanceLoopAck(tvb, offset, pinfo, tree, hf_h245_maintenanceLoopAck);
12882 }
12883
12884
12885 static const value_string h245_Mlrej_type_vals[] = {
12886   {   0, "systemLoop" },
12887   {   1, "mediaLoop" },
12888   {   2, "logicalChannelLoop" },
12889   { 0, NULL }
12890 };
12891
12892 static const per_choice_t Mlrej_type_choice[] = {
12893   {   0, "systemLoop"                  , ASN1_EXTENSION_ROOT    , dissect_systemLoop },
12894   {   1, "mediaLoop"                   , ASN1_EXTENSION_ROOT    , dissect_mediaLoop },
12895   {   2, "logicalChannelLoop"          , ASN1_EXTENSION_ROOT    , dissect_logicalChannelLoop },
12896   { 0, NULL, 0, NULL }
12897 };
12898
12899 static int
12900 dissect_h245_Mlrej_type(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12901   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12902                               ett_h245_Mlrej_type, Mlrej_type_choice, "Mlrej_type",
12903                               NULL);
12904
12905   return offset;
12906 }
12907 static int dissect_mlrej_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12908   return dissect_h245_Mlrej_type(tvb, offset, pinfo, tree, hf_h245_mlrej_type);
12909 }
12910
12911
12912 static const value_string h245_MaintenanceLoopRejectCause_vals[] = {
12913   {   0, "canNotPerformLoop" },
12914   { 0, NULL }
12915 };
12916
12917 static const per_choice_t MaintenanceLoopRejectCause_choice[] = {
12918   {   0, "canNotPerformLoop"           , ASN1_EXTENSION_ROOT    , dissect_canNotPerformLoop },
12919   { 0, NULL, 0, NULL }
12920 };
12921
12922 static int
12923 dissect_h245_MaintenanceLoopRejectCause(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12924   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12925                               ett_h245_MaintenanceLoopRejectCause, MaintenanceLoopRejectCause_choice, "MaintenanceLoopRejectCause",
12926                               NULL);
12927
12928   return offset;
12929 }
12930 static int dissect_maintloop_rej_cause(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12931   return dissect_h245_MaintenanceLoopRejectCause(tvb, offset, pinfo, tree, hf_h245_maintloop_rej_cause);
12932 }
12933
12934 static const per_sequence_t MaintenanceLoopReject_sequence[] = {
12935   { "type"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mlrej_type },
12936   { "cause"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maintloop_rej_cause },
12937   { NULL, 0, 0, NULL }
12938 };
12939
12940 static int
12941 dissect_h245_MaintenanceLoopReject(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12942   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
12943                                 ett_h245_MaintenanceLoopReject, MaintenanceLoopReject_sequence);
12944
12945   return offset;
12946 }
12947 static int dissect_maintenanceLoopReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12948   return dissect_h245_MaintenanceLoopReject(tvb, offset, pinfo, tree, hf_h245_maintenanceLoopReject);
12949 }
12950
12951
12952 static int
12953 dissect_h245_BMPString_SIZE_1_128(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12954   offset = dissect_per_BMPString(tvb, offset, pinfo, tree, hf_index,
12955                                  1, 128);
12956
12957   return offset;
12958 }
12959 static int dissect_sessionDescription(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12960   return dissect_h245_BMPString_SIZE_1_128(tvb, offset, pinfo, tree, hf_h245_sessionDescription);
12961 }
12962
12963
12964 static const value_string h245_T_dataType_vals[] = {
12965   {   0, "videoData" },
12966   {   1, "audioData" },
12967   {   2, "data" },
12968   { 0, NULL }
12969 };
12970
12971 static const per_choice_t T_dataType_choice[] = {
12972   {   0, "videoData"                   , ASN1_EXTENSION_ROOT    , dissect_videoData },
12973   {   1, "audioData"                   , ASN1_EXTENSION_ROOT    , dissect_audioData },
12974   {   2, "data"                        , ASN1_EXTENSION_ROOT    , dissect_data },
12975   { 0, NULL, 0, NULL }
12976 };
12977
12978 static int
12979 dissect_h245_T_dataType(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
12980   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
12981                               ett_h245_T_dataType, T_dataType_choice, "T_dataType",
12982                               NULL);
12983
12984   return offset;
12985 }
12986 static int dissect_entryDataType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
12987   return dissect_h245_T_dataType(tvb, offset, pinfo, tree, hf_h245_entryDataType);
12988 }
12989
12990 static const per_sequence_t CommunicationModeTableEntry_sequence[] = {
12991   { "nonStandard"                 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nonStandardParams },
12992   { "sessionID"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sessionID },
12993   { "associatedSessionID"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_associatedSessionID },
12994   { "terminalLabel"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_terminalLabel },
12995   { "sessionDescription"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sessionDescription },
12996   { "dataType"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_entryDataType },
12997   { "mediaChannel"                , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_mediaChannel },
12998   { "mediaGuaranteedDelivery"     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_mediaGuaranteedDelivery },
12999   { "mediaControlChannel"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_mediaControlChannel },
13000   { "mediaControlGuaranteedDelivery", ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_mediaControlGuaranteedDelivery },
13001   { "redundancyEncoding"          , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_redundancyEncoding },
13002   { "sessionDependency"           , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_sessionDependency },
13003   { "destination"                 , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_destination },
13004   { NULL, 0, 0, NULL }
13005 };
13006
13007 static int
13008 dissect_h245_CommunicationModeTableEntry(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13009   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13010                                 ett_h245_CommunicationModeTableEntry, CommunicationModeTableEntry_sequence);
13011
13012   return offset;
13013 }
13014 static int dissect_communicationModeTable_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13015   return dissect_h245_CommunicationModeTableEntry(tvb, offset, pinfo, tree, hf_h245_communicationModeTable_item);
13016 }
13017
13018
13019 static int
13020 dissect_h245_SET_SIZE_1_256_OF_CommunicationModeTableEntry(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13021   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
13022                                           ett_h245_SET_SIZE_1_256_OF_CommunicationModeTableEntry, dissect_communicationModeTable_item,
13023                                           1, 256);
13024
13025   return offset;
13026 }
13027 static int dissect_communicationModeTable(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13028   return dissect_h245_SET_SIZE_1_256_OF_CommunicationModeTableEntry(tvb, offset, pinfo, tree, hf_h245_communicationModeTable);
13029 }
13030
13031
13032 static const value_string h245_CommunicationModeResponse_vals[] = {
13033   {   0, "communicationModeTable" },
13034   { 0, NULL }
13035 };
13036
13037 static const per_choice_t CommunicationModeResponse_choice[] = {
13038   {   0, "communicationModeTable"      , ASN1_EXTENSION_ROOT    , dissect_communicationModeTable },
13039   { 0, NULL, 0, NULL }
13040 };
13041
13042 static int
13043 dissect_h245_CommunicationModeResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13044   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13045                               ett_h245_CommunicationModeResponse, CommunicationModeResponse_choice, "CommunicationModeResponse",
13046                               NULL);
13047
13048   return offset;
13049 }
13050 static int dissect_communicationModeResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13051   return dissect_h245_CommunicationModeResponse(tvb, offset, pinfo, tree, hf_h245_communicationModeResponse);
13052 }
13053
13054
13055 static int
13056 dissect_h245_TerminalID(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13057   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
13058                                     1, 128,
13059                                     NULL, NULL);
13060
13061   return offset;
13062 }
13063 static int dissect_terminalID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13064   return dissect_h245_TerminalID(tvb, offset, pinfo, tree, hf_h245_terminalID);
13065 }
13066 static int dissect_extensionAddress(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13067   return dissect_h245_TerminalID(tvb, offset, pinfo, tree, hf_h245_extensionAddress);
13068 }
13069
13070 static const per_sequence_t T_mCTerminalIDResponse_sequence[] = {
13071   { "terminalLabel"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalLabel },
13072   { "terminalID"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalID },
13073   { NULL, 0, 0, NULL }
13074 };
13075
13076 static int
13077 dissect_h245_T_mCTerminalIDResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13078   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13079                                 ett_h245_T_mCTerminalIDResponse, T_mCTerminalIDResponse_sequence);
13080
13081   return offset;
13082 }
13083 static int dissect_mCTerminalIDResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13084   return dissect_h245_T_mCTerminalIDResponse(tvb, offset, pinfo, tree, hf_h245_mCTerminalIDResponse);
13085 }
13086
13087 static const per_sequence_t T_terminalIDResponse_sequence[] = {
13088   { "terminalLabel"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalLabel },
13089   { "terminalID"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalID },
13090   { NULL, 0, 0, NULL }
13091 };
13092
13093 static int
13094 dissect_h245_T_terminalIDResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13095   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13096                                 ett_h245_T_terminalIDResponse, T_terminalIDResponse_sequence);
13097
13098   return offset;
13099 }
13100 static int dissect_terminalIDResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13101   return dissect_h245_T_terminalIDResponse(tvb, offset, pinfo, tree, hf_h245_terminalIDResponse);
13102 }
13103
13104
13105 static int
13106 dissect_h245_ConferenceID(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13107   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
13108                                     1, 32,
13109                                     NULL, NULL);
13110
13111   return offset;
13112 }
13113 static int dissect_conferenceID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13114   return dissect_h245_ConferenceID(tvb, offset, pinfo, tree, hf_h245_conferenceID);
13115 }
13116
13117 static const per_sequence_t T_conferenceIDResponse_sequence[] = {
13118   { "terminalLabel"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalLabel },
13119   { "conferenceID"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_conferenceID },
13120   { NULL, 0, 0, NULL }
13121 };
13122
13123 static int
13124 dissect_h245_T_conferenceIDResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13125   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13126                                 ett_h245_T_conferenceIDResponse, T_conferenceIDResponse_sequence);
13127
13128   return offset;
13129 }
13130 static int dissect_conferenceIDResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13131   return dissect_h245_T_conferenceIDResponse(tvb, offset, pinfo, tree, hf_h245_conferenceIDResponse);
13132 }
13133
13134
13135 static int
13136 dissect_h245_Password(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13137   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
13138                                     1, 32,
13139                                     NULL, NULL);
13140
13141   return offset;
13142 }
13143 static int dissect_password(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13144   return dissect_h245_Password(tvb, offset, pinfo, tree, hf_h245_password);
13145 }
13146
13147 static const per_sequence_t T_passwordResponse_sequence[] = {
13148   { "terminalLabel"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalLabel },
13149   { "password"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_password },
13150   { NULL, 0, 0, NULL }
13151 };
13152
13153 static int
13154 dissect_h245_T_passwordResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13155   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13156                                 ett_h245_T_passwordResponse, T_passwordResponse_sequence);
13157
13158   return offset;
13159 }
13160 static int dissect_passwordResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13161   return dissect_h245_T_passwordResponse(tvb, offset, pinfo, tree, hf_h245_passwordResponse);
13162 }
13163
13164
13165 static int
13166 dissect_h245_SET_SIZE_1_256_OF_TerminalLabel(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13167   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
13168                                           ett_h245_SET_SIZE_1_256_OF_TerminalLabel, dissect_terminalListResponse_item,
13169                                           1, 256);
13170
13171   return offset;
13172 }
13173 static int dissect_terminalListResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13174   return dissect_h245_SET_SIZE_1_256_OF_TerminalLabel(tvb, offset, pinfo, tree, hf_h245_terminalListResponse);
13175 }
13176
13177
13178 static const value_string h245_T_makeMeChairResponse_vals[] = {
13179   {   0, "grantedChairToken" },
13180   {   1, "deniedChairToken" },
13181   { 0, NULL }
13182 };
13183
13184 static const per_choice_t T_makeMeChairResponse_choice[] = {
13185   {   0, "grantedChairToken"           , ASN1_EXTENSION_ROOT    , dissect_grantedChairToken },
13186   {   1, "deniedChairToken"            , ASN1_EXTENSION_ROOT    , dissect_deniedChairToken },
13187   { 0, NULL, 0, NULL }
13188 };
13189
13190 static int
13191 dissect_h245_T_makeMeChairResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13192   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13193                               ett_h245_T_makeMeChairResponse, T_makeMeChairResponse_choice, "T_makeMeChairResponse",
13194                               NULL);
13195
13196   return offset;
13197 }
13198 static int dissect_makeMeChairResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13199   return dissect_h245_T_makeMeChairResponse(tvb, offset, pinfo, tree, hf_h245_makeMeChairResponse);
13200 }
13201
13202 static const per_sequence_t T_extensionAddressResponse_sequence[] = {
13203   { "extensionAddress"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_extensionAddress },
13204   { NULL, 0, 0, NULL }
13205 };
13206
13207 static int
13208 dissect_h245_T_extensionAddressResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13209   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13210                                 ett_h245_T_extensionAddressResponse, T_extensionAddressResponse_sequence);
13211
13212   return offset;
13213 }
13214 static int dissect_extensionAddressResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13215   return dissect_h245_T_extensionAddressResponse(tvb, offset, pinfo, tree, hf_h245_extensionAddressResponse);
13216 }
13217
13218 static const per_sequence_t T_chairTokenOwnerResponse_sequence[] = {
13219   { "terminalLabel"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalLabel },
13220   { "terminalID"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalID },
13221   { NULL, 0, 0, NULL }
13222 };
13223
13224 static int
13225 dissect_h245_T_chairTokenOwnerResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13226   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13227                                 ett_h245_T_chairTokenOwnerResponse, T_chairTokenOwnerResponse_sequence);
13228
13229   return offset;
13230 }
13231 static int dissect_chairTokenOwnerResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13232   return dissect_h245_T_chairTokenOwnerResponse(tvb, offset, pinfo, tree, hf_h245_chairTokenOwnerResponse);
13233 }
13234
13235 static const per_sequence_t T_terminalCertificateResponse_sequence[] = {
13236   { "terminalLabel"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_terminalLabel },
13237   { "certificateResponse"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_certificateResponse },
13238   { NULL, 0, 0, NULL }
13239 };
13240
13241 static int
13242 dissect_h245_T_terminalCertificateResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13243   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13244                                 ett_h245_T_terminalCertificateResponse, T_terminalCertificateResponse_sequence);
13245
13246   return offset;
13247 }
13248 static int dissect_terminalCertificateResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13249   return dissect_h245_T_terminalCertificateResponse(tvb, offset, pinfo, tree, hf_h245_terminalCertificateResponse);
13250 }
13251
13252
13253 static const value_string h245_T_broadcastMyLogicalChannelResponse_vals[] = {
13254   {   0, "grantedBroadcastMyLogicalChannel" },
13255   {   1, "deniedBroadcastMyLogicalChannel" },
13256   { 0, NULL }
13257 };
13258
13259 static const per_choice_t T_broadcastMyLogicalChannelResponse_choice[] = {
13260   {   0, "grantedBroadcastMyLogicalChannel", ASN1_EXTENSION_ROOT    , dissect_grantedBroadcastMyLogicalChannel },
13261   {   1, "deniedBroadcastMyLogicalChannel", ASN1_EXTENSION_ROOT    , dissect_deniedBroadcastMyLogicalChannel },
13262   { 0, NULL, 0, NULL }
13263 };
13264
13265 static int
13266 dissect_h245_T_broadcastMyLogicalChannelResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13267   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13268                               ett_h245_T_broadcastMyLogicalChannelResponse, T_broadcastMyLogicalChannelResponse_choice, "T_broadcastMyLogicalChannelResponse",
13269                               NULL);
13270
13271   return offset;
13272 }
13273 static int dissect_broadcastMyLogicalChannelResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13274   return dissect_h245_T_broadcastMyLogicalChannelResponse(tvb, offset, pinfo, tree, hf_h245_broadcastMyLogicalChannelResponse);
13275 }
13276
13277
13278 static const value_string h245_T_makeTerminalBroadcasterResponse_vals[] = {
13279   {   0, "grantedMakeTerminalBroadcaster" },
13280   {   1, "deniedMakeTerminalBroadcaster" },
13281   { 0, NULL }
13282 };
13283
13284 static const per_choice_t T_makeTerminalBroadcasterResponse_choice[] = {
13285   {   0, "grantedMakeTerminalBroadcaster", ASN1_EXTENSION_ROOT    , dissect_grantedMakeTerminalBroadcaster },
13286   {   1, "deniedMakeTerminalBroadcaster", ASN1_EXTENSION_ROOT    , dissect_deniedMakeTerminalBroadcaster },
13287   { 0, NULL, 0, NULL }
13288 };
13289
13290 static int
13291 dissect_h245_T_makeTerminalBroadcasterResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13292   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13293                               ett_h245_T_makeTerminalBroadcasterResponse, T_makeTerminalBroadcasterResponse_choice, "T_makeTerminalBroadcasterResponse",
13294                               NULL);
13295
13296   return offset;
13297 }
13298 static int dissect_makeTerminalBroadcasterResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13299   return dissect_h245_T_makeTerminalBroadcasterResponse(tvb, offset, pinfo, tree, hf_h245_makeTerminalBroadcasterResponse);
13300 }
13301
13302
13303 static const value_string h245_T_sendThisSourceResponse_vals[] = {
13304   {   0, "grantedSendThisSource" },
13305   {   1, "deniedSendThisSource" },
13306   { 0, NULL }
13307 };
13308
13309 static const per_choice_t T_sendThisSourceResponse_choice[] = {
13310   {   0, "grantedSendThisSource"       , ASN1_EXTENSION_ROOT    , dissect_grantedSendThisSource },
13311   {   1, "deniedSendThisSource"        , ASN1_EXTENSION_ROOT    , dissect_deniedSendThisSource },
13312   { 0, NULL, 0, NULL }
13313 };
13314
13315 static int
13316 dissect_h245_T_sendThisSourceResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13317   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13318                               ett_h245_T_sendThisSourceResponse, T_sendThisSourceResponse_choice, "T_sendThisSourceResponse",
13319                               NULL);
13320
13321   return offset;
13322 }
13323 static int dissect_sendThisSourceResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13324   return dissect_h245_T_sendThisSourceResponse(tvb, offset, pinfo, tree, hf_h245_sendThisSourceResponse);
13325 }
13326
13327 static const per_sequence_t TerminalInformation_sequence[] = {
13328   { "terminalLabel"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalLabel },
13329   { "terminalID"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalID },
13330   { NULL, 0, 0, NULL }
13331 };
13332
13333 static int
13334 dissect_h245_TerminalInformation(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13335   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13336                                 ett_h245_TerminalInformation, TerminalInformation_sequence);
13337
13338   return offset;
13339 }
13340 static int dissect_terminalInformation_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13341   return dissect_h245_TerminalInformation(tvb, offset, pinfo, tree, hf_h245_terminalInformation_item);
13342 }
13343
13344
13345 static int
13346 dissect_h245_SEQUNCE_OF_TerminalInformation(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13347   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
13348                                    ett_h245_SEQUNCE_OF_TerminalInformation, dissect_terminalInformation_item);
13349
13350   return offset;
13351 }
13352 static int dissect_terminalInformation(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13353   return dissect_h245_SEQUNCE_OF_TerminalInformation(tvb, offset, pinfo, tree, hf_h245_terminalInformation);
13354 }
13355
13356 static const per_sequence_t RequestAllTerminalIDsResponse_sequence[] = {
13357   { "terminalInformation"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalInformation },
13358   { NULL, 0, 0, NULL }
13359 };
13360
13361 static int
13362 dissect_h245_RequestAllTerminalIDsResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13363   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13364                                 ett_h245_RequestAllTerminalIDsResponse, RequestAllTerminalIDsResponse_sequence);
13365
13366   return offset;
13367 }
13368 static int dissect_requestAllTerminalIDsResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13369   return dissect_h245_RequestAllTerminalIDsResponse(tvb, offset, pinfo, tree, hf_h245_requestAllTerminalIDsResponse);
13370 }
13371
13372
13373 static const value_string h245_T_reject_vals[] = {
13374   {   0, "unspecified" },
13375   {   1, "functionNotSupported" },
13376   { 0, NULL }
13377 };
13378
13379 static const per_choice_t T_reject_choice[] = {
13380   {   0, "unspecified"                 , ASN1_EXTENSION_ROOT    , dissect_unspecified },
13381   {   1, "functionNotSupported"        , ASN1_EXTENSION_ROOT    , dissect_functionNotSupportedFlag },
13382   { 0, NULL, 0, NULL }
13383 };
13384
13385 static int
13386 dissect_h245_T_reject(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13387   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13388                               ett_h245_T_reject, T_reject_choice, "T_reject",
13389                               NULL);
13390
13391   return offset;
13392 }
13393 static int dissect_reject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13394   return dissect_h245_T_reject(tvb, offset, pinfo, tree, hf_h245_reject);
13395 }
13396
13397
13398 static const value_string h245_RemoteMCResponse_vals[] = {
13399   {   0, "accept" },
13400   {   1, "reject" },
13401   { 0, NULL }
13402 };
13403
13404 static const per_choice_t RemoteMCResponse_choice[] = {
13405   {   0, "accept"                      , ASN1_EXTENSION_ROOT    , dissect_accept },
13406   {   1, "reject"                      , ASN1_EXTENSION_ROOT    , dissect_reject },
13407   { 0, NULL, 0, NULL }
13408 };
13409
13410 static int
13411 dissect_h245_RemoteMCResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13412   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13413                               ett_h245_RemoteMCResponse, RemoteMCResponse_choice, "RemoteMCResponse",
13414                               NULL);
13415
13416   return offset;
13417 }
13418 static int dissect_remoteMCResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13419   return dissect_h245_RemoteMCResponse(tvb, offset, pinfo, tree, hf_h245_remoteMCResponse);
13420 }
13421
13422
13423 static const value_string h245_ConferenceResponse_vals[] = {
13424   {   0, "mCTerminalIDResponse" },
13425   {   1, "terminalIDResponse" },
13426   {   2, "conferenceIDResponse" },
13427   {   3, "passwordResponse" },
13428   {   4, "terminalListResponse" },
13429   {   5, "videoCommandReject" },
13430   {   6, "terminalDropReject" },
13431   {   7, "makeMeChairResponse" },
13432   {   8, "extensionAddressResponse" },
13433   {   9, "chairTokenOwnerResponse" },
13434   {  10, "terminalCertificateResponse" },
13435   {  11, "broadcastMyLogicalChannelResponse" },
13436   {  12, "makeTerminalBroadcasterResponse" },
13437   {  13, "sendThisSourceResponse" },
13438   {  14, "requestAllTerminalIDsResponse" },
13439   {  15, "remoteMCResponse" },
13440   { 0, NULL }
13441 };
13442
13443 static const per_choice_t ConferenceResponse_choice[] = {
13444   {   0, "mCTerminalIDResponse"        , ASN1_EXTENSION_ROOT    , dissect_mCTerminalIDResponse },
13445   {   1, "terminalIDResponse"          , ASN1_EXTENSION_ROOT    , dissect_terminalIDResponse },
13446   {   2, "conferenceIDResponse"        , ASN1_EXTENSION_ROOT    , dissect_conferenceIDResponse },
13447   {   3, "passwordResponse"            , ASN1_EXTENSION_ROOT    , dissect_passwordResponse },
13448   {   4, "terminalListResponse"        , ASN1_EXTENSION_ROOT    , dissect_terminalListResponse },
13449   {   5, "videoCommandReject"          , ASN1_EXTENSION_ROOT    , dissect_videoCommandReject },
13450   {   6, "terminalDropReject"          , ASN1_EXTENSION_ROOT    , dissect_terminalDropReject },
13451   {   7, "makeMeChairResponse"         , ASN1_EXTENSION_ROOT    , dissect_makeMeChairResponse },
13452   {   8, "extensionAddressResponse"    , ASN1_NOT_EXTENSION_ROOT, dissect_extensionAddressResponse },
13453   {   9, "chairTokenOwnerResponse"     , ASN1_NOT_EXTENSION_ROOT, dissect_chairTokenOwnerResponse },
13454   {  10, "terminalCertificateResponse" , ASN1_NOT_EXTENSION_ROOT, dissect_terminalCertificateResponse },
13455   {  11, "broadcastMyLogicalChannelResponse", ASN1_NOT_EXTENSION_ROOT, dissect_broadcastMyLogicalChannelResponse },
13456   {  12, "makeTerminalBroadcasterResponse", ASN1_NOT_EXTENSION_ROOT, dissect_makeTerminalBroadcasterResponse },
13457   {  13, "sendThisSourceResponse"      , ASN1_NOT_EXTENSION_ROOT, dissect_sendThisSourceResponse },
13458   {  14, "requestAllTerminalIDsResponse", ASN1_NOT_EXTENSION_ROOT, dissect_requestAllTerminalIDsResponse },
13459   {  15, "remoteMCResponse"            , ASN1_NOT_EXTENSION_ROOT, dissect_remoteMCResponse },
13460   { 0, NULL, 0, NULL }
13461 };
13462
13463 static int
13464 dissect_h245_ConferenceResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13465   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13466                               ett_h245_ConferenceResponse, ConferenceResponse_choice, "ConferenceResponse",
13467                               NULL);
13468
13469   return offset;
13470 }
13471 static int dissect_conferenceResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13472   return dissect_h245_ConferenceResponse(tvb, offset, pinfo, tree, hf_h245_conferenceResponse);
13473 }
13474
13475 static const per_sequence_t CallInformationResp_sequence[] = {
13476   { "dialingInformation"          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_dialingInformation },
13477   { "callAssociationNumber"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_callAssociationNumber },
13478   { NULL, 0, 0, NULL }
13479 };
13480
13481 static int
13482 dissect_h245_CallInformationResp(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13483   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13484                                 ett_h245_CallInformationResp, CallInformationResp_sequence);
13485
13486   return offset;
13487 }
13488 static int dissect_callInformationResp(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13489   return dissect_h245_CallInformationResp(tvb, offset, pinfo, tree, hf_h245_callInformationResp);
13490 }
13491
13492
13493 static const value_string h245_T_rejected_vals[] = {
13494   {   0, "connectionsNotAvailable" },
13495   {   1, "userRejected" },
13496   { 0, NULL }
13497 };
13498
13499 static const per_choice_t T_rejected_choice[] = {
13500   {   0, "connectionsNotAvailable"     , ASN1_EXTENSION_ROOT    , dissect_connectionsNotAvailable },
13501   {   1, "userRejected"                , ASN1_EXTENSION_ROOT    , dissect_userRejected },
13502   { 0, NULL, 0, NULL }
13503 };
13504
13505 static int
13506 dissect_h245_T_rejected(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13507   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13508                               ett_h245_T_rejected, T_rejected_choice, "T_rejected",
13509                               NULL);
13510
13511   return offset;
13512 }
13513 static int dissect_rejected(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13514   return dissect_h245_T_rejected(tvb, offset, pinfo, tree, hf_h245_rejected);
13515 }
13516
13517
13518 static const value_string h245_T_responseCode_vals[] = {
13519   {   0, "accepted" },
13520   {   1, "rejected" },
13521   { 0, NULL }
13522 };
13523
13524 static const per_choice_t T_responseCode_choice[] = {
13525   {   0, "accepted"                    , ASN1_EXTENSION_ROOT    , dissect_accepted },
13526   {   1, "rejected"                    , ASN1_EXTENSION_ROOT    , dissect_rejected },
13527   { 0, NULL, 0, NULL }
13528 };
13529
13530 static int
13531 dissect_h245_T_responseCode(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13532   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13533                               ett_h245_T_responseCode, T_responseCode_choice, "T_responseCode",
13534                               NULL);
13535
13536   return offset;
13537 }
13538 static int dissect_responseCode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13539   return dissect_h245_T_responseCode(tvb, offset, pinfo, tree, hf_h245_responseCode);
13540 }
13541
13542 static const per_sequence_t AddConnectionResp_sequence[] = {
13543   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
13544   { "responseCode"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_responseCode },
13545   { NULL, 0, 0, NULL }
13546 };
13547
13548 static int
13549 dissect_h245_AddConnectionResp(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13550   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13551                                 ett_h245_AddConnectionResp, AddConnectionResp_sequence);
13552
13553   return offset;
13554 }
13555 static int dissect_addConnectionResp(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13556   return dissect_h245_AddConnectionResp(tvb, offset, pinfo, tree, hf_h245_addConnectionResp);
13557 }
13558
13559
13560 static int
13561 dissect_h245_RemoveConnectionResp(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13562   offset = dissect_h245_RemoveConnection(tvb, offset, pinfo, tree, hf_index);
13563
13564   return offset;
13565 }
13566 static int dissect_removeConnectionResp(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13567   return dissect_h245_RemoveConnectionResp(tvb, offset, pinfo, tree, hf_h245_removeConnectionResp);
13568 }
13569
13570 static const per_sequence_t MaximumHeaderIntervalResp_sequence[] = {
13571   { "currentInterval"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_currentInterval },
13572   { NULL, 0, 0, NULL }
13573 };
13574
13575 static int
13576 dissect_h245_MaximumHeaderIntervalResp(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13577   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13578                                 ett_h245_MaximumHeaderIntervalResp, MaximumHeaderIntervalResp_sequence);
13579
13580   return offset;
13581 }
13582 static int dissect_maximumHeaderIntervalResp(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13583   return dissect_h245_MaximumHeaderIntervalResp(tvb, offset, pinfo, tree, hf_h245_maximumHeaderIntervalResp);
13584 }
13585
13586
13587 static const value_string h245_MultilinkResponse_vals[] = {
13588   {   0, "nonStandard" },
13589   {   1, "callInformation" },
13590   {   2, "addConnection" },
13591   {   3, "removeConnection" },
13592   {   4, "maximumHeaderInterval" },
13593   { 0, NULL }
13594 };
13595
13596 static const per_choice_t MultilinkResponse_choice[] = {
13597   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandardMsg },
13598   {   1, "callInformation"             , ASN1_EXTENSION_ROOT    , dissect_callInformationResp },
13599   {   2, "addConnection"               , ASN1_EXTENSION_ROOT    , dissect_addConnectionResp },
13600   {   3, "removeConnection"            , ASN1_EXTENSION_ROOT    , dissect_removeConnectionResp },
13601   {   4, "maximumHeaderInterval"       , ASN1_EXTENSION_ROOT    , dissect_maximumHeaderIntervalResp },
13602   { 0, NULL, 0, NULL }
13603 };
13604
13605 static int
13606 dissect_h245_MultilinkResponse(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13607   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13608                               ett_h245_MultilinkResponse, MultilinkResponse_choice, "MultilinkResponse",
13609                               NULL);
13610
13611   return offset;
13612 }
13613 static int dissect_multilinkResponse(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13614   return dissect_h245_MultilinkResponse(tvb, offset, pinfo, tree, hf_h245_multilinkResponse);
13615 }
13616
13617 static const per_sequence_t LogicalChannelRateAcknowledge_sequence[] = {
13618   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
13619   { "logicalChannelNumber"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_logicalChannelNumber },
13620   { "maximumBitRate"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumBitRate },
13621   { NULL, 0, 0, NULL }
13622 };
13623
13624 static int
13625 dissect_h245_LogicalChannelRateAcknowledge(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13626   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13627                                 ett_h245_LogicalChannelRateAcknowledge, LogicalChannelRateAcknowledge_sequence);
13628
13629   return offset;
13630 }
13631 static int dissect_logicalChannelRateAcknowledge(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13632   return dissect_h245_LogicalChannelRateAcknowledge(tvb, offset, pinfo, tree, hf_h245_logicalChannelRateAcknowledge);
13633 }
13634
13635
13636 static const value_string h245_LogicalChannelRateRejectReason_vals[] = {
13637   {   0, "undefinedReason" },
13638   {   1, "insufficientResources" },
13639   { 0, NULL }
13640 };
13641
13642 static const per_choice_t LogicalChannelRateRejectReason_choice[] = {
13643   {   0, "undefinedReason"             , ASN1_EXTENSION_ROOT    , dissect_undefinedReason },
13644   {   1, "insufficientResources"       , ASN1_EXTENSION_ROOT    , dissect_insufficientResources },
13645   { 0, NULL, 0, NULL }
13646 };
13647
13648 static int
13649 dissect_h245_LogicalChannelRateRejectReason(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13650   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13651                               ett_h245_LogicalChannelRateRejectReason, LogicalChannelRateRejectReason_choice, "LogicalChannelRateRejectReason",
13652                               NULL);
13653
13654   return offset;
13655 }
13656 static int dissect_rejectReason(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13657   return dissect_h245_LogicalChannelRateRejectReason(tvb, offset, pinfo, tree, hf_h245_rejectReason);
13658 }
13659
13660 static const per_sequence_t LogicalChannelRateReject_sequence[] = {
13661   { "sequenceNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
13662   { "logicalChannelNumber"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_logicalChannelNumber },
13663   { "rejectReason"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rejectReason },
13664   { "currentMaximumBitRate"       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_currentMaximumBitRate },
13665   { NULL, 0, 0, NULL }
13666 };
13667
13668 static int
13669 dissect_h245_LogicalChannelRateReject(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13670   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13671                                 ett_h245_LogicalChannelRateReject, LogicalChannelRateReject_sequence);
13672
13673   return offset;
13674 }
13675 static int dissect_logicalChannelRateReject(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13676   return dissect_h245_LogicalChannelRateReject(tvb, offset, pinfo, tree, hf_h245_logicalChannelRateReject);
13677 }
13678
13679
13680 static const value_string h245_ResponseMessage_vals[] = {
13681   {   0, "nonStandard" },
13682   {   1, "masterSlaveDeterminationAck" },
13683   {   2, "masterSlaveDeterminationReject" },
13684   {   3, "terminalCapabilitySetAck" },
13685   {   4, "terminalCapabilitySetReject" },
13686   {   5, "openLogicalChannelAck" },
13687   {   6, "openLogicalChannelReject" },
13688   {   7, "closeLogicalChannelAck" },
13689   {   8, "requestChannelCloseAck" },
13690   {   9, "requestChannelCloseReject" },
13691   {  10, "multiplexEntrySendAck" },
13692   {  11, "multiplexEntrySendReject" },
13693   {  12, "requestMultiplexEntryAck" },
13694   {  13, "requestMultiplexEntryReject" },
13695   {  14, "requestModeAck" },
13696   {  15, "requestModeReject" },
13697   {  16, "roundTripDelayResponse" },
13698   {  17, "maintenanceLoopAck" },
13699   {  18, "maintenanceLoopReject" },
13700   {  19, "communicationModeResponse" },
13701   {  20, "conferenceResponse" },
13702   {  21, "multilinkResponse" },
13703   {  22, "logicalChannelRateAcknowledge" },
13704   {  23, "logicalChannelRateReject" },
13705   {  24, "genericResponse" },
13706   { 0, NULL }
13707 };
13708
13709 static const per_choice_t ResponseMessage_choice[] = {
13710   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandardMsg },
13711   {   1, "masterSlaveDeterminationAck" , ASN1_EXTENSION_ROOT    , dissect_masterSlaveDeterminationAck },
13712   {   2, "masterSlaveDeterminationReject", ASN1_EXTENSION_ROOT    , dissect_masterSlaveDeterminationReject },
13713   {   3, "terminalCapabilitySetAck"    , ASN1_EXTENSION_ROOT    , dissect_terminalCapabilitySetAck },
13714   {   4, "terminalCapabilitySetReject" , ASN1_EXTENSION_ROOT    , dissect_terminalCapabilitySetReject },
13715   {   5, "openLogicalChannelAck"       , ASN1_EXTENSION_ROOT    , dissect_openLogicalChannelAck },
13716   {   6, "openLogicalChannelReject"    , ASN1_EXTENSION_ROOT    , dissect_openLogicalChannelReject },
13717   {   7, "closeLogicalChannelAck"      , ASN1_EXTENSION_ROOT    , dissect_closeLogicalChannelAck },
13718   {   8, "requestChannelCloseAck"      , ASN1_EXTENSION_ROOT    , dissect_requestChannelCloseAck },
13719   {   9, "requestChannelCloseReject"   , ASN1_EXTENSION_ROOT    , dissect_requestChannelCloseReject },
13720   {  10, "multiplexEntrySendAck"       , ASN1_EXTENSION_ROOT    , dissect_multiplexEntrySendAck },
13721   {  11, "multiplexEntrySendReject"    , ASN1_EXTENSION_ROOT    , dissect_multiplexEntrySendReject },
13722   {  12, "requestMultiplexEntryAck"    , ASN1_EXTENSION_ROOT    , dissect_requestMultiplexEntryAck },
13723   {  13, "requestMultiplexEntryReject" , ASN1_EXTENSION_ROOT    , dissect_requestMultiplexEntryReject },
13724   {  14, "requestModeAck"              , ASN1_EXTENSION_ROOT    , dissect_requestModeAck },
13725   {  15, "requestModeReject"           , ASN1_EXTENSION_ROOT    , dissect_requestModeReject },
13726   {  16, "roundTripDelayResponse"      , ASN1_EXTENSION_ROOT    , dissect_roundTripDelayResponse },
13727   {  17, "maintenanceLoopAck"          , ASN1_EXTENSION_ROOT    , dissect_maintenanceLoopAck },
13728   {  18, "maintenanceLoopReject"       , ASN1_EXTENSION_ROOT    , dissect_maintenanceLoopReject },
13729   {  19, "communicationModeResponse"   , ASN1_NOT_EXTENSION_ROOT, dissect_communicationModeResponse },
13730   {  20, "conferenceResponse"          , ASN1_NOT_EXTENSION_ROOT, dissect_conferenceResponse },
13731   {  21, "multilinkResponse"           , ASN1_NOT_EXTENSION_ROOT, dissect_multilinkResponse },
13732   {  22, "logicalChannelRateAcknowledge", ASN1_NOT_EXTENSION_ROOT, dissect_logicalChannelRateAcknowledge },
13733   {  23, "logicalChannelRateReject"    , ASN1_NOT_EXTENSION_ROOT, dissect_logicalChannelRateReject },
13734   {  24, "genericResponse"             , ASN1_NOT_EXTENSION_ROOT, dissect_genericResponse },
13735   { 0, NULL, 0, NULL }
13736 };
13737
13738 static int
13739 dissect_h245_ResponseMessage(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13740   guint32 value;
13741   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13742                               ett_h245_ResponseMessage, ResponseMessage_choice, "ResponseMessage",
13743                               &value);
13744
13745
13746         if (check_col(pinfo->cinfo, COL_INFO)){
13747                 if ( h245_shorttypes == TRUE )
13748                 {
13749                         col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
13750                                 val_to_str(value, h245_ResponseMessage_short_vals, "<unknown>"));
13751                 }
13752                 else
13753                 {
13754                         col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
13755                                 val_to_str(value, h245_ResponseMessage_vals, "<unknown>"));
13756                 }
13757         }
13758
13759         col_set_fence(pinfo->cinfo,COL_INFO);
13760
13761   return offset;
13762 }
13763 static int dissect_response(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13764   return dissect_h245_ResponseMessage(tvb, offset, pinfo, tree, hf_h245_response);
13765 }
13766
13767 static const per_sequence_t MaintenanceLoopOffCommand_sequence[] = {
13768   { NULL, 0, 0, NULL }
13769 };
13770
13771 static int
13772 dissect_h245_MaintenanceLoopOffCommand(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13773   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13774                                 ett_h245_MaintenanceLoopOffCommand, MaintenanceLoopOffCommand_sequence);
13775
13776   return offset;
13777 }
13778 static int dissect_maintenanceLoopOffCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13779   return dissect_h245_MaintenanceLoopOffCommand(tvb, offset, pinfo, tree, hf_h245_maintenanceLoopOffCommand);
13780 }
13781
13782
13783 static int
13784 dissect_h245_SET_SIZE_1_65535_OF_CapabilityTableEntryNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13785   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
13786                                           ett_h245_SET_SIZE_1_65535_OF_CapabilityTableEntryNumber, dissect_capabilityTableEntryNumbers_item,
13787                                           1, 65535);
13788
13789   return offset;
13790 }
13791 static int dissect_capabilityTableEntryNumbers(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13792   return dissect_h245_SET_SIZE_1_65535_OF_CapabilityTableEntryNumber(tvb, offset, pinfo, tree, hf_h245_capabilityTableEntryNumbers);
13793 }
13794
13795
13796 static int
13797 dissect_h245_SET_SIZE_1_256_OF_CapabilityDescriptorNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13798   offset = dissect_per_constrained_set_of(tvb, offset, pinfo, tree, hf_index,
13799                                           ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptorNumber, dissect_capabilityDescriptorNumbers_item,
13800                                           1, 256);
13801
13802   return offset;
13803 }
13804 static int dissect_capabilityDescriptorNumbers(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13805   return dissect_h245_SET_SIZE_1_256_OF_CapabilityDescriptorNumber(tvb, offset, pinfo, tree, hf_h245_capabilityDescriptorNumbers);
13806 }
13807
13808 static const per_sequence_t T_specificRequest_sequence[] = {
13809   { "multiplexCapability"         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multiplexCapabilityBool },
13810   { "capabilityTableEntryNumbers" , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_capabilityTableEntryNumbers },
13811   { "capabilityDescriptorNumbers" , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_capabilityDescriptorNumbers },
13812   { NULL, 0, 0, NULL }
13813 };
13814
13815 static int
13816 dissect_h245_T_specificRequest(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13817   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13818                                 ett_h245_T_specificRequest, T_specificRequest_sequence);
13819
13820   return offset;
13821 }
13822 static int dissect_specificRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13823   return dissect_h245_T_specificRequest(tvb, offset, pinfo, tree, hf_h245_specificRequest);
13824 }
13825
13826
13827 static const value_string h245_SendTerminalCapabilitySet_vals[] = {
13828   {   0, "specificRequest" },
13829   {   1, "genericRequest" },
13830   { 0, NULL }
13831 };
13832
13833 static const per_choice_t SendTerminalCapabilitySet_choice[] = {
13834   {   0, "specificRequest"             , ASN1_EXTENSION_ROOT    , dissect_specificRequest },
13835   {   1, "genericRequest"              , ASN1_EXTENSION_ROOT    , dissect_genericRequestFlag },
13836   { 0, NULL, 0, NULL }
13837 };
13838
13839 static int
13840 dissect_h245_SendTerminalCapabilitySet(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13841   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13842                               ett_h245_SendTerminalCapabilitySet, SendTerminalCapabilitySet_choice, "SendTerminalCapabilitySet",
13843                               NULL);
13844
13845   return offset;
13846 }
13847 static int dissect_sendTerminalCapabilitySet(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13848   return dissect_h245_SendTerminalCapabilitySet(tvb, offset, pinfo, tree, hf_h245_sendTerminalCapabilitySet);
13849 }
13850
13851 static const per_sequence_t T_encryptionAlgorithmID_sequence[] = {
13852   { "h233AlgorithmIdentifier"     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h233AlgorithmIdentifier },
13853   { "associatedAlgorithm"         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_associatedAlgorithm },
13854   { NULL, 0, 0, NULL }
13855 };
13856
13857 static int
13858 dissect_h245_T_encryptionAlgorithmID(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13859   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13860                                 ett_h245_T_encryptionAlgorithmID, T_encryptionAlgorithmID_sequence);
13861
13862   return offset;
13863 }
13864 static int dissect_encryptionAlgorithmID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13865   return dissect_h245_T_encryptionAlgorithmID(tvb, offset, pinfo, tree, hf_h245_encryptionAlgorithmID);
13866 }
13867
13868
13869 static const value_string h245_EncryptionCommand_vals[] = {
13870   {   0, "encryptionSE" },
13871   {   1, "encryptionIVRequest" },
13872   {   2, "encryptionAlgorithmID" },
13873   { 0, NULL }
13874 };
13875
13876 static const per_choice_t EncryptionCommand_choice[] = {
13877   {   0, "encryptionSE"                , ASN1_EXTENSION_ROOT    , dissect_encryptionSE },
13878   {   1, "encryptionIVRequest"         , ASN1_EXTENSION_ROOT    , dissect_encryptionIVRequest },
13879   {   2, "encryptionAlgorithmID"       , ASN1_EXTENSION_ROOT    , dissect_encryptionAlgorithmID },
13880   { 0, NULL, 0, NULL }
13881 };
13882
13883 static int
13884 dissect_h245_EncryptionCommand(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13885   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13886                               ett_h245_EncryptionCommand, EncryptionCommand_choice, "EncryptionCommand",
13887                               NULL);
13888
13889   return offset;
13890 }
13891 static int dissect_encryptionCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13892   return dissect_h245_EncryptionCommand(tvb, offset, pinfo, tree, hf_h245_encryptionCommand);
13893 }
13894
13895
13896 static const value_string h245_Scope_vals[] = {
13897   {   0, "logicalChannelNumber" },
13898   {   1, "resourceID" },
13899   {   2, "wholeMultiplex" },
13900   { 0, NULL }
13901 };
13902
13903 static const per_choice_t Scope_choice[] = {
13904   {   0, "logicalChannelNumber"        , ASN1_NO_EXTENSIONS     , dissect_logicalChannelNumber },
13905   {   1, "resourceID"                  , ASN1_NO_EXTENSIONS     , dissect_resourceID },
13906   {   2, "wholeMultiplex"              , ASN1_NO_EXTENSIONS     , dissect_wholeMultiplex },
13907   { 0, NULL, 0, NULL }
13908 };
13909
13910 static int
13911 dissect_h245_Scope(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13912   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13913                               ett_h245_Scope, Scope_choice, "Scope",
13914                               NULL);
13915
13916   return offset;
13917 }
13918 static int dissect_scope(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13919   return dissect_h245_Scope(tvb, offset, pinfo, tree, hf_h245_scope);
13920 }
13921
13922
13923 static const value_string h245_Restriction_vals[] = {
13924   {   0, "maximumBitRate" },
13925   {   1, "noRestriction" },
13926   { 0, NULL }
13927 };
13928
13929 static const per_choice_t Restriction_choice[] = {
13930   {   0, "maximumBitRate"              , ASN1_NO_EXTENSIONS     , dissect_Res_maximumBitRate },
13931   {   1, "noRestriction"               , ASN1_NO_EXTENSIONS     , dissect_noRestriction },
13932   { 0, NULL, 0, NULL }
13933 };
13934
13935 static int
13936 dissect_h245_Restriction(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13937   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13938                               ett_h245_Restriction, Restriction_choice, "Restriction",
13939                               NULL);
13940
13941   return offset;
13942 }
13943 static int dissect_restriction(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13944   return dissect_h245_Restriction(tvb, offset, pinfo, tree, hf_h245_restriction);
13945 }
13946
13947 static const per_sequence_t FlowControlCommand_sequence[] = {
13948   { "scope"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_scope },
13949   { "restriction"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_restriction },
13950   { NULL, 0, 0, NULL }
13951 };
13952
13953 static int
13954 dissect_h245_FlowControlCommand(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13955   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
13956                                 ett_h245_FlowControlCommand, FlowControlCommand_sequence);
13957
13958   return offset;
13959 }
13960 static int dissect_flowControlCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13961   return dissect_h245_FlowControlCommand(tvb, offset, pinfo, tree, hf_h245_flowControlCommand);
13962 }
13963
13964
13965 static const value_string h245_T_gstnOptions_vals[] = {
13966   {   0, "telephonyMode" },
13967   {   1, "v8bis" },
13968   {   2, "v34DSVD" },
13969   {   3, "v34DuplexFAX" },
13970   {   4, "v34H324" },
13971   { 0, NULL }
13972 };
13973
13974 static const per_choice_t T_gstnOptions_choice[] = {
13975   {   0, "telephonyMode"               , ASN1_EXTENSION_ROOT    , dissect_telephonyMode },
13976   {   1, "v8bis"                       , ASN1_EXTENSION_ROOT    , dissect_v8bis },
13977   {   2, "v34DSVD"                     , ASN1_EXTENSION_ROOT    , dissect_v34DSVD },
13978   {   3, "v34DuplexFAX"                , ASN1_EXTENSION_ROOT    , dissect_v34DuplexFAX },
13979   {   4, "v34H324"                     , ASN1_EXTENSION_ROOT    , dissect_v34H324 },
13980   { 0, NULL, 0, NULL }
13981 };
13982
13983 static int
13984 dissect_h245_T_gstnOptions(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
13985   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
13986                               ett_h245_T_gstnOptions, T_gstnOptions_choice, "T_gstnOptions",
13987                               NULL);
13988
13989   return offset;
13990 }
13991 static int dissect_gstnOptions(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
13992   return dissect_h245_T_gstnOptions(tvb, offset, pinfo, tree, hf_h245_gstnOptions);
13993 }
13994
13995
13996 static const value_string h245_T_isdnOptions_vals[] = {
13997   {   0, "telephonyMode" },
13998   {   1, "v140" },
13999   {   2, "terminalOnHold" },
14000   { 0, NULL }
14001 };
14002
14003 static const per_choice_t T_isdnOptions_choice[] = {
14004   {   0, "telephonyMode"               , ASN1_EXTENSION_ROOT    , dissect_telephonyMode },
14005   {   1, "v140"                        , ASN1_EXTENSION_ROOT    , dissect_v140 },
14006   {   2, "terminalOnHold"              , ASN1_EXTENSION_ROOT    , dissect_terminalOnHold },
14007   { 0, NULL, 0, NULL }
14008 };
14009
14010 static int
14011 dissect_h245_T_isdnOptions(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14012   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14013                               ett_h245_T_isdnOptions, T_isdnOptions_choice, "T_isdnOptions",
14014                               NULL);
14015
14016   return offset;
14017 }
14018 static int dissect_isdnOptions(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14019   return dissect_h245_T_isdnOptions(tvb, offset, pinfo, tree, hf_h245_isdnOptions);
14020 }
14021
14022
14023 static const value_string h245_EndSessionCommand_vals[] = {
14024   {   0, "nonStandard" },
14025   {   1, "disconnect" },
14026   {   2, "gstnOptions" },
14027   {   3, "isdnOptions" },
14028   { 0, NULL }
14029 };
14030
14031 static const per_choice_t EndSessionCommand_choice[] = {
14032   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
14033   {   1, "disconnect"                  , ASN1_EXTENSION_ROOT    , dissect_disconnect },
14034   {   2, "gstnOptions"                 , ASN1_EXTENSION_ROOT    , dissect_gstnOptions },
14035   {   3, "isdnOptions"                 , ASN1_NOT_EXTENSION_ROOT, dissect_isdnOptions },
14036   { 0, NULL, 0, NULL }
14037 };
14038
14039 static int
14040 dissect_h245_EndSessionCommand(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14041   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14042                               ett_h245_EndSessionCommand, EndSessionCommand_choice, "EndSessionCommand",
14043                               NULL);
14044
14045   return offset;
14046 }
14047 static int dissect_endSessionCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14048   return dissect_h245_EndSessionCommand(tvb, offset, pinfo, tree, hf_h245_endSessionCommand);
14049 }
14050
14051
14052
14053 static int
14054 dissect_h245_INTEGER_0_17(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14055   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
14056                                            0U, 17U, NULL, NULL, FALSE);
14057
14058   return offset;
14059 }
14060 static int dissect_firstGOB(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14061   return dissect_h245_INTEGER_0_17(tvb, offset, pinfo, tree, hf_h245_firstGOB);
14062 }
14063
14064
14065
14066 static int
14067 dissect_h245_INTEGER_1_18(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14068   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
14069                                            1U, 18U, NULL, NULL, FALSE);
14070
14071   return offset;
14072 }
14073 static int dissect_numberOfGOBs(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14074   return dissect_h245_INTEGER_1_18(tvb, offset, pinfo, tree, hf_h245_numberOfGOBs);
14075 }
14076
14077 static const per_sequence_t T_videoFastUpdateGOB_sequence[] = {
14078   { "firstGOB"                    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_firstGOB },
14079   { "numberOfGOBs"                , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_numberOfGOBs },
14080   { NULL, 0, 0, NULL }
14081 };
14082
14083 static int
14084 dissect_h245_T_videoFastUpdateGOB(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14085   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14086                                 ett_h245_T_videoFastUpdateGOB, T_videoFastUpdateGOB_sequence);
14087
14088   return offset;
14089 }
14090 static int dissect_videoFastUpdateGOB(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14091   return dissect_h245_T_videoFastUpdateGOB(tvb, offset, pinfo, tree, hf_h245_videoFastUpdateGOB);
14092 }
14093
14094
14095
14096 static int
14097 dissect_h245_INTEGER_0_31(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14098   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
14099                                            0U, 31U, NULL, NULL, FALSE);
14100
14101   return offset;
14102 }
14103 static int dissect_videoTemporalSpatialTradeOff(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14104   return dissect_h245_INTEGER_0_31(tvb, offset, pinfo, tree, hf_h245_videoTemporalSpatialTradeOff);
14105 }
14106
14107
14108
14109 static int
14110 dissect_h245_INTEGER_1_8192(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14111   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
14112                                            1U, 8192U, NULL, NULL, FALSE);
14113
14114   return offset;
14115 }
14116 static int dissect_firstMB_1_8192(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14117   return dissect_h245_INTEGER_1_8192(tvb, offset, pinfo, tree, hf_h245_firstMB_1_8192);
14118 }
14119 static int dissect_numberOfMBs(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14120   return dissect_h245_INTEGER_1_8192(tvb, offset, pinfo, tree, hf_h245_numberOfMBs);
14121 }
14122
14123 static const per_sequence_t T_videoFastUpdateMB_sequence[] = {
14124   { "firstGOB"                    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_firstGOB_0_255 },
14125   { "firstMB"                     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_firstMB_1_8192 },
14126   { "numberOfMBs"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_numberOfMBs },
14127   { NULL, 0, 0, NULL }
14128 };
14129
14130 static int
14131 dissect_h245_T_videoFastUpdateMB(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14132   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14133                                 ett_h245_T_videoFastUpdateMB, T_videoFastUpdateMB_sequence);
14134
14135   return offset;
14136 }
14137 static int dissect_videoFastUpdateMB(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14138   return dissect_h245_T_videoFastUpdateMB(tvb, offset, pinfo, tree, hf_h245_videoFastUpdateMB);
14139 }
14140
14141 static const per_sequence_t KeyProtectionMethod_sequence[] = {
14142   { "secureChannel"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_secureChannel },
14143   { "sharedSecret"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sharedSecret },
14144   { "certProtectedKey"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_certProtectedKey },
14145   { NULL, 0, 0, NULL }
14146 };
14147
14148 static int
14149 dissect_h245_KeyProtectionMethod(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14150   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14151                                 ett_h245_KeyProtectionMethod, KeyProtectionMethod_sequence);
14152
14153   return offset;
14154 }
14155 static int dissect_keyProtectionMethod(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14156   return dissect_h245_KeyProtectionMethod(tvb, offset, pinfo, tree, hf_h245_keyProtectionMethod);
14157 }
14158
14159 static const per_sequence_t EncryptionUpdateRequest_sequence[] = {
14160   { "keyProtectionMethod"         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_keyProtectionMethod },
14161   { "synchFlag"                   , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_synchFlag },
14162   { NULL, 0, 0, NULL }
14163 };
14164
14165 static int
14166 dissect_h245_EncryptionUpdateRequest(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14167   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14168                                 ett_h245_EncryptionUpdateRequest, EncryptionUpdateRequest_sequence);
14169
14170   return offset;
14171 }
14172 static int dissect_encryptionUpdateRequest(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14173   return dissect_h245_EncryptionUpdateRequest(tvb, offset, pinfo, tree, hf_h245_encryptionUpdateRequest);
14174 }
14175
14176
14177 static const value_string h245_RepeatCount_vals[] = {
14178   {   0, "doOneProgression" },
14179   {   1, "doContinuousProgressions" },
14180   {   2, "doOneIndependentProgression" },
14181   {   3, "doContinuousIndependentProgressions" },
14182   { 0, NULL }
14183 };
14184
14185 static const per_choice_t RepeatCount_choice[] = {
14186   {   0, "doOneProgression"            , ASN1_EXTENSION_ROOT    , dissect_doOneProgression },
14187   {   1, "doContinuousProgressions"    , ASN1_EXTENSION_ROOT    , dissect_doContinuousProgressions },
14188   {   2, "doOneIndependentProgression" , ASN1_EXTENSION_ROOT    , dissect_doOneIndependentProgression },
14189   {   3, "doContinuousIndependentProgressions", ASN1_EXTENSION_ROOT    , dissect_doContinuousIndependentProgressions },
14190   { 0, NULL, 0, NULL }
14191 };
14192
14193 static int
14194 dissect_h245_RepeatCount(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14195   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14196                               ett_h245_RepeatCount, RepeatCount_choice, "RepeatCount",
14197                               NULL);
14198
14199   return offset;
14200 }
14201 static int dissect_repeatCount(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14202   return dissect_h245_RepeatCount(tvb, offset, pinfo, tree, hf_h245_repeatCount);
14203 }
14204
14205 static const per_sequence_t T_progressiveRefinementStart_sequence[] = {
14206   { "repeatCount"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_repeatCount },
14207   { NULL, 0, 0, NULL }
14208 };
14209
14210 static int
14211 dissect_h245_T_progressiveRefinementStart(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14212   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14213                                 ett_h245_T_progressiveRefinementStart, T_progressiveRefinementStart_sequence);
14214
14215   return offset;
14216 }
14217 static int dissect_progressiveRefinementStart(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14218   return dissect_h245_T_progressiveRefinementStart(tvb, offset, pinfo, tree, hf_h245_progressiveRefinementStart);
14219 }
14220
14221
14222
14223 static int
14224 dissect_h245_INTEGER_1_9216(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14225   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
14226                                            1U, 9216U, NULL, NULL, FALSE);
14227
14228   return offset;
14229 }
14230 static int dissect_firstMB(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14231   return dissect_h245_INTEGER_1_9216(tvb, offset, pinfo, tree, hf_h245_firstMB);
14232 }
14233 static int dissect_numberOfMBs1_1_9216(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14234   return dissect_h245_INTEGER_1_9216(tvb, offset, pinfo, tree, hf_h245_numberOfMBs1_1_9216);
14235 }
14236
14237 static const per_sequence_t T_videoBadMBs_sequence[] = {
14238   { "firstMB"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_firstMB },
14239   { "numberOfMBs"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_numberOfMBs1_1_9216 },
14240   { "temporalReference"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_temporalReference },
14241   { NULL, 0, 0, NULL }
14242 };
14243
14244 static int
14245 dissect_h245_T_videoBadMBs(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14246   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14247                                 ett_h245_T_videoBadMBs, T_videoBadMBs_sequence);
14248
14249   return offset;
14250 }
14251 static int dissect_videoBadMBs(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14252   return dissect_h245_T_videoBadMBs(tvb, offset, pinfo, tree, hf_h245_videoBadMBs);
14253 }
14254
14255
14256 static const value_string h245_PictureReference_vals[] = {
14257   {   0, "pictureNumber" },
14258   {   1, "longTermPictureIndex" },
14259   { 0, NULL }
14260 };
14261
14262 static const per_choice_t PictureReference_choice[] = {
14263   {   0, "pictureNumber"               , ASN1_EXTENSION_ROOT    , dissect_pictureNumber },
14264   {   1, "longTermPictureIndex"        , ASN1_EXTENSION_ROOT    , dissect_longTermPictureIndex },
14265   { 0, NULL, 0, NULL }
14266 };
14267
14268 static int
14269 dissect_h245_PictureReference(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14270   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14271                               ett_h245_PictureReference, PictureReference_choice, "PictureReference",
14272                               NULL);
14273
14274   return offset;
14275 }
14276 static int dissect_lostPicture_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14277   return dissect_h245_PictureReference(tvb, offset, pinfo, tree, hf_h245_lostPicture_item);
14278 }
14279 static int dissect_pictureReference(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14280   return dissect_h245_PictureReference(tvb, offset, pinfo, tree, hf_h245_pictureReference);
14281 }
14282 static int dissect_recoveryReferencePicture_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14283   return dissect_h245_PictureReference(tvb, offset, pinfo, tree, hf_h245_recoveryReferencePicture_item);
14284 }
14285
14286
14287 static int
14288 dissect_h245_SEQUNCE_OF_PictureReference(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14289   offset = dissect_per_sequence_of(tvb, offset, pinfo, tree, hf_index,
14290                                    ett_h245_SEQUNCE_OF_PictureReference, dissect_lostPicture_item);
14291
14292   return offset;
14293 }
14294 static int dissect_lostPicture(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14295   return dissect_h245_SEQUNCE_OF_PictureReference(tvb, offset, pinfo, tree, hf_h245_lostPicture);
14296 }
14297 static int dissect_recoveryReferencePicture(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14298   return dissect_h245_SEQUNCE_OF_PictureReference(tvb, offset, pinfo, tree, hf_h245_recoveryReferencePicture);
14299 }
14300
14301 static const per_sequence_t T_lostPartialPicture_sequence[] = {
14302   { "pictureReference"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_pictureReference },
14303   { "firstMB"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_firstMB },
14304   { "numberOfMBs"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_numberOfMBs1_1_9216 },
14305   { NULL, 0, 0, NULL }
14306 };
14307
14308 static int
14309 dissect_h245_T_lostPartialPicture(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14310   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14311                                 ett_h245_T_lostPartialPicture, T_lostPartialPicture_sequence);
14312
14313   return offset;
14314 }
14315 static int dissect_lostPartialPicture(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14316   return dissect_h245_T_lostPartialPicture(tvb, offset, pinfo, tree, hf_h245_lostPartialPicture);
14317 }
14318
14319 static const per_sequence_t T_encryptionUpdateCommand_sequence[] = {
14320   { "encryptionSync"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_encryptionSync },
14321   { "multiplePayloadStream"       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_multiplePayloadStream },
14322   { NULL, 0, 0, NULL }
14323 };
14324
14325 static int
14326 dissect_h245_T_encryptionUpdateCommand(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14327   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14328                                 ett_h245_T_encryptionUpdateCommand, T_encryptionUpdateCommand_sequence);
14329
14330   return offset;
14331 }
14332 static int dissect_encryptionUpdateCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14333   return dissect_h245_T_encryptionUpdateCommand(tvb, offset, pinfo, tree, hf_h245_encryptionUpdateCommand);
14334 }
14335
14336 static const per_sequence_t T_encryptionUpdateAck_sequence[] = {
14337   { "synchFlag"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_synchFlag },
14338   { NULL, 0, 0, NULL }
14339 };
14340
14341 static int
14342 dissect_h245_T_encryptionUpdateAck(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14343   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14344                                 ett_h245_T_encryptionUpdateAck, T_encryptionUpdateAck_sequence);
14345
14346   return offset;
14347 }
14348 static int dissect_encryptionUpdateAck(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14349   return dissect_h245_T_encryptionUpdateAck(tvb, offset, pinfo, tree, hf_h245_encryptionUpdateAck);
14350 }
14351
14352
14353 static const value_string h245_Mc_type_vals[] = {
14354   {   0, "equaliseDelay" },
14355   {   1, "zeroDelay" },
14356   {   2, "multipointModeCommand" },
14357   {   3, "cancelMultipointModeCommand" },
14358   {   4, "videoFreezePicture" },
14359   {   5, "videoFastUpdatePicture" },
14360   {   6, "videoFastUpdateGOB" },
14361   {   7, "videoTemporalSpatialTradeOff" },
14362   {   8, "videoSendSyncEveryGOB" },
14363   {   9, "videoSendSyncEveryGOBCancel" },
14364   {  10, "videoFastUpdateMB" },
14365   {  11, "maxH223MUXPDUsize" },
14366   {  12, "encryptionUpdate" },
14367   {  13, "encryptionUpdateRequest" },
14368   {  14, "switchReceiveMediaOff" },
14369   {  15, "switchReceiveMediaOn" },
14370   {  16, "progressiveRefinementStart" },
14371   {  17, "progressiveRefinementAbortOne" },
14372   {  18, "progressiveRefinementAbortContinuous" },
14373   {  19, "videoBadMBs" },
14374   {  20, "lostPicture" },
14375   {  21, "lostPartialPicture" },
14376   {  22, "recoveryReferencePicture" },
14377   {  23, "encryptionUpdateCommand" },
14378   {  24, "encryptionUpdateAck" },
14379   { 0, NULL }
14380 };
14381
14382 static const per_choice_t Mc_type_choice[] = {
14383   {   0, "equaliseDelay"               , ASN1_EXTENSION_ROOT    , dissect_equaliseDelay },
14384   {   1, "zeroDelay"                   , ASN1_EXTENSION_ROOT    , dissect_zeroDelay },
14385   {   2, "multipointModeCommand"       , ASN1_EXTENSION_ROOT    , dissect_multipointModeCommand },
14386   {   3, "cancelMultipointModeCommand" , ASN1_EXTENSION_ROOT    , dissect_cancelMultipointModeCommand },
14387   {   4, "videoFreezePicture"          , ASN1_EXTENSION_ROOT    , dissect_videoFreezePicture },
14388   {   5, "videoFastUpdatePicture"      , ASN1_EXTENSION_ROOT    , dissect_videoFastUpdatePicture },
14389   {   6, "videoFastUpdateGOB"          , ASN1_EXTENSION_ROOT    , dissect_videoFastUpdateGOB },
14390   {   7, "videoTemporalSpatialTradeOff", ASN1_EXTENSION_ROOT    , dissect_videoTemporalSpatialTradeOff },
14391   {   8, "videoSendSyncEveryGOB"       , ASN1_EXTENSION_ROOT    , dissect_videoSendSyncEveryGOB },
14392   {   9, "videoSendSyncEveryGOBCancel" , ASN1_EXTENSION_ROOT    , dissect_videoSendSyncEveryGOBCancel },
14393   {  10, "videoFastUpdateMB"           , ASN1_NOT_EXTENSION_ROOT, dissect_videoFastUpdateMB },
14394   {  11, "maxH223MUXPDUsize"           , ASN1_NOT_EXTENSION_ROOT, dissect_maxH223MUXPDUsize },
14395   {  12, "encryptionUpdate"            , ASN1_NOT_EXTENSION_ROOT, dissect_encryptionUpdate },
14396   {  13, "encryptionUpdateRequest"     , ASN1_NOT_EXTENSION_ROOT, dissect_encryptionUpdateRequest },
14397   {  14, "switchReceiveMediaOff"       , ASN1_NOT_EXTENSION_ROOT, dissect_switchReceiveMediaOff },
14398   {  15, "switchReceiveMediaOn"        , ASN1_NOT_EXTENSION_ROOT, dissect_switchReceiveMediaOn },
14399   {  16, "progressiveRefinementStart"  , ASN1_NOT_EXTENSION_ROOT, dissect_progressiveRefinementStart },
14400   {  17, "progressiveRefinementAbortOne", ASN1_NOT_EXTENSION_ROOT, dissect_progressiveRefinementAbortOne },
14401   {  18, "progressiveRefinementAbortContinuous", ASN1_NOT_EXTENSION_ROOT, dissect_progressiveRefinementAbortContinuous },
14402   {  19, "videoBadMBs"                 , ASN1_NOT_EXTENSION_ROOT, dissect_videoBadMBs },
14403   {  20, "lostPicture"                 , ASN1_NOT_EXTENSION_ROOT, dissect_lostPicture },
14404   {  21, "lostPartialPicture"          , ASN1_NOT_EXTENSION_ROOT, dissect_lostPartialPicture },
14405   {  22, "recoveryReferencePicture"    , ASN1_NOT_EXTENSION_ROOT, dissect_recoveryReferencePicture },
14406   {  23, "encryptionUpdateCommand"     , ASN1_NOT_EXTENSION_ROOT, dissect_encryptionUpdateCommand },
14407   {  24, "encryptionUpdateAck"         , ASN1_NOT_EXTENSION_ROOT, dissect_encryptionUpdateAck },
14408   { 0, NULL, 0, NULL }
14409 };
14410
14411 static int
14412 dissect_h245_Mc_type(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14413   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14414                               ett_h245_Mc_type, Mc_type_choice, "Mc_type",
14415                               NULL);
14416
14417   return offset;
14418 }
14419 static int dissect_mc_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14420   return dissect_h245_Mc_type(tvb, offset, pinfo, tree, hf_h245_mc_type);
14421 }
14422
14423
14424 static const value_string h245_EncryptionUpdateDirection_vals[] = {
14425   {   0, "masterToSlave" },
14426   {   1, "slaveToMaster" },
14427   { 0, NULL }
14428 };
14429
14430 static const per_choice_t EncryptionUpdateDirection_choice[] = {
14431   {   0, "masterToSlave"               , ASN1_EXTENSION_ROOT    , dissect_masterToSlave },
14432   {   1, "slaveToMaster"               , ASN1_EXTENSION_ROOT    , dissect_slaveToMaster },
14433   { 0, NULL, 0, NULL }
14434 };
14435
14436 static int
14437 dissect_h245_EncryptionUpdateDirection(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14438   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14439                               ett_h245_EncryptionUpdateDirection, EncryptionUpdateDirection_choice, "EncryptionUpdateDirection",
14440                               NULL);
14441
14442   return offset;
14443 }
14444 static int dissect_direction(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14445   return dissect_h245_EncryptionUpdateDirection(tvb, offset, pinfo, tree, hf_h245_direction);
14446 }
14447
14448 static const per_sequence_t MiscellaneousCommand_sequence[] = {
14449   { "logicalChannelNumber"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_logicalChannelNumber },
14450   { "type"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mc_type },
14451   { "direction"                   , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_direction },
14452   { NULL, 0, 0, NULL }
14453 };
14454
14455 static int
14456 dissect_h245_MiscellaneousCommand(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14457   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14458                                 ett_h245_MiscellaneousCommand, MiscellaneousCommand_sequence);
14459
14460   return offset;
14461 }
14462 static int dissect_miscellaneousCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14463   return dissect_h245_MiscellaneousCommand(tvb, offset, pinfo, tree, hf_h245_miscellaneousCommand);
14464 }
14465
14466 static const per_sequence_t CommunicationModeCommand_sequence[] = {
14467   { "communicationModeTable"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_communicationModeTable },
14468   { NULL, 0, 0, NULL }
14469 };
14470
14471 static int
14472 dissect_h245_CommunicationModeCommand(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14473   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14474                                 ett_h245_CommunicationModeCommand, CommunicationModeCommand_sequence);
14475
14476   return offset;
14477 }
14478 static int dissect_communicationModeCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14479   return dissect_h245_CommunicationModeCommand(tvb, offset, pinfo, tree, hf_h245_communicationModeCommand);
14480 }
14481
14482 static const per_sequence_t SubstituteConferenceIDCommand_sequence[] = {
14483   { "conferenceIdentifier"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_conferenceIdentifier },
14484   { NULL, 0, 0, NULL }
14485 };
14486
14487 static int
14488 dissect_h245_SubstituteConferenceIDCommand(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14489   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14490                                 ett_h245_SubstituteConferenceIDCommand, SubstituteConferenceIDCommand_sequence);
14491
14492   return offset;
14493 }
14494 static int dissect_substituteConferenceIDCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14495   return dissect_h245_SubstituteConferenceIDCommand(tvb, offset, pinfo, tree, hf_h245_substituteConferenceIDCommand);
14496 }
14497
14498
14499 static const value_string h245_ConferenceCommand_vals[] = {
14500   {   0, "broadcastMyLogicalChannel" },
14501   {   1, "cancelBroadcastMyLogicalChannel" },
14502   {   2, "makeTerminalBroadcaster" },
14503   {   3, "cancelMakeTerminalBroadcaster" },
14504   {   4, "sendThisSource" },
14505   {   5, "cancelSendThisSource" },
14506   {   6, "dropConference" },
14507   {   7, "substituteConferenceIDCommand" },
14508   { 0, NULL }
14509 };
14510
14511 static const per_choice_t ConferenceCommand_choice[] = {
14512   {   0, "broadcastMyLogicalChannel"   , ASN1_EXTENSION_ROOT    , dissect_broadcastMyLogicalChannel },
14513   {   1, "cancelBroadcastMyLogicalChannel", ASN1_EXTENSION_ROOT    , dissect_cancelBroadcastMyLogicalChannel },
14514   {   2, "makeTerminalBroadcaster"     , ASN1_EXTENSION_ROOT    , dissect_makeTerminalBroadcaster },
14515   {   3, "cancelMakeTerminalBroadcaster", ASN1_EXTENSION_ROOT    , dissect_cancelMakeTerminalBroadcaster },
14516   {   4, "sendThisSource"              , ASN1_EXTENSION_ROOT    , dissect_sendThisSource },
14517   {   5, "cancelSendThisSource"        , ASN1_EXTENSION_ROOT    , dissect_cancelSendThisSource },
14518   {   6, "dropConference"              , ASN1_EXTENSION_ROOT    , dissect_dropConference },
14519   {   7, "substituteConferenceIDCommand", ASN1_NOT_EXTENSION_ROOT, dissect_substituteConferenceIDCommand },
14520   { 0, NULL, 0, NULL }
14521 };
14522
14523 static int
14524 dissect_h245_ConferenceCommand(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14525   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14526                               ett_h245_ConferenceCommand, ConferenceCommand_choice, "ConferenceCommand",
14527                               NULL);
14528
14529   return offset;
14530 }
14531 static int dissect_conferenceCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14532   return dissect_h245_ConferenceCommand(tvb, offset, pinfo, tree, hf_h245_conferenceCommand);
14533 }
14534
14535
14536 static const value_string h245_T_h223ModeChange_vals[] = {
14537   {   0, "toLevel0" },
14538   {   1, "toLevel1" },
14539   {   2, "toLevel2" },
14540   {   3, "toLevel2withOptionalHeader" },
14541   { 0, NULL }
14542 };
14543
14544 static const per_choice_t T_h223ModeChange_choice[] = {
14545   {   0, "toLevel0"                    , ASN1_EXTENSION_ROOT    , dissect_toLevel0 },
14546   {   1, "toLevel1"                    , ASN1_EXTENSION_ROOT    , dissect_toLevel1 },
14547   {   2, "toLevel2"                    , ASN1_EXTENSION_ROOT    , dissect_toLevel2 },
14548   {   3, "toLevel2withOptionalHeader"  , ASN1_EXTENSION_ROOT    , dissect_toLevel2withOptionalHeader },
14549   { 0, NULL, 0, NULL }
14550 };
14551
14552 static int
14553 dissect_h245_T_h223ModeChange(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14554   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14555                               ett_h245_T_h223ModeChange, T_h223ModeChange_choice, "T_h223ModeChange",
14556                               NULL);
14557
14558   return offset;
14559 }
14560 static int dissect_h223ModeChange(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14561   return dissect_h245_T_h223ModeChange(tvb, offset, pinfo, tree, hf_h245_h223ModeChange);
14562 }
14563
14564
14565 static const value_string h245_T_h223AnnexADoubleFlag_vals[] = {
14566   {   0, "start" },
14567   {   1, "stop" },
14568   { 0, NULL }
14569 };
14570
14571 static const per_choice_t T_h223AnnexADoubleFlag_choice[] = {
14572   {   0, "start"                       , ASN1_EXTENSION_ROOT    , dissect_start },
14573   {   1, "stop"                        , ASN1_EXTENSION_ROOT    , dissect_stop },
14574   { 0, NULL, 0, NULL }
14575 };
14576
14577 static int
14578 dissect_h245_T_h223AnnexADoubleFlag(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14579   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14580                               ett_h245_T_h223AnnexADoubleFlag, T_h223AnnexADoubleFlag_choice, "T_h223AnnexADoubleFlag",
14581                               NULL);
14582
14583   return offset;
14584 }
14585 static int dissect_h223AnnexADoubleFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14586   return dissect_h245_T_h223AnnexADoubleFlag(tvb, offset, pinfo, tree, hf_h245_h223AnnexADoubleFlag);
14587 }
14588
14589
14590 static const value_string h245_H223MultiplexReconfiguration_vals[] = {
14591   {   0, "h223ModeChange" },
14592   {   1, "h223AnnexADoubleFlag" },
14593   { 0, NULL }
14594 };
14595
14596 static const per_choice_t H223MultiplexReconfiguration_choice[] = {
14597   {   0, "h223ModeChange"              , ASN1_EXTENSION_ROOT    , dissect_h223ModeChange },
14598   {   1, "h223AnnexADoubleFlag"        , ASN1_EXTENSION_ROOT    , dissect_h223AnnexADoubleFlag },
14599   { 0, NULL, 0, NULL }
14600 };
14601
14602 static int
14603 dissect_h245_H223MultiplexReconfiguration(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14604   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14605                               ett_h245_H223MultiplexReconfiguration, H223MultiplexReconfiguration_choice, "H223MultiplexReconfiguration",
14606                               NULL);
14607
14608   return offset;
14609 }
14610 static int dissect_h223MultiplexReconfiguration(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14611   return dissect_h245_H223MultiplexReconfiguration(tvb, offset, pinfo, tree, hf_h245_h223MultiplexReconfiguration);
14612 }
14613
14614
14615 static const value_string h245_Cmd_clockRecovery_vals[] = {
14616   {   0, "nullClockRecovery" },
14617   {   1, "srtsClockRecovery" },
14618   {   2, "adaptiveClockRecovery" },
14619   { 0, NULL }
14620 };
14621
14622 static const per_choice_t Cmd_clockRecovery_choice[] = {
14623   {   0, "nullClockRecovery"           , ASN1_EXTENSION_ROOT    , dissect_nullClockRecoveryflag },
14624   {   1, "srtsClockRecovery"           , ASN1_EXTENSION_ROOT    , dissect_srtsClockRecovery },
14625   {   2, "adaptiveClockRecovery"       , ASN1_EXTENSION_ROOT    , dissect_adaptiveClockRecoveryFlag },
14626   { 0, NULL, 0, NULL }
14627 };
14628
14629 static int
14630 dissect_h245_Cmd_clockRecovery(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14631   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14632                               ett_h245_Cmd_clockRecovery, Cmd_clockRecovery_choice, "Cmd_clockRecovery",
14633                               NULL);
14634
14635   return offset;
14636 }
14637 static int dissect_cmd_clockRecovery(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14638   return dissect_h245_Cmd_clockRecovery(tvb, offset, pinfo, tree, hf_h245_cmd_clockRecovery);
14639 }
14640
14641
14642 static const value_string h245_Cmd_errorCorrection_vals[] = {
14643   {   0, "nullErrorCorrection" },
14644   {   1, "longInterleaver" },
14645   {   2, "shortInterleaver" },
14646   {   3, "errorCorrectionOnly" },
14647   { 0, NULL }
14648 };
14649
14650 static const per_choice_t Cmd_errorCorrection_choice[] = {
14651   {   0, "nullErrorCorrection"         , ASN1_EXTENSION_ROOT    , dissect_nullErrorCorrectionFlag },
14652   {   1, "longInterleaver"             , ASN1_EXTENSION_ROOT    , dissect_longInterleaverFlag },
14653   {   2, "shortInterleaver"            , ASN1_EXTENSION_ROOT    , dissect_shortInterleaverFlag },
14654   {   3, "errorCorrectionOnly"         , ASN1_EXTENSION_ROOT    , dissect_errorCorrectionOnlyFlag },
14655   { 0, NULL, 0, NULL }
14656 };
14657
14658 static int
14659 dissect_h245_Cmd_errorCorrection(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14660   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14661                               ett_h245_Cmd_errorCorrection, Cmd_errorCorrection_choice, "Cmd_errorCorrection",
14662                               NULL);
14663
14664   return offset;
14665 }
14666 static int dissect_cmd_errorCorrection(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14667   return dissect_h245_Cmd_errorCorrection(tvb, offset, pinfo, tree, hf_h245_cmd_errorCorrection);
14668 }
14669
14670 static const per_sequence_t Cmd_aal1_sequence[] = {
14671   { "clockRecovery"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_cmd_clockRecovery },
14672   { "errorCorrection"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_cmd_errorCorrection },
14673   { "structuredDataTransfer"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_structuredDataTransfer },
14674   { "partiallyFilledCells"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_partiallyFilledCells },
14675   { NULL, 0, 0, NULL }
14676 };
14677
14678 static int
14679 dissect_h245_Cmd_aal1(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14680   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14681                                 ett_h245_Cmd_aal1, Cmd_aal1_sequence);
14682
14683   return offset;
14684 }
14685 static int dissect_cmd_aal1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14686   return dissect_h245_Cmd_aal1(tvb, offset, pinfo, tree, hf_h245_cmd_aal1);
14687 }
14688
14689 static const per_sequence_t Cmd_aal5_sequence[] = {
14690   { "forwardMaximumSDUSize"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardMaximumSDUSize },
14691   { "backwardMaximumSDUSize"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_backwardMaximumSDUSize },
14692   { NULL, 0, 0, NULL }
14693 };
14694
14695 static int
14696 dissect_h245_Cmd_aal5(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14697   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14698                                 ett_h245_Cmd_aal5, Cmd_aal5_sequence);
14699
14700   return offset;
14701 }
14702 static int dissect_cmd_aal5(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14703   return dissect_h245_Cmd_aal5(tvb, offset, pinfo, tree, hf_h245_cmd_aal5);
14704 }
14705
14706
14707 static const value_string h245_Cmd_aal_vals[] = {
14708   {   0, "aal1" },
14709   {   1, "aal5" },
14710   { 0, NULL }
14711 };
14712
14713 static const per_choice_t Cmd_aal_choice[] = {
14714   {   0, "aal1"                        , ASN1_EXTENSION_ROOT    , dissect_cmd_aal1 },
14715   {   1, "aal5"                        , ASN1_EXTENSION_ROOT    , dissect_cmd_aal5 },
14716   { 0, NULL, 0, NULL }
14717 };
14718
14719 static int
14720 dissect_h245_Cmd_aal(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14721   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14722                               ett_h245_Cmd_aal, Cmd_aal_choice, "Cmd_aal",
14723                               NULL);
14724
14725   return offset;
14726 }
14727 static int dissect_cmd_aal(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14728   return dissect_h245_Cmd_aal(tvb, offset, pinfo, tree, hf_h245_cmd_aal);
14729 }
14730
14731
14732 static const value_string h245_Cmd_multiplex_vals[] = {
14733   {   0, "noMultiplex" },
14734   {   1, "transportStream" },
14735   {   2, "programStream" },
14736   { 0, NULL }
14737 };
14738
14739 static const per_choice_t Cmd_multiplex_choice[] = {
14740   {   0, "noMultiplex"                 , ASN1_EXTENSION_ROOT    , dissect_noMultiplex },
14741   {   1, "transportStream"             , ASN1_EXTENSION_ROOT    , dissect_transportStream },
14742   {   2, "programStream"               , ASN1_EXTENSION_ROOT    , dissect_programStreamFlag },
14743   { 0, NULL, 0, NULL }
14744 };
14745
14746 static int
14747 dissect_h245_Cmd_multiplex(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14748   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14749                               ett_h245_Cmd_multiplex, Cmd_multiplex_choice, "Cmd_multiplex",
14750                               NULL);
14751
14752   return offset;
14753 }
14754 static int dissect_cmd_multiplex(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14755   return dissect_h245_Cmd_multiplex(tvb, offset, pinfo, tree, hf_h245_cmd_multiplex);
14756 }
14757
14758
14759 static const value_string h245_CmdR_multiplex_vals[] = {
14760   {   0, "noMultiplex" },
14761   {   1, "transportStream" },
14762   {   2, "programStream" },
14763   { 0, NULL }
14764 };
14765
14766 static const per_choice_t CmdR_multiplex_choice[] = {
14767   {   0, "noMultiplex"                 , ASN1_EXTENSION_ROOT    , dissect_noMultiplex },
14768   {   1, "transportStream"             , ASN1_EXTENSION_ROOT    , dissect_transportStream },
14769   {   2, "programStream"               , ASN1_EXTENSION_ROOT    , dissect_programStreamFlag },
14770   { 0, NULL, 0, NULL }
14771 };
14772
14773 static int
14774 dissect_h245_CmdR_multiplex(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14775   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14776                               ett_h245_CmdR_multiplex, CmdR_multiplex_choice, "CmdR_multiplex",
14777                               NULL);
14778
14779   return offset;
14780 }
14781 static int dissect_cmdr_multiplex(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14782   return dissect_h245_CmdR_multiplex(tvb, offset, pinfo, tree, hf_h245_cmdr_multiplex);
14783 }
14784
14785 static const per_sequence_t Cmd_reverseParameters_sequence[] = {
14786   { "bitRate"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRate },
14787   { "bitRateLockedToPCRClock"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRateLockedToPCRClock },
14788   { "bitRateLockedToNetworkClock" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRateLockedToNetworkClock },
14789   { "multiplex"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_cmdr_multiplex },
14790   { NULL, 0, 0, NULL }
14791 };
14792
14793 static int
14794 dissect_h245_Cmd_reverseParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14795   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14796                                 ett_h245_Cmd_reverseParameters, Cmd_reverseParameters_sequence);
14797
14798   return offset;
14799 }
14800 static int dissect_cmd_reverseParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14801   return dissect_h245_Cmd_reverseParameters(tvb, offset, pinfo, tree, hf_h245_cmd_reverseParameters);
14802 }
14803
14804 static const per_sequence_t NewATMVCCommand_sequence[] = {
14805   { "resourceID"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_resourceID },
14806   { "bitRate"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRate },
14807   { "bitRateLockedToPCRClock"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRateLockedToPCRClock },
14808   { "bitRateLockedToNetworkClock" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRateLockedToNetworkClock },
14809   { "aal"                         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_cmd_aal },
14810   { "multiplex"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_cmd_multiplex },
14811   { "reverseParameters"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_cmd_reverseParameters },
14812   { NULL, 0, 0, NULL }
14813 };
14814
14815 static int
14816 dissect_h245_NewATMVCCommand(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14817   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14818                                 ett_h245_NewATMVCCommand, NewATMVCCommand_sequence);
14819
14820   return offset;
14821 }
14822 static int dissect_newATMVCCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14823   return dissect_h245_NewATMVCCommand(tvb, offset, pinfo, tree, hf_h245_newATMVCCommand);
14824 }
14825
14826
14827 static const value_string h245_T_status_vals[] = {
14828   {   0, "synchronized" },
14829   {   1, "reconfiguration" },
14830   { 0, NULL }
14831 };
14832
14833 static const per_choice_t T_status_choice[] = {
14834   {   0, "synchronized"                , ASN1_EXTENSION_ROOT    , dissect_synchronized },
14835   {   1, "reconfiguration"             , ASN1_EXTENSION_ROOT    , dissect_reconfiguration },
14836   { 0, NULL, 0, NULL }
14837 };
14838
14839 static int
14840 dissect_h245_T_status(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14841   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14842                               ett_h245_T_status, T_status_choice, "T_status",
14843                               NULL);
14844
14845   return offset;
14846 }
14847 static int dissect_status(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14848   return dissect_h245_T_status(tvb, offset, pinfo, tree, hf_h245_status);
14849 }
14850
14851 static const per_sequence_t MobileMultilinkReconfigurationCommand_sequence[] = {
14852   { "sampleSize"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sampleSize },
14853   { "samplesPerFrame"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_samplesPerFrame },
14854   { "status"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_status },
14855   { NULL, 0, 0, NULL }
14856 };
14857
14858 static int
14859 dissect_h245_MobileMultilinkReconfigurationCommand(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14860   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14861                                 ett_h245_MobileMultilinkReconfigurationCommand, MobileMultilinkReconfigurationCommand_sequence);
14862
14863   return offset;
14864 }
14865 static int dissect_mobileMultilinkReconfigurationCommand(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14866   return dissect_h245_MobileMultilinkReconfigurationCommand(tvb, offset, pinfo, tree, hf_h245_mobileMultilinkReconfigurationCommand);
14867 }
14868
14869
14870 static const value_string h245_CommandMessage_vals[] = {
14871   {   0, "nonStandard" },
14872   {   1, "maintenanceLoopOffCommand" },
14873   {   2, "sendTerminalCapabilitySet" },
14874   {   3, "encryptionCommand" },
14875   {   4, "flowControlCommand" },
14876   {   5, "endSessionCommand" },
14877   {   6, "miscellaneousCommand" },
14878   {   7, "communicationModeCommand" },
14879   {   8, "conferenceCommand" },
14880   {   9, "h223MultiplexReconfiguration" },
14881   {  10, "newATMVCCommand" },
14882   {  11, "mobileMultilinkReconfigurationCommand" },
14883   {  12, "genericCommand" },
14884   { 0, NULL }
14885 };
14886
14887 static const per_choice_t CommandMessage_choice[] = {
14888   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandardMsg },
14889   {   1, "maintenanceLoopOffCommand"   , ASN1_EXTENSION_ROOT    , dissect_maintenanceLoopOffCommand },
14890   {   2, "sendTerminalCapabilitySet"   , ASN1_EXTENSION_ROOT    , dissect_sendTerminalCapabilitySet },
14891   {   3, "encryptionCommand"           , ASN1_EXTENSION_ROOT    , dissect_encryptionCommand },
14892   {   4, "flowControlCommand"          , ASN1_EXTENSION_ROOT    , dissect_flowControlCommand },
14893   {   5, "endSessionCommand"           , ASN1_EXTENSION_ROOT    , dissect_endSessionCommand },
14894   {   6, "miscellaneousCommand"        , ASN1_EXTENSION_ROOT    , dissect_miscellaneousCommand },
14895   {   7, "communicationModeCommand"    , ASN1_NOT_EXTENSION_ROOT, dissect_communicationModeCommand },
14896   {   8, "conferenceCommand"           , ASN1_NOT_EXTENSION_ROOT, dissect_conferenceCommand },
14897   {   9, "h223MultiplexReconfiguration", ASN1_NOT_EXTENSION_ROOT, dissect_h223MultiplexReconfiguration },
14898   {  10, "newATMVCCommand"             , ASN1_NOT_EXTENSION_ROOT, dissect_newATMVCCommand },
14899   {  11, "mobileMultilinkReconfigurationCommand", ASN1_NOT_EXTENSION_ROOT, dissect_mobileMultilinkReconfigurationCommand },
14900   {  12, "genericCommand"              , ASN1_NOT_EXTENSION_ROOT, dissect_genericCommand },
14901   { 0, NULL, 0, NULL }
14902 };
14903
14904 static int
14905 dissect_h245_CommandMessage(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14906   guint32 value;
14907   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14908                               ett_h245_CommandMessage, CommandMessage_choice, "CommandMessage",
14909                               &value);
14910
14911
14912         if (check_col(pinfo->cinfo, COL_INFO)){
14913                 if ( h245_shorttypes == TRUE )
14914                 {
14915                         col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
14916                                 val_to_str(value, h245_CommandMessage_short_vals, "<unknown>"));
14917                 }
14918                 else
14919                 {
14920                         col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
14921                                 val_to_str(value, h245_CommandMessage_vals, "<unknown>"));
14922                 }
14923         }
14924
14925         col_set_fence(pinfo->cinfo,COL_INFO);
14926
14927   return offset;
14928 }
14929 static int dissect_command(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14930   return dissect_h245_CommandMessage(tvb, offset, pinfo, tree, hf_h245_command);
14931 }
14932
14933
14934 static const value_string h245_FunctionNotUnderstood_vals[] = {
14935   {   0, "request" },
14936   {   1, "response" },
14937   {   2, "command" },
14938   { 0, NULL }
14939 };
14940
14941 static const per_choice_t FunctionNotUnderstood_choice[] = {
14942   {   0, "request"                     , ASN1_NO_EXTENSIONS     , dissect_request },
14943   {   1, "response"                    , ASN1_NO_EXTENSIONS     , dissect_response },
14944   {   2, "command"                     , ASN1_NO_EXTENSIONS     , dissect_command },
14945   { 0, NULL, 0, NULL }
14946 };
14947
14948 static int
14949 dissect_h245_FunctionNotUnderstood(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14950   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
14951                               ett_h245_FunctionNotUnderstood, FunctionNotUnderstood_choice, "FunctionNotUnderstood",
14952                               NULL);
14953
14954   return offset;
14955 }
14956 static int dissect_functionNotUnderstood(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14957   return dissect_h245_FunctionNotUnderstood(tvb, offset, pinfo, tree, hf_h245_functionNotUnderstood);
14958 }
14959
14960 static const per_sequence_t MasterSlaveDeterminationRelease_sequence[] = {
14961   { NULL, 0, 0, NULL }
14962 };
14963
14964 static int
14965 dissect_h245_MasterSlaveDeterminationRelease(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14966   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14967                                 ett_h245_MasterSlaveDeterminationRelease, MasterSlaveDeterminationRelease_sequence);
14968
14969
14970   h245_pi.msg_type = H245_MastSlvDetRls;
14971   return offset;
14972 }
14973 static int dissect_masterSlaveDeterminationRelease(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14974   return dissect_h245_MasterSlaveDeterminationRelease(tvb, offset, pinfo, tree, hf_h245_masterSlaveDeterminationRelease);
14975 }
14976
14977 static const per_sequence_t TerminalCapabilitySetRelease_sequence[] = {
14978   { NULL, 0, 0, NULL }
14979 };
14980
14981 static int
14982 dissect_h245_TerminalCapabilitySetRelease(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
14983   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
14984                                 ett_h245_TerminalCapabilitySetRelease, TerminalCapabilitySetRelease_sequence);
14985
14986
14987   h245_pi.msg_type = H245_TermCapSetRls;
14988   return offset;
14989 }
14990 static int dissect_terminalCapabilitySetRelease(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
14991   return dissect_h245_TerminalCapabilitySetRelease(tvb, offset, pinfo, tree, hf_h245_terminalCapabilitySetRelease);
14992 }
14993
14994 static const per_sequence_t OpenLogicalChannelConfirm_sequence[] = {
14995   { "forwardLogicalChannelNumber" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelNumber },
14996   { NULL, 0, 0, NULL }
14997 };
14998
14999 static int
15000 dissect_h245_OpenLogicalChannelConfirm(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15001   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15002                                 ett_h245_OpenLogicalChannelConfirm, OpenLogicalChannelConfirm_sequence);
15003
15004
15005   h245_pi.msg_type = H245_OpenLogChnCnf;
15006   return offset;
15007 }
15008 static int dissect_openLogicalChannelConfirm(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15009   return dissect_h245_OpenLogicalChannelConfirm(tvb, offset, pinfo, tree, hf_h245_openLogicalChannelConfirm);
15010 }
15011
15012 static const per_sequence_t RequestChannelCloseRelease_sequence[] = {
15013   { "forwardLogicalChannelNumber" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelNumber },
15014   { NULL, 0, 0, NULL }
15015 };
15016
15017 static int
15018 dissect_h245_RequestChannelCloseRelease(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15019   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15020                                 ett_h245_RequestChannelCloseRelease, RequestChannelCloseRelease_sequence);
15021
15022   return offset;
15023 }
15024 static int dissect_requestChannelCloseRelease(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15025   return dissect_h245_RequestChannelCloseRelease(tvb, offset, pinfo, tree, hf_h245_requestChannelCloseRelease);
15026 }
15027
15028 static const per_sequence_t MultiplexEntrySendRelease_sequence[] = {
15029   { "multiplexTableEntryNumber"   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_multiplexTableEntryNumbers },
15030   { NULL, 0, 0, NULL }
15031 };
15032
15033 static int
15034 dissect_h245_MultiplexEntrySendRelease(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15035   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15036                                 ett_h245_MultiplexEntrySendRelease, MultiplexEntrySendRelease_sequence);
15037
15038   return offset;
15039 }
15040 static int dissect_multiplexEntrySendRelease(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15041   return dissect_h245_MultiplexEntrySendRelease(tvb, offset, pinfo, tree, hf_h245_multiplexEntrySendRelease);
15042 }
15043
15044 static const per_sequence_t RequestMultiplexEntryRelease_sequence[] = {
15045   { "entryNumbers"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_entryNumbers },
15046   { NULL, 0, 0, NULL }
15047 };
15048
15049 static int
15050 dissect_h245_RequestMultiplexEntryRelease(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15051   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15052                                 ett_h245_RequestMultiplexEntryRelease, RequestMultiplexEntryRelease_sequence);
15053
15054   return offset;
15055 }
15056 static int dissect_requestMultiplexEntryRelease(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15057   return dissect_h245_RequestMultiplexEntryRelease(tvb, offset, pinfo, tree, hf_h245_requestMultiplexEntryRelease);
15058 }
15059
15060 static const per_sequence_t RequestModeRelease_sequence[] = {
15061   { NULL, 0, 0, NULL }
15062 };
15063
15064 static int
15065 dissect_h245_RequestModeRelease(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15066   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15067                                 ett_h245_RequestModeRelease, RequestModeRelease_sequence);
15068
15069   return offset;
15070 }
15071 static int dissect_requestModeRelease(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15072   return dissect_h245_RequestModeRelease(tvb, offset, pinfo, tree, hf_h245_requestModeRelease);
15073 }
15074
15075 static const per_sequence_t T_videoNotDecodedMBs_sequence[] = {
15076   { "firstMB"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_firstMB_1_8192 },
15077   { "numberOfMBs"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_numberOfMBs },
15078   { "temporalReference"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_temporalReference_0_255 },
15079   { NULL, 0, 0, NULL }
15080 };
15081
15082 static int
15083 dissect_h245_T_videoNotDecodedMBs(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15084   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15085                                 ett_h245_T_videoNotDecodedMBs, T_videoNotDecodedMBs_sequence);
15086
15087   return offset;
15088 }
15089 static int dissect_videoNotDecodedMBs(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15090   return dissect_h245_T_videoNotDecodedMBs(tvb, offset, pinfo, tree, hf_h245_videoNotDecodedMBs);
15091 }
15092
15093
15094 static const value_string h245_Mi_type_vals[] = {
15095   {   0, "logicalChannelActive" },
15096   {   1, "logicalChannelInactive" },
15097   {   2, "multipointConference" },
15098   {   3, "cancelMultipointConference" },
15099   {   4, "multipointZeroComm" },
15100   {   5, "cancelMultipointZeroComm" },
15101   {   6, "multipointSecondaryStatus" },
15102   {   7, "cancelMultipointSecondaryStatus" },
15103   {   8, "videoIndicateReadyToActivate" },
15104   {   9, "videoTemporalSpatialTradeOff" },
15105   {  10, "videoNotDecodedMBs" },
15106   {  11, "transportCapability" },
15107   { 0, NULL }
15108 };
15109
15110 static const per_choice_t Mi_type_choice[] = {
15111   {   0, "logicalChannelActive"        , ASN1_EXTENSION_ROOT    , dissect_logicalChannelActive },
15112   {   1, "logicalChannelInactive"      , ASN1_EXTENSION_ROOT    , dissect_logicalChannelInactive },
15113   {   2, "multipointConference"        , ASN1_EXTENSION_ROOT    , dissect_multipointConference },
15114   {   3, "cancelMultipointConference"  , ASN1_EXTENSION_ROOT    , dissect_cancelMultipointConference },
15115   {   4, "multipointZeroComm"          , ASN1_EXTENSION_ROOT    , dissect_multipointZeroComm },
15116   {   5, "cancelMultipointZeroComm"    , ASN1_EXTENSION_ROOT    , dissect_cancelMultipointZeroComm },
15117   {   6, "multipointSecondaryStatus"   , ASN1_EXTENSION_ROOT    , dissect_multipointSecondaryStatus },
15118   {   7, "cancelMultipointSecondaryStatus", ASN1_EXTENSION_ROOT    , dissect_cancelMultipointSecondaryStatus },
15119   {   8, "videoIndicateReadyToActivate", ASN1_EXTENSION_ROOT    , dissect_videoIndicateReadyToActivate },
15120   {   9, "videoTemporalSpatialTradeOff", ASN1_EXTENSION_ROOT    , dissect_videoTemporalSpatialTradeOff },
15121   {  10, "videoNotDecodedMBs"          , ASN1_NOT_EXTENSION_ROOT, dissect_videoNotDecodedMBs },
15122   {  11, "transportCapability"         , ASN1_NOT_EXTENSION_ROOT, dissect_transportCapability },
15123   { 0, NULL, 0, NULL }
15124 };
15125
15126 static int
15127 dissect_h245_Mi_type(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15128   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
15129                               ett_h245_Mi_type, Mi_type_choice, "Mi_type",
15130                               NULL);
15131
15132   return offset;
15133 }
15134 static int dissect_mi_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15135   return dissect_h245_Mi_type(tvb, offset, pinfo, tree, hf_h245_mi_type);
15136 }
15137
15138 static const per_sequence_t MiscellaneousIndication_sequence[] = {
15139   { "logicalChannelNumber"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_logicalChannelNumber },
15140   { "type"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_mi_type },
15141   { NULL, 0, 0, NULL }
15142 };
15143
15144 static int
15145 dissect_h245_MiscellaneousIndication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15146   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15147                                 ett_h245_MiscellaneousIndication, MiscellaneousIndication_sequence);
15148
15149   return offset;
15150 }
15151 static int dissect_miscellaneousIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15152   return dissect_h245_MiscellaneousIndication(tvb, offset, pinfo, tree, hf_h245_miscellaneousIndication);
15153 }
15154
15155
15156
15157 static int
15158 dissect_h245_INTEGER_0_3(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15159   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
15160                                            0U, 3U, NULL, NULL, FALSE);
15161
15162   return offset;
15163 }
15164 static int dissect_estimatedReceivedJitterMantissa(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15165   return dissect_h245_INTEGER_0_3(tvb, offset, pinfo, tree, hf_h245_estimatedReceivedJitterMantissa);
15166 }
15167
15168
15169
15170 static int
15171 dissect_h245_INTEGER_0_7(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15172   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
15173                                            0U, 7U, NULL, NULL, FALSE);
15174
15175   return offset;
15176 }
15177 static int dissect_estimatedReceivedJitterExponent(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15178   return dissect_h245_INTEGER_0_7(tvb, offset, pinfo, tree, hf_h245_estimatedReceivedJitterExponent);
15179 }
15180
15181 static const per_sequence_t JitterIndication_sequence[] = {
15182   { "scope"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_scope },
15183   { "estimatedReceivedJitterMantissa", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_estimatedReceivedJitterMantissa },
15184   { "estimatedReceivedJitterExponent", ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_estimatedReceivedJitterExponent },
15185   { "skippedFrameCount"           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_skippedFrameCount },
15186   { "additionalDecoderBuffer"     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_additionalDecoderBuffer },
15187   { NULL, 0, 0, NULL }
15188 };
15189
15190 static int
15191 dissect_h245_JitterIndication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15192   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15193                                 ett_h245_JitterIndication, JitterIndication_sequence);
15194
15195   return offset;
15196 }
15197 static int dissect_jitterIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15198   return dissect_h245_JitterIndication(tvb, offset, pinfo, tree, hf_h245_jitterIndication);
15199 }
15200
15201
15202
15203 static int
15204 dissect_h245_INTEGER_0_4095(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15205   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
15206                                            0U, 4095U, NULL, NULL, FALSE);
15207
15208   return offset;
15209 }
15210 static int dissect_skew(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15211   return dissect_h245_INTEGER_0_4095(tvb, offset, pinfo, tree, hf_h245_skew);
15212 }
15213 static int dissect_maximumSkew(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15214   return dissect_h245_INTEGER_0_4095(tvb, offset, pinfo, tree, hf_h245_maximumSkew);
15215 }
15216
15217 static const per_sequence_t H223SkewIndication_sequence[] = {
15218   { "logicalChannelNumber1"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_logicalChannelNumber1 },
15219   { "logicalChannelNumber2"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_logicalChannelNumber2 },
15220   { "skew"                        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_skew },
15221   { NULL, 0, 0, NULL }
15222 };
15223
15224 static int
15225 dissect_h245_H223SkewIndication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15226   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15227                                 ett_h245_H223SkewIndication, H223SkewIndication_sequence);
15228
15229   return offset;
15230 }
15231 static int dissect_h223SkewIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15232   return dissect_h245_H223SkewIndication(tvb, offset, pinfo, tree, hf_h245_h223SkewIndication);
15233 }
15234
15235
15236 static const value_string h245_Ind_clockRecovery_vals[] = {
15237   {   0, "nullClockRecovery" },
15238   {   1, "srtsClockRecovery" },
15239   {   2, "adaptiveClockRecovery" },
15240   { 0, NULL }
15241 };
15242
15243 static const per_choice_t Ind_clockRecovery_choice[] = {
15244   {   0, "nullClockRecovery"           , ASN1_EXTENSION_ROOT    , dissect_nullClockRecoveryflag },
15245   {   1, "srtsClockRecovery"           , ASN1_EXTENSION_ROOT    , dissect_srtsClockRecovery },
15246   {   2, "adaptiveClockRecovery"       , ASN1_EXTENSION_ROOT    , dissect_adaptiveClockRecoveryFlag },
15247   { 0, NULL, 0, NULL }
15248 };
15249
15250 static int
15251 dissect_h245_Ind_clockRecovery(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15252   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
15253                               ett_h245_Ind_clockRecovery, Ind_clockRecovery_choice, "Ind_clockRecovery",
15254                               NULL);
15255
15256   return offset;
15257 }
15258 static int dissect_ind_clockRecovery(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15259   return dissect_h245_Ind_clockRecovery(tvb, offset, pinfo, tree, hf_h245_ind_clockRecovery);
15260 }
15261
15262
15263 static const value_string h245_Ind_errorCorrection_vals[] = {
15264   {   0, "nullErrorCorrection" },
15265   {   1, "longInterleaver" },
15266   {   2, "shortInterleaver" },
15267   {   3, "errorCorrectionOnly" },
15268   { 0, NULL }
15269 };
15270
15271 static const per_choice_t Ind_errorCorrection_choice[] = {
15272   {   0, "nullErrorCorrection"         , ASN1_EXTENSION_ROOT    , dissect_nullErrorCorrectionFlag },
15273   {   1, "longInterleaver"             , ASN1_EXTENSION_ROOT    , dissect_longInterleaverFlag },
15274   {   2, "shortInterleaver"            , ASN1_EXTENSION_ROOT    , dissect_shortInterleaverFlag },
15275   {   3, "errorCorrectionOnly"         , ASN1_EXTENSION_ROOT    , dissect_errorCorrectionOnlyFlag },
15276   { 0, NULL, 0, NULL }
15277 };
15278
15279 static int
15280 dissect_h245_Ind_errorCorrection(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15281   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
15282                               ett_h245_Ind_errorCorrection, Ind_errorCorrection_choice, "Ind_errorCorrection",
15283                               NULL);
15284
15285   return offset;
15286 }
15287 static int dissect_ind_errorCorrection(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15288   return dissect_h245_Ind_errorCorrection(tvb, offset, pinfo, tree, hf_h245_ind_errorCorrection);
15289 }
15290
15291 static const per_sequence_t Ind_aal1_sequence[] = {
15292   { "clockRecovery"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_ind_clockRecovery },
15293   { "errorCorrection"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_ind_errorCorrection },
15294   { "structuredDataTransfer"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_structuredDataTransfer },
15295   { "partiallyFilledCells"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_partiallyFilledCells },
15296   { NULL, 0, 0, NULL }
15297 };
15298
15299 static int
15300 dissect_h245_Ind_aal1(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15301   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15302                                 ett_h245_Ind_aal1, Ind_aal1_sequence);
15303
15304   return offset;
15305 }
15306 static int dissect_ind_aal1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15307   return dissect_h245_Ind_aal1(tvb, offset, pinfo, tree, hf_h245_ind_aal1);
15308 }
15309
15310 static const per_sequence_t Ind_aal5_sequence[] = {
15311   { "forwardMaximumSDUSize"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_forwardMaximumSDUSize },
15312   { "backwardMaximumSDUSize"      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_backwardMaximumSDUSize },
15313   { NULL, 0, 0, NULL }
15314 };
15315
15316 static int
15317 dissect_h245_Ind_aal5(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15318   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15319                                 ett_h245_Ind_aal5, Ind_aal5_sequence);
15320
15321   return offset;
15322 }
15323 static int dissect_ind_aal5(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15324   return dissect_h245_Ind_aal5(tvb, offset, pinfo, tree, hf_h245_ind_aal5);
15325 }
15326
15327
15328 static const value_string h245_Ind_aal_vals[] = {
15329   {   0, "aal1" },
15330   {   1, "aal5" },
15331   { 0, NULL }
15332 };
15333
15334 static const per_choice_t Ind_aal_choice[] = {
15335   {   0, "aal1"                        , ASN1_EXTENSION_ROOT    , dissect_ind_aal1 },
15336   {   1, "aal5"                        , ASN1_EXTENSION_ROOT    , dissect_ind_aal5 },
15337   { 0, NULL, 0, NULL }
15338 };
15339
15340 static int
15341 dissect_h245_Ind_aal(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15342   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
15343                               ett_h245_Ind_aal, Ind_aal_choice, "Ind_aal",
15344                               NULL);
15345
15346   return offset;
15347 }
15348 static int dissect_ind_aal(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15349   return dissect_h245_Ind_aal(tvb, offset, pinfo, tree, hf_h245_ind_aal);
15350 }
15351
15352
15353 static const value_string h245_Ind_multiplex_vals[] = {
15354   {   0, "noMultiplex" },
15355   {   1, "transportStream" },
15356   {   2, "programStream" },
15357   { 0, NULL }
15358 };
15359
15360 static const per_choice_t Ind_multiplex_choice[] = {
15361   {   0, "noMultiplex"                 , ASN1_EXTENSION_ROOT    , dissect_noMultiplex },
15362   {   1, "transportStream"             , ASN1_EXTENSION_ROOT    , dissect_transportStream },
15363   {   2, "programStream"               , ASN1_EXTENSION_ROOT    , dissect_programStreamFlag },
15364   { 0, NULL, 0, NULL }
15365 };
15366
15367 static int
15368 dissect_h245_Ind_multiplex(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15369   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
15370                               ett_h245_Ind_multiplex, Ind_multiplex_choice, "Ind_multiplex",
15371                               NULL);
15372
15373   return offset;
15374 }
15375 static int dissect_ind_multiplex(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15376   return dissect_h245_Ind_multiplex(tvb, offset, pinfo, tree, hf_h245_ind_multiplex);
15377 }
15378
15379
15380 static const value_string h245_IndR_multiplex_vals[] = {
15381   {   0, "noMultiplex" },
15382   {   1, "transportStream" },
15383   {   2, "programStream" },
15384   { 0, NULL }
15385 };
15386
15387 static const per_choice_t IndR_multiplex_choice[] = {
15388   {   0, "noMultiplex"                 , ASN1_EXTENSION_ROOT    , dissect_noMultiplex },
15389   {   1, "transportStream"             , ASN1_EXTENSION_ROOT    , dissect_transportStream },
15390   {   2, "programStream"               , ASN1_EXTENSION_ROOT    , dissect_programStreamFlag },
15391   { 0, NULL, 0, NULL }
15392 };
15393
15394 static int
15395 dissect_h245_IndR_multiplex(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15396   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
15397                               ett_h245_IndR_multiplex, IndR_multiplex_choice, "IndR_multiplex",
15398                               NULL);
15399
15400   return offset;
15401 }
15402 static int dissect_indr_multiplex(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15403   return dissect_h245_IndR_multiplex(tvb, offset, pinfo, tree, hf_h245_indr_multiplex);
15404 }
15405
15406 static const per_sequence_t Ind_reverseParameters_sequence[] = {
15407   { "bitRate"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRate },
15408   { "bitRateLockedToPCRClock"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRateLockedToPCRClock },
15409   { "bitRateLockedToNetworkClock" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRateLockedToNetworkClock },
15410   { "multiplex"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_indr_multiplex },
15411   { NULL, 0, 0, NULL }
15412 };
15413
15414 static int
15415 dissect_h245_Ind_reverseParameters(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15416   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15417                                 ett_h245_Ind_reverseParameters, Ind_reverseParameters_sequence);
15418
15419   return offset;
15420 }
15421 static int dissect_ind_reverseParameters(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15422   return dissect_h245_Ind_reverseParameters(tvb, offset, pinfo, tree, hf_h245_ind_reverseParameters);
15423 }
15424
15425 static const per_sequence_t NewATMVCIndication_sequence[] = {
15426   { "resourceID"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_resourceID },
15427   { "bitRate"                     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRate },
15428   { "bitRateLockedToPCRClock"     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRateLockedToPCRClock },
15429   { "bitRateLockedToNetworkClock" , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_bitRateLockedToNetworkClock },
15430   { "aal"                         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_ind_aal },
15431   { "multiplex"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_ind_multiplex },
15432   { "reverseParameters"           , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_ind_reverseParameters },
15433   { NULL, 0, 0, NULL }
15434 };
15435
15436 static int
15437 dissect_h245_NewATMVCIndication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15438   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15439                                 ett_h245_NewATMVCIndication, NewATMVCIndication_sequence);
15440
15441   return offset;
15442 }
15443 static int dissect_newATMVCIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15444   return dissect_h245_NewATMVCIndication(tvb, offset, pinfo, tree, hf_h245_newATMVCIndication);
15445 }
15446
15447
15448 static const value_string h245_T_userInputSupportIndication_vals[] = {
15449   {   0, "nonStandard" },
15450   {   1, "basicString" },
15451   {   2, "iA5String" },
15452   {   3, "generalString" },
15453   {   4, "encryptedBasicString" },
15454   {   5, "encryptedIA5String" },
15455   {   6, "encryptedGeneralString" },
15456   { 0, NULL }
15457 };
15458
15459 static const per_choice_t T_userInputSupportIndication_choice[] = {
15460   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
15461   {   1, "basicString"                 , ASN1_EXTENSION_ROOT    , dissect_basicString },
15462   {   2, "iA5String"                   , ASN1_EXTENSION_ROOT    , dissect_iA5String },
15463   {   3, "generalString"               , ASN1_EXTENSION_ROOT    , dissect_generalString },
15464   {   4, "encryptedBasicString"        , ASN1_NOT_EXTENSION_ROOT, dissect_encryptedBasicString },
15465   {   5, "encryptedIA5String"          , ASN1_NOT_EXTENSION_ROOT, dissect_encryptedIA5String },
15466   {   6, "encryptedGeneralString"      , ASN1_NOT_EXTENSION_ROOT, dissect_encryptedGeneralString },
15467   { 0, NULL, 0, NULL }
15468 };
15469
15470 static int
15471 dissect_h245_T_userInputSupportIndication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15472   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
15473                               ett_h245_T_userInputSupportIndication, T_userInputSupportIndication_choice, "T_userInputSupportIndication",
15474                               NULL);
15475
15476   return offset;
15477 }
15478 static int dissect_userInputSupportIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15479   return dissect_h245_T_userInputSupportIndication(tvb, offset, pinfo, tree, hf_h245_userInputSupportIndication);
15480 }
15481
15482
15483 static int
15484 dissect_h245_IA5String_SIZE_1(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15485   offset = dissect_per_IA5String(tvb, offset, pinfo, tree, hf_index,
15486                                  1, 1);
15487
15488   return offset;
15489 }
15490 static int dissect_signalType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15491   return dissect_h245_IA5String_SIZE_1(tvb, offset, pinfo, tree, hf_h245_signalType);
15492 }
15493
15494 static const per_sequence_t Rtp_sequence[] = {
15495   { "timestamp"                   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_timestamp },
15496   { "expirationTime"              , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_expirationTime },
15497   { "logicalChannelNumber"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_logicalChannelNumber },
15498   { NULL, 0, 0, NULL }
15499 };
15500
15501 static int
15502 dissect_h245_Rtp(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15503   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15504                                 ett_h245_Rtp, Rtp_sequence);
15505
15506   return offset;
15507 }
15508 static int dissect_rtp(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15509   return dissect_h245_Rtp(tvb, offset, pinfo, tree, hf_h245_rtp);
15510 }
15511
15512
15513 static int
15514 dissect_h245_IV8(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15515   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
15516                                     8, 8,
15517                                     NULL, NULL);
15518
15519   return offset;
15520 }
15521 static int dissect_iv8(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15522   return dissect_h245_IV8(tvb, offset, pinfo, tree, hf_h245_iv8);
15523 }
15524
15525
15526 static int
15527 dissect_h245_IV16(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15528   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
15529                                     16, 16,
15530                                     NULL, NULL);
15531
15532   return offset;
15533 }
15534 static int dissect_iv16(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15535   return dissect_h245_IV16(tvb, offset, pinfo, tree, hf_h245_iv16);
15536 }
15537
15538 static const per_sequence_t Params_sequence[] = {
15539   { "iv8"                         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_iv8 },
15540   { "iv16"                        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_iv16 },
15541   { "iv"                          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_iv },
15542   { NULL, 0, 0, NULL }
15543 };
15544
15545 static int
15546 dissect_h245_Params(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15547   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15548                                 ett_h245_Params, Params_sequence);
15549
15550   return offset;
15551 }
15552 static int dissect_paramS(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15553   return dissect_h245_Params(tvb, offset, pinfo, tree, hf_h245_paramS);
15554 }
15555
15556
15557 static int
15558 dissect_h245_OCTET_STRING_SIZE_1(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15559   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
15560                                     1, 1,
15561                                     NULL, NULL);
15562
15563   return offset;
15564 }
15565 static int dissect_encryptedSignalType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15566   return dissect_h245_OCTET_STRING_SIZE_1(tvb, offset, pinfo, tree, hf_h245_encryptedSignalType);
15567 }
15568
15569 static const per_sequence_t T_signal_sequence[] = {
15570   { "signalType"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_signalType },
15571   { "duration"                    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_duration },
15572   { "rtp"                         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rtp },
15573   { "rtpPayloadIndication"        , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rtpPayloadIndication },
15574   { "paramS"                      , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_paramS },
15575   { "encryptedSignalType"         , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_encryptedSignalType },
15576   { NULL, 0, 0, NULL }
15577 };
15578
15579 static int
15580 dissect_h245_T_signal(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15581   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15582                                 ett_h245_T_signal, T_signal_sequence);
15583
15584   return offset;
15585 }
15586 static int dissect_signal(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15587   return dissect_h245_T_signal(tvb, offset, pinfo, tree, hf_h245_signal);
15588 }
15589
15590 static const per_sequence_t Si_rtp_sequence[] = {
15591   { "logicalChannelNumber"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_logicalChannelNumber },
15592   { NULL, 0, 0, NULL }
15593 };
15594
15595 static int
15596 dissect_h245_Si_rtp(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15597   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15598                                 ett_h245_Si_rtp, Si_rtp_sequence);
15599
15600   return offset;
15601 }
15602 static int dissect_si_rtp(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15603   return dissect_h245_Si_rtp(tvb, offset, pinfo, tree, hf_h245_si_rtp);
15604 }
15605
15606 static const per_sequence_t T_signalUpdate_sequence[] = {
15607   { "duration"                    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_duration },
15608   { "rtp"                         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_si_rtp },
15609   { NULL, 0, 0, NULL }
15610 };
15611
15612 static int
15613 dissect_h245_T_signalUpdate(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15614   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15615                                 ett_h245_T_signalUpdate, T_signalUpdate_sequence);
15616
15617   return offset;
15618 }
15619 static int dissect_signalUpdate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15620   return dissect_h245_T_signalUpdate(tvb, offset, pinfo, tree, hf_h245_signalUpdate);
15621 }
15622
15623 static const per_sequence_t EncryptedAlphanumeric_sequence[] = {
15624   { "algorithmOID"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_algorithmOID },
15625   { "paramS"                      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_paramS },
15626   { "encrypted"                   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_encrypted },
15627   { NULL, 0, 0, NULL }
15628 };
15629
15630 static int
15631 dissect_h245_EncryptedAlphanumeric(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15632   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15633                                 ett_h245_EncryptedAlphanumeric, EncryptedAlphanumeric_sequence);
15634
15635   return offset;
15636 }
15637 static int dissect_encryptedAlphanumeric(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15638   return dissect_h245_EncryptedAlphanumeric(tvb, offset, pinfo, tree, hf_h245_encryptedAlphanumeric);
15639 }
15640
15641 static const per_sequence_t T_extendedAlphanumeric_sequence[] = {
15642   { "alphanumeric"                , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_alphanumeric },
15643   { "rtpPayloadIndication"        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rtpPayloadIndication },
15644   { "encryptedAlphanumeric"       , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_encryptedAlphanumeric },
15645   { NULL, 0, 0, NULL }
15646 };
15647
15648 static int
15649 dissect_h245_T_extendedAlphanumeric(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15650   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15651                                 ett_h245_T_extendedAlphanumeric, T_extendedAlphanumeric_sequence);
15652
15653   return offset;
15654 }
15655 static int dissect_extendedAlphanumeric(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15656   return dissect_h245_T_extendedAlphanumeric(tvb, offset, pinfo, tree, hf_h245_extendedAlphanumeric);
15657 }
15658
15659
15660 static const value_string h245_UserInputIndication_vals[] = {
15661   {   0, "nonStandard" },
15662   {   1, "alphanumeric" },
15663   {   2, "userInputSupportIndication" },
15664   {   3, "signal" },
15665   {   4, "signalUpdate" },
15666   {   5, "extendedAlphanumeric" },
15667   {   6, "encryptedAlphanumeric" },
15668   { 0, NULL }
15669 };
15670
15671 static const per_choice_t UserInputIndication_choice[] = {
15672   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandard },
15673   {   1, "alphanumeric"                , ASN1_EXTENSION_ROOT    , dissect_alphanumeric },
15674   {   2, "userInputSupportIndication"  , ASN1_NOT_EXTENSION_ROOT, dissect_userInputSupportIndication },
15675   {   3, "signal"                      , ASN1_NOT_EXTENSION_ROOT, dissect_signal },
15676   {   4, "signalUpdate"                , ASN1_NOT_EXTENSION_ROOT, dissect_signalUpdate },
15677   {   5, "extendedAlphanumeric"        , ASN1_NOT_EXTENSION_ROOT, dissect_extendedAlphanumeric },
15678   {   6, "encryptedAlphanumeric"       , ASN1_NOT_EXTENSION_ROOT, dissect_encryptedAlphanumeric },
15679   { 0, NULL, 0, NULL }
15680 };
15681
15682 static int
15683 dissect_h245_UserInputIndication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15684   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
15685                               ett_h245_UserInputIndication, UserInputIndication_choice, "UserInputIndication",
15686                               NULL);
15687
15688   return offset;
15689 }
15690 static int dissect_userInput(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15691   return dissect_h245_UserInputIndication(tvb, offset, pinfo, tree, hf_h245_userInput);
15692 }
15693
15694 static const per_sequence_t H2250MaximumSkewIndication_sequence[] = {
15695   { "logicalChannelNumber1"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_logicalChannelNumber1 },
15696   { "logicalChannelNumber2"       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_logicalChannelNumber2 },
15697   { "maximumSkew"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_maximumSkew },
15698   { NULL, 0, 0, NULL }
15699 };
15700
15701 static int
15702 dissect_h245_H2250MaximumSkewIndication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15703   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15704                                 ett_h245_H2250MaximumSkewIndication, H2250MaximumSkewIndication_sequence);
15705
15706   return offset;
15707 }
15708 static int dissect_h2250MaximumSkewIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15709   return dissect_h245_H2250MaximumSkewIndication(tvb, offset, pinfo, tree, hf_h245_h2250MaximumSkewIndication);
15710 }
15711
15712 static const per_sequence_t MCLocationIndication_sequence[] = {
15713   { "signalAddress"               , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_signalAddress },
15714   { NULL, 0, 0, NULL }
15715 };
15716
15717 static int
15718 dissect_h245_MCLocationIndication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15719   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15720                                 ett_h245_MCLocationIndication, MCLocationIndication_sequence);
15721
15722   return offset;
15723 }
15724 static int dissect_mcLocationIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15725   return dissect_h245_MCLocationIndication(tvb, offset, pinfo, tree, hf_h245_mcLocationIndication);
15726 }
15727
15728
15729
15730 static int
15731 dissect_h245_INTEGER_0_9(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15732   offset = dissect_per_constrained_integer(tvb, offset, pinfo, tree, hf_index,
15733                                            0U, 9U, NULL, NULL, FALSE);
15734
15735   return offset;
15736 }
15737 static int dissect_sbeNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15738   return dissect_h245_INTEGER_0_9(tvb, offset, pinfo, tree, hf_h245_sbeNumber);
15739 }
15740
15741 static const per_sequence_t TerminalYouAreSeeingInSubPictureNumber_sequence[] = {
15742   { "terminalNumber"              , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_terminalNumber },
15743   { "subPictureNumber"            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_subPictureNumber },
15744   { NULL, 0, 0, NULL }
15745 };
15746
15747 static int
15748 dissect_h245_TerminalYouAreSeeingInSubPictureNumber(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15749   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15750                                 ett_h245_TerminalYouAreSeeingInSubPictureNumber, TerminalYouAreSeeingInSubPictureNumber_sequence);
15751
15752   return offset;
15753 }
15754 static int dissect_terminalYouAreSeeingInSubPictureNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15755   return dissect_h245_TerminalYouAreSeeingInSubPictureNumber(tvb, offset, pinfo, tree, hf_h245_terminalYouAreSeeingInSubPictureNumber);
15756 }
15757
15758 static const per_sequence_t VideoIndicateCompose_sequence[] = {
15759   { "compositionNumber"           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_compositionNumber },
15760   { NULL, 0, 0, NULL }
15761 };
15762
15763 static int
15764 dissect_h245_VideoIndicateCompose(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15765   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15766                                 ett_h245_VideoIndicateCompose, VideoIndicateCompose_sequence);
15767
15768   return offset;
15769 }
15770 static int dissect_videoIndicateCompose(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15771   return dissect_h245_VideoIndicateCompose(tvb, offset, pinfo, tree, hf_h245_videoIndicateCompose);
15772 }
15773
15774
15775 static const value_string h245_ConferenceIndication_vals[] = {
15776   {   0, "sbeNumber" },
15777   {   1, "terminalNumberAssign" },
15778   {   2, "terminalJoinedConference" },
15779   {   3, "terminalLeftConference" },
15780   {   4, "seenByAtLeastOneOther" },
15781   {   5, "cancelSeenByAtLeastOneOther" },
15782   {   6, "seenByAll" },
15783   {   7, "cancelSeenByAll" },
15784   {   8, "terminalYouAreSeeing" },
15785   {   9, "requestForFloor" },
15786   {  10, "withdrawChairToken" },
15787   {  11, "floorRequested" },
15788   {  12, "terminalYouAreSeeingInSubPictureNumber" },
15789   {  13, "videoIndicateCompose" },
15790   { 0, NULL }
15791 };
15792
15793 static const per_choice_t ConferenceIndication_choice[] = {
15794   {   0, "sbeNumber"                   , ASN1_EXTENSION_ROOT    , dissect_sbeNumber },
15795   {   1, "terminalNumberAssign"        , ASN1_EXTENSION_ROOT    , dissect_terminalNumberAssign },
15796   {   2, "terminalJoinedConference"    , ASN1_EXTENSION_ROOT    , dissect_terminalJoinedConference },
15797   {   3, "terminalLeftConference"      , ASN1_EXTENSION_ROOT    , dissect_terminalLeftConference },
15798   {   4, "seenByAtLeastOneOther"       , ASN1_EXTENSION_ROOT    , dissect_seenByAtLeastOneOther },
15799   {   5, "cancelSeenByAtLeastOneOther" , ASN1_EXTENSION_ROOT    , dissect_cancelSeenByAtLeastOneOther },
15800   {   6, "seenByAll"                   , ASN1_EXTENSION_ROOT    , dissect_seenByAll },
15801   {   7, "cancelSeenByAll"             , ASN1_EXTENSION_ROOT    , dissect_cancelSeenByAll },
15802   {   8, "terminalYouAreSeeing"        , ASN1_EXTENSION_ROOT    , dissect_terminalYouAreSeeing },
15803   {   9, "requestForFloor"             , ASN1_EXTENSION_ROOT    , dissect_requestForFloor },
15804   {  10, "withdrawChairToken"          , ASN1_NOT_EXTENSION_ROOT, dissect_withdrawChairToken },
15805   {  11, "floorRequested"              , ASN1_NOT_EXTENSION_ROOT, dissect_floorRequested },
15806   {  12, "terminalYouAreSeeingInSubPictureNumber", ASN1_NOT_EXTENSION_ROOT, dissect_terminalYouAreSeeingInSubPictureNumber },
15807   {  13, "videoIndicateCompose"        , ASN1_NOT_EXTENSION_ROOT, dissect_videoIndicateCompose },
15808   { 0, NULL, 0, NULL }
15809 };
15810
15811 static int
15812 dissect_h245_ConferenceIndication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15813   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
15814                               ett_h245_ConferenceIndication, ConferenceIndication_choice, "ConferenceIndication",
15815                               NULL);
15816
15817   return offset;
15818 }
15819 static int dissect_conferenceIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15820   return dissect_h245_ConferenceIndication(tvb, offset, pinfo, tree, hf_h245_conferenceIndication);
15821 }
15822
15823
15824 static int
15825 dissect_h245_OCTET_STRING_SIZE_1_256(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15826   offset = dissect_per_octet_string(tvb, offset, pinfo, tree, hf_index,
15827                                     1, 256,
15828                                     NULL, NULL);
15829
15830   return offset;
15831 }
15832 static int dissect_productNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15833   return dissect_h245_OCTET_STRING_SIZE_1_256(tvb, offset, pinfo, tree, hf_h245_productNumber);
15834 }
15835 static int dissect_versionNumber(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15836   return dissect_h245_OCTET_STRING_SIZE_1_256(tvb, offset, pinfo, tree, hf_h245_versionNumber);
15837 }
15838
15839 static const per_sequence_t VendorIdentification_sequence[] = {
15840   { "vendor"                      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_vendor },
15841   { "productNumber"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_productNumber },
15842   { "versionNumber"               , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_versionNumber },
15843   { NULL, 0, 0, NULL }
15844 };
15845
15846 static int
15847 dissect_h245_VendorIdentification(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15848   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15849                                 ett_h245_VendorIdentification, VendorIdentification_sequence);
15850
15851   return offset;
15852 }
15853 static int dissect_vendorIdentification(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15854   return dissect_h245_VendorIdentification(tvb, offset, pinfo, tree, hf_h245_vendorIdentification);
15855 }
15856
15857
15858 static const value_string h245_FunctionNotSupportedCause_vals[] = {
15859   {   0, "syntaxError" },
15860   {   1, "semanticError" },
15861   {   2, "unknownFunction" },
15862   { 0, NULL }
15863 };
15864
15865 static const per_choice_t FunctionNotSupportedCause_choice[] = {
15866   {   0, "syntaxError"                 , ASN1_EXTENSION_ROOT    , dissect_syntaxError },
15867   {   1, "semanticError"               , ASN1_EXTENSION_ROOT    , dissect_semanticError },
15868   {   2, "unknownFunction"             , ASN1_EXTENSION_ROOT    , dissect_unknownFunction },
15869   { 0, NULL, 0, NULL }
15870 };
15871
15872 static int
15873 dissect_h245_FunctionNotSupportedCause(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15874   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
15875                               ett_h245_FunctionNotSupportedCause, FunctionNotSupportedCause_choice, "FunctionNotSupportedCause",
15876                               NULL);
15877
15878   return offset;
15879 }
15880 static int dissect_fns_cause(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15881   return dissect_h245_FunctionNotSupportedCause(tvb, offset, pinfo, tree, hf_h245_fns_cause);
15882 }
15883
15884 static const per_sequence_t FunctionNotSupported_sequence[] = {
15885   { "cause"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_fns_cause },
15886   { "returnedFunction"            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_returnedFunction },
15887   { NULL, 0, 0, NULL }
15888 };
15889
15890 static int
15891 dissect_h245_FunctionNotSupported(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15892   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15893                                 ett_h245_FunctionNotSupported, FunctionNotSupported_sequence);
15894
15895   return offset;
15896 }
15897 static int dissect_functionNotSupported(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15898   return dissect_h245_FunctionNotSupported(tvb, offset, pinfo, tree, hf_h245_functionNotSupported);
15899 }
15900
15901 static const per_sequence_t T_crcDesired_sequence[] = {
15902   { NULL, 0, 0, NULL }
15903 };
15904
15905 static int
15906 dissect_h245_T_crcDesired(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15907   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15908                                 ett_h245_T_crcDesired, T_crcDesired_sequence);
15909
15910   return offset;
15911 }
15912 static int dissect_crcDesired(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15913   return dissect_h245_T_crcDesired(tvb, offset, pinfo, tree, hf_h245_crcDesired);
15914 }
15915
15916 static const per_sequence_t T_excessiveError_sequence[] = {
15917   { "connectionIdentifier"        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_connectionIdentifier },
15918   { NULL, 0, 0, NULL }
15919 };
15920
15921 static int
15922 dissect_h245_T_excessiveError(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15923   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15924                                 ett_h245_T_excessiveError, T_excessiveError_sequence);
15925
15926   return offset;
15927 }
15928 static int dissect_excessiveError(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15929   return dissect_h245_T_excessiveError(tvb, offset, pinfo, tree, hf_h245_excessiveError);
15930 }
15931
15932
15933 static const value_string h245_MultilinkIndication_vals[] = {
15934   {   0, "nonStandard" },
15935   {   1, "crcDesired" },
15936   {   2, "excessiveError" },
15937   { 0, NULL }
15938 };
15939
15940 static const per_choice_t MultilinkIndication_choice[] = {
15941   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandardMsg },
15942   {   1, "crcDesired"                  , ASN1_EXTENSION_ROOT    , dissect_crcDesired },
15943   {   2, "excessiveError"              , ASN1_EXTENSION_ROOT    , dissect_excessiveError },
15944   { 0, NULL, 0, NULL }
15945 };
15946
15947 static int
15948 dissect_h245_MultilinkIndication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15949   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
15950                               ett_h245_MultilinkIndication, MultilinkIndication_choice, "MultilinkIndication",
15951                               NULL);
15952
15953   return offset;
15954 }
15955 static int dissect_multilinkIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15956   return dissect_h245_MultilinkIndication(tvb, offset, pinfo, tree, hf_h245_multilinkIndication);
15957 }
15958
15959 static const per_sequence_t LogicalChannelRateRelease_sequence[] = {
15960   { NULL, 0, 0, NULL }
15961 };
15962
15963 static int
15964 dissect_h245_LogicalChannelRateRelease(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15965   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15966                                 ett_h245_LogicalChannelRateRelease, LogicalChannelRateRelease_sequence);
15967
15968   return offset;
15969 }
15970 static int dissect_logicalChannelRateRelease(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15971   return dissect_h245_LogicalChannelRateRelease(tvb, offset, pinfo, tree, hf_h245_logicalChannelRateRelease);
15972 }
15973
15974 static const per_sequence_t FlowControlIndication_sequence[] = {
15975   { "scope"                       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_scope },
15976   { "restriction"                 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_restriction },
15977   { NULL, 0, 0, NULL }
15978 };
15979
15980 static int
15981 dissect_h245_FlowControlIndication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15982   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
15983                                 ett_h245_FlowControlIndication, FlowControlIndication_sequence);
15984
15985   return offset;
15986 }
15987 static int dissect_flowControlIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
15988   return dissect_h245_FlowControlIndication(tvb, offset, pinfo, tree, hf_h245_flowControlIndication);
15989 }
15990
15991 static const per_sequence_t MobileMultilinkReconfigurationIndication_sequence[] = {
15992   { "sampleSize"                  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_sampleSize },
15993   { "samplesPerFrame"             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_samplesPerFrame },
15994   { NULL, 0, 0, NULL }
15995 };
15996
15997 static int
15998 dissect_h245_MobileMultilinkReconfigurationIndication(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
15999   offset = dissect_per_sequence(tvb, offset, pinfo, tree, hf_index,
16000                                 ett_h245_MobileMultilinkReconfigurationIndication, MobileMultilinkReconfigurationIndication_sequence);
16001
16002   return offset;
16003 }
16004 static int dissect_mobileMultilinkReconfigurationIndication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
16005   return dissect_h245_MobileMultilinkReconfigurationIndication(tvb, offset, pinfo, tree, hf_h245_mobileMultilinkReconfigurationIndication);
16006 }
16007
16008
16009 static const value_string h245_IndicationMessage_vals[] = {
16010   {   0, "nonStandard" },
16011   {   1, "functionNotUnderstood" },
16012   {   2, "masterSlaveDeterminationRelease" },
16013   {   3, "terminalCapabilitySetRelease" },
16014   {   4, "openLogicalChannelConfirm" },
16015   {   5, "requestChannelCloseRelease" },
16016   {   6, "multiplexEntrySendRelease" },
16017   {   7, "requestMultiplexEntryRelease" },
16018   {   8, "requestModeRelease" },
16019   {   9, "miscellaneousIndication" },
16020   {  10, "jitterIndication" },
16021   {  11, "h223SkewIndication" },
16022   {  12, "newATMVCIndication" },
16023   {  13, "userInput" },
16024   {  14, "h2250MaximumSkewIndication" },
16025   {  15, "mcLocationIndication" },
16026   {  16, "conferenceIndication" },
16027   {  17, "vendorIdentification" },
16028   {  18, "functionNotSupported" },
16029   {  19, "multilinkIndication" },
16030   {  20, "logicalChannelRateRelease" },
16031   {  21, "flowControlIndication" },
16032   {  22, "mobileMultilinkReconfigurationIndication" },
16033   {  23, "genericIndication" },
16034   { 0, NULL }
16035 };
16036
16037 static const per_choice_t IndicationMessage_choice[] = {
16038   {   0, "nonStandard"                 , ASN1_EXTENSION_ROOT    , dissect_nonStandardMsg },
16039   {   1, "functionNotUnderstood"       , ASN1_EXTENSION_ROOT    , dissect_functionNotUnderstood },
16040   {   2, "masterSlaveDeterminationRelease", ASN1_EXTENSION_ROOT    , dissect_masterSlaveDeterminationRelease },
16041   {   3, "terminalCapabilitySetRelease", ASN1_EXTENSION_ROOT    , dissect_terminalCapabilitySetRelease },
16042   {   4, "openLogicalChannelConfirm"   , ASN1_EXTENSION_ROOT    , dissect_openLogicalChannelConfirm },
16043   {   5, "requestChannelCloseRelease"  , ASN1_EXTENSION_ROOT    , dissect_requestChannelCloseRelease },
16044   {   6, "multiplexEntrySendRelease"   , ASN1_EXTENSION_ROOT    , dissect_multiplexEntrySendRelease },
16045   {   7, "requestMultiplexEntryRelease", ASN1_EXTENSION_ROOT    , dissect_requestMultiplexEntryRelease },
16046   {   8, "requestModeRelease"          , ASN1_EXTENSION_ROOT    , dissect_requestModeRelease },
16047   {   9, "miscellaneousIndication"     , ASN1_EXTENSION_ROOT    , dissect_miscellaneousIndication },
16048   {  10, "jitterIndication"            , ASN1_EXTENSION_ROOT    , dissect_jitterIndication },
16049   {  11, "h223SkewIndication"          , ASN1_EXTENSION_ROOT    , dissect_h223SkewIndication },
16050   {  12, "newATMVCIndication"          , ASN1_EXTENSION_ROOT    , dissect_newATMVCIndication },
16051   {  13, "userInput"                   , ASN1_EXTENSION_ROOT    , dissect_userInput },
16052   {  14, "h2250MaximumSkewIndication"  , ASN1_NOT_EXTENSION_ROOT, dissect_h2250MaximumSkewIndication },
16053   {  15, "mcLocationIndication"        , ASN1_NOT_EXTENSION_ROOT, dissect_mcLocationIndication },
16054   {  16, "conferenceIndication"        , ASN1_NOT_EXTENSION_ROOT, dissect_conferenceIndication },
16055   {  17, "vendorIdentification"        , ASN1_NOT_EXTENSION_ROOT, dissect_vendorIdentification },
16056   {  18, "functionNotSupported"        , ASN1_NOT_EXTENSION_ROOT, dissect_functionNotSupported },
16057   {  19, "multilinkIndication"         , ASN1_NOT_EXTENSION_ROOT, dissect_multilinkIndication },
16058   {  20, "logicalChannelRateRelease"   , ASN1_NOT_EXTENSION_ROOT, dissect_logicalChannelRateRelease },
16059   {  21, "flowControlIndication"       , ASN1_NOT_EXTENSION_ROOT, dissect_flowControlIndication },
16060   {  22, "mobileMultilinkReconfigurationIndication", ASN1_NOT_EXTENSION_ROOT, dissect_mobileMultilinkReconfigurationIndication },
16061   {  23, "genericIndication"           , ASN1_NOT_EXTENSION_ROOT, dissect_genericIndication },
16062   { 0, NULL, 0, NULL }
16063 };
16064
16065 static int
16066 dissect_h245_IndicationMessage(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
16067   guint32 value;
16068   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
16069                               ett_h245_IndicationMessage, IndicationMessage_choice, "IndicationMessage",
16070                               &value);
16071
16072
16073         if (check_col(pinfo->cinfo, COL_INFO)){
16074                 if ( h245_shorttypes == TRUE )
16075                 {
16076                         col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
16077                                 val_to_str(value, h245_IndicationMessage_short_vals, "<unknown>"));
16078                 }
16079                 else
16080                 {
16081                         col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
16082                                 val_to_str(value, h245_IndicationMessage_vals, "<unknown>"));
16083                 }
16084         }
16085
16086         col_set_fence(pinfo->cinfo,COL_INFO);
16087
16088   return offset;
16089 }
16090 static int dissect_indication(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree) {
16091   return dissect_h245_IndicationMessage(tvb, offset, pinfo, tree, hf_h245_indication);
16092 }
16093
16094
16095 static const value_string h245_MultimediaSystemControlMessage_vals[] = {
16096   {   0, "request" },
16097   {   1, "response" },
16098   {   2, "command" },
16099   {   3, "indication" },
16100   { 0, NULL }
16101 };
16102
16103 static const per_choice_t MultimediaSystemControlMessage_choice[] = {
16104   {   0, "request"                     , ASN1_EXTENSION_ROOT    , dissect_request },
16105   {   1, "response"                    , ASN1_EXTENSION_ROOT    , dissect_response },
16106   {   2, "command"                     , ASN1_EXTENSION_ROOT    , dissect_command },
16107   {   3, "indication"                  , ASN1_EXTENSION_ROOT    , dissect_indication },
16108   { 0, NULL, 0, NULL }
16109 };
16110
16111 static int
16112 dissect_h245_MultimediaSystemControlMessage(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
16113   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
16114                               ett_h245_MultimediaSystemControlMessage, MultimediaSystemControlMessage_choice, "MultimediaSystemControlMessage",
16115                               NULL);
16116
16117   return offset;
16118 }
16119
16120
16121 static const value_string h245_Moderfc2733_vals[] = {
16122   {   0, "redundancyEncoding" },
16123   {   1, "separateStream" },
16124   { 0, NULL }
16125 };
16126
16127 static const per_choice_t Moderfc2733_choice[] = {
16128   {   0, "redundancyEncoding"          , ASN1_EXTENSION_ROOT    , dissect_redundancyEncodingFlag },
16129   {   1, "separateStream"              , ASN1_EXTENSION_ROOT    , dissect_separateStream },
16130   { 0, NULL, 0, NULL }
16131 };
16132
16133 static int
16134 dissect_h245_Moderfc2733(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index) {
16135   offset = dissect_per_choice(tvb, offset, pinfo, tree, hf_index,
16136                               ett_h245_Moderfc2733, Moderfc2733_choice, "Moderfc2733",
16137                               NULL);
16138
16139   return offset;
16140 }
16141
16142
16143 /*--- End of included file: packet-h245-fn.c ---*/
16144
16145
16146 void
16147 dissect_h245(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
16148 {
16149         reset_h245_packet_info(&(h245_pi));
16150         h245_pi.msg_type = H245_OTHER;
16151
16152         dissect_tpkt_encap(tvb, pinfo, parent_tree, h245_reassembly, MultimediaSystemControlMessage_handle);
16153
16154         tap_queue_packet(h245_tap, pinfo, &h245_pi);
16155 }
16156
16157 void
16158 dissect_h245_h245(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
16159 {
16160         proto_item *it;
16161         proto_tree *tr;
16162         guint32 offset=0;
16163
16164
16165         if (check_col(pinfo->cinfo, COL_PROTOCOL)){
16166                 col_set_str(pinfo->cinfo, COL_PROTOCOL, "H.245");
16167         }
16168
16169         it=proto_tree_add_protocol_format(parent_tree, proto_h245, tvb, 0, tvb_length(tvb), "H.245");
16170         tr=proto_item_add_subtree(it, ett_h245);
16171         dissect_h245_MultimediaSystemControlMessage(tvb, offset, pinfo ,tr, hf_h245_pdu_type);
16172 }
16173
16174
16175 /*--- proto_register_h245 -------------------------------------------*/
16176 void proto_register_h245(void) {
16177
16178   /* List of fields */
16179   static hf_register_info hf[] = {
16180     { &hf_h245_pdu_type,
16181  { "PDU Type", "h245.pdu_type", FT_UINT32, BASE_DEC,
16182                 VALS(h245_MultimediaSystemControlMessage_vals), 0, "Type of H.245 PDU", HFILL }},
16183
16184 /*--- Included file: packet-h245-hfarr.c ---*/
16185
16186     { &hf_h245_request,
16187       { "request", "h245.request",
16188         FT_UINT32, BASE_DEC, VALS(h245_RequestMessage_vals), 0,
16189         "", HFILL }},
16190     { &hf_h245_response,
16191       { "response", "h245.response",
16192         FT_UINT32, BASE_DEC, VALS(h245_ResponseMessage_vals), 0,
16193         "", HFILL }},
16194     { &hf_h245_command,
16195       { "command", "h245.command",
16196         FT_UINT32, BASE_DEC, VALS(h245_CommandMessage_vals), 0,
16197         "", HFILL }},
16198     { &hf_h245_indication,
16199       { "indication", "h245.indication",
16200         FT_UINT32, BASE_DEC, VALS(h245_IndicationMessage_vals), 0,
16201         "MultimediaSystemControlMessage/indication", HFILL }},
16202     { &hf_h245_nonStandardMsg,
16203       { "nonStandard", "h245.nonStandard",
16204         FT_NONE, BASE_NONE, NULL, 0,
16205         "", HFILL }},
16206     { &hf_h245_masterSlaveDetermination,
16207       { "masterSlaveDetermination", "h245.masterSlaveDetermination",
16208         FT_NONE, BASE_NONE, NULL, 0,
16209         "RequestMessage/masterSlaveDetermination", HFILL }},
16210     { &hf_h245_terminalCapabilitySet,
16211       { "terminalCapabilitySet", "h245.terminalCapabilitySet",
16212         FT_NONE, BASE_NONE, NULL, 0,
16213         "RequestMessage/terminalCapabilitySet", HFILL }},
16214     { &hf_h245_openLogicalChannel,
16215       { "openLogicalChannel", "h245.openLogicalChannel",
16216         FT_NONE, BASE_NONE, NULL, 0,
16217         "RequestMessage/openLogicalChannel", HFILL }},
16218     { &hf_h245_closeLogicalChannel,
16219       { "closeLogicalChannel", "h245.closeLogicalChannel",
16220         FT_NONE, BASE_NONE, NULL, 0,
16221         "RequestMessage/closeLogicalChannel", HFILL }},
16222     { &hf_h245_requestChannelClose,
16223       { "requestChannelClose", "h245.requestChannelClose",
16224         FT_NONE, BASE_NONE, NULL, 0,
16225         "RequestMessage/requestChannelClose", HFILL }},
16226     { &hf_h245_multiplexEntrySend,
16227       { "multiplexEntrySend", "h245.multiplexEntrySend",
16228         FT_NONE, BASE_NONE, NULL, 0,
16229         "RequestMessage/multiplexEntrySend", HFILL }},
16230     { &hf_h245_requestMultiplexEntry,
16231       { "requestMultiplexEntry", "h245.requestMultiplexEntry",
16232         FT_NONE, BASE_NONE, NULL, 0,
16233         "RequestMessage/requestMultiplexEntry", HFILL }},
16234     { &hf_h245_requestMode,
16235       { "requestMode", "h245.requestMode",
16236         FT_NONE, BASE_NONE, NULL, 0,
16237         "RequestMessage/requestMode", HFILL }},
16238     { &hf_h245_roundTripDelayRequest,
16239       { "roundTripDelayRequest", "h245.roundTripDelayRequest",
16240         FT_NONE, BASE_NONE, NULL, 0,
16241         "RequestMessage/roundTripDelayRequest", HFILL }},
16242     { &hf_h245_maintenanceLoopRequest,
16243       { "maintenanceLoopRequest", "h245.maintenanceLoopRequest",
16244         FT_NONE, BASE_NONE, NULL, 0,
16245         "RequestMessage/maintenanceLoopRequest", HFILL }},
16246     { &hf_h245_communicationModeRequest,
16247       { "communicationModeRequest", "h245.communicationModeRequest",
16248         FT_NONE, BASE_NONE, NULL, 0,
16249         "RequestMessage/communicationModeRequest", HFILL }},
16250     { &hf_h245_conferenceRequest,
16251       { "conferenceRequest", "h245.conferenceRequest",
16252         FT_UINT32, BASE_DEC, VALS(h245_ConferenceRequest_vals), 0,
16253         "RequestMessage/conferenceRequest", HFILL }},
16254     { &hf_h245_multilinkRequest,
16255       { "multilinkRequest", "h245.multilinkRequest",
16256         FT_UINT32, BASE_DEC, VALS(h245_MultilinkRequest_vals), 0,
16257         "RequestMessage/multilinkRequest", HFILL }},
16258     { &hf_h245_logicalChannelRateRequest,
16259       { "logicalChannelRateRequest", "h245.logicalChannelRateRequest",
16260         FT_NONE, BASE_NONE, NULL, 0,
16261         "RequestMessage/logicalChannelRateRequest", HFILL }},
16262     { &hf_h245_genericRequest,
16263       { "genericRequest", "h245.genericRequest",
16264         FT_NONE, BASE_NONE, NULL, 0,
16265         "RequestMessage/genericRequest", HFILL }},
16266     { &hf_h245_masterSlaveDeterminationAck,
16267       { "masterSlaveDeterminationAck", "h245.masterSlaveDeterminationAck",
16268         FT_NONE, BASE_NONE, NULL, 0,
16269         "ResponseMessage/masterSlaveDeterminationAck", HFILL }},
16270     { &hf_h245_masterSlaveDeterminationReject,
16271       { "masterSlaveDeterminationReject", "h245.masterSlaveDeterminationReject",
16272         FT_NONE, BASE_NONE, NULL, 0,
16273         "ResponseMessage/masterSlaveDeterminationReject", HFILL }},
16274     { &hf_h245_terminalCapabilitySetAck,
16275       { "terminalCapabilitySetAck", "h245.terminalCapabilitySetAck",
16276         FT_NONE, BASE_NONE, NULL, 0,
16277         "ResponseMessage/terminalCapabilitySetAck", HFILL }},
16278     { &hf_h245_terminalCapabilitySetReject,
16279       { "terminalCapabilitySetReject", "h245.terminalCapabilitySetReject",
16280         FT_NONE, BASE_NONE, NULL, 0,
16281         "ResponseMessage/terminalCapabilitySetReject", HFILL }},
16282     { &hf_h245_openLogicalChannelAck,
16283       { "openLogicalChannelAck", "h245.openLogicalChannelAck",
16284         FT_NONE, BASE_NONE, NULL, 0,
16285         "ResponseMessage/openLogicalChannelAck", HFILL }},
16286     { &hf_h245_openLogicalChannelReject,
16287       { "openLogicalChannelReject", "h245.openLogicalChannelReject",
16288         FT_NONE, BASE_NONE, NULL, 0,
16289         "ResponseMessage/openLogicalChannelReject", HFILL }},
16290     { &hf_h245_closeLogicalChannelAck,
16291       { "closeLogicalChannelAck", "h245.closeLogicalChannelAck",
16292         FT_NONE, BASE_NONE, NULL, 0,
16293         "ResponseMessage/closeLogicalChannelAck", HFILL }},
16294     { &hf_h245_requestChannelCloseAck,
16295       { "requestChannelCloseAck", "h245.requestChannelCloseAck",
16296         FT_NONE, BASE_NONE, NULL, 0,
16297         "ResponseMessage/requestChannelCloseAck", HFILL }},
16298     { &hf_h245_requestChannelCloseReject,
16299       { "requestChannelCloseReject", "h245.requestChannelCloseReject",
16300         FT_NONE, BASE_NONE, NULL, 0,
16301         "ResponseMessage/requestChannelCloseReject", HFILL }},
16302     { &hf_h245_multiplexEntrySendAck,
16303       { "multiplexEntrySendAck", "h245.multiplexEntrySendAck",
16304         FT_NONE, BASE_NONE, NULL, 0,
16305         "ResponseMessage/multiplexEntrySendAck", HFILL }},
16306     { &hf_h245_multiplexEntrySendReject,
16307       { "multiplexEntrySendReject", "h245.multiplexEntrySendReject",
16308         FT_NONE, BASE_NONE, NULL, 0,
16309         "ResponseMessage/multiplexEntrySendReject", HFILL }},
16310     { &hf_h245_requestMultiplexEntryAck,
16311       { "requestMultiplexEntryAck", "h245.requestMultiplexEntryAck",
16312         FT_NONE, BASE_NONE, NULL, 0,
16313         "ResponseMessage/requestMultiplexEntryAck", HFILL }},
16314     { &hf_h245_requestMultiplexEntryReject,
16315       { "requestMultiplexEntryReject", "h245.requestMultiplexEntryReject",
16316         FT_NONE, BASE_NONE, NULL, 0,
16317         "ResponseMessage/requestMultiplexEntryReject", HFILL }},
16318     { &hf_h245_requestModeAck,
16319       { "requestModeAck", "h245.requestModeAck",
16320         FT_NONE, BASE_NONE, NULL, 0,
16321         "ResponseMessage/requestModeAck", HFILL }},
16322     { &hf_h245_requestModeReject,
16323       { "requestModeReject", "h245.requestModeReject",
16324         FT_NONE, BASE_NONE, NULL, 0,
16325         "ResponseMessage/requestModeReject", HFILL }},
16326     { &hf_h245_roundTripDelayResponse,
16327       { "roundTripDelayResponse", "h245.roundTripDelayResponse",
16328         FT_NONE, BASE_NONE, NULL, 0,
16329         "ResponseMessage/roundTripDelayResponse", HFILL }},
16330     { &hf_h245_maintenanceLoopAck,
16331       { "maintenanceLoopAck", "h245.maintenanceLoopAck",
16332         FT_NONE, BASE_NONE, NULL, 0,
16333         "ResponseMessage/maintenanceLoopAck", HFILL }},
16334     { &hf_h245_maintenanceLoopReject,
16335       { "maintenanceLoopReject", "h245.maintenanceLoopReject",
16336         FT_NONE, BASE_NONE, NULL, 0,
16337         "ResponseMessage/maintenanceLoopReject", HFILL }},
16338     { &hf_h245_communicationModeResponse,
16339       { "communicationModeResponse", "h245.communicationModeResponse",
16340         FT_UINT32, BASE_DEC, VALS(h245_CommunicationModeResponse_vals), 0,
16341         "ResponseMessage/communicationModeResponse", HFILL }},
16342     { &hf_h245_conferenceResponse,
16343       { "conferenceResponse", "h245.conferenceResponse",
16344         FT_UINT32, BASE_DEC, VALS(h245_ConferenceResponse_vals), 0,
16345         "ResponseMessage/conferenceResponse", HFILL }},
16346     { &hf_h245_multilinkResponse,
16347       { "multilinkResponse", "h245.multilinkResponse",
16348         FT_UINT32, BASE_DEC, VALS(h245_MultilinkResponse_vals), 0,
16349         "ResponseMessage/multilinkResponse", HFILL }},
16350     { &hf_h245_logicalChannelRateAcknowledge,
16351       { "logicalChannelRateAcknowledge", "h245.logicalChannelRateAcknowledge",
16352         FT_NONE, BASE_NONE, NULL, 0,
16353         "ResponseMessage/logicalChannelRateAcknowledge", HFILL }},
16354     { &hf_h245_logicalChannelRateReject,
16355       { "logicalChannelRateReject", "h245.logicalChannelRateReject",
16356         FT_NONE, BASE_NONE, NULL, 0,
16357         "ResponseMessage/logicalChannelRateReject", HFILL }},
16358     { &hf_h245_genericResponse,
16359       { "genericResponse", "h245.genericResponse",
16360         FT_NONE, BASE_NONE, NULL, 0,
16361         "ResponseMessage/genericResponse", HFILL }},
16362     { &hf_h245_maintenanceLoopOffCommand,
16363       { "maintenanceLoopOffCommand", "h245.maintenanceLoopOffCommand",
16364         FT_NONE, BASE_NONE, NULL, 0,
16365         "CommandMessage/maintenanceLoopOffCommand", HFILL }},
16366     { &hf_h245_sendTerminalCapabilitySet,
16367       { "sendTerminalCapabilitySet", "h245.sendTerminalCapabilitySet",
16368         FT_UINT32, BASE_DEC, VALS(h245_SendTerminalCapabilitySet_vals), 0,
16369         "CommandMessage/sendTerminalCapabilitySet", HFILL }},
16370     { &hf_h245_encryptionCommand,
16371       { "encryptionCommand", "h245.encryptionCommand",
16372         FT_UINT32, BASE_DEC, VALS(h245_EncryptionCommand_vals), 0,
16373         "CommandMessage/encryptionCommand", HFILL }},
16374     { &hf_h245_flowControlCommand,
16375       { "flowControlCommand", "h245.flowControlCommand",
16376         FT_NONE, BASE_NONE, NULL, 0,
16377         "CommandMessage/flowControlCommand", HFILL }},
16378     { &hf_h245_endSessionCommand,
16379       { "endSessionCommand", "h245.endSessionCommand",
16380         FT_UINT32, BASE_DEC, VALS(h245_EndSessionCommand_vals), 0,
16381         "CommandMessage/endSessionCommand", HFILL }},
16382     { &hf_h245_miscellaneousCommand,
16383       { "miscellaneousCommand", "h245.miscellaneousCommand",
16384         FT_NONE, BASE_NONE, NULL, 0,
16385         "CommandMessage/miscellaneousCommand", HFILL }},
16386     { &hf_h245_communicationModeCommand,
16387       { "communicationModeCommand", "h245.communicationModeCommand",
16388         FT_NONE, BASE_NONE, NULL, 0,
16389         "CommandMessage/communicationModeCommand", HFILL }},
16390     { &hf_h245_conferenceCommand,
16391       { "conferenceCommand", "h245.conferenceCommand",
16392         FT_UINT32, BASE_DEC, VALS(h245_ConferenceCommand_vals), 0,
16393         "CommandMessage/conferenceCommand", HFILL }},
16394     { &hf_h245_h223MultiplexReconfiguration,
16395       { "h223MultiplexReconfiguration", "h245.h223MultiplexReconfiguration",
16396         FT_UINT32, BASE_DEC, VALS(h245_H223MultiplexReconfiguration_vals), 0,
16397         "CommandMessage/h223MultiplexReconfiguration", HFILL }},
16398     { &hf_h245_newATMVCCommand,
16399       { "newATMVCCommand", "h245.newATMVCCommand",
16400         FT_NONE, BASE_NONE, NULL, 0,
16401         "CommandMessage/newATMVCCommand", HFILL }},
16402     { &hf_h245_mobileMultilinkReconfigurationCommand,
16403       { "mobileMultilinkReconfigurationCommand", "h245.mobileMultilinkReconfigurationCommand",
16404         FT_NONE, BASE_NONE, NULL, 0,
16405         "CommandMessage/mobileMultilinkReconfigurationCommand", HFILL }},
16406     { &hf_h245_genericCommand,
16407       { "genericCommand", "h245.genericCommand",
16408         FT_NONE, BASE_NONE, NULL, 0,
16409         "CommandMessage/genericCommand", HFILL }},
16410     { &hf_h245_functionNotUnderstood,
16411       { "functionNotUnderstood", "h245.functionNotUnderstood",
16412         FT_UINT32, BASE_DEC, VALS(h245_FunctionNotUnderstood_vals), 0,
16413         "IndicationMessage/functionNotUnderstood", HFILL }},
16414     { &hf_h245_masterSlaveDeterminationRelease,
16415       { "masterSlaveDeterminationRelease", "h245.masterSlaveDeterminationRelease",
16416         FT_NONE, BASE_NONE, NULL, 0,
16417         "IndicationMessage/masterSlaveDeterminationRelease", HFILL }},
16418     { &hf_h245_terminalCapabilitySetRelease,
16419       { "terminalCapabilitySetRelease", "h245.terminalCapabilitySetRelease",
16420         FT_NONE, BASE_NONE, NULL, 0,
16421         "IndicationMessage/terminalCapabilitySetRelease", HFILL }},
16422     { &hf_h245_openLogicalChannelConfirm,
16423       { "openLogicalChannelConfirm", "h245.openLogicalChannelConfirm",
16424         FT_NONE, BASE_NONE, NULL, 0,
16425         "IndicationMessage/openLogicalChannelConfirm", HFILL }},
16426     { &hf_h245_requestChannelCloseRelease,
16427       { "requestChannelCloseRelease", "h245.requestChannelCloseRelease",
16428         FT_NONE, BASE_NONE, NULL, 0,
16429         "IndicationMessage/requestChannelCloseRelease", HFILL }},
16430     { &hf_h245_multiplexEntrySendRelease,
16431       { "multiplexEntrySendRelease", "h245.multiplexEntrySendRelease",
16432         FT_NONE, BASE_NONE, NULL, 0,
16433         "IndicationMessage/multiplexEntrySendRelease", HFILL }},
16434     { &hf_h245_requestMultiplexEntryRelease,
16435       { "requestMultiplexEntryRelease", "h245.requestMultiplexEntryRelease",
16436         FT_NONE, BASE_NONE, NULL, 0,
16437         "IndicationMessage/requestMultiplexEntryRelease", HFILL }},
16438     { &hf_h245_requestModeRelease,
16439       { "requestModeRelease", "h245.requestModeRelease",
16440         FT_NONE, BASE_NONE, NULL, 0,
16441         "IndicationMessage/requestModeRelease", HFILL }},
16442     { &hf_h245_miscellaneousIndication,
16443       { "miscellaneousIndication", "h245.miscellaneousIndication",
16444         FT_NONE, BASE_NONE, NULL, 0,
16445         "IndicationMessage/miscellaneousIndication", HFILL }},
16446     { &hf_h245_jitterIndication,
16447       { "jitterIndication", "h245.jitterIndication",
16448         FT_NONE, BASE_NONE, NULL, 0,
16449         "IndicationMessage/jitterIndication", HFILL }},
16450     { &hf_h245_h223SkewIndication,
16451       { "h223SkewIndication", "h245.h223SkewIndication",
16452         FT_NONE, BASE_NONE, NULL, 0,
16453         "IndicationMessage/h223SkewIndication", HFILL }},
16454     { &hf_h245_newATMVCIndication,
16455       { "newATMVCIndication", "h245.newATMVCIndication",
16456         FT_NONE, BASE_NONE, NULL, 0,
16457         "IndicationMessage/newATMVCIndication", HFILL }},
16458     { &hf_h245_userInput,
16459       { "userInput", "h245.userInput",
16460         FT_UINT32, BASE_DEC, VALS(h245_UserInputIndication_vals), 0,
16461         "IndicationMessage/userInput", HFILL }},
16462     { &hf_h245_h2250MaximumSkewIndication,
16463       { "h2250MaximumSkewIndication", "h245.h2250MaximumSkewIndication",
16464         FT_NONE, BASE_NONE, NULL, 0,
16465         "IndicationMessage/h2250MaximumSkewIndication", HFILL }},
16466     { &hf_h245_mcLocationIndication,
16467       { "mcLocationIndication", "h245.mcLocationIndication",
16468         FT_NONE, BASE_NONE, NULL, 0,
16469         "IndicationMessage/mcLocationIndication", HFILL }},
16470     { &hf_h245_conferenceIndication,
16471       { "conferenceIndication", "h245.conferenceIndication",
16472         FT_UINT32, BASE_DEC, VALS(h245_ConferenceIndication_vals), 0,
16473         "IndicationMessage/conferenceIndication", HFILL }},
16474     { &hf_h245_vendorIdentification,
16475       { "vendorIdentification", "h245.vendorIdentification",
16476         FT_NONE, BASE_NONE, NULL, 0,
16477         "IndicationMessage/vendorIdentification", HFILL }},
16478     { &hf_h245_functionNotSupported,
16479       { "functionNotSupported", "h245.functionNotSupported",
16480         FT_NONE, BASE_NONE, NULL, 0,
16481         "IndicationMessage/functionNotSupported", HFILL }},
16482     { &hf_h245_multilinkIndication,
16483       { "multilinkIndication", "h245.multilinkIndication",
16484         FT_UINT32, BASE_DEC, VALS(h245_MultilinkIndication_vals), 0,
16485         "IndicationMessage/multilinkIndication", HFILL }},
16486     { &hf_h245_logicalChannelRateRelease,
16487       { "logicalChannelRateRelease", "h245.logicalChannelRateRelease",
16488         FT_NONE, BASE_NONE, NULL, 0,
16489         "IndicationMessage/logicalChannelRateRelease", HFILL }},
16490     { &hf_h245_flowControlIndication,
16491       { "flowControlIndication", "h245.flowControlIndication",
16492         FT_NONE, BASE_NONE, NULL, 0,
16493         "IndicationMessage/flowControlIndication", HFILL }},
16494     { &hf_h245_mobileMultilinkReconfigurationIndication,
16495       { "mobileMultilinkReconfigurationIndication", "h245.mobileMultilinkReconfigurationIndication",
16496         FT_NONE, BASE_NONE, NULL, 0,
16497         "IndicationMessage/mobileMultilinkReconfigurationIndication", HFILL }},
16498     { &hf_h245_genericIndication,
16499       { "genericIndication", "h245.genericIndication",
16500         FT_NONE, BASE_NONE, NULL, 0,
16501         "IndicationMessage/genericIndication", HFILL }},
16502     { &hf_h245_messageIdentifier,
16503       { "messageIdentifier", "h245.messageIdentifier",
16504         FT_UINT32, BASE_DEC, VALS(h245_CapabilityIdentifier_vals), 0,
16505         "GenericMessage/messageIdentifier", HFILL }},
16506     { &hf_h245_subMessageIdentifer,
16507       { "subMessageIdentifer", "h245.subMessageIdentifer",
16508         FT_UINT32, BASE_DEC, NULL, 0,
16509         "GenericMessage/subMessageIdentifer", HFILL }},
16510     { &hf_h245_messageContent,
16511       { "messageContent", "h245.messageContent",
16512         FT_NONE, BASE_NONE, NULL, 0,
16513         "GenericMessage/messageContent", HFILL }},
16514     { &hf_h245_messageContent_item,
16515       { "Item", "h245.messageContent_item",
16516         FT_NONE, BASE_NONE, NULL, 0,
16517         "GenericMessage/messageContent/_item", HFILL }},
16518     { &hf_h245_nonStandardData,
16519       { "nonStandardData", "h245.nonStandardData",
16520         FT_NONE, BASE_NONE, NULL, 0,
16521         "", HFILL }},
16522     { &hf_h245_nonStandardIdentifier,
16523       { "nonStandardIdentifier", "h245.nonStandardIdentifier",
16524         FT_UINT32, BASE_DEC, VALS(h245_NonStandardIdentifier_vals), 0,
16525         "NonStandardParameter/nonStandardIdentifier", HFILL }},
16526     { &hf_h245_nsd_data,
16527       { "data", "h245.data",
16528         FT_BYTES, BASE_HEX, NULL, 0,
16529         "NonStandardParameter/data", HFILL }},
16530     { &hf_h245_object,
16531       { "object", "h245.object",
16532         FT_STRING, BASE_NONE, NULL, 0,
16533         "NonStandardIdentifier/object", HFILL }},
16534     { &hf_h245_h221NonStandardID,
16535       { "h221NonStandard", "h245.h221NonStandard",
16536         FT_NONE, BASE_NONE, NULL, 0,
16537         "NonStandardIdentifier/h221NonStandard", HFILL }},
16538     { &hf_h245_t35CountryCode,
16539       { "t35CountryCode", "h245.t35CountryCode",
16540         FT_UINT32, BASE_DEC, NULL, 0,
16541         "NonStandardIdentifier/h221NonStandard/t35CountryCode", HFILL }},
16542     { &hf_h245_t35Extension,
16543       { "t35Extension", "h245.t35Extension",
16544         FT_UINT32, BASE_DEC, NULL, 0,
16545         "NonStandardIdentifier/h221NonStandard/t35Extension", HFILL }},
16546     { &hf_h245_manufacturerCode,
16547       { "manufacturerCode", "h245.manufacturerCode",
16548         FT_UINT32, BASE_DEC, NULL, 0,
16549         "NonStandardIdentifier/h221NonStandard/manufacturerCode", HFILL }},
16550     { &hf_h245_terminalType,
16551       { "terminalType", "h245.terminalType",
16552         FT_UINT32, BASE_DEC, NULL, 0,
16553         "MasterSlaveDetermination/terminalType", HFILL }},
16554     { &hf_h245_statusDeterminationNumber,
16555       { "statusDeterminationNumber", "h245.statusDeterminationNumber",
16556         FT_UINT32, BASE_DEC, NULL, 0,
16557         "MasterSlaveDetermination/statusDeterminationNumber", HFILL }},
16558     { &hf_h245_decision,
16559       { "decision", "h245.decision",
16560         FT_UINT32, BASE_DEC, VALS(h245_T_decision_vals), 0,
16561         "MasterSlaveDeterminationAck/decision", HFILL }},
16562     { &hf_h245_master,
16563       { "master", "h245.master",
16564         FT_NONE, BASE_NONE, NULL, 0,
16565         "MasterSlaveDeterminationAck/decision/master", HFILL }},
16566     { &hf_h245_slave,
16567       { "slave", "h245.slave",
16568         FT_NONE, BASE_NONE, NULL, 0,
16569         "MasterSlaveDeterminationAck/decision/slave", HFILL }},
16570     { &hf_h245_msd_rej_cause,
16571       { "cause", "h245.cause",
16572         FT_UINT32, BASE_DEC, VALS(h245_MasterSlaveDeterminationRejectCause_vals), 0,
16573         "MasterSlaveDeterminationReject/cause", HFILL }},
16574     { &hf_h245_identicalNumbers,
16575       { "identicalNumbers", "h245.identicalNumbers",
16576         FT_NONE, BASE_NONE, NULL, 0,
16577         "MasterSlaveDeterminationReject/cause/identicalNumbers", HFILL }},
16578     { &hf_h245_sequenceNumber,
16579       { "sequenceNumber", "h245.sequenceNumber",
16580         FT_UINT32, BASE_DEC, NULL, 0,
16581         "", HFILL }},
16582     { &hf_h245_protocolIdentifier,
16583       { "protocolIdentifier", "h245.protocolIdentifier",
16584         FT_STRING, BASE_NONE, NULL, 0,
16585         "TerminalCapabilitySet/protocolIdentifier", HFILL }},
16586     { &hf_h245_multiplexCapability,
16587       { "multiplexCapability", "h245.multiplexCapability",
16588         FT_UINT32, BASE_DEC, VALS(h245_MultiplexCapability_vals), 0,
16589         "TerminalCapabilitySet/multiplexCapability", HFILL }},
16590     { &hf_h245_capabilityTable,
16591       { "capabilityTable", "h245.capabilityTable",
16592         FT_NONE, BASE_NONE, NULL, 0,
16593         "TerminalCapabilitySet/capabilityTable", HFILL }},
16594     { &hf_h245_capabilityTable_item,
16595       { "Item", "h245.capabilityTable_item",
16596         FT_NONE, BASE_NONE, NULL, 0,
16597         "TerminalCapabilitySet/capabilityTable/_item", HFILL }},
16598     { &hf_h245_capabilityDescriptors,
16599       { "capabilityDescriptors", "h245.capabilityDescriptors",
16600         FT_NONE, BASE_NONE, NULL, 0,
16601         "TerminalCapabilitySet/capabilityDescriptors", HFILL }},
16602     { &hf_h245_capabilityDescriptors_item,
16603       { "Item", "h245.capabilityDescriptors_item",
16604         FT_NONE, BASE_NONE, NULL, 0,
16605         "TerminalCapabilitySet/capabilityDescriptors/_item", HFILL }},
16606     { &hf_h245_capabilityTableEntryNumber,
16607       { "capabilityTableEntryNumber", "h245.capabilityTableEntryNumber",
16608         FT_UINT32, BASE_DEC, NULL, 0,
16609         "CapabilityTableEntry/capabilityTableEntryNumber", HFILL }},
16610     { &hf_h245_capability,
16611       { "capability", "h245.capability",
16612         FT_UINT32, BASE_DEC, VALS(h245_Capability_vals), 0,
16613         "CapabilityTableEntry/capability", HFILL }},
16614     { &hf_h245_capabilityDescriptorNumber,
16615       { "capabilityDescriptorNumber", "h245.capabilityDescriptorNumber",
16616         FT_UINT32, BASE_DEC, NULL, 0,
16617         "CapabilityDescriptor/capabilityDescriptorNumber", HFILL }},
16618     { &hf_h245_simultaneousCapabilities,
16619       { "simultaneousCapabilities", "h245.simultaneousCapabilities",
16620         FT_NONE, BASE_NONE, NULL, 0,
16621         "CapabilityDescriptor/simultaneousCapabilities", HFILL }},
16622     { &hf_h245_simultaneousCapabilities_item,
16623       { "Item", "h245.simultaneousCapabilities_item",
16624         FT_NONE, BASE_NONE, NULL, 0,
16625         "CapabilityDescriptor/simultaneousCapabilities/_item", HFILL }},
16626     { &hf_h245_AlternativeCapabilitySet_item,
16627       { "Item", "h245.AlternativeCapabilitySet_item",
16628         FT_UINT32, BASE_DEC, NULL, 0,
16629         "AlternativeCapabilitySet/_item", HFILL }},
16630     { &hf_h245_tcs_rej_cause,
16631       { "cause", "h245.cause",
16632         FT_UINT32, BASE_DEC, VALS(h245_TerminalCapabilitySetRejectCause_vals), 0,
16633         "TerminalCapabilitySetReject/cause", HFILL }},
16634     { &hf_h245_unspecified,
16635       { "unspecified", "h245.unspecified",
16636         FT_NONE, BASE_NONE, NULL, 0,
16637         "", HFILL }},
16638     { &hf_h245_undefinedTableEntryUsed,
16639       { "undefinedTableEntryUsed", "h245.undefinedTableEntryUsed",
16640         FT_NONE, BASE_NONE, NULL, 0,
16641         "TerminalCapabilitySetReject/cause/undefinedTableEntryUsed", HFILL }},
16642     { &hf_h245_descriptorCapacityExceeded,
16643       { "descriptorCapacityExceeded", "h245.descriptorCapacityExceeded",
16644         FT_NONE, BASE_NONE, NULL, 0,
16645         "TerminalCapabilitySetReject/cause/descriptorCapacityExceeded", HFILL }},
16646     { &hf_h245_tableEntryCapacityExceeded,
16647       { "tableEntryCapacityExceeded", "h245.tableEntryCapacityExceeded",
16648         FT_UINT32, BASE_DEC, VALS(h245_T_tableEntryCapacityExceeded_vals), 0,
16649         "TerminalCapabilitySetReject/cause/tableEntryCapacityExceeded", HFILL }},
16650     { &hf_h245_highestEntryNumberProcessed,
16651       { "highestEntryNumberProcessed", "h245.highestEntryNumberProcessed",
16652         FT_UINT32, BASE_DEC, NULL, 0,
16653         "TerminalCapabilitySetReject/cause/tableEntryCapacityExceeded/highestEntryNumberProcessed", HFILL }},
16654     { &hf_h245_noneProcessed,
16655       { "noneProcessed", "h245.noneProcessed",
16656         FT_NONE, BASE_NONE, NULL, 0,
16657         "TerminalCapabilitySetReject/cause/tableEntryCapacityExceeded/noneProcessed", HFILL }},
16658     { &hf_h245_nonStandard,
16659       { "nonStandard", "h245.nonStandard",
16660         FT_NONE, BASE_NONE, NULL, 0,
16661         "", HFILL }},
16662     { &hf_h245_receiveVideoCapability,
16663       { "receiveVideoCapability", "h245.receiveVideoCapability",
16664         FT_UINT32, BASE_DEC, VALS(h245_VideoCapability_vals), 0,
16665         "Capability/receiveVideoCapability", HFILL }},
16666     { &hf_h245_transmitVideoCapability,
16667       { "transmitVideoCapability", "h245.transmitVideoCapability",
16668         FT_UINT32, BASE_DEC, VALS(h245_VideoCapability_vals), 0,
16669         "Capability/transmitVideoCapability", HFILL }},
16670     { &hf_h245_receiveAndTransmitVideoCapability,
16671       { "receiveAndTransmitVideoCapability", "h245.receiveAndTransmitVideoCapability",
16672         FT_UINT32, BASE_DEC, VALS(h245_VideoCapability_vals), 0,
16673         "Capability/receiveAndTransmitVideoCapability", HFILL }},
16674     { &hf_h245_receiveAudioCapability,
16675       { "receiveAudioCapability", "h245.receiveAudioCapability",
16676         FT_UINT32, BASE_DEC, VALS(h245_AudioCapability_vals), 0,
16677         "Capability/receiveAudioCapability", HFILL }},
16678     { &hf_h245_transmitAudioCapability,
16679       { "transmitAudioCapability", "h245.transmitAudioCapability",
16680         FT_UINT32, BASE_DEC, VALS(h245_AudioCapability_vals), 0,
16681         "Capability/transmitAudioCapability", HFILL }},
16682     { &hf_h245_receiveAndTransmitAudioCapability,
16683       { "receiveAndTransmitAudioCapability", "h245.receiveAndTransmitAudioCapability",
16684         FT_UINT32, BASE_DEC, VALS(h245_AudioCapability_vals), 0,
16685         "Capability/receiveAndTransmitAudioCapability", HFILL }},
16686     { &hf_h245_receiveDataApplicationCapability,
16687       { "receiveDataApplicationCapability", "h245.receiveDataApplicationCapability",
16688         FT_NONE, BASE_NONE, NULL, 0,
16689         "Capability/receiveDataApplicationCapability", HFILL }},
16690     { &hf_h245_transmitDataApplicationCapability,
16691       { "transmitDataApplicationCapability", "h245.transmitDataApplicationCapability",
16692         FT_NONE, BASE_NONE, NULL, 0,
16693         "Capability/transmitDataApplicationCapability", HFILL }},
16694     { &hf_h245_receiveAndTransmitDataApplicationCapability,
16695       { "receiveAndTransmitDataApplicationCapability", "h245.receiveAndTransmitDataApplicationCapability",
16696         FT_NONE, BASE_NONE, NULL, 0,
16697         "Capability/receiveAndTransmitDataApplicationCapability", HFILL }},
16698     { &hf_h245_h233EncryptionTransmitCapability,
16699       { "h233EncryptionTransmitCapability", "h245.h233EncryptionTransmitCapability",
16700         FT_BOOLEAN, 8, NULL, 0,
16701         "Capability/h233EncryptionTransmitCapability", HFILL }},
16702     { &hf_h245_h233EncryptionReceiveCapability,
16703       { "h233EncryptionReceiveCapability", "h245.h233EncryptionReceiveCapability",
16704         FT_NONE, BASE_NONE, NULL, 0,
16705         "Capability/h233EncryptionReceiveCapability", HFILL }},
16706     { &hf_h245_h233IVResponseTime,
16707       { "h233IVResponseTime", "h245.h233IVResponseTime",
16708         FT_UINT32, BASE_DEC, NULL, 0,
16709         "Capability/h233EncryptionReceiveCapability/h233IVResponseTime", HFILL }},
16710     { &hf_h245_conferenceCapability,
16711       { "conferenceCapability", "h245.conferenceCapability",
16712         FT_NONE, BASE_NONE, NULL, 0,
16713         "Capability/conferenceCapability", HFILL }},
16714     { &hf_h245_h235SecurityCapability,
16715       { "h235SecurityCapability", "h245.h235SecurityCapability",
16716         FT_NONE, BASE_NONE, NULL, 0,
16717         "Capability/h235SecurityCapability", HFILL }},
16718     { &hf_h245_maxPendingReplacementFor,
16719       { "maxPendingReplacementFor", "h245.maxPendingReplacementFor",
16720         FT_UINT32, BASE_DEC, NULL, 0,
16721         "Capability/maxPendingReplacementFor", HFILL }},
16722     { &hf_h245_receiveUserInputCapability,
16723       { "receiveUserInputCapability", "h245.receiveUserInputCapability",
16724         FT_UINT32, BASE_DEC, VALS(h245_UserInputCapability_vals), 0,
16725         "Capability/receiveUserInputCapability", HFILL }},
16726     { &hf_h245_transmitUserInputCapability,
16727       { "transmitUserInputCapability", "h245.transmitUserInputCapability",
16728         FT_UINT32, BASE_DEC, VALS(h245_UserInputCapability_vals), 0,
16729         "Capability/transmitUserInputCapability", HFILL }},
16730     { &hf_h245_receiveAndTransmitUserInputCapability,
16731       { "receiveAndTransmitUserInputCapability", "h245.receiveAndTransmitUserInputCapability",
16732         FT_UINT32, BASE_DEC, VALS(h245_UserInputCapability_vals), 0,
16733         "Capability/receiveAndTransmitUserInputCapability", HFILL }},
16734     { &hf_h245_genericControlCapability,
16735       { "genericControlCapability", "h245.genericControlCapability",
16736         FT_NONE, BASE_NONE, NULL, 0,
16737         "Capability/genericControlCapability", HFILL }},
16738     { &hf_h245_receiveMultiplexedStreamCapability,
16739       { "receiveMultiplexedStreamCapability", "h245.receiveMultiplexedStreamCapability",
16740         FT_NONE, BASE_NONE, NULL, 0,
16741         "Capability/receiveMultiplexedStreamCapability", HFILL }},
16742     { &hf_h245_transmitMultiplexedStreamCapability,
16743       { "transmitMultiplexedStreamCapability", "h245.transmitMultiplexedStreamCapability",
16744         FT_NONE, BASE_NONE, NULL, 0,
16745         "Capability/transmitMultiplexedStreamCapability", HFILL }},
16746     { &hf_h245_receiveAndTransmitMultiplexedStreamCapability,
16747       { "receiveAndTransmitMultiplexedStreamCapability", "h245.receiveAndTransmitMultiplexedStreamCapability",
16748         FT_NONE, BASE_NONE, NULL, 0,
16749         "Capability/receiveAndTransmitMultiplexedStreamCapability", HFILL }},
16750     { &hf_h245_receiveRTPAudioTelephonyEventCapability,
16751       { "receiveRTPAudioTelephonyEventCapability", "h245.receiveRTPAudioTelephonyEventCapability",
16752         FT_NONE, BASE_NONE, NULL, 0,
16753         "Capability/receiveRTPAudioTelephonyEventCapability", HFILL }},
16754     { &hf_h245_receiveRTPAudioToneCapability,
16755       { "receiveRTPAudioToneCapability", "h245.receiveRTPAudioToneCapability",
16756         FT_NONE, BASE_NONE, NULL, 0,
16757         "Capability/receiveRTPAudioToneCapability", HFILL }},
16758     { &hf_h245_fecCapability,
16759       { "fecCapability", "h245.fecCapability",
16760         FT_UINT32, BASE_DEC, VALS(h245_FECCapability_vals), 0,
16761         "Capability/fecCapability", HFILL }},
16762     { &hf_h245_multiplePayloadStreamCapability,
16763       { "multiplePayloadStreamCapability", "h245.multiplePayloadStreamCapability",
16764         FT_NONE, BASE_NONE, NULL, 0,
16765         "Capability/multiplePayloadStreamCapability", HFILL }},
16766     { &hf_h245_encryptionAuthenticationAndIntegrity,
16767       { "encryptionAuthenticationAndIntegrity", "h245.encryptionAuthenticationAndIntegrity",
16768         FT_NONE, BASE_NONE, NULL, 0,
16769         "", HFILL }},
16770     { &hf_h245_mediaCapability,
16771       { "mediaCapability", "h245.mediaCapability",
16772         FT_UINT32, BASE_DEC, NULL, 0,
16773         "H235SecurityCapability/mediaCapability", HFILL }},
16774     { &hf_h245_h222Capability,
16775       { "h222Capability", "h245.h222Capability",
16776         FT_NONE, BASE_NONE, NULL, 0,
16777         "", HFILL }},
16778     { &hf_h245_h223Capability,
16779       { "h223Capability", "h245.h223Capability",
16780         FT_NONE, BASE_NONE, NULL, 0,
16781         "", HFILL }},
16782     { &hf_h245_v76Capability,
16783       { "v76Capability", "h245.v76Capability",
16784         FT_NONE, BASE_NONE, NULL, 0,
16785         "MultiplexCapability/v76Capability", HFILL }},
16786     { &hf_h245_h2250Capability,
16787       { "h2250Capability", "h245.h2250Capability",
16788         FT_NONE, BASE_NONE, NULL, 0,
16789         "MultiplexCapability/h2250Capability", HFILL }},
16790     { &hf_h245_genericMultiplexCapability,
16791       { "genericMultiplexCapability", "h245.genericMultiplexCapability",
16792         FT_NONE, BASE_NONE, NULL, 0,
16793         "MultiplexCapability/genericMultiplexCapability", HFILL }},
16794     { &hf_h245_numberOfVCs,
16795       { "numberOfVCs", "h245.numberOfVCs",
16796         FT_UINT32, BASE_DEC, NULL, 0,
16797         "H222Capability/numberOfVCs", HFILL }},
16798     { &hf_h245_vcCapability,
16799       { "vcCapability", "h245.vcCapability",
16800         FT_NONE, BASE_NONE, NULL, 0,
16801         "H222Capability/vcCapability", HFILL }},
16802     { &hf_h245_vcCapability_item,
16803       { "Item", "h245.vcCapability_item",
16804         FT_NONE, BASE_NONE, NULL, 0,
16805         "H222Capability/vcCapability/_item", HFILL }},
16806     { &hf_h245_aal1,
16807       { "aal1", "h245.aal1",
16808         FT_NONE, BASE_NONE, NULL, 0,
16809         "VCCapability/aal1", HFILL }},
16810     { &hf_h245_nullClockRecovery,
16811       { "nullClockRecovery", "h245.nullClockRecovery",
16812         FT_BOOLEAN, 8, NULL, 0,
16813         "", HFILL }},
16814     { &hf_h245_srtsClockRecovery_bool,
16815       { "srtsClockRecovery", "h245.srtsClockRecovery",
16816         FT_BOOLEAN, 8, NULL, 0,
16817         "VCCapability/aal1/srtsClockRecovery", HFILL }},
16818     { &hf_h245_adaptiveClockRecovery,
16819       { "adaptiveClockRecovery", "h245.adaptiveClockRecovery",
16820         FT_BOOLEAN, 8, NULL, 0,
16821         "", HFILL }},
16822     { &hf_h245_nullErrorCorrection,
16823       { "nullErrorCorrection", "h245.nullErrorCorrection",
16824         FT_BOOLEAN, 8, NULL, 0,
16825         "", HFILL }},
16826     { &hf_h245_longInterleaver,
16827       { "longInterleaver", "h245.longInterleaver",
16828         FT_BOOLEAN, 8, NULL, 0,
16829         "", HFILL }},
16830     { &hf_h245_shortInterleaver,
16831       { "shortInterleaver", "h245.shortInterleaver",
16832         FT_BOOLEAN, 8, NULL, 0,
16833         "", HFILL }},
16834     { &hf_h245_errorCorrectionOnly,
16835       { "errorCorrectionOnly", "h245.errorCorrectionOnly",
16836         FT_BOOLEAN, 8, NULL, 0,
16837         "", HFILL }},
16838     { &hf_h245_structuredDataTransfer,
16839       { "structuredDataTransfer", "h245.structuredDataTransfer",
16840         FT_BOOLEAN, 8, NULL, 0,
16841         "", HFILL }},
16842     { &hf_h245_partiallyFilledCells,
16843       { "partiallyFilledCells", "h245.partiallyFilledCells",
16844         FT_BOOLEAN, 8, NULL, 0,
16845         "", HFILL }},
16846     { &hf_h245_aal5,
16847       { "aal5", "h245.aal5",
16848         FT_NONE, BASE_NONE, NULL, 0,
16849         "VCCapability/aal5", HFILL }},
16850     { &hf_h245_forwardMaximumSDUSize,
16851       { "forwardMaximumSDUSize", "h245.forwardMaximumSDUSize",
16852         FT_UINT32, BASE_DEC, NULL, 0,
16853         "", HFILL }},
16854     { &hf_h245_backwardMaximumSDUSize,
16855       { "backwardMaximumSDUSize", "h245.backwardMaximumSDUSize",
16856         FT_UINT32, BASE_DEC, NULL, 0,
16857         "", HFILL }},
16858     { &hf_h245_transportStream_bool,
16859       { "transportStream", "h245.transportStream",
16860         FT_BOOLEAN, 8, NULL, 0,
16861         "VCCapability/transportStream", HFILL }},
16862     { &hf_h245_programStream,
16863       { "programStream", "h245.programStream",
16864         FT_BOOLEAN, 8, NULL, 0,
16865         "VCCapability/programStream", HFILL }},
16866     { &hf_h245_availableBitRates,
16867       { "availableBitRates", "h245.availableBitRates",
16868         FT_NONE, BASE_NONE, NULL, 0,
16869         "VCCapability/availableBitRates", HFILL }},
16870     { &hf_h245_Avb_type,
16871       { "type", "h245.type",
16872         FT_UINT32, BASE_DEC, VALS(h245_Avb_type_vals), 0,
16873         "VCCapability/availableBitRates/type", HFILL }},
16874     { &hf_h245_singleBitRate,
16875       { "singleBitRate", "h245.singleBitRate",
16876         FT_UINT32, BASE_DEC, NULL, 0,
16877         "VCCapability/availableBitRates/type/singleBitRate", HFILL }},
16878     { &hf_h245_rangeOfBitRates,
16879       { "rangeOfBitRates", "h245.rangeOfBitRates",
16880         FT_NONE, BASE_NONE, NULL, 0,
16881         "VCCapability/availableBitRates/type/rangeOfBitRates", HFILL }},
16882     { &hf_h245_lowerBitRate,
16883       { "lowerBitRate", "h245.lowerBitRate",
16884         FT_UINT32, BASE_DEC, NULL, 0,
16885         "VCCapability/availableBitRates/type/rangeOfBitRates/lowerBitRate", HFILL }},
16886     { &hf_h245_higherBitRate,
16887       { "higherBitRate", "h245.higherBitRate",
16888         FT_UINT32, BASE_DEC, NULL, 0,
16889         "VCCapability/availableBitRates/type/rangeOfBitRates/higherBitRate", HFILL }},
16890     { &hf_h245_aal1ViaGateway,
16891       { "aal1ViaGateway", "h245.aal1ViaGateway",
16892         FT_NONE, BASE_NONE, NULL, 0,
16893         "VCCapability/aal1ViaGateway", HFILL }},
16894     { &hf_h245_gatewayAddress,
16895       { "gatewayAddress", "h245.gatewayAddress",
16896         FT_NONE, BASE_NONE, NULL, 0,
16897         "VCCapability/aal1ViaGateway/gatewayAddress", HFILL }},
16898     { &hf_h245_gatewayAddress_item,
16899       { "Item", "h245.gatewayAddress_item",
16900         FT_NONE, BASE_NONE, NULL, 0,
16901         "VCCapability/aal1ViaGateway/gatewayAddress/_item", HFILL }},
16902     { &hf_h245_srtsClockRecoveryflag,
16903       { "srtsClockRecovery", "h245.srtsClockRecovery",
16904         FT_BOOLEAN, 8, NULL, 0,
16905         "VCCapability/aal1ViaGateway/srtsClockRecovery", HFILL }},
16906     { &hf_h245_transportWithI_frames,
16907       { "transportWithI-frames", "h245.transportWithI_frames",
16908         FT_BOOLEAN, 8, NULL, 0,
16909         "H223Capability/transportWithI-frames", HFILL }},
16910     { &hf_h245_videoWithAL1,
16911       { "videoWithAL1", "h245.videoWithAL1",
16912         FT_BOOLEAN, 8, NULL, 0,
16913         "H223Capability/videoWithAL1", HFILL }},
16914     { &hf_h245_videoWithAL2,
16915       { "videoWithAL2", "h245.videoWithAL2",
16916         FT_BOOLEAN, 8, NULL, 0,
16917         "H223Capability/videoWithAL2", HFILL }},
16918     { &hf_h245_videoWithAL3,
16919       { "videoWithAL3", "h245.videoWithAL3",
16920         FT_BOOLEAN, 8, NULL, 0,
16921         "H223Capability/videoWithAL3", HFILL }},
16922     { &hf_h245_audioWithAL1,
16923       { "audioWithAL1", "h245.audioWithAL1",
16924         FT_BOOLEAN, 8, NULL, 0,
16925         "H223Capability/audioWithAL1", HFILL }},
16926     { &hf_h245_audioWithAL2,
16927       { "audioWithAL2", "h245.audioWithAL2",
16928         FT_BOOLEAN, 8, NULL, 0,
16929         "H223Capability/audioWithAL2", HFILL }},
16930     { &hf_h245_audioWithAL3,
16931       { "audioWithAL3", "h245.audioWithAL3",
16932         FT_BOOLEAN, 8, NULL, 0,
16933         "H223Capability/audioWithAL3", HFILL }},
16934     { &hf_h245_dataWithAL1,
16935       { "dataWithAL1", "h245.dataWithAL1",
16936         FT_BOOLEAN, 8, NULL, 0,
16937         "H223Capability/dataWithAL1", HFILL }},
16938     { &hf_h245_dataWithAL2,
16939       { "dataWithAL2", "h245.dataWithAL2",
16940         FT_BOOLEAN, 8, NULL, 0,
16941         "H223Capability/dataWithAL2", HFILL }},
16942     { &hf_h245_dataWithAL3,
16943       { "dataWithAL3", "h245.dataWithAL3",
16944         FT_BOOLEAN, 8, NULL, 0,
16945         "H223Capability/dataWithAL3", HFILL }},
16946     { &hf_h245_maximumAl2SDUSize,
16947       { "maximumAl2SDUSize", "h245.maximumAl2SDUSize",
16948         FT_UINT32, BASE_DEC, NULL, 0,
16949         "H223Capability/maximumAl2SDUSize", HFILL }},
16950     { &hf_h245_maximumAl3SDUSize,
16951       { "maximumAl3SDUSize", "h245.maximumAl3SDUSize",
16952         FT_UINT32, BASE_DEC, NULL, 0,
16953         "H223Capability/maximumAl3SDUSize", HFILL }},
16954     { &hf_h245_maximumDelayJitter,
16955       { "maximumDelayJitter", "h245.maximumDelayJitter",
16956         FT_UINT32, BASE_DEC, NULL, 0,
16957         "H223Capability/maximumDelayJitter", HFILL }},
16958     { &hf_h245_h223MultiplexTableCapability,
16959       { "h223MultiplexTableCapability", "h245.h223MultiplexTableCapability",
16960         FT_UINT32, BASE_DEC, VALS(h245_T_h223MultiplexTableCapability_vals), 0,
16961         "H223Capability/h223MultiplexTableCapability", HFILL }},
16962     { &hf_h245_basic,
16963       { "basic", "h245.basic",
16964         FT_NONE, BASE_NONE, NULL, 0,
16965         "H223Capability/h223MultiplexTableCapability/basic", HFILL }},
16966     { &hf_h245_enhanced,
16967       { "enhanced", "h245.enhanced",
16968         FT_NONE, BASE_NONE, NULL, 0,
16969         "H223Capability/h223MultiplexTableCapability/enhanced", HFILL }},
16970     { &hf_h245_maximumNestingDepth,
16971       { "maximumNestingDepth", "h245.maximumNestingDepth",
16972         FT_UINT32, BASE_DEC, NULL, 0,
16973         "H223Capability/h223MultiplexTableCapability/enhanced/maximumNestingDepth", HFILL }},
16974     { &hf_h245_maximumElementListSize,
16975       { "maximumElementListSize", "h245.maximumElementListSize",
16976         FT_UINT32, BASE_DEC, NULL, 0,
16977         "H223Capability/h223MultiplexTableCapability/enhanced/maximumElementListSize", HFILL }},
16978     { &hf_h245_maximumSubElementListSize,
16979       { "maximumSubElementListSize", "h245.maximumSubElementListSize",
16980         FT_UINT32, BASE_DEC, NULL, 0,
16981         "H223Capability/h223MultiplexTableCapability/enhanced/maximumSubElementListSize", HFILL }},
16982     { &hf_h245_maxMUXPDUSizeCapability,
16983       { "maxMUXPDUSizeCapability", "h245.maxMUXPDUSizeCapability",
16984         FT_BOOLEAN, 8, NULL, 0,
16985         "H223Capability/maxMUXPDUSizeCapability", HFILL }},
16986     { &hf_h245_nsrpSupport,
16987       { "nsrpSupport", "h245.nsrpSupport",
16988         FT_BOOLEAN, 8, NULL, 0,
16989         "H223Capability/nsrpSupport", HFILL }},
16990     { &hf_h245_mobileOperationTransmitCapability,
16991       { "mobileOperationTransmitCapability", "h245.mobileOperationTransmitCapability",
16992         FT_NONE, BASE_NONE, NULL, 0,
16993         "H223Capability/mobileOperationTransmitCapability", HFILL }},
16994     { &hf_h245_modeChangeCapability,
16995       { "modeChangeCapability", "h245.modeChangeCapability",
16996         FT_BOOLEAN, 8, NULL, 0,
16997         "H223Capability/mobileOperationTransmitCapability/modeChangeCapability", HFILL }},
16998     { &hf_h245_h223AnnexA,
16999       { "h223AnnexA", "h245.h223AnnexA",
17000         FT_BOOLEAN, 8, NULL, 0,
17001         "H223Capability/mobileOperationTransmitCapability/h223AnnexA", HFILL }},
17002     { &hf_h245_h223AnnexADoubleFlagFlag,
17003       { "h223AnnexADoubleFlag", "h245.h223AnnexADoubleFlag",
17004         FT_BOOLEAN, 8, NULL, 0,
17005         "H223Capability/mobileOperationTransmitCapability/h223AnnexADoubleFlag", HFILL }},
17006     { &hf_h245_h223AnnexB,
17007       { "h223AnnexB", "h245.h223AnnexB",
17008         FT_BOOLEAN, 8, NULL, 0,
17009         "H223Capability/mobileOperationTransmitCapability/h223AnnexB", HFILL }},
17010     { &hf_h245_h223AnnexBwithHeader,
17011       { "h223AnnexBwithHeader", "h245.h223AnnexBwithHeader",
17012         FT_BOOLEAN, 8, NULL, 0,
17013         "H223Capability/mobileOperationTransmitCapability/h223AnnexBwithHeader", HFILL }},
17014     { &hf_h245_h223AnnexCCapability,
17015       { "h223AnnexCCapability", "h245.h223AnnexCCapability",
17016         FT_NONE, BASE_NONE, NULL, 0,
17017         "H223Capability/h223AnnexCCapability", HFILL }},
17018     { &hf_h245_bitRate_1_19200,
17019       { "bitRate", "h245.bitRate",
17020         FT_UINT32, BASE_DEC, NULL, 0,
17021         "", HFILL }},
17022     { &hf_h245_mobileMultilinkFrameCapability,
17023       { "mobileMultilinkFrameCapability", "h245.mobileMultilinkFrameCapability",
17024         FT_NONE, BASE_NONE, NULL, 0,
17025         "H223Capability/mobileMultilinkFrameCapability", HFILL }},
17026     { &hf_h245_maximumSampleSize,
17027       { "maximumSampleSize", "h245.maximumSampleSize",
17028         FT_UINT32, BASE_DEC, NULL, 0,
17029         "H223Capability/mobileMultilinkFrameCapability/maximumSampleSize", HFILL }},
17030     { &hf_h245_maximumPayloadLength,
17031       { "maximumPayloadLength", "h245.maximumPayloadLength",
17032         FT_UINT32, BASE_DEC, NULL, 0,
17033         "H223Capability/mobileMultilinkFrameCapability/maximumPayloadLength", HFILL }},
17034     { &hf_h245_videoWithAL1M,
17035       { "videoWithAL1M", "h245.videoWithAL1M",
17036         FT_BOOLEAN, 8, NULL, 0,
17037         "H223AnnexCCapability/videoWithAL1M", HFILL }},
17038     { &hf_h245_videoWithAL2M,
17039       { "videoWithAL2M", "h245.videoWithAL2M",
17040         FT_BOOLEAN, 8, NULL, 0,
17041         "H223AnnexCCapability/videoWithAL2M", HFILL }},
17042     { &hf_h245_videoWithAL3M,
17043       { "videoWithAL3M", "h245.videoWithAL3M",
17044         FT_BOOLEAN, 8, NULL, 0,
17045         "H223AnnexCCapability/videoWithAL3M", HFILL }},
17046     { &hf_h245_audioWithAL1M,
17047       { "audioWithAL1M", "h245.audioWithAL1M",
17048         FT_BOOLEAN, 8, NULL, 0,
17049         "H223AnnexCCapability/audioWithAL1M", HFILL }},
17050     { &hf_h245_audioWithAL2M,
17051       { "audioWithAL2M", "h245.audioWithAL2M",
17052         FT_BOOLEAN, 8, NULL, 0,
17053         "H223AnnexCCapability/audioWithAL2M", HFILL }},
17054     { &hf_h245_audioWithAL3M,
17055       { "audioWithAL3M", "h245.audioWithAL3M",
17056         FT_BOOLEAN, 8, NULL, 0,
17057         "H223AnnexCCapability/audioWithAL3M", HFILL }},
17058     { &hf_h245_dataWithAL1M,
17059       { "dataWithAL1M", "h245.dataWithAL1M",
17060         FT_BOOLEAN, 8, NULL, 0,
17061         "H223AnnexCCapability/dataWithAL1M", HFILL }},
17062     { &hf_h245_dataWithAL2M,
17063       { "dataWithAL2M", "h245.dataWithAL2M",
17064         FT_BOOLEAN, 8, NULL, 0,
17065         "H223AnnexCCapability/dataWithAL2M", HFILL }},
17066     { &hf_h245_dataWithAL3M,
17067       { "dataWithAL3M", "h245.dataWithAL3M",
17068         FT_BOOLEAN, 8, NULL, 0,
17069         "H223AnnexCCapability/dataWithAL3M", HFILL }},
17070     { &hf_h245_alpduInterleaving,
17071       { "alpduInterleaving", "h245.alpduInterleaving",
17072         FT_BOOLEAN, 8, NULL, 0,
17073         "", HFILL }},
17074     { &hf_h245_maximumAL1MPDUSize,
17075       { "maximumAL1MPDUSize", "h245.maximumAL1MPDUSize",
17076         FT_UINT32, BASE_DEC, NULL, 0,
17077         "H223AnnexCCapability/maximumAL1MPDUSize", HFILL }},
17078     { &hf_h245_maximumAL2MSDUSize,
17079       { "maximumAL2MSDUSize", "h245.maximumAL2MSDUSize",
17080         FT_UINT32, BASE_DEC, NULL, 0,
17081         "H223AnnexCCapability/maximumAL2MSDUSize", HFILL }},
17082     { &hf_h245_maximumAL3MSDUSize,
17083       { "maximumAL3MSDUSize", "h245.maximumAL3MSDUSize",
17084         FT_UINT32, BASE_DEC, NULL, 0,
17085         "H223AnnexCCapability/maximumAL3MSDUSize", HFILL }},
17086     { &hf_h245_rsCodeCapability,
17087       { "rsCodeCapability", "h245.rsCodeCapability",
17088         FT_BOOLEAN, 8, NULL, 0,
17089         "H223AnnexCCapability/rsCodeCapability", HFILL }},
17090     { &hf_h245_suspendResumeCapabilitywAddress,
17091       { "suspendResumeCapabilitywAddress", "h245.suspendResumeCapabilitywAddress",
17092         FT_BOOLEAN, 8, NULL, 0,
17093         "V76Capability/suspendResumeCapabilitywAddress", HFILL }},
17094     { &hf_h245_suspendResumeCapabilitywoAddress,
17095       { "suspendResumeCapabilitywoAddress", "h245.suspendResumeCapabilitywoAddress",
17096         FT_BOOLEAN, 8, NULL, 0,
17097         "V76Capability/suspendResumeCapabilitywoAddress", HFILL }},
17098     { &hf_h245_rejCapability,
17099       { "rejCapability", "h245.rejCapability",
17100         FT_BOOLEAN, 8, NULL, 0,
17101         "V76Capability/rejCapability", HFILL }},
17102     { &hf_h245_sREJCapability,
17103       { "sREJCapability", "h245.sREJCapability",
17104         FT_BOOLEAN, 8, NULL, 0,
17105         "V76Capability/sREJCapability", HFILL }},
17106     { &hf_h245_mREJCapability,
17107       { "mREJCapability", "h245.mREJCapability",
17108         FT_BOOLEAN, 8, NULL, 0,
17109         "V76Capability/mREJCapability", HFILL }},
17110     { &hf_h245_crc8bitCapability,
17111       { "crc8bitCapability", "h245.crc8bitCapability",
17112         FT_BOOLEAN, 8, NULL, 0,
17113         "V76Capability/crc8bitCapability", HFILL }},
17114     { &hf_h245_crc16bitCapability,
17115       { "crc16bitCapability", "h245.crc16bitCapability",
17116         FT_BOOLEAN, 8, NULL, 0,
17117         "V76Capability/crc16bitCapability", HFILL }},
17118     { &hf_h245_crc32bitCapability,
17119       { "crc32bitCapability", "h245.crc32bitCapability",
17120         FT_BOOLEAN, 8, NULL, 0,
17121         "V76Capability/crc32bitCapability", HFILL }},
17122     { &hf_h245_uihCapability,
17123       { "uihCapability", "h245.uihCapability",
17124         FT_BOOLEAN, 8, NULL, 0,
17125         "V76Capability/uihCapability", HFILL }},
17126     { &hf_h245_numOfDLCS,
17127       { "numOfDLCS", "h245.numOfDLCS",
17128         FT_UINT32, BASE_DEC, NULL, 0,
17129         "V76Capability/numOfDLCS", HFILL }},
17130     { &hf_h245_twoOctetAddressFieldCapability,
17131       { "twoOctetAddressFieldCapability", "h245.twoOctetAddressFieldCapability",
17132         FT_BOOLEAN, 8, NULL, 0,
17133         "V76Capability/twoOctetAddressFieldCapability", HFILL }},
17134     { &hf_h245_loopBackTestCapability,
17135       { "loopBackTestCapability", "h245.loopBackTestCapability",
17136         FT_BOOLEAN, 8, NULL, 0,
17137         "V76Capability/loopBackTestCapability", HFILL }},
17138     { &hf_h245_n401Capability,
17139       { "n401Capability", "h245.n401Capability",
17140         FT_UINT32, BASE_DEC, NULL, 0,
17141         "V76Capability/n401Capability", HFILL }},
17142     { &hf_h245_maxWindowSizeCapability,
17143       { "maxWindowSizeCapability", "h245.maxWindowSizeCapability",
17144         FT_UINT32, BASE_DEC, NULL, 0,
17145         "V76Capability/maxWindowSizeCapability", HFILL }},
17146     { &hf_h245_v75Capability,
17147       { "v75Capability", "h245.v75Capability",
17148         FT_NONE, BASE_NONE, NULL, 0,
17149         "V76Capability/v75Capability", HFILL }},
17150     { &hf_h245_audioHeader,
17151       { "audioHeader", "h245.audioHeader",
17152         FT_BOOLEAN, 8, NULL, 0,
17153         "V75Capability/audioHeader", HFILL }},
17154     { &hf_h245_maximumAudioDelayJitter,
17155       { "maximumAudioDelayJitter", "h245.maximumAudioDelayJitter",
17156         FT_UINT32, BASE_DEC, NULL, 0,
17157         "H2250Capability/maximumAudioDelayJitter", HFILL }},
17158     { &hf_h245_receiveMultipointCapability,
17159       { "receiveMultipointCapability", "h245.receiveMultipointCapability",
17160         FT_NONE, BASE_NONE, NULL, 0,
17161         "H2250Capability/receiveMultipointCapability", HFILL }},
17162     { &hf_h245_transmitMultipointCapability,
17163       { "transmitMultipointCapability", "h245.transmitMultipointCapability",
17164         FT_NONE, BASE_NONE, NULL, 0,
17165         "H2250Capability/transmitMultipointCapability", HFILL }},
17166     { &hf_h245_receiveAndTransmitMultipointCapability,
17167       { "receiveAndTransmitMultipointCapability", "h245.receiveAndTransmitMultipointCapability",
17168         FT_NONE, BASE_NONE, NULL, 0,
17169         "H2250Capability/receiveAndTransmitMultipointCapability", HFILL }},
17170     { &hf_h245_mcCapability,
17171       { "mcCapability", "h245.mcCapability",
17172         FT_NONE, BASE_NONE, NULL, 0,
17173         "H2250Capability/mcCapability", HFILL }},
17174     { &hf_h245_centralizedConferenceMC,
17175       { "centralizedConferenceMC", "h245.centralizedConferenceMC",
17176         FT_BOOLEAN, 8, NULL, 0,
17177         "H2250Capability/mcCapability/centralizedConferenceMC", HFILL }},
17178     { &hf_h245_decentralizedConferenceMC,
17179       { "decentralizedConferenceMC", "h245.decentralizedConferenceMC",
17180         FT_BOOLEAN, 8, NULL, 0,
17181         "H2250Capability/mcCapability/decentralizedConferenceMC", HFILL }},
17182     { &hf_h245_rtcpVideoControlCapability,
17183       { "rtcpVideoControlCapability", "h245.rtcpVideoControlCapability",
17184         FT_BOOLEAN, 8, NULL, 0,
17185         "H2250Capability/rtcpVideoControlCapability", HFILL }},
17186     { &hf_h245_mediaPacketizationCapability,
17187       { "mediaPacketizationCapability", "h245.mediaPacketizationCapability",
17188         FT_NONE, BASE_NONE, NULL, 0,
17189         "H2250Capability/mediaPacketizationCapability", HFILL }},
17190     { &hf_h245_transportCapability,
17191       { "transportCapability", "h245.transportCapability",
17192         FT_NONE, BASE_NONE, NULL, 0,
17193         "", HFILL }},
17194     { &hf_h245_redundancyEncodingCapability,
17195       { "redundancyEncodingCapability", "h245.redundancyEncodingCapability",
17196         FT_NONE, BASE_NONE, NULL, 0,
17197         "H2250Capability/redundancyEncodingCapability", HFILL }},
17198     { &hf_h245_redundancyEncodingCapability_item,
17199       { "Item", "h245.redundancyEncodingCapability_item",
17200         FT_NONE, BASE_NONE, NULL, 0,
17201         "H2250Capability/redundancyEncodingCapability/_item", HFILL }},
17202     { &hf_h245_logicalChannelSwitchingCapability,
17203       { "logicalChannelSwitchingCapability", "h245.logicalChannelSwitchingCapability",
17204         FT_BOOLEAN, 8, NULL, 0,
17205         "H2250Capability/logicalChannelSwitchingCapability", HFILL }},
17206     { &hf_h245_t120DynamicPortCapability,
17207       { "t120DynamicPortCapability", "h245.t120DynamicPortCapability",
17208         FT_BOOLEAN, 8, NULL, 0,
17209         "H2250Capability/t120DynamicPortCapability", HFILL }},
17210     { &hf_h245_h261aVideoPacketization,
17211       { "h261aVideoPacketization", "h245.h261aVideoPacketization",
17212         FT_BOOLEAN, 8, NULL, 0,
17213         "MediaPacketizationCapability/h261aVideoPacketization", HFILL }},
17214     { &hf_h245_rtpPayloadType2,
17215       { "rtpPayloadType2", "h245.rtpPayloadType2",
17216         FT_NONE, BASE_NONE, NULL, 0,
17217         "MediaPacketizationCapability/rtpPayloadType2", HFILL }},
17218     { &hf_h245_rtpPayloadType2_item,
17219       { "Item", "h245.rtpPayloadType2_item",
17220         FT_NONE, BASE_NONE, NULL, 0,
17221         "MediaPacketizationCapability/rtpPayloadType2/_item", HFILL }},
17222     { &hf_h245_qosMode,
17223       { "qosMode", "h245.qosMode",
17224         FT_UINT32, BASE_DEC, VALS(h245_QOSMode_vals), 0,
17225         "RSVPParameters/qosMode", HFILL }},
17226     { &hf_h245_tokenRate,
17227       { "tokenRate", "h245.tokenRate",
17228         FT_UINT32, BASE_DEC, NULL, 0,
17229         "RSVPParameters/tokenRate", HFILL }},
17230     { &hf_h245_bucketSize,
17231       { "bucketSize", "h245.bucketSize",
17232         FT_UINT32, BASE_DEC, NULL, 0,
17233         "RSVPParameters/bucketSize", HFILL }},
17234     { &hf_h245_peakRate,
17235       { "peakRate", "h245.peakRate",
17236         FT_UINT32, BASE_DEC, NULL, 0,
17237         "RSVPParameters/peakRate", HFILL }},
17238     { &hf_h245_minPoliced,
17239       { "minPoliced", "h245.minPoliced",
17240         FT_UINT32, BASE_DEC, NULL, 0,
17241         "RSVPParameters/minPoliced", HFILL }},
17242     { &hf_h245_maxPktSize,
17243       { "maxPktSize", "h245.maxPktSize",
17244         FT_UINT32, BASE_DEC, NULL, 0,
17245         "RSVPParameters/maxPktSize", HFILL }},
17246     { &hf_h245_guaranteedQOS,
17247       { "guaranteedQOS", "h245.guaranteedQOS",
17248         FT_NONE, BASE_NONE, NULL, 0,
17249         "QOSMode/guaranteedQOS", HFILL }},
17250     { &hf_h245_controlledLoad,
17251       { "controlledLoad", "h245.controlledLoad",
17252         FT_NONE, BASE_NONE, NULL, 0,
17253         "QOSMode/controlledLoad", HFILL }},
17254     { &hf_h245_maxNTUSize,
17255       { "maxNTUSize", "h245.maxNTUSize",
17256         FT_UINT32, BASE_DEC, NULL, 0,
17257         "ATMParameters/maxNTUSize", HFILL }},
17258     { &hf_h245_atmUBR,
17259       { "atmUBR", "h245.atmUBR",
17260         FT_BOOLEAN, 8, NULL, 0,
17261         "ATMParameters/atmUBR", HFILL }},
17262     { &hf_h245_atmrtVBR,
17263       { "atmrtVBR", "h245.atmrtVBR",
17264         FT_BOOLEAN, 8, NULL, 0,
17265         "ATMParameters/atmrtVBR", HFILL }},
17266     { &hf_h245_atmnrtVBR,
17267       { "atmnrtVBR", "h245.atmnrtVBR",
17268         FT_BOOLEAN, 8, NULL, 0,
17269         "ATMParameters/atmnrtVBR", HFILL }},
17270     { &hf_h245_atmABR,
17271       { "atmABR", "h245.atmABR",
17272         FT_BOOLEAN, 8, NULL, 0,
17273         "ATMParameters/atmABR", HFILL }},
17274     { &hf_h245_atmCBR,
17275       { "atmCBR", "h245.atmCBR",
17276         FT_BOOLEAN, 8, NULL, 0,
17277         "ATMParameters/atmCBR", HFILL }},
17278     { &hf_h245_rsvpParameters,
17279       { "rsvpParameters", "h245.rsvpParameters",
17280         FT_NONE, BASE_NONE, NULL, 0,
17281         "QOSCapability/rsvpParameters", HFILL }},
17282     { &hf_h245_atmParameters,
17283       { "atmParameters", "h245.atmParameters",
17284         FT_NONE, BASE_NONE, NULL, 0,
17285         "QOSCapability/atmParameters", HFILL }},
17286     { &hf_h245_ip_UDP,
17287       { "ip-UDP", "h245.ip_UDP",
17288         FT_NONE, BASE_NONE, NULL, 0,
17289         "MediaTransportType/ip-UDP", HFILL }},
17290     { &hf_h245_ip_TCP,
17291       { "ip-TCP", "h245.ip_TCP",
17292         FT_NONE, BASE_NONE, NULL, 0,
17293         "MediaTransportType/ip-TCP", HFILL }},
17294     { &hf_h245_atm_AAL5_UNIDIR,
17295       { "atm-AAL5-UNIDIR", "h245.atm_AAL5_UNIDIR",
17296         FT_NONE, BASE_NONE, NULL, 0,
17297         "MediaTransportType/atm-AAL5-UNIDIR", HFILL }},
17298     { &hf_h245_atm_AAL5_BIDIR,
17299       { "atm-AAL5-BIDIR", "h245.atm_AAL5_BIDIR",
17300         FT_NONE, BASE_NONE, NULL, 0,
17301         "MediaTransportType/atm-AAL5-BIDIR", HFILL }},
17302     { &hf_h245_atm_AAL5_compressed,
17303       { "atm-AAL5-compressed", "h245.atm_AAL5_compressed",
17304         FT_NONE, BASE_NONE, NULL, 0,
17305         "MediaTransportType/atm-AAL5-compressed", HFILL }},
17306     { &hf_h245_variable_delta,
17307       { "variable-delta", "h245.variable_delta",
17308         FT_BOOLEAN, 8, NULL, 0,
17309         "MediaTransportType/atm-AAL5-compressed/variable-delta", HFILL }},
17310     { &hf_h245_mediaTransport,
17311       { "mediaTransport", "h245.mediaTransport",
17312         FT_UINT32, BASE_DEC, VALS(h245_MediaTransportType_vals), 0,
17313         "MediaChannelCapability/mediaTransport", HFILL }},
17314     { &hf_h245_qOSCapabilities,
17315       { "qOSCapabilities", "h245.qOSCapabilities",
17316         FT_NONE, BASE_NONE, NULL, 0,
17317         "TransportCapability/qOSCapabilities", HFILL }},
17318     { &hf_h245_qOSCapabilities_item,
17319       { "Item", "h245.qOSCapabilities_item",
17320         FT_NONE, BASE_NONE, NULL, 0,
17321         "TransportCapability/qOSCapabilities/_item", HFILL }},
17322     { &hf_h245_mediaChannelCapabilities,
17323       { "mediaChannelCapabilities", "h245.mediaChannelCapabilities",
17324         FT_NONE, BASE_NONE, NULL, 0,
17325         "TransportCapability/mediaChannelCapabilities", HFILL }},
17326     { &hf_h245_mediaChannelCapabilities_item,
17327       { "Item", "h245.mediaChannelCapabilities_item",
17328         FT_NONE, BASE_NONE, NULL, 0,
17329         "TransportCapability/mediaChannelCapabilities/_item", HFILL }},
17330     { &hf_h245_redundancyEncodingMethod,
17331       { "redundancyEncodingMethod", "h245.redundancyEncodingMethod",
17332         FT_UINT32, BASE_DEC, VALS(h245_RedundancyEncodingMethod_vals), 0,
17333         "", HFILL }},
17334     { &hf_h245_primaryEncoding,
17335       { "primaryEncoding", "h245.primaryEncoding",
17336         FT_UINT32, BASE_DEC, NULL, 0,
17337         "RedundancyEncodingCapability/primaryEncoding", HFILL }},
17338     { &hf_h245_secondaryEncoding2,
17339       { "secondaryEncoding2", "h245.secondaryEncoding2",
17340         FT_NONE, BASE_NONE, NULL, 0,
17341         "RedundancyEncodingCapability/secondaryEncoding2", HFILL }},
17342     { &hf_h245_secondaryEncoding2_item,
17343       { "Item", "h245.secondaryEncoding2_item",
17344         FT_UINT32, BASE_DEC, NULL, 0,
17345         "RedundancyEncodingCapability/secondaryEncoding2/_item", HFILL }},
17346     { &hf_h245_rtpAudioRedundancyEncoding,
17347       { "rtpAudioRedundancyEncoding", "h245.rtpAudioRedundancyEncoding",
17348         FT_NONE, BASE_NONE, NULL, 0,
17349         "RedundancyEncodingMethod/rtpAudioRedundancyEncoding", HFILL }},
17350     { &hf_h245_rtpH263VideoRedundancyEncoding,
17351       { "rtpH263VideoRedundancyEncoding", "h245.rtpH263VideoRedundancyEncoding",
17352         FT_NONE, BASE_NONE, NULL, 0,
17353         "RedundancyEncodingMethod/rtpH263VideoRedundancyEncoding", HFILL }},
17354     { &hf_h245_numberOfThreads,
17355       { "numberOfThreads", "h245.numberOfThreads",
17356         FT_UINT32, BASE_DEC, NULL, 0,
17357         "RTPH263VideoRedundancyEncoding/numberOfThreads", HFILL }},
17358     { &hf_h245_framesBetweenSyncPoints,
17359       { "framesBetweenSyncPoints", "h245.framesBetweenSyncPoints",
17360         FT_UINT32, BASE_DEC, NULL, 0,
17361         "RTPH263VideoRedundancyEncoding/framesBetweenSyncPoints", HFILL }},
17362     { &hf_h245_frameToThreadMapping,
17363       { "frameToThreadMapping", "h245.frameToThreadMapping",
17364         FT_UINT32, BASE_DEC, VALS(h245_T_frameToThreadMapping_vals), 0,
17365         "RTPH263VideoRedundancyEncoding/frameToThreadMapping", HFILL }},
17366     { &hf_h245_roundrobin,
17367       { "roundrobin", "h245.roundrobin",
17368         FT_NONE, BASE_NONE, NULL, 0,
17369         "RTPH263VideoRedundancyEncoding/frameToThreadMapping/roundrobin", HFILL }},
17370     { &hf_h245_custom,
17371       { "custom", "h245.custom",
17372         FT_NONE, BASE_NONE, NULL, 0,
17373         "RTPH263VideoRedundancyEncoding/frameToThreadMapping/custom", HFILL }},
17374     { &hf_h245_custom_item,
17375       { "Item", "h245.custom_item",
17376         FT_NONE, BASE_NONE, NULL, 0,
17377         "RTPH263VideoRedundancyEncoding/frameToThreadMapping/custom/_item", HFILL }},
17378     { &hf_h245_containedThreads,
17379       { "containedThreads", "h245.containedThreads",
17380         FT_NONE, BASE_NONE, NULL, 0,
17381         "RTPH263VideoRedundancyEncoding/containedThreads", HFILL }},
17382     { &hf_h245_containedThreads_item,
17383       { "Item", "h245.containedThreads_item",
17384         FT_UINT32, BASE_DEC, NULL, 0,
17385         "RTPH263VideoRedundancyEncoding/containedThreads/_item", HFILL }},
17386     { &hf_h245_threadNumber,
17387       { "threadNumber", "h245.threadNumber",
17388         FT_UINT32, BASE_DEC, NULL, 0,
17389         "RTPH263VideoRedundancyFrameMapping/threadNumber", HFILL }},
17390     { &hf_h245_frameSequence,
17391       { "frameSequence", "h245.frameSequence",
17392         FT_NONE, BASE_NONE, NULL, 0,
17393         "RTPH263VideoRedundancyFrameMapping/frameSequence", HFILL }},
17394     { &hf_h245_frameSequence_item,
17395       { "Item", "h245.frameSequence_item",
17396         FT_UINT32, BASE_DEC, NULL, 0,
17397         "RTPH263VideoRedundancyFrameMapping/frameSequence/_item", HFILL }},
17398     { &hf_h245_multicastCapability,
17399       { "multicastCapability", "h245.multicastCapability",
17400         FT_BOOLEAN, 8, NULL, 0,
17401         "MultipointCapability/multicastCapability", HFILL }},
17402     { &hf_h245_multiUniCastConference,
17403       { "multiUniCastConference", "h245.multiUniCastConference",
17404         FT_BOOLEAN, 8, NULL, 0,
17405         "MultipointCapability/multiUniCastConference", HFILL }},
17406     { &hf_h245_mediaDistributionCapability,
17407       { "mediaDistributionCapability", "h245.mediaDistributionCapability",
17408         FT_NONE, BASE_NONE, NULL, 0,
17409         "MultipointCapability/mediaDistributionCapability", HFILL }},
17410     { &hf_h245_mediaDistributionCapability_item,
17411       { "Item", "h245.mediaDistributionCapability_item",
17412         FT_NONE, BASE_NONE, NULL, 0,
17413         "MultipointCapability/mediaDistributionCapability/_item", HFILL }},
17414     { &hf_h245_centralizedControl,
17415       { "centralizedControl", "h245.centralizedControl",
17416         FT_BOOLEAN, 8, NULL, 0,
17417         "MediaDistributionCapability/centralizedControl", HFILL }},
17418     { &hf_h245_distributedControl,
17419       { "distributedControl", "h245.distributedControl",
17420         FT_BOOLEAN, 8, NULL, 0,
17421         "MediaDistributionCapability/distributedControl", HFILL }},
17422     { &hf_h245_centralizedAudio,
17423       { "centralizedAudio", "h245.centralizedAudio",
17424         FT_BOOLEAN, 8, NULL, 0,
17425         "MediaDistributionCapability/centralizedAudio", HFILL }},
17426     { &hf_h245_distributedAudio,
17427       { "distributedAudio", "h245.distributedAudio",
17428         FT_BOOLEAN, 8, NULL, 0,
17429         "MediaDistributionCapability/distributedAudio", HFILL }},
17430     { &hf_h245_centralizedVideo,
17431       { "centralizedVideo", "h245.centralizedVideo",
17432         FT_BOOLEAN, 8, NULL, 0,
17433         "MediaDistributionCapability/centralizedVideo", HFILL }},
17434     { &hf_h245_distributedVideo,
17435       { "distributedVideo", "h245.distributedVideo",
17436         FT_BOOLEAN, 8, NULL, 0,
17437         "MediaDistributionCapability/distributedVideo", HFILL }},
17438     { &hf_h245_centralizedData,
17439       { "centralizedData", "h245.centralizedData",
17440         FT_NONE, BASE_NONE, NULL, 0,
17441         "MediaDistributionCapability/centralizedData", HFILL }},
17442     { &hf_h245_centralizedData_item,
17443       { "Item", "h245.centralizedData_item",
17444         FT_NONE, BASE_NONE, NULL, 0,
17445         "MediaDistributionCapability/centralizedData/_item", HFILL }},
17446     { &hf_h245_distributedData,
17447       { "distributedData", "h245.distributedData",
17448         FT_NONE, BASE_NONE, NULL, 0,
17449         "MediaDistributionCapability/distributedData", HFILL }},
17450     { &hf_h245_distributedData_item,
17451       { "Item", "h245.distributedData_item",
17452         FT_NONE, BASE_NONE, NULL, 0,
17453         "MediaDistributionCapability/distributedData/_item", HFILL }},
17454     { &hf_h245_h261VideoCapability,
17455       { "h261VideoCapability", "h245.h261VideoCapability",
17456         FT_NONE, BASE_NONE, NULL, 0,
17457         "VideoCapability/h261VideoCapability", HFILL }},
17458     { &hf_h245_h262VideoCapability,
17459       { "h262VideoCapability", "h245.h262VideoCapability",
17460         FT_NONE, BASE_NONE, NULL, 0,
17461         "VideoCapability/h262VideoCapability", HFILL }},
17462     { &hf_h245_h263VideoCapability,
17463       { "h263VideoCapability", "h245.h263VideoCapability",
17464         FT_NONE, BASE_NONE, NULL, 0,
17465         "VideoCapability/h263VideoCapability", HFILL }},
17466     { &hf_h245_is11172VideoCapability,
17467       { "is11172VideoCapability", "h245.is11172VideoCapability",
17468         FT_NONE, BASE_NONE, NULL, 0,
17469         "VideoCapability/is11172VideoCapability", HFILL }},
17470     { &hf_h245_genericVideoCapability,
17471       { "genericVideoCapability", "h245.genericVideoCapability",
17472         FT_NONE, BASE_NONE, NULL, 0,
17473         "VideoCapability/genericVideoCapability", HFILL }},
17474     { &hf_h245_extendedVideoCapability,
17475       { "extendedVideoCapability", "h245.extendedVideoCapability",
17476         FT_NONE, BASE_NONE, NULL, 0,
17477         "VideoCapability/extendedVideoCapability", HFILL }},
17478     { &hf_h245_videoCapability,
17479       { "videoCapability", "h245.videoCapability",
17480         FT_NONE, BASE_NONE, NULL, 0,
17481         "ExtendedVideoCapability/videoCapability", HFILL }},
17482     { &hf_h245_videoCapability_item,
17483       { "Item", "h245.videoCapability_item",
17484         FT_UINT32, BASE_DEC, VALS(h245_VideoCapability_vals), 0,
17485         "ExtendedVideoCapability/videoCapability/_item", HFILL }},
17486     { &hf_h245_videoCapabilityExtension,
17487       { "videoCapabilityExtension", "h245.videoCapabilityExtension",
17488         FT_NONE, BASE_NONE, NULL, 0,
17489         "ExtendedVideoCapability/videoCapabilityExtension", HFILL }},
17490     { &hf_h245_videoCapabilityExtension_item,
17491       { "Item", "h245.videoCapabilityExtension_item",
17492         FT_NONE, BASE_NONE, NULL, 0,
17493         "ExtendedVideoCapability/videoCapabilityExtension/_item", HFILL }},
17494     { &hf_h245_qcifMPI_1_4,
17495       { "qcifMPI", "h245.qcifMPI",
17496         FT_UINT32, BASE_DEC, NULL, 0,
17497         "H261VideoCapability/qcifMPI", HFILL }},
17498     { &hf_h245_cifMPI_1_4,
17499       { "cifMPI", "h245.cifMPI",
17500         FT_UINT32, BASE_DEC, NULL, 0,
17501         "H261VideoCapability/cifMPI", HFILL }},
17502     { &hf_h245_temporalSpatialTradeOffCapability,
17503       { "temporalSpatialTradeOffCapability", "h245.temporalSpatialTradeOffCapability",
17504         FT_BOOLEAN, 8, NULL, 0,
17505         "", HFILL }},
17506     { &hf_h245_maxBitRate_1_19200,
17507       { "maxBitRate", "h245.maxBitRate",
17508         FT_UINT32, BASE_DEC, NULL, 0,
17509         "H261VideoCapability/maxBitRate", HFILL }},
17510     { &hf_h245_stillImageTransmission,
17511       { "stillImageTransmission", "h245.stillImageTransmission",
17512         FT_BOOLEAN, 8, NULL, 0,
17513         "", HFILL }},
17514     { &hf_h245_videoBadMBsCap,
17515       { "videoBadMBsCap", "h245.videoBadMBsCap",
17516         FT_BOOLEAN, 8, NULL, 0,
17517         "", HFILL }},
17518     { &hf_h245_profileAndLevel_SPatML,
17519       { "profileAndLevel-SPatML", "h245.profileAndLevel_SPatML",
17520         FT_BOOLEAN, 8, NULL, 0,
17521         "H262VideoCapability/profileAndLevel-SPatML", HFILL }},
17522     { &hf_h245_profileAndLevel_MPatLL,
17523       { "profileAndLevel-MPatLL", "h245.profileAndLevel_MPatLL",
17524         FT_BOOLEAN, 8, NULL, 0,
17525         "H262VideoCapability/profileAndLevel-MPatLL", HFILL }},
17526     { &hf_h245_profileAndLevel_MPatML,
17527       { "profileAndLevel-MPatML", "h245.profileAndLevel_MPatML",
17528         FT_BOOLEAN, 8, NULL, 0,
17529         "H262VideoCapability/profileAndLevel-MPatML", HFILL }},
17530     { &hf_h245_profileAndLevel_MPatH_14,
17531       { "profileAndLevel-MPatH-14", "h245.profileAndLevel_MPatH_14",
17532         FT_BOOLEAN, 8, NULL, 0,
17533         "H262VideoCapability/profileAndLevel-MPatH-14", HFILL }},
17534     { &hf_h245_profileAndLevel_MPatHL,
17535       { "profileAndLevel-MPatHL", "h245.profileAndLevel_MPatHL",
17536         FT_BOOLEAN, 8, NULL, 0,
17537         "H262VideoCapability/profileAndLevel-MPatHL", HFILL }},
17538     { &hf_h245_profileAndLevel_SNRatLL,
17539       { "profileAndLevel-SNRatLL", "h245.profileAndLevel_SNRatLL",
17540         FT_BOOLEAN, 8, NULL, 0,
17541         "H262VideoCapability/profileAndLevel-SNRatLL", HFILL }},
17542     { &hf_h245_profileAndLevel_SNRatML,
17543       { "profileAndLevel-SNRatML", "h245.profileAndLevel_SNRatML",
17544         FT_BOOLEAN, 8, NULL, 0,
17545         "H262VideoCapability/profileAndLevel-SNRatML", HFILL }},
17546     { &hf_h245_profileAndLevel_SpatialatH_14,
17547       { "profileAndLevel-SpatialatH-14", "h245.profileAndLevel_SpatialatH_14",
17548         FT_BOOLEAN, 8, NULL, 0,
17549         "H262VideoCapability/profileAndLevel-SpatialatH-14", HFILL }},
17550     { &hf_h245_profileAndLevel_HPatML,
17551       { "profileAndLevel-HPatML", "h245.profileAndLevel_HPatML",
17552         FT_BOOLEAN, 8, NULL, 0,
17553         "H262VideoCapability/profileAndLevel-HPatML", HFILL }},
17554     { &hf_h245_profileAndLevel_HPatH_14,
17555       { "profileAndLevel-HPatH-14", "h245.profileAndLevel_HPatH_14",
17556         FT_BOOLEAN, 8, NULL, 0,
17557         "H262VideoCapability/profileAndLevel-HPatH-14", HFILL }},
17558     { &hf_h245_profileAndLevel_HPatHL,
17559       { "profileAndLevel-HPatHL", "h245.profileAndLevel_HPatHL",
17560         FT_BOOLEAN, 8, NULL, 0,
17561         "H262VideoCapability/profileAndLevel-HPatHL", HFILL }},
17562     { &hf_h245_videoBitRate,
17563       { "videoBitRate", "h245.videoBitRate",
17564         FT_UINT32, BASE_DEC, NULL, 0,
17565         "", HFILL }},
17566     { &hf_h245_vbvBufferSize,
17567       { "vbvBufferSize", "h245.vbvBufferSize",
17568         FT_UINT32, BASE_DEC, NULL, 0,
17569         "", HFILL }},
17570     { &hf_h245_samplesPerLine,
17571       { "samplesPerLine", "h245.samplesPerLine",
17572         FT_UINT32, BASE_DEC, NULL, 0,
17573         "", HFILL }},
17574     { &hf_h245_linesPerFrame,
17575       { "linesPerFrame", "h245.linesPerFrame",
17576         FT_UINT32, BASE_DEC, NULL, 0,
17577         "", HFILL }},
17578     { &hf_h245_framesPerSecond,
17579       { "framesPerSecond", "h245.framesPerSecond",
17580         FT_UINT32, BASE_DEC, NULL, 0,
17581         "", HFILL }},
17582     { &hf_h245_luminanceSampleRate,
17583       { "luminanceSampleRate", "h245.luminanceSampleRate",
17584         FT_UINT32, BASE_DEC, NULL, 0,
17585         "", HFILL }},
17586     { &hf_h245_sqcifMPI_1_32,
17587       { "sqcifMPI", "h245.sqcifMPI",
17588         FT_UINT32, BASE_DEC, NULL, 0,
17589         "", HFILL }},
17590     { &hf_h245_qcifMPI,
17591       { "qcifMPI", "h245.qcifMPI",
17592         FT_UINT32, BASE_DEC, NULL, 0,
17593         "", HFILL }},
17594     { &hf_h245_cifMPI,
17595       { "cifMPI", "h245.cifMPI",
17596         FT_UINT32, BASE_DEC, NULL, 0,
17597         "", HFILL }},
17598     { &hf_h245_cif4MPI_1_32,
17599       { "cif4MPI", "h245.cif4MPI",
17600         FT_UINT32, BASE_DEC, NULL, 0,
17601         "", HFILL }},
17602     { &hf_h245_cif16MPI_1_32,
17603       { "cif16MPI", "h245.cif16MPI",
17604         FT_UINT32, BASE_DEC, NULL, 0,
17605         "", HFILL }},
17606     { &hf_h245_maxBitRate,
17607       { "maxBitRate", "h245.maxBitRate",
17608         FT_UINT32, BASE_DEC, NULL, 0,
17609         "", HFILL }},
17610     { &hf_h245_unrestrictedVector,
17611       { "unrestrictedVector", "h245.unrestrictedVector",
17612         FT_BOOLEAN, 8, NULL, 0,
17613         "", HFILL }},
17614     { &hf_h245_arithmeticCoding,
17615       { "arithmeticCoding", "h245.arithmeticCoding",
17616         FT_BOOLEAN, 8, NULL, 0,
17617         "", HFILL }},
17618     { &hf_h245_advancedPrediction,
17619       { "advancedPrediction", "h245.advancedPrediction",
17620         FT_BOOLEAN, 8, NULL, 0,
17621         "", HFILL }},
17622     { &hf_h245_pbFrames,
17623       { "pbFrames", "h245.pbFrames",
17624         FT_BOOLEAN, 8, NULL, 0,
17625         "", HFILL }},
17626     { &hf_h245_hrd_B,
17627       { "hrd-B", "h245.hrd_B",
17628         FT_UINT32, BASE_DEC, NULL, 0,
17629         "H263VideoCapability/hrd-B", HFILL }},
17630     { &hf_h245_bppMaxKb,
17631       { "bppMaxKb", "h245.bppMaxKb",
17632         FT_UINT32, BASE_DEC, NULL, 0,
17633         "H263VideoCapability/bppMaxKb", HFILL }},
17634     { &hf_h245_slowSqcifMPI,
17635       { "slowSqcifMPI", "h245.slowSqcifMPI",
17636         FT_UINT32, BASE_DEC, NULL, 0,
17637         "", HFILL }},
17638     { &hf_h245_slowQcifMPI,
17639       { "slowQcifMPI", "h245.slowQcifMPI",
17640         FT_UINT32, BASE_DEC, NULL, 0,
17641         "", HFILL }},
17642     { &hf_h245_slowCifMPI,
17643       { "slowCifMPI", "h245.slowCifMPI",
17644         FT_UINT32, BASE_DEC, NULL, 0,
17645         "", HFILL }},
17646     { &hf_h245_slowCif4MPI,
17647       { "slowCif4MPI", "h245.slowCif4MPI",
17648         FT_UINT32, BASE_DEC, NULL, 0,
17649         "", HFILL }},
17650     { &hf_h245_slowCif16MPI,
17651       { "slowCif16MPI", "h245.slowCif16MPI",
17652         FT_UINT32, BASE_DEC, NULL, 0,
17653         "", HFILL }},
17654     { &hf_h245_errorCompensation,
17655       { "errorCompensation", "h245.errorCompensation",
17656         FT_BOOLEAN, 8, NULL, 0,
17657         "", HFILL }},
17658     { &hf_h245_enhancementLayerInfo,
17659       { "enhancementLayerInfo", "h245.enhancementLayerInfo",
17660         FT_NONE, BASE_NONE, NULL, 0,
17661         "", HFILL }},
17662     { &hf_h245_h263Options,
17663       { "h263Options", "h245.h263Options",
17664         FT_NONE, BASE_NONE, NULL, 0,
17665         "", HFILL }},
17666     { &hf_h245_baseBitRateConstrained,
17667       { "baseBitRateConstrained", "h245.baseBitRateConstrained",
17668         FT_BOOLEAN, 8, NULL, 0,
17669         "EnhancementLayerInfo/baseBitRateConstrained", HFILL }},
17670     { &hf_h245_snrEnhancement,
17671       { "snrEnhancement", "h245.snrEnhancement",
17672         FT_NONE, BASE_NONE, NULL, 0,
17673         "EnhancementLayerInfo/snrEnhancement", HFILL }},
17674     { &hf_h245_snrEnhancement_item,
17675       { "Item", "h245.snrEnhancement_item",
17676         FT_NONE, BASE_NONE, NULL, 0,
17677         "EnhancementLayerInfo/snrEnhancement/_item", HFILL }},
17678     { &hf_h245_spatialEnhancement,
17679       { "spatialEnhancement", "h245.spatialEnhancement",
17680         FT_NONE, BASE_NONE, NULL, 0,
17681         "EnhancementLayerInfo/spatialEnhancement", HFILL }},
17682     { &hf_h245_spatialEnhancement_item,
17683       { "Item", "h245.spatialEnhancement_item",
17684         FT_NONE, BASE_NONE, NULL, 0,
17685         "EnhancementLayerInfo/spatialEnhancement/_item", HFILL }},
17686     { &hf_h245_bPictureEnhancement,
17687       { "bPictureEnhancement", "h245.bPictureEnhancement",
17688         FT_NONE, BASE_NONE, NULL, 0,
17689         "EnhancementLayerInfo/bPictureEnhancement", HFILL }},
17690     { &hf_h245_bPictureEnhancement_item,
17691       { "Item", "h245.bPictureEnhancement_item",
17692         FT_NONE, BASE_NONE, NULL, 0,
17693         "EnhancementLayerInfo/bPictureEnhancement/_item", HFILL }},
17694     { &hf_h245_enhancementOptions,
17695       { "enhancementOptions", "h245.enhancementOptions",
17696         FT_NONE, BASE_NONE, NULL, 0,
17697         "BEnhancementParameters/enhancementOptions", HFILL }},
17698     { &hf_h245_numberOfBPictures,
17699       { "numberOfBPictures", "h245.numberOfBPictures",
17700         FT_UINT32, BASE_DEC, NULL, 0,
17701         "BEnhancementParameters/numberOfBPictures", HFILL }},
17702     { &hf_h245_advancedIntraCodingMode,
17703       { "advancedIntraCodingMode", "h245.advancedIntraCodingMode",
17704         FT_BOOLEAN, 8, NULL, 0,
17705         "", HFILL }},
17706     { &hf_h245_deblockingFilterMode,
17707       { "deblockingFilterMode", "h245.deblockingFilterMode",
17708         FT_BOOLEAN, 8, NULL, 0,
17709         "", HFILL }},
17710     { &hf_h245_improvedPBFramesMode,
17711       { "improvedPBFramesMode", "h245.improvedPBFramesMode",
17712         FT_BOOLEAN, 8, NULL, 0,
17713         "", HFILL }},
17714     { &hf_h245_unlimitedMotionVectors,
17715       { "unlimitedMotionVectors", "h245.unlimitedMotionVectors",
17716         FT_BOOLEAN, 8, NULL, 0,
17717         "", HFILL }},
17718     { &hf_h245_fullPictureFreeze,
17719       { "fullPictureFreeze", "h245.fullPictureFreeze",
17720         FT_BOOLEAN, 8, NULL, 0,
17721         "H263Options/fullPictureFreeze", HFILL }},
17722     { &hf_h245_partialPictureFreezeAndRelease,
17723       { "partialPictureFreezeAndRelease", "h245.partialPictureFreezeAndRelease",
17724         FT_BOOLEAN, 8, NULL, 0,
17725         "H263Options/partialPictureFreezeAndRelease", HFILL }},
17726     { &hf_h245_resizingPartPicFreezeAndRelease,
17727       { "resizingPartPicFreezeAndRelease", "h245.resizingPartPicFreezeAndRelease",
17728         FT_BOOLEAN, 8, NULL, 0,
17729         "H263Options/resizingPartPicFreezeAndRelease", HFILL }},
17730     { &hf_h245_fullPictureSnapshot,
17731       { "fullPictureSnapshot", "h245.fullPictureSnapshot",
17732         FT_BOOLEAN, 8, NULL, 0,
17733         "H263Options/fullPictureSnapshot", HFILL }},
17734     { &hf_h245_partialPictureSnapshot,
17735       { "partialPictureSnapshot", "h245.partialPictureSnapshot",
17736         FT_BOOLEAN, 8, NULL, 0,
17737         "H263Options/partialPictureSnapshot", HFILL }},
17738     { &hf_h245_videoSegmentTagging,
17739       { "videoSegmentTagging", "h245.videoSegmentTagging",
17740         FT_BOOLEAN, 8, NULL, 0,
17741         "H263Options/videoSegmentTagging", HFILL }},
17742     { &hf_h245_progressiveRefinement,
17743       { "progressiveRefinement", "h245.progressiveRefinement",
17744         FT_BOOLEAN, 8, NULL, 0,
17745         "H263Options/progressiveRefinement", HFILL }},
17746     { &hf_h245_dynamicPictureResizingByFour,
17747       { "dynamicPictureResizingByFour", "h245.dynamicPictureResizingByFour",
17748         FT_BOOLEAN, 8, NULL, 0,
17749         "", HFILL }},
17750     { &hf_h245_dynamicPictureResizingSixteenthPel,
17751       { "dynamicPictureResizingSixteenthPel", "h245.dynamicPictureResizingSixteenthPel",
17752         FT_BOOLEAN, 8, NULL, 0,
17753         "", HFILL }},
17754     { &hf_h245_dynamicWarpingHalfPel,
17755       { "dynamicWarpingHalfPel", "h245.dynamicWarpingHalfPel",
17756         FT_BOOLEAN, 8, NULL, 0,
17757         "", HFILL }},
17758     { &hf_h245_dynamicWarpingSixteenthPel,
17759       { "dynamicWarpingSixteenthPel", "h245.dynamicWarpingSixteenthPel",
17760         FT_BOOLEAN, 8, NULL, 0,
17761         "", HFILL }},
17762     { &hf_h245_independentSegmentDecoding,
17763       { "independentSegmentDecoding", "h245.independentSegmentDecoding",
17764         FT_BOOLEAN, 8, NULL, 0,
17765         "", HFILL }},
17766     { &hf_h245_slicesInOrder_NonRect,
17767       { "slicesInOrder-NonRect", "h245.slicesInOrder_NonRect",
17768         FT_BOOLEAN, 8, NULL, 0,
17769         "", HFILL }},
17770     { &hf_h245_slicesInOrder_Rect,
17771       { "slicesInOrder-Rect", "h245.slicesInOrder_Rect",
17772         FT_BOOLEAN, 8, NULL, 0,
17773         "", HFILL }},
17774     { &hf_h245_slicesNoOrder_NonRect,
17775       { "slicesNoOrder-NonRect", "h245.slicesNoOrder_NonRect",
17776         FT_BOOLEAN, 8, NULL, 0,
17777         "", HFILL }},
17778     { &hf_h245_slicesNoOrder_Rect,
17779       { "slicesNoOrder-Rect", "h245.slicesNoOrder_Rect",
17780         FT_BOOLEAN, 8, NULL, 0,
17781         "", HFILL }},
17782     { &hf_h245_alternateInterVLCMode,
17783       { "alternateInterVLCMode", "h245.alternateInterVLCMode",
17784         FT_BOOLEAN, 8, NULL, 0,
17785         "", HFILL }},
17786     { &hf_h245_modifiedQuantizationMode,
17787       { "modifiedQuantizationMode", "h245.modifiedQuantizationMode",
17788         FT_BOOLEAN, 8, NULL, 0,
17789         "", HFILL }},
17790     { &hf_h245_reducedResolutionUpdate,
17791       { "reducedResolutionUpdate", "h245.reducedResolutionUpdate",
17792         FT_BOOLEAN, 8, NULL, 0,
17793         "", HFILL }},
17794     { &hf_h245_transparencyParameters,
17795       { "transparencyParameters", "h245.transparencyParameters",
17796         FT_NONE, BASE_NONE, NULL, 0,
17797         "H263Options/transparencyParameters", HFILL }},
17798     { &hf_h245_separateVideoBackChannel,
17799       { "separateVideoBackChannel", "h245.separateVideoBackChannel",
17800         FT_BOOLEAN, 8, NULL, 0,
17801         "H263Options/separateVideoBackChannel", HFILL }},
17802     { &hf_h245_refPictureSelection,
17803       { "refPictureSelection", "h245.refPictureSelection",
17804         FT_NONE, BASE_NONE, NULL, 0,
17805         "H263Options/refPictureSelection", HFILL }},
17806     { &hf_h245_customPictureClockFrequency,
17807       { "customPictureClockFrequency", "h245.customPictureClockFrequency",
17808         FT_NONE, BASE_NONE, NULL, 0,
17809         "H263Options/customPictureClockFrequency", HFILL }},
17810     { &hf_h245_customPictureClockFrequency_item,
17811       { "Item", "h245.customPictureClockFrequency_item",
17812         FT_NONE, BASE_NONE, NULL, 0,
17813         "H263Options/customPictureClockFrequency/_item", HFILL }},
17814     { &hf_h245_customPictureFormat,
17815       { "customPictureFormat", "h245.customPictureFormat",
17816         FT_NONE, BASE_NONE, NULL, 0,
17817         "H263Options/customPictureFormat", HFILL }},
17818     { &hf_h245_customPictureFormat_item,
17819       { "Item", "h245.customPictureFormat_item",
17820         FT_NONE, BASE_NONE, NULL, 0,
17821         "H263Options/customPictureFormat/_item", HFILL }},
17822     { &hf_h245_modeCombos,
17823       { "modeCombos", "h245.modeCombos",
17824         FT_NONE, BASE_NONE, NULL, 0,
17825         "H263Options/modeCombos", HFILL }},
17826     { &hf_h245_modeCombos_item,
17827       { "Item", "h245.modeCombos_item",
17828         FT_NONE, BASE_NONE, NULL, 0,
17829         "H263Options/modeCombos/_item", HFILL }},
17830     { &hf_h245_h263Version3Options,
17831       { "h263Version3Options", "h245.h263Version3Options",
17832         FT_NONE, BASE_NONE, NULL, 0,
17833         "", HFILL }},
17834     { &hf_h245_presentationOrder,
17835       { "presentationOrder", "h245.presentationOrder",
17836         FT_UINT32, BASE_DEC, NULL, 0,
17837         "TransparencyParameters/presentationOrder", HFILL }},
17838     { &hf_h245_offset_x,
17839       { "offset-x", "h245.offset_x",
17840         FT_UINT32, BASE_DEC, NULL, 0,
17841         "TransparencyParameters/offset-x", HFILL }},
17842     { &hf_h245_offset_y,
17843       { "offset-y", "h245.offset_y",
17844         FT_UINT32, BASE_DEC, NULL, 0,
17845         "TransparencyParameters/offset-y", HFILL }},
17846     { &hf_h245_scale_x,
17847       { "scale-x", "h245.scale_x",
17848         FT_UINT32, BASE_DEC, NULL, 0,
17849         "TransparencyParameters/scale-x", HFILL }},
17850     { &hf_h245_scale_y,
17851       { "scale-y", "h245.scale_y",
17852         FT_UINT32, BASE_DEC, NULL, 0,
17853         "TransparencyParameters/scale-y", HFILL }},
17854     { &hf_h245_additionalPictureMemory,
17855       { "additionalPictureMemory", "h245.additionalPictureMemory",
17856         FT_NONE, BASE_NONE, NULL, 0,
17857         "RefPictureSelection/additionalPictureMemory", HFILL }},
17858     { &hf_h245_sqcifAdditionalPictureMemory,
17859       { "sqcifAdditionalPictureMemory", "h245.sqcifAdditionalPictureMemory",
17860         FT_UINT32, BASE_DEC, NULL, 0,
17861         "RefPictureSelection/additionalPictureMemory/sqcifAdditionalPictureMemory", HFILL }},
17862     { &hf_h245_qcifAdditionalPictureMemory,
17863       { "qcifAdditionalPictureMemory", "h245.qcifAdditionalPictureMemory",
17864         FT_UINT32, BASE_DEC, NULL, 0,
17865         "RefPictureSelection/additionalPictureMemory/qcifAdditionalPictureMemory", HFILL }},
17866     { &hf_h245_cifAdditionalPictureMemory,
17867       { "cifAdditionalPictureMemory", "h245.cifAdditionalPictureMemory",
17868         FT_UINT32, BASE_DEC, NULL, 0,
17869         "RefPictureSelection/additionalPictureMemory/cifAdditionalPictureMemory", HFILL }},
17870     { &hf_h245_cif4AdditionalPictureMemory,
17871       { "cif4AdditionalPictureMemory", "h245.cif4AdditionalPictureMemory",
17872         FT_UINT32, BASE_DEC, NULL, 0,
17873         "RefPictureSelection/additionalPictureMemory/cif4AdditionalPictureMemory", HFILL }},
17874     { &hf_h245_cif16AdditionalPictureMemory,
17875       { "cif16AdditionalPictureMemory", "h245.cif16AdditionalPictureMemory",
17876         FT_UINT32, BASE_DEC, NULL, 0,
17877         "RefPictureSelection/additionalPictureMemory/cif16AdditionalPictureMemory", HFILL }},
17878     { &hf_h245_bigCpfAdditionalPictureMemory,
17879       { "bigCpfAdditionalPictureMemory", "h245.bigCpfAdditionalPictureMemory",
17880         FT_UINT32, BASE_DEC, NULL, 0,
17881         "RefPictureSelection/additionalPictureMemory/bigCpfAdditionalPictureMemory", HFILL }},
17882     { &hf_h245_videoMux,
17883       { "videoMux", "h245.videoMux",
17884         FT_BOOLEAN, 8, NULL, 0,
17885         "RefPictureSelection/videoMux", HFILL }},
17886     { &hf_h245_videoBackChannelSend,
17887       { "videoBackChannelSend", "h245.videoBackChannelSend",
17888         FT_UINT32, BASE_DEC, VALS(h245_T_videoBackChannelSend_vals), 0,
17889         "RefPictureSelection/videoBackChannelSend", HFILL }},
17890     { &hf_h245_none,
17891       { "none", "h245.none",
17892         FT_NONE, BASE_NONE, NULL, 0,
17893         "", HFILL }},
17894     { &hf_h245_ackMessageOnly,
17895       { "ackMessageOnly", "h245.ackMessageOnly",
17896         FT_NONE, BASE_NONE, NULL, 0,
17897         "RefPictureSelection/videoBackChannelSend/ackMessageOnly", HFILL }},
17898     { &hf_h245_nackMessageOnly,
17899       { "nackMessageOnly", "h245.nackMessageOnly",
17900         FT_NONE, BASE_NONE, NULL, 0,
17901         "RefPictureSelection/videoBackChannelSend/nackMessageOnly", HFILL }},
17902     { &hf_h245_ackOrNackMessageOnly,
17903       { "ackOrNackMessageOnly", "h245.ackOrNackMessageOnly",
17904         FT_NONE, BASE_NONE, NULL, 0,
17905         "RefPictureSelection/videoBackChannelSend/ackOrNackMessageOnly", HFILL }},
17906     { &hf_h245_ackAndNackMessage,
17907       { "ackAndNackMessage", "h245.ackAndNackMessage",
17908         FT_NONE, BASE_NONE, NULL, 0,
17909         "RefPictureSelection/videoBackChannelSend/ackAndNackMessage", HFILL }},
17910     { &hf_h245_enhancedReferencePicSelect,
17911       { "enhancedReferencePicSelect", "h245.enhancedReferencePicSelect",
17912         FT_NONE, BASE_NONE, NULL, 0,
17913         "RefPictureSelection/enhancedReferencePicSelect", HFILL }},
17914     { &hf_h245_subPictureRemovalParameters,
17915       { "subPictureRemovalParameters", "h245.subPictureRemovalParameters",
17916         FT_NONE, BASE_NONE, NULL, 0,
17917         "RefPictureSelection/enhancedReferencePicSelect/subPictureRemovalParameters", HFILL }},
17918     { &hf_h245_mpuHorizMBs,
17919       { "mpuHorizMBs", "h245.mpuHorizMBs",
17920         FT_UINT32, BASE_DEC, NULL, 0,
17921         "RefPictureSelection/enhancedReferencePicSelect/subPictureRemovalParameters/mpuHorizMBs", HFILL }},
17922     { &hf_h245_mpuVertMBs,
17923       { "mpuVertMBs", "h245.mpuVertMBs",
17924         FT_UINT32, BASE_DEC, NULL, 0,
17925         "RefPictureSelection/enhancedReferencePicSelect/subPictureRemovalParameters/mpuVertMBs", HFILL }},
17926     { &hf_h245_mpuTotalNumber,
17927       { "mpuTotalNumber", "h245.mpuTotalNumber",
17928         FT_UINT32, BASE_DEC, NULL, 0,
17929         "RefPictureSelection/enhancedReferencePicSelect/subPictureRemovalParameters/mpuTotalNumber", HFILL }},
17930     { &hf_h245_clockConversionCode,
17931       { "clockConversionCode", "h245.clockConversionCode",
17932         FT_UINT32, BASE_DEC, NULL, 0,
17933         "", HFILL }},
17934     { &hf_h245_clockDivisor,
17935       { "clockDivisor", "h245.clockDivisor",
17936         FT_UINT32, BASE_DEC, NULL, 0,
17937         "", HFILL }},
17938     { &hf_h245_sqcifMPI,
17939       { "sqcifMPI", "h245.sqcifMPI",
17940         FT_UINT32, BASE_DEC, NULL, 0,
17941         "CustomPictureClockFrequency/sqcifMPI", HFILL }},
17942     { &hf_h245_qcifMPI_1_2048,
17943       { "qcifMPI", "h245.qcifMPI",
17944         FT_UINT32, BASE_DEC, NULL, 0,
17945         "CustomPictureClockFrequency/qcifMPI", HFILL }},
17946     { &hf_h245_cifMPI2_1_2048,
17947       { "cifMPI", "h245.cifMPI",
17948         FT_UINT32, BASE_DEC, NULL, 0,
17949         "CustomPictureClockFrequency/cifMPI", HFILL }},
17950     { &hf_h245_cif4MPI,
17951       { "cif4MPI", "h245.cif4MPI",
17952         FT_UINT32, BASE_DEC, NULL, 0,
17953         "CustomPictureClockFrequency/cif4MPI", HFILL }},
17954     { &hf_h245_cif16MPI,
17955       { "cif16MPI", "h245.cif16MPI",
17956         FT_UINT32, BASE_DEC, NULL, 0,
17957         "CustomPictureClockFrequency/cif16MPI", HFILL }},
17958     { &hf_h245_maxCustomPictureWidth,
17959       { "maxCustomPictureWidth", "h245.maxCustomPictureWidth",
17960         FT_UINT32, BASE_DEC, NULL, 0,
17961         "CustomPictureFormat/maxCustomPictureWidth", HFILL }},
17962     { &hf_h245_maxCustomPictureHeight,
17963       { "maxCustomPictureHeight", "h245.maxCustomPictureHeight",
17964         FT_UINT32, BASE_DEC, NULL, 0,
17965         "CustomPictureFormat/maxCustomPictureHeight", HFILL }},
17966     { &hf_h245_minCustomPictureWidth,
17967       { "minCustomPictureWidth", "h245.minCustomPictureWidth",
17968         FT_UINT32, BASE_DEC, NULL, 0,
17969         "CustomPictureFormat/minCustomPictureWidth", HFILL }},
17970     { &hf_h245_minCustomPictureHeight,
17971       { "minCustomPictureHeight", "h245.minCustomPictureHeight",
17972         FT_UINT32, BASE_DEC, NULL, 0,
17973         "CustomPictureFormat/minCustomPictureHeight", HFILL }},
17974     { &hf_h245_mPI,
17975       { "mPI", "h245.mPI",
17976         FT_NONE, BASE_NONE, NULL, 0,
17977         "CustomPictureFormat/mPI", HFILL }},
17978     { &hf_h245_standardMPI,
17979       { "standardMPI", "h245.standardMPI",
17980         FT_UINT32, BASE_DEC, NULL, 0,
17981         "CustomPictureFormat/mPI/standardMPI", HFILL }},
17982     { &hf_h245_customPCF,
17983       { "customPCF", "h245.customPCF",
17984         FT_NONE, BASE_NONE, NULL, 0,
17985         "CustomPictureFormat/mPI/customPCF", HFILL }},
17986     { &hf_h245_customPCF_item,
17987       { "Item", "h245.customPCF_item",
17988         FT_NONE, BASE_NONE, NULL, 0,
17989         "CustomPictureFormat/mPI/customPCF/_item", HFILL }},
17990     { &hf_h245_customMPI,
17991       { "customMPI", "h245.customMPI",
17992         FT_UINT32, BASE_DEC, NULL, 0,
17993         "CustomPictureFormat/mPI/customPCF/_item/customMPI", HFILL }},
17994     { &hf_h245_pixelAspectInformation,
17995       { "pixelAspectInformation", "h245.pixelAspectInformation",
17996         FT_UINT32, BASE_DEC, VALS(h245_T_pixelAspectInformation_vals), 0,
17997         "CustomPictureFormat/pixelAspectInformation", HFILL }},
17998     { &hf_h245_anyPixelAspectRatio,
17999       { "anyPixelAspectRatio", "h245.anyPixelAspectRatio",
18000         FT_BOOLEAN, 8, NULL, 0,
18001         "CustomPictureFormat/pixelAspectInformation/anyPixelAspectRatio", HFILL }},
18002     { &hf_h245_pixelAspectCode,
18003       { "pixelAspectCode", "h245.pixelAspectCode",
18004         FT_NONE, BASE_NONE, NULL, 0,
18005         "CustomPictureFormat/pixelAspectInformation/pixelAspectCode", HFILL }},
18006     { &hf_h245_pixelAspectCode_item,
18007       { "Item", "h245.pixelAspectCode_item",
18008         FT_UINT32, BASE_DEC, NULL, 0,
18009         "CustomPictureFormat/pixelAspectInformation/pixelAspectCode/_item", HFILL }},
18010     { &hf_h245_extendedPAR,
18011       { "extendedPAR", "h245.extendedPAR",
18012         FT_NONE, BASE_NONE, NULL, 0,
18013         "CustomPictureFormat/pixelAspectInformation/extendedPAR", HFILL }},
18014     { &hf_h245_extendedPAR_item,
18015       { "Item", "h245.extendedPAR_item",
18016         FT_NONE, BASE_NONE, NULL, 0,
18017         "CustomPictureFormat/pixelAspectInformation/extendedPAR/_item", HFILL }},
18018     { &hf_h245_width,
18019       { "width", "h245.width",
18020         FT_UINT32, BASE_DEC, NULL, 0,
18021         "CustomPictureFormat/pixelAspectInformation/extendedPAR/_item/width", HFILL }},
18022     { &hf_h245_height,
18023       { "height", "h245.height",
18024         FT_UINT32, BASE_DEC, NULL, 0,
18025         "CustomPictureFormat/pixelAspectInformation/extendedPAR/_item/height", HFILL }},
18026     { &hf_h245_h263VideoUncoupledModes,
18027       { "h263VideoUncoupledModes", "h245.h263VideoUncoupledModes",
18028         FT_NONE, BASE_NONE, NULL, 0,
18029         "H263VideoModeCombos/h263VideoUncoupledModes", HFILL }},
18030     { &hf_h245_h263VideoCoupledModes,
18031       { "h263VideoCoupledModes", "h245.h263VideoCoupledModes",
18032         FT_NONE, BASE_NONE, NULL, 0,
18033         "H263VideoModeCombos/h263VideoCoupledModes", HFILL }},
18034     { &hf_h245_h263VideoCoupledModes_item,
18035       { "Item", "h245.h263VideoCoupledModes_item",
18036         FT_NONE, BASE_NONE, NULL, 0,
18037         "H263VideoModeCombos/h263VideoCoupledModes/_item", HFILL }},
18038     { &hf_h245_referencePicSelect,
18039       { "referencePicSelect", "h245.referencePicSelect",
18040         FT_BOOLEAN, 8, NULL, 0,
18041         "H263ModeComboFlags/referencePicSelect", HFILL }},
18042     { &hf_h245_enhancedReferencePicSelectBool,
18043       { "enhancedReferencePicSelect", "h245.enhancedReferencePicSelect",
18044         FT_BOOLEAN, 8, NULL, 0,
18045         "H263ModeComboFlags/enhancedReferencePicSelect", HFILL }},
18046     { &hf_h245_dataPartitionedSlices,
18047       { "dataPartitionedSlices", "h245.dataPartitionedSlices",
18048         FT_BOOLEAN, 8, NULL, 0,
18049         "H263Version3Options/dataPartitionedSlices", HFILL }},
18050     { &hf_h245_fixedPointIDCT0,
18051       { "fixedPointIDCT0", "h245.fixedPointIDCT0",
18052         FT_BOOLEAN, 8, NULL, 0,
18053         "H263Version3Options/fixedPointIDCT0", HFILL }},
18054     { &hf_h245_interlacedFields,
18055       { "interlacedFields", "h245.interlacedFields",
18056         FT_BOOLEAN, 8, NULL, 0,
18057         "H263Version3Options/interlacedFields", HFILL }},
18058     { &hf_h245_currentPictureHeaderRepetition,
18059       { "currentPictureHeaderRepetition", "h245.currentPictureHeaderRepetition",
18060         FT_BOOLEAN, 8, NULL, 0,
18061         "H263Version3Options/currentPictureHeaderRepetition", HFILL }},
18062     { &hf_h245_previousPictureHeaderRepetition,
18063       { "previousPictureHeaderRepetition", "h245.previousPictureHeaderRepetition",
18064         FT_BOOLEAN, 8, NULL, 0,
18065         "H263Version3Options/previousPictureHeaderRepetition", HFILL }},
18066     { &hf_h245_nextPictureHeaderRepetition,
18067       { "nextPictureHeaderRepetition", "h245.nextPictureHeaderRepetition",
18068         FT_BOOLEAN, 8, NULL, 0,
18069         "H263Version3Options/nextPictureHeaderRepetition", HFILL }},
18070     { &hf_h245_pictureNumberBoolean,
18071       { "pictureNumber", "h245.pictureNumber",
18072         FT_BOOLEAN, 8, NULL, 0,
18073         "H263Version3Options/pictureNumber", HFILL }},
18074     { &hf_h245_spareReferencePictures,
18075       { "spareReferencePictures", "h245.spareReferencePictures",
18076         FT_BOOLEAN, 8, NULL, 0,
18077         "H263Version3Options/spareReferencePictures", HFILL }},
18078     { &hf_h245_constrainedBitstream,
18079       { "constrainedBitstream", "h245.constrainedBitstream",
18080         FT_BOOLEAN, 8, NULL, 0,
18081         "", HFILL }},
18082     { &hf_h245_pictureRate,
18083       { "pictureRate", "h245.pictureRate",
18084         FT_UINT32, BASE_DEC, NULL, 0,
18085         "", HFILL }},
18086     { &hf_h245_g711Alaw64k,
18087       { "g711Alaw64k", "h245.g711Alaw64k",
18088         FT_UINT32, BASE_DEC, NULL, 0,
18089         "AudioCapability/g711Alaw64k", HFILL }},
18090     { &hf_h245_g711Alaw56k,
18091       { "g711Alaw56k", "h245.g711Alaw56k",
18092         FT_UINT32, BASE_DEC, NULL, 0,
18093         "AudioCapability/g711Alaw56k", HFILL }},
18094     { &hf_h245_g711Ulaw64k,
18095       { "g711Ulaw64k", "h245.g711Ulaw64k",
18096         FT_UINT32, BASE_DEC, NULL, 0,
18097         "AudioCapability/g711Ulaw64k", HFILL }},
18098     { &hf_h245_g711Ulaw56k,
18099       { "g711Ulaw56k", "h245.g711Ulaw56k",
18100         FT_UINT32, BASE_DEC, NULL, 0,
18101         "AudioCapability/g711Ulaw56k", HFILL }},
18102     { &hf_h245_g722_64k,
18103       { "g722-64k", "h245.g722_64k",
18104         FT_UINT32, BASE_DEC, NULL, 0,
18105         "AudioCapability/g722-64k", HFILL }},
18106     { &hf_h245_g722_56k,
18107       { "g722-56k", "h245.g722_56k",
18108         FT_UINT32, BASE_DEC, NULL, 0,
18109         "AudioCapability/g722-56k", HFILL }},
18110     { &hf_h245_g722_48k,
18111       { "g722-48k", "h245.g722_48k",
18112         FT_UINT32, BASE_DEC, NULL, 0,
18113         "AudioCapability/g722-48k", HFILL }},
18114     { &hf_h245_g7231,
18115       { "g7231", "h245.g7231",
18116         FT_NONE, BASE_NONE, NULL, 0,
18117         "AudioCapability/g7231", HFILL }},
18118     { &hf_h245_maxAl_sduAudioFrames,
18119       { "maxAl-sduAudioFrames", "h245.maxAl_sduAudioFrames",
18120         FT_UINT32, BASE_DEC, NULL, 0,
18121         "", HFILL }},
18122     { &hf_h245_silenceSuppression,
18123       { "silenceSuppression", "h245.silenceSuppression",
18124         FT_BOOLEAN, 8, NULL, 0,
18125         "", HFILL }},
18126     { &hf_h245_g728,
18127       { "g728", "h245.g728",
18128         FT_UINT32, BASE_DEC, NULL, 0,
18129         "AudioCapability/g728", HFILL }},
18130     { &hf_h245_g729,
18131       { "g729", "h245.g729",
18132         FT_UINT32, BASE_DEC, NULL, 0,
18133         "AudioCapability/g729", HFILL }},
18134     { &hf_h245_g729AnnexA,
18135       { "g729AnnexA", "h245.g729AnnexA",
18136         FT_UINT32, BASE_DEC, NULL, 0,
18137         "AudioCapability/g729AnnexA", HFILL }},
18138     { &hf_h245_is11172AudioCapability,
18139       { "is11172AudioCapability", "h245.is11172AudioCapability",
18140         FT_NONE, BASE_NONE, NULL, 0,
18141         "AudioCapability/is11172AudioCapability", HFILL }},
18142     { &hf_h245_is13818AudioCapability,
18143       { "is13818AudioCapability", "h245.is13818AudioCapability",
18144         FT_NONE, BASE_NONE, NULL, 0,
18145         "AudioCapability/is13818AudioCapability", HFILL }},
18146     { &hf_h245_g729wAnnexB,
18147       { "g729wAnnexB", "h245.g729wAnnexB",
18148         FT_UINT32, BASE_DEC, NULL, 0,
18149         "", HFILL }},
18150     { &hf_h245_g729AnnexAwAnnexB,
18151       { "g729AnnexAwAnnexB", "h245.g729AnnexAwAnnexB",
18152         FT_UINT32, BASE_DEC, NULL, 0,
18153         "", HFILL }},
18154     { &hf_h245_g7231AnnexCCapability,
18155       { "g7231AnnexCCapability", "h245.g7231AnnexCCapability",
18156         FT_NONE, BASE_NONE, NULL, 0,
18157         "AudioCapability/g7231AnnexCCapability", HFILL }},
18158     { &hf_h245_gsmFullRate,
18159       { "gsmFullRate", "h245.gsmFullRate",
18160         FT_NONE, BASE_NONE, NULL, 0,
18161         "", HFILL }},
18162     { &hf_h245_gsmHalfRate,
18163       { "gsmHalfRate", "h245.gsmHalfRate",
18164         FT_NONE, BASE_NONE, NULL, 0,
18165         "", HFILL }},
18166     { &hf_h245_gsmEnhancedFullRate,
18167       { "gsmEnhancedFullRate", "h245.gsmEnhancedFullRate",
18168         FT_NONE, BASE_NONE, NULL, 0,
18169         "", HFILL }},
18170     { &hf_h245_genericAudioCapability,
18171       { "genericAudioCapability", "h245.genericAudioCapability",
18172         FT_NONE, BASE_NONE, NULL, 0,
18173         "AudioCapability/genericAudioCapability", HFILL }},
18174     { &hf_h245_g729Extensions,
18175       { "g729Extensions", "h245.g729Extensions",
18176         FT_NONE, BASE_NONE, NULL, 0,
18177         "", HFILL }},
18178     { &hf_h245_vbd,
18179       { "vbd", "h245.vbd",
18180         FT_NONE, BASE_NONE, NULL, 0,
18181         "AudioCapability/vbd", HFILL }},
18182     { &hf_h245_audioTelephonyEvent,
18183       { "audioTelephonyEvent", "h245.audioTelephonyEvent",
18184         FT_NONE, BASE_NONE, NULL, 0,
18185         "AudioCapability/audioTelephonyEvent", HFILL }},
18186     { &hf_h245_audioTone,
18187       { "audioTone", "h245.audioTone",
18188         FT_NONE, BASE_NONE, NULL, 0,
18189         "AudioCapability/audioTone", HFILL }},
18190     { &hf_h245_audioUnit,
18191       { "audioUnit", "h245.audioUnit",
18192         FT_UINT32, BASE_DEC, NULL, 0,
18193         "G729Extensions/audioUnit", HFILL }},
18194     { &hf_h245_annexA,
18195       { "annexA", "h245.annexA",
18196         FT_BOOLEAN, 8, NULL, 0,
18197         "G729Extensions/annexA", HFILL }},
18198     { &hf_h245_annexB,
18199       { "annexB", "h245.annexB",
18200         FT_BOOLEAN, 8, NULL, 0,
18201         "G729Extensions/annexB", HFILL }},
18202     { &hf_h245_annexD,
18203       { "annexD", "h245.annexD",
18204         FT_BOOLEAN, 8, NULL, 0,
18205         "G729Extensions/annexD", HFILL }},
18206     { &hf_h245_annexE,
18207       { "annexE", "h245.annexE",
18208         FT_BOOLEAN, 8, NULL, 0,
18209         "G729Extensions/annexE", HFILL }},
18210     { &hf_h245_annexF,
18211       { "annexF", "h245.annexF",
18212         FT_BOOLEAN, 8, NULL, 0,
18213         "G729Extensions/annexF", HFILL }},
18214     { &hf_h245_annexG,
18215       { "annexG", "h245.annexG",
18216         FT_BOOLEAN, 8, NULL, 0,
18217         "G729Extensions/annexG", HFILL }},
18218     { &hf_h245_annexH,
18219       { "annexH", "h245.annexH",
18220         FT_BOOLEAN, 8, NULL, 0,
18221         "G729Extensions/annexH", HFILL }},
18222     { &hf_h245_g723AnnexCAudioMode,
18223       { "g723AnnexCAudioMode", "h245.g723AnnexCAudioMode",
18224         FT_NONE, BASE_NONE, NULL, 0,
18225         "", HFILL }},
18226     { &hf_h245_highRateMode0,
18227       { "highRateMode0", "h245.highRateMode0",
18228         FT_UINT32, BASE_DEC, NULL, 0,
18229         "G723AnnexCAudioMode/highRateMode0", HFILL }},
18230     { &hf_h245_highRateMode1,
18231       { "highRateMode1", "h245.highRateMode1",
18232         FT_UINT32, BASE_DEC, NULL, 0,
18233         "G723AnnexCAudioMode/highRateMode1", HFILL }},
18234     { &hf_h245_lowRateMode0,
18235       { "lowRateMode0", "h245.lowRateMode0",
18236         FT_UINT32, BASE_DEC, NULL, 0,
18237         "G723AnnexCAudioMode/lowRateMode0", HFILL }},
18238     { &hf_h245_lowRateMode1,
18239       { "lowRateMode1", "h245.lowRateMode1",
18240         FT_UINT32, BASE_DEC, NULL, 0,
18241         "G723AnnexCAudioMode/lowRateMode1", HFILL }},
18242     { &hf_h245_sidMode0,
18243       { "sidMode0", "h245.sidMode0",
18244         FT_UINT32, BASE_DEC, NULL, 0,
18245         "G723AnnexCAudioMode/sidMode0", HFILL }},
18246     { &hf_h245_sidMode1,
18247       { "sidMode1", "h245.sidMode1",
18248         FT_UINT32, BASE_DEC, NULL, 0,
18249         "G723AnnexCAudioMode/sidMode1", HFILL }},
18250     { &hf_h245_audioLayer1,
18251       { "audioLayer1", "h245.audioLayer1",
18252         FT_BOOLEAN, 8, NULL, 0,
18253         "", HFILL }},
18254     { &hf_h245_audioLayer2,
18255       { "audioLayer2", "h245.audioLayer2",
18256         FT_BOOLEAN, 8, NULL, 0,
18257         "", HFILL }},
18258     { &hf_h245_audioLayer3,
18259       { "audioLayer3", "h245.audioLayer3",
18260         FT_BOOLEAN, 8, NULL, 0,
18261         "", HFILL }},
18262     { &hf_h245_audioSampling32k,
18263       { "audioSampling32k", "h245.audioSampling32k",
18264         FT_BOOLEAN, 8, NULL, 0,
18265         "", HFILL }},
18266     { &hf_h245_audioSampling44k1,
18267       { "audioSampling44k1", "h245.audioSampling44k1",
18268         FT_BOOLEAN, 8, NULL, 0,
18269         "", HFILL }},
18270     { &hf_h245_audioSampling48k,
18271       { "audioSampling48k", "h245.audioSampling48k",
18272         FT_BOOLEAN, 8, NULL, 0,
18273         "", HFILL }},
18274     { &hf_h245_singleChannel,
18275       { "singleChannel", "h245.singleChannel",
18276         FT_BOOLEAN, 8, NULL, 0,
18277         "", HFILL }},
18278     { &hf_h245_twoChannels,
18279       { "twoChannels", "h245.twoChannels",
18280         FT_BOOLEAN, 8, NULL, 0,
18281         "", HFILL }},
18282     { &hf_h245_bitRate_1_448,
18283       { "bitRate", "h245.bitRate",
18284         FT_UINT32, BASE_DEC, NULL, 0,
18285         "", HFILL }},
18286     { &hf_h245_audioSampling16k,
18287       { "audioSampling16k", "h245.audioSampling16k",
18288         FT_BOOLEAN, 8, NULL, 0,
18289         "IS13818AudioCapability/audioSampling16k", HFILL }},
18290     { &hf_h245_audioSampling22k05,
18291       { "audioSampling22k05", "h245.audioSampling22k05",
18292         FT_BOOLEAN, 8, NULL, 0,
18293         "IS13818AudioCapability/audioSampling22k05", HFILL }},
18294     { &hf_h245_audioSampling24k,
18295       { "audioSampling24k", "h245.audioSampling24k",
18296         FT_BOOLEAN, 8, NULL, 0,
18297         "IS13818AudioCapability/audioSampling24k", HFILL }},
18298     { &hf_h245_threeChannels2_1,
18299       { "threeChannels2-1", "h245.threeChannels2_1",
18300         FT_BOOLEAN, 8, NULL, 0,
18301         "IS13818AudioCapability/threeChannels2-1", HFILL }},
18302     { &hf_h245_threeChannels3_0,
18303       { "threeChannels3-0", "h245.threeChannels3_0",
18304         FT_BOOLEAN, 8, NULL, 0,
18305         "IS13818AudioCapability/threeChannels3-0", HFILL }},
18306     { &hf_h245_fourChannels2_0_2_0,
18307       { "fourChannels2-0-2-0", "h245.fourChannels2_0_2_0",
18308         FT_BOOLEAN, 8, NULL, 0,
18309         "IS13818AudioCapability/fourChannels2-0-2-0", HFILL }},
18310     { &hf_h245_fourChannels2_2,
18311       { "fourChannels2-2", "h245.fourChannels2_2",
18312         FT_BOOLEAN, 8, NULL, 0,
18313         "IS13818AudioCapability/fourChannels2-2", HFILL }},
18314     { &hf_h245_fourChannels3_1,
18315       { "fourChannels3-1", "h245.fourChannels3_1",
18316         FT_BOOLEAN, 8, NULL, 0,
18317         "IS13818AudioCapability/fourChannels3-1", HFILL }},
18318     { &hf_h245_fiveChannels3_0_2_0,
18319       { "fiveChannels3-0-2-0", "h245.fiveChannels3_0_2_0",
18320         FT_BOOLEAN, 8, NULL, 0,
18321         "IS13818AudioCapability/fiveChannels3-0-2-0", HFILL }},
18322     { &hf_h245_fiveChannels3_2,
18323       { "fiveChannels3-2", "h245.fiveChannels3_2",
18324         FT_BOOLEAN, 8, NULL, 0,
18325         "IS13818AudioCapability/fiveChannels3-2", HFILL }},
18326     { &hf_h245_lowFrequencyEnhancement,
18327       { "lowFrequencyEnhancement", "h245.lowFrequencyEnhancement",
18328         FT_BOOLEAN, 8, NULL, 0,
18329         "", HFILL }},
18330     { &hf_h245_multilingual,
18331       { "multilingual", "h245.multilingual",
18332         FT_BOOLEAN, 8, NULL, 0,
18333         "", HFILL }},
18334     { &hf_h245_bitRate2_1_1130,
18335       { "bitRate", "h245.bitRate",
18336         FT_UINT32, BASE_DEC, NULL, 0,
18337         "", HFILL }},
18338     { &hf_h245_audioUnitSize,
18339       { "audioUnitSize", "h245.audioUnitSize",
18340         FT_UINT32, BASE_DEC, NULL, 0,
18341         "GSMAudioCapability/audioUnitSize", HFILL }},
18342     { &hf_h245_comfortNoise,
18343       { "comfortNoise", "h245.comfortNoise",
18344         FT_BOOLEAN, 8, NULL, 0,
18345         "GSMAudioCapability/comfortNoise", HFILL }},
18346     { &hf_h245_scrambled,
18347       { "scrambled", "h245.scrambled",
18348         FT_BOOLEAN, 8, NULL, 0,
18349         "GSMAudioCapability/scrambled", HFILL }},
18350     { &hf_h245_vbd_cap_type,
18351       { "type", "h245.type",
18352         FT_UINT32, BASE_DEC, VALS(h245_AudioCapability_vals), 0,
18353         "VBDCapability/type", HFILL }},
18354     { &hf_h245_application,
18355       { "application", "h245.application",
18356         FT_UINT32, BASE_DEC, VALS(h245_Application_vals), 0,
18357         "DataApplicationCapability/application", HFILL }},
18358     { &hf_h245_maxBitRate2_0_4294967295,
18359       { "maxBitRate", "h245.maxBitRate",
18360         FT_UINT32, BASE_DEC, NULL, 0,
18361         "", HFILL }},
18362     { &hf_h245_t120,
18363       { "t120", "h245.t120",
18364         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18365         "", HFILL }},
18366     { &hf_h245_dsm_cc,
18367       { "dsm-cc", "h245.dsm_cc",
18368         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18369         "", HFILL }},
18370     { &hf_h245_userData,
18371       { "userData", "h245.userData",
18372         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18373         "", HFILL }},
18374     { &hf_h245_t84,
18375       { "t84", "h245.t84",
18376         FT_NONE, BASE_NONE, NULL, 0,
18377         "Application/t84", HFILL }},
18378     { &hf_h245_t84Protocol,
18379       { "t84Protocol", "h245.t84Protocol",
18380         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18381         "Application/t84/t84Protocol", HFILL }},
18382     { &hf_h245_t84Profile,
18383       { "t84Profile", "h245.t84Profile",
18384         FT_UINT32, BASE_DEC, VALS(h245_T84Profile_vals), 0,
18385         "Application/t84/t84Profile", HFILL }},
18386     { &hf_h245_t434,
18387       { "t434", "h245.t434",
18388         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18389         "", HFILL }},
18390     { &hf_h245_h224,
18391       { "h224", "h245.h224",
18392         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18393         "", HFILL }},
18394     { &hf_h245_nlpid,
18395       { "nlpid", "h245.nlpid",
18396         FT_NONE, BASE_NONE, NULL, 0,
18397         "", HFILL }},
18398     { &hf_h245_dsvdControl,
18399       { "dsvdControl", "h245.dsvdControl",
18400         FT_NONE, BASE_NONE, NULL, 0,
18401         "", HFILL }},
18402     { &hf_h245_h222DataPartitioning,
18403       { "h222DataPartitioning", "h245.h222DataPartitioning",
18404         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18405         "", HFILL }},
18406     { &hf_h245_t30fax,
18407       { "t30fax", "h245.t30fax",
18408         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18409         "", HFILL }},
18410     { &hf_h245_t140,
18411       { "t140", "h245.t140",
18412         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18413         "", HFILL }},
18414     { &hf_h245_t38fax,
18415       { "t38fax", "h245.t38fax",
18416         FT_NONE, BASE_NONE, NULL, 0,
18417         "Application/t38fax", HFILL }},
18418     { &hf_h245_t38FaxProtocol,
18419       { "t38FaxProtocol", "h245.t38FaxProtocol",
18420         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18421         "", HFILL }},
18422     { &hf_h245_t38FaxProfile,
18423       { "t38FaxProfile", "h245.t38FaxProfile",
18424         FT_NONE, BASE_NONE, NULL, 0,
18425         "", HFILL }},
18426     { &hf_h245_genericDataCapability,
18427       { "genericDataCapability", "h245.genericDataCapability",
18428         FT_NONE, BASE_NONE, NULL, 0,
18429         "Application/genericDataCapability", HFILL }},
18430     { &hf_h245_v14buffered,
18431       { "v14buffered", "h245.v14buffered",
18432         FT_NONE, BASE_NONE, NULL, 0,
18433         "DataProtocolCapability/v14buffered", HFILL }},
18434     { &hf_h245_v42lapm,
18435       { "v42lapm", "h245.v42lapm",
18436         FT_NONE, BASE_NONE, NULL, 0,
18437         "DataProtocolCapability/v42lapm", HFILL }},
18438     { &hf_h245_hdlcFrameTunnelling,
18439       { "hdlcFrameTunnelling", "h245.hdlcFrameTunnelling",
18440         FT_NONE, BASE_NONE, NULL, 0,
18441         "DataProtocolCapability/hdlcFrameTunnelling", HFILL }},
18442     { &hf_h245_h310SeparateVCStack,
18443       { "h310SeparateVCStack", "h245.h310SeparateVCStack",
18444         FT_NONE, BASE_NONE, NULL, 0,
18445         "DataProtocolCapability/h310SeparateVCStack", HFILL }},
18446     { &hf_h245_h310SingleVCStack,
18447       { "h310SingleVCStack", "h245.h310SingleVCStack",
18448         FT_NONE, BASE_NONE, NULL, 0,
18449         "DataProtocolCapability/h310SingleVCStack", HFILL }},
18450     { &hf_h245_transparent,
18451       { "transparent", "h245.transparent",
18452         FT_NONE, BASE_NONE, NULL, 0,
18453         "DataProtocolCapability/transparent", HFILL }},
18454     { &hf_h245_segmentationAndReassembly,
18455       { "segmentationAndReassembly", "h245.segmentationAndReassembly",
18456         FT_NONE, BASE_NONE, NULL, 0,
18457         "DataProtocolCapability/segmentationAndReassembly", HFILL }},
18458     { &hf_h245_hdlcFrameTunnelingwSAR,
18459       { "hdlcFrameTunnelingwSAR", "h245.hdlcFrameTunnelingwSAR",
18460         FT_NONE, BASE_NONE, NULL, 0,
18461         "DataProtocolCapability/hdlcFrameTunnelingwSAR", HFILL }},
18462     { &hf_h245_v120,
18463       { "v120", "h245.v120",
18464         FT_NONE, BASE_NONE, NULL, 0,
18465         "DataProtocolCapability/v120", HFILL }},
18466     { &hf_h245_separateLANStack,
18467       { "separateLANStack", "h245.separateLANStack",
18468         FT_NONE, BASE_NONE, NULL, 0,
18469         "DataProtocolCapability/separateLANStack", HFILL }},
18470     { &hf_h245_v76wCompression,
18471       { "v76wCompression", "h245.v76wCompression",
18472         FT_UINT32, BASE_DEC, VALS(h245_T_v76wCompression_vals), 0,
18473         "DataProtocolCapability/v76wCompression", HFILL }},
18474     { &hf_h245_transmitCompression,
18475       { "transmitCompression", "h245.transmitCompression",
18476         FT_UINT32, BASE_DEC, VALS(h245_CompressionType_vals), 0,
18477         "DataProtocolCapability/v76wCompression/transmitCompression", HFILL }},
18478     { &hf_h245_receiveCompression,
18479       { "receiveCompression", "h245.receiveCompression",
18480         FT_UINT32, BASE_DEC, VALS(h245_CompressionType_vals), 0,
18481         "DataProtocolCapability/v76wCompression/receiveCompression", HFILL }},
18482     { &hf_h245_transmitAndReceiveCompression,
18483       { "transmitAndReceiveCompression", "h245.transmitAndReceiveCompression",
18484         FT_UINT32, BASE_DEC, VALS(h245_CompressionType_vals), 0,
18485         "DataProtocolCapability/v76wCompression/transmitAndReceiveCompression", HFILL }},
18486     { &hf_h245_tcp,
18487       { "tcp", "h245.tcp",
18488         FT_NONE, BASE_NONE, NULL, 0,
18489         "DataProtocolCapability/tcp", HFILL }},
18490     { &hf_h245_udp,
18491       { "udp", "h245.udp",
18492         FT_NONE, BASE_NONE, NULL, 0,
18493         "DataProtocolCapability/udp", HFILL }},
18494     { &hf_h245_v42bis,
18495       { "v42bis", "h245.v42bis",
18496         FT_NONE, BASE_NONE, NULL, 0,
18497         "CompressionType/v42bis", HFILL }},
18498     { &hf_h245_numberOfCodewords,
18499       { "numberOfCodewords", "h245.numberOfCodewords",
18500         FT_UINT32, BASE_DEC, NULL, 0,
18501         "V42bis/numberOfCodewords", HFILL }},
18502     { &hf_h245_maximumStringLength,
18503       { "maximumStringLength", "h245.maximumStringLength",
18504         FT_UINT32, BASE_DEC, NULL, 0,
18505         "V42bis/maximumStringLength", HFILL }},
18506     { &hf_h245_t84Unrestricted,
18507       { "t84Unrestricted", "h245.t84Unrestricted",
18508         FT_NONE, BASE_NONE, NULL, 0,
18509         "T84Profile/t84Unrestricted", HFILL }},
18510     { &hf_h245_t84Restricted,
18511       { "t84Restricted", "h245.t84Restricted",
18512         FT_NONE, BASE_NONE, NULL, 0,
18513         "T84Profile/t84Restricted", HFILL }},
18514     { &hf_h245_qcif_bool,
18515       { "qcif", "h245.qcif",
18516         FT_BOOLEAN, 8, NULL, 0,
18517         "T84Profile/t84Restricted/qcif", HFILL }},
18518     { &hf_h245_cif_bool,
18519       { "cif", "h245.cif",
18520         FT_BOOLEAN, 8, NULL, 0,
18521         "T84Profile/t84Restricted/cif", HFILL }},
18522     { &hf_h245_ccir601Seq,
18523       { "ccir601Seq", "h245.ccir601Seq",
18524         FT_BOOLEAN, 8, NULL, 0,
18525         "T84Profile/t84Restricted/ccir601Seq", HFILL }},
18526     { &hf_h245_ccir601Prog,
18527       { "ccir601Prog", "h245.ccir601Prog",
18528         FT_BOOLEAN, 8, NULL, 0,
18529         "T84Profile/t84Restricted/ccir601Prog", HFILL }},
18530     { &hf_h245_hdtvSeq,
18531       { "hdtvSeq", "h245.hdtvSeq",
18532         FT_BOOLEAN, 8, NULL, 0,
18533         "T84Profile/t84Restricted/hdtvSeq", HFILL }},
18534     { &hf_h245_hdtvProg,
18535       { "hdtvProg", "h245.hdtvProg",
18536         FT_BOOLEAN, 8, NULL, 0,
18537         "T84Profile/t84Restricted/hdtvProg", HFILL }},
18538     { &hf_h245_g3FacsMH200x100,
18539       { "g3FacsMH200x100", "h245.g3FacsMH200x100",
18540         FT_BOOLEAN, 8, NULL, 0,
18541         "T84Profile/t84Restricted/g3FacsMH200x100", HFILL }},
18542     { &hf_h245_g3FacsMH200x200,
18543       { "g3FacsMH200x200", "h245.g3FacsMH200x200",
18544         FT_BOOLEAN, 8, NULL, 0,
18545         "T84Profile/t84Restricted/g3FacsMH200x200", HFILL }},
18546     { &hf_h245_g4FacsMMR200x100,
18547       { "g4FacsMMR200x100", "h245.g4FacsMMR200x100",
18548         FT_BOOLEAN, 8, NULL, 0,
18549         "T84Profile/t84Restricted/g4FacsMMR200x100", HFILL }},
18550     { &hf_h245_g4FacsMMR200x200,
18551       { "g4FacsMMR200x200", "h245.g4FacsMMR200x200",
18552         FT_BOOLEAN, 8, NULL, 0,
18553         "T84Profile/t84Restricted/g4FacsMMR200x200", HFILL }},
18554     { &hf_h245_jbig200x200Seq,
18555       { "jbig200x200Seq", "h245.jbig200x200Seq",
18556         FT_BOOLEAN, 8, NULL, 0,
18557         "T84Profile/t84Restricted/jbig200x200Seq", HFILL }},
18558     { &hf_h245_jbig200x200Prog,
18559       { "jbig200x200Prog", "h245.jbig200x200Prog",
18560         FT_BOOLEAN, 8, NULL, 0,
18561         "T84Profile/t84Restricted/jbig200x200Prog", HFILL }},
18562     { &hf_h245_jbig300x300Seq,
18563       { "jbig300x300Seq", "h245.jbig300x300Seq",
18564         FT_BOOLEAN, 8, NULL, 0,
18565         "T84Profile/t84Restricted/jbig300x300Seq", HFILL }},
18566     { &hf_h245_jbig300x300Prog,
18567       { "jbig300x300Prog", "h245.jbig300x300Prog",
18568         FT_BOOLEAN, 8, NULL, 0,
18569         "T84Profile/t84Restricted/jbig300x300Prog", HFILL }},
18570     { &hf_h245_digPhotoLow,
18571       { "digPhotoLow", "h245.digPhotoLow",
18572         FT_BOOLEAN, 8, NULL, 0,
18573         "T84Profile/t84Restricted/digPhotoLow", HFILL }},
18574     { &hf_h245_digPhotoMedSeq,
18575       { "digPhotoMedSeq", "h245.digPhotoMedSeq",
18576         FT_BOOLEAN, 8, NULL, 0,
18577         "T84Profile/t84Restricted/digPhotoMedSeq", HFILL }},
18578     { &hf_h245_digPhotoMedProg,
18579       { "digPhotoMedProg", "h245.digPhotoMedProg",
18580         FT_BOOLEAN, 8, NULL, 0,
18581         "T84Profile/t84Restricted/digPhotoMedProg", HFILL }},
18582     { &hf_h245_digPhotoHighSeq,
18583       { "digPhotoHighSeq", "h245.digPhotoHighSeq",
18584         FT_BOOLEAN, 8, NULL, 0,
18585         "T84Profile/t84Restricted/digPhotoHighSeq", HFILL }},
18586     { &hf_h245_digPhotoHighProg,
18587       { "digPhotoHighProg", "h245.digPhotoHighProg",
18588         FT_BOOLEAN, 8, NULL, 0,
18589         "T84Profile/t84Restricted/digPhotoHighProg", HFILL }},
18590     { &hf_h245_fillBitRemoval,
18591       { "fillBitRemoval", "h245.fillBitRemoval",
18592         FT_BOOLEAN, 8, NULL, 0,
18593         "T38FaxProfile/fillBitRemoval", HFILL }},
18594     { &hf_h245_transcodingJBIG,
18595       { "transcodingJBIG", "h245.transcodingJBIG",
18596         FT_BOOLEAN, 8, NULL, 0,
18597         "T38FaxProfile/transcodingJBIG", HFILL }},
18598     { &hf_h245_transcodingMMR,
18599       { "transcodingMMR", "h245.transcodingMMR",
18600         FT_BOOLEAN, 8, NULL, 0,
18601         "T38FaxProfile/transcodingMMR", HFILL }},
18602     { &hf_h245_version,
18603       { "version", "h245.version",
18604         FT_UINT32, BASE_DEC, NULL, 0,
18605         "T38FaxProfile/version", HFILL }},
18606     { &hf_h245_t38FaxRateManagement,
18607       { "t38FaxRateManagement", "h245.t38FaxRateManagement",
18608         FT_UINT32, BASE_DEC, VALS(h245_T38FaxRateManagement_vals), 0,
18609         "T38FaxProfile/t38FaxRateManagement", HFILL }},
18610     { &hf_h245_t38FaxUdpOptions,
18611       { "t38FaxUdpOptions", "h245.t38FaxUdpOptions",
18612         FT_NONE, BASE_NONE, NULL, 0,
18613         "T38FaxProfile/t38FaxUdpOptions", HFILL }},
18614     { &hf_h245_t38FaxTcpOptions,
18615       { "t38FaxTcpOptions", "h245.t38FaxTcpOptions",
18616         FT_NONE, BASE_NONE, NULL, 0,
18617         "T38FaxProfile/t38FaxTcpOptions", HFILL }},
18618     { &hf_h245_localTCF,
18619       { "localTCF", "h245.localTCF",
18620         FT_NONE, BASE_NONE, NULL, 0,
18621         "T38FaxRateManagement/localTCF", HFILL }},
18622     { &hf_h245_transferredTCF,
18623       { "transferredTCF", "h245.transferredTCF",
18624         FT_NONE, BASE_NONE, NULL, 0,
18625         "T38FaxRateManagement/transferredTCF", HFILL }},
18626     { &hf_h245_t38FaxMaxBuffer,
18627       { "t38FaxMaxBuffer", "h245.t38FaxMaxBuffer",
18628         FT_INT32, BASE_DEC, NULL, 0,
18629         "T38FaxUdpOptions/t38FaxMaxBuffer", HFILL }},
18630     { &hf_h245_t38FaxMaxDatagram,
18631       { "t38FaxMaxDatagram", "h245.t38FaxMaxDatagram",
18632         FT_INT32, BASE_DEC, NULL, 0,
18633         "T38FaxUdpOptions/t38FaxMaxDatagram", HFILL }},
18634     { &hf_h245_t38FaxUdpEC,
18635       { "t38FaxUdpEC", "h245.t38FaxUdpEC",
18636         FT_UINT32, BASE_DEC, VALS(h245_T_t38FaxUdpEC_vals), 0,
18637         "T38FaxUdpOptions/t38FaxUdpEC", HFILL }},
18638     { &hf_h245_t38UDPFEC,
18639       { "t38UDPFEC", "h245.t38UDPFEC",
18640         FT_NONE, BASE_NONE, NULL, 0,
18641         "T38FaxUdpOptions/t38FaxUdpEC/t38UDPFEC", HFILL }},
18642     { &hf_h245_t38UDPRedundancy,
18643       { "t38UDPRedundancy", "h245.t38UDPRedundancy",
18644         FT_NONE, BASE_NONE, NULL, 0,
18645         "T38FaxUdpOptions/t38FaxUdpEC/t38UDPRedundancy", HFILL }},
18646     { &hf_h245_t38TCPBidirectionalMode,
18647       { "t38TCPBidirectionalMode", "h245.t38TCPBidirectionalMode",
18648         FT_BOOLEAN, 8, NULL, 0,
18649         "T38FaxTcpOptions/t38TCPBidirectionalMode", HFILL }},
18650     { &hf_h245_nlpidProtocol,
18651       { "nlpidProtocol", "h245.nlpidProtocol",
18652         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18653         "Nlpid/nlpidProtocol", HFILL }},
18654     { &hf_h245_nlpidData,
18655       { "nlpidData", "h245.nlpidData",
18656         FT_BYTES, BASE_HEX, NULL, 0,
18657         "Nlpid/nlpidData", HFILL }},
18658     { &hf_h245_encryptionCapability,
18659       { "encryptionCapability", "h245.encryptionCapability",
18660         FT_NONE, BASE_NONE, NULL, 0,
18661         "EncryptionAuthenticationAndIntegrity/encryptionCapability", HFILL }},
18662     { &hf_h245_authenticationCapability,
18663       { "authenticationCapability", "h245.authenticationCapability",
18664         FT_NONE, BASE_NONE, NULL, 0,
18665         "EncryptionAuthenticationAndIntegrity/authenticationCapability", HFILL }},
18666     { &hf_h245_integrityCapability,
18667       { "integrityCapability", "h245.integrityCapability",
18668         FT_NONE, BASE_NONE, NULL, 0,
18669         "EncryptionAuthenticationAndIntegrity/integrityCapability", HFILL }},
18670     { &hf_h245_EncryptionCapability_item,
18671       { "Item", "h245.EncryptionCapability_item",
18672         FT_UINT32, BASE_DEC, VALS(h245_MediaEncryptionAlgorithm_vals), 0,
18673         "EncryptionCapability/_item", HFILL }},
18674     { &hf_h245_algorithm,
18675       { "algorithm", "h245.algorithm",
18676         FT_STRING, BASE_NONE, NULL, 0,
18677         "MediaEncryptionAlgorithm/algorithm", HFILL }},
18678     { &hf_h245_antiSpamAlgorithm,
18679       { "antiSpamAlgorithm", "h245.antiSpamAlgorithm",
18680         FT_STRING, BASE_NONE, NULL, 0,
18681         "AuthenticationCapability/antiSpamAlgorithm", HFILL }},
18682     { &hf_h245_ui_nonStandard,
18683       { "nonStandard", "h245.nonStandard",
18684         FT_NONE, BASE_NONE, NULL, 0,
18685         "UserInputCapability/nonStandard", HFILL }},
18686     { &hf_h245_nonStandard_item,
18687       { "Item", "h245.nonStandard_item",
18688         FT_NONE, BASE_NONE, NULL, 0,
18689         "", HFILL }},
18690     { &hf_h245_basicString,
18691       { "basicString", "h245.basicString",
18692         FT_NONE, BASE_NONE, NULL, 0,
18693         "", HFILL }},
18694     { &hf_h245_iA5String,
18695       { "iA5String", "h245.iA5String",
18696         FT_NONE, BASE_NONE, NULL, 0,
18697         "", HFILL }},
18698     { &hf_h245_generalString,
18699       { "generalString", "h245.generalString",
18700         FT_NONE, BASE_NONE, NULL, 0,
18701         "", HFILL }},
18702     { &hf_h245_dtmf,
18703       { "dtmf", "h245.dtmf",
18704         FT_NONE, BASE_NONE, NULL, 0,
18705         "UserInputCapability/dtmf", HFILL }},
18706     { &hf_h245_hookflash,
18707       { "hookflash", "h245.hookflash",
18708         FT_NONE, BASE_NONE, NULL, 0,
18709         "UserInputCapability/hookflash", HFILL }},
18710     { &hf_h245_extendedAlphanumericFlag,
18711       { "extendedAlphanumeric", "h245.extendedAlphanumeric",
18712         FT_NONE, BASE_NONE, NULL, 0,
18713         "UserInputCapability/extendedAlphanumeric", HFILL }},
18714     { &hf_h245_encryptedBasicString,
18715       { "encryptedBasicString", "h245.encryptedBasicString",
18716         FT_NONE, BASE_NONE, NULL, 0,
18717         "", HFILL }},
18718     { &hf_h245_encryptedIA5String,
18719       { "encryptedIA5String", "h245.encryptedIA5String",
18720         FT_NONE, BASE_NONE, NULL, 0,
18721         "", HFILL }},
18722     { &hf_h245_encryptedGeneralString,
18723       { "encryptedGeneralString", "h245.encryptedGeneralString",
18724         FT_NONE, BASE_NONE, NULL, 0,
18725         "", HFILL }},
18726     { &hf_h245_secureDTMF,
18727       { "secureDTMF", "h245.secureDTMF",
18728         FT_NONE, BASE_NONE, NULL, 0,
18729         "UserInputCapability/secureDTMF", HFILL }},
18730     { &hf_h245_nonStandardParams,
18731       { "nonStandardData", "h245.nonStandardData",
18732         FT_NONE, BASE_NONE, NULL, 0,
18733         "", HFILL }},
18734     { &hf_h245_nonStandardData_item,
18735       { "Item", "h245.nonStandardData_item",
18736         FT_NONE, BASE_NONE, NULL, 0,
18737         "ConferenceCapability/nonStandardData/_item", HFILL }},
18738     { &hf_h245_chairControlCapability,
18739       { "chairControlCapability", "h245.chairControlCapability",
18740         FT_BOOLEAN, 8, NULL, 0,
18741         "ConferenceCapability/chairControlCapability", HFILL }},
18742     { &hf_h245_videoIndicateMixingCapability,
18743       { "videoIndicateMixingCapability", "h245.videoIndicateMixingCapability",
18744         FT_BOOLEAN, 8, NULL, 0,
18745         "ConferenceCapability/videoIndicateMixingCapability", HFILL }},
18746     { &hf_h245_multipointVisualizationCapability,
18747       { "multipointVisualizationCapability", "h245.multipointVisualizationCapability",
18748         FT_BOOLEAN, 8, NULL, 0,
18749         "ConferenceCapability/multipointVisualizationCapability", HFILL }},
18750     { &hf_h245_capabilityIdentifier,
18751       { "capabilityIdentifier", "h245.capabilityIdentifier",
18752         FT_UINT32, BASE_DEC, VALS(h245_CapabilityIdentifier_vals), 0,
18753         "GenericCapability/capabilityIdentifier", HFILL }},
18754     { &hf_h245_collapsing,
18755       { "collapsing", "h245.collapsing",
18756         FT_NONE, BASE_NONE, NULL, 0,
18757         "GenericCapability/collapsing", HFILL }},
18758     { &hf_h245_collapsing_item,
18759       { "Item", "h245.collapsing_item",
18760         FT_NONE, BASE_NONE, NULL, 0,
18761         "GenericCapability/collapsing/_item", HFILL }},
18762     { &hf_h245_nonCollapsing,
18763       { "nonCollapsing", "h245.nonCollapsing",
18764         FT_NONE, BASE_NONE, NULL, 0,
18765         "GenericCapability/nonCollapsing", HFILL }},
18766     { &hf_h245_nonCollapsing_item,
18767       { "Item", "h245.nonCollapsing_item",
18768         FT_NONE, BASE_NONE, NULL, 0,
18769         "GenericCapability/nonCollapsing/_item", HFILL }},
18770     { &hf_h245_nonCollapsingRaw,
18771       { "nonCollapsingRaw", "h245.nonCollapsingRaw",
18772         FT_BYTES, BASE_HEX, NULL, 0,
18773         "GenericCapability/nonCollapsingRaw", HFILL }},
18774     { &hf_h245_transport,
18775       { "transport", "h245.transport",
18776         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18777         "GenericCapability/transport", HFILL }},
18778     { &hf_h245_standardOid,
18779       { "standard", "h245.standard",
18780         FT_STRING, BASE_NONE, NULL, 0,
18781         "CapabilityIdentifier/standard", HFILL }},
18782     { &hf_h245_h221NonStandard,
18783       { "h221NonStandard", "h245.h221NonStandard",
18784         FT_NONE, BASE_NONE, NULL, 0,
18785         "", HFILL }},
18786     { &hf_h245_uuid,
18787       { "uuid", "h245.uuid",
18788         FT_BYTES, BASE_HEX, NULL, 0,
18789         "", HFILL }},
18790     { &hf_h245_domainBased,
18791       { "domainBased", "h245.domainBased",
18792         FT_STRING, BASE_NONE, NULL, 0,
18793         "", HFILL }},
18794     { &hf_h245_parameterIdentifier,
18795       { "parameterIdentifier", "h245.parameterIdentifier",
18796         FT_UINT32, BASE_DEC, VALS(h245_ParameterIdentifier_vals), 0,
18797         "GenericParameter/parameterIdentifier", HFILL }},
18798     { &hf_h245_parameterValue,
18799       { "parameterValue", "h245.parameterValue",
18800         FT_UINT32, BASE_DEC, VALS(h245_ParameterValue_vals), 0,
18801         "GenericParameter/parameterValue", HFILL }},
18802     { &hf_h245_supersedes,
18803       { "supersedes", "h245.supersedes",
18804         FT_NONE, BASE_NONE, NULL, 0,
18805         "GenericParameter/supersedes", HFILL }},
18806     { &hf_h245_supersedes_item,
18807       { "Item", "h245.supersedes_item",
18808         FT_UINT32, BASE_DEC, VALS(h245_ParameterIdentifier_vals), 0,
18809         "GenericParameter/supersedes/_item", HFILL }},
18810     { &hf_h245_standard,
18811       { "standard", "h245.standard",
18812         FT_UINT32, BASE_DEC, NULL, 0,
18813         "ParameterIdentifier/standard", HFILL }},
18814     { &hf_h245_logical,
18815       { "logical", "h245.logical",
18816         FT_NONE, BASE_NONE, NULL, 0,
18817         "ParameterValue/logical", HFILL }},
18818     { &hf_h245_booleanArray,
18819       { "booleanArray", "h245.booleanArray",
18820         FT_UINT32, BASE_DEC, NULL, 0,
18821         "ParameterValue/booleanArray", HFILL }},
18822     { &hf_h245_unsignedMin,
18823       { "unsignedMin", "h245.unsignedMin",
18824         FT_UINT32, BASE_DEC, NULL, 0,
18825         "ParameterValue/unsignedMin", HFILL }},
18826     { &hf_h245_unsignedMax,
18827       { "unsignedMax", "h245.unsignedMax",
18828         FT_UINT32, BASE_DEC, NULL, 0,
18829         "ParameterValue/unsignedMax", HFILL }},
18830     { &hf_h245_unsigned32Min,
18831       { "unsigned32Min", "h245.unsigned32Min",
18832         FT_UINT32, BASE_DEC, NULL, 0,
18833         "ParameterValue/unsigned32Min", HFILL }},
18834     { &hf_h245_unsigned32Max,
18835       { "unsigned32Max", "h245.unsigned32Max",
18836         FT_UINT32, BASE_DEC, NULL, 0,
18837         "ParameterValue/unsigned32Max", HFILL }},
18838     { &hf_h245_octetString,
18839       { "octetString", "h245.octetString",
18840         FT_BYTES, BASE_HEX, NULL, 0,
18841         "ParameterValue/octetString", HFILL }},
18842     { &hf_h245_genericParameter,
18843       { "genericParameter", "h245.genericParameter",
18844         FT_NONE, BASE_NONE, NULL, 0,
18845         "ParameterValue/genericParameter", HFILL }},
18846     { &hf_h245_genericParameter_item,
18847       { "Item", "h245.genericParameter_item",
18848         FT_NONE, BASE_NONE, NULL, 0,
18849         "ParameterValue/genericParameter/_item", HFILL }},
18850     { &hf_h245_multiplexFormat,
18851       { "multiplexFormat", "h245.multiplexFormat",
18852         FT_UINT32, BASE_DEC, VALS(h245_MultiplexFormat_vals), 0,
18853         "", HFILL }},
18854     { &hf_h245_controlOnMuxStream,
18855       { "controlOnMuxStream", "h245.controlOnMuxStream",
18856         FT_BOOLEAN, 8, NULL, 0,
18857         "", HFILL }},
18858     { &hf_h245_capabilityOnMuxStream,
18859       { "capabilityOnMuxStream", "h245.capabilityOnMuxStream",
18860         FT_NONE, BASE_NONE, NULL, 0,
18861         "MultiplexedStreamCapability/capabilityOnMuxStream", HFILL }},
18862     { &hf_h245_capabilityOnMuxStream_item,
18863       { "Item", "h245.capabilityOnMuxStream_item",
18864         FT_NONE, BASE_NONE, NULL, 0,
18865         "MultiplexedStreamCapability/capabilityOnMuxStream/_item", HFILL }},
18866     { &hf_h245_dynamicRTPPayloadType,
18867       { "dynamicRTPPayloadType", "h245.dynamicRTPPayloadType",
18868         FT_UINT32, BASE_DEC, NULL, 0,
18869         "", HFILL }},
18870     { &hf_h245_audioTelephoneEvent,
18871       { "audioTelephoneEvent", "h245.audioTelephoneEvent",
18872         FT_STRING, BASE_NONE, NULL, 0,
18873         "", HFILL }},
18874     { &hf_h245_capabilities,
18875       { "capabilities", "h245.capabilities",
18876         FT_NONE, BASE_NONE, NULL, 0,
18877         "MultiplePayloadStreamCapability/capabilities", HFILL }},
18878     { &hf_h245_capabilities_item,
18879       { "Item", "h245.capabilities_item",
18880         FT_NONE, BASE_NONE, NULL, 0,
18881         "MultiplePayloadStreamCapability/capabilities/_item", HFILL }},
18882     { &hf_h245_fecc_rfc2733,
18883       { "rfc2733", "h245.rfc2733",
18884         FT_NONE, BASE_NONE, NULL, 0,
18885         "FECCapability/rfc2733", HFILL }},
18886     { &hf_h245_redundancyEncodingBool,
18887       { "redundancyEncoding", "h245.redundancyEncoding",
18888         FT_BOOLEAN, 8, NULL, 0,
18889         "FECCapability/rfc2733/redundancyEncoding", HFILL }},
18890     { &hf_h245_separateStreamBool,
18891       { "separateStream", "h245.separateStream",
18892         FT_NONE, BASE_NONE, NULL, 0,
18893         "FECCapability/rfc2733/separateStream", HFILL }},
18894     { &hf_h245_separatePort,
18895       { "separatePort", "h245.separatePort",
18896         FT_BOOLEAN, 8, NULL, 0,
18897         "FECCapability/rfc2733/separateStream/separatePort", HFILL }},
18898     { &hf_h245_samePortBool,
18899       { "samePort", "h245.samePort",
18900         FT_BOOLEAN, 8, NULL, 0,
18901         "FECCapability/rfc2733/separateStream/samePort", HFILL }},
18902     { &hf_h245_forwardLogicalChannelNumber,
18903       { "forwardLogicalChannelNumber", "h245.forwardLogicalChannelNumber",
18904         FT_UINT32, BASE_DEC, NULL, 0,
18905         "", HFILL }},
18906     { &hf_h245_forwardLogicalChannelParameters,
18907       { "forwardLogicalChannelParameters", "h245.forwardLogicalChannelParameters",
18908         FT_NONE, BASE_NONE, NULL, 0,
18909         "OpenLogicalChannel/forwardLogicalChannelParameters", HFILL }},
18910     { &hf_h245_portNumber,
18911       { "portNumber", "h245.portNumber",
18912         FT_UINT32, BASE_DEC, NULL, 0,
18913         "", HFILL }},
18914     { &hf_h245_dataType,
18915       { "dataType", "h245.dataType",
18916         FT_UINT32, BASE_DEC, VALS(h245_DataType_vals), 0,
18917         "", HFILL }},
18918     { &hf_h245_olc_forw_multiplexParameters,
18919       { "multiplexParameters", "h245.multiplexParameters",
18920         FT_UINT32, BASE_DEC, VALS(h245_OLC_forw_multiplexParameters_vals), 0,
18921         "OpenLogicalChannel/forwardLogicalChannelParameters/multiplexParameters", HFILL }},
18922     { &hf_h245_h222LogicalChannelParameters,
18923       { "h222LogicalChannelParameters", "h245.h222LogicalChannelParameters",
18924         FT_NONE, BASE_NONE, NULL, 0,
18925         "", HFILL }},
18926     { &hf_h245_h223LogicalChannelParameters,
18927       { "h223LogicalChannelParameters", "h245.h223LogicalChannelParameters",
18928         FT_NONE, BASE_NONE, NULL, 0,
18929         "", HFILL }},
18930     { &hf_h245_v76LogicalChannelParameters,
18931       { "v76LogicalChannelParameters", "h245.v76LogicalChannelParameters",
18932         FT_NONE, BASE_NONE, NULL, 0,
18933         "", HFILL }},
18934     { &hf_h245_h2250LogicalChannelParameters,
18935       { "h2250LogicalChannelParameters", "h245.h2250LogicalChannelParameters",
18936         FT_NONE, BASE_NONE, NULL, 0,
18937         "", HFILL }},
18938     { &hf_h245_forwardLogicalChannelDependency,
18939       { "forwardLogicalChannelDependency", "h245.forwardLogicalChannelDependency",
18940         FT_UINT32, BASE_DEC, NULL, 0,
18941         "OpenLogicalChannel/forwardLogicalChannelParameters/forwardLogicalChannelDependency", HFILL }},
18942     { &hf_h245_replacementFor,
18943       { "replacementFor", "h245.replacementFor",
18944         FT_UINT32, BASE_DEC, NULL, 0,
18945         "", HFILL }},
18946     { &hf_h245_reverseLogicalChannelParameters,
18947       { "reverseLogicalChannelParameters", "h245.reverseLogicalChannelParameters",
18948         FT_NONE, BASE_NONE, NULL, 0,
18949         "OpenLogicalChannel/reverseLogicalChannelParameters", HFILL }},
18950     { &hf_h245_olc_rev_multiplexParameter,
18951       { "multiplexParameters", "h245.multiplexParameters",
18952         FT_UINT32, BASE_DEC, VALS(h245_OLC_rev_multiplexParameters_vals), 0,
18953         "OpenLogicalChannel/reverseLogicalChannelParameters/multiplexParameters", HFILL }},
18954     { &hf_h245_reverseLogicalChannelDependency,
18955       { "reverseLogicalChannelDependency", "h245.reverseLogicalChannelDependency",
18956         FT_UINT32, BASE_DEC, NULL, 0,
18957         "OpenLogicalChannel/reverseLogicalChannelParameters/reverseLogicalChannelDependency", HFILL }},
18958     { &hf_h245_separateStack,
18959       { "separateStack", "h245.separateStack",
18960         FT_NONE, BASE_NONE, NULL, 0,
18961         "", HFILL }},
18962     { &hf_h245_encryptionSync,
18963       { "encryptionSync", "h245.encryptionSync",
18964         FT_NONE, BASE_NONE, NULL, 0,
18965         "", HFILL }},
18966     { &hf_h245_distribution,
18967       { "distribution", "h245.distribution",
18968         FT_UINT32, BASE_DEC, VALS(h245_T_distribution_vals), 0,
18969         "NetworkAccessParameters/distribution", HFILL }},
18970     { &hf_h245_unicast,
18971       { "unicast", "h245.unicast",
18972         FT_NONE, BASE_NONE, NULL, 0,
18973         "NetworkAccessParameters/distribution/unicast", HFILL }},
18974     { &hf_h245_multicast,
18975       { "multicast", "h245.multicast",
18976         FT_NONE, BASE_NONE, NULL, 0,
18977         "NetworkAccessParameters/distribution/multicast", HFILL }},
18978     { &hf_h245_networkAddress,
18979       { "networkAddress", "h245.networkAddress",
18980         FT_UINT32, BASE_DEC, VALS(h245_T_networkAddress_vals), 0,
18981         "NetworkAccessParameters/networkAddress", HFILL }},
18982     { &hf_h245_q2931Address,
18983       { "q2931Address", "h245.q2931Address",
18984         FT_NONE, BASE_NONE, NULL, 0,
18985         "NetworkAccessParameters/networkAddress/q2931Address", HFILL }},
18986     { &hf_h245_e164Address,
18987       { "e164Address", "h245.e164Address",
18988         FT_STRING, BASE_NONE, NULL, 0,
18989         "NetworkAccessParameters/networkAddress/e164Address", HFILL }},
18990     { &hf_h245_localAreaAddress,
18991       { "localAreaAddress", "h245.localAreaAddress",
18992         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
18993         "NetworkAccessParameters/networkAddress/localAreaAddress", HFILL }},
18994     { &hf_h245_associateConference,
18995       { "associateConference", "h245.associateConference",
18996         FT_BOOLEAN, 8, NULL, 0,
18997         "NetworkAccessParameters/associateConference", HFILL }},
18998     { &hf_h245_externalReference,
18999       { "externalReference", "h245.externalReference",
19000         FT_BYTES, BASE_HEX, NULL, 0,
19001         "NetworkAccessParameters/externalReference", HFILL }},
19002     { &hf_h245_t120SetupProcedure,
19003       { "t120SetupProcedure", "h245.t120SetupProcedure",
19004         FT_UINT32, BASE_DEC, VALS(h245_T_t120SetupProcedure_vals), 0,
19005         "NetworkAccessParameters/t120SetupProcedure", HFILL }},
19006     { &hf_h245_originateCall,
19007       { "originateCall", "h245.originateCall",
19008         FT_NONE, BASE_NONE, NULL, 0,
19009         "NetworkAccessParameters/t120SetupProcedure/originateCall", HFILL }},
19010     { &hf_h245_waitForCall,
19011       { "waitForCall", "h245.waitForCall",
19012         FT_NONE, BASE_NONE, NULL, 0,
19013         "NetworkAccessParameters/t120SetupProcedure/waitForCall", HFILL }},
19014     { &hf_h245_issueQuery,
19015       { "issueQuery", "h245.issueQuery",
19016         FT_NONE, BASE_NONE, NULL, 0,
19017         "NetworkAccessParameters/t120SetupProcedure/issueQuery", HFILL }},
19018     { &hf_h245_address,
19019       { "address", "h245.address",
19020         FT_UINT32, BASE_DEC, VALS(h245_T_address_vals), 0,
19021         "Q2931Address/address", HFILL }},
19022     { &hf_h245_internationalNumber,
19023       { "internationalNumber", "h245.internationalNumber",
19024         FT_STRING, BASE_NONE, NULL, 0,
19025         "Q2931Address/address/internationalNumber", HFILL }},
19026     { &hf_h245_nsapAddress,
19027       { "nsapAddress", "h245.nsapAddress",
19028         FT_BYTES, BASE_HEX, NULL, 0,
19029         "Q2931Address/address/nsapAddress", HFILL }},
19030     { &hf_h245_subaddress,
19031       { "subaddress", "h245.subaddress",
19032         FT_BYTES, BASE_HEX, NULL, 0,
19033         "Q2931Address/subaddress", HFILL }},
19034     { &hf_h245_audioHeaderPresent,
19035       { "audioHeaderPresent", "h245.audioHeaderPresent",
19036         FT_BOOLEAN, 8, NULL, 0,
19037         "V75Parameters/audioHeaderPresent", HFILL }},
19038     { &hf_h245_nullData,
19039       { "nullData", "h245.nullData",
19040         FT_NONE, BASE_NONE, NULL, 0,
19041         "DataType/nullData", HFILL }},
19042     { &hf_h245_videoData,
19043       { "videoData", "h245.videoData",
19044         FT_UINT32, BASE_DEC, VALS(h245_VideoCapability_vals), 0,
19045         "", HFILL }},
19046     { &hf_h245_audioData,
19047       { "audioData", "h245.audioData",
19048         FT_UINT32, BASE_DEC, VALS(h245_AudioCapability_vals), 0,
19049         "", HFILL }},
19050     { &hf_h245_data,
19051       { "data", "h245.data",
19052         FT_NONE, BASE_NONE, NULL, 0,
19053         "", HFILL }},
19054     { &hf_h245_encryptionData,
19055       { "encryptionData", "h245.encryptionData",
19056         FT_UINT32, BASE_DEC, VALS(h245_EncryptionMode_vals), 0,
19057         "DataType/encryptionData", HFILL }},
19058     { &hf_h245_h235Control,
19059       { "h235Control", "h245.h235Control",
19060         FT_NONE, BASE_NONE, NULL, 0,
19061         "DataType/h235Control", HFILL }},
19062     { &hf_h245_h235Media,
19063       { "h235Media", "h245.h235Media",
19064         FT_NONE, BASE_NONE, NULL, 0,
19065         "DataType/h235Media", HFILL }},
19066     { &hf_h245_multiplexedStream,
19067       { "multiplexedStream", "h245.multiplexedStream",
19068         FT_NONE, BASE_NONE, NULL, 0,
19069         "DataType/multiplexedStream", HFILL }},
19070     { &hf_h245_redundancyEncoding,
19071       { "redundancyEncoding", "h245.redundancyEncoding",
19072         FT_NONE, BASE_NONE, NULL, 0,
19073         "", HFILL }},
19074     { &hf_h245_multiplePayloadStream,
19075       { "multiplePayloadStream", "h245.multiplePayloadStream",
19076         FT_NONE, BASE_NONE, NULL, 0,
19077         "", HFILL }},
19078     { &hf_h245_fec,
19079       { "fec", "h245.fec",
19080         FT_UINT32, BASE_DEC, VALS(h245_FECData_vals), 0,
19081         "", HFILL }},
19082     { &hf_h245_mediaType,
19083       { "mediaType", "h245.mediaType",
19084         FT_UINT32, BASE_DEC, VALS(h245_T_mediaType_vals), 0,
19085         "H235Media/mediaType", HFILL }},
19086     { &hf_h245_resourceID,
19087       { "resourceID", "h245.resourceID",
19088         FT_UINT32, BASE_DEC, NULL, 0,
19089         "", HFILL }},
19090     { &hf_h245_subChannelID,
19091       { "subChannelID", "h245.subChannelID",
19092         FT_UINT32, BASE_DEC, NULL, 0,
19093         "H222LogicalChannelParameters/subChannelID", HFILL }},
19094     { &hf_h245_pcr_pid,
19095       { "pcr-pid", "h245.pcr_pid",
19096         FT_UINT32, BASE_DEC, NULL, 0,
19097         "H222LogicalChannelParameters/pcr-pid", HFILL }},
19098     { &hf_h245_programDescriptors,
19099       { "programDescriptors", "h245.programDescriptors",
19100         FT_BYTES, BASE_HEX, NULL, 0,
19101         "H222LogicalChannelParameters/programDescriptors", HFILL }},
19102     { &hf_h245_streamDescriptors,
19103       { "streamDescriptors", "h245.streamDescriptors",
19104         FT_BYTES, BASE_HEX, NULL, 0,
19105         "H222LogicalChannelParameters/streamDescriptors", HFILL }},
19106     { &hf_h245_adaptationLayerType,
19107       { "adaptationLayerType", "h245.adaptationLayerType",
19108         FT_UINT32, BASE_DEC, VALS(h245_T_adaptationLayerType_vals), 0,
19109         "H223LogicalChannelParameters/adaptationLayerType", HFILL }},
19110     { &hf_h245_al1Framed,
19111       { "al1Framed", "h245.al1Framed",
19112         FT_NONE, BASE_NONE, NULL, 0,
19113         "", HFILL }},
19114     { &hf_h245_al1NotFramed,
19115       { "al1NotFramed", "h245.al1NotFramed",
19116         FT_NONE, BASE_NONE, NULL, 0,
19117         "", HFILL }},
19118     { &hf_h245_al2WithoutSequenceNumbers,
19119       { "al2WithoutSequenceNumbers", "h245.al2WithoutSequenceNumbers",
19120         FT_NONE, BASE_NONE, NULL, 0,
19121         "", HFILL }},
19122     { &hf_h245_al2WithSequenceNumbers,
19123       { "al2WithSequenceNumbers", "h245.al2WithSequenceNumbers",
19124         FT_NONE, BASE_NONE, NULL, 0,
19125         "", HFILL }},
19126     { &hf_h245_al3,
19127       { "al3", "h245.al3",
19128         FT_NONE, BASE_NONE, NULL, 0,
19129         "", HFILL }},
19130     { &hf_h245_al1M,
19131       { "al1M", "h245.al1M",
19132         FT_NONE, BASE_NONE, NULL, 0,
19133         "", HFILL }},
19134     { &hf_h245_al2M,
19135       { "al2M", "h245.al2M",
19136         FT_NONE, BASE_NONE, NULL, 0,
19137         "", HFILL }},
19138     { &hf_h245_al3M,
19139       { "al3M", "h245.al3M",
19140         FT_NONE, BASE_NONE, NULL, 0,
19141         "", HFILL }},
19142     { &hf_h245_segmentableFlag,
19143       { "segmentableFlag", "h245.segmentableFlag",
19144         FT_BOOLEAN, 8, NULL, 0,
19145         "", HFILL }},
19146     { &hf_h245_controlFieldOctets,
19147       { "controlFieldOctets", "h245.controlFieldOctets",
19148         FT_UINT32, BASE_DEC, NULL, 0,
19149         "Al3/controlFieldOctets", HFILL }},
19150     { &hf_h245_sendBufferSize,
19151       { "sendBufferSize", "h245.sendBufferSize",
19152         FT_UINT32, BASE_DEC, NULL, 0,
19153         "", HFILL }},
19154     { &hf_h245_transferMode,
19155       { "transferMode", "h245.transferMode",
19156         FT_UINT32, BASE_DEC, VALS(h245_T_transferMode_vals), 0,
19157         "H223AL1MParameters/transferMode", HFILL }},
19158     { &hf_h245_framed,
19159       { "framed", "h245.framed",
19160         FT_NONE, BASE_NONE, NULL, 0,
19161         "H223AL1MParameters/transferMode/framed", HFILL }},
19162     { &hf_h245_unframed,
19163       { "unframed", "h245.unframed",
19164         FT_NONE, BASE_NONE, NULL, 0,
19165         "H223AL1MParameters/transferMode/unframed", HFILL }},
19166     { &hf_h245_AL1HeaderFEC,
19167       { "headerFEC", "h245.headerFEC",
19168         FT_UINT32, BASE_DEC, VALS(h245_AL1HeaderFEC_vals), 0,
19169         "H223AL1MParameters/headerFEC", HFILL }},
19170     { &hf_h245_sebch16_7,
19171       { "sebch16-7", "h245.sebch16_7",
19172         FT_NONE, BASE_NONE, NULL, 0,
19173         "", HFILL }},
19174     { &hf_h245_golay24_12,
19175       { "golay24-12", "h245.golay24_12",
19176         FT_NONE, BASE_NONE, NULL, 0,
19177         "", HFILL }},
19178     { &hf_h245_crcLength2,
19179       { "crcLength", "h245.crcLength",
19180         FT_UINT32, BASE_DEC, VALS(h245_AL1CrcLength_vals), 0,
19181         "H223AL1MParameters/crcLength", HFILL }},
19182     { &hf_h245_crc4bit,
19183       { "crc4bit", "h245.crc4bit",
19184         FT_NONE, BASE_NONE, NULL, 0,
19185         "", HFILL }},
19186     { &hf_h245_crc12bit,
19187       { "crc12bit", "h245.crc12bit",
19188         FT_NONE, BASE_NONE, NULL, 0,
19189         "", HFILL }},
19190     { &hf_h245_crc20bit,
19191       { "crc20bit", "h245.crc20bit",
19192         FT_NONE, BASE_NONE, NULL, 0,
19193         "", HFILL }},
19194     { &hf_h245_crc28bit,
19195       { "crc28bit", "h245.crc28bit",
19196         FT_NONE, BASE_NONE, NULL, 0,
19197         "", HFILL }},
19198     { &hf_h245_crc8bit,
19199       { "crc8bit", "h245.crc8bit",
19200         FT_NONE, BASE_NONE, NULL, 0,
19201         "", HFILL }},
19202     { &hf_h245_crc16bit,
19203       { "crc16bit", "h245.crc16bit",
19204         FT_NONE, BASE_NONE, NULL, 0,
19205         "", HFILL }},
19206     { &hf_h245_crc32bit,
19207       { "crc32bit", "h245.crc32bit",
19208         FT_NONE, BASE_NONE, NULL, 0,
19209         "", HFILL }},
19210     { &hf_h245_crcNotUsed,
19211       { "crcNotUsed", "h245.crcNotUsed",
19212         FT_NONE, BASE_NONE, NULL, 0,
19213         "", HFILL }},
19214     { &hf_h245_rcpcCodeRate,
19215       { "rcpcCodeRate", "h245.rcpcCodeRate",
19216         FT_UINT32, BASE_DEC, NULL, 0,
19217         "", HFILL }},
19218     { &hf_h245_arqType,
19219       { "arqType", "h245.arqType",
19220         FT_UINT32, BASE_DEC, VALS(h245_ArqType_vals), 0,
19221         "", HFILL }},
19222     { &hf_h245_alsduSplitting,
19223       { "alsduSplitting", "h245.alsduSplitting",
19224         FT_BOOLEAN, 8, NULL, 0,
19225         "H223AL1MParameters/alsduSplitting", HFILL }},
19226     { &hf_h245_rsCodeCorrection,
19227       { "rsCodeCorrection", "h245.rsCodeCorrection",
19228         FT_UINT32, BASE_DEC, NULL, 0,
19229         "", HFILL }},
19230     { &hf_h245_noArq,
19231       { "noArq", "h245.noArq",
19232         FT_NONE, BASE_NONE, NULL, 0,
19233         "ArqType/noArq", HFILL }},
19234     { &hf_h245_typeIArq,
19235       { "typeIArq", "h245.typeIArq",
19236         FT_NONE, BASE_NONE, NULL, 0,
19237         "ArqType/typeIArq", HFILL }},
19238     { &hf_h245_typeIIArq,
19239       { "typeIIArq", "h245.typeIIArq",
19240         FT_NONE, BASE_NONE, NULL, 0,
19241         "ArqType/typeIIArq", HFILL }},
19242     { &hf_h245_AL2HeaderFEC,
19243       { "headerFEC", "h245.headerFEC",
19244         FT_UINT32, BASE_DEC, VALS(h245_AL2HeaderFEC_vals), 0,
19245         "H223AL2MParameters/headerFEC", HFILL }},
19246     { &hf_h245_sebch16_5,
19247       { "sebch16-5", "h245.sebch16_5",
19248         FT_NONE, BASE_NONE, NULL, 0,
19249         "H223AL2MParameters/headerFEC/sebch16-5", HFILL }},
19250     { &hf_h245_headerFormat,
19251       { "headerFormat", "h245.headerFormat",
19252         FT_UINT32, BASE_DEC, VALS(h245_T_headerFormat_vals), 0,
19253         "H223AL3MParameters/headerFormat", HFILL }},
19254     { &hf_h245_crlength2,
19255       { "crcLength", "h245.crcLength",
19256         FT_UINT32, BASE_DEC, VALS(h245_AL3CrcLength_vals), 0,
19257         "H223AL3MParameters/crcLength", HFILL }},
19258     { &hf_h245_numberOfRetransmissions,
19259       { "numberOfRetransmissions", "h245.numberOfRetransmissions",
19260         FT_UINT32, BASE_DEC, VALS(h245_T_numberOfRetransmissions_vals), 0,
19261         "H223AnnexCArqParameters/numberOfRetransmissions", HFILL }},
19262     { &hf_h245_finite,
19263       { "finite", "h245.finite",
19264         FT_UINT32, BASE_DEC, NULL, 0,
19265         "H223AnnexCArqParameters/numberOfRetransmissions/finite", HFILL }},
19266     { &hf_h245_infinite,
19267       { "infinite", "h245.infinite",
19268         FT_NONE, BASE_NONE, NULL, 0,
19269         "H223AnnexCArqParameters/numberOfRetransmissions/infinite", HFILL }},
19270     { &hf_h245_hdlcParameters,
19271       { "hdlcParameters", "h245.hdlcParameters",
19272         FT_NONE, BASE_NONE, NULL, 0,
19273         "V76LogicalChannelParameters/hdlcParameters", HFILL }},
19274     { &hf_h245_suspendResume,
19275       { "suspendResume", "h245.suspendResume",
19276         FT_UINT32, BASE_DEC, VALS(h245_T_suspendResume_vals), 0,
19277         "V76LogicalChannelParameters/suspendResume", HFILL }},
19278     { &hf_h245_noSuspendResume,
19279       { "noSuspendResume", "h245.noSuspendResume",
19280         FT_NONE, BASE_NONE, NULL, 0,
19281         "V76LogicalChannelParameters/suspendResume/noSuspendResume", HFILL }},
19282     { &hf_h245_suspendResumewAddress,
19283       { "suspendResumewAddress", "h245.suspendResumewAddress",
19284         FT_NONE, BASE_NONE, NULL, 0,
19285         "", HFILL }},
19286     { &hf_h245_suspendResumewoAddress,
19287       { "suspendResumewoAddress", "h245.suspendResumewoAddress",
19288         FT_NONE, BASE_NONE, NULL, 0,
19289         "", HFILL }},
19290     { &hf_h245_uIH,
19291       { "uIH", "h245.uIH",
19292         FT_BOOLEAN, 8, NULL, 0,
19293         "V76LogicalChannelParameters/uIH", HFILL }},
19294     { &hf_h245_v76_mode,
19295       { "mode", "h245.mode",
19296         FT_UINT32, BASE_DEC, VALS(h245_V76LCP_mode_vals), 0,
19297         "V76LogicalChannelParameters/mode", HFILL }},
19298     { &hf_h245_eRM,
19299       { "eRM", "h245.eRM",
19300         FT_NONE, BASE_NONE, NULL, 0,
19301         "V76LogicalChannelParameters/mode/eRM", HFILL }},
19302     { &hf_h245_windowSize,
19303       { "windowSize", "h245.windowSize",
19304         FT_UINT32, BASE_DEC, NULL, 0,
19305         "V76LogicalChannelParameters/mode/eRM/windowSize", HFILL }},
19306     { &hf_h245_recovery,
19307       { "recovery", "h245.recovery",
19308         FT_UINT32, BASE_DEC, VALS(h245_T_recovery_vals), 0,
19309         "V76LogicalChannelParameters/mode/eRM/recovery", HFILL }},
19310     { &hf_h245_rej,
19311       { "rej", "h245.rej",
19312         FT_NONE, BASE_NONE, NULL, 0,
19313         "V76LogicalChannelParameters/mode/eRM/recovery/rej", HFILL }},
19314     { &hf_h245_sREJ,
19315       { "sREJ", "h245.sREJ",
19316         FT_NONE, BASE_NONE, NULL, 0,
19317         "V76LogicalChannelParameters/mode/eRM/recovery/sREJ", HFILL }},
19318     { &hf_h245_mSREJ,
19319       { "mSREJ", "h245.mSREJ",
19320         FT_NONE, BASE_NONE, NULL, 0,
19321         "V76LogicalChannelParameters/mode/eRM/recovery/mSREJ", HFILL }},
19322     { &hf_h245_uNERM,
19323       { "uNERM", "h245.uNERM",
19324         FT_NONE, BASE_NONE, NULL, 0,
19325         "V76LogicalChannelParameters/mode/uNERM", HFILL }},
19326     { &hf_h245_v75Parameters,
19327       { "v75Parameters", "h245.v75Parameters",
19328         FT_NONE, BASE_NONE, NULL, 0,
19329         "V76LogicalChannelParameters/v75Parameters", HFILL }},
19330     { &hf_h245_crcLength,
19331       { "crcLength", "h245.crcLength",
19332         FT_UINT32, BASE_DEC, VALS(h245_CRCLength_vals), 0,
19333         "V76HDLCParameters/crcLength", HFILL }},
19334     { &hf_h245_n401,
19335       { "n401", "h245.n401",
19336         FT_UINT32, BASE_DEC, NULL, 0,
19337         "V76HDLCParameters/n401", HFILL }},
19338     { &hf_h245_loopbackTestProcedure,
19339       { "loopbackTestProcedure", "h245.loopbackTestProcedure",
19340         FT_BOOLEAN, 8, NULL, 0,
19341         "V76HDLCParameters/loopbackTestProcedure", HFILL }},
19342     { &hf_h245_sessionID_0_255,
19343       { "sessionID", "h245.sessionID",
19344         FT_UINT32, BASE_DEC, NULL, 0,
19345         "H2250LogicalChannelParameters/sessionID", HFILL }},
19346     { &hf_h245_associatedSessionID,
19347       { "associatedSessionID", "h245.associatedSessionID",
19348         FT_UINT32, BASE_DEC, NULL, 0,
19349         "", HFILL }},
19350     { &hf_h245_mediaChannel,
19351       { "mediaChannel", "h245.mediaChannel",
19352         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
19353         "", HFILL }},
19354     { &hf_h245_mediaGuaranteedDelivery,
19355       { "mediaGuaranteedDelivery", "h245.mediaGuaranteedDelivery",
19356         FT_BOOLEAN, 8, NULL, 0,
19357         "", HFILL }},
19358     { &hf_h245_mediaControlChannel,
19359       { "mediaControlChannel", "h245.mediaControlChannel",
19360         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
19361         "", HFILL }},
19362     { &hf_h245_mediaControlGuaranteedDelivery,
19363       { "mediaControlGuaranteedDelivery", "h245.mediaControlGuaranteedDelivery",
19364         FT_BOOLEAN, 8, NULL, 0,
19365         "", HFILL }},
19366     { &hf_h245_destination,
19367       { "destination", "h245.destination",
19368         FT_NONE, BASE_NONE, NULL, 0,
19369         "", HFILL }},
19370     { &hf_h245_mediaPacketization,
19371       { "mediaPacketization", "h245.mediaPacketization",
19372         FT_UINT32, BASE_DEC, VALS(h245_T_mediaPacketization_vals), 0,
19373         "H2250LogicalChannelParameters/mediaPacketization", HFILL }},
19374     { &hf_h245_h261aVideoPacketizationFlag,
19375       { "h261aVideoPacketization", "h245.h261aVideoPacketization",
19376         FT_NONE, BASE_NONE, NULL, 0,
19377         "H2250LogicalChannelParameters/mediaPacketization/h261aVideoPacketization", HFILL }},
19378     { &hf_h245_rtpPayloadType,
19379       { "rtpPayloadType", "h245.rtpPayloadType",
19380         FT_NONE, BASE_NONE, NULL, 0,
19381         "H2250LogicalChannelParameters/mediaPacketization/rtpPayloadType", HFILL }},
19382     { &hf_h245_source,
19383       { "source", "h245.source",
19384         FT_NONE, BASE_NONE, NULL, 0,
19385         "H2250LogicalChannelParameters/source", HFILL }},
19386     { &hf_h245_payloadDescriptor,
19387       { "payloadDescriptor", "h245.payloadDescriptor",
19388         FT_UINT32, BASE_DEC, VALS(h245_T_payloadDescriptor_vals), 0,
19389         "RTPPayloadType/payloadDescriptor", HFILL }},
19390     { &hf_h245_rfc_number,
19391       { "rfc-number", "h245.rfc_number",
19392         FT_UINT32, BASE_DEC, VALS(h245_RFC_number_vals), 0,
19393         "RTPPayloadType/payloadDescriptor/rfc-number", HFILL }},
19394     { &hf_h245_oid,
19395       { "oid", "h245.oid",
19396         FT_STRING, BASE_NONE, NULL, 0,
19397         "RTPPayloadType/payloadDescriptor/oid", HFILL }},
19398     { &hf_h245_payloadType,
19399       { "payloadType", "h245.payloadType",
19400         FT_UINT32, BASE_DEC, NULL, 0,
19401         "", HFILL }},
19402     { &hf_h245_secondaryEncoding3,
19403       { "secondaryEncoding3", "h245.secondaryEncoding3",
19404         FT_UINT32, BASE_DEC, VALS(h245_DataType_vals), 0,
19405         "RedundancyEncoding/secondaryEncoding3", HFILL }},
19406     { &hf_h245_rtpRedundancyEncoding,
19407       { "rtpRedundancyEncoding", "h245.rtpRedundancyEncoding",
19408         FT_NONE, BASE_NONE, NULL, 0,
19409         "RedundancyEncoding/rtpRedundancyEncoding", HFILL }},
19410     { &hf_h245_primary,
19411       { "primary", "h245.primary",
19412         FT_NONE, BASE_NONE, NULL, 0,
19413         "RedundancyEncoding/rtpRedundancyEncoding/primary", HFILL }},
19414     { &hf_h245_secondary,
19415       { "secondary", "h245.secondary",
19416         FT_NONE, BASE_NONE, NULL, 0,
19417         "RedundancyEncoding/rtpRedundancyEncoding/secondary", HFILL }},
19418     { &hf_h245_secondary_item,
19419       { "Item", "h245.secondary_item",
19420         FT_NONE, BASE_NONE, NULL, 0,
19421         "RedundancyEncoding/rtpRedundancyEncoding/secondary/_item", HFILL }},
19422     { &hf_h245_elements,
19423       { "elements", "h245.elements",
19424         FT_NONE, BASE_NONE, NULL, 0,
19425         "MultiplePayloadStream/elements", HFILL }},
19426     { &hf_h245_elements_item,
19427       { "Item", "h245.elements_item",
19428         FT_NONE, BASE_NONE, NULL, 0,
19429         "MultiplePayloadStream/elements/_item", HFILL }},
19430     { &hf_h245_rfc2733,
19431       { "rfc2733", "h245.rfc2733",
19432         FT_NONE, BASE_NONE, NULL, 0,
19433         "FECData/rfc2733", HFILL }},
19434     { &hf_h245_fec_data_mode,
19435       { "mode", "h245.mode",
19436         FT_UINT32, BASE_DEC, VALS(h245_FECdata_mode_vals), 0,
19437         "FECData/rfc2733/mode", HFILL }},
19438     { &hf_h245_redundancyEncodingFlag,
19439       { "redundancyEncoding", "h245.redundancyEncoding",
19440         FT_NONE, BASE_NONE, NULL, 0,
19441         "", HFILL }},
19442     { &hf_h245_separateStream,
19443       { "separateStream", "h245.separateStream",
19444         FT_UINT32, BASE_DEC, VALS(h245_SeparateStream_vals), 0,
19445         "", HFILL }},
19446     { &hf_h245_differentPort,
19447       { "differentPort", "h245.differentPort",
19448         FT_NONE, BASE_NONE, NULL, 0,
19449         "SeparateStream/differentPort", HFILL }},
19450     { &hf_h245_protectedSessionID,
19451       { "protectedSessionID", "h245.protectedSessionID",
19452         FT_UINT32, BASE_DEC, NULL, 0,
19453         "SeparateStream/differentPort/protectedSessionID", HFILL }},
19454     { &hf_h245_protectedPayloadType,
19455       { "protectedPayloadType", "h245.protectedPayloadType",
19456         FT_UINT32, BASE_DEC, NULL, 0,
19457         "", HFILL }},
19458     { &hf_h245_samePort,
19459       { "samePort", "h245.samePort",
19460         FT_NONE, BASE_NONE, NULL, 0,
19461         "SeparateStream/samePort", HFILL }},
19462     { &hf_h245_unicastAddress,
19463       { "unicastAddress", "h245.unicastAddress",
19464         FT_UINT32, BASE_DEC, VALS(h245_UnicastAddress_vals), 0,
19465         "TransportAddress/unicastAddress", HFILL }},
19466     { &hf_h245_multicastAddress,
19467       { "multicastAddress", "h245.multicastAddress",
19468         FT_UINT32, BASE_DEC, VALS(h245_MulticastAddress_vals), 0,
19469         "TransportAddress/multicastAddress", HFILL }},
19470     { &hf_h245_iPAddress,
19471       { "iPAddress", "h245.iPAddress",
19472         FT_NONE, BASE_NONE, NULL, 0,
19473         "UnicastAddress/iPAddress", HFILL }},
19474     { &hf_h245_ip4_network,
19475       { "network", "h245.network",
19476         FT_IPv4, BASE_NONE, NULL, 0,
19477         "UnicastAddress/iPAddress/network", HFILL }},
19478     { &hf_h245_tsapIdentifier,
19479       { "tsapIdentifier", "h245.tsapIdentifier",
19480         FT_UINT32, BASE_DEC, NULL, 0,
19481         "UnicastAddress/iPAddress/tsapIdentifier", HFILL }},
19482     { &hf_h245_iPXAddress,
19483       { "iPXAddress", "h245.iPXAddress",
19484         FT_NONE, BASE_NONE, NULL, 0,
19485         "UnicastAddress/iPXAddress", HFILL }},
19486     { &hf_h245_node,
19487       { "node", "h245.node",
19488         FT_BYTES, BASE_HEX, NULL, 0,
19489         "UnicastAddress/iPXAddress/node", HFILL }},
19490     { &hf_h245_netnum,
19491       { "netnum", "h245.netnum",
19492         FT_BYTES, BASE_HEX, NULL, 0,
19493         "UnicastAddress/iPXAddress/netnum", HFILL }},
19494     { &hf_h245_ipx_tsapIdentifier,
19495       { "tsapIdentifier", "h245.tsapIdentifier",
19496         FT_BYTES, BASE_HEX, NULL, 0,
19497         "UnicastAddress/iPXAddress/tsapIdentifier", HFILL }},
19498     { &hf_h245_iP6Address,
19499       { "iP6Address", "h245.iP6Address",
19500         FT_NONE, BASE_NONE, NULL, 0,
19501         "UnicastAddress/iP6Address", HFILL }},
19502     { &hf_h245_ip6_network,
19503       { "network", "h245.network",
19504         FT_IPv6, BASE_NONE, NULL, 0,
19505         "UnicastAddress/iP6Address/network", HFILL }},
19506     { &hf_h245_ipv6_tsapIdentifier,
19507       { "tsapIdentifier", "h245.tsapIdentifier",
19508         FT_UINT32, BASE_DEC, NULL, 0,
19509         "UnicastAddress/iP6Address/tsapIdentifier", HFILL }},
19510     { &hf_h245_netBios,
19511       { "netBios", "h245.netBios",
19512         FT_BYTES, BASE_HEX, NULL, 0,
19513         "UnicastAddress/netBios", HFILL }},
19514     { &hf_h245_iPSourceRouteAddress,
19515       { "iPSourceRouteAddress", "h245.iPSourceRouteAddress",
19516         FT_NONE, BASE_NONE, NULL, 0,
19517         "UnicastAddress/iPSourceRouteAddress", HFILL }},
19518     { &hf_h245_routing,
19519       { "routing", "h245.routing",
19520         FT_UINT32, BASE_DEC, VALS(h245_T_routing_vals), 0,
19521         "UnicastAddress/iPSourceRouteAddress/routing", HFILL }},
19522     { &hf_h245_strict,
19523       { "strict", "h245.strict",
19524         FT_NONE, BASE_NONE, NULL, 0,
19525         "UnicastAddress/iPSourceRouteAddress/routing/strict", HFILL }},
19526     { &hf_h245_loose,
19527       { "loose", "h245.loose",
19528         FT_NONE, BASE_NONE, NULL, 0,
19529         "UnicastAddress/iPSourceRouteAddress/routing/loose", HFILL }},
19530     { &hf_h245_network,
19531       { "network", "h245.network",
19532         FT_BYTES, BASE_HEX, NULL, 0,
19533         "UnicastAddress/iPSourceRouteAddress/network", HFILL }},
19534     { &hf_h245_iPSrcRoute_tsapIdentifier,
19535       { "tsapIdentifier", "h245.tsapIdentifier",
19536         FT_UINT32, BASE_DEC, NULL, 0,
19537         "UnicastAddress/iPSourceRouteAddress/tsapIdentifier", HFILL }},
19538     { &hf_h245_route,
19539       { "route", "h245.route",
19540         FT_NONE, BASE_NONE, NULL, 0,
19541         "UnicastAddress/iPSourceRouteAddress/route", HFILL }},
19542     { &hf_h245_route_item,
19543       { "Item", "h245.route_item",
19544         FT_BYTES, BASE_HEX, NULL, 0,
19545         "UnicastAddress/iPSourceRouteAddress/route/_item", HFILL }},
19546     { &hf_h245_nsap,
19547       { "nsap", "h245.nsap",
19548         FT_BYTES, BASE_HEX, NULL, 0,
19549         "", HFILL }},
19550     { &hf_h245_nonStandardAddress,
19551       { "nonStandardAddress", "h245.nonStandardAddress",
19552         FT_NONE, BASE_NONE, NULL, 0,
19553         "", HFILL }},
19554     { &hf_h245_mIPAddress,
19555       { "iPAddress", "h245.iPAddress",
19556         FT_NONE, BASE_NONE, NULL, 0,
19557         "MulticastAddress/iPAddress", HFILL }},
19558     { &hf_h245_mip4_network,
19559       { "network", "h245.network",
19560         FT_IPv4, BASE_NONE, NULL, 0,
19561         "MulticastAddress/iPAddress/network", HFILL }},
19562     { &hf_h245_multicast_tsapIdentifier,
19563       { "tsapIdentifier", "h245.tsapIdentifier",
19564         FT_UINT32, BASE_DEC, NULL, 0,
19565         "MulticastAddress/iPAddress/tsapIdentifier", HFILL }},
19566     { &hf_h245_mIP6Address,
19567       { "iP6Address", "h245.iP6Address",
19568         FT_NONE, BASE_NONE, NULL, 0,
19569         "MulticastAddress/iP6Address", HFILL }},
19570     { &hf_h245_mip6_network,
19571       { "network", "h245.network",
19572         FT_IPv6, BASE_NONE, NULL, 0,
19573         "MulticastAddress/iP6Address/network", HFILL }},
19574     { &hf_h245_multicast_IPv6_tsapIdentifier,
19575       { "tsapIdentifier", "h245.tsapIdentifier",
19576         FT_UINT32, BASE_DEC, NULL, 0,
19577         "MulticastAddress/iP6Address/tsapIdentifier", HFILL }},
19578     { &hf_h245_synchFlag,
19579       { "synchFlag", "h245.synchFlag",
19580         FT_UINT32, BASE_DEC, NULL, 0,
19581         "", HFILL }},
19582     { &hf_h245_h235Key,
19583       { "h235Key", "h245.h235Key",
19584         FT_BYTES, BASE_HEX, NULL, 0,
19585         "EncryptionSync/h235Key", HFILL }},
19586     { &hf_h245_escrowentry,
19587       { "escrowentry", "h245.escrowentry",
19588         FT_NONE, BASE_NONE, NULL, 0,
19589         "EncryptionSync/escrowentry", HFILL }},
19590     { &hf_h245_escrowentry_item,
19591       { "Item", "h245.escrowentry_item",
19592         FT_NONE, BASE_NONE, NULL, 0,
19593         "EncryptionSync/escrowentry/_item", HFILL }},
19594     { &hf_h245_escrowID,
19595       { "escrowID", "h245.escrowID",
19596         FT_STRING, BASE_NONE, NULL, 0,
19597         "EscrowData/escrowID", HFILL }},
19598     { &hf_h245_escrowValue,
19599       { "escrowValue", "h245.escrowValue",
19600         FT_BYTES, BASE_HEX, NULL, 0,
19601         "EscrowData/escrowValue", HFILL }},
19602     { &hf_h245_olc_ack_reverseLogicalChannelParameters,
19603       { "reverseLogicalChannelParameters", "h245.reverseLogicalChannelParameters",
19604         FT_NONE, BASE_NONE, NULL, 0,
19605         "OpenLogicalChannelAck/reverseLogicalChannelParameters", HFILL }},
19606     { &hf_h245_reverseLogicalChannelNumber,
19607       { "reverseLogicalChannelNumber", "h245.reverseLogicalChannelNumber",
19608         FT_UINT32, BASE_DEC, NULL, 0,
19609         "OpenLogicalChannelAck/reverseLogicalChannelParameters/reverseLogicalChannelNumber", HFILL }},
19610     { &hf_h245_olc_ack_multiplexParameters,
19611       { "multiplexParameters", "h245.multiplexParameters",
19612         FT_UINT32, BASE_DEC, VALS(h245_T_multiplexParameters_vals), 0,
19613         "OpenLogicalChannelAck/reverseLogicalChannelParameters/multiplexParameters", HFILL }},
19614     { &hf_h245_forwardMultiplexAckParameters,
19615       { "forwardMultiplexAckParameters", "h245.forwardMultiplexAckParameters",
19616         FT_UINT32, BASE_DEC, VALS(h245_T_forwardMultiplexAckParameters_vals), 0,
19617         "OpenLogicalChannelAck/forwardMultiplexAckParameters", HFILL }},
19618     { &hf_h245_h2250LogicalChannelAckParameters,
19619       { "h2250LogicalChannelAckParameters", "h245.h2250LogicalChannelAckParameters",
19620         FT_NONE, BASE_NONE, NULL, 0,
19621         "OpenLogicalChannelAck/forwardMultiplexAckParameters/h2250LogicalChannelAckParameters", HFILL }},
19622     { &hf_h245_olc_rej_cause,
19623       { "cause", "h245.cause",
19624         FT_UINT32, BASE_DEC, VALS(h245_OpenLogicalChannelRejectCause_vals), 0,
19625         "OpenLogicalChannelReject/cause", HFILL }},
19626     { &hf_h245_unsuitableReverseParameters,
19627       { "unsuitableReverseParameters", "h245.unsuitableReverseParameters",
19628         FT_NONE, BASE_NONE, NULL, 0,
19629         "OpenLogicalChannelReject/cause/unsuitableReverseParameters", HFILL }},
19630     { &hf_h245_dataTypeNotSupported,
19631       { "dataTypeNotSupported", "h245.dataTypeNotSupported",
19632         FT_NONE, BASE_NONE, NULL, 0,
19633         "OpenLogicalChannelReject/cause/dataTypeNotSupported", HFILL }},
19634     { &hf_h245_dataTypeNotAvailable,
19635       { "dataTypeNotAvailable", "h245.dataTypeNotAvailable",
19636         FT_NONE, BASE_NONE, NULL, 0,
19637         "OpenLogicalChannelReject/cause/dataTypeNotAvailable", HFILL }},
19638     { &hf_h245_unknownDataType,
19639       { "unknownDataType", "h245.unknownDataType",
19640         FT_NONE, BASE_NONE, NULL, 0,
19641         "OpenLogicalChannelReject/cause/unknownDataType", HFILL }},
19642     { &hf_h245_dataTypeALCombinationNotSupported,
19643       { "dataTypeALCombinationNotSupported", "h245.dataTypeALCombinationNotSupported",
19644         FT_NONE, BASE_NONE, NULL, 0,
19645         "OpenLogicalChannelReject/cause/dataTypeALCombinationNotSupported", HFILL }},
19646     { &hf_h245_multicastChannelNotAllowed,
19647       { "multicastChannelNotAllowed", "h245.multicastChannelNotAllowed",
19648         FT_NONE, BASE_NONE, NULL, 0,
19649         "OpenLogicalChannelReject/cause/multicastChannelNotAllowed", HFILL }},
19650     { &hf_h245_insufficientBandwidth,
19651       { "insufficientBandwidth", "h245.insufficientBandwidth",
19652         FT_NONE, BASE_NONE, NULL, 0,
19653         "OpenLogicalChannelReject/cause/insufficientBandwidth", HFILL }},
19654     { &hf_h245_separateStackEstablishmentFailed,
19655       { "separateStackEstablishmentFailed", "h245.separateStackEstablishmentFailed",
19656         FT_NONE, BASE_NONE, NULL, 0,
19657         "OpenLogicalChannelReject/cause/separateStackEstablishmentFailed", HFILL }},
19658     { &hf_h245_invalidSessionID,
19659       { "invalidSessionID", "h245.invalidSessionID",
19660         FT_NONE, BASE_NONE, NULL, 0,
19661         "OpenLogicalChannelReject/cause/invalidSessionID", HFILL }},
19662     { &hf_h245_masterSlaveConflict,
19663       { "masterSlaveConflict", "h245.masterSlaveConflict",
19664         FT_NONE, BASE_NONE, NULL, 0,
19665         "OpenLogicalChannelReject/cause/masterSlaveConflict", HFILL }},
19666     { &hf_h245_waitForCommunicationMode,
19667       { "waitForCommunicationMode", "h245.waitForCommunicationMode",
19668         FT_NONE, BASE_NONE, NULL, 0,
19669         "OpenLogicalChannelReject/cause/waitForCommunicationMode", HFILL }},
19670     { &hf_h245_invalidDependentChannel,
19671       { "invalidDependentChannel", "h245.invalidDependentChannel",
19672         FT_NONE, BASE_NONE, NULL, 0,
19673         "OpenLogicalChannelReject/cause/invalidDependentChannel", HFILL }},
19674     { &hf_h245_replacementForRejected,
19675       { "replacementForRejected", "h245.replacementForRejected",
19676         FT_NONE, BASE_NONE, NULL, 0,
19677         "OpenLogicalChannelReject/cause/replacementForRejected", HFILL }},
19678     { &hf_h245_sessionID,
19679       { "sessionID", "h245.sessionID",
19680         FT_UINT32, BASE_DEC, NULL, 0,
19681         "", HFILL }},
19682     { &hf_h245_ack_mediaChannel,
19683       { "mediaChannel", "h245.mediaChannel",
19684         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
19685         "H2250LogicalChannelAckParameters/mediaChannel", HFILL }},
19686     { &hf_h245_ack_mediaControlChannel,
19687       { "mediaControlChannel", "h245.mediaControlChannel",
19688         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
19689         "H2250LogicalChannelAckParameters/mediaControlChannel", HFILL }},
19690     { &hf_h245_flowControlToZero,
19691       { "flowControlToZero", "h245.flowControlToZero",
19692         FT_BOOLEAN, 8, NULL, 0,
19693         "H2250LogicalChannelAckParameters/flowControlToZero", HFILL }},
19694     { &hf_h245_CloseLogicalChannel_source,
19695       { "source", "h245.source",
19696         FT_UINT32, BASE_DEC, VALS(h245_T_source_vals), 0,
19697         "CloseLogicalChannel/source", HFILL }},
19698     { &hf_h245_user,
19699       { "user", "h245.user",
19700         FT_NONE, BASE_NONE, NULL, 0,
19701         "CloseLogicalChannel/source/user", HFILL }},
19702     { &hf_h245_lcse,
19703       { "lcse", "h245.lcse",
19704         FT_NONE, BASE_NONE, NULL, 0,
19705         "CloseLogicalChannel/source/lcse", HFILL }},
19706     { &hf_h245_clc_reason,
19707       { "reason", "h245.reason",
19708         FT_UINT32, BASE_DEC, VALS(h245_clc_reason_vals), 0,
19709         "CloseLogicalChannel/reason", HFILL }},
19710     { &hf_h245_unknown,
19711       { "unknown", "h245.unknown",
19712         FT_NONE, BASE_NONE, NULL, 0,
19713         "", HFILL }},
19714     { &hf_h245_reopen,
19715       { "reopen", "h245.reopen",
19716         FT_NONE, BASE_NONE, NULL, 0,
19717         "", HFILL }},
19718     { &hf_h245_reservationFailure,
19719       { "reservationFailure", "h245.reservationFailure",
19720         FT_NONE, BASE_NONE, NULL, 0,
19721         "", HFILL }},
19722     { &hf_h245_qosCapability,
19723       { "qosCapability", "h245.qosCapability",
19724         FT_NONE, BASE_NONE, NULL, 0,
19725         "RequestChannelClose/qosCapability", HFILL }},
19726     { &hf_h245_reason,
19727       { "reason", "h245.reason",
19728         FT_UINT32, BASE_DEC, VALS(h245_T_reason_vals), 0,
19729         "RequestChannelClose/reason", HFILL }},
19730     { &hf_h245_normal,
19731       { "normal", "h245.normal",
19732         FT_NONE, BASE_NONE, NULL, 0,
19733         "RequestChannelClose/reason/normal", HFILL }},
19734     { &hf_h245_req_chan_clos_rej_cause,
19735       { "cause", "h245.cause",
19736         FT_UINT32, BASE_DEC, VALS(h245_RequestChannelCloseRejectCause_vals), 0,
19737         "RequestChannelCloseReject/cause", HFILL }},
19738     { &hf_h245_multiplexEntryDescriptors,
19739       { "multiplexEntryDescriptors", "h245.multiplexEntryDescriptors",
19740         FT_NONE, BASE_NONE, NULL, 0,
19741         "MultiplexEntrySend/multiplexEntryDescriptors", HFILL }},
19742     { &hf_h245_multiplexEntryDescriptors_item,
19743       { "Item", "h245.multiplexEntryDescriptors_item",
19744         FT_NONE, BASE_NONE, NULL, 0,
19745         "MultiplexEntrySend/multiplexEntryDescriptors/_item", HFILL }},
19746     { &hf_h245_multiplexTableEntryNumber,
19747       { "multiplexTableEntryNumber", "h245.multiplexTableEntryNumber",
19748         FT_UINT32, BASE_DEC, NULL, 0,
19749         "", HFILL }},
19750     { &hf_h245_elementList,
19751       { "elementList", "h245.elementList",
19752         FT_NONE, BASE_NONE, NULL, 0,
19753         "MultiplexEntryDescriptor/elementList", HFILL }},
19754     { &hf_h245_elementList_item,
19755       { "Item", "h245.elementList_item",
19756         FT_NONE, BASE_NONE, NULL, 0,
19757         "MultiplexEntryDescriptor/elementList/_item", HFILL }},
19758     { &hf_h245_Me_type,
19759       { "type", "h245.type",
19760         FT_UINT32, BASE_DEC, VALS(h245_Me_type_vals), 0,
19761         "MultiplexElement/type", HFILL }},
19762     { &hf_h245_logicalChannelNum,
19763       { "logicalChannelNumber", "h245.logicalChannelNumber",
19764         FT_UINT32, BASE_DEC, NULL, 0,
19765         "MultiplexElement/type/logicalChannelNumber", HFILL }},
19766     { &hf_h245_subElementList,
19767       { "subElementList", "h245.subElementList",
19768         FT_NONE, BASE_NONE, NULL, 0,
19769         "MultiplexElement/type/subElementList", HFILL }},
19770     { &hf_h245_subElementList_item,
19771       { "Item", "h245.subElementList_item",
19772         FT_NONE, BASE_NONE, NULL, 0,
19773         "MultiplexElement/type/subElementList/_item", HFILL }},
19774     { &hf_h245_me_repeatCount,
19775       { "repeatCount", "h245.repeatCount",
19776         FT_UINT32, BASE_DEC, VALS(h245_ME_repeatCount_vals), 0,
19777         "MultiplexElement/repeatCount", HFILL }},
19778     { &hf_h245_finite_1_65535,
19779       { "finite", "h245.finite",
19780         FT_UINT32, BASE_DEC, NULL, 0,
19781         "MultiplexElement/repeatCount/finite", HFILL }},
19782     { &hf_h245_untilClosingFlag,
19783       { "untilClosingFlag", "h245.untilClosingFlag",
19784         FT_NONE, BASE_NONE, NULL, 0,
19785         "MultiplexElement/repeatCount/untilClosingFlag", HFILL }},
19786     { &hf_h245_multiplexTableEntryNumbers,
19787       { "multiplexTableEntryNumber", "h245.multiplexTableEntryNumber",
19788         FT_NONE, BASE_NONE, NULL, 0,
19789         "", HFILL }},
19790     { &hf_h245_multiplexTableEntryNumber_item,
19791       { "Item", "h245.multiplexTableEntryNumber_item",
19792         FT_UINT32, BASE_DEC, NULL, 0,
19793         "", HFILL }},
19794     { &hf_h245_rejectionDescriptions1,
19795       { "rejectionDescriptions1", "h245.rejectionDescriptions1",
19796         FT_NONE, BASE_NONE, NULL, 0,
19797         "MultiplexEntrySendReject/rejectionDescriptions1", HFILL }},
19798     { &hf_h245_rejectionDescriptions1_item,
19799       { "Item", "h245.rejectionDescriptions1_item",
19800         FT_NONE, BASE_NONE, NULL, 0,
19801         "MultiplexEntrySendReject/rejectionDescriptions1/_item", HFILL }},
19802     { &hf_h245_mux_rej_cause,
19803       { "cause", "h245.cause",
19804         FT_UINT32, BASE_DEC, VALS(h245_MultiplexEntryRejectionDescriptionsCause_vals), 0,
19805         "MultiplexEntryRejectionDescriptions/cause", HFILL }},
19806     { &hf_h245_unspecifiedCause,
19807       { "unspecifiedCause", "h245.unspecifiedCause",
19808         FT_NONE, BASE_NONE, NULL, 0,
19809         "", HFILL }},
19810     { &hf_h245_descriptorTooComplex,
19811       { "descriptorTooComplex", "h245.descriptorTooComplex",
19812         FT_NONE, BASE_NONE, NULL, 0,
19813         "MultiplexEntryRejectionDescriptions/cause/descriptorTooComplex", HFILL }},
19814     { &hf_h245_entryNumbers,
19815       { "entryNumbers", "h245.entryNumbers",
19816         FT_NONE, BASE_NONE, NULL, 0,
19817         "", HFILL }},
19818     { &hf_h245_entryNumbers_item,
19819       { "Item", "h245.entryNumbers_item",
19820         FT_UINT32, BASE_DEC, NULL, 0,
19821         "", HFILL }},
19822     { &hf_h245_rejectionDescriptions2,
19823       { "rejectionDescriptions2", "h245.rejectionDescriptions2",
19824         FT_NONE, BASE_NONE, NULL, 0,
19825         "RequestMultiplexEntryReject/rejectionDescriptions2", HFILL }},
19826     { &hf_h245_rejectionDescriptions2_item,
19827       { "Item", "h245.rejectionDescriptions2_item",
19828         FT_NONE, BASE_NONE, NULL, 0,
19829         "RequestMultiplexEntryReject/rejectionDescriptions2/_item", HFILL }},
19830     { &hf_h245_req_mux_rej_cause,
19831       { "cause", "h245.cause",
19832         FT_UINT32, BASE_DEC, VALS(h245_RequestMultiplexEntryRejectionDescriptionsCause_vals), 0,
19833         "RequestMultiplexEntryRejectionDescriptions/cause", HFILL }},
19834     { &hf_h245_requestedModes,
19835       { "requestedModes", "h245.requestedModes",
19836         FT_NONE, BASE_NONE, NULL, 0,
19837         "RequestMode/requestedModes", HFILL }},
19838     { &hf_h245_requestedModes_item,
19839       { "Item", "h245.requestedModes_item",
19840         FT_NONE, BASE_NONE, NULL, 0,
19841         "RequestMode/requestedModes/_item", HFILL }},
19842     { &hf_h245_req_mode_ack_response,
19843       { "response", "h245.response",
19844         FT_UINT32, BASE_DEC, VALS(h245_Req_mode_ack_response_vals), 0,
19845         "RequestModeAck/response", HFILL }},
19846     { &hf_h245_willTransmitMostPreferredMode,
19847       { "willTransmitMostPreferredMode", "h245.willTransmitMostPreferredMode",
19848         FT_NONE, BASE_NONE, NULL, 0,
19849         "RequestModeAck/response/willTransmitMostPreferredMode", HFILL }},
19850     { &hf_h245_willTransmitLessPreferredMode,
19851       { "willTransmitLessPreferredMode", "h245.willTransmitLessPreferredMode",
19852         FT_NONE, BASE_NONE, NULL, 0,
19853         "RequestModeAck/response/willTransmitLessPreferredMode", HFILL }},
19854     { &hf_h245_req_rej_cause,
19855       { "cause", "h245.cause",
19856         FT_UINT32, BASE_DEC, VALS(h245_RequestModeRejectCause_vals), 0,
19857         "RequestModeReject/cause", HFILL }},
19858     { &hf_h245_modeUnavailable,
19859       { "modeUnavailable", "h245.modeUnavailable",
19860         FT_NONE, BASE_NONE, NULL, 0,
19861         "RequestModeReject/cause/modeUnavailable", HFILL }},
19862     { &hf_h245_multipointConstraint,
19863       { "multipointConstraint", "h245.multipointConstraint",
19864         FT_NONE, BASE_NONE, NULL, 0,
19865         "RequestModeReject/cause/multipointConstraint", HFILL }},
19866     { &hf_h245_requestDenied,
19867       { "requestDenied", "h245.requestDenied",
19868         FT_NONE, BASE_NONE, NULL, 0,
19869         "RequestModeReject/cause/requestDenied", HFILL }},
19870     { &hf_h245_ModeDescription_item,
19871       { "Item", "h245.ModeDescription_item",
19872         FT_NONE, BASE_NONE, NULL, 0,
19873         "ModeDescription/_item", HFILL }},
19874     { &hf_h245_videoMode,
19875       { "videoMode", "h245.videoMode",
19876         FT_UINT32, BASE_DEC, VALS(h245_VideoMode_vals), 0,
19877         "", HFILL }},
19878     { &hf_h245_audioMode,
19879       { "audioMode", "h245.audioMode",
19880         FT_UINT32, BASE_DEC, VALS(h245_AudioMode_vals), 0,
19881         "", HFILL }},
19882     { &hf_h245_dataMode,
19883       { "dataMode", "h245.dataMode",
19884         FT_NONE, BASE_NONE, NULL, 0,
19885         "", HFILL }},
19886     { &hf_h245_encryptionMode,
19887       { "encryptionMode", "h245.encryptionMode",
19888         FT_UINT32, BASE_DEC, VALS(h245_EncryptionMode_vals), 0,
19889         "", HFILL }},
19890     { &hf_h245_h235Mode,
19891       { "h235Mode", "h245.h235Mode",
19892         FT_NONE, BASE_NONE, NULL, 0,
19893         "", HFILL }},
19894     { &hf_h245_multiplexedStreamMode,
19895       { "multiplexedStreamMode", "h245.multiplexedStreamMode",
19896         FT_NONE, BASE_NONE, NULL, 0,
19897         "ModeElementType/multiplexedStreamMode", HFILL }},
19898     { &hf_h245_redundancyEncodingDTMode,
19899       { "redundancyEncodingDTMode", "h245.redundancyEncodingDTMode",
19900         FT_NONE, BASE_NONE, NULL, 0,
19901         "ModeElementType/redundancyEncodingDTMode", HFILL }},
19902     { &hf_h245_multiplePayloadStreamMode,
19903       { "multiplePayloadStreamMode", "h245.multiplePayloadStreamMode",
19904         FT_NONE, BASE_NONE, NULL, 0,
19905         "ModeElementType/multiplePayloadStreamMode", HFILL }},
19906     { &hf_h245_fecMode,
19907       { "fecMode", "h245.fecMode",
19908         FT_UINT32, BASE_DEC, VALS(h245_FECMode_vals), 0,
19909         "ModeElementType/fecMode", HFILL }},
19910     { &hf_h245_type,
19911       { "type", "h245.type",
19912         FT_UINT32, BASE_DEC, VALS(h245_ModeElementType_vals), 0,
19913         "", HFILL }},
19914     { &hf_h245_h223ModeParameters,
19915       { "h223ModeParameters", "h245.h223ModeParameters",
19916         FT_NONE, BASE_NONE, NULL, 0,
19917         "ModeElement/h223ModeParameters", HFILL }},
19918     { &hf_h245_v76ModeParameters,
19919       { "v76ModeParameters", "h245.v76ModeParameters",
19920         FT_UINT32, BASE_DEC, VALS(h245_V76ModeParameters_vals), 0,
19921         "ModeElement/v76ModeParameters", HFILL }},
19922     { &hf_h245_h2250ModeParameters,
19923       { "h2250ModeParameters", "h245.h2250ModeParameters",
19924         FT_NONE, BASE_NONE, NULL, 0,
19925         "ModeElement/h2250ModeParameters", HFILL }},
19926     { &hf_h245_genericModeParameters,
19927       { "genericModeParameters", "h245.genericModeParameters",
19928         FT_NONE, BASE_NONE, NULL, 0,
19929         "ModeElement/genericModeParameters", HFILL }},
19930     { &hf_h245_multiplexedStreamModeParameters,
19931       { "multiplexedStreamModeParameters", "h245.multiplexedStreamModeParameters",
19932         FT_NONE, BASE_NONE, NULL, 0,
19933         "ModeElement/multiplexedStreamModeParameters", HFILL }},
19934     { &hf_h245_logicalChannelNumber,
19935       { "logicalChannelNumber", "h245.logicalChannelNumber",
19936         FT_UINT32, BASE_DEC, NULL, 0,
19937         "", HFILL }},
19938     { &hf_h245_mediaMode,
19939       { "mediaMode", "h245.mediaMode",
19940         FT_UINT32, BASE_DEC, VALS(h245_T_mediaMode_vals), 0,
19941         "H235Mode/mediaMode", HFILL }},
19942     { &hf_h245_prmary_dtmode,
19943       { "primary", "h245.primary",
19944         FT_NONE, BASE_NONE, NULL, 0,
19945         "RedundancyEncodingDTMode/primary", HFILL }},
19946     { &hf_h245_secondary2,
19947       { "secondary2", "h245.secondary2",
19948         FT_NONE, BASE_NONE, NULL, 0,
19949         "RedundancyEncodingDTMode/secondary2", HFILL }},
19950     { &hf_h245_secondary2_item,
19951       { "Item", "h245.secondary2_item",
19952         FT_NONE, BASE_NONE, NULL, 0,
19953         "RedundancyEncodingDTMode/secondary2/_item", HFILL }},
19954     { &hf_h245_re_type,
19955       { "type", "h245.type",
19956         FT_UINT32, BASE_DEC, VALS(h245_Re_type_vals), 0,
19957         "RedundancyEncodingDTModeElement/type", HFILL }},
19958     { &hf_h245_mpsmElements,
19959       { "mpsmElements", "h245.mpsmElements",
19960         FT_NONE, BASE_NONE, NULL, 0,
19961         "MultiplePayloadStreamMode/mpsmElements", HFILL }},
19962     { &hf_h245_mpsmElements_item,
19963       { "Item", "h245.mpsmElements_item",
19964         FT_NONE, BASE_NONE, NULL, 0,
19965         "MultiplePayloadStreamMode/mpsmElements/_item", HFILL }},
19966     { &hf_h245_rfc2733Mode,
19967       { "rfc2733Mode", "h245.rfc2733Mode",
19968         FT_NONE, BASE_NONE, NULL, 0,
19969         "FECMode/rfc2733Mode", HFILL }},
19970     { &hf_h245_fec_mode,
19971       { "mode", "h245.mode",
19972         FT_UINT32, BASE_DEC, VALS(h245_FEC_mode_vals), 0,
19973         "FECMode/rfc2733Mode/mode", HFILL }},
19974     { &hf_h245_adaptationLayer,
19975       { "adaptationLayerType", "h245.adaptationLayerType",
19976         FT_UINT32, BASE_DEC, VALS(h245_AdaptationLayerType_vals), 0,
19977         "H223ModeParameters/adaptationLayerType", HFILL }},
19978     { &hf_h245_redundancyEncodingMode,
19979       { "redundancyEncodingMode", "h245.redundancyEncodingMode",
19980         FT_NONE, BASE_NONE, NULL, 0,
19981         "H2250ModeParameters/redundancyEncodingMode", HFILL }},
19982     { &hf_h245_secondaryEncoding,
19983       { "secondaryEncoding", "h245.secondaryEncoding",
19984         FT_UINT32, BASE_DEC, VALS(h245_T_secondaryEncoding_vals), 0,
19985         "RedundancyEncodingMode/secondaryEncoding", HFILL }},
19986     { &hf_h245_h261VideoMode,
19987       { "h261VideoMode", "h245.h261VideoMode",
19988         FT_NONE, BASE_NONE, NULL, 0,
19989         "VideoMode/h261VideoMode", HFILL }},
19990     { &hf_h245_h262VideoMode,
19991       { "h262VideoMode", "h245.h262VideoMode",
19992         FT_NONE, BASE_NONE, NULL, 0,
19993         "VideoMode/h262VideoMode", HFILL }},
19994     { &hf_h245_h263VideoMode,
19995       { "h263VideoMode", "h245.h263VideoMode",
19996         FT_NONE, BASE_NONE, NULL, 0,
19997         "VideoMode/h263VideoMode", HFILL }},
19998     { &hf_h245_is11172VideoMode,
19999       { "is11172VideoMode", "h245.is11172VideoMode",
20000         FT_NONE, BASE_NONE, NULL, 0,
20001         "VideoMode/is11172VideoMode", HFILL }},
20002     { &hf_h245_genericVideoMode,
20003       { "genericVideoMode", "h245.genericVideoMode",
20004         FT_NONE, BASE_NONE, NULL, 0,
20005         "VideoMode/genericVideoMode", HFILL }},
20006     { &hf_h245_h261_resolution,
20007       { "resolution", "h245.resolution",
20008         FT_UINT32, BASE_DEC, VALS(h245_H261Resolution_vals), 0,
20009         "H261VideoMode/resolution", HFILL }},
20010     { &hf_h245_qcif,
20011       { "qcif", "h245.qcif",
20012         FT_NONE, BASE_NONE, NULL, 0,
20013         "", HFILL }},
20014     { &hf_h245_cif,
20015       { "cif", "h245.cif",
20016         FT_NONE, BASE_NONE, NULL, 0,
20017         "", HFILL }},
20018     { &hf_h245_profileAndLevel,
20019       { "profileAndLevel", "h245.profileAndLevel",
20020         FT_UINT32, BASE_DEC, VALS(h245_T_profileAndLevel_vals), 0,
20021         "H262VideoMode/profileAndLevel", HFILL }},
20022     { &hf_h245_profileAndLevel_SPatMLMode,
20023       { "profileAndLevel-SPatML", "h245.profileAndLevel_SPatML",
20024         FT_NONE, BASE_NONE, NULL, 0,
20025         "H262VideoMode/profileAndLevel/profileAndLevel-SPatML", HFILL }},
20026     { &hf_h245_profileAndLevel_MPatLLMode,
20027       { "profileAndLevel-MPatLL", "h245.profileAndLevel_MPatLL",
20028         FT_NONE, BASE_NONE, NULL, 0,
20029         "H262VideoMode/profileAndLevel/profileAndLevel-MPatLL", HFILL }},
20030     { &hf_h245_profileAndLevel_MPatMLMode,
20031       { "profileAndLevel-MPatML", "h245.profileAndLevel_MPatML",
20032         FT_NONE, BASE_NONE, NULL, 0,
20033         "H262VideoMode/profileAndLevel/profileAndLevel-MPatML", HFILL }},
20034     { &hf_h245_profileAndLevel_MPatH_14Mode,
20035       { "profileAndLevel-MPatH-14", "h245.profileAndLevel_MPatH_14",
20036         FT_NONE, BASE_NONE, NULL, 0,
20037         "H262VideoMode/profileAndLevel/profileAndLevel-MPatH-14", HFILL }},
20038     { &hf_h245_profileAndLevel_MPatHLMode,
20039       { "profileAndLevel-MPatHL", "h245.profileAndLevel_MPatHL",
20040         FT_NONE, BASE_NONE, NULL, 0,
20041         "H262VideoMode/profileAndLevel/profileAndLevel-MPatHL", HFILL }},
20042     { &hf_h245_profileAndLevel_SNRatLLMode,
20043       { "profileAndLevel-SNRatLL", "h245.profileAndLevel_SNRatLL",
20044         FT_NONE, BASE_NONE, NULL, 0,
20045         "H262VideoMode/profileAndLevel/profileAndLevel-SNRatLL", HFILL }},
20046     { &hf_h245_profileAndLevel_SNRatMLMode,
20047       { "profileAndLevel-SNRatML", "h245.profileAndLevel_SNRatML",
20048         FT_NONE, BASE_NONE, NULL, 0,
20049         "H262VideoMode/profileAndLevel/profileAndLevel-SNRatML", HFILL }},
20050     { &hf_h245_profileAndLevel_SpatialatH_14Mode,
20051       { "profileAndLevel-SpatialatH-14", "h245.profileAndLevel_SpatialatH_14",
20052         FT_NONE, BASE_NONE, NULL, 0,
20053         "H262VideoMode/profileAndLevel/profileAndLevel-SpatialatH-14", HFILL }},
20054     { &hf_h245_profileAndLevel_HPatMLMode,
20055       { "profileAndLevel-HPatML", "h245.profileAndLevel_HPatML",
20056         FT_NONE, BASE_NONE, NULL, 0,
20057         "H262VideoMode/profileAndLevel/profileAndLevel-HPatML", HFILL }},
20058     { &hf_h245_profileAndLevel_HPatH_14Mode,
20059       { "profileAndLevel-HPatH-14", "h245.profileAndLevel_HPatH_14",
20060         FT_NONE, BASE_NONE, NULL, 0,
20061         "H262VideoMode/profileAndLevel/profileAndLevel-HPatH-14", HFILL }},
20062     { &hf_h245_profileAndLevel_HPatHLMode,
20063       { "profileAndLevel-HPatHL", "h245.profileAndLevel_HPatHL",
20064         FT_NONE, BASE_NONE, NULL, 0,
20065         "H262VideoMode/profileAndLevel/profileAndLevel-HPatHL", HFILL }},
20066     { &hf_h245_h263_resolution,
20067       { "resolution", "h245.resolution",
20068         FT_UINT32, BASE_DEC, VALS(h245_H263Resolution_vals), 0,
20069         "H263VideoMode/resolution", HFILL }},
20070     { &hf_h245_sqcif,
20071       { "sqcif", "h245.sqcif",
20072         FT_NONE, BASE_NONE, NULL, 0,
20073         "H263VideoMode/resolution/sqcif", HFILL }},
20074     { &hf_h245_cif4,
20075       { "cif4", "h245.cif4",
20076         FT_NONE, BASE_NONE, NULL, 0,
20077         "H263VideoMode/resolution/cif4", HFILL }},
20078     { &hf_h245_cif16,
20079       { "cif16", "h245.cif16",
20080         FT_NONE, BASE_NONE, NULL, 0,
20081         "H263VideoMode/resolution/cif16", HFILL }},
20082     { &hf_h245_custom_res,
20083       { "custom", "h245.custom",
20084         FT_NONE, BASE_NONE, NULL, 0,
20085         "H263VideoMode/resolution/custom", HFILL }},
20086     { &hf_h245_g711Alaw64k_mode,
20087       { "g711Alaw64k", "h245.g711Alaw64k",
20088         FT_NONE, BASE_NONE, NULL, 0,
20089         "AudioMode/g711Alaw64k", HFILL }},
20090     { &hf_h245_g711Alaw56k_mode,
20091       { "g711Alaw56k", "h245.g711Alaw56k",
20092         FT_NONE, BASE_NONE, NULL, 0,
20093         "AudioMode/g711Alaw56k", HFILL }},
20094     { &hf_h245_g711Ulaw64k_mode,
20095       { "g711Ulaw64k", "h245.g711Ulaw64k",
20096         FT_NONE, BASE_NONE, NULL, 0,
20097         "AudioMode/g711Ulaw64k", HFILL }},
20098     { &hf_h245_g711Ulaw56k_mode,
20099       { "g711Ulaw56k", "h245.g711Ulaw56k",
20100         FT_NONE, BASE_NONE, NULL, 0,
20101         "AudioMode/g711Ulaw56k", HFILL }},
20102     { &hf_h245_g722_64k_mode,
20103       { "g722-64k", "h245.g722_64k",
20104         FT_NONE, BASE_NONE, NULL, 0,
20105         "AudioMode/g722-64k", HFILL }},
20106     { &hf_h245_g722_56k_mode,
20107       { "g722-56k", "h245.g722_56k",
20108         FT_NONE, BASE_NONE, NULL, 0,
20109         "AudioMode/g722-56k", HFILL }},
20110     { &hf_h245_g722_48k_mode,
20111       { "g722-48k", "h245.g722_48k",
20112         FT_NONE, BASE_NONE, NULL, 0,
20113         "AudioMode/g722-48k", HFILL }},
20114     { &hf_h245_g728_mode,
20115       { "g728", "h245.g728",
20116         FT_NONE, BASE_NONE, NULL, 0,
20117         "AudioMode/g728", HFILL }},
20118     { &hf_h245_g729_mode,
20119       { "g729", "h245.g729",
20120         FT_NONE, BASE_NONE, NULL, 0,
20121         "AudioMode/g729", HFILL }},
20122     { &hf_h245_g729AnnexA_mode,
20123       { "g729AnnexA", "h245.g729AnnexA",
20124         FT_NONE, BASE_NONE, NULL, 0,
20125         "AudioMode/g729AnnexA", HFILL }},
20126     { &hf_h245_g7231_mode,
20127       { "g7231", "h245.g7231",
20128         FT_UINT32, BASE_DEC, VALS(h245_Mode_g7231_vals), 0,
20129         "AudioMode/g7231", HFILL }},
20130     { &hf_h245_noSilenceSuppressionLowRate,
20131       { "noSilenceSuppressionLowRate", "h245.noSilenceSuppressionLowRate",
20132         FT_NONE, BASE_NONE, NULL, 0,
20133         "AudioMode/g7231/noSilenceSuppressionLowRate", HFILL }},
20134     { &hf_h245_noSilenceSuppressionHighRate,
20135       { "noSilenceSuppressionHighRate", "h245.noSilenceSuppressionHighRate",
20136         FT_NONE, BASE_NONE, NULL, 0,
20137         "AudioMode/g7231/noSilenceSuppressionHighRate", HFILL }},
20138     { &hf_h245_silenceSuppressionLowRate,
20139       { "silenceSuppressionLowRate", "h245.silenceSuppressionLowRate",
20140         FT_NONE, BASE_NONE, NULL, 0,
20141         "AudioMode/g7231/silenceSuppressionLowRate", HFILL }},
20142     { &hf_h245_silenceSuppressionHighRate,
20143       { "silenceSuppressionHighRate", "h245.silenceSuppressionHighRate",
20144         FT_NONE, BASE_NONE, NULL, 0,
20145         "AudioMode/g7231/silenceSuppressionHighRate", HFILL }},
20146     { &hf_h245_is11172AudioMode,
20147       { "is11172AudioMode", "h245.is11172AudioMode",
20148         FT_NONE, BASE_NONE, NULL, 0,
20149         "AudioMode/is11172AudioMode", HFILL }},
20150     { &hf_h245_is13818AudioMode,
20151       { "is13818AudioMode", "h245.is13818AudioMode",
20152         FT_NONE, BASE_NONE, NULL, 0,
20153         "AudioMode/is13818AudioMode", HFILL }},
20154     { &hf_h245_g7231AnnexCMode,
20155       { "g7231AnnexCMode", "h245.g7231AnnexCMode",
20156         FT_NONE, BASE_NONE, NULL, 0,
20157         "AudioMode/g7231AnnexCMode", HFILL }},
20158     { &hf_h245_genericAudioMode,
20159       { "genericAudioMode", "h245.genericAudioMode",
20160         FT_NONE, BASE_NONE, NULL, 0,
20161         "AudioMode/genericAudioMode", HFILL }},
20162     { &hf_h245_vbd_mode,
20163       { "vbd", "h245.vbd",
20164         FT_NONE, BASE_NONE, NULL, 0,
20165         "AudioMode/vbd", HFILL }},
20166     { &hf_h245_audioLayer,
20167       { "audioLayer", "h245.audioLayer",
20168         FT_UINT32, BASE_DEC, VALS(h245_T_audioLayer_vals), 0,
20169         "IS11172AudioMode/audioLayer", HFILL }},
20170     { &hf_h245_audioLayer1Mode,
20171       { "audioLayer1", "h245.audioLayer1",
20172         FT_NONE, BASE_NONE, NULL, 0,
20173         "", HFILL }},
20174     { &hf_h245_audioLayer2Mode,
20175       { "audioLayer2", "h245.audioLayer2",
20176         FT_NONE, BASE_NONE, NULL, 0,
20177         "", HFILL }},
20178     { &hf_h245_audioLayer3Mode,
20179       { "audioLayer3", "h245.audioLayer3",
20180         FT_NONE, BASE_NONE, NULL, 0,
20181         "", HFILL }},
20182     { &hf_h245_audioSampling,
20183       { "audioSampling", "h245.audioSampling",
20184         FT_UINT32, BASE_DEC, VALS(h245_T_audioSampling_vals), 0,
20185         "IS11172AudioMode/audioSampling", HFILL }},
20186     { &hf_h245_audioSampling32kMode,
20187       { "audioSampling32k", "h245.audioSampling32k",
20188         FT_NONE, BASE_NONE, NULL, 0,
20189         "", HFILL }},
20190     { &hf_h245_audioSampling44k1Mode,
20191       { "audioSampling44k1", "h245.audioSampling44k1",
20192         FT_NONE, BASE_NONE, NULL, 0,
20193         "", HFILL }},
20194     { &hf_h245_audioSampling48kMode,
20195       { "audioSampling48k", "h245.audioSampling48k",
20196         FT_NONE, BASE_NONE, NULL, 0,
20197         "", HFILL }},
20198     { &hf_h245_is11172multichannelType,
20199       { "multichannelType", "h245.multichannelType",
20200         FT_UINT32, BASE_DEC, VALS(h245_IS11172_multichannelType_vals), 0,
20201         "IS11172AudioMode/multichannelType", HFILL }},
20202     { &hf_h245_singleChannelMode,
20203       { "singleChannel", "h245.singleChannel",
20204         FT_NONE, BASE_NONE, NULL, 0,
20205         "", HFILL }},
20206     { &hf_h245_twoChannelStereo,
20207       { "twoChannelStereo", "h245.twoChannelStereo",
20208         FT_NONE, BASE_NONE, NULL, 0,
20209         "", HFILL }},
20210     { &hf_h245_twoChannelDual,
20211       { "twoChannelDual", "h245.twoChannelDual",
20212         FT_NONE, BASE_NONE, NULL, 0,
20213         "", HFILL }},
20214     { &hf_h245_audioLayerMode,
20215       { "audioLayer", "h245.audioLayer",
20216         FT_UINT32, BASE_DEC, VALS(h245_IS13818AudioLayer_vals), 0,
20217         "IS13818AudioMode/audioLayer", HFILL }},
20218     { &hf_h245_audioSamplingMode,
20219       { "audioSampling", "h245.audioSampling",
20220         FT_UINT32, BASE_DEC, VALS(h245_IS13818AudioSampling_vals), 0,
20221         "IS13818AudioMode/audioSampling", HFILL }},
20222     { &hf_h245_audioSampling16kMode,
20223       { "audioSampling16k", "h245.audioSampling16k",
20224         FT_NONE, BASE_NONE, NULL, 0,
20225         "IS13818AudioMode/audioSampling/audioSampling16k", HFILL }},
20226     { &hf_h245_audioSampling22k05Mode,
20227       { "audioSampling22k05", "h245.audioSampling22k05",
20228         FT_NONE, BASE_NONE, NULL, 0,
20229         "IS13818AudioMode/audioSampling/audioSampling22k05", HFILL }},
20230     { &hf_h245_audioSampling24kMode,
20231       { "audioSampling24k", "h245.audioSampling24k",
20232         FT_NONE, BASE_NONE, NULL, 0,
20233         "IS13818AudioMode/audioSampling/audioSampling24k", HFILL }},
20234     { &hf_h245_is13818MultichannelType,
20235       { "multichannelType", "h245.multichannelType",
20236         FT_UINT32, BASE_DEC, VALS(h245_IS13818MultichannelType_vals), 0,
20237         "IS13818AudioMode/multichannelType", HFILL }},
20238     { &hf_h245_threeChannels2_1Mode,
20239       { "threeChannels2-1", "h245.threeChannels2_1",
20240         FT_NONE, BASE_NONE, NULL, 0,
20241         "IS13818AudioMode/multichannelType/threeChannels2-1", HFILL }},
20242     { &hf_h245_threeChannels3_0Mode,
20243       { "threeChannels3-0", "h245.threeChannels3_0",
20244         FT_NONE, BASE_NONE, NULL, 0,
20245         "IS13818AudioMode/multichannelType/threeChannels3-0", HFILL }},
20246     { &hf_h245_fourChannels2_0_2_0Mode,
20247       { "fourChannels2-0-2-0", "h245.fourChannels2_0_2_0",
20248         FT_NONE, BASE_NONE, NULL, 0,
20249         "IS13818AudioMode/multichannelType/fourChannels2-0-2-0", HFILL }},
20250     { &hf_h245_fourChannels2_2Mode,
20251       { "fourChannels2-2", "h245.fourChannels2_2",
20252         FT_NONE, BASE_NONE, NULL, 0,
20253         "IS13818AudioMode/multichannelType/fourChannels2-2", HFILL }},
20254     { &hf_h245_fourChannels3_1Mode,
20255       { "fourChannels3-1", "h245.fourChannels3_1",
20256         FT_NONE, BASE_NONE, NULL, 0,
20257         "IS13818AudioMode/multichannelType/fourChannels3-1", HFILL }},
20258     { &hf_h245_fiveChannels3_0_2_0Mode,
20259       { "fiveChannels3-0-2-0", "h245.fiveChannels3_0_2_0",
20260         FT_NONE, BASE_NONE, NULL, 0,
20261         "IS13818AudioMode/multichannelType/fiveChannels3-0-2-0", HFILL }},
20262     { &hf_h245_fiveChannels3_2Mode,
20263       { "fiveChannels3-2", "h245.fiveChannels3_2",
20264         FT_NONE, BASE_NONE, NULL, 0,
20265         "IS13818AudioMode/multichannelType/fiveChannels3-2", HFILL }},
20266     { &hf_h245_vbd_type,
20267       { "type", "h245.type",
20268         FT_UINT32, BASE_DEC, VALS(h245_AudioMode_vals), 0,
20269         "VBDMode/type", HFILL }},
20270     { &hf_h245_datamodeapplication,
20271       { "application", "h245.application",
20272         FT_UINT32, BASE_DEC, VALS(h245_DataModeApplication_vals), 0,
20273         "DataMode/application", HFILL }},
20274     { &hf_h245_t84DataProtocolCapability,
20275       { "t84", "h245.t84",
20276         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
20277         "DataMode/application/t84", HFILL }},
20278     { &hf_h245_t38faxDataProtocolCapability,
20279       { "t38fax", "h245.t38fax",
20280         FT_NONE, BASE_NONE, NULL, 0,
20281         "DataMode/application/t38fax", HFILL }},
20282     { &hf_h245_genericDataMode,
20283       { "genericDataMode", "h245.genericDataMode",
20284         FT_NONE, BASE_NONE, NULL, 0,
20285         "DataMode/application/genericDataMode", HFILL }},
20286     { &hf_h245_bitRate_0_4294967295,
20287       { "bitRate", "h245.bitRate",
20288         FT_UINT32, BASE_DEC, NULL, 0,
20289         "DataMode/bitRate", HFILL }},
20290     { &hf_h245_h233Encryption,
20291       { "h233Encryption", "h245.h233Encryption",
20292         FT_NONE, BASE_NONE, NULL, 0,
20293         "EncryptionMode/h233Encryption", HFILL }},
20294     { &hf_h245_mlr_type,
20295       { "type", "h245.type",
20296         FT_UINT32, BASE_DEC, VALS(h245_Mlr_type_vals), 0,
20297         "MaintenanceLoopRequest/type", HFILL }},
20298     { &hf_h245_systemLoop,
20299       { "systemLoop", "h245.systemLoop",
20300         FT_NONE, BASE_NONE, NULL, 0,
20301         "", HFILL }},
20302     { &hf_h245_mediaLoop,
20303       { "mediaLoop", "h245.mediaLoop",
20304         FT_UINT32, BASE_DEC, NULL, 0,
20305         "", HFILL }},
20306     { &hf_h245_logicalChannelLoop,
20307       { "logicalChannelLoop", "h245.logicalChannelLoop",
20308         FT_UINT32, BASE_DEC, NULL, 0,
20309         "", HFILL }},
20310     { &hf_h245_Mla_type,
20311       { "type", "h245.type",
20312         FT_UINT32, BASE_DEC, VALS(h245_Mla_type_vals), 0,
20313         "MaintenanceLoopAck/type", HFILL }},
20314     { &hf_h245_mlrej_type,
20315       { "type", "h245.type",
20316         FT_UINT32, BASE_DEC, VALS(h245_Mlrej_type_vals), 0,
20317         "MaintenanceLoopReject/type", HFILL }},
20318     { &hf_h245_maintloop_rej_cause,
20319       { "cause", "h245.cause",
20320         FT_UINT32, BASE_DEC, VALS(h245_MaintenanceLoopRejectCause_vals), 0,
20321         "MaintenanceLoopReject/cause", HFILL }},
20322     { &hf_h245_canNotPerformLoop,
20323       { "canNotPerformLoop", "h245.canNotPerformLoop",
20324         FT_NONE, BASE_NONE, NULL, 0,
20325         "MaintenanceLoopReject/cause/canNotPerformLoop", HFILL }},
20326     { &hf_h245_communicationModeTable,
20327       { "communicationModeTable", "h245.communicationModeTable",
20328         FT_NONE, BASE_NONE, NULL, 0,
20329         "", HFILL }},
20330     { &hf_h245_communicationModeTable_item,
20331       { "Item", "h245.communicationModeTable_item",
20332         FT_NONE, BASE_NONE, NULL, 0,
20333         "", HFILL }},
20334     { &hf_h245_terminalLabel,
20335       { "terminalLabel", "h245.terminalLabel",
20336         FT_NONE, BASE_NONE, NULL, 0,
20337         "", HFILL }},
20338     { &hf_h245_sessionDescription,
20339       { "sessionDescription", "h245.sessionDescription",
20340         FT_STRING, BASE_NONE, NULL, 0,
20341         "CommunicationModeTableEntry/sessionDescription", HFILL }},
20342     { &hf_h245_entryDataType,
20343       { "dataType", "h245.dataType",
20344         FT_UINT32, BASE_DEC, VALS(h245_T_dataType_vals), 0,
20345         "CommunicationModeTableEntry/dataType", HFILL }},
20346     { &hf_h245_sessionDependency,
20347       { "sessionDependency", "h245.sessionDependency",
20348         FT_UINT32, BASE_DEC, NULL, 0,
20349         "CommunicationModeTableEntry/sessionDependency", HFILL }},
20350     { &hf_h245_terminalListRequest,
20351       { "terminalListRequest", "h245.terminalListRequest",
20352         FT_NONE, BASE_NONE, NULL, 0,
20353         "ConferenceRequest/terminalListRequest", HFILL }},
20354     { &hf_h245_makeMeChair,
20355       { "makeMeChair", "h245.makeMeChair",
20356         FT_NONE, BASE_NONE, NULL, 0,
20357         "ConferenceRequest/makeMeChair", HFILL }},
20358     { &hf_h245_cancelMakeMeChair,
20359       { "cancelMakeMeChair", "h245.cancelMakeMeChair",
20360         FT_NONE, BASE_NONE, NULL, 0,
20361         "ConferenceRequest/cancelMakeMeChair", HFILL }},
20362     { &hf_h245_dropTerminal,
20363       { "dropTerminal", "h245.dropTerminal",
20364         FT_NONE, BASE_NONE, NULL, 0,
20365         "ConferenceRequest/dropTerminal", HFILL }},
20366     { &hf_h245_requestTerminalID,
20367       { "requestTerminalID", "h245.requestTerminalID",
20368         FT_NONE, BASE_NONE, NULL, 0,
20369         "ConferenceRequest/requestTerminalID", HFILL }},
20370     { &hf_h245_enterH243Password,
20371       { "enterH243Password", "h245.enterH243Password",
20372         FT_NONE, BASE_NONE, NULL, 0,
20373         "ConferenceRequest/enterH243Password", HFILL }},
20374     { &hf_h245_enterH243TerminalID,
20375       { "enterH243TerminalID", "h245.enterH243TerminalID",
20376         FT_NONE, BASE_NONE, NULL, 0,
20377         "ConferenceRequest/enterH243TerminalID", HFILL }},
20378     { &hf_h245_enterH243ConferenceID,
20379       { "enterH243ConferenceID", "h245.enterH243ConferenceID",
20380         FT_NONE, BASE_NONE, NULL, 0,
20381         "ConferenceRequest/enterH243ConferenceID", HFILL }},
20382     { &hf_h245_enterExtensionAddress,
20383       { "enterExtensionAddress", "h245.enterExtensionAddress",
20384         FT_NONE, BASE_NONE, NULL, 0,
20385         "ConferenceRequest/enterExtensionAddress", HFILL }},
20386     { &hf_h245_requestChairTokenOwner,
20387       { "requestChairTokenOwner", "h245.requestChairTokenOwner",
20388         FT_NONE, BASE_NONE, NULL, 0,
20389         "ConferenceRequest/requestChairTokenOwner", HFILL }},
20390     { &hf_h245_requestTerminalCertificate,
20391       { "requestTerminalCertificate", "h245.requestTerminalCertificate",
20392         FT_NONE, BASE_NONE, NULL, 0,
20393         "ConferenceRequest/requestTerminalCertificate", HFILL }},
20394     { &hf_h245_certSelectionCriteria,
20395       { "certSelectionCriteria", "h245.certSelectionCriteria",
20396         FT_NONE, BASE_NONE, NULL, 0,
20397         "ConferenceRequest/requestTerminalCertificate/certSelectionCriteria", HFILL }},
20398     { &hf_h245_sRandom,
20399       { "sRandom", "h245.sRandom",
20400         FT_UINT32, BASE_DEC, NULL, 0,
20401         "ConferenceRequest/requestTerminalCertificate/sRandom", HFILL }},
20402     { &hf_h245_broadcastMyLogicalChannel,
20403       { "broadcastMyLogicalChannel", "h245.broadcastMyLogicalChannel",
20404         FT_UINT32, BASE_DEC, NULL, 0,
20405         "", HFILL }},
20406     { &hf_h245_makeTerminalBroadcaster,
20407       { "makeTerminalBroadcaster", "h245.makeTerminalBroadcaster",
20408         FT_NONE, BASE_NONE, NULL, 0,
20409         "", HFILL }},
20410     { &hf_h245_sendThisSource,
20411       { "sendThisSource", "h245.sendThisSource",
20412         FT_NONE, BASE_NONE, NULL, 0,
20413         "", HFILL }},
20414     { &hf_h245_requestAllTerminalIDs,
20415       { "requestAllTerminalIDs", "h245.requestAllTerminalIDs",
20416         FT_NONE, BASE_NONE, NULL, 0,
20417         "ConferenceRequest/requestAllTerminalIDs", HFILL }},
20418     { &hf_h245_remoteMCRequest,
20419       { "remoteMCRequest", "h245.remoteMCRequest",
20420         FT_UINT32, BASE_DEC, VALS(h245_RemoteMCRequest_vals), 0,
20421         "ConferenceRequest/remoteMCRequest", HFILL }},
20422     { &hf_h245_CertSelectionCriteria_item,
20423       { "Item", "h245.CertSelectionCriteria_item",
20424         FT_NONE, BASE_NONE, NULL, 0,
20425         "CertSelectionCriteria/_item", HFILL }},
20426     { &hf_h245_field,
20427       { "field", "h245.field",
20428         FT_STRING, BASE_NONE, NULL, 0,
20429         "Criteria/field", HFILL }},
20430     { &hf_h245_value,
20431       { "value", "h245.value",
20432         FT_BYTES, BASE_HEX, NULL, 0,
20433         "Criteria/value", HFILL }},
20434     { &hf_h245_mcuNumber,
20435       { "mcuNumber", "h245.mcuNumber",
20436         FT_UINT32, BASE_DEC, NULL, 0,
20437         "TerminalLabel/mcuNumber", HFILL }},
20438     { &hf_h245_terminalNumber,
20439       { "terminalNumber", "h245.terminalNumber",
20440         FT_UINT32, BASE_DEC, NULL, 0,
20441         "", HFILL }},
20442     { &hf_h245_mCTerminalIDResponse,
20443       { "mCTerminalIDResponse", "h245.mCTerminalIDResponse",
20444         FT_NONE, BASE_NONE, NULL, 0,
20445         "ConferenceResponse/mCTerminalIDResponse", HFILL }},
20446     { &hf_h245_terminalID,
20447       { "terminalID", "h245.terminalID",
20448         FT_BYTES, BASE_HEX, NULL, 0,
20449         "", HFILL }},
20450     { &hf_h245_terminalIDResponse,
20451       { "terminalIDResponse", "h245.terminalIDResponse",
20452         FT_NONE, BASE_NONE, NULL, 0,
20453         "ConferenceResponse/terminalIDResponse", HFILL }},
20454     { &hf_h245_conferenceIDResponse,
20455       { "conferenceIDResponse", "h245.conferenceIDResponse",
20456         FT_NONE, BASE_NONE, NULL, 0,
20457         "ConferenceResponse/conferenceIDResponse", HFILL }},
20458     { &hf_h245_conferenceID,
20459       { "conferenceID", "h245.conferenceID",
20460         FT_BYTES, BASE_HEX, NULL, 0,
20461         "ConferenceResponse/conferenceIDResponse/conferenceID", HFILL }},
20462     { &hf_h245_passwordResponse,
20463       { "passwordResponse", "h245.passwordResponse",
20464         FT_NONE, BASE_NONE, NULL, 0,
20465         "ConferenceResponse/passwordResponse", HFILL }},
20466     { &hf_h245_password,
20467       { "password", "h245.password",
20468         FT_BYTES, BASE_HEX, NULL, 0,
20469         "ConferenceResponse/passwordResponse/password", HFILL }},
20470     { &hf_h245_terminalListResponse,
20471       { "terminalListResponse", "h245.terminalListResponse",
20472         FT_NONE, BASE_NONE, NULL, 0,
20473         "ConferenceResponse/terminalListResponse", HFILL }},
20474     { &hf_h245_terminalListResponse_item,
20475       { "Item", "h245.terminalListResponse_item",
20476         FT_NONE, BASE_NONE, NULL, 0,
20477         "ConferenceResponse/terminalListResponse/_item", HFILL }},
20478     { &hf_h245_videoCommandReject,
20479       { "videoCommandReject", "h245.videoCommandReject",
20480         FT_NONE, BASE_NONE, NULL, 0,
20481         "ConferenceResponse/videoCommandReject", HFILL }},
20482     { &hf_h245_terminalDropReject,
20483       { "terminalDropReject", "h245.terminalDropReject",
20484         FT_NONE, BASE_NONE, NULL, 0,
20485         "ConferenceResponse/terminalDropReject", HFILL }},
20486     { &hf_h245_makeMeChairResponse,
20487       { "makeMeChairResponse", "h245.makeMeChairResponse",
20488         FT_UINT32, BASE_DEC, VALS(h245_T_makeMeChairResponse_vals), 0,
20489         "ConferenceResponse/makeMeChairResponse", HFILL }},
20490     { &hf_h245_grantedChairToken,
20491       { "grantedChairToken", "h245.grantedChairToken",
20492         FT_NONE, BASE_NONE, NULL, 0,
20493         "ConferenceResponse/makeMeChairResponse/grantedChairToken", HFILL }},
20494     { &hf_h245_deniedChairToken,
20495       { "deniedChairToken", "h245.deniedChairToken",
20496         FT_NONE, BASE_NONE, NULL, 0,
20497         "ConferenceResponse/makeMeChairResponse/deniedChairToken", HFILL }},
20498     { &hf_h245_extensionAddressResponse,
20499       { "extensionAddressResponse", "h245.extensionAddressResponse",
20500         FT_NONE, BASE_NONE, NULL, 0,
20501         "ConferenceResponse/extensionAddressResponse", HFILL }},
20502     { &hf_h245_extensionAddress,
20503       { "extensionAddress", "h245.extensionAddress",
20504         FT_BYTES, BASE_HEX, NULL, 0,
20505         "ConferenceResponse/extensionAddressResponse/extensionAddress", HFILL }},
20506     { &hf_h245_chairTokenOwnerResponse,
20507       { "chairTokenOwnerResponse", "h245.chairTokenOwnerResponse",
20508         FT_NONE, BASE_NONE, NULL, 0,
20509         "ConferenceResponse/chairTokenOwnerResponse", HFILL }},
20510     { &hf_h245_terminalCertificateResponse,
20511       { "terminalCertificateResponse", "h245.terminalCertificateResponse",
20512         FT_NONE, BASE_NONE, NULL, 0,
20513         "ConferenceResponse/terminalCertificateResponse", HFILL }},
20514     { &hf_h245_certificateResponse,
20515       { "certificateResponse", "h245.certificateResponse",
20516         FT_BYTES, BASE_HEX, NULL, 0,
20517         "ConferenceResponse/terminalCertificateResponse/certificateResponse", HFILL }},
20518     { &hf_h245_broadcastMyLogicalChannelResponse,
20519       { "broadcastMyLogicalChannelResponse", "h245.broadcastMyLogicalChannelResponse",
20520         FT_UINT32, BASE_DEC, VALS(h245_T_broadcastMyLogicalChannelResponse_vals), 0,
20521         "ConferenceResponse/broadcastMyLogicalChannelResponse", HFILL }},
20522     { &hf_h245_grantedBroadcastMyLogicalChannel,
20523       { "grantedBroadcastMyLogicalChannel", "h245.grantedBroadcastMyLogicalChannel",
20524         FT_NONE, BASE_NONE, NULL, 0,
20525         "ConferenceResponse/broadcastMyLogicalChannelResponse/grantedBroadcastMyLogicalChannel", HFILL }},
20526     { &hf_h245_deniedBroadcastMyLogicalChannel,
20527       { "deniedBroadcastMyLogicalChannel", "h245.deniedBroadcastMyLogicalChannel",
20528         FT_NONE, BASE_NONE, NULL, 0,
20529         "ConferenceResponse/broadcastMyLogicalChannelResponse/deniedBroadcastMyLogicalChannel", HFILL }},
20530     { &hf_h245_makeTerminalBroadcasterResponse,
20531       { "makeTerminalBroadcasterResponse", "h245.makeTerminalBroadcasterResponse",
20532         FT_UINT32, BASE_DEC, VALS(h245_T_makeTerminalBroadcasterResponse_vals), 0,
20533         "ConferenceResponse/makeTerminalBroadcasterResponse", HFILL }},
20534     { &hf_h245_grantedMakeTerminalBroadcaster,
20535       { "grantedMakeTerminalBroadcaster", "h245.grantedMakeTerminalBroadcaster",
20536         FT_NONE, BASE_NONE, NULL, 0,
20537         "ConferenceResponse/makeTerminalBroadcasterResponse/grantedMakeTerminalBroadcaster", HFILL }},
20538     { &hf_h245_deniedMakeTerminalBroadcaster,
20539       { "deniedMakeTerminalBroadcaster", "h245.deniedMakeTerminalBroadcaster",
20540         FT_NONE, BASE_NONE, NULL, 0,
20541         "ConferenceResponse/makeTerminalBroadcasterResponse/deniedMakeTerminalBroadcaster", HFILL }},
20542     { &hf_h245_sendThisSourceResponse,
20543       { "sendThisSourceResponse", "h245.sendThisSourceResponse",
20544         FT_UINT32, BASE_DEC, VALS(h245_T_sendThisSourceResponse_vals), 0,
20545         "ConferenceResponse/sendThisSourceResponse", HFILL }},
20546     { &hf_h245_grantedSendThisSource,
20547       { "grantedSendThisSource", "h245.grantedSendThisSource",
20548         FT_NONE, BASE_NONE, NULL, 0,
20549         "ConferenceResponse/sendThisSourceResponse/grantedSendThisSource", HFILL }},
20550     { &hf_h245_deniedSendThisSource,
20551       { "deniedSendThisSource", "h245.deniedSendThisSource",
20552         FT_NONE, BASE_NONE, NULL, 0,
20553         "ConferenceResponse/sendThisSourceResponse/deniedSendThisSource", HFILL }},
20554     { &hf_h245_requestAllTerminalIDsResponse,
20555       { "requestAllTerminalIDsResponse", "h245.requestAllTerminalIDsResponse",
20556         FT_NONE, BASE_NONE, NULL, 0,
20557         "ConferenceResponse/requestAllTerminalIDsResponse", HFILL }},
20558     { &hf_h245_remoteMCResponse,
20559       { "remoteMCResponse", "h245.remoteMCResponse",
20560         FT_UINT32, BASE_DEC, VALS(h245_RemoteMCResponse_vals), 0,
20561         "ConferenceResponse/remoteMCResponse", HFILL }},
20562     { &hf_h245_terminalInformation,
20563       { "terminalInformation", "h245.terminalInformation",
20564         FT_NONE, BASE_NONE, NULL, 0,
20565         "RequestAllTerminalIDsResponse/terminalInformation", HFILL }},
20566     { &hf_h245_terminalInformation_item,
20567       { "Item", "h245.terminalInformation_item",
20568         FT_NONE, BASE_NONE, NULL, 0,
20569         "RequestAllTerminalIDsResponse/terminalInformation/_item", HFILL }},
20570     { &hf_h245_masterActivate,
20571       { "masterActivate", "h245.masterActivate",
20572         FT_NONE, BASE_NONE, NULL, 0,
20573         "RemoteMCRequest/masterActivate", HFILL }},
20574     { &hf_h245_slaveActivate,
20575       { "slaveActivate", "h245.slaveActivate",
20576         FT_NONE, BASE_NONE, NULL, 0,
20577         "RemoteMCRequest/slaveActivate", HFILL }},
20578     { &hf_h245_deActivate,
20579       { "deActivate", "h245.deActivate",
20580         FT_NONE, BASE_NONE, NULL, 0,
20581         "RemoteMCRequest/deActivate", HFILL }},
20582     { &hf_h245_accept,
20583       { "accept", "h245.accept",
20584         FT_NONE, BASE_NONE, NULL, 0,
20585         "RemoteMCResponse/accept", HFILL }},
20586     { &hf_h245_reject,
20587       { "reject", "h245.reject",
20588         FT_UINT32, BASE_DEC, VALS(h245_T_reject_vals), 0,
20589         "RemoteMCResponse/reject", HFILL }},
20590     { &hf_h245_functionNotSupportedFlag,
20591       { "functionNotSupported", "h245.functionNotSupported",
20592         FT_NONE, BASE_NONE, NULL, 0,
20593         "RemoteMCResponse/reject/functionNotSupported", HFILL }},
20594     { &hf_h245_callInformationReq,
20595       { "callInformation", "h245.callInformation",
20596         FT_NONE, BASE_NONE, NULL, 0,
20597         "MultilinkRequest/callInformation", HFILL }},
20598     { &hf_h245_maxNumberOfAdditionalConnections,
20599       { "maxNumberOfAdditionalConnections", "h245.maxNumberOfAdditionalConnections",
20600         FT_UINT32, BASE_DEC, NULL, 0,
20601         "MultilinkRequest/callInformation/maxNumberOfAdditionalConnections", HFILL }},
20602     { &hf_h245_addConnectionReq,
20603       { "addConnection", "h245.addConnection",
20604         FT_NONE, BASE_NONE, NULL, 0,
20605         "MultilinkRequest/addConnection", HFILL }},
20606     { &hf_h245_dialingInformation,
20607       { "dialingInformation", "h245.dialingInformation",
20608         FT_UINT32, BASE_DEC, VALS(h245_DialingInformation_vals), 0,
20609         "", HFILL }},
20610     { &hf_h245_removeConnectionReq,
20611       { "removeConnection", "h245.removeConnection",
20612         FT_NONE, BASE_NONE, NULL, 0,
20613         "MultilinkRequest/removeConnection", HFILL }},
20614     { &hf_h245_maximumHeaderIntervalReq,
20615       { "maximumHeaderInterval", "h245.maximumHeaderInterval",
20616         FT_NONE, BASE_NONE, NULL, 0,
20617         "MultilinkRequest/maximumHeaderInterval", HFILL }},
20618     { &hf_h245_requestType,
20619       { "requestType", "h245.requestType",
20620         FT_UINT32, BASE_DEC, VALS(h245_T_requestType_vals), 0,
20621         "MultilinkRequest/maximumHeaderInterval/requestType", HFILL }},
20622     { &hf_h245_currentIntervalInformation,
20623       { "currentIntervalInformation", "h245.currentIntervalInformation",
20624         FT_NONE, BASE_NONE, NULL, 0,
20625         "MultilinkRequest/maximumHeaderInterval/requestType/currentIntervalInformation", HFILL }},
20626     { &hf_h245_requestedInterval,
20627       { "requestedInterval", "h245.requestedInterval",
20628         FT_UINT32, BASE_DEC, NULL, 0,
20629         "MultilinkRequest/maximumHeaderInterval/requestType/requestedInterval", HFILL }},
20630     { &hf_h245_callInformationResp,
20631       { "callInformation", "h245.callInformation",
20632         FT_NONE, BASE_NONE, NULL, 0,
20633         "MultilinkResponse/callInformation", HFILL }},
20634     { &hf_h245_callAssociationNumber,
20635       { "callAssociationNumber", "h245.callAssociationNumber",
20636         FT_UINT32, BASE_DEC, NULL, 0,
20637         "MultilinkResponse/callInformation/callAssociationNumber", HFILL }},
20638     { &hf_h245_addConnectionResp,
20639       { "addConnection", "h245.addConnection",
20640         FT_NONE, BASE_NONE, NULL, 0,
20641         "MultilinkResponse/addConnection", HFILL }},
20642     { &hf_h245_responseCode,
20643       { "responseCode", "h245.responseCode",
20644         FT_UINT32, BASE_DEC, VALS(h245_T_responseCode_vals), 0,
20645         "MultilinkResponse/addConnection/responseCode", HFILL }},
20646     { &hf_h245_accepted,
20647       { "accepted", "h245.accepted",
20648         FT_NONE, BASE_NONE, NULL, 0,
20649         "MultilinkResponse/addConnection/responseCode/accepted", HFILL }},
20650     { &hf_h245_rejected,
20651       { "rejected", "h245.rejected",
20652         FT_UINT32, BASE_DEC, VALS(h245_T_rejected_vals), 0,
20653         "MultilinkResponse/addConnection/responseCode/rejected", HFILL }},
20654     { &hf_h245_connectionsNotAvailable,
20655       { "connectionsNotAvailable", "h245.connectionsNotAvailable",
20656         FT_NONE, BASE_NONE, NULL, 0,
20657         "MultilinkResponse/addConnection/responseCode/rejected/connectionsNotAvailable", HFILL }},
20658     { &hf_h245_userRejected,
20659       { "userRejected", "h245.userRejected",
20660         FT_NONE, BASE_NONE, NULL, 0,
20661         "MultilinkResponse/addConnection/responseCode/rejected/userRejected", HFILL }},
20662     { &hf_h245_removeConnectionResp,
20663       { "removeConnection", "h245.removeConnection",
20664         FT_NONE, BASE_NONE, NULL, 0,
20665         "MultilinkResponse/removeConnection", HFILL }},
20666     { &hf_h245_maximumHeaderIntervalResp,
20667       { "maximumHeaderInterval", "h245.maximumHeaderInterval",
20668         FT_NONE, BASE_NONE, NULL, 0,
20669         "MultilinkResponse/maximumHeaderInterval", HFILL }},
20670     { &hf_h245_currentInterval,
20671       { "currentInterval", "h245.currentInterval",
20672         FT_UINT32, BASE_DEC, NULL, 0,
20673         "MultilinkResponse/maximumHeaderInterval/currentInterval", HFILL }},
20674     { &hf_h245_connectionIdentifier,
20675       { "connectionIdentifier", "h245.connectionIdentifier",
20676         FT_NONE, BASE_NONE, NULL, 0,
20677         "", HFILL }},
20678     { &hf_h245_crcDesired,
20679       { "crcDesired", "h245.crcDesired",
20680         FT_NONE, BASE_NONE, NULL, 0,
20681         "MultilinkIndication/crcDesired", HFILL }},
20682     { &hf_h245_excessiveError,
20683       { "excessiveError", "h245.excessiveError",
20684         FT_NONE, BASE_NONE, NULL, 0,
20685         "MultilinkIndication/excessiveError", HFILL }},
20686     { &hf_h245_differential,
20687       { "differential", "h245.differential",
20688         FT_NONE, BASE_NONE, NULL, 0,
20689         "DialingInformation/differential", HFILL }},
20690     { &hf_h245_differential_item,
20691       { "Item", "h245.differential_item",
20692         FT_NONE, BASE_NONE, NULL, 0,
20693         "DialingInformation/differential/_item", HFILL }},
20694     { &hf_h245_infoNotAvailable,
20695       { "infoNotAvailable", "h245.infoNotAvailable",
20696         FT_UINT32, BASE_DEC, NULL, 0,
20697         "DialingInformation/infoNotAvailable", HFILL }},
20698     { &hf_h245_networkAddressNum,
20699       { "networkAddress", "h245.networkAddress",
20700         FT_STRING, BASE_NONE, NULL, 0,
20701         "DialingInformationNumber/networkAddress", HFILL }},
20702     { &hf_h245_subAddress,
20703       { "subAddress", "h245.subAddress",
20704         FT_STRING, BASE_NONE, NULL, 0,
20705         "DialingInformationNumber/subAddress", HFILL }},
20706     { &hf_h245_networkType,
20707       { "networkType", "h245.networkType",
20708         FT_NONE, BASE_NONE, NULL, 0,
20709         "DialingInformationNumber/networkType", HFILL }},
20710     { &hf_h245_networkType_item,
20711       { "Item", "h245.networkType_item",
20712         FT_UINT32, BASE_DEC, VALS(h245_DialingInformationNetworkType_vals), 0,
20713         "DialingInformationNumber/networkType/_item", HFILL }},
20714     { &hf_h245_n_isdn,
20715       { "n-isdn", "h245.n_isdn",
20716         FT_NONE, BASE_NONE, NULL, 0,
20717         "DialingInformationNetworkType/n-isdn", HFILL }},
20718     { &hf_h245_gstn,
20719       { "gstn", "h245.gstn",
20720         FT_NONE, BASE_NONE, NULL, 0,
20721         "DialingInformationNetworkType/gstn", HFILL }},
20722     { &hf_h245_mobile,
20723       { "mobile", "h245.mobile",
20724         FT_NONE, BASE_NONE, NULL, 0,
20725         "DialingInformationNetworkType/mobile", HFILL }},
20726     { &hf_h245_channelTag,
20727       { "channelTag", "h245.channelTag",
20728         FT_UINT32, BASE_DEC, NULL, 0,
20729         "ConnectionIdentifier/channelTag", HFILL }},
20730     { &hf_h245_sequenceNum,
20731       { "sequenceNumber", "h245.sequenceNumber",
20732         FT_UINT32, BASE_DEC, NULL, 0,
20733         "ConnectionIdentifier/sequenceNumber", HFILL }},
20734     { &hf_h245_maximumBitRate,
20735       { "maximumBitRate", "h245.maximumBitRate",
20736         FT_UINT32, BASE_DEC, NULL, 0,
20737         "", HFILL }},
20738     { &hf_h245_rejectReason,
20739       { "rejectReason", "h245.rejectReason",
20740         FT_UINT32, BASE_DEC, VALS(h245_LogicalChannelRateRejectReason_vals), 0,
20741         "LogicalChannelRateReject/rejectReason", HFILL }},
20742     { &hf_h245_currentMaximumBitRate,
20743       { "currentMaximumBitRate", "h245.currentMaximumBitRate",
20744         FT_UINT32, BASE_DEC, NULL, 0,
20745         "LogicalChannelRateReject/currentMaximumBitRate", HFILL }},
20746     { &hf_h245_undefinedReason,
20747       { "undefinedReason", "h245.undefinedReason",
20748         FT_NONE, BASE_NONE, NULL, 0,
20749         "LogicalChannelRateRejectReason/undefinedReason", HFILL }},
20750     { &hf_h245_insufficientResources,
20751       { "insufficientResources", "h245.insufficientResources",
20752         FT_NONE, BASE_NONE, NULL, 0,
20753         "LogicalChannelRateRejectReason/insufficientResources", HFILL }},
20754     { &hf_h245_specificRequest,
20755       { "specificRequest", "h245.specificRequest",
20756         FT_NONE, BASE_NONE, NULL, 0,
20757         "SendTerminalCapabilitySet/specificRequest", HFILL }},
20758     { &hf_h245_multiplexCapabilityBool,
20759       { "multiplexCapability", "h245.multiplexCapability",
20760         FT_BOOLEAN, 8, NULL, 0,
20761         "SendTerminalCapabilitySet/specificRequest/multiplexCapability", HFILL }},
20762     { &hf_h245_capabilityTableEntryNumbers,
20763       { "capabilityTableEntryNumbers", "h245.capabilityTableEntryNumbers",
20764         FT_NONE, BASE_NONE, NULL, 0,
20765         "SendTerminalCapabilitySet/specificRequest/capabilityTableEntryNumbers", HFILL }},
20766     { &hf_h245_capabilityTableEntryNumbers_item,
20767       { "Item", "h245.capabilityTableEntryNumbers_item",
20768         FT_UINT32, BASE_DEC, NULL, 0,
20769         "SendTerminalCapabilitySet/specificRequest/capabilityTableEntryNumbers/_item", HFILL }},
20770     { &hf_h245_capabilityDescriptorNumbers,
20771       { "capabilityDescriptorNumbers", "h245.capabilityDescriptorNumbers",
20772         FT_NONE, BASE_NONE, NULL, 0,
20773         "SendTerminalCapabilitySet/specificRequest/capabilityDescriptorNumbers", HFILL }},
20774     { &hf_h245_capabilityDescriptorNumbers_item,
20775       { "Item", "h245.capabilityDescriptorNumbers_item",
20776         FT_UINT32, BASE_DEC, NULL, 0,
20777         "SendTerminalCapabilitySet/specificRequest/capabilityDescriptorNumbers/_item", HFILL }},
20778     { &hf_h245_genericRequestFlag,
20779       { "genericRequest", "h245.genericRequest",
20780         FT_NONE, BASE_NONE, NULL, 0,
20781         "SendTerminalCapabilitySet/genericRequest", HFILL }},
20782     { &hf_h245_encryptionSE,
20783       { "encryptionSE", "h245.encryptionSE",
20784         FT_BYTES, BASE_HEX, NULL, 0,
20785         "EncryptionCommand/encryptionSE", HFILL }},
20786     { &hf_h245_encryptionIVRequest,
20787       { "encryptionIVRequest", "h245.encryptionIVRequest",
20788         FT_NONE, BASE_NONE, NULL, 0,
20789         "EncryptionCommand/encryptionIVRequest", HFILL }},
20790     { &hf_h245_encryptionAlgorithmID,
20791       { "encryptionAlgorithmID", "h245.encryptionAlgorithmID",
20792         FT_NONE, BASE_NONE, NULL, 0,
20793         "EncryptionCommand/encryptionAlgorithmID", HFILL }},
20794     { &hf_h245_h233AlgorithmIdentifier,
20795       { "h233AlgorithmIdentifier", "h245.h233AlgorithmIdentifier",
20796         FT_UINT32, BASE_DEC, NULL, 0,
20797         "EncryptionCommand/encryptionAlgorithmID/h233AlgorithmIdentifier", HFILL }},
20798     { &hf_h245_associatedAlgorithm,
20799       { "associatedAlgorithm", "h245.associatedAlgorithm",
20800         FT_NONE, BASE_NONE, NULL, 0,
20801         "EncryptionCommand/encryptionAlgorithmID/associatedAlgorithm", HFILL }},
20802     { &hf_h245_scope,
20803       { "scope", "h245.scope",
20804         FT_UINT32, BASE_DEC, VALS(h245_Scope_vals), 0,
20805         "", HFILL }},
20806     { &hf_h245_restriction,
20807       { "restriction", "h245.restriction",
20808         FT_UINT32, BASE_DEC, VALS(h245_Restriction_vals), 0,
20809         "", HFILL }},
20810     { &hf_h245_wholeMultiplex,
20811       { "wholeMultiplex", "h245.wholeMultiplex",
20812         FT_NONE, BASE_NONE, NULL, 0,
20813         "Scope/wholeMultiplex", HFILL }},
20814     { &hf_h245_Res_maximumBitRate,
20815       { "maximumBitRate", "h245.maximumBitRate",
20816         FT_UINT32, BASE_DEC, NULL, 0,
20817         "Restriction/maximumBitRate", HFILL }},
20818     { &hf_h245_noRestriction,
20819       { "noRestriction", "h245.noRestriction",
20820         FT_NONE, BASE_NONE, NULL, 0,
20821         "Restriction/noRestriction", HFILL }},
20822     { &hf_h245_disconnect,
20823       { "disconnect", "h245.disconnect",
20824         FT_NONE, BASE_NONE, NULL, 0,
20825         "EndSessionCommand/disconnect", HFILL }},
20826     { &hf_h245_gstnOptions,
20827       { "gstnOptions", "h245.gstnOptions",
20828         FT_UINT32, BASE_DEC, VALS(h245_T_gstnOptions_vals), 0,
20829         "EndSessionCommand/gstnOptions", HFILL }},
20830     { &hf_h245_telephonyMode,
20831       { "telephonyMode", "h245.telephonyMode",
20832         FT_NONE, BASE_NONE, NULL, 0,
20833         "", HFILL }},
20834     { &hf_h245_v8bis,
20835       { "v8bis", "h245.v8bis",
20836         FT_NONE, BASE_NONE, NULL, 0,
20837         "EndSessionCommand/gstnOptions/v8bis", HFILL }},
20838     { &hf_h245_v34DSVD,
20839       { "v34DSVD", "h245.v34DSVD",
20840         FT_NONE, BASE_NONE, NULL, 0,
20841         "EndSessionCommand/gstnOptions/v34DSVD", HFILL }},
20842     { &hf_h245_v34DuplexFAX,
20843       { "v34DuplexFAX", "h245.v34DuplexFAX",
20844         FT_NONE, BASE_NONE, NULL, 0,
20845         "EndSessionCommand/gstnOptions/v34DuplexFAX", HFILL }},
20846     { &hf_h245_v34H324,
20847       { "v34H324", "h245.v34H324",
20848         FT_NONE, BASE_NONE, NULL, 0,
20849         "EndSessionCommand/gstnOptions/v34H324", HFILL }},
20850     { &hf_h245_isdnOptions,
20851       { "isdnOptions", "h245.isdnOptions",
20852         FT_UINT32, BASE_DEC, VALS(h245_T_isdnOptions_vals), 0,
20853         "EndSessionCommand/isdnOptions", HFILL }},
20854     { &hf_h245_v140,
20855       { "v140", "h245.v140",
20856         FT_NONE, BASE_NONE, NULL, 0,
20857         "EndSessionCommand/isdnOptions/v140", HFILL }},
20858     { &hf_h245_terminalOnHold,
20859       { "terminalOnHold", "h245.terminalOnHold",
20860         FT_NONE, BASE_NONE, NULL, 0,
20861         "EndSessionCommand/isdnOptions/terminalOnHold", HFILL }},
20862     { &hf_h245_cancelBroadcastMyLogicalChannel,
20863       { "cancelBroadcastMyLogicalChannel", "h245.cancelBroadcastMyLogicalChannel",
20864         FT_UINT32, BASE_DEC, NULL, 0,
20865         "ConferenceCommand/cancelBroadcastMyLogicalChannel", HFILL }},
20866     { &hf_h245_cancelMakeTerminalBroadcaster,
20867       { "cancelMakeTerminalBroadcaster", "h245.cancelMakeTerminalBroadcaster",
20868         FT_NONE, BASE_NONE, NULL, 0,
20869         "ConferenceCommand/cancelMakeTerminalBroadcaster", HFILL }},
20870     { &hf_h245_cancelSendThisSource,
20871       { "cancelSendThisSource", "h245.cancelSendThisSource",
20872         FT_NONE, BASE_NONE, NULL, 0,
20873         "ConferenceCommand/cancelSendThisSource", HFILL }},
20874     { &hf_h245_dropConference,
20875       { "dropConference", "h245.dropConference",
20876         FT_NONE, BASE_NONE, NULL, 0,
20877         "ConferenceCommand/dropConference", HFILL }},
20878     { &hf_h245_substituteConferenceIDCommand,
20879       { "substituteConferenceIDCommand", "h245.substituteConferenceIDCommand",
20880         FT_NONE, BASE_NONE, NULL, 0,
20881         "ConferenceCommand/substituteConferenceIDCommand", HFILL }},
20882     { &hf_h245_conferenceIdentifier,
20883       { "conferenceIdentifier", "h245.conferenceIdentifier",
20884         FT_BYTES, BASE_HEX, NULL, 0,
20885         "SubstituteConferenceIDCommand/conferenceIdentifier", HFILL }},
20886     { &hf_h245_masterToSlave,
20887       { "masterToSlave", "h245.masterToSlave",
20888         FT_NONE, BASE_NONE, NULL, 0,
20889         "EncryptionUpdateDirection/masterToSlave", HFILL }},
20890     { &hf_h245_slaveToMaster,
20891       { "slaveToMaster", "h245.slaveToMaster",
20892         FT_NONE, BASE_NONE, NULL, 0,
20893         "EncryptionUpdateDirection/slaveToMaster", HFILL }},
20894     { &hf_h245_mc_type,
20895       { "type", "h245.type",
20896         FT_UINT32, BASE_DEC, VALS(h245_Mc_type_vals), 0,
20897         "MiscellaneousCommand/type", HFILL }},
20898     { &hf_h245_equaliseDelay,
20899       { "equaliseDelay", "h245.equaliseDelay",
20900         FT_NONE, BASE_NONE, NULL, 0,
20901         "MiscellaneousCommand/type/equaliseDelay", HFILL }},
20902     { &hf_h245_zeroDelay,
20903       { "zeroDelay", "h245.zeroDelay",
20904         FT_NONE, BASE_NONE, NULL, 0,
20905         "MiscellaneousCommand/type/zeroDelay", HFILL }},
20906     { &hf_h245_multipointModeCommand,
20907       { "multipointModeCommand", "h245.multipointModeCommand",
20908         FT_NONE, BASE_NONE, NULL, 0,
20909         "MiscellaneousCommand/type/multipointModeCommand", HFILL }},
20910     { &hf_h245_cancelMultipointModeCommand,
20911       { "cancelMultipointModeCommand", "h245.cancelMultipointModeCommand",
20912         FT_NONE, BASE_NONE, NULL, 0,
20913         "MiscellaneousCommand/type/cancelMultipointModeCommand", HFILL }},
20914     { &hf_h245_videoFreezePicture,
20915       { "videoFreezePicture", "h245.videoFreezePicture",
20916         FT_NONE, BASE_NONE, NULL, 0,
20917         "MiscellaneousCommand/type/videoFreezePicture", HFILL }},
20918     { &hf_h245_videoFastUpdatePicture,
20919       { "videoFastUpdatePicture", "h245.videoFastUpdatePicture",
20920         FT_NONE, BASE_NONE, NULL, 0,
20921         "MiscellaneousCommand/type/videoFastUpdatePicture", HFILL }},
20922     { &hf_h245_videoFastUpdateGOB,
20923       { "videoFastUpdateGOB", "h245.videoFastUpdateGOB",
20924         FT_NONE, BASE_NONE, NULL, 0,
20925         "MiscellaneousCommand/type/videoFastUpdateGOB", HFILL }},
20926     { &hf_h245_firstGOB,
20927       { "firstGOB", "h245.firstGOB",
20928         FT_UINT32, BASE_DEC, NULL, 0,
20929         "MiscellaneousCommand/type/videoFastUpdateGOB/firstGOB", HFILL }},
20930     { &hf_h245_numberOfGOBs,
20931       { "numberOfGOBs", "h245.numberOfGOBs",
20932         FT_UINT32, BASE_DEC, NULL, 0,
20933         "MiscellaneousCommand/type/videoFastUpdateGOB/numberOfGOBs", HFILL }},
20934     { &hf_h245_videoTemporalSpatialTradeOff,
20935       { "videoTemporalSpatialTradeOff", "h245.videoTemporalSpatialTradeOff",
20936         FT_UINT32, BASE_DEC, NULL, 0,
20937         "", HFILL }},
20938     { &hf_h245_videoSendSyncEveryGOB,
20939       { "videoSendSyncEveryGOB", "h245.videoSendSyncEveryGOB",
20940         FT_NONE, BASE_NONE, NULL, 0,
20941         "MiscellaneousCommand/type/videoSendSyncEveryGOB", HFILL }},
20942     { &hf_h245_videoSendSyncEveryGOBCancel,
20943       { "videoSendSyncEveryGOBCancel", "h245.videoSendSyncEveryGOBCancel",
20944         FT_NONE, BASE_NONE, NULL, 0,
20945         "MiscellaneousCommand/type/videoSendSyncEveryGOBCancel", HFILL }},
20946     { &hf_h245_videoFastUpdateMB,
20947       { "videoFastUpdateMB", "h245.videoFastUpdateMB",
20948         FT_NONE, BASE_NONE, NULL, 0,
20949         "MiscellaneousCommand/type/videoFastUpdateMB", HFILL }},
20950     { &hf_h245_firstGOB_0_255,
20951       { "firstGOB", "h245.firstGOB",
20952         FT_UINT32, BASE_DEC, NULL, 0,
20953         "MiscellaneousCommand/type/videoFastUpdateMB/firstGOB", HFILL }},
20954     { &hf_h245_firstMB_1_8192,
20955       { "firstMB", "h245.firstMB",
20956         FT_UINT32, BASE_DEC, NULL, 0,
20957         "", HFILL }},
20958     { &hf_h245_numberOfMBs,
20959       { "numberOfMBs", "h245.numberOfMBs",
20960         FT_UINT32, BASE_DEC, NULL, 0,
20961         "", HFILL }},
20962     { &hf_h245_maxH223MUXPDUsize,
20963       { "maxH223MUXPDUsize", "h245.maxH223MUXPDUsize",
20964         FT_UINT32, BASE_DEC, NULL, 0,
20965         "MiscellaneousCommand/type/maxH223MUXPDUsize", HFILL }},
20966     { &hf_h245_encryptionUpdate,
20967       { "encryptionUpdate", "h245.encryptionUpdate",
20968         FT_NONE, BASE_NONE, NULL, 0,
20969         "MiscellaneousCommand/type/encryptionUpdate", HFILL }},
20970     { &hf_h245_encryptionUpdateRequest,
20971       { "encryptionUpdateRequest", "h245.encryptionUpdateRequest",
20972         FT_NONE, BASE_NONE, NULL, 0,
20973         "MiscellaneousCommand/type/encryptionUpdateRequest", HFILL }},
20974     { &hf_h245_switchReceiveMediaOff,
20975       { "switchReceiveMediaOff", "h245.switchReceiveMediaOff",
20976         FT_NONE, BASE_NONE, NULL, 0,
20977         "MiscellaneousCommand/type/switchReceiveMediaOff", HFILL }},
20978     { &hf_h245_switchReceiveMediaOn,
20979       { "switchReceiveMediaOn", "h245.switchReceiveMediaOn",
20980         FT_NONE, BASE_NONE, NULL, 0,
20981         "MiscellaneousCommand/type/switchReceiveMediaOn", HFILL }},
20982     { &hf_h245_progressiveRefinementStart,
20983       { "progressiveRefinementStart", "h245.progressiveRefinementStart",
20984         FT_NONE, BASE_NONE, NULL, 0,
20985         "MiscellaneousCommand/type/progressiveRefinementStart", HFILL }},
20986     { &hf_h245_repeatCount,
20987       { "repeatCount", "h245.repeatCount",
20988         FT_UINT32, BASE_DEC, VALS(h245_RepeatCount_vals), 0,
20989         "MiscellaneousCommand/type/progressiveRefinementStart/repeatCount", HFILL }},
20990     { &hf_h245_progressiveRefinementAbortOne,
20991       { "progressiveRefinementAbortOne", "h245.progressiveRefinementAbortOne",
20992         FT_NONE, BASE_NONE, NULL, 0,
20993         "MiscellaneousCommand/type/progressiveRefinementAbortOne", HFILL }},
20994     { &hf_h245_progressiveRefinementAbortContinuous,
20995       { "progressiveRefinementAbortContinuous", "h245.progressiveRefinementAbortContinuous",
20996         FT_NONE, BASE_NONE, NULL, 0,
20997         "MiscellaneousCommand/type/progressiveRefinementAbortContinuous", HFILL }},
20998     { &hf_h245_videoBadMBs,
20999       { "videoBadMBs", "h245.videoBadMBs",
21000         FT_NONE, BASE_NONE, NULL, 0,
21001         "MiscellaneousCommand/type/videoBadMBs", HFILL }},
21002     { &hf_h245_firstMB,
21003       { "firstMB", "h245.firstMB",
21004         FT_UINT32, BASE_DEC, NULL, 0,
21005         "", HFILL }},
21006     { &hf_h245_numberOfMBs1_1_9216,
21007       { "numberOfMBs", "h245.numberOfMBs",
21008         FT_UINT32, BASE_DEC, NULL, 0,
21009         "", HFILL }},
21010     { &hf_h245_temporalReference,
21011       { "temporalReference", "h245.temporalReference",
21012         FT_UINT32, BASE_DEC, NULL, 0,
21013         "MiscellaneousCommand/type/videoBadMBs/temporalReference", HFILL }},
21014     { &hf_h245_lostPicture,
21015       { "lostPicture", "h245.lostPicture",
21016         FT_NONE, BASE_NONE, NULL, 0,
21017         "MiscellaneousCommand/type/lostPicture", HFILL }},
21018     { &hf_h245_lostPicture_item,
21019       { "Item", "h245.lostPicture_item",
21020         FT_UINT32, BASE_DEC, VALS(h245_PictureReference_vals), 0,
21021         "MiscellaneousCommand/type/lostPicture/_item", HFILL }},
21022     { &hf_h245_lostPartialPicture,
21023       { "lostPartialPicture", "h245.lostPartialPicture",
21024         FT_NONE, BASE_NONE, NULL, 0,
21025         "MiscellaneousCommand/type/lostPartialPicture", HFILL }},
21026     { &hf_h245_pictureReference,
21027       { "pictureReference", "h245.pictureReference",
21028         FT_UINT32, BASE_DEC, VALS(h245_PictureReference_vals), 0,
21029         "MiscellaneousCommand/type/lostPartialPicture/pictureReference", HFILL }},
21030     { &hf_h245_recoveryReferencePicture,
21031       { "recoveryReferencePicture", "h245.recoveryReferencePicture",
21032         FT_NONE, BASE_NONE, NULL, 0,
21033         "MiscellaneousCommand/type/recoveryReferencePicture", HFILL }},
21034     { &hf_h245_recoveryReferencePicture_item,
21035       { "Item", "h245.recoveryReferencePicture_item",
21036         FT_UINT32, BASE_DEC, VALS(h245_PictureReference_vals), 0,
21037         "MiscellaneousCommand/type/recoveryReferencePicture/_item", HFILL }},
21038     { &hf_h245_encryptionUpdateCommand,
21039       { "encryptionUpdateCommand", "h245.encryptionUpdateCommand",
21040         FT_NONE, BASE_NONE, NULL, 0,
21041         "MiscellaneousCommand/type/encryptionUpdateCommand", HFILL }},
21042     { &hf_h245_encryptionUpdateAck,
21043       { "encryptionUpdateAck", "h245.encryptionUpdateAck",
21044         FT_NONE, BASE_NONE, NULL, 0,
21045         "MiscellaneousCommand/type/encryptionUpdateAck", HFILL }},
21046     { &hf_h245_direction,
21047       { "direction", "h245.direction",
21048         FT_UINT32, BASE_DEC, VALS(h245_EncryptionUpdateDirection_vals), 0,
21049         "MiscellaneousCommand/direction", HFILL }},
21050     { &hf_h245_doOneProgression,
21051       { "doOneProgression", "h245.doOneProgression",
21052         FT_NONE, BASE_NONE, NULL, 0,
21053         "RepeatCount/doOneProgression", HFILL }},
21054     { &hf_h245_doContinuousProgressions,
21055       { "doContinuousProgressions", "h245.doContinuousProgressions",
21056         FT_NONE, BASE_NONE, NULL, 0,
21057         "RepeatCount/doContinuousProgressions", HFILL }},
21058     { &hf_h245_doOneIndependentProgression,
21059       { "doOneIndependentProgression", "h245.doOneIndependentProgression",
21060         FT_NONE, BASE_NONE, NULL, 0,
21061         "RepeatCount/doOneIndependentProgression", HFILL }},
21062     { &hf_h245_doContinuousIndependentProgressions,
21063       { "doContinuousIndependentProgressions", "h245.doContinuousIndependentProgressions",
21064         FT_NONE, BASE_NONE, NULL, 0,
21065         "RepeatCount/doContinuousIndependentProgressions", HFILL }},
21066     { &hf_h245_secureChannel,
21067       { "secureChannel", "h245.secureChannel",
21068         FT_BOOLEAN, 8, NULL, 0,
21069         "KeyProtectionMethod/secureChannel", HFILL }},
21070     { &hf_h245_sharedSecret,
21071       { "sharedSecret", "h245.sharedSecret",
21072         FT_BOOLEAN, 8, NULL, 0,
21073         "KeyProtectionMethod/sharedSecret", HFILL }},
21074     { &hf_h245_certProtectedKey,
21075       { "certProtectedKey", "h245.certProtectedKey",
21076         FT_BOOLEAN, 8, NULL, 0,
21077         "KeyProtectionMethod/certProtectedKey", HFILL }},
21078     { &hf_h245_keyProtectionMethod,
21079       { "keyProtectionMethod", "h245.keyProtectionMethod",
21080         FT_NONE, BASE_NONE, NULL, 0,
21081         "EncryptionUpdateRequest/keyProtectionMethod", HFILL }},
21082     { &hf_h245_pictureNumber,
21083       { "pictureNumber", "h245.pictureNumber",
21084         FT_UINT32, BASE_DEC, NULL, 0,
21085         "PictureReference/pictureNumber", HFILL }},
21086     { &hf_h245_longTermPictureIndex,
21087       { "longTermPictureIndex", "h245.longTermPictureIndex",
21088         FT_UINT32, BASE_DEC, NULL, 0,
21089         "PictureReference/longTermPictureIndex", HFILL }},
21090     { &hf_h245_h223ModeChange,
21091       { "h223ModeChange", "h245.h223ModeChange",
21092         FT_UINT32, BASE_DEC, VALS(h245_T_h223ModeChange_vals), 0,
21093         "H223MultiplexReconfiguration/h223ModeChange", HFILL }},
21094     { &hf_h245_toLevel0,
21095       { "toLevel0", "h245.toLevel0",
21096         FT_NONE, BASE_NONE, NULL, 0,
21097         "H223MultiplexReconfiguration/h223ModeChange/toLevel0", HFILL }},
21098     { &hf_h245_toLevel1,
21099       { "toLevel1", "h245.toLevel1",
21100         FT_NONE, BASE_NONE, NULL, 0,
21101         "H223MultiplexReconfiguration/h223ModeChange/toLevel1", HFILL }},
21102     { &hf_h245_toLevel2,
21103       { "toLevel2", "h245.toLevel2",
21104         FT_NONE, BASE_NONE, NULL, 0,
21105         "H223MultiplexReconfiguration/h223ModeChange/toLevel2", HFILL }},
21106     { &hf_h245_toLevel2withOptionalHeader,
21107       { "toLevel2withOptionalHeader", "h245.toLevel2withOptionalHeader",
21108         FT_NONE, BASE_NONE, NULL, 0,
21109         "H223MultiplexReconfiguration/h223ModeChange/toLevel2withOptionalHeader", HFILL }},
21110     { &hf_h245_h223AnnexADoubleFlag,
21111       { "h223AnnexADoubleFlag", "h245.h223AnnexADoubleFlag",
21112         FT_UINT32, BASE_DEC, VALS(h245_T_h223AnnexADoubleFlag_vals), 0,
21113         "H223MultiplexReconfiguration/h223AnnexADoubleFlag", HFILL }},
21114     { &hf_h245_start,
21115       { "start", "h245.start",
21116         FT_NONE, BASE_NONE, NULL, 0,
21117         "H223MultiplexReconfiguration/h223AnnexADoubleFlag/start", HFILL }},
21118     { &hf_h245_stop,
21119       { "stop", "h245.stop",
21120         FT_NONE, BASE_NONE, NULL, 0,
21121         "H223MultiplexReconfiguration/h223AnnexADoubleFlag/stop", HFILL }},
21122     { &hf_h245_bitRate,
21123       { "bitRate", "h245.bitRate",
21124         FT_UINT32, BASE_DEC, NULL, 0,
21125         "", HFILL }},
21126     { &hf_h245_bitRateLockedToPCRClock,
21127       { "bitRateLockedToPCRClock", "h245.bitRateLockedToPCRClock",
21128         FT_BOOLEAN, 8, NULL, 0,
21129         "", HFILL }},
21130     { &hf_h245_bitRateLockedToNetworkClock,
21131       { "bitRateLockedToNetworkClock", "h245.bitRateLockedToNetworkClock",
21132         FT_BOOLEAN, 8, NULL, 0,
21133         "", HFILL }},
21134     { &hf_h245_cmd_aal,
21135       { "aal", "h245.aal",
21136         FT_UINT32, BASE_DEC, VALS(h245_Cmd_aal_vals), 0,
21137         "NewATMVCCommand/aal", HFILL }},
21138     { &hf_h245_cmd_aal1,
21139       { "aal1", "h245.aal1",
21140         FT_NONE, BASE_NONE, NULL, 0,
21141         "NewATMVCCommand/aal/aal1", HFILL }},
21142     { &hf_h245_cmd_clockRecovery,
21143       { "clockRecovery", "h245.clockRecovery",
21144         FT_UINT32, BASE_DEC, VALS(h245_Cmd_clockRecovery_vals), 0,
21145         "NewATMVCCommand/aal/aal1/clockRecovery", HFILL }},
21146     { &hf_h245_nullClockRecoveryflag,
21147       { "nullClockRecovery", "h245.nullClockRecovery",
21148         FT_NONE, BASE_NONE, NULL, 0,
21149         "", HFILL }},
21150     { &hf_h245_srtsClockRecovery,
21151       { "srtsClockRecovery", "h245.srtsClockRecovery",
21152         FT_NONE, BASE_NONE, NULL, 0,
21153         "", HFILL }},
21154     { &hf_h245_adaptiveClockRecoveryFlag,
21155       { "adaptiveClockRecovery", "h245.adaptiveClockRecovery",
21156         FT_NONE, BASE_NONE, NULL, 0,
21157         "", HFILL }},
21158     { &hf_h245_cmd_errorCorrection,
21159       { "errorCorrection", "h245.errorCorrection",
21160         FT_UINT32, BASE_DEC, VALS(h245_Cmd_errorCorrection_vals), 0,
21161         "NewATMVCCommand/aal/aal1/errorCorrection", HFILL }},
21162     { &hf_h245_nullErrorCorrectionFlag,
21163       { "nullErrorCorrection", "h245.nullErrorCorrection",
21164         FT_NONE, BASE_NONE, NULL, 0,
21165         "", HFILL }},
21166     { &hf_h245_longInterleaverFlag,
21167       { "longInterleaver", "h245.longInterleaver",
21168         FT_NONE, BASE_NONE, NULL, 0,
21169         "", HFILL }},
21170     { &hf_h245_shortInterleaverFlag,
21171       { "shortInterleaver", "h245.shortInterleaver",
21172         FT_NONE, BASE_NONE, NULL, 0,
21173         "", HFILL }},
21174     { &hf_h245_errorCorrectionOnlyFlag,
21175       { "errorCorrectionOnly", "h245.errorCorrectionOnly",
21176         FT_NONE, BASE_NONE, NULL, 0,
21177         "", HFILL }},
21178     { &hf_h245_cmd_aal5,
21179       { "aal5", "h245.aal5",
21180         FT_NONE, BASE_NONE, NULL, 0,
21181         "NewATMVCCommand/aal/aal5", HFILL }},
21182     { &hf_h245_cmd_multiplex,
21183       { "multiplex", "h245.multiplex",
21184         FT_UINT32, BASE_DEC, VALS(h245_Cmd_multiplex_vals), 0,
21185         "NewATMVCCommand/multiplex", HFILL }},
21186     { &hf_h245_noMultiplex,
21187       { "noMultiplex", "h245.noMultiplex",
21188         FT_NONE, BASE_NONE, NULL, 0,
21189         "", HFILL }},
21190     { &hf_h245_transportStream,
21191       { "transportStream", "h245.transportStream",
21192         FT_NONE, BASE_NONE, NULL, 0,
21193         "", HFILL }},
21194     { &hf_h245_programStreamFlag,
21195       { "programStream", "h245.programStream",
21196         FT_NONE, BASE_NONE, NULL, 0,
21197         "", HFILL }},
21198     { &hf_h245_cmd_reverseParameters,
21199       { "reverseParameters", "h245.reverseParameters",
21200         FT_NONE, BASE_NONE, NULL, 0,
21201         "NewATMVCCommand/reverseParameters", HFILL }},
21202     { &hf_h245_cmdr_multiplex,
21203       { "multiplex", "h245.multiplex",
21204         FT_UINT32, BASE_DEC, VALS(h245_CmdR_multiplex_vals), 0,
21205         "NewATMVCCommand/reverseParameters/multiplex", HFILL }},
21206     { &hf_h245_sampleSize,
21207       { "sampleSize", "h245.sampleSize",
21208         FT_UINT32, BASE_DEC, NULL, 0,
21209         "", HFILL }},
21210     { &hf_h245_samplesPerFrame,
21211       { "samplesPerFrame", "h245.samplesPerFrame",
21212         FT_UINT32, BASE_DEC, NULL, 0,
21213         "", HFILL }},
21214     { &hf_h245_status,
21215       { "status", "h245.status",
21216         FT_UINT32, BASE_DEC, VALS(h245_T_status_vals), 0,
21217         "MobileMultilinkReconfigurationCommand/status", HFILL }},
21218     { &hf_h245_synchronized,
21219       { "synchronized", "h245.synchronized",
21220         FT_NONE, BASE_NONE, NULL, 0,
21221         "MobileMultilinkReconfigurationCommand/status/synchronized", HFILL }},
21222     { &hf_h245_reconfiguration,
21223       { "reconfiguration", "h245.reconfiguration",
21224         FT_NONE, BASE_NONE, NULL, 0,
21225         "MobileMultilinkReconfigurationCommand/status/reconfiguration", HFILL }},
21226     { &hf_h245_fns_cause,
21227       { "cause", "h245.cause",
21228         FT_UINT32, BASE_DEC, VALS(h245_FunctionNotSupportedCause_vals), 0,
21229         "FunctionNotSupported/cause", HFILL }},
21230     { &hf_h245_syntaxError,
21231       { "syntaxError", "h245.syntaxError",
21232         FT_NONE, BASE_NONE, NULL, 0,
21233         "FunctionNotSupported/cause/syntaxError", HFILL }},
21234     { &hf_h245_semanticError,
21235       { "semanticError", "h245.semanticError",
21236         FT_NONE, BASE_NONE, NULL, 0,
21237         "FunctionNotSupported/cause/semanticError", HFILL }},
21238     { &hf_h245_unknownFunction,
21239       { "unknownFunction", "h245.unknownFunction",
21240         FT_NONE, BASE_NONE, NULL, 0,
21241         "FunctionNotSupported/cause/unknownFunction", HFILL }},
21242     { &hf_h245_returnedFunction,
21243       { "returnedFunction", "h245.returnedFunction",
21244         FT_BYTES, BASE_HEX, NULL, 0,
21245         "FunctionNotSupported/returnedFunction", HFILL }},
21246     { &hf_h245_sbeNumber,
21247       { "sbeNumber", "h245.sbeNumber",
21248         FT_UINT32, BASE_DEC, NULL, 0,
21249         "ConferenceIndication/sbeNumber", HFILL }},
21250     { &hf_h245_terminalNumberAssign,
21251       { "terminalNumberAssign", "h245.terminalNumberAssign",
21252         FT_NONE, BASE_NONE, NULL, 0,
21253         "ConferenceIndication/terminalNumberAssign", HFILL }},
21254     { &hf_h245_terminalJoinedConference,
21255       { "terminalJoinedConference", "h245.terminalJoinedConference",
21256         FT_NONE, BASE_NONE, NULL, 0,
21257         "ConferenceIndication/terminalJoinedConference", HFILL }},
21258     { &hf_h245_terminalLeftConference,
21259       { "terminalLeftConference", "h245.terminalLeftConference",
21260         FT_NONE, BASE_NONE, NULL, 0,
21261         "ConferenceIndication/terminalLeftConference", HFILL }},
21262     { &hf_h245_seenByAtLeastOneOther,
21263       { "seenByAtLeastOneOther", "h245.seenByAtLeastOneOther",
21264         FT_NONE, BASE_NONE, NULL, 0,
21265         "ConferenceIndication/seenByAtLeastOneOther", HFILL }},
21266     { &hf_h245_cancelSeenByAtLeastOneOther,
21267       { "cancelSeenByAtLeastOneOther", "h245.cancelSeenByAtLeastOneOther",
21268         FT_NONE, BASE_NONE, NULL, 0,
21269         "ConferenceIndication/cancelSeenByAtLeastOneOther", HFILL }},
21270     { &hf_h245_seenByAll,
21271       { "seenByAll", "h245.seenByAll",
21272         FT_NONE, BASE_NONE, NULL, 0,
21273         "ConferenceIndication/seenByAll", HFILL }},
21274     { &hf_h245_cancelSeenByAll,
21275       { "cancelSeenByAll", "h245.cancelSeenByAll",
21276         FT_NONE, BASE_NONE, NULL, 0,
21277         "ConferenceIndication/cancelSeenByAll", HFILL }},
21278     { &hf_h245_terminalYouAreSeeing,
21279       { "terminalYouAreSeeing", "h245.terminalYouAreSeeing",
21280         FT_NONE, BASE_NONE, NULL, 0,
21281         "ConferenceIndication/terminalYouAreSeeing", HFILL }},
21282     { &hf_h245_requestForFloor,
21283       { "requestForFloor", "h245.requestForFloor",
21284         FT_NONE, BASE_NONE, NULL, 0,
21285         "ConferenceIndication/requestForFloor", HFILL }},
21286     { &hf_h245_withdrawChairToken,
21287       { "withdrawChairToken", "h245.withdrawChairToken",
21288         FT_NONE, BASE_NONE, NULL, 0,
21289         "ConferenceIndication/withdrawChairToken", HFILL }},
21290     { &hf_h245_floorRequested,
21291       { "floorRequested", "h245.floorRequested",
21292         FT_NONE, BASE_NONE, NULL, 0,
21293         "ConferenceIndication/floorRequested", HFILL }},
21294     { &hf_h245_terminalYouAreSeeingInSubPictureNumber,
21295       { "terminalYouAreSeeingInSubPictureNumber", "h245.terminalYouAreSeeingInSubPictureNumber",
21296         FT_NONE, BASE_NONE, NULL, 0,
21297         "ConferenceIndication/terminalYouAreSeeingInSubPictureNumber", HFILL }},
21298     { &hf_h245_videoIndicateCompose,
21299       { "videoIndicateCompose", "h245.videoIndicateCompose",
21300         FT_NONE, BASE_NONE, NULL, 0,
21301         "ConferenceIndication/videoIndicateCompose", HFILL }},
21302     { &hf_h245_subPictureNumber,
21303       { "subPictureNumber", "h245.subPictureNumber",
21304         FT_UINT32, BASE_DEC, NULL, 0,
21305         "TerminalYouAreSeeingInSubPictureNumber/subPictureNumber", HFILL }},
21306     { &hf_h245_compositionNumber,
21307       { "compositionNumber", "h245.compositionNumber",
21308         FT_UINT32, BASE_DEC, NULL, 0,
21309         "VideoIndicateCompose/compositionNumber", HFILL }},
21310     { &hf_h245_mi_type,
21311       { "type", "h245.type",
21312         FT_UINT32, BASE_DEC, VALS(h245_Mi_type_vals), 0,
21313         "MiscellaneousIndication/type", HFILL }},
21314     { &hf_h245_logicalChannelActive,
21315       { "logicalChannelActive", "h245.logicalChannelActive",
21316         FT_NONE, BASE_NONE, NULL, 0,
21317         "MiscellaneousIndication/type/logicalChannelActive", HFILL }},
21318     { &hf_h245_logicalChannelInactive,
21319       { "logicalChannelInactive", "h245.logicalChannelInactive",
21320         FT_NONE, BASE_NONE, NULL, 0,
21321         "MiscellaneousIndication/type/logicalChannelInactive", HFILL }},
21322     { &hf_h245_multipointConference,
21323       { "multipointConference", "h245.multipointConference",
21324         FT_NONE, BASE_NONE, NULL, 0,
21325         "MiscellaneousIndication/type/multipointConference", HFILL }},
21326     { &hf_h245_cancelMultipointConference,
21327       { "cancelMultipointConference", "h245.cancelMultipointConference",
21328         FT_NONE, BASE_NONE, NULL, 0,
21329         "MiscellaneousIndication/type/cancelMultipointConference", HFILL }},
21330     { &hf_h245_multipointZeroComm,
21331       { "multipointZeroComm", "h245.multipointZeroComm",
21332         FT_NONE, BASE_NONE, NULL, 0,
21333         "MiscellaneousIndication/type/multipointZeroComm", HFILL }},
21334     { &hf_h245_cancelMultipointZeroComm,
21335       { "cancelMultipointZeroComm", "h245.cancelMultipointZeroComm",
21336         FT_NONE, BASE_NONE, NULL, 0,
21337         "MiscellaneousIndication/type/cancelMultipointZeroComm", HFILL }},
21338     { &hf_h245_multipointSecondaryStatus,
21339       { "multipointSecondaryStatus", "h245.multipointSecondaryStatus",
21340         FT_NONE, BASE_NONE, NULL, 0,
21341         "MiscellaneousIndication/type/multipointSecondaryStatus", HFILL }},
21342     { &hf_h245_cancelMultipointSecondaryStatus,
21343       { "cancelMultipointSecondaryStatus", "h245.cancelMultipointSecondaryStatus",
21344         FT_NONE, BASE_NONE, NULL, 0,
21345         "MiscellaneousIndication/type/cancelMultipointSecondaryStatus", HFILL }},
21346     { &hf_h245_videoIndicateReadyToActivate,
21347       { "videoIndicateReadyToActivate", "h245.videoIndicateReadyToActivate",
21348         FT_NONE, BASE_NONE, NULL, 0,
21349         "MiscellaneousIndication/type/videoIndicateReadyToActivate", HFILL }},
21350     { &hf_h245_videoNotDecodedMBs,
21351       { "videoNotDecodedMBs", "h245.videoNotDecodedMBs",
21352         FT_NONE, BASE_NONE, NULL, 0,
21353         "MiscellaneousIndication/type/videoNotDecodedMBs", HFILL }},
21354     { &hf_h245_temporalReference_0_255,
21355       { "temporalReference", "h245.temporalReference",
21356         FT_UINT32, BASE_DEC, NULL, 0,
21357         "MiscellaneousIndication/type/videoNotDecodedMBs/temporalReference", HFILL }},
21358     { &hf_h245_estimatedReceivedJitterMantissa,
21359       { "estimatedReceivedJitterMantissa", "h245.estimatedReceivedJitterMantissa",
21360         FT_UINT32, BASE_DEC, NULL, 0,
21361         "JitterIndication/estimatedReceivedJitterMantissa", HFILL }},
21362     { &hf_h245_estimatedReceivedJitterExponent,
21363       { "estimatedReceivedJitterExponent", "h245.estimatedReceivedJitterExponent",
21364         FT_UINT32, BASE_DEC, NULL, 0,
21365         "JitterIndication/estimatedReceivedJitterExponent", HFILL }},
21366     { &hf_h245_skippedFrameCount,
21367       { "skippedFrameCount", "h245.skippedFrameCount",
21368         FT_UINT32, BASE_DEC, NULL, 0,
21369         "JitterIndication/skippedFrameCount", HFILL }},
21370     { &hf_h245_additionalDecoderBuffer,
21371       { "additionalDecoderBuffer", "h245.additionalDecoderBuffer",
21372         FT_UINT32, BASE_DEC, NULL, 0,
21373         "JitterIndication/additionalDecoderBuffer", HFILL }},
21374     { &hf_h245_logicalChannelNumber1,
21375       { "logicalChannelNumber1", "h245.logicalChannelNumber1",
21376         FT_UINT32, BASE_DEC, NULL, 0,
21377         "", HFILL }},
21378     { &hf_h245_logicalChannelNumber2,
21379       { "logicalChannelNumber2", "h245.logicalChannelNumber2",
21380         FT_UINT32, BASE_DEC, NULL, 0,
21381         "", HFILL }},
21382     { &hf_h245_skew,
21383       { "skew", "h245.skew",
21384         FT_UINT32, BASE_DEC, NULL, 0,
21385         "H223SkewIndication/skew", HFILL }},
21386     { &hf_h245_maximumSkew,
21387       { "maximumSkew", "h245.maximumSkew",
21388         FT_UINT32, BASE_DEC, NULL, 0,
21389         "H2250MaximumSkewIndication/maximumSkew", HFILL }},
21390     { &hf_h245_signalAddress,
21391       { "signalAddress", "h245.signalAddress",
21392         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
21393         "MCLocationIndication/signalAddress", HFILL }},
21394     { &hf_h245_vendor,
21395       { "vendor", "h245.vendor",
21396         FT_UINT32, BASE_DEC, VALS(h245_NonStandardIdentifier_vals), 0,
21397         "VendorIdentification/vendor", HFILL }},
21398     { &hf_h245_productNumber,
21399       { "productNumber", "h245.productNumber",
21400         FT_BYTES, BASE_HEX, NULL, 0,
21401         "VendorIdentification/productNumber", HFILL }},
21402     { &hf_h245_versionNumber,
21403       { "versionNumber", "h245.versionNumber",
21404         FT_BYTES, BASE_HEX, NULL, 0,
21405         "VendorIdentification/versionNumber", HFILL }},
21406     { &hf_h245_ind_aal,
21407       { "aal", "h245.aal",
21408         FT_UINT32, BASE_DEC, VALS(h245_Ind_aal_vals), 0,
21409         "NewATMVCIndication/aal", HFILL }},
21410     { &hf_h245_ind_aal1,
21411       { "aal1", "h245.aal1",
21412         FT_NONE, BASE_NONE, NULL, 0,
21413         "NewATMVCIndication/aal/aal1", HFILL }},
21414     { &hf_h245_ind_clockRecovery,
21415       { "clockRecovery", "h245.clockRecovery",
21416         FT_UINT32, BASE_DEC, VALS(h245_Ind_clockRecovery_vals), 0,
21417         "NewATMVCIndication/aal/aal1/clockRecovery", HFILL }},
21418     { &hf_h245_ind_errorCorrection,
21419       { "errorCorrection", "h245.errorCorrection",
21420         FT_UINT32, BASE_DEC, VALS(h245_Ind_errorCorrection_vals), 0,
21421         "NewATMVCIndication/aal/aal1/errorCorrection", HFILL }},
21422     { &hf_h245_ind_aal5,
21423       { "aal5", "h245.aal5",
21424         FT_NONE, BASE_NONE, NULL, 0,
21425         "NewATMVCIndication/aal/aal5", HFILL }},
21426     { &hf_h245_ind_multiplex,
21427       { "multiplex", "h245.multiplex",
21428         FT_UINT32, BASE_DEC, VALS(h245_Ind_multiplex_vals), 0,
21429         "NewATMVCIndication/multiplex", HFILL }},
21430     { &hf_h245_ind_reverseParameters,
21431       { "reverseParameters", "h245.reverseParameters",
21432         FT_NONE, BASE_NONE, NULL, 0,
21433         "NewATMVCIndication/reverseParameters", HFILL }},
21434     { &hf_h245_indr_multiplex,
21435       { "multiplex", "h245.multiplex",
21436         FT_UINT32, BASE_DEC, VALS(h245_IndR_multiplex_vals), 0,
21437         "NewATMVCIndication/reverseParameters/multiplex", HFILL }},
21438     { &hf_h245_iv8,
21439       { "iv8", "h245.iv8",
21440         FT_BYTES, BASE_HEX, NULL, 0,
21441         "Params/iv8", HFILL }},
21442     { &hf_h245_iv16,
21443       { "iv16", "h245.iv16",
21444         FT_BYTES, BASE_HEX, NULL, 0,
21445         "Params/iv16", HFILL }},
21446     { &hf_h245_iv,
21447       { "iv", "h245.iv",
21448         FT_BYTES, BASE_HEX, NULL, 0,
21449         "Params/iv", HFILL }},
21450     { &hf_h245_alphanumeric,
21451       { "alphanumeric", "h245.alphanumeric",
21452         FT_STRING, BASE_NONE, NULL, 0,
21453         "", HFILL }},
21454     { &hf_h245_userInputSupportIndication,
21455       { "userInputSupportIndication", "h245.userInputSupportIndication",
21456         FT_UINT32, BASE_DEC, VALS(h245_T_userInputSupportIndication_vals), 0,
21457         "UserInputIndication/userInputSupportIndication", HFILL }},
21458     { &hf_h245_signal,
21459       { "signal", "h245.signal",
21460         FT_NONE, BASE_NONE, NULL, 0,
21461         "UserInputIndication/signal", HFILL }},
21462     { &hf_h245_signalType,
21463       { "signalType", "h245.signalType",
21464         FT_STRING, BASE_NONE, NULL, 0,
21465         "UserInputIndication/signal/signalType", HFILL }},
21466     { &hf_h245_duration,
21467       { "duration", "h245.duration",
21468         FT_UINT32, BASE_DEC, NULL, 0,
21469         "", HFILL }},
21470     { &hf_h245_rtp,
21471       { "rtp", "h245.rtp",
21472         FT_NONE, BASE_NONE, NULL, 0,
21473         "UserInputIndication/signal/rtp", HFILL }},
21474     { &hf_h245_rtpPayloadIndication,
21475       { "rtpPayloadIndication", "h245.rtpPayloadIndication",
21476         FT_NONE, BASE_NONE, NULL, 0,
21477         "", HFILL }},
21478     { &hf_h245_paramS,
21479       { "paramS", "h245.paramS",
21480         FT_NONE, BASE_NONE, NULL, 0,
21481         "", HFILL }},
21482     { &hf_h245_encryptedSignalType,
21483       { "encryptedSignalType", "h245.encryptedSignalType",
21484         FT_BYTES, BASE_HEX, NULL, 0,
21485         "UserInputIndication/signal/encryptedSignalType", HFILL }},
21486     { &hf_h245_signalUpdate,
21487       { "signalUpdate", "h245.signalUpdate",
21488         FT_NONE, BASE_NONE, NULL, 0,
21489         "UserInputIndication/signalUpdate", HFILL }},
21490     { &hf_h245_si_rtp,
21491       { "rtp", "h245.rtp",
21492         FT_NONE, BASE_NONE, NULL, 0,
21493         "UserInputIndication/signalUpdate/rtp", HFILL }},
21494     { &hf_h245_extendedAlphanumeric,
21495       { "extendedAlphanumeric", "h245.extendedAlphanumeric",
21496         FT_NONE, BASE_NONE, NULL, 0,
21497         "UserInputIndication/extendedAlphanumeric", HFILL }},
21498     { &hf_h245_encryptedAlphanumeric,
21499       { "encryptedAlphanumeric", "h245.encryptedAlphanumeric",
21500         FT_NONE, BASE_NONE, NULL, 0,
21501         "", HFILL }},
21502     { &hf_h245_algorithmOID,
21503       { "algorithmOID", "h245.algorithmOID",
21504         FT_STRING, BASE_NONE, NULL, 0,
21505         "EncryptedAlphanumeric/algorithmOID", HFILL }},
21506     { &hf_h245_encrypted,
21507       { "encrypted", "h245.encrypted",
21508         FT_BYTES, BASE_HEX, NULL, 0,
21509         "EncryptedAlphanumeric/encrypted", HFILL }},
21510     { &hf_h245_timestamp,
21511       { "timestamp", "h245.timestamp",
21512         FT_UINT32, BASE_DEC, NULL, 0,
21513         "Rtp/timestamp", HFILL }},
21514     { &hf_h245_expirationTime,
21515       { "expirationTime", "h245.expirationTime",
21516         FT_UINT32, BASE_DEC, NULL, 0,
21517         "Rtp/expirationTime", HFILL }},
21518
21519 /*--- End of included file: packet-h245-hfarr.c ---*/
21520
21521   };
21522
21523   /* List of subtrees */
21524   static gint *ett[] = {
21525           &ett_h245,
21526
21527 /*--- Included file: packet-h245-ettarr.c ---*/
21528
21529     &ett_h245_MultimediaSystemControlMessage,
21530     &ett_h245_RequestMessage,
21531     &ett_h245_ResponseMessage,
21532     &ett_h245_CommandMessage,
21533     &ett_h245_IndicationMessage,
21534     &ett_h245_GenericMessage,
21535     &ett_h245_SEQUNCE_OF_GenericParameter,
21536     &ett_h245_NonStandardMessage,
21537     &ett_h245_NonStandardParameter,
21538     &ett_h245_NonStandardIdentifier,
21539     &ett_h245_H221NonStandardID,
21540     &ett_h245_MasterSlaveDetermination,
21541     &ett_h245_MasterSlaveDeterminationAck,
21542     &ett_h245_T_decision,
21543     &ett_h245_MasterSlaveDeterminationReject,
21544     &ett_h245_MasterSlaveDeterminationRejectCause,
21545     &ett_h245_MasterSlaveDeterminationRelease,
21546     &ett_h245_TerminalCapabilitySet,
21547     &ett_h245_SET_SIZE_1_256_OF_CapabilityTableEntry,
21548     &ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptor,
21549     &ett_h245_CapabilityTableEntry,
21550     &ett_h245_CapabilityDescriptor,
21551     &ett_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet,
21552     &ett_h245_AlternativeCapabilitySet,
21553     &ett_h245_TerminalCapabilitySetAck,
21554     &ett_h245_TerminalCapabilitySetReject,
21555     &ett_h245_TerminalCapabilitySetRejectCause,
21556     &ett_h245_T_tableEntryCapacityExceeded,
21557     &ett_h245_TerminalCapabilitySetRelease,
21558     &ett_h245_Capability,
21559     &ett_h245_T_h233EncryptionReceiveCapability,
21560     &ett_h245_H235SecurityCapability,
21561     &ett_h245_MultiplexCapability,
21562     &ett_h245_H222Capability,
21563     &ett_h245_SET_OF_VCCapability,
21564     &ett_h245_VCCapability,
21565     &ett_h245_T_aal1,
21566     &ett_h245_T_aal5,
21567     &ett_h245_T_availableBitRates,
21568     &ett_h245_Avb_type,
21569     &ett_h245_T_rangeOfBitRates,
21570     &ett_h245_T_aal1ViaGateway,
21571     &ett_h245_SET_SIZE_1_256_OF_Q2931Address,
21572     &ett_h245_H223Capability,
21573     &ett_h245_T_h223MultiplexTableCapability,
21574     &ett_h245_T_enhanced,
21575     &ett_h245_T_mobileOperationTransmitCapability,
21576     &ett_h245_T_mobileMultilinkFrameCapability,
21577     &ett_h245_H223AnnexCCapability,
21578     &ett_h245_V76Capability,
21579     &ett_h245_V75Capability,
21580     &ett_h245_H2250Capability,
21581     &ett_h245_T_mcCapability,
21582     &ett_h245_SEQUNCE_SIZE_1_256_OF_RedundancyEncodingCapability,
21583     &ett_h245_MediaPacketizationCapability,
21584     &ett_h245_SEQUNCE_SIZE_1_256_OF_RTPPayloadType,
21585     &ett_h245_RSVPParameters,
21586     &ett_h245_QOSMode,
21587     &ett_h245_ATMParameters,
21588     &ett_h245_QOSCapability,
21589     &ett_h245_MediaTransportType,
21590     &ett_h245_T_atm_AAL5_compressed,
21591     &ett_h245_MediaChannelCapability,
21592     &ett_h245_TransportCapability,
21593     &ett_h245_SEQUNCE_SIZE_1_256_OF_QOSCapability,
21594     &ett_h245_SEQUNCE_SIZE_1_256_OF_MediaChannelCapability,
21595     &ett_h245_RedundancyEncodingCapability,
21596     &ett_h245_SEQUNCE_SIZE_1_256_OF_CapabilityTableEntryNumber,
21597     &ett_h245_RedundancyEncodingMethod,
21598     &ett_h245_RTPH263VideoRedundancyEncoding,
21599     &ett_h245_T_frameToThreadMapping,
21600     &ett_h245_SEQUNCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping,
21601     &ett_h245_SEQUNCE_SIZE_1_256_OF_INTEGER_0_15,
21602     &ett_h245_RTPH263VideoRedundancyFrameMapping,
21603     &ett_h245_SEQUNCE_SIZE_1_256_OF_INTEGER_0_255,
21604     &ett_h245_MultipointCapability,
21605     &ett_h245_SEQUNCE_OF_MediaDistributionCapability,
21606     &ett_h245_MediaDistributionCapability,
21607     &ett_h245_SEQUNCE_OF_DataApplicationCapability,
21608     &ett_h245_VideoCapability,
21609     &ett_h245_ExtendedVideoCapability,
21610     &ett_h245_SEQUNCE_OF_VideoCapability,
21611     &ett_h245_SEQUNCE_OF_GenericCapability,
21612     &ett_h245_H261VideoCapability,
21613     &ett_h245_H262VideoCapability,
21614     &ett_h245_H263VideoCapability,
21615     &ett_h245_EnhancementLayerInfo,
21616     &ett_h245_SET_SIZE_1_14_OF_EnhancementOptions,
21617     &ett_h245_SET_SIZE_1_14_OF_BEnhancementParameters,
21618     &ett_h245_BEnhancementParameters,
21619     &ett_h245_EnhancementOptions,
21620     &ett_h245_H263Options,
21621     &ett_h245_SET_SIZE_1_16_OF_CustomPictureClockFrequency,
21622     &ett_h245_SET_SIZE_1_16_OF_CustomPictureFormat,
21623     &ett_h245_SET_SIZE_1_16_OF_H263VideoModeCombos,
21624     &ett_h245_TransparencyParameters,
21625     &ett_h245_RefPictureSelection,
21626     &ett_h245_T_additionalPictureMemory,
21627     &ett_h245_T_videoBackChannelSend,
21628     &ett_h245_T_enhancedReferencePicSelect,
21629     &ett_h245_T_subPictureRemovalParameters,
21630     &ett_h245_CustomPictureClockFrequency,
21631     &ett_h245_CustomPictureFormat,
21632     &ett_h245_T_mPI,
21633     &ett_h245_T_customPCF,
21634     &ett_h245_T_customPCF_item,
21635     &ett_h245_T_pixelAspectInformation,
21636     &ett_h245_SET_SIZE_1_14_OF_INTEGER_1_14,
21637     &ett_h245_T_extendedPAR,
21638     &ett_h245_T_extendedPAR_item,
21639     &ett_h245_H263VideoModeCombos,
21640     &ett_h245_SET_SIZE_1_16_OF_H263ModeComboFlags,
21641     &ett_h245_H263ModeComboFlags,
21642     &ett_h245_H263Version3Options,
21643     &ett_h245_IS11172VideoCapability,
21644     &ett_h245_AudioCapability,
21645     &ett_h245_T_g7231,
21646     &ett_h245_G729Extensions,
21647     &ett_h245_G7231AnnexCCapability,
21648     &ett_h245_G723AnnexCAudioMode,
21649     &ett_h245_IS11172AudioCapability,
21650     &ett_h245_IS13818AudioCapability,
21651     &ett_h245_GSMAudioCapability,
21652     &ett_h245_VBDCapability,
21653     &ett_h245_DataApplicationCapability,
21654     &ett_h245_Application,
21655     &ett_h245_T_t84,
21656     &ett_h245_T_t38fax,
21657     &ett_h245_DataProtocolCapability,
21658     &ett_h245_T_v76wCompression,
21659     &ett_h245_CompressionType,
21660     &ett_h245_V42bis,
21661     &ett_h245_T84Profile,
21662     &ett_h245_T_t84Restricted,
21663     &ett_h245_T38FaxProfile,
21664     &ett_h245_T38FaxRateManagement,
21665     &ett_h245_T38FaxUdpOptions,
21666     &ett_h245_T_t38FaxUdpEC,
21667     &ett_h245_T38FaxTcpOptions,
21668     &ett_h245_Nlpid,
21669     &ett_h245_EncryptionAuthenticationAndIntegrity,
21670     &ett_h245_EncryptionCapability,
21671     &ett_h245_MediaEncryptionAlgorithm,
21672     &ett_h245_AuthenticationCapability,
21673     &ett_h245_IntegrityCapability,
21674     &ett_h245_UserInputCapability,
21675     &ett_h245_SEQUNCE_SIZE_1_16_OF_NonStandardParameter,
21676     &ett_h245_ConferenceCapability,
21677     &ett_h245_SEQUNCE_OF_NonStandardParameter,
21678     &ett_h245_GenericCapability,
21679     &ett_h245_CapabilityIdentifier,
21680     &ett_h245_GenericParameter,
21681     &ett_h245_SEQUNCE_OF_ParameterIdentifier,
21682     &ett_h245_ParameterIdentifier,
21683     &ett_h245_ParameterValue,
21684     &ett_h245_MultiplexedStreamCapability,
21685     &ett_h245_MultiplexFormat,
21686     &ett_h245_AudioTelephonyEventCapability,
21687     &ett_h245_AudioToneCapability,
21688     &ett_h245_NoPTAudioTelephonyEventCapability,
21689     &ett_h245_NoPTAudioToneCapability,
21690     &ett_h245_MultiplePayloadStreamCapability,
21691     &ett_h245_FECCapability,
21692     &ett_h245_FECC_rfc2733,
21693     &ett_h245_T_separateStream,
21694     &ett_h245_OpenLogicalChannel,
21695     &ett_h245_T_forwardLogicalChannelParameters,
21696     &ett_h245_OLC_forw_multiplexParameters,
21697     &ett_h245_OLC_reverseLogicalChannelParameters,
21698     &ett_h245_OLC_rev_multiplexParameters,
21699     &ett_h245_NetworkAccessParameters,
21700     &ett_h245_T_distribution,
21701     &ett_h245_T_networkAddress,
21702     &ett_h245_T_t120SetupProcedure,
21703     &ett_h245_Q2931Address,
21704     &ett_h245_T_address,
21705     &ett_h245_V75Parameters,
21706     &ett_h245_DataType,
21707     &ett_h245_H235Media,
21708     &ett_h245_T_mediaType,
21709     &ett_h245_MultiplexedStreamParameter,
21710     &ett_h245_H222LogicalChannelParameters,
21711     &ett_h245_H223LogicalChannelParameters,
21712     &ett_h245_T_adaptationLayerType,
21713     &ett_h245_Al3,
21714     &ett_h245_H223AL1MParameters,
21715     &ett_h245_T_transferMode,
21716     &ett_h245_AL1HeaderFEC,
21717     &ett_h245_AL1CrcLength,
21718     &ett_h245_ArqType,
21719     &ett_h245_H223AL2MParameters,
21720     &ett_h245_AL2HeaderFEC,
21721     &ett_h245_H223AL3MParameters,
21722     &ett_h245_T_headerFormat,
21723     &ett_h245_AL3CrcLength,
21724     &ett_h245_H223AnnexCArqParameters,
21725     &ett_h245_T_numberOfRetransmissions,
21726     &ett_h245_V76LogicalChannelParameters,
21727     &ett_h245_T_suspendResume,
21728     &ett_h245_V76LCP_mode,
21729     &ett_h245_T_eRM,
21730     &ett_h245_T_recovery,
21731     &ett_h245_V76HDLCParameters,
21732     &ett_h245_CRCLength,
21733     &ett_h245_H2250LogicalChannelParameters,
21734     &ett_h245_T_mediaPacketization,
21735     &ett_h245_RTPPayloadType,
21736     &ett_h245_T_payloadDescriptor,
21737     &ett_h245_RedundancyEncoding,
21738     &ett_h245_T_rtpRedundancyEncoding,
21739     &ett_h245_SEQUNCE_OF_RedundancyEncodingElement,
21740     &ett_h245_RedundancyEncodingElement,
21741     &ett_h245_MultiplePayloadStream,
21742     &ett_h245_SEQUNCE_OF_MultiplePayloadStreamElement,
21743     &ett_h245_MultiplePayloadStreamElement,
21744     &ett_h245_FECData,
21745     &ett_h245_RFC2733Data,
21746     &ett_h245_FECdata_mode,
21747     &ett_h245_Moderfc2733,
21748     &ett_h245_SeparateStream,
21749     &ett_h245_T_differentPort,
21750     &ett_h245_T_samePort,
21751     &ett_h245_TransportAddress,
21752     &ett_h245_UnicastAddress,
21753     &ett_h245_T_iPAddress,
21754     &ett_h245_T_iPXAddress,
21755     &ett_h245_T_iP6Address,
21756     &ett_h245_T_iPSourceRouteAddress,
21757     &ett_h245_T_routing,
21758     &ett_h245_SEQUNCE_OF_OCTET_STRING_SIZE_4,
21759     &ett_h245_MulticastAddress,
21760     &ett_h245_MIPAddress,
21761     &ett_h245_MIP6Address,
21762     &ett_h245_EncryptionSync,
21763     &ett_h245_SEQUNCE_SIZE_1_256_OF_EscrowData,
21764     &ett_h245_EscrowData,
21765     &ett_h245_OpenLogicalChannelAck,
21766     &ett_h245_OLC_ack_reverseLogicalChannelParameters,
21767     &ett_h245_T_multiplexParameters,
21768     &ett_h245_T_forwardMultiplexAckParameters,
21769     &ett_h245_OpenLogicalChannelReject,
21770     &ett_h245_OpenLogicalChannelRejectCause,
21771     &ett_h245_OpenLogicalChannelConfirm,
21772     &ett_h245_H2250LogicalChannelAckParameters,
21773     &ett_h245_CloseLogicalChannel,
21774     &ett_h245_T_source,
21775     &ett_h245_clc_reason,
21776     &ett_h245_CloseLogicalChannelAck,
21777     &ett_h245_RequestChannelClose,
21778     &ett_h245_T_reason,
21779     &ett_h245_RequestChannelCloseAck,
21780     &ett_h245_RequestChannelCloseReject,
21781     &ett_h245_RequestChannelCloseRejectCause,
21782     &ett_h245_RequestChannelCloseRelease,
21783     &ett_h245_MultiplexEntrySend,
21784     &ett_h245_SET_SIZE_1_15_OF_MultiplexEntryDescriptor,
21785     &ett_h245_MultiplexEntryDescriptor,
21786     &ett_h245_SEQUNCE_SIZE_1_256_OF_MultiplexElement,
21787     &ett_h245_MultiplexElement,
21788     &ett_h245_Me_type,
21789     &ett_h245_SEQUNCE_SIZE_2_255_OF_MultiplexElement,
21790     &ett_h245_ME_repeatCount,
21791     &ett_h245_MultiplexEntrySendAck,
21792     &ett_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber,
21793     &ett_h245_MultiplexEntrySendReject,
21794     &ett_h245_SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions,
21795     &ett_h245_MultiplexEntryRejectionDescriptions,
21796     &ett_h245_MultiplexEntryRejectionDescriptionsCause,
21797     &ett_h245_MultiplexEntrySendRelease,
21798     &ett_h245_RequestMultiplexEntry,
21799     &ett_h245_RequestMultiplexEntryAck,
21800     &ett_h245_RequestMultiplexEntryReject,
21801     &ett_h245_SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions,
21802     &ett_h245_RequestMultiplexEntryRejectionDescriptions,
21803     &ett_h245_RequestMultiplexEntryRejectionDescriptionsCause,
21804     &ett_h245_RequestMultiplexEntryRelease,
21805     &ett_h245_RequestMode,
21806     &ett_h245_SEQUNCE_SIZE_1_256_OF_ModeDescription,
21807     &ett_h245_RequestModeAck,
21808     &ett_h245_Req_mode_ack_response,
21809     &ett_h245_RequestModeReject,
21810     &ett_h245_RequestModeRejectCause,
21811     &ett_h245_RequestModeRelease,
21812     &ett_h245_ModeDescription,
21813     &ett_h245_ModeElementType,
21814     &ett_h245_ModeElement,
21815     &ett_h245_H235Mode,
21816     &ett_h245_T_mediaMode,
21817     &ett_h245_MultiplexedStreamModeParameters,
21818     &ett_h245_RedundancyEncodingDTMode,
21819     &ett_h245_SEQUNCE_OF_RedundancyEncodingDTModeElement,
21820     &ett_h245_RedundancyEncodingDTModeElement,
21821     &ett_h245_Re_type,
21822     &ett_h245_MultiplePayloadStreamMode,
21823     &ett_h245_SEQUNCE_OF_MultiplePayloadStreamElementMode,
21824     &ett_h245_MultiplePayloadStreamElementMode,
21825     &ett_h245_FECMode,
21826     &ett_h245_T_rfc2733Mode,
21827     &ett_h245_FEC_mode,
21828     &ett_h245_H223ModeParameters,
21829     &ett_h245_AdaptationLayerType,
21830     &ett_h245_V76ModeParameters,
21831     &ett_h245_H2250ModeParameters,
21832     &ett_h245_RedundancyEncodingMode,
21833     &ett_h245_T_secondaryEncoding,
21834     &ett_h245_VideoMode,
21835     &ett_h245_H261VideoMode,
21836     &ett_h245_H261Resolution,
21837     &ett_h245_H262VideoMode,
21838     &ett_h245_T_profileAndLevel,
21839     &ett_h245_H263VideoMode,
21840     &ett_h245_H263Resolution,
21841     &ett_h245_IS11172VideoMode,
21842     &ett_h245_AudioMode,
21843     &ett_h245_Mode_g7231,
21844     &ett_h245_IS11172AudioMode,
21845     &ett_h245_T_audioLayer,
21846     &ett_h245_T_audioSampling,
21847     &ett_h245_IS11172_multichannelType,
21848     &ett_h245_IS13818AudioMode,
21849     &ett_h245_IS13818AudioLayer,
21850     &ett_h245_IS13818AudioSampling,
21851     &ett_h245_IS13818MultichannelType,
21852     &ett_h245_G7231AnnexCMode,
21853     &ett_h245_VBDMode,
21854     &ett_h245_DataMode,
21855     &ett_h245_DataModeApplication,
21856     &ett_h245_T38faxApp,
21857     &ett_h245_EncryptionMode,
21858     &ett_h245_RoundTripDelayRequest,
21859     &ett_h245_RoundTripDelayResponse,
21860     &ett_h245_MaintenanceLoopRequest,
21861     &ett_h245_Mlr_type,
21862     &ett_h245_MaintenanceLoopAck,
21863     &ett_h245_Mla_type,
21864     &ett_h245_MaintenanceLoopReject,
21865     &ett_h245_Mlrej_type,
21866     &ett_h245_MaintenanceLoopRejectCause,
21867     &ett_h245_MaintenanceLoopOffCommand,
21868     &ett_h245_CommunicationModeCommand,
21869     &ett_h245_SET_SIZE_1_256_OF_CommunicationModeTableEntry,
21870     &ett_h245_CommunicationModeRequest,
21871     &ett_h245_CommunicationModeResponse,
21872     &ett_h245_CommunicationModeTableEntry,
21873     &ett_h245_T_dataType,
21874     &ett_h245_ConferenceRequest,
21875     &ett_h245_T_requestTerminalCertificate,
21876     &ett_h245_CertSelectionCriteria,
21877     &ett_h245_Criteria,
21878     &ett_h245_TerminalLabel,
21879     &ett_h245_ConferenceResponse,
21880     &ett_h245_T_mCTerminalIDResponse,
21881     &ett_h245_T_terminalIDResponse,
21882     &ett_h245_T_conferenceIDResponse,
21883     &ett_h245_T_passwordResponse,
21884     &ett_h245_SET_SIZE_1_256_OF_TerminalLabel,
21885     &ett_h245_T_makeMeChairResponse,
21886     &ett_h245_T_extensionAddressResponse,
21887     &ett_h245_T_chairTokenOwnerResponse,
21888     &ett_h245_T_terminalCertificateResponse,
21889     &ett_h245_T_broadcastMyLogicalChannelResponse,
21890     &ett_h245_T_makeTerminalBroadcasterResponse,
21891     &ett_h245_T_sendThisSourceResponse,
21892     &ett_h245_RequestAllTerminalIDsResponse,
21893     &ett_h245_SEQUNCE_OF_TerminalInformation,
21894     &ett_h245_TerminalInformation,
21895     &ett_h245_RemoteMCRequest,
21896     &ett_h245_RemoteMCResponse,
21897     &ett_h245_T_reject,
21898     &ett_h245_MultilinkRequest,
21899     &ett_h245_CallInformationReq,
21900     &ett_h245_AddConnectionReq,
21901     &ett_h245_MaximumHeaderIntervalReq,
21902     &ett_h245_T_requestType,
21903     &ett_h245_MultilinkResponse,
21904     &ett_h245_CallInformationResp,
21905     &ett_h245_AddConnectionResp,
21906     &ett_h245_T_responseCode,
21907     &ett_h245_T_rejected,
21908     &ett_h245_MaximumHeaderIntervalResp,
21909     &ett_h245_RemoveConnection,
21910     &ett_h245_MultilinkIndication,
21911     &ett_h245_T_crcDesired,
21912     &ett_h245_T_excessiveError,
21913     &ett_h245_DialingInformation,
21914     &ett_h245_SET_SIZE_1_65535_OF_DialingInformationNumber,
21915     &ett_h245_DialingInformationNumber,
21916     &ett_h245_SET_SIZE_1_255_OF_DialingInformationNetworkType,
21917     &ett_h245_DialingInformationNetworkType,
21918     &ett_h245_ConnectionIdentifier,
21919     &ett_h245_LogicalChannelRateRequest,
21920     &ett_h245_LogicalChannelRateAcknowledge,
21921     &ett_h245_LogicalChannelRateReject,
21922     &ett_h245_LogicalChannelRateRejectReason,
21923     &ett_h245_LogicalChannelRateRelease,
21924     &ett_h245_SendTerminalCapabilitySet,
21925     &ett_h245_T_specificRequest,
21926     &ett_h245_SET_SIZE_1_65535_OF_CapabilityTableEntryNumber,
21927     &ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptorNumber,
21928     &ett_h245_EncryptionCommand,
21929     &ett_h245_T_encryptionAlgorithmID,
21930     &ett_h245_FlowControlCommand,
21931     &ett_h245_Scope,
21932     &ett_h245_Restriction,
21933     &ett_h245_EndSessionCommand,
21934     &ett_h245_T_gstnOptions,
21935     &ett_h245_T_isdnOptions,
21936     &ett_h245_ConferenceCommand,
21937     &ett_h245_SubstituteConferenceIDCommand,
21938     &ett_h245_EncryptionUpdateDirection,
21939     &ett_h245_MiscellaneousCommand,
21940     &ett_h245_Mc_type,
21941     &ett_h245_T_videoFastUpdateGOB,
21942     &ett_h245_T_videoFastUpdateMB,
21943     &ett_h245_T_progressiveRefinementStart,
21944     &ett_h245_T_videoBadMBs,
21945     &ett_h245_SEQUNCE_OF_PictureReference,
21946     &ett_h245_T_lostPartialPicture,
21947     &ett_h245_T_encryptionUpdateCommand,
21948     &ett_h245_T_encryptionUpdateAck,
21949     &ett_h245_RepeatCount,
21950     &ett_h245_KeyProtectionMethod,
21951     &ett_h245_EncryptionUpdateRequest,
21952     &ett_h245_PictureReference,
21953     &ett_h245_H223MultiplexReconfiguration,
21954     &ett_h245_T_h223ModeChange,
21955     &ett_h245_T_h223AnnexADoubleFlag,
21956     &ett_h245_NewATMVCCommand,
21957     &ett_h245_Cmd_aal,
21958     &ett_h245_Cmd_aal1,
21959     &ett_h245_Cmd_clockRecovery,
21960     &ett_h245_Cmd_errorCorrection,
21961     &ett_h245_Cmd_aal5,
21962     &ett_h245_Cmd_multiplex,
21963     &ett_h245_Cmd_reverseParameters,
21964     &ett_h245_CmdR_multiplex,
21965     &ett_h245_MobileMultilinkReconfigurationCommand,
21966     &ett_h245_T_status,
21967     &ett_h245_FunctionNotUnderstood,
21968     &ett_h245_FunctionNotSupported,
21969     &ett_h245_FunctionNotSupportedCause,
21970     &ett_h245_ConferenceIndication,
21971     &ett_h245_TerminalYouAreSeeingInSubPictureNumber,
21972     &ett_h245_VideoIndicateCompose,
21973     &ett_h245_MiscellaneousIndication,
21974     &ett_h245_Mi_type,
21975     &ett_h245_T_videoNotDecodedMBs,
21976     &ett_h245_JitterIndication,
21977     &ett_h245_H223SkewIndication,
21978     &ett_h245_H2250MaximumSkewIndication,
21979     &ett_h245_MCLocationIndication,
21980     &ett_h245_VendorIdentification,
21981     &ett_h245_NewATMVCIndication,
21982     &ett_h245_Ind_aal,
21983     &ett_h245_Ind_aal1,
21984     &ett_h245_Ind_clockRecovery,
21985     &ett_h245_Ind_errorCorrection,
21986     &ett_h245_Ind_aal5,
21987     &ett_h245_Ind_multiplex,
21988     &ett_h245_Ind_reverseParameters,
21989     &ett_h245_IndR_multiplex,
21990     &ett_h245_Params,
21991     &ett_h245_UserInputIndication,
21992     &ett_h245_T_userInputSupportIndication,
21993     &ett_h245_T_signal,
21994     &ett_h245_T_signalUpdate,
21995     &ett_h245_Si_rtp,
21996     &ett_h245_T_extendedAlphanumeric,
21997     &ett_h245_EncryptedAlphanumeric,
21998     &ett_h245_Rtp,
21999     &ett_h245_FlowControlIndication,
22000     &ett_h245_MobileMultilinkReconfigurationIndication,
22001
22002 /*--- End of included file: packet-h245-ettarr.c ---*/
22003
22004   };
22005   module_t *h245_module;
22006
22007   /* Register protocol */
22008   proto_h245 = proto_register_protocol(PNAME, PSNAME, PFNAME);
22009   /* Register fields and subtrees */
22010   proto_register_field_array(proto_h245, hf, array_length(hf));
22011   proto_register_subtree_array(ett, array_length(ett));
22012
22013   /* From Ronnie Sahlbergs original H245 dissector */
22014         
22015   h245_module = prefs_register_protocol(proto_h245, NULL);
22016   prefs_register_bool_preference(h245_module, "reassembly",
22017                 "Reassemble H.245 messages spanning multiple TCP segments",
22018                 "Whether the H.245 dissector should reassemble messages spanning multiple TCP segments."
22019                 " To use this option, you must also enable \"Allow subdissectors to reassemble TCP streams\" in the TCP protocol settings.",
22020                 &h245_reassembly);
22021   prefs_register_bool_preference(h245_module, "shorttypes",
22022                 "Show short message types",
22023                 "Whether the dissector should show short names or the long names from the standard",
22024                 &h245_shorttypes);
22025   register_dissector("h245dg", dissect_h245_h245, proto_h245);
22026   register_dissector("h245", dissect_h245, proto_h245);
22027
22028   nsp_object_dissector_table = register_dissector_table("h245.nsp.object", "H.245 NonStandardParameter (object)", FT_STRING, BASE_NONE);
22029   nsp_h221_dissector_table = register_dissector_table("h245.nsp.h221", "H.245 NonStandardParameter (h221)", FT_UINT32, BASE_HEX);
22030   h245_tap = register_tap("h245");
22031
22032   register_ber_oid_name("0.0.8.239.1.1","itu-t(0) recommendation(0) h(8) h239(239) generic-capabilities(1) h239ControlCapability(1)");
22033   register_ber_oid_name("0.0.8.239.1.2","itu-t(0) recommendation(0) h(8) h239(239) generic-capabilities(1) h239ExtendedVideoCapability(2)");
22034   register_ber_oid_name("0.0.8.239.2","itu-t(0) recommendation(0) h(8) h239(239) generic-message(2)");
22035   register_ber_oid_name("0.0.8.245.0.3","itu-t(0) recommendation(0) h(8) h245(245) version(0) 3");
22036   register_ber_oid_name("0.0.8.245.0.4","itu-t(0) recommendation(0) h(8) h245(245) version(0) 4");
22037   register_ber_oid_name("0.0.8.245.0.5","itu-t(0) recommendation(0) h(8) h245(245) version(0) 5");
22038   register_ber_oid_name("0.0.8.245.0.6","itu-t(0) recommendation(0) h(8) h245(245) version(0) 6");
22039   register_ber_oid_name("0.0.8.245.0.7","itu-t(0) recommendation(0) h(8) h245(245) version(0) 7");
22040   register_ber_oid_name("0.0.8.245.0.8","itu-t(0) recommendation(0) h(8) h245(245) version(0) 8");
22041   register_ber_oid_name("0.0.8.245.0.10","itu-t(0) recommendation(0) h(8) h245(245) version(0) 10");
22042   register_ber_oid_name("0.0.8.245.1.0.0","itu-t(0) recommendation(0) h(8) h245(245) generic-capabilities(1) video (0) ISO/IEC 14496-2 (0)= MPEG-4 video");
22043   register_ber_oid_name("0.0.8.245.1.1.0","itu-t(0) recommendation(0) h(8) h245(245) generic-capabilities(1) audio (1) ISO/IEC 14496-3 (0)= MPEG-4 audio");
22044   register_ber_oid_name("0.0.8.245.1.1.1","itu-t(0) recommendation(0) h(8) h245(245) generic-capabilities(1) audio(1) amr(1)");
22045
22046   register_ber_oid_name("0.0.8.241.0.0.1","itu-t(0) recommendation(0) h(8) h241(241) specificVideoCodecCapabilities(0) h264(0) generic-capabilities(1)");
22047
22048
22049 }
22050
22051
22052 /*--- proto_reg_handoff_h245 ---------------------------------------*/
22053 void proto_reg_handoff_h245(void) {
22054         rtp_handle = find_dissector("rtp");
22055         rtcp_handle = find_dissector("rtcp");
22056
22057         h245_handle=create_dissector_handle(dissect_h245, proto_h245);
22058         dissector_add_handle("tcp.port", h245_handle);
22059         MultimediaSystemControlMessage_handle=create_dissector_handle(dissect_h245_h245, proto_h245);
22060         dissector_add_handle("udp.port", MultimediaSystemControlMessage_handle);
22061 }
22062
22063 static void reset_h245_packet_info(h245_packet_info *pi)
22064 {
22065         if(pi == NULL) {
22066                 return;
22067         }
22068
22069         pi->msg_type = H245_OTHER;
22070 }
22071