ASN.1 dissectors regenerated with new asn2wrs to get updated field blurb
[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 Wireshark dissector compiler   */
3 /* .\packet-h245.c                                                            */
4 /* ../../tools/asn2wrs.py -e -p h245 -c h245.cnf -s packet-h245-template MULTIMEDIA-SYSTEM-CONTROL.asn */
5
6 /* Input file: packet-h245-template.c */
7
8 #line 1 "packet-h245-template.c"
9 /* packet-h245_asn1.c
10  * Routines for h245 packet dissection
11  * Copyright 2004, Anders Broman <anders.broman@ericsson.com>
12  *
13  * $Id$
14  *
15  * Wireshark - Network traffic analyzer
16  * By Gerald Combs <gerald@wireshark.org>
17  * Copyright 1998 Gerald Combs
18  *
19  * This program is free software; you can redistribute it and/or
20  * modify it under the terms of the GNU General Public License
21  * as published by the Free Software Foundation; either version 2
22  * of the License, or (at your option) any later version.
23  *
24  * This program is distributed in the hope that it will be useful,
25  * but WITHOUT ANY WARRANTY; without even the implied warranty of
26  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
27  * GNU General Public License for more details.
28  *
29  * You should have received a copy of the GNU General Public License
30  * along with this program; if not, write to the Free Software
31  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
32  *
33  * To quote the author of the previous H245 dissector:
34  *   "This is a complete replacement of the previous limitied dissector
35  * that Ronnie was crazy enough to write by hand. It was a lot of time
36  * to hack it by hand, but it is incomplete and buggy and it is good when
37  * it will go away."
38  * Ronnie did a great job and all the VoIP users had made good use of it!
39  * Credit to Tomas Kukosa for developing the asn2wrs compiler.
40  *
41  */
42
43 #ifdef HAVE_CONFIG_H
44 # include "config.h"
45 #endif
46
47 #include <glib.h>
48 #include <epan/packet.h>
49 #include <epan/conversation.h>
50
51 #include <stdio.h>
52 #include <string.h>
53
54 #include <epan/prefs.h>
55 #include <epan/t35.h>
56 #include <epan/emem.h>
57 #include <epan/oid_resolv.h>
58 #include "tap.h"
59 #include "packet-tpkt.h"
60 #include "packet-per.h"
61 #include "packet-h245.h"
62 #include "packet-rtp.h"
63 #include "packet-rtcp.h"
64 #include "packet-t38.h"
65
66 #define PNAME  "MULTIMEDIA-SYSTEM-CONTROL"
67 #define PSNAME "H.245"
68 #define PFNAME "h245"
69
70 static dissector_handle_t rtp_handle=NULL;
71 static dissector_handle_t rtcp_handle=NULL;
72 static dissector_handle_t t38_handle=NULL;
73 static dissector_table_t nsp_object_dissector_table;
74 static dissector_table_t nsp_h221_dissector_table;
75 static dissector_handle_t nsp_handle;
76 static dissector_handle_t data_handle;
77 static dissector_handle_t h245_handle;
78 static dissector_handle_t MultimediaSystemControlMessage_handle;
79 static dissector_handle_t h263_handle = NULL;
80 static dissector_handle_t amr_handle = NULL;
81
82 static void init_h245_packet_info(h245_packet_info *pi);
83 static int hf_h245_pdu_type = -1;
84 static int hf_h245Manufacturer = -1;
85 static int h245_tap = -1;
86 static int ett_h245 = -1;
87 static int h245dg_tap = -1;
88 h245_packet_info *h245_pi=NULL;
89
90 static gboolean h245_reassembly = TRUE;
91 static gboolean h245_shorttypes = FALSE;
92 static const value_string h245_RequestMessage_short_vals[] = {
93         {  0,   "NSM" },
94         {  1,   "MSD" },
95         {  2,   "TCS" },
96         {  3,   "OLC" },
97         {  4,   "CLC" },
98         {  5,   "RCC" },
99         {  6,   "MES" },
100         {  7,   "RME" },
101         {  8,   "RM" },
102         {  9,   "RTDR" },
103         { 10,   "MLR" },
104         { 11,   "CMR" },
105         { 12,   "CR" },
106         { 13,   "MR" },
107         { 14,   "LCRR" },
108         { 15,   "GR" },
109         {  0, NULL }
110 };
111 static const value_string h245_ResponseMessage_short_vals[] = {
112         {  0,   "NSM" },
113         {  1,   "MSDAck" },
114         {  2,   "MSDReject" },
115         {  3,   "TCSAck" },
116         {  4,   "TCSReject" },
117         {  5,   "OLCAck" },
118         {  6,   "OLCReject" },
119         {  7,   "CLCAck" },
120         {  8,   "RCCAck" },
121         {  9,   "RCCReject" },
122         { 10,   "MESAck" },
123         { 11,   "MESReject" },
124         { 12,   "RMEAck" },
125         { 13,   "RMEReject" },
126         { 14,   "RMAck" },
127         { 15,   "RMReject" },
128         { 16,   "RTDResponse" },
129         { 17,   "MLAck" },
130         { 18,   "MLReject" },
131         { 19,   "CMResponse" },
132         { 20,   "CResponse" },
133         { 21,   "MResponse" },
134         { 22,   "LCRAck" },
135         { 23,   "LCRReject" },
136         { 24,   "GR" },
137         {  0, NULL }
138 };
139 static const value_string h245_IndicationMessage_short_vals[] = {
140         {  0,   "NSM" },
141         {  1,   "FNU" },
142         {  2,   "MSDRelease" },
143         {  3,   "TCSRelease" },
144         {  4,   "OLCConfirm" },
145         {  5,   "RCCRelease" },
146         {  6,   "MESRelease" },
147         {  7,   "RMERelease" },
148         {  8,   "RMRelease" },
149         {  9,   "MI" },
150         { 10,   "JI" },
151         { 11,   "H223SI" },
152         { 12,   "NATMVCI" },
153         { 13,   "UII" },
154         { 14,   "H2250MSI" },
155         { 15,   "MCLI" },
156         { 16,   "CI" },
157         { 17,   "VI" },
158         { 18,   "FNS" },
159         { 19,   "MultilinkIndication" },
160         { 20,   "LCRRelease" },
161         { 21,   "FCIndication" },
162         { 22,   "MMRI" },
163         { 22,   "GI" },
164         {  0, NULL }
165 };
166 static const value_string h245_CommandMessage_short_vals[] = {
167         {  0,   "NSM" },
168         {  1,   "MLOC" },
169         {  2,   "STCS" },
170         {  3,   "EC" },
171         {  4,   "FCC" },
172         {  5,   "ESC" },
173         {  6,   "MC" },
174         {  7,   "CMC" },
175         {  8,   "CC" },
176         {  9,   "H223MR" },
177         { 10,   "NATMVCC" },
178         { 11,   "MMRC" },
179         { 12,   "GC" },
180         {  0, NULL }
181 };
182 static const value_string h245_AudioCapability_short_vals[] = {
183         {  0, "nonStd" },
184         {  1, "g711A" },
185         {  2, "g711A56k" },
186         {  3, "g711U" },
187         {  4, "g711U56k" },
188         {  5, "g722-64k" },
189         {  6, "g722-56k" },
190         {  7, "g722-48k" },
191         {  8, "g7231" },
192         {  9, "g728" },
193         { 10, "g729" },
194         { 11, "g729A" },
195         { 12, "is11172" },
196         { 13, "is13818" },
197         { 14, "g729B" },
198         { 15, "g729AB" },
199         { 16, "g7231C" },
200         { 17, "gsmFR" },
201         { 18, "gsmHR" },
202         { 19, "gsmEFR" },
203         { 20, "generic" },
204         { 21, "g729Ext" },
205         { 22, "vbd" },
206         { 23, "audioTelEvent" },
207         { 24, "audioTone" },
208         {  0, NULL }
209 };
210
211 /* To put the codec type only in COL_INFO when
212    an OLC is read */
213
214 const char* codec_type = NULL;
215 static const char *standard_oid_str;
216 static guint32 ipv4_address;
217 static guint32 ipv4_port;
218 static guint32 rtcp_ipv4_address;
219 static guint32 rtcp_ipv4_port;
220 static gboolean media_channel;
221 static gboolean media_control_channel;
222
223 /* NonStandardParameter */
224 static const char *nsiOID;
225 static guint32 h221NonStandard;
226 static guint32 t35CountryCode;
227 static guint32 t35Extension;
228 static guint32 manufacturerCode;
229
230 static const value_string h245_RFC_number_vals[] = {
231         {  2190,        "RFC 2190 - H.263 Video Streams" },
232         {  2429,        "RFC 2429 - 1998 Version of ITU-T Rec. H.263 Video (H.263+)" },
233         {  3016,        "RFC 3016 - RTP Payload Format for MPEG-4 Audio/Visual Streams" },
234         {  3267,        "RFC 3267 - Adaptive Multi-Rate (AMR) and Adaptive Multi-Rate Wideband (AMR-WB)" },
235         {  0, NULL }
236 };
237
238 /* h223 multiplex codes */
239 static h223_set_mc_handle_t h223_set_mc_handle = NULL;
240 h223_mux_element *h223_me=NULL;
241 guint8 h223_mc=0;
242 void h245_set_h223_set_mc_handle( h223_set_mc_handle_t handle )
243 {
244         h223_set_mc_handle = handle;
245 }
246
247 /* h223 logical channels */
248 typedef struct {
249         h223_lc_params *fw_channel_params;
250         h223_lc_params *rev_channel_params;
251 } h223_pending_olc;
252
253 static GHashTable*          h223_pending_olc_reqs[] = { NULL, NULL };
254 static dissector_handle_t   h245_lc_dissector;
255 static guint16              h245_lc_temp;
256 static guint16              h223_fw_lc_num;
257 static guint16              h223_rev_lc_num;
258 static h223_lc_params      *h223_lc_params_temp;
259 static h223_lc_params      *h223_fw_lc_params;
260 static h223_lc_params      *h223_rev_lc_params;
261 static h223_add_lc_handle_t h223_add_lc_handle = NULL;
262
263 static void h223_lc_init_dir( int dir )
264 {
265         if ( h223_pending_olc_reqs[dir] )
266                 g_hash_table_destroy( h223_pending_olc_reqs[dir] );
267         h223_pending_olc_reqs[dir] = g_hash_table_new( g_direct_hash, g_direct_equal );
268 }
269
270 static void h223_lc_init( void )
271 {
272         h223_lc_init_dir( P2P_DIR_SENT );
273         h223_lc_init_dir( P2P_DIR_RECV );
274         h223_lc_params_temp = NULL;
275         h245_lc_dissector = NULL;
276         h223_fw_lc_num = 0;
277 }
278
279 void h245_set_h223_add_lc_handle( h223_add_lc_handle_t handle )
280 {
281         h223_add_lc_handle = handle;
282 }
283
284 /* Initialize the protocol and registered fields */
285 int proto_h245 = -1;
286
287 /*--- Included file: packet-h245-hf.c ---*/
288 #line 1 "packet-h245-hf.c"
289 static int hf_h245_OpenLogicalChannel_PDU = -1;   /* OpenLogicalChannel */
290 static int hf_h245_request = -1;                  /* RequestMessage */
291 static int hf_h245_response = -1;                 /* ResponseMessage */
292 static int hf_h245_command = -1;                  /* CommandMessage */
293 static int hf_h245_indication = -1;               /* IndicationMessage */
294 static int hf_h245_nonStandardMsg = -1;           /* NonStandardMessage */
295 static int hf_h245_masterSlaveDetermination = -1;  /* MasterSlaveDetermination */
296 static int hf_h245_terminalCapabilitySet = -1;    /* TerminalCapabilitySet */
297 static int hf_h245_openLogicalChannel = -1;       /* OpenLogicalChannel */
298 static int hf_h245_closeLogicalChannel = -1;      /* CloseLogicalChannel */
299 static int hf_h245_requestChannelClose = -1;      /* RequestChannelClose */
300 static int hf_h245_multiplexEntrySend = -1;       /* MultiplexEntrySend */
301 static int hf_h245_requestMultiplexEntry = -1;    /* RequestMultiplexEntry */
302 static int hf_h245_requestMode = -1;              /* RequestMode */
303 static int hf_h245_roundTripDelayRequest = -1;    /* RoundTripDelayRequest */
304 static int hf_h245_maintenanceLoopRequest = -1;   /* MaintenanceLoopRequest */
305 static int hf_h245_communicationModeRequest = -1;  /* CommunicationModeRequest */
306 static int hf_h245_conferenceRequest = -1;        /* ConferenceRequest */
307 static int hf_h245_multilinkRequest = -1;         /* MultilinkRequest */
308 static int hf_h245_logicalChannelRateRequest = -1;  /* LogicalChannelRateRequest */
309 static int hf_h245_genericRequest = -1;           /* GenericMessage */
310 static int hf_h245_masterSlaveDeterminationAck = -1;  /* MasterSlaveDeterminationAck */
311 static int hf_h245_masterSlaveDeterminationReject = -1;  /* MasterSlaveDeterminationReject */
312 static int hf_h245_terminalCapabilitySetAck = -1;  /* TerminalCapabilitySetAck */
313 static int hf_h245_terminalCapabilitySetReject = -1;  /* TerminalCapabilitySetReject */
314 static int hf_h245_openLogicalChannelAck = -1;    /* OpenLogicalChannelAck */
315 static int hf_h245_openLogicalChannelReject = -1;  /* OpenLogicalChannelReject */
316 static int hf_h245_closeLogicalChannelAck = -1;   /* CloseLogicalChannelAck */
317 static int hf_h245_requestChannelCloseAck = -1;   /* RequestChannelCloseAck */
318 static int hf_h245_requestChannelCloseReject = -1;  /* RequestChannelCloseReject */
319 static int hf_h245_multiplexEntrySendAck = -1;    /* MultiplexEntrySendAck */
320 static int hf_h245_multiplexEntrySendReject = -1;  /* MultiplexEntrySendReject */
321 static int hf_h245_requestMultiplexEntryAck = -1;  /* RequestMultiplexEntryAck */
322 static int hf_h245_requestMultiplexEntryReject = -1;  /* RequestMultiplexEntryReject */
323 static int hf_h245_requestModeAck = -1;           /* RequestModeAck */
324 static int hf_h245_requestModeReject = -1;        /* RequestModeReject */
325 static int hf_h245_roundTripDelayResponse = -1;   /* RoundTripDelayResponse */
326 static int hf_h245_maintenanceLoopAck = -1;       /* MaintenanceLoopAck */
327 static int hf_h245_maintenanceLoopReject = -1;    /* MaintenanceLoopReject */
328 static int hf_h245_communicationModeResponse = -1;  /* CommunicationModeResponse */
329 static int hf_h245_conferenceResponse = -1;       /* ConferenceResponse */
330 static int hf_h245_multilinkResponse = -1;        /* MultilinkResponse */
331 static int hf_h245_logicalChannelRateAcknowledge = -1;  /* LogicalChannelRateAcknowledge */
332 static int hf_h245_logicalChannelRateReject = -1;  /* LogicalChannelRateReject */
333 static int hf_h245_genericResponse = -1;          /* GenericMessage */
334 static int hf_h245_maintenanceLoopOffCommand = -1;  /* MaintenanceLoopOffCommand */
335 static int hf_h245_sendTerminalCapabilitySet = -1;  /* SendTerminalCapabilitySet */
336 static int hf_h245_encryptionCommand = -1;        /* EncryptionCommand */
337 static int hf_h245_flowControlCommand = -1;       /* FlowControlCommand */
338 static int hf_h245_endSessionCommand = -1;        /* EndSessionCommand */
339 static int hf_h245_miscellaneousCommand = -1;     /* MiscellaneousCommand */
340 static int hf_h245_communicationModeCommand = -1;  /* CommunicationModeCommand */
341 static int hf_h245_conferenceCommand = -1;        /* ConferenceCommand */
342 static int hf_h245_h223MultiplexReconfiguration = -1;  /* H223MultiplexReconfiguration */
343 static int hf_h245_newATMVCCommand = -1;          /* NewATMVCCommand */
344 static int hf_h245_mobileMultilinkReconfigurationCommand = -1;  /* MobileMultilinkReconfigurationCommand */
345 static int hf_h245_genericCommand = -1;           /* GenericMessage */
346 static int hf_h245_functionNotUnderstood = -1;    /* FunctionNotUnderstood */
347 static int hf_h245_masterSlaveDeterminationRelease = -1;  /* MasterSlaveDeterminationRelease */
348 static int hf_h245_terminalCapabilitySetRelease = -1;  /* TerminalCapabilitySetRelease */
349 static int hf_h245_openLogicalChannelConfirm = -1;  /* OpenLogicalChannelConfirm */
350 static int hf_h245_requestChannelCloseRelease = -1;  /* RequestChannelCloseRelease */
351 static int hf_h245_multiplexEntrySendRelease = -1;  /* MultiplexEntrySendRelease */
352 static int hf_h245_requestMultiplexEntryRelease = -1;  /* RequestMultiplexEntryRelease */
353 static int hf_h245_requestModeRelease = -1;       /* RequestModeRelease */
354 static int hf_h245_miscellaneousIndication = -1;  /* MiscellaneousIndication */
355 static int hf_h245_jitterIndication = -1;         /* JitterIndication */
356 static int hf_h245_h223SkewIndication = -1;       /* H223SkewIndication */
357 static int hf_h245_newATMVCIndication = -1;       /* NewATMVCIndication */
358 static int hf_h245_userInput = -1;                /* UserInputIndication */
359 static int hf_h245_h2250MaximumSkewIndication = -1;  /* H2250MaximumSkewIndication */
360 static int hf_h245_mcLocationIndication = -1;     /* MCLocationIndication */
361 static int hf_h245_conferenceIndication = -1;     /* ConferenceIndication */
362 static int hf_h245_vendorIdentification = -1;     /* VendorIdentification */
363 static int hf_h245_functionNotSupported = -1;     /* FunctionNotSupported */
364 static int hf_h245_multilinkIndication = -1;      /* MultilinkIndication */
365 static int hf_h245_logicalChannelRateRelease = -1;  /* LogicalChannelRateRelease */
366 static int hf_h245_flowControlIndication = -1;    /* FlowControlIndication */
367 static int hf_h245_mobileMultilinkReconfigurationIndication = -1;  /* MobileMultilinkReconfigurationIndication */
368 static int hf_h245_genericIndication = -1;        /* GenericMessage */
369 static int hf_h245_messageIdentifier = -1;        /* CapabilityIdentifier */
370 static int hf_h245_subMessageIdentifier = -1;     /* T_subMessageIdentifier */
371 static int hf_h245_messageContent = -1;           /* SEQUENCE_OF_GenericParameter */
372 static int hf_h245_messageContent_item = -1;      /* GenericParameter */
373 static int hf_h245_nonStandardData = -1;          /* NonStandardParameter */
374 static int hf_h245_nonStandardIdentifier = -1;    /* NonStandardIdentifier */
375 static int hf_h245_nsd_data = -1;                 /* T_nsd_data */
376 static int hf_h245_object = -1;                   /* T_object */
377 static int hf_h245_h221NonStandardID = -1;        /* H221NonStandardID */
378 static int hf_h245_t35CountryCode = -1;           /* T_t35CountryCode */
379 static int hf_h245_t35Extension = -1;             /* T_t35Extension */
380 static int hf_h245_manufacturerCode = -1;         /* T_manufacturerCode */
381 static int hf_h245_terminalType = -1;             /* INTEGER_0_255 */
382 static int hf_h245_statusDeterminationNumber = -1;  /* INTEGER_0_16777215 */
383 static int hf_h245_decision = -1;                 /* T_decision */
384 static int hf_h245_master = -1;                   /* NULL */
385 static int hf_h245_slave = -1;                    /* NULL */
386 static int hf_h245_msd_rej_cause = -1;            /* MasterSlaveDeterminationRejectCause */
387 static int hf_h245_identicalNumbers = -1;         /* NULL */
388 static int hf_h245_sequenceNumber = -1;           /* SequenceNumber */
389 static int hf_h245_protocolIdentifier = -1;       /* OBJECT_IDENTIFIER */
390 static int hf_h245_multiplexCapability = -1;      /* MultiplexCapability */
391 static int hf_h245_capabilityTable = -1;          /* SET_SIZE_1_256_OF_CapabilityTableEntry */
392 static int hf_h245_capabilityTable_item = -1;     /* CapabilityTableEntry */
393 static int hf_h245_capabilityDescriptors = -1;    /* SET_SIZE_1_256_OF_CapabilityDescriptor */
394 static int hf_h245_capabilityDescriptors_item = -1;  /* CapabilityDescriptor */
395 static int hf_h245_genericInformation = -1;       /* SEQUENCE_OF_GenericInformation */
396 static int hf_h245_genericInformation_item = -1;  /* GenericInformation */
397 static int hf_h245_capabilityTableEntryNumber = -1;  /* CapabilityTableEntryNumber */
398 static int hf_h245_capability = -1;               /* Capability */
399 static int hf_h245_capabilityDescriptorNumber = -1;  /* CapabilityDescriptorNumber */
400 static int hf_h245_simultaneousCapabilities = -1;  /* SET_SIZE_1_256_OF_AlternativeCapabilitySet */
401 static int hf_h245_simultaneousCapabilities_item = -1;  /* AlternativeCapabilitySet */
402 static int hf_h245_AlternativeCapabilitySet_item = -1;  /* CapabilityTableEntryNumber */
403 static int hf_h245_tcs_rej_cause = -1;            /* TerminalCapabilitySetRejectCause */
404 static int hf_h245_unspecified = -1;              /* NULL */
405 static int hf_h245_undefinedTableEntryUsed = -1;  /* NULL */
406 static int hf_h245_descriptorCapacityExceeded = -1;  /* NULL */
407 static int hf_h245_tableEntryCapacityExceeded = -1;  /* T_tableEntryCapacityExceeded */
408 static int hf_h245_highestEntryNumberProcessed = -1;  /* CapabilityTableEntryNumber */
409 static int hf_h245_noneProcessed = -1;            /* NULL */
410 static int hf_h245_nonStandard = -1;              /* NonStandardParameter */
411 static int hf_h245_receiveVideoCapability = -1;   /* VideoCapability */
412 static int hf_h245_transmitVideoCapability = -1;  /* VideoCapability */
413 static int hf_h245_receiveAndTransmitVideoCapability = -1;  /* VideoCapability */
414 static int hf_h245_receiveAudioCapability = -1;   /* AudioCapability */
415 static int hf_h245_transmitAudioCapability = -1;  /* AudioCapability */
416 static int hf_h245_receiveAndTransmitAudioCapability = -1;  /* AudioCapability */
417 static int hf_h245_receiveDataApplicationCapability = -1;  /* DataApplicationCapability */
418 static int hf_h245_transmitDataApplicationCapability = -1;  /* DataApplicationCapability */
419 static int hf_h245_receiveAndTransmitDataApplicationCapability = -1;  /* DataApplicationCapability */
420 static int hf_h245_h233EncryptionTransmitCapability = -1;  /* BOOLEAN */
421 static int hf_h245_h233EncryptionReceiveCapability = -1;  /* T_h233EncryptionReceiveCapability */
422 static int hf_h245_h233IVResponseTime = -1;       /* INTEGER_0_255 */
423 static int hf_h245_conferenceCapability = -1;     /* ConferenceCapability */
424 static int hf_h245_h235SecurityCapability = -1;   /* H235SecurityCapability */
425 static int hf_h245_maxPendingReplacementFor = -1;  /* INTEGER_0_255 */
426 static int hf_h245_receiveUserInputCapability = -1;  /* UserInputCapability */
427 static int hf_h245_transmitUserInputCapability = -1;  /* UserInputCapability */
428 static int hf_h245_receiveAndTransmitUserInputCapability = -1;  /* UserInputCapability */
429 static int hf_h245_genericControlCapability = -1;  /* GenericCapability */
430 static int hf_h245_receiveMultiplexedStreamCapability = -1;  /* MultiplexedStreamCapability */
431 static int hf_h245_transmitMultiplexedStreamCapability = -1;  /* MultiplexedStreamCapability */
432 static int hf_h245_receiveAndTransmitMultiplexedStreamCapability = -1;  /* MultiplexedStreamCapability */
433 static int hf_h245_receiveRTPAudioTelephonyEventCapability = -1;  /* AudioTelephonyEventCapability */
434 static int hf_h245_receiveRTPAudioToneCapability = -1;  /* AudioToneCapability */
435 static int hf_h245_depFecCapability = -1;         /* DepFECCapability */
436 static int hf_h245_multiplePayloadStreamCapability = -1;  /* MultiplePayloadStreamCapability */
437 static int hf_h245_fecCapability = -1;            /* FECCapability */
438 static int hf_h245_redundancyEncodingCap = -1;    /* RedundancyEncodingCapability */
439 static int hf_h245_oneOfCapabilities = -1;        /* AlternativeCapabilitySet */
440 static int hf_h245_encryptionAuthenticationAndIntegrity = -1;  /* EncryptionAuthenticationAndIntegrity */
441 static int hf_h245_mediaCapability = -1;          /* CapabilityTableEntryNumber */
442 static int hf_h245_h222Capability = -1;           /* H222Capability */
443 static int hf_h245_h223Capability = -1;           /* H223Capability */
444 static int hf_h245_v76Capability = -1;            /* V76Capability */
445 static int hf_h245_h2250Capability = -1;          /* H2250Capability */
446 static int hf_h245_genericMultiplexCapability = -1;  /* GenericCapability */
447 static int hf_h245_numberOfVCs = -1;              /* INTEGER_1_256 */
448 static int hf_h245_vcCapability = -1;             /* SET_OF_VCCapability */
449 static int hf_h245_vcCapability_item = -1;        /* VCCapability */
450 static int hf_h245_aal1 = -1;                     /* T_aal1 */
451 static int hf_h245_nullClockRecovery = -1;        /* BOOLEAN */
452 static int hf_h245_srtsClockRecovery_bool = -1;   /* BOOLEAN */
453 static int hf_h245_adaptiveClockRecovery = -1;    /* BOOLEAN */
454 static int hf_h245_nullErrorCorrection = -1;      /* BOOLEAN */
455 static int hf_h245_longInterleaver = -1;          /* BOOLEAN */
456 static int hf_h245_shortInterleaver = -1;         /* BOOLEAN */
457 static int hf_h245_errorCorrectionOnly = -1;      /* BOOLEAN */
458 static int hf_h245_structuredDataTransfer = -1;   /* BOOLEAN */
459 static int hf_h245_partiallyFilledCells = -1;     /* BOOLEAN */
460 static int hf_h245_aal5 = -1;                     /* T_aal5 */
461 static int hf_h245_forwardMaximumSDUSize = -1;    /* INTEGER_0_65535 */
462 static int hf_h245_backwardMaximumSDUSize = -1;   /* INTEGER_0_65535 */
463 static int hf_h245_transportStream_bool = -1;     /* BOOLEAN */
464 static int hf_h245_programStream = -1;            /* BOOLEAN */
465 static int hf_h245_availableBitRates = -1;        /* T_availableBitRates */
466 static int hf_h245_avb_type = -1;                 /* Avb_type */
467 static int hf_h245_singleBitRate = -1;            /* INTEGER_1_65535 */
468 static int hf_h245_rangeOfBitRates = -1;          /* T_rangeOfBitRates */
469 static int hf_h245_lowerBitRate = -1;             /* INTEGER_1_65535 */
470 static int hf_h245_higherBitRate = -1;            /* INTEGER_1_65535 */
471 static int hf_h245_aal1ViaGateway = -1;           /* T_aal1ViaGateway */
472 static int hf_h245_gatewayAddress = -1;           /* SET_SIZE_1_256_OF_Q2931Address */
473 static int hf_h245_gatewayAddress_item = -1;      /* Q2931Address */
474 static int hf_h245_srtsClockRecoveryflag = -1;    /* BOOLEAN */
475 static int hf_h245_transportWithI_frames = -1;    /* BOOLEAN */
476 static int hf_h245_videoWithAL1 = -1;             /* BOOLEAN */
477 static int hf_h245_videoWithAL2 = -1;             /* BOOLEAN */
478 static int hf_h245_videoWithAL3 = -1;             /* BOOLEAN */
479 static int hf_h245_audioWithAL1 = -1;             /* BOOLEAN */
480 static int hf_h245_audioWithAL2 = -1;             /* BOOLEAN */
481 static int hf_h245_audioWithAL3 = -1;             /* BOOLEAN */
482 static int hf_h245_dataWithAL1 = -1;              /* BOOLEAN */
483 static int hf_h245_dataWithAL2 = -1;              /* BOOLEAN */
484 static int hf_h245_dataWithAL3 = -1;              /* BOOLEAN */
485 static int hf_h245_maximumAl2SDUSize = -1;        /* INTEGER_0_65535 */
486 static int hf_h245_maximumAl3SDUSize = -1;        /* INTEGER_0_65535 */
487 static int hf_h245_maximumDelayJitter = -1;       /* INTEGER_0_1023 */
488 static int hf_h245_h223MultiplexTableCapability = -1;  /* T_h223MultiplexTableCapability */
489 static int hf_h245_basic = -1;                    /* NULL */
490 static int hf_h245_enhanced = -1;                 /* T_enhanced */
491 static int hf_h245_maximumNestingDepth = -1;      /* INTEGER_1_15 */
492 static int hf_h245_maximumElementListSize = -1;   /* INTEGER_2_255 */
493 static int hf_h245_maximumSubElementListSize = -1;  /* INTEGER_2_255 */
494 static int hf_h245_maxMUXPDUSizeCapability = -1;  /* BOOLEAN */
495 static int hf_h245_nsrpSupport = -1;              /* BOOLEAN */
496 static int hf_h245_mobileOperationTransmitCapability = -1;  /* T_mobileOperationTransmitCapability */
497 static int hf_h245_modeChangeCapability = -1;     /* BOOLEAN */
498 static int hf_h245_h223AnnexA = -1;               /* BOOLEAN */
499 static int hf_h245_h223AnnexADoubleFlagFlag = -1;  /* BOOLEAN */
500 static int hf_h245_h223AnnexB = -1;               /* BOOLEAN */
501 static int hf_h245_h223AnnexBwithHeader = -1;     /* BOOLEAN */
502 static int hf_h245_h223AnnexCCapability = -1;     /* H223AnnexCCapability */
503 static int hf_h245_bitRate_1_19200 = -1;          /* INTEGER_1_19200 */
504 static int hf_h245_mobileMultilinkFrameCapability = -1;  /* T_mobileMultilinkFrameCapability */
505 static int hf_h245_maximumSampleSize = -1;        /* INTEGER_1_255 */
506 static int hf_h245_maximumPayloadLength = -1;     /* INTEGER_1_65025 */
507 static int hf_h245_videoWithAL1M = -1;            /* BOOLEAN */
508 static int hf_h245_videoWithAL2M = -1;            /* BOOLEAN */
509 static int hf_h245_videoWithAL3M = -1;            /* BOOLEAN */
510 static int hf_h245_audioWithAL1M = -1;            /* BOOLEAN */
511 static int hf_h245_audioWithAL2M = -1;            /* BOOLEAN */
512 static int hf_h245_audioWithAL3M = -1;            /* BOOLEAN */
513 static int hf_h245_dataWithAL1M = -1;             /* BOOLEAN */
514 static int hf_h245_dataWithAL2M = -1;             /* BOOLEAN */
515 static int hf_h245_dataWithAL3M = -1;             /* BOOLEAN */
516 static int hf_h245_alpduInterleaving = -1;        /* BOOLEAN */
517 static int hf_h245_maximumAL1MPDUSize = -1;       /* INTEGER_0_65535 */
518 static int hf_h245_maximumAL2MSDUSize = -1;       /* INTEGER_0_65535 */
519 static int hf_h245_maximumAL3MSDUSize = -1;       /* INTEGER_0_65535 */
520 static int hf_h245_rsCodeCapability = -1;         /* BOOLEAN */
521 static int hf_h245_suspendResumeCapabilitywAddress = -1;  /* BOOLEAN */
522 static int hf_h245_suspendResumeCapabilitywoAddress = -1;  /* BOOLEAN */
523 static int hf_h245_rejCapability = -1;            /* BOOLEAN */
524 static int hf_h245_sREJCapability = -1;           /* BOOLEAN */
525 static int hf_h245_mREJCapability = -1;           /* BOOLEAN */
526 static int hf_h245_crc8bitCapability = -1;        /* BOOLEAN */
527 static int hf_h245_crc16bitCapability = -1;       /* BOOLEAN */
528 static int hf_h245_crc32bitCapability = -1;       /* BOOLEAN */
529 static int hf_h245_uihCapability = -1;            /* BOOLEAN */
530 static int hf_h245_numOfDLCS = -1;                /* INTEGER_2_8191 */
531 static int hf_h245_twoOctetAddressFieldCapability = -1;  /* BOOLEAN */
532 static int hf_h245_loopBackTestCapability = -1;   /* BOOLEAN */
533 static int hf_h245_n401Capability = -1;           /* INTEGER_1_4095 */
534 static int hf_h245_maxWindowSizeCapability = -1;  /* INTEGER_1_127 */
535 static int hf_h245_v75Capability = -1;            /* V75Capability */
536 static int hf_h245_audioHeader = -1;              /* BOOLEAN */
537 static int hf_h245_maximumAudioDelayJitter = -1;  /* INTEGER_0_1023 */
538 static int hf_h245_receiveMultipointCapability = -1;  /* MultipointCapability */
539 static int hf_h245_transmitMultipointCapability = -1;  /* MultipointCapability */
540 static int hf_h245_receiveAndTransmitMultipointCapability = -1;  /* MultipointCapability */
541 static int hf_h245_mcCapability = -1;             /* T_mcCapability */
542 static int hf_h245_centralizedConferenceMC = -1;  /* BOOLEAN */
543 static int hf_h245_decentralizedConferenceMC = -1;  /* BOOLEAN */
544 static int hf_h245_rtcpVideoControlCapability = -1;  /* BOOLEAN */
545 static int hf_h245_mediaPacketizationCapability = -1;  /* MediaPacketizationCapability */
546 static int hf_h245_transportCapability = -1;      /* TransportCapability */
547 static int hf_h245_redundancyEncodingCapability = -1;  /* SEQUENCE_SIZE_1_256_OF_RedundancyEncodingCapability */
548 static int hf_h245_redundancyEncodingCapability_item = -1;  /* RedundancyEncodingCapability */
549 static int hf_h245_logicalChannelSwitchingCapability = -1;  /* BOOLEAN */
550 static int hf_h245_t120DynamicPortCapability = -1;  /* BOOLEAN */
551 static int hf_h245_h261aVideoPacketization = -1;  /* BOOLEAN */
552 static int hf_h245_rtpPayloadTypes = -1;          /* SEQUENCE_SIZE_1_256_OF_RTPPayloadType */
553 static int hf_h245_rtpPayloadTypes_item = -1;     /* RTPPayloadType */
554 static int hf_h245_qosMode = -1;                  /* QOSMode */
555 static int hf_h245_tokenRate = -1;                /* INTEGER_1_4294967295 */
556 static int hf_h245_bucketSize = -1;               /* INTEGER_1_4294967295 */
557 static int hf_h245_peakRate = -1;                 /* INTEGER_1_4294967295 */
558 static int hf_h245_minPoliced = -1;               /* INTEGER_1_4294967295 */
559 static int hf_h245_maxPktSize = -1;               /* INTEGER_1_4294967295 */
560 static int hf_h245_guaranteedQOS = -1;            /* NULL */
561 static int hf_h245_controlledLoad = -1;           /* NULL */
562 static int hf_h245_maxNTUSize = -1;               /* INTEGER_0_65535 */
563 static int hf_h245_atmUBR = -1;                   /* BOOLEAN */
564 static int hf_h245_atmrtVBR = -1;                 /* BOOLEAN */
565 static int hf_h245_atmnrtVBR = -1;                /* BOOLEAN */
566 static int hf_h245_atmABR = -1;                   /* BOOLEAN */
567 static int hf_h245_atmCBR = -1;                   /* BOOLEAN */
568 static int hf_h245_nonStandardParameter = -1;     /* NonStandardParameter */
569 static int hf_h245_servicePrioritySignalled = -1;  /* BOOLEAN */
570 static int hf_h245_servicePriorityValue = -1;     /* ServicePriorityValue */
571 static int hf_h245_desired = -1;                  /* NULL */
572 static int hf_h245_required = -1;                 /* NULL */
573 static int hf_h245_class0 = -1;                   /* NULL */
574 static int hf_h245_class1 = -1;                   /* NULL */
575 static int hf_h245_class2 = -1;                   /* NULL */
576 static int hf_h245_class3 = -1;                   /* NULL */
577 static int hf_h245_class4 = -1;                   /* NULL */
578 static int hf_h245_class5 = -1;                   /* NULL */
579 static int hf_h245_qosType = -1;                  /* QOSType */
580 static int hf_h245_qosClass = -1;                 /* QOSClass */
581 static int hf_h245_averageRate = -1;              /* INTEGER_1_4294967295 */
582 static int hf_h245_burst = -1;                    /* INTEGER_1_4294967295 */
583 static int hf_h245_rsvpParameters = -1;           /* RSVPParameters */
584 static int hf_h245_atmParameters = -1;            /* ATMParameters */
585 static int hf_h245_localQoS = -1;                 /* BOOLEAN */
586 static int hf_h245_genericTransportParameters = -1;  /* GenericTransportParameters */
587 static int hf_h245_servicePriority = -1;          /* ServicePriority */
588 static int hf_h245_authorizationParameter = -1;   /* AuthorizationParameters */
589 static int hf_h245_qosDescriptor = -1;            /* QOSDescriptor */
590 static int hf_h245_dscpValue = -1;                /* INTEGER_0_63 */
591 static int hf_h245_ip_UDP = -1;                   /* NULL */
592 static int hf_h245_ip_TCP = -1;                   /* NULL */
593 static int hf_h245_atm_AAL5_UNIDIR = -1;          /* NULL */
594 static int hf_h245_atm_AAL5_BIDIR = -1;           /* NULL */
595 static int hf_h245_atm_AAL5_compressed = -1;      /* T_atm_AAL5_compressed */
596 static int hf_h245_variable_delta = -1;           /* BOOLEAN */
597 static int hf_h245_mediaTransport = -1;           /* MediaTransportType */
598 static int hf_h245_qOSCapabilities = -1;          /* SEQUENCE_SIZE_1_256_OF_QOSCapability */
599 static int hf_h245_qOSCapabilities_item = -1;     /* QOSCapability */
600 static int hf_h245_mediaChannelCapabilities = -1;  /* SEQUENCE_SIZE_1_256_OF_MediaChannelCapability */
601 static int hf_h245_mediaChannelCapabilities_item = -1;  /* MediaChannelCapability */
602 static int hf_h245_redundancyEncodingMethod = -1;  /* RedundancyEncodingMethod */
603 static int hf_h245_primaryEncoding = -1;          /* CapabilityTableEntryNumber */
604 static int hf_h245_secondaryEncodingCapability = -1;  /* SEQUENCE_SIZE_1_256_OF_CapabilityTableEntryNumber */
605 static int hf_h245_secondaryEncodingCapability_item = -1;  /* CapabilityTableEntryNumber */
606 static int hf_h245_rtpAudioRedundancyEncoding = -1;  /* NULL */
607 static int hf_h245_rtpH263VideoRedundancyEncoding = -1;  /* RTPH263VideoRedundancyEncoding */
608 static int hf_h245_numberOfThreads = -1;          /* INTEGER_1_16 */
609 static int hf_h245_framesBetweenSyncPoints = -1;  /* INTEGER_1_256 */
610 static int hf_h245_frameToThreadMapping = -1;     /* T_frameToThreadMapping */
611 static int hf_h245_roundrobin = -1;               /* NULL */
612 static int hf_h245_custom = -1;                   /* SEQUENCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping */
613 static int hf_h245_custom_item = -1;              /* RTPH263VideoRedundancyFrameMapping */
614 static int hf_h245_containedThreads = -1;         /* T_containedThreads */
615 static int hf_h245_containedThreads_item = -1;    /* INTEGER_0_15 */
616 static int hf_h245_threadNumber = -1;             /* INTEGER_0_15 */
617 static int hf_h245_frameSequence = -1;            /* T_frameSequence */
618 static int hf_h245_frameSequence_item = -1;       /* INTEGER_0_255 */
619 static int hf_h245_multicastCapability = -1;      /* BOOLEAN */
620 static int hf_h245_multiUniCastConference = -1;   /* BOOLEAN */
621 static int hf_h245_mediaDistributionCapability = -1;  /* SEQUENCE_OF_MediaDistributionCapability */
622 static int hf_h245_mediaDistributionCapability_item = -1;  /* MediaDistributionCapability */
623 static int hf_h245_centralizedControl = -1;       /* BOOLEAN */
624 static int hf_h245_distributedControl = -1;       /* BOOLEAN */
625 static int hf_h245_centralizedAudio = -1;         /* BOOLEAN */
626 static int hf_h245_distributedAudio = -1;         /* BOOLEAN */
627 static int hf_h245_centralizedVideo = -1;         /* BOOLEAN */
628 static int hf_h245_distributedVideo = -1;         /* BOOLEAN */
629 static int hf_h245_centralizedData = -1;          /* SEQUENCE_OF_DataApplicationCapability */
630 static int hf_h245_centralizedData_item = -1;     /* DataApplicationCapability */
631 static int hf_h245_distributedData = -1;          /* SEQUENCE_OF_DataApplicationCapability */
632 static int hf_h245_distributedData_item = -1;     /* DataApplicationCapability */
633 static int hf_h245_h261VideoCapability = -1;      /* H261VideoCapability */
634 static int hf_h245_h262VideoCapability = -1;      /* H262VideoCapability */
635 static int hf_h245_h263VideoCapability = -1;      /* H263VideoCapability */
636 static int hf_h245_is11172VideoCapability = -1;   /* IS11172VideoCapability */
637 static int hf_h245_genericVideoCapability = -1;   /* GenericCapability */
638 static int hf_h245_extendedVideoCapability = -1;  /* ExtendedVideoCapability */
639 static int hf_h245_videoCapability = -1;          /* SEQUENCE_OF_VideoCapability */
640 static int hf_h245_videoCapability_item = -1;     /* VideoCapability */
641 static int hf_h245_videoCapabilityExtension = -1;  /* SEQUENCE_OF_GenericCapability */
642 static int hf_h245_videoCapabilityExtension_item = -1;  /* GenericCapability */
643 static int hf_h245_qcifMPI_1_4 = -1;              /* INTEGER_1_4 */
644 static int hf_h245_cifMPI_1_4 = -1;               /* INTEGER_1_4 */
645 static int hf_h245_temporalSpatialTradeOffCapability = -1;  /* BOOLEAN */
646 static int hf_h245_maxBitRate_1_19200 = -1;       /* INTEGER_1_19200 */
647 static int hf_h245_stillImageTransmission = -1;   /* BOOLEAN */
648 static int hf_h245_videoBadMBsCap = -1;           /* BOOLEAN */
649 static int hf_h245_profileAndLevel_SPatML = -1;   /* BOOLEAN */
650 static int hf_h245_profileAndLevel_MPatLL = -1;   /* BOOLEAN */
651 static int hf_h245_profileAndLevel_MPatML = -1;   /* BOOLEAN */
652 static int hf_h245_profileAndLevel_MPatH_14 = -1;  /* BOOLEAN */
653 static int hf_h245_profileAndLevel_MPatHL = -1;   /* BOOLEAN */
654 static int hf_h245_profileAndLevel_SNRatLL = -1;  /* BOOLEAN */
655 static int hf_h245_profileAndLevel_SNRatML = -1;  /* BOOLEAN */
656 static int hf_h245_profileAndLevel_SpatialatH_14 = -1;  /* BOOLEAN */
657 static int hf_h245_profileAndLevel_HPatML = -1;   /* BOOLEAN */
658 static int hf_h245_profileAndLevel_HPatH_14 = -1;  /* BOOLEAN */
659 static int hf_h245_profileAndLevel_HPatHL = -1;   /* BOOLEAN */
660 static int hf_h245_videoBitRate = -1;             /* INTEGER_0_1073741823 */
661 static int hf_h245_vbvBufferSize = -1;            /* INTEGER_0_262143 */
662 static int hf_h245_samplesPerLine = -1;           /* INTEGER_0_16383 */
663 static int hf_h245_linesPerFrame = -1;            /* INTEGER_0_16383 */
664 static int hf_h245_framesPerSecond = -1;          /* INTEGER_0_15 */
665 static int hf_h245_luminanceSampleRate = -1;      /* INTEGER_0_4294967295 */
666 static int hf_h245_sqcifMPI_1_32 = -1;            /* INTEGER_1_32 */
667 static int hf_h245_qcifMPI = -1;                  /* INTEGER_1_32 */
668 static int hf_h245_cifMPI = -1;                   /* INTEGER_1_32 */
669 static int hf_h245_cif4MPI_1_32 = -1;             /* INTEGER_1_32 */
670 static int hf_h245_cif16MPI_1_32 = -1;            /* INTEGER_1_32 */
671 static int hf_h245_maxBitRate = -1;               /* INTEGER_1_192400 */
672 static int hf_h245_unrestrictedVector = -1;       /* BOOLEAN */
673 static int hf_h245_arithmeticCoding = -1;         /* BOOLEAN */
674 static int hf_h245_advancedPrediction = -1;       /* BOOLEAN */
675 static int hf_h245_pbFrames = -1;                 /* BOOLEAN */
676 static int hf_h245_hrd_B = -1;                    /* INTEGER_0_524287 */
677 static int hf_h245_bppMaxKb = -1;                 /* INTEGER_0_65535 */
678 static int hf_h245_slowSqcifMPI = -1;             /* INTEGER_1_3600 */
679 static int hf_h245_slowQcifMPI = -1;              /* INTEGER_1_3600 */
680 static int hf_h245_slowCifMPI = -1;               /* INTEGER_1_3600 */
681 static int hf_h245_slowCif4MPI = -1;              /* INTEGER_1_3600 */
682 static int hf_h245_slowCif16MPI = -1;             /* INTEGER_1_3600 */
683 static int hf_h245_errorCompensation = -1;        /* BOOLEAN */
684 static int hf_h245_enhancementLayerInfo = -1;     /* EnhancementLayerInfo */
685 static int hf_h245_h263Options = -1;              /* H263Options */
686 static int hf_h245_baseBitRateConstrained = -1;   /* BOOLEAN */
687 static int hf_h245_snrEnhancement = -1;           /* SET_SIZE_1_14_OF_EnhancementOptions */
688 static int hf_h245_snrEnhancement_item = -1;      /* EnhancementOptions */
689 static int hf_h245_spatialEnhancement = -1;       /* SET_SIZE_1_14_OF_EnhancementOptions */
690 static int hf_h245_spatialEnhancement_item = -1;  /* EnhancementOptions */
691 static int hf_h245_bPictureEnhancement = -1;      /* SET_SIZE_1_14_OF_BEnhancementParameters */
692 static int hf_h245_bPictureEnhancement_item = -1;  /* BEnhancementParameters */
693 static int hf_h245_enhancementOptions = -1;       /* EnhancementOptions */
694 static int hf_h245_numberOfBPictures = -1;        /* INTEGER_1_64 */
695 static int hf_h245_advancedIntraCodingMode = -1;  /* BOOLEAN */
696 static int hf_h245_deblockingFilterMode = -1;     /* BOOLEAN */
697 static int hf_h245_improvedPBFramesMode = -1;     /* BOOLEAN */
698 static int hf_h245_unlimitedMotionVectors = -1;   /* BOOLEAN */
699 static int hf_h245_fullPictureFreeze = -1;        /* BOOLEAN */
700 static int hf_h245_partialPictureFreezeAndRelease = -1;  /* BOOLEAN */
701 static int hf_h245_resizingPartPicFreezeAndRelease = -1;  /* BOOLEAN */
702 static int hf_h245_fullPictureSnapshot = -1;      /* BOOLEAN */
703 static int hf_h245_partialPictureSnapshot = -1;   /* BOOLEAN */
704 static int hf_h245_videoSegmentTagging = -1;      /* BOOLEAN */
705 static int hf_h245_progressiveRefinement = -1;    /* BOOLEAN */
706 static int hf_h245_dynamicPictureResizingByFour = -1;  /* BOOLEAN */
707 static int hf_h245_dynamicPictureResizingSixteenthPel = -1;  /* BOOLEAN */
708 static int hf_h245_dynamicWarpingHalfPel = -1;    /* BOOLEAN */
709 static int hf_h245_dynamicWarpingSixteenthPel = -1;  /* BOOLEAN */
710 static int hf_h245_independentSegmentDecoding = -1;  /* BOOLEAN */
711 static int hf_h245_slicesInOrder_NonRect = -1;    /* BOOLEAN */
712 static int hf_h245_slicesInOrder_Rect = -1;       /* BOOLEAN */
713 static int hf_h245_slicesNoOrder_NonRect = -1;    /* BOOLEAN */
714 static int hf_h245_slicesNoOrder_Rect = -1;       /* BOOLEAN */
715 static int hf_h245_alternateInterVLCMode = -1;    /* BOOLEAN */
716 static int hf_h245_modifiedQuantizationMode = -1;  /* BOOLEAN */
717 static int hf_h245_reducedResolutionUpdate = -1;  /* BOOLEAN */
718 static int hf_h245_transparencyParameters = -1;   /* TransparencyParameters */
719 static int hf_h245_separateVideoBackChannel = -1;  /* BOOLEAN */
720 static int hf_h245_refPictureSelection = -1;      /* RefPictureSelection */
721 static int hf_h245_customPictureClockFrequency = -1;  /* SET_SIZE_1_16_OF_CustomPictureClockFrequency */
722 static int hf_h245_customPictureClockFrequency_item = -1;  /* CustomPictureClockFrequency */
723 static int hf_h245_customPictureFormat = -1;      /* SET_SIZE_1_16_OF_CustomPictureFormat */
724 static int hf_h245_customPictureFormat_item = -1;  /* CustomPictureFormat */
725 static int hf_h245_modeCombos = -1;               /* SET_SIZE_1_16_OF_H263VideoModeCombos */
726 static int hf_h245_modeCombos_item = -1;          /* H263VideoModeCombos */
727 static int hf_h245_h263Version3Options = -1;      /* H263Version3Options */
728 static int hf_h245_presentationOrder = -1;        /* INTEGER_1_256 */
729 static int hf_h245_offset_x = -1;                 /* INTEGER_M262144_262143 */
730 static int hf_h245_offset_y = -1;                 /* INTEGER_M262144_262143 */
731 static int hf_h245_scale_x = -1;                  /* INTEGER_1_255 */
732 static int hf_h245_scale_y = -1;                  /* INTEGER_1_255 */
733 static int hf_h245_additionalPictureMemory = -1;  /* T_additionalPictureMemory */
734 static int hf_h245_sqcifAdditionalPictureMemory = -1;  /* INTEGER_1_256 */
735 static int hf_h245_qcifAdditionalPictureMemory = -1;  /* INTEGER_1_256 */
736 static int hf_h245_cifAdditionalPictureMemory = -1;  /* INTEGER_1_256 */
737 static int hf_h245_cif4AdditionalPictureMemory = -1;  /* INTEGER_1_256 */
738 static int hf_h245_cif16AdditionalPictureMemory = -1;  /* INTEGER_1_256 */
739 static int hf_h245_bigCpfAdditionalPictureMemory = -1;  /* INTEGER_1_256 */
740 static int hf_h245_videoMux = -1;                 /* BOOLEAN */
741 static int hf_h245_videoBackChannelSend = -1;     /* T_videoBackChannelSend */
742 static int hf_h245_none = -1;                     /* NULL */
743 static int hf_h245_ackMessageOnly = -1;           /* NULL */
744 static int hf_h245_nackMessageOnly = -1;          /* NULL */
745 static int hf_h245_ackOrNackMessageOnly = -1;     /* NULL */
746 static int hf_h245_ackAndNackMessage = -1;        /* NULL */
747 static int hf_h245_enhancedReferencePicSelect = -1;  /* T_enhancedReferencePicSelect */
748 static int hf_h245_subPictureRemovalParameters = -1;  /* T_subPictureRemovalParameters */
749 static int hf_h245_mpuHorizMBs = -1;              /* INTEGER_1_128 */
750 static int hf_h245_mpuVertMBs = -1;               /* INTEGER_1_72 */
751 static int hf_h245_mpuTotalNumber = -1;           /* INTEGER_1_65536 */
752 static int hf_h245_clockConversionCode = -1;      /* INTEGER_1000_1001 */
753 static int hf_h245_clockDivisor = -1;             /* INTEGER_1_127 */
754 static int hf_h245_sqcifMPI = -1;                 /* INTEGER_1_2048 */
755 static int hf_h245_qcifMPI_1_2048 = -1;           /* INTEGER_1_2048 */
756 static int hf_h245_cifMPI2_1_2048 = -1;           /* INTEGER_1_2048 */
757 static int hf_h245_cif4MPI = -1;                  /* INTEGER_1_2048 */
758 static int hf_h245_cif16MPI = -1;                 /* INTEGER_1_2048 */
759 static int hf_h245_maxCustomPictureWidth = -1;    /* INTEGER_1_2048 */
760 static int hf_h245_maxCustomPictureHeight = -1;   /* INTEGER_1_2048 */
761 static int hf_h245_minCustomPictureWidth = -1;    /* INTEGER_1_2048 */
762 static int hf_h245_minCustomPictureHeight = -1;   /* INTEGER_1_2048 */
763 static int hf_h245_mPI = -1;                      /* T_mPI */
764 static int hf_h245_standardMPI = -1;              /* INTEGER_1_31 */
765 static int hf_h245_customPCF = -1;                /* T_customPCF */
766 static int hf_h245_customPCF_item = -1;           /* T_customPCF_item */
767 static int hf_h245_customMPI = -1;                /* INTEGER_1_2048 */
768 static int hf_h245_pixelAspectInformation = -1;   /* T_pixelAspectInformation */
769 static int hf_h245_anyPixelAspectRatio = -1;      /* BOOLEAN */
770 static int hf_h245_pixelAspectCode = -1;          /* T_pixelAspectCode */
771 static int hf_h245_pixelAspectCode_item = -1;     /* INTEGER_1_14 */
772 static int hf_h245_extendedPAR = -1;              /* T_extendedPAR */
773 static int hf_h245_extendedPAR_item = -1;         /* T_extendedPAR_item */
774 static int hf_h245_width = -1;                    /* INTEGER_1_255 */
775 static int hf_h245_height = -1;                   /* INTEGER_1_255 */
776 static int hf_h245_h263VideoUncoupledModes = -1;  /* H263ModeComboFlags */
777 static int hf_h245_h263VideoCoupledModes = -1;    /* SET_SIZE_1_16_OF_H263ModeComboFlags */
778 static int hf_h245_h263VideoCoupledModes_item = -1;  /* H263ModeComboFlags */
779 static int hf_h245_referencePicSelect = -1;       /* BOOLEAN */
780 static int hf_h245_enhancedReferencePicSelectBool = -1;  /* BOOLEAN */
781 static int hf_h245_dataPartitionedSlices = -1;    /* BOOLEAN */
782 static int hf_h245_fixedPointIDCT0 = -1;          /* BOOLEAN */
783 static int hf_h245_interlacedFields = -1;         /* BOOLEAN */
784 static int hf_h245_currentPictureHeaderRepetition = -1;  /* BOOLEAN */
785 static int hf_h245_previousPictureHeaderRepetition = -1;  /* BOOLEAN */
786 static int hf_h245_nextPictureHeaderRepetition = -1;  /* BOOLEAN */
787 static int hf_h245_pictureNumberBoolean = -1;     /* BOOLEAN */
788 static int hf_h245_spareReferencePictures = -1;   /* BOOLEAN */
789 static int hf_h245_constrainedBitstream = -1;     /* BOOLEAN */
790 static int hf_h245_pictureRate = -1;              /* INTEGER_0_15 */
791 static int hf_h245_g711Alaw64k = -1;              /* INTEGER_1_256 */
792 static int hf_h245_g711Alaw56k = -1;              /* INTEGER_1_256 */
793 static int hf_h245_g711Ulaw64k = -1;              /* INTEGER_1_256 */
794 static int hf_h245_g711Ulaw56k = -1;              /* INTEGER_1_256 */
795 static int hf_h245_g722_64k = -1;                 /* INTEGER_1_256 */
796 static int hf_h245_g722_56k = -1;                 /* INTEGER_1_256 */
797 static int hf_h245_g722_48k = -1;                 /* INTEGER_1_256 */
798 static int hf_h245_g7231 = -1;                    /* T_g7231 */
799 static int hf_h245_maxAl_sduAudioFrames = -1;     /* INTEGER_1_256 */
800 static int hf_h245_silenceSuppression = -1;       /* BOOLEAN */
801 static int hf_h245_g728 = -1;                     /* INTEGER_1_256 */
802 static int hf_h245_g729 = -1;                     /* INTEGER_1_256 */
803 static int hf_h245_g729AnnexA = -1;               /* INTEGER_1_256 */
804 static int hf_h245_is11172AudioCapability = -1;   /* IS11172AudioCapability */
805 static int hf_h245_is13818AudioCapability = -1;   /* IS13818AudioCapability */
806 static int hf_h245_g729wAnnexB = -1;              /* INTEGER_1_256 */
807 static int hf_h245_g729AnnexAwAnnexB = -1;        /* INTEGER_1_256 */
808 static int hf_h245_g7231AnnexCCapability = -1;    /* G7231AnnexCCapability */
809 static int hf_h245_gsmFullRate = -1;              /* GSMAudioCapability */
810 static int hf_h245_gsmHalfRate = -1;              /* GSMAudioCapability */
811 static int hf_h245_gsmEnhancedFullRate = -1;      /* GSMAudioCapability */
812 static int hf_h245_genericAudioCapability = -1;   /* GenericCapability */
813 static int hf_h245_g729Extensions = -1;           /* G729Extensions */
814 static int hf_h245_vbd = -1;                      /* VBDCapability */
815 static int hf_h245_audioTelephonyEvent = -1;      /* NoPTAudioTelephonyEventCapability */
816 static int hf_h245_audioTone = -1;                /* NoPTAudioToneCapability */
817 static int hf_h245_audioUnit = -1;                /* INTEGER_1_256 */
818 static int hf_h245_annexA = -1;                   /* BOOLEAN */
819 static int hf_h245_annexB = -1;                   /* BOOLEAN */
820 static int hf_h245_annexD = -1;                   /* BOOLEAN */
821 static int hf_h245_annexE = -1;                   /* BOOLEAN */
822 static int hf_h245_annexF = -1;                   /* BOOLEAN */
823 static int hf_h245_annexG = -1;                   /* BOOLEAN */
824 static int hf_h245_annexH = -1;                   /* BOOLEAN */
825 static int hf_h245_highRateMode0 = -1;            /* INTEGER_27_78 */
826 static int hf_h245_highRateMode1 = -1;            /* INTEGER_27_78 */
827 static int hf_h245_lowRateMode0 = -1;             /* INTEGER_23_66 */
828 static int hf_h245_lowRateMode1 = -1;             /* INTEGER_23_66 */
829 static int hf_h245_sidMode0 = -1;                 /* INTEGER_6_17 */
830 static int hf_h245_sidMode1 = -1;                 /* INTEGER_6_17 */
831 static int hf_h245_g723AnnexCAudioMode = -1;      /* G723AnnexCAudioMode */
832 static int hf_h245_audioLayer1 = -1;              /* BOOLEAN */
833 static int hf_h245_audioLayer2 = -1;              /* BOOLEAN */
834 static int hf_h245_audioLayer3 = -1;              /* BOOLEAN */
835 static int hf_h245_audioSampling32k = -1;         /* BOOLEAN */
836 static int hf_h245_audioSampling44k1 = -1;        /* BOOLEAN */
837 static int hf_h245_audioSampling48k = -1;         /* BOOLEAN */
838 static int hf_h245_singleChannel = -1;            /* BOOLEAN */
839 static int hf_h245_twoChannels = -1;              /* BOOLEAN */
840 static int hf_h245_bitRate_1_448 = -1;            /* INTEGER_1_448 */
841 static int hf_h245_audioSampling16k = -1;         /* BOOLEAN */
842 static int hf_h245_audioSampling22k05 = -1;       /* BOOLEAN */
843 static int hf_h245_audioSampling24k = -1;         /* BOOLEAN */
844 static int hf_h245_threeChannels2_1 = -1;         /* BOOLEAN */
845 static int hf_h245_threeChannels3_0 = -1;         /* BOOLEAN */
846 static int hf_h245_fourChannels2_0_2_0 = -1;      /* BOOLEAN */
847 static int hf_h245_fourChannels2_2 = -1;          /* BOOLEAN */
848 static int hf_h245_fourChannels3_1 = -1;          /* BOOLEAN */
849 static int hf_h245_fiveChannels3_0_2_0 = -1;      /* BOOLEAN */
850 static int hf_h245_fiveChannels3_2 = -1;          /* BOOLEAN */
851 static int hf_h245_lowFrequencyEnhancement = -1;  /* BOOLEAN */
852 static int hf_h245_multilingual = -1;             /* BOOLEAN */
853 static int hf_h245_bitRate2_1_1130 = -1;          /* INTEGER_1_1130 */
854 static int hf_h245_audioUnitSize = -1;            /* INTEGER_1_256 */
855 static int hf_h245_comfortNoise = -1;             /* BOOLEAN */
856 static int hf_h245_scrambled = -1;                /* BOOLEAN */
857 static int hf_h245_vbd_cap_type = -1;             /* AudioCapability */
858 static int hf_h245_t120 = -1;                     /* DataProtocolCapability */
859 static int hf_h245_dsm_cc = -1;                   /* DataProtocolCapability */
860 static int hf_h245_userData = -1;                 /* DataProtocolCapability */
861 static int hf_h245_t84 = -1;                      /* T_t84 */
862 static int hf_h245_t84Protocol = -1;              /* DataProtocolCapability */
863 static int hf_h245_t84Profile = -1;               /* T84Profile */
864 static int hf_h245_t434 = -1;                     /* DataProtocolCapability */
865 static int hf_h245_h224 = -1;                     /* DataProtocolCapability */
866 static int hf_h245_nlpidProtocol = -1;            /* DataProtocolCapability */
867 static int hf_h245_nlpidData = -1;                /* OCTET_STRING */
868 static int hf_h245_nlpid = -1;                    /* Nlpid */
869 static int hf_h245_dsvdControl = -1;              /* NULL */
870 static int hf_h245_h222DataPartitioning = -1;     /* DataProtocolCapability */
871 static int hf_h245_t30fax = -1;                   /* DataProtocolCapability */
872 static int hf_h245_t140 = -1;                     /* DataProtocolCapability */
873 static int hf_h245_t38fax = -1;                   /* T_t38fax */
874 static int hf_h245_t38FaxProtocol = -1;           /* DataProtocolCapability */
875 static int hf_h245_t38FaxProfile = -1;            /* T38FaxProfile */
876 static int hf_h245_genericDataCapability = -1;    /* GenericCapability */
877 static int hf_h245_application = -1;              /* Application */
878 static int hf_h245_maxBitRate2_0_4294967295 = -1;  /* INTEGER_0_4294967295 */
879 static int hf_h245_v14buffered = -1;              /* NULL */
880 static int hf_h245_v42lapm = -1;                  /* NULL */
881 static int hf_h245_hdlcFrameTunnelling = -1;      /* NULL */
882 static int hf_h245_h310SeparateVCStack = -1;      /* NULL */
883 static int hf_h245_h310SingleVCStack = -1;        /* NULL */
884 static int hf_h245_transparent = -1;              /* NULL */
885 static int hf_h245_segmentationAndReassembly = -1;  /* NULL */
886 static int hf_h245_hdlcFrameTunnelingwSAR = -1;   /* NULL */
887 static int hf_h245_v120 = -1;                     /* NULL */
888 static int hf_h245_separateLANStack = -1;         /* NULL */
889 static int hf_h245_v76wCompression = -1;          /* T_v76wCompression */
890 static int hf_h245_transmitCompression = -1;      /* CompressionType */
891 static int hf_h245_receiveCompression = -1;       /* CompressionType */
892 static int hf_h245_transmitAndReceiveCompression = -1;  /* CompressionType */
893 static int hf_h245_tcp = -1;                      /* NULL */
894 static int hf_h245_udp = -1;                      /* NULL */
895 static int hf_h245_v42bis = -1;                   /* V42bis */
896 static int hf_h245_numberOfCodewords = -1;        /* INTEGER_1_65536 */
897 static int hf_h245_maximumStringLength = -1;      /* INTEGER_1_256 */
898 static int hf_h245_t84Unrestricted = -1;          /* NULL */
899 static int hf_h245_t84Restricted = -1;            /* T_t84Restricted */
900 static int hf_h245_qcif_bool = -1;                /* BOOLEAN */
901 static int hf_h245_cif_bool = -1;                 /* BOOLEAN */
902 static int hf_h245_ccir601Seq = -1;               /* BOOLEAN */
903 static int hf_h245_ccir601Prog = -1;              /* BOOLEAN */
904 static int hf_h245_hdtvSeq = -1;                  /* BOOLEAN */
905 static int hf_h245_hdtvProg = -1;                 /* BOOLEAN */
906 static int hf_h245_g3FacsMH200x100 = -1;          /* BOOLEAN */
907 static int hf_h245_g3FacsMH200x200 = -1;          /* BOOLEAN */
908 static int hf_h245_g4FacsMMR200x100 = -1;         /* BOOLEAN */
909 static int hf_h245_g4FacsMMR200x200 = -1;         /* BOOLEAN */
910 static int hf_h245_jbig200x200Seq = -1;           /* BOOLEAN */
911 static int hf_h245_jbig200x200Prog = -1;          /* BOOLEAN */
912 static int hf_h245_jbig300x300Seq = -1;           /* BOOLEAN */
913 static int hf_h245_jbig300x300Prog = -1;          /* BOOLEAN */
914 static int hf_h245_digPhotoLow = -1;              /* BOOLEAN */
915 static int hf_h245_digPhotoMedSeq = -1;           /* BOOLEAN */
916 static int hf_h245_digPhotoMedProg = -1;          /* BOOLEAN */
917 static int hf_h245_digPhotoHighSeq = -1;          /* BOOLEAN */
918 static int hf_h245_digPhotoHighProg = -1;         /* BOOLEAN */
919 static int hf_h245_fillBitRemoval = -1;           /* BOOLEAN */
920 static int hf_h245_transcodingJBIG = -1;          /* BOOLEAN */
921 static int hf_h245_transcodingMMR = -1;           /* BOOLEAN */
922 static int hf_h245_version = -1;                  /* INTEGER_0_255 */
923 static int hf_h245_t38FaxRateManagement = -1;     /* T38FaxRateManagement */
924 static int hf_h245_t38FaxUdpOptions = -1;         /* T38FaxUdpOptions */
925 static int hf_h245_t38FaxTcpOptions = -1;         /* T38FaxTcpOptions */
926 static int hf_h245_localTCF = -1;                 /* NULL */
927 static int hf_h245_transferredTCF = -1;           /* NULL */
928 static int hf_h245_t38FaxMaxBuffer = -1;          /* INTEGER */
929 static int hf_h245_t38FaxMaxDatagram = -1;        /* INTEGER */
930 static int hf_h245_t38FaxUdpEC = -1;              /* T_t38FaxUdpEC */
931 static int hf_h245_t38UDPFEC = -1;                /* NULL */
932 static int hf_h245_t38UDPRedundancy = -1;         /* NULL */
933 static int hf_h245_t38TCPBidirectionalMode = -1;  /* BOOLEAN */
934 static int hf_h245_encryptionCapability = -1;     /* EncryptionCapability */
935 static int hf_h245_authenticationCapability = -1;  /* AuthenticationCapability */
936 static int hf_h245_integrityCapability = -1;      /* IntegrityCapability */
937 static int hf_h245_genericH235SecurityCapability = -1;  /* GenericCapability */
938 static int hf_h245_EncryptionCapability_item = -1;  /* MediaEncryptionAlgorithm */
939 static int hf_h245_algorithm = -1;                /* OBJECT_IDENTIFIER */
940 static int hf_h245_antiSpamAlgorithm = -1;        /* OBJECT_IDENTIFIER */
941 static int hf_h245_ui_nonStandard = -1;           /* SEQUENCE_SIZE_1_16_OF_NonStandardParameter */
942 static int hf_h245_ui_nonStandard_item = -1;      /* NonStandardParameter */
943 static int hf_h245_basicString = -1;              /* NULL */
944 static int hf_h245_iA5String = -1;                /* NULL */
945 static int hf_h245_generalString = -1;            /* NULL */
946 static int hf_h245_dtmf = -1;                     /* NULL */
947 static int hf_h245_hookflash = -1;                /* NULL */
948 static int hf_h245_extendedAlphanumericFlag = -1;  /* NULL */
949 static int hf_h245_encryptedBasicString = -1;     /* NULL */
950 static int hf_h245_encryptedIA5String = -1;       /* NULL */
951 static int hf_h245_encryptedGeneralString = -1;   /* NULL */
952 static int hf_h245_secureDTMF = -1;               /* NULL */
953 static int hf_h245_genericUserInputCapability = -1;  /* GenericCapability */
954 static int hf_h245_nonStandardParams = -1;        /* SEQUENCE_OF_NonStandardParameter */
955 static int hf_h245_nonStandardParams_item = -1;   /* NonStandardParameter */
956 static int hf_h245_chairControlCapability = -1;   /* BOOLEAN */
957 static int hf_h245_videoIndicateMixingCapability = -1;  /* BOOLEAN */
958 static int hf_h245_multipointVisualizationCapability = -1;  /* BOOLEAN */
959 static int hf_h245_capabilityIdentifier = -1;     /* CapabilityIdentifier */
960 static int hf_h245_collapsing = -1;               /* SEQUENCE_OF_GenericParameter */
961 static int hf_h245_collapsing_item = -1;          /* GenericParameter */
962 static int hf_h245_nonCollapsing = -1;            /* SEQUENCE_OF_GenericParameter */
963 static int hf_h245_nonCollapsing_item = -1;       /* GenericParameter */
964 static int hf_h245_nonCollapsingRaw = -1;         /* OCTET_STRING */
965 static int hf_h245_transport = -1;                /* DataProtocolCapability */
966 static int hf_h245_standardOid = -1;              /* T_standardOid */
967 static int hf_h245_h221NonStandard = -1;          /* NonStandardParameter */
968 static int hf_h245_uuid = -1;                     /* OCTET_STRING_SIZE_16 */
969 static int hf_h245_domainBased = -1;              /* IA5String_SIZE_1_64 */
970 static int hf_h245_parameterIdentifier = -1;      /* ParameterIdentifier */
971 static int hf_h245_parameterValue = -1;           /* ParameterValue */
972 static int hf_h245_supersedes = -1;               /* SEQUENCE_OF_ParameterIdentifier */
973 static int hf_h245_supersedes_item = -1;          /* ParameterIdentifier */
974 static int hf_h245_standard = -1;                 /* INTEGER_0_127 */
975 static int hf_h245_logical = -1;                  /* NULL */
976 static int hf_h245_booleanArray = -1;             /* INTEGER_0_255 */
977 static int hf_h245_unsignedMin = -1;              /* INTEGER_0_65535 */
978 static int hf_h245_unsignedMax = -1;              /* INTEGER_0_65535 */
979 static int hf_h245_unsigned32Min = -1;            /* INTEGER_0_4294967295 */
980 static int hf_h245_unsigned32Max = -1;            /* INTEGER_0_4294967295 */
981 static int hf_h245_octetString = -1;              /* OCTET_STRING */
982 static int hf_h245_genericParameters = -1;        /* SEQUENCE_OF_GenericParameter */
983 static int hf_h245_genericParameters_item = -1;   /* GenericParameter */
984 static int hf_h245_multiplexFormat = -1;          /* MultiplexFormat */
985 static int hf_h245_controlOnMuxStream = -1;       /* BOOLEAN */
986 static int hf_h245_capabilityOnMuxStream = -1;    /* SET_SIZE_1_256_OF_AlternativeCapabilitySet */
987 static int hf_h245_capabilityOnMuxStream_item = -1;  /* AlternativeCapabilitySet */
988 static int hf_h245_dynamicRTPPayloadType = -1;    /* INTEGER_96_127 */
989 static int hf_h245_audioTelephoneEvent = -1;      /* GeneralString */
990 static int hf_h245_capabilities = -1;             /* SET_SIZE_1_256_OF_AlternativeCapabilitySet */
991 static int hf_h245_capabilities_item = -1;        /* AlternativeCapabilitySet */
992 static int hf_h245_fecc_rfc2733 = -1;             /* FECC_rfc2733 */
993 static int hf_h245_redundancyEncodingBool = -1;   /* BOOLEAN */
994 static int hf_h245_separateStreamBool = -1;       /* T_separateStreamBool */
995 static int hf_h245_separatePort = -1;             /* BOOLEAN */
996 static int hf_h245_samePortBool = -1;             /* BOOLEAN */
997 static int hf_h245_protectedCapability = -1;      /* CapabilityTableEntryNumber */
998 static int hf_h245_fecScheme = -1;                /* OBJECT_IDENTIFIER */
999 static int hf_h245_rfc2733rfc2198 = -1;           /* MaxRedundancy */
1000 static int hf_h245_rfc2733sameport = -1;          /* MaxRedundancy */
1001 static int hf_h245_rfc2733diffport = -1;          /* MaxRedundancy */
1002 static int hf_h245_rfc2733Format = -1;            /* Rfc2733Format */
1003 static int hf_h245_olc_fw_lcn = -1;               /* OLC_fw_lcn */
1004 static int hf_h245_forwardLogicalChannelParameters = -1;  /* T_forwardLogicalChannelParameters */
1005 static int hf_h245_portNumber = -1;               /* INTEGER_0_65535 */
1006 static int hf_h245_dataType = -1;                 /* DataType */
1007 static int hf_h245_olc_forw_multiplexParameters = -1;  /* OLC_forw_multiplexParameters */
1008 static int hf_h245_h222LogicalChannelParameters = -1;  /* H222LogicalChannelParameters */
1009 static int hf_h245_olc_fw_h223_params = -1;       /* OLC_fw_h223_params */
1010 static int hf_h245_v76LogicalChannelParameters = -1;  /* V76LogicalChannelParameters */
1011 static int hf_h245_h2250LogicalChannelParameters = -1;  /* H2250LogicalChannelParameters */
1012 static int hf_h245_forwardLogicalChannelDependency = -1;  /* LogicalChannelNumber */
1013 static int hf_h245_replacementFor = -1;           /* LogicalChannelNumber */
1014 static int hf_h245_reverseLogicalChannelParameters = -1;  /* OLC_reverseLogicalChannelParameters */
1015 static int hf_h245_olc_rev_multiplexParameter = -1;  /* OLC_rev_multiplexParameters */
1016 static int hf_h245_olc_rev_h223_params = -1;      /* OLC_rev_h223_params */
1017 static int hf_h245_reverseLogicalChannelDependency = -1;  /* LogicalChannelNumber */
1018 static int hf_h245_separateStack = -1;            /* NetworkAccessParameters */
1019 static int hf_h245_encryptionSync = -1;           /* EncryptionSync */
1020 static int hf_h245_distribution = -1;             /* T_distribution */
1021 static int hf_h245_unicast = -1;                  /* NULL */
1022 static int hf_h245_multicast = -1;                /* NULL */
1023 static int hf_h245_networkAddress = -1;           /* T_networkAddress */
1024 static int hf_h245_q2931Address = -1;             /* Q2931Address */
1025 static int hf_h245_e164Address = -1;              /* T_e164Address */
1026 static int hf_h245_localAreaAddress = -1;         /* TransportAddress */
1027 static int hf_h245_associateConference = -1;      /* BOOLEAN */
1028 static int hf_h245_externalReference = -1;        /* OCTET_STRING_SIZE_1_255 */
1029 static int hf_h245_t120SetupProcedure = -1;       /* T_t120SetupProcedure */
1030 static int hf_h245_originateCall = -1;            /* NULL */
1031 static int hf_h245_waitForCall = -1;              /* NULL */
1032 static int hf_h245_issueQuery = -1;               /* NULL */
1033 static int hf_h245_address = -1;                  /* T_address */
1034 static int hf_h245_internationalNumber = -1;      /* NumericString_SIZE_1_16 */
1035 static int hf_h245_nsapAddress = -1;              /* OCTET_STRING_SIZE_1_20 */
1036 static int hf_h245_subaddress = -1;               /* OCTET_STRING_SIZE_1_20 */
1037 static int hf_h245_audioHeaderPresent = -1;       /* BOOLEAN */
1038 static int hf_h245_nullData = -1;                 /* NULL */
1039 static int hf_h245_videoData = -1;                /* VideoCapability */
1040 static int hf_h245_audioData = -1;                /* AudioCapability */
1041 static int hf_h245_data = -1;                     /* DataApplicationCapability */
1042 static int hf_h245_encryptionData = -1;           /* EncryptionMode */
1043 static int hf_h245_h235Control = -1;              /* NonStandardParameter */
1044 static int hf_h245_h235Media = -1;                /* H235Media */
1045 static int hf_h245_multiplexedStream = -1;        /* MultiplexedStreamParameter */
1046 static int hf_h245_redundancyEncoding = -1;       /* RedundancyEncoding */
1047 static int hf_h245_multiplePayloadStream = -1;    /* MultiplePayloadStream */
1048 static int hf_h245_depFec = -1;                   /* DepFECData */
1049 static int hf_h245_fec = -1;                      /* FECData */
1050 static int hf_h245_mediaType = -1;                /* T_mediaType */
1051 static int hf_h245_resourceID = -1;               /* INTEGER_0_65535 */
1052 static int hf_h245_subChannelID = -1;             /* INTEGER_0_8191 */
1053 static int hf_h245_pcr_pid = -1;                  /* INTEGER_0_8191 */
1054 static int hf_h245_programDescriptors = -1;       /* OCTET_STRING */
1055 static int hf_h245_streamDescriptors = -1;        /* OCTET_STRING */
1056 static int hf_h245_adaptationLayerType = -1;      /* T_adaptationLayerType */
1057 static int hf_h245_h223_al_type_al1Framed = -1;   /* T_h223_al_type_al1Framed */
1058 static int hf_h245_h223_al_type_al1NotFramed = -1;  /* T_h223_al_type_al1NotFramed */
1059 static int hf_h245_h223_al_type_al2WithoutSequenceNumbers = -1;  /* T_h223_al_type_al2WithoutSequenceNumbers */
1060 static int hf_h245_h223_al_type_al2WithSequenceNumbers = -1;  /* T_h223_al_type_al2WithSequenceNumbers */
1061 static int hf_h245_controlFieldOctets = -1;       /* T_controlFieldOctets */
1062 static int hf_h245_al3_sendBufferSize = -1;       /* T_al3_sendBufferSize */
1063 static int hf_h245_h223_al_type_al3 = -1;         /* T_h223_al_type_al3 */
1064 static int hf_h245_h223_al_type_al1M = -1;        /* T_h223_al_type_al1M */
1065 static int hf_h245_h223_al_type_al2M = -1;        /* T_h223_al_type_al2M */
1066 static int hf_h245_h223_al_type_al3M = -1;        /* T_h223_al_type_al3M */
1067 static int hf_h245_h223_lc_segmentableFlag = -1;  /* T_h223_lc_segmentableFlag */
1068 static int hf_h245_transferMode = -1;             /* T_transferMode */
1069 static int hf_h245_framed = -1;                   /* NULL */
1070 static int hf_h245_unframed = -1;                 /* NULL */
1071 static int hf_h245_aL1HeaderFEC = -1;             /* AL1HeaderFEC */
1072 static int hf_h245_sebch16_7 = -1;                /* NULL */
1073 static int hf_h245_golay24_12 = -1;               /* NULL */
1074 static int hf_h245_crcLength2 = -1;               /* AL1CrcLength */
1075 static int hf_h245_crc4bit = -1;                  /* NULL */
1076 static int hf_h245_crc12bit = -1;                 /* NULL */
1077 static int hf_h245_crc20bit = -1;                 /* NULL */
1078 static int hf_h245_crc28bit = -1;                 /* NULL */
1079 static int hf_h245_crc8bit = -1;                  /* NULL */
1080 static int hf_h245_crc16bit = -1;                 /* NULL */
1081 static int hf_h245_crc32bit = -1;                 /* NULL */
1082 static int hf_h245_crcNotUsed = -1;               /* NULL */
1083 static int hf_h245_rcpcCodeRate = -1;             /* INTEGER_8_32 */
1084 static int hf_h245_noArq = -1;                    /* NULL */
1085 static int hf_h245_typeIArq = -1;                 /* H223AnnexCArqParameters */
1086 static int hf_h245_typeIIArq = -1;                /* H223AnnexCArqParameters */
1087 static int hf_h245_arqType = -1;                  /* ArqType */
1088 static int hf_h245_alsduSplitting = -1;           /* BOOLEAN */
1089 static int hf_h245_rsCodeCorrection = -1;         /* INTEGER_0_127 */
1090 static int hf_h245_aL2HeaderFEC = -1;             /* AL2HeaderFEC */
1091 static int hf_h245_sebch16_5 = -1;                /* NULL */
1092 static int hf_h245_headerFormat = -1;             /* T_headerFormat */
1093 static int hf_h245_crlength2 = -1;                /* AL3CrcLength */
1094 static int hf_h245_numberOfRetransmissions = -1;  /* T_numberOfRetransmissions */
1095 static int hf_h245_finite = -1;                   /* INTEGER_0_16 */
1096 static int hf_h245_infinite = -1;                 /* NULL */
1097 static int hf_h245_sendBufferSize = -1;           /* INTEGER_0_16777215 */
1098 static int hf_h245_hdlcParameters = -1;           /* V76HDLCParameters */
1099 static int hf_h245_suspendResume = -1;            /* T_suspendResume */
1100 static int hf_h245_noSuspendResume = -1;          /* NULL */
1101 static int hf_h245_suspendResumewAddress = -1;    /* NULL */
1102 static int hf_h245_suspendResumewoAddress = -1;   /* NULL */
1103 static int hf_h245_uIH = -1;                      /* BOOLEAN */
1104 static int hf_h245_v76_mode = -1;                 /* V76LCP_mode */
1105 static int hf_h245_eRM = -1;                      /* T_eRM */
1106 static int hf_h245_windowSize = -1;               /* INTEGER_1_127 */
1107 static int hf_h245_recovery = -1;                 /* T_recovery */
1108 static int hf_h245_rej = -1;                      /* NULL */
1109 static int hf_h245_sREJ = -1;                     /* NULL */
1110 static int hf_h245_mSREJ = -1;                    /* NULL */
1111 static int hf_h245_uNERM = -1;                    /* NULL */
1112 static int hf_h245_v75Parameters = -1;            /* V75Parameters */
1113 static int hf_h245_crcLength = -1;                /* CRCLength */
1114 static int hf_h245_n401 = -1;                     /* INTEGER_1_4095 */
1115 static int hf_h245_loopbackTestProcedure = -1;    /* BOOLEAN */
1116 static int hf_h245_sessionID_0_255 = -1;          /* INTEGER_0_255 */
1117 static int hf_h245_associatedSessionID = -1;      /* INTEGER_1_255 */
1118 static int hf_h245_mediaChannel = -1;             /* T_mediaChannel */
1119 static int hf_h245_mediaGuaranteedDelivery = -1;  /* BOOLEAN */
1120 static int hf_h245_mediaControlChannel = -1;      /* T_mediaControlChannel */
1121 static int hf_h245_mediaControlGuaranteedDelivery = -1;  /* BOOLEAN */
1122 static int hf_h245_destination = -1;              /* TerminalLabel */
1123 static int hf_h245_mediaPacketization = -1;       /* T_mediaPacketization */
1124 static int hf_h245_h261aVideoPacketizationFlag = -1;  /* NULL */
1125 static int hf_h245_rtpPayloadType = -1;           /* RTPPayloadType */
1126 static int hf_h245_source = -1;                   /* TerminalLabel */
1127 static int hf_h245_payloadDescriptor = -1;        /* T_payloadDescriptor */
1128 static int hf_h245_rfc_number = -1;               /* INTEGER_1_32768_ */
1129 static int hf_h245_oid = -1;                      /* OBJECT_IDENTIFIER */
1130 static int hf_h245_payloadType = -1;              /* INTEGER_0_127 */
1131 static int hf_h245_secondaryEncoding = -1;        /* DataType */
1132 static int hf_h245_rtpRedundancyEncoding = -1;    /* T_rtpRedundancyEncoding */
1133 static int hf_h245_primary = -1;                  /* RedundancyEncodingElement */
1134 static int hf_h245_secondary = -1;                /* SEQUENCE_OF_RedundancyEncodingElement */
1135 static int hf_h245_secondary_item = -1;           /* RedundancyEncodingElement */
1136 static int hf_h245_elements = -1;                 /* SEQUENCE_OF_MultiplePayloadStreamElement */
1137 static int hf_h245_elements_item = -1;            /* MultiplePayloadStreamElement */
1138 static int hf_h245_dep_rfc2733 = -1;              /* RFC2733Data */
1139 static int hf_h245_fec_data_mode = -1;            /* FECdata_mode */
1140 static int hf_h245_redundancyEncodingFlag = -1;   /* NULL */
1141 static int hf_h245_differentPort = -1;            /* T_differentPort */
1142 static int hf_h245_protectedSessionID = -1;       /* INTEGER_1_255 */
1143 static int hf_h245_protectedPayloadType = -1;     /* INTEGER_0_127 */
1144 static int hf_h245_samePort = -1;                 /* T_samePort */
1145 static int hf_h245_separateStream = -1;           /* DepSeparateStream */
1146 static int hf_h245_rfc2733 = -1;                  /* T_rfc2733 */
1147 static int hf_h245_pktMode = -1;                  /* T_pktMode */
1148 static int hf_h245_rfc2198coding = -1;            /* NULL */
1149 static int hf_h245_mode_rfc2733sameport = -1;     /* T_mode_rfc2733sameport */
1150 static int hf_h245_mode_rfc2733diffport = -1;     /* T_mode_rfc2733diffport */
1151 static int hf_h245_protectedChannel = -1;         /* LogicalChannelNumber */
1152 static int hf_h245_unicastAddress = -1;           /* UnicastAddress */
1153 static int hf_h245_multicastAddress = -1;         /* MulticastAddress */
1154 static int hf_h245_iPAddress = -1;                /* T_iPAddress */
1155 static int hf_h245_ip4_network = -1;              /* Ipv4_network */
1156 static int hf_h245_tsapIdentifier = -1;           /* TsapIdentifier */
1157 static int hf_h245_iPXAddress = -1;               /* T_iPXAddress */
1158 static int hf_h245_node = -1;                     /* OCTET_STRING_SIZE_6 */
1159 static int hf_h245_netnum = -1;                   /* OCTET_STRING_SIZE_4 */
1160 static int hf_h245_ipx_tsapIdentifier = -1;       /* OCTET_STRING_SIZE_2 */
1161 static int hf_h245_iP6Address = -1;               /* T_iP6Address */
1162 static int hf_h245_ip6_network = -1;              /* OCTET_STRING_SIZE_16 */
1163 static int hf_h245_ipv6_tsapIdentifier = -1;      /* INTEGER_0_65535 */
1164 static int hf_h245_netBios = -1;                  /* OCTET_STRING_SIZE_16 */
1165 static int hf_h245_iPSourceRouteAddress = -1;     /* T_iPSourceRouteAddress */
1166 static int hf_h245_routing = -1;                  /* T_routing */
1167 static int hf_h245_strict = -1;                   /* NULL */
1168 static int hf_h245_loose = -1;                    /* NULL */
1169 static int hf_h245_network = -1;                  /* OCTET_STRING_SIZE_4 */
1170 static int hf_h245_iPSrcRoute_tsapIdentifier = -1;  /* INTEGER_0_65535 */
1171 static int hf_h245_route = -1;                    /* T_route */
1172 static int hf_h245_route_item = -1;               /* OCTET_STRING_SIZE_4 */
1173 static int hf_h245_nsap = -1;                     /* OCTET_STRING_SIZE_1_20 */
1174 static int hf_h245_nonStandardAddress = -1;       /* NonStandardParameter */
1175 static int hf_h245_mIPAddress = -1;               /* MIPAddress */
1176 static int hf_h245_mip4_network = -1;             /* OCTET_STRING_SIZE_4 */
1177 static int hf_h245_multicast_tsapIdentifier = -1;  /* INTEGER_0_65535 */
1178 static int hf_h245_mIP6Address = -1;              /* MIP6Address */
1179 static int hf_h245_mip6_network = -1;             /* OCTET_STRING_SIZE_16 */
1180 static int hf_h245_multicast_IPv6_tsapIdentifier = -1;  /* INTEGER_0_65535 */
1181 static int hf_h245_synchFlag = -1;                /* INTEGER_0_255 */
1182 static int hf_h245_h235Key = -1;                  /* OCTET_STRING_SIZE_1_65535 */
1183 static int hf_h245_escrowentry = -1;              /* SEQUENCE_SIZE_1_256_OF_EscrowData */
1184 static int hf_h245_escrowentry_item = -1;         /* EscrowData */
1185 static int hf_h245_genericParameter = -1;         /* GenericParameter */
1186 static int hf_h245_escrowID = -1;                 /* OBJECT_IDENTIFIER */
1187 static int hf_h245_escrowValue = -1;              /* BIT_STRING_SIZE_1_65535 */
1188 static int hf_h245_olc_ack_fw_lcn = -1;           /* OLC_ack_fw_lcn */
1189 static int hf_h245_olc_ack_reverseLogicalChannelParameters = -1;  /* OLC_ack_reverseLogicalChannelParameters */
1190 static int hf_h245_reverseLogicalChannelNumber = -1;  /* T_reverseLogicalChannelNumber */
1191 static int hf_h245_olc_ack_multiplexParameters = -1;  /* T_olc_ack_multiplexParameters */
1192 static int hf_h245_forwardMultiplexAckParameters = -1;  /* T_forwardMultiplexAckParameters */
1193 static int hf_h245_h2250LogicalChannelAckParameters = -1;  /* H2250LogicalChannelAckParameters */
1194 static int hf_h245_forwardLogicalChannelNumber = -1;  /* LogicalChannelNumber */
1195 static int hf_h245_olc_rej_cause = -1;            /* OpenLogicalChannelRejectCause */
1196 static int hf_h245_unsuitableReverseParameters = -1;  /* NULL */
1197 static int hf_h245_dataTypeNotSupported = -1;     /* NULL */
1198 static int hf_h245_dataTypeNotAvailable = -1;     /* NULL */
1199 static int hf_h245_unknownDataType = -1;          /* NULL */
1200 static int hf_h245_dataTypeALCombinationNotSupported = -1;  /* NULL */
1201 static int hf_h245_multicastChannelNotAllowed = -1;  /* NULL */
1202 static int hf_h245_insufficientBandwidth = -1;    /* NULL */
1203 static int hf_h245_separateStackEstablishmentFailed = -1;  /* NULL */
1204 static int hf_h245_invalidSessionID = -1;         /* NULL */
1205 static int hf_h245_masterSlaveConflict = -1;      /* NULL */
1206 static int hf_h245_waitForCommunicationMode = -1;  /* NULL */
1207 static int hf_h245_invalidDependentChannel = -1;  /* NULL */
1208 static int hf_h245_replacementForRejected = -1;   /* NULL */
1209 static int hf_h245_securityDenied = -1;           /* NULL */
1210 static int hf_h245_sessionID = -1;                /* INTEGER_1_255 */
1211 static int hf_h245_ack_mediaChannel = -1;         /* Ack_mediaChannel */
1212 static int hf_h245_ack_mediaControlChannel = -1;  /* Ack_mediaControlChannel */
1213 static int hf_h245_flowControlToZero = -1;        /* BOOLEAN */
1214 static int hf_h245_cLC_source = -1;               /* T_cLC_source */
1215 static int hf_h245_user = -1;                     /* NULL */
1216 static int hf_h245_lcse = -1;                     /* NULL */
1217 static int hf_h245_clc_reason = -1;               /* Clc_reason */
1218 static int hf_h245_unknown = -1;                  /* NULL */
1219 static int hf_h245_reopen = -1;                   /* NULL */
1220 static int hf_h245_reservationFailure = -1;       /* NULL */
1221 static int hf_h245_qosCapability = -1;            /* QOSCapability */
1222 static int hf_h245_reason = -1;                   /* T_reason */
1223 static int hf_h245_normal = -1;                   /* NULL */
1224 static int hf_h245_req_chan_clos_rej_cause = -1;  /* RequestChannelCloseRejectCause */
1225 static int hf_h245_multiplexEntryDescriptors = -1;  /* SET_SIZE_1_15_OF_MultiplexEntryDescriptor */
1226 static int hf_h245_multiplexEntryDescriptors_item = -1;  /* MultiplexEntryDescriptor */
1227 static int hf_h245_multiplexTableEntryNumber = -1;  /* MultiplexTableEntryNumber */
1228 static int hf_h245_elementList = -1;              /* T_elementList */
1229 static int hf_h245_elementList_item = -1;         /* MultiplexElement */
1230 static int hf_h245_me_type = -1;                  /* Me_type */
1231 static int hf_h245_logicalChannelNum = -1;        /* T_logicalChannelNum */
1232 static int hf_h245_subElementList = -1;           /* T_subElementList */
1233 static int hf_h245_subElementList_item = -1;      /* MultiplexElement */
1234 static int hf_h245_me_repeatCount = -1;           /* ME_repeatCount */
1235 static int hf_h245_me_repeatCount_finite = -1;    /* ME_finiteRepeatCount */
1236 static int hf_h245_untilClosingFlag = -1;         /* T_untilClosingFlag */
1237 static int hf_h245_multiplexTableEntryNumbers = -1;  /* SET_SIZE_1_15_OF_MultiplexTableEntryNumber */
1238 static int hf_h245_multiplexTableEntryNumbers_item = -1;  /* MultiplexTableEntryNumber */
1239 static int hf_h245_sendRejectionDescriptions = -1;  /* SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions */
1240 static int hf_h245_sendRejectionDescriptions_item = -1;  /* MultiplexEntryRejectionDescriptions */
1241 static int hf_h245_mux_rej_cause = -1;            /* MultiplexEntryRejectionDescriptionsCause */
1242 static int hf_h245_unspecifiedCause = -1;         /* NULL */
1243 static int hf_h245_descriptorTooComplex = -1;     /* NULL */
1244 static int hf_h245_entryNumbers = -1;             /* SET_SIZE_1_15_OF_MultiplexTableEntryNumber */
1245 static int hf_h245_entryNumbers_item = -1;        /* MultiplexTableEntryNumber */
1246 static int hf_h245_rejectionDescriptions = -1;    /* SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions */
1247 static int hf_h245_rejectionDescriptions_item = -1;  /* RequestMultiplexEntryRejectionDescriptions */
1248 static int hf_h245_req_mux_rej_cause = -1;        /* RequestMultiplexEntryRejectionDescriptionsCause */
1249 static int hf_h245_requestedModes = -1;           /* SEQUENCE_SIZE_1_256_OF_ModeDescription */
1250 static int hf_h245_requestedModes_item = -1;      /* ModeDescription */
1251 static int hf_h245_req_mode_ack_response = -1;    /* Req_mode_ack_response */
1252 static int hf_h245_willTransmitMostPreferredMode = -1;  /* NULL */
1253 static int hf_h245_willTransmitLessPreferredMode = -1;  /* NULL */
1254 static int hf_h245_req_rej_cause = -1;            /* RequestModeRejectCause */
1255 static int hf_h245_modeUnavailable = -1;          /* NULL */
1256 static int hf_h245_multipointConstraint = -1;     /* NULL */
1257 static int hf_h245_requestDenied = -1;            /* NULL */
1258 static int hf_h245_ModeDescription_item = -1;     /* ModeElement */
1259 static int hf_h245_videoMode = -1;                /* VideoMode */
1260 static int hf_h245_audioMode = -1;                /* AudioMode */
1261 static int hf_h245_dataMode = -1;                 /* DataMode */
1262 static int hf_h245_encryptionMode = -1;           /* EncryptionMode */
1263 static int hf_h245_h235Mode = -1;                 /* H235Mode */
1264 static int hf_h245_multiplexedStreamMode = -1;    /* MultiplexedStreamParameter */
1265 static int hf_h245_redundancyEncodingDTMode = -1;  /* RedundancyEncodingDTMode */
1266 static int hf_h245_multiplePayloadStreamMode = -1;  /* MultiplePayloadStreamMode */
1267 static int hf_h245_depFecMode = -1;               /* DepFECMode */
1268 static int hf_h245_fecMode = -1;                  /* FECMode */
1269 static int hf_h245_type = -1;                     /* ModeElementType */
1270 static int hf_h245_h223ModeParameters = -1;       /* H223ModeParameters */
1271 static int hf_h245_v76ModeParameters = -1;        /* V76ModeParameters */
1272 static int hf_h245_h2250ModeParameters = -1;      /* H2250ModeParameters */
1273 static int hf_h245_genericModeParameters = -1;    /* GenericCapability */
1274 static int hf_h245_multiplexedStreamModeParameters = -1;  /* MultiplexedStreamModeParameters */
1275 static int hf_h245_logicalChannelNumber = -1;     /* LogicalChannelNumber */
1276 static int hf_h245_mediaMode = -1;                /* T_mediaMode */
1277 static int hf_h245_prmary_dtmode = -1;            /* RedundancyEncodingDTModeElement */
1278 static int hf_h245_secondaryDTM = -1;             /* SEQUENCE_OF_RedundancyEncodingDTModeElement */
1279 static int hf_h245_secondaryDTM_item = -1;        /* RedundancyEncodingDTModeElement */
1280 static int hf_h245_re_type = -1;                  /* Re_type */
1281 static int hf_h245_mpsmElements = -1;             /* SEQUENCE_OF_MultiplePayloadStreamElementMode */
1282 static int hf_h245_mpsmElements_item = -1;        /* MultiplePayloadStreamElementMode */
1283 static int hf_h245_rfc2733Mode = -1;              /* T_rfc2733Mode */
1284 static int hf_h245_fec_mode = -1;                 /* FEC_mode */
1285 static int hf_h245_protectedElement = -1;         /* ModeElementType */
1286 static int hf_h245_adaptationLayer = -1;          /* AdaptationLayerType */
1287 static int hf_h245_al1Framed = -1;                /* NULL */
1288 static int hf_h245_al1NotFramed = -1;             /* NULL */
1289 static int hf_h245_al2WithoutSequenceNumbers = -1;  /* NULL */
1290 static int hf_h245_al2WithSequenceNumbers = -1;   /* NULL */
1291 static int hf_h245_al3 = -1;                      /* Al3 */
1292 static int hf_h245_al1M = -1;                     /* H223AL1MParameters */
1293 static int hf_h245_al2M = -1;                     /* H223AL2MParameters */
1294 static int hf_h245_al3M = -1;                     /* H223AL3MParameters */
1295 static int hf_h245_segmentableFlag = -1;          /* BOOLEAN */
1296 static int hf_h245_redundancyEncodingMode = -1;   /* RedundancyEncodingMode */
1297 static int hf_h245_secondaryEncodingMode = -1;    /* T_secondaryEncodingMode */
1298 static int hf_h245_h261VideoMode = -1;            /* H261VideoMode */
1299 static int hf_h245_h262VideoMode = -1;            /* H262VideoMode */
1300 static int hf_h245_h263VideoMode = -1;            /* H263VideoMode */
1301 static int hf_h245_is11172VideoMode = -1;         /* IS11172VideoMode */
1302 static int hf_h245_genericVideoMode = -1;         /* GenericCapability */
1303 static int hf_h245_h261_resolution = -1;          /* H261Resolution */
1304 static int hf_h245_qcif = -1;                     /* NULL */
1305 static int hf_h245_cif = -1;                      /* NULL */
1306 static int hf_h245_profileAndLevel = -1;          /* T_profileAndLevel */
1307 static int hf_h245_profileAndLevel_SPatMLMode = -1;  /* NULL */
1308 static int hf_h245_profileAndLevel_MPatLLMode = -1;  /* NULL */
1309 static int hf_h245_profileAndLevel_MPatMLMode = -1;  /* NULL */
1310 static int hf_h245_profileAndLevel_MPatH_14Mode = -1;  /* NULL */
1311 static int hf_h245_profileAndLevel_MPatHLMode = -1;  /* NULL */
1312 static int hf_h245_profileAndLevel_SNRatLLMode = -1;  /* NULL */
1313 static int hf_h245_profileAndLevel_SNRatMLMode = -1;  /* NULL */
1314 static int hf_h245_profileAndLevel_SpatialatH_14Mode = -1;  /* NULL */
1315 static int hf_h245_profileAndLevel_HPatMLMode = -1;  /* NULL */
1316 static int hf_h245_profileAndLevel_HPatH_14Mode = -1;  /* NULL */
1317 static int hf_h245_profileAndLevel_HPatHLMode = -1;  /* NULL */
1318 static int hf_h245_h263_resolution = -1;          /* H263Resolution */
1319 static int hf_h245_sqcif = -1;                    /* NULL */
1320 static int hf_h245_cif4 = -1;                     /* NULL */
1321 static int hf_h245_cif16 = -1;                    /* NULL */
1322 static int hf_h245_custom_res = -1;               /* NULL */
1323 static int hf_h245_g711Alaw64k_mode = -1;         /* NULL */
1324 static int hf_h245_g711Alaw56k_mode = -1;         /* NULL */
1325 static int hf_h245_g711Ulaw64k_mode = -1;         /* NULL */
1326 static int hf_h245_g711Ulaw56k_mode = -1;         /* NULL */
1327 static int hf_h245_g722_64k_mode = -1;            /* NULL */
1328 static int hf_h245_g722_56k_mode = -1;            /* NULL */
1329 static int hf_h245_g722_48k_mode = -1;            /* NULL */
1330 static int hf_h245_g728_mode = -1;                /* NULL */
1331 static int hf_h245_g729_mode = -1;                /* NULL */
1332 static int hf_h245_g729AnnexA_mode = -1;          /* NULL */
1333 static int hf_h245_g7231_mode = -1;               /* Mode_g7231 */
1334 static int hf_h245_noSilenceSuppressionLowRate = -1;  /* NULL */
1335 static int hf_h245_noSilenceSuppressionHighRate = -1;  /* NULL */
1336 static int hf_h245_silenceSuppressionLowRate = -1;  /* NULL */
1337 static int hf_h245_silenceSuppressionHighRate = -1;  /* NULL */
1338 static int hf_h245_is11172AudioMode = -1;         /* IS11172AudioMode */
1339 static int hf_h245_is13818AudioMode = -1;         /* IS13818AudioMode */
1340 static int hf_h245_g7231AnnexCMode = -1;          /* G7231AnnexCMode */
1341 static int hf_h245_genericAudioMode = -1;         /* GenericCapability */
1342 static int hf_h245_vbd_mode = -1;                 /* VBDMode */
1343 static int hf_h245_audioLayer = -1;               /* T_audioLayer */
1344 static int hf_h245_audioLayer1Mode = -1;          /* NULL */
1345 static int hf_h245_audioLayer2Mode = -1;          /* NULL */
1346 static int hf_h245_audioLayer3Mode = -1;          /* NULL */
1347 static int hf_h245_audioSampling = -1;            /* T_audioSampling */
1348 static int hf_h245_audioSampling32kMode = -1;     /* NULL */
1349 static int hf_h245_audioSampling44k1Mode = -1;    /* NULL */
1350 static int hf_h245_audioSampling48kMode = -1;     /* NULL */
1351 static int hf_h245_is11172multichannelType = -1;  /* IS11172_multichannelType */
1352 static int hf_h245_singleChannelMode = -1;        /* NULL */
1353 static int hf_h245_twoChannelStereo = -1;         /* NULL */
1354 static int hf_h245_twoChannelDual = -1;           /* NULL */
1355 static int hf_h245_audioLayerMode = -1;           /* IS13818AudioLayer */
1356 static int hf_h245_audioSamplingMode = -1;        /* IS13818AudioSampling */
1357 static int hf_h245_audioSampling16kMode = -1;     /* NULL */
1358 static int hf_h245_audioSampling22k05Mode = -1;   /* NULL */
1359 static int hf_h245_audioSampling24kMode = -1;     /* NULL */
1360 static int hf_h245_is13818MultichannelType = -1;  /* IS13818MultichannelType */
1361 static int hf_h245_threeChannels2_1Mode = -1;     /* NULL */
1362 static int hf_h245_threeChannels3_0Mode = -1;     /* NULL */
1363 static int hf_h245_fourChannels2_0_2_0Mode = -1;  /* NULL */
1364 static int hf_h245_fourChannels2_2Mode = -1;      /* NULL */
1365 static int hf_h245_fourChannels3_1Mode = -1;      /* NULL */
1366 static int hf_h245_fiveChannels3_0_2_0Mode = -1;  /* NULL */
1367 static int hf_h245_fiveChannels3_2Mode = -1;      /* NULL */
1368 static int hf_h245_vbd_type = -1;                 /* AudioMode */
1369 static int hf_h245_datamodeapplication = -1;      /* DataModeApplication */
1370 static int hf_h245_t84DataProtocolCapability = -1;  /* DataProtocolCapability */
1371 static int hf_h245_t38faxDataProtocolCapability = -1;  /* T38faxApp */
1372 static int hf_h245_genericDataMode = -1;          /* GenericCapability */
1373 static int hf_h245_bitRate_0_4294967295 = -1;     /* INTEGER_0_4294967295 */
1374 static int hf_h245_h233Encryption = -1;           /* NULL */
1375 static int hf_h245_mlr_type = -1;                 /* Mlr_type */
1376 static int hf_h245_systemLoop = -1;               /* NULL */
1377 static int hf_h245_mediaLoop = -1;                /* LogicalChannelNumber */
1378 static int hf_h245_logicalChannelLoop = -1;       /* LogicalChannelNumber */
1379 static int hf_h245_mla_type = -1;                 /* Mla_type */
1380 static int hf_h245_mlrej_type = -1;               /* Mlrej_type */
1381 static int hf_h245_maintloop_rej_cause = -1;      /* MaintenanceLoopRejectCause */
1382 static int hf_h245_canNotPerformLoop = -1;        /* NULL */
1383 static int hf_h245_communicationModeTable = -1;   /* SET_SIZE_1_256_OF_CommunicationModeTableEntry */
1384 static int hf_h245_communicationModeTable_item = -1;  /* CommunicationModeTableEntry */
1385 static int hf_h245_terminalLabel = -1;            /* TerminalLabel */
1386 static int hf_h245_sessionDescription = -1;       /* BMPString_SIZE_1_128 */
1387 static int hf_h245_entryDataType = -1;            /* T_entryDataType */
1388 static int hf_h245_cm_mediaChannel = -1;          /* Cm_mediaChannel */
1389 static int hf_h245_cm_mediaControlChannel = -1;   /* TransportAddress */
1390 static int hf_h245_sessionDependency = -1;        /* INTEGER_1_255 */
1391 static int hf_h245_terminalListRequest = -1;      /* NULL */
1392 static int hf_h245_makeMeChair = -1;              /* NULL */
1393 static int hf_h245_cancelMakeMeChair = -1;        /* NULL */
1394 static int hf_h245_dropTerminal = -1;             /* TerminalLabel */
1395 static int hf_h245_requestTerminalID = -1;        /* TerminalLabel */
1396 static int hf_h245_enterH243Password = -1;        /* NULL */
1397 static int hf_h245_enterH243TerminalID = -1;      /* NULL */
1398 static int hf_h245_enterH243ConferenceID = -1;    /* NULL */
1399 static int hf_h245_enterExtensionAddress = -1;    /* NULL */
1400 static int hf_h245_requestChairTokenOwner = -1;   /* NULL */
1401 static int hf_h245_requestTerminalCertificate = -1;  /* T_requestTerminalCertificate */
1402 static int hf_h245_certSelectionCriteria = -1;    /* CertSelectionCriteria */
1403 static int hf_h245_sRandom = -1;                  /* INTEGER_1_4294967295 */
1404 static int hf_h245_broadcastMyLogicalChannel = -1;  /* LogicalChannelNumber */
1405 static int hf_h245_makeTerminalBroadcaster = -1;  /* TerminalLabel */
1406 static int hf_h245_sendThisSource = -1;           /* TerminalLabel */
1407 static int hf_h245_requestAllTerminalIDs = -1;    /* NULL */
1408 static int hf_h245_remoteMCRequest = -1;          /* RemoteMCRequest */
1409 static int hf_h245_CertSelectionCriteria_item = -1;  /* Criteria */
1410 static int hf_h245_field = -1;                    /* OBJECT_IDENTIFIER */
1411 static int hf_h245_value = -1;                    /* OCTET_STRING_SIZE_1_65535 */
1412 static int hf_h245_mcuNumber = -1;                /* McuNumber */
1413 static int hf_h245_terminalNumber = -1;           /* TerminalNumber */
1414 static int hf_h245_mCTerminalIDResponse = -1;     /* T_mCTerminalIDResponse */
1415 static int hf_h245_terminalID = -1;               /* TerminalID */
1416 static int hf_h245_terminalIDResponse = -1;       /* T_terminalIDResponse */
1417 static int hf_h245_conferenceIDResponse = -1;     /* T_conferenceIDResponse */
1418 static int hf_h245_conferenceID = -1;             /* ConferenceID */
1419 static int hf_h245_passwordResponse = -1;         /* T_passwordResponse */
1420 static int hf_h245_password = -1;                 /* Password */
1421 static int hf_h245_terminalListResponse = -1;     /* SET_SIZE_1_256_OF_TerminalLabel */
1422 static int hf_h245_terminalListResponse_item = -1;  /* TerminalLabel */
1423 static int hf_h245_videoCommandReject = -1;       /* NULL */
1424 static int hf_h245_terminalDropReject = -1;       /* NULL */
1425 static int hf_h245_makeMeChairResponse = -1;      /* T_makeMeChairResponse */
1426 static int hf_h245_grantedChairToken = -1;        /* NULL */
1427 static int hf_h245_deniedChairToken = -1;         /* NULL */
1428 static int hf_h245_extensionAddressResponse = -1;  /* T_extensionAddressResponse */
1429 static int hf_h245_extensionAddress = -1;         /* TerminalID */
1430 static int hf_h245_chairTokenOwnerResponse = -1;  /* T_chairTokenOwnerResponse */
1431 static int hf_h245_terminalCertificateResponse = -1;  /* T_terminalCertificateResponse */
1432 static int hf_h245_certificateResponse = -1;      /* OCTET_STRING_SIZE_1_65535 */
1433 static int hf_h245_broadcastMyLogicalChannelResponse = -1;  /* T_broadcastMyLogicalChannelResponse */
1434 static int hf_h245_grantedBroadcastMyLogicalChannel = -1;  /* NULL */
1435 static int hf_h245_deniedBroadcastMyLogicalChannel = -1;  /* NULL */
1436 static int hf_h245_makeTerminalBroadcasterResponse = -1;  /* T_makeTerminalBroadcasterResponse */
1437 static int hf_h245_grantedMakeTerminalBroadcaster = -1;  /* NULL */
1438 static int hf_h245_deniedMakeTerminalBroadcaster = -1;  /* NULL */
1439 static int hf_h245_sendThisSourceResponse = -1;   /* T_sendThisSourceResponse */
1440 static int hf_h245_grantedSendThisSource = -1;    /* NULL */
1441 static int hf_h245_deniedSendThisSource = -1;     /* NULL */
1442 static int hf_h245_requestAllTerminalIDsResponse = -1;  /* RequestAllTerminalIDsResponse */
1443 static int hf_h245_remoteMCResponse = -1;         /* RemoteMCResponse */
1444 static int hf_h245_terminalInformation = -1;      /* SEQUENCE_OF_TerminalInformation */
1445 static int hf_h245_terminalInformation_item = -1;  /* TerminalInformation */
1446 static int hf_h245_masterActivate = -1;           /* NULL */
1447 static int hf_h245_slaveActivate = -1;            /* NULL */
1448 static int hf_h245_deActivate = -1;               /* NULL */
1449 static int hf_h245_accept = -1;                   /* NULL */
1450 static int hf_h245_reject = -1;                   /* T_reject */
1451 static int hf_h245_functionNotSupportedFlag = -1;  /* NULL */
1452 static int hf_h245_callInformationReq = -1;       /* CallInformationReq */
1453 static int hf_h245_maxNumberOfAdditionalConnections = -1;  /* INTEGER_1_65535 */
1454 static int hf_h245_addConnectionReq = -1;         /* AddConnectionReq */
1455 static int hf_h245_dialingInformation = -1;       /* DialingInformation */
1456 static int hf_h245_removeConnectionReq = -1;      /* RemoveConnectionReq */
1457 static int hf_h245_connectionIdentifier = -1;     /* ConnectionIdentifier */
1458 static int hf_h245_maximumHeaderIntervalReq = -1;  /* MaximumHeaderIntervalReq */
1459 static int hf_h245_requestType = -1;              /* T_requestType */
1460 static int hf_h245_currentIntervalInformation = -1;  /* NULL */
1461 static int hf_h245_requestedInterval = -1;        /* INTEGER_0_65535 */
1462 static int hf_h245_callInformationResp = -1;      /* CallInformationResp */
1463 static int hf_h245_callAssociationNumber = -1;    /* INTEGER_0_4294967295 */
1464 static int hf_h245_addConnectionResp = -1;        /* AddConnectionResp */
1465 static int hf_h245_responseCode = -1;             /* T_responseCode */
1466 static int hf_h245_accepted = -1;                 /* NULL */
1467 static int hf_h245_rejected = -1;                 /* T_rejected */
1468 static int hf_h245_connectionsNotAvailable = -1;  /* NULL */
1469 static int hf_h245_userRejected = -1;             /* NULL */
1470 static int hf_h245_removeConnectionResp = -1;     /* RemoveConnectionResp */
1471 static int hf_h245_maximumHeaderIntervalResp = -1;  /* MaximumHeaderIntervalResp */
1472 static int hf_h245_currentInterval = -1;          /* INTEGER_0_65535 */
1473 static int hf_h245_crcDesired = -1;               /* T_crcDesired */
1474 static int hf_h245_excessiveError = -1;           /* T_excessiveError */
1475 static int hf_h245_differential = -1;             /* SET_SIZE_1_65535_OF_DialingInformationNumber */
1476 static int hf_h245_differential_item = -1;        /* DialingInformationNumber */
1477 static int hf_h245_infoNotAvailable = -1;         /* INTEGER_1_65535 */
1478 static int hf_h245_networkAddressNum = -1;        /* NumericString_SIZE_0_40 */
1479 static int hf_h245_subAddress = -1;               /* IA5String_SIZE_1_40 */
1480 static int hf_h245_networkType = -1;              /* SET_SIZE_1_255_OF_DialingInformationNetworkType */
1481 static int hf_h245_networkType_item = -1;         /* DialingInformationNetworkType */
1482 static int hf_h245_n_isdn = -1;                   /* NULL */
1483 static int hf_h245_gstn = -1;                     /* NULL */
1484 static int hf_h245_mobile = -1;                   /* NULL */
1485 static int hf_h245_channelTag = -1;               /* INTEGER_0_4294967295 */
1486 static int hf_h245_sequenceNum = -1;              /* INTEGER_0_4294967295 */
1487 static int hf_h245_maximumBitRate = -1;           /* MaximumBitRate */
1488 static int hf_h245_rejectReason = -1;             /* LogicalChannelRateRejectReason */
1489 static int hf_h245_currentMaximumBitRate = -1;    /* MaximumBitRate */
1490 static int hf_h245_undefinedReason = -1;          /* NULL */
1491 static int hf_h245_insufficientResources = -1;    /* NULL */
1492 static int hf_h245_specificRequest = -1;          /* T_specificRequest */
1493 static int hf_h245_multiplexCapabilityBool = -1;  /* BOOLEAN */
1494 static int hf_h245_capabilityTableEntryNumbers = -1;  /* SET_SIZE_1_65535_OF_CapabilityTableEntryNumber */
1495 static int hf_h245_capabilityTableEntryNumbers_item = -1;  /* CapabilityTableEntryNumber */
1496 static int hf_h245_capabilityDescriptorNumbers = -1;  /* SET_SIZE_1_256_OF_CapabilityDescriptorNumber */
1497 static int hf_h245_capabilityDescriptorNumbers_item = -1;  /* CapabilityDescriptorNumber */
1498 static int hf_h245_genericRequestFlag = -1;       /* NULL */
1499 static int hf_h245_encryptionSE = -1;             /* OCTET_STRING */
1500 static int hf_h245_encryptionIVRequest = -1;      /* NULL */
1501 static int hf_h245_encryptionAlgorithmID = -1;    /* T_encryptionAlgorithmID */
1502 static int hf_h245_h233AlgorithmIdentifier = -1;  /* SequenceNumber */
1503 static int hf_h245_associatedAlgorithm = -1;      /* NonStandardParameter */
1504 static int hf_h245_wholeMultiplex = -1;           /* NULL */
1505 static int hf_h245_scope = -1;                    /* Scope */
1506 static int hf_h245_res_maximumBitRate = -1;       /* INTEGER_0_16777215 */
1507 static int hf_h245_noRestriction = -1;            /* NULL */
1508 static int hf_h245_restriction = -1;              /* Restriction */
1509 static int hf_h245_disconnect = -1;               /* NULL */
1510 static int hf_h245_gstnOptions = -1;              /* T_gstnOptions */
1511 static int hf_h245_telephonyMode = -1;            /* NULL */
1512 static int hf_h245_v8bis = -1;                    /* NULL */
1513 static int hf_h245_v34DSVD = -1;                  /* NULL */
1514 static int hf_h245_v34DuplexFAX = -1;             /* NULL */
1515 static int hf_h245_v34H324 = -1;                  /* NULL */
1516 static int hf_h245_isdnOptions = -1;              /* T_isdnOptions */
1517 static int hf_h245_v140 = -1;                     /* NULL */
1518 static int hf_h245_terminalOnHold = -1;           /* NULL */
1519 static int hf_h245_cancelBroadcastMyLogicalChannel = -1;  /* LogicalChannelNumber */
1520 static int hf_h245_cancelMakeTerminalBroadcaster = -1;  /* NULL */
1521 static int hf_h245_cancelSendThisSource = -1;     /* NULL */
1522 static int hf_h245_dropConference = -1;           /* NULL */
1523 static int hf_h245_substituteConferenceIDCommand = -1;  /* SubstituteConferenceIDCommand */
1524 static int hf_h245_conferenceIdentifier = -1;     /* OCTET_STRING_SIZE_16 */
1525 static int hf_h245_masterToSlave = -1;            /* NULL */
1526 static int hf_h245_slaveToMaster = -1;            /* NULL */
1527 static int hf_h245_mc_type = -1;                  /* Mc_type */
1528 static int hf_h245_equaliseDelay = -1;            /* NULL */
1529 static int hf_h245_zeroDelay = -1;                /* NULL */
1530 static int hf_h245_multipointModeCommand = -1;    /* NULL */
1531 static int hf_h245_cancelMultipointModeCommand = -1;  /* NULL */
1532 static int hf_h245_videoFreezePicture = -1;       /* NULL */
1533 static int hf_h245_videoFastUpdatePicture = -1;   /* NULL */
1534 static int hf_h245_videoFastUpdateGOB = -1;       /* T_videoFastUpdateGOB */
1535 static int hf_h245_firstGOB = -1;                 /* INTEGER_0_17 */
1536 static int hf_h245_numberOfGOBs = -1;             /* INTEGER_1_18 */
1537 static int hf_h245_videoTemporalSpatialTradeOff = -1;  /* INTEGER_0_31 */
1538 static int hf_h245_videoSendSyncEveryGOB = -1;    /* NULL */
1539 static int hf_h245_videoSendSyncEveryGOBCancel = -1;  /* NULL */
1540 static int hf_h245_videoFastUpdateMB = -1;        /* T_videoFastUpdateMB */
1541 static int hf_h245_firstGOB_0_255 = -1;           /* INTEGER_0_255 */
1542 static int hf_h245_firstMB_1_8192 = -1;           /* INTEGER_1_8192 */
1543 static int hf_h245_numberOfMBs = -1;              /* INTEGER_1_8192 */
1544 static int hf_h245_maxH223MUXPDUsize = -1;        /* INTEGER_1_65535 */
1545 static int hf_h245_encryptionUpdate = -1;         /* EncryptionSync */
1546 static int hf_h245_encryptionUpdateRequest = -1;  /* EncryptionUpdateRequest */
1547 static int hf_h245_switchReceiveMediaOff = -1;    /* NULL */
1548 static int hf_h245_switchReceiveMediaOn = -1;     /* NULL */
1549 static int hf_h245_progressiveRefinementStart = -1;  /* T_progressiveRefinementStart */
1550 static int hf_h245_repeatCount = -1;              /* T_repeatCount */
1551 static int hf_h245_doOneProgression = -1;         /* NULL */
1552 static int hf_h245_doContinuousProgressions = -1;  /* NULL */
1553 static int hf_h245_doOneIndependentProgression = -1;  /* NULL */
1554 static int hf_h245_doContinuousIndependentProgressions = -1;  /* NULL */
1555 static int hf_h245_progressiveRefinementAbortOne = -1;  /* NULL */
1556 static int hf_h245_progressiveRefinementAbortContinuous = -1;  /* NULL */
1557 static int hf_h245_videoBadMBs = -1;              /* T_videoBadMBs */
1558 static int hf_h245_firstMB = -1;                  /* INTEGER_1_9216 */
1559 static int hf_h245_numberOfMBs1_1_9216 = -1;      /* INTEGER_1_9216 */
1560 static int hf_h245_temporalReference = -1;        /* INTEGER_0_1023 */
1561 static int hf_h245_lostPicture = -1;              /* SEQUENCE_OF_PictureReference */
1562 static int hf_h245_lostPicture_item = -1;         /* PictureReference */
1563 static int hf_h245_lostPartialPicture = -1;       /* T_lostPartialPicture */
1564 static int hf_h245_pictureReference = -1;         /* PictureReference */
1565 static int hf_h245_recoveryReferencePicture = -1;  /* SEQUENCE_OF_PictureReference */
1566 static int hf_h245_recoveryReferencePicture_item = -1;  /* PictureReference */
1567 static int hf_h245_encryptionUpdateCommand = -1;  /* T_encryptionUpdateCommand */
1568 static int hf_h245_encryptionUpdateAck = -1;      /* T_encryptionUpdateAck */
1569 static int hf_h245_direction = -1;                /* EncryptionUpdateDirection */
1570 static int hf_h245_secureChannel = -1;            /* BOOLEAN */
1571 static int hf_h245_sharedSecret = -1;             /* BOOLEAN */
1572 static int hf_h245_certProtectedKey = -1;         /* BOOLEAN */
1573 static int hf_h245_keyProtectionMethod = -1;      /* KeyProtectionMethod */
1574 static int hf_h245_pictureNumber = -1;            /* INTEGER_0_1023 */
1575 static int hf_h245_longTermPictureIndex = -1;     /* INTEGER_0_255 */
1576 static int hf_h245_h223ModeChange = -1;           /* T_h223ModeChange */
1577 static int hf_h245_toLevel0 = -1;                 /* NULL */
1578 static int hf_h245_toLevel1 = -1;                 /* NULL */
1579 static int hf_h245_toLevel2 = -1;                 /* NULL */
1580 static int hf_h245_toLevel2withOptionalHeader = -1;  /* NULL */
1581 static int hf_h245_h223AnnexADoubleFlag = -1;     /* T_h223AnnexADoubleFlag */
1582 static int hf_h245_start = -1;                    /* NULL */
1583 static int hf_h245_stop = -1;                     /* NULL */
1584 static int hf_h245_bitRate = -1;                  /* INTEGER_1_65535 */
1585 static int hf_h245_bitRateLockedToPCRClock = -1;  /* BOOLEAN */
1586 static int hf_h245_bitRateLockedToNetworkClock = -1;  /* BOOLEAN */
1587 static int hf_h245_cmd_aal = -1;                  /* Cmd_aal */
1588 static int hf_h245_cmd_aal1 = -1;                 /* Cmd_aal1 */
1589 static int hf_h245_cmd_clockRecovery = -1;        /* Cmd_clockRecovery */
1590 static int hf_h245_nullClockRecoveryflag = -1;    /* NULL */
1591 static int hf_h245_srtsClockRecovery = -1;        /* NULL */
1592 static int hf_h245_adaptiveClockRecoveryFlag = -1;  /* NULL */
1593 static int hf_h245_cmd_errorCorrection = -1;      /* Cmd_errorCorrection */
1594 static int hf_h245_nullErrorCorrectionFlag = -1;  /* NULL */
1595 static int hf_h245_longInterleaverFlag = -1;      /* NULL */
1596 static int hf_h245_shortInterleaverFlag = -1;     /* NULL */
1597 static int hf_h245_errorCorrectionOnlyFlag = -1;  /* NULL */
1598 static int hf_h245_cmd_aal5 = -1;                 /* Cmd_aal5 */
1599 static int hf_h245_cmd_multiplex = -1;            /* Cmd_multiplex */
1600 static int hf_h245_noMultiplex = -1;              /* NULL */
1601 static int hf_h245_transportStream = -1;          /* NULL */
1602 static int hf_h245_programStreamFlag = -1;        /* NULL */
1603 static int hf_h245_cmd_reverseParameters = -1;    /* Cmd_reverseParameters */
1604 static int hf_h245_cmdr_multiplex = -1;           /* CmdR_multiplex */
1605 static int hf_h245_sampleSize = -1;               /* INTEGER_1_255 */
1606 static int hf_h245_samplesPerFrame = -1;          /* INTEGER_1_255 */
1607 static int hf_h245_status = -1;                   /* T_status */
1608 static int hf_h245_synchronized = -1;             /* NULL */
1609 static int hf_h245_reconfiguration = -1;          /* NULL */
1610 static int hf_h245_fns_cause = -1;                /* FunctionNotSupportedCause */
1611 static int hf_h245_syntaxError = -1;              /* NULL */
1612 static int hf_h245_semanticError = -1;            /* NULL */
1613 static int hf_h245_unknownFunction = -1;          /* NULL */
1614 static int hf_h245_returnedFunction = -1;         /* OCTET_STRING */
1615 static int hf_h245_sbeNumber = -1;                /* INTEGER_0_9 */
1616 static int hf_h245_terminalNumberAssign = -1;     /* TerminalLabel */
1617 static int hf_h245_terminalJoinedConference = -1;  /* TerminalLabel */
1618 static int hf_h245_terminalLeftConference = -1;   /* TerminalLabel */
1619 static int hf_h245_seenByAtLeastOneOther = -1;    /* NULL */
1620 static int hf_h245_cancelSeenByAtLeastOneOther = -1;  /* NULL */
1621 static int hf_h245_seenByAll = -1;                /* NULL */
1622 static int hf_h245_cancelSeenByAll = -1;          /* NULL */
1623 static int hf_h245_terminalYouAreSeeing = -1;     /* TerminalLabel */
1624 static int hf_h245_requestForFloor = -1;          /* NULL */
1625 static int hf_h245_withdrawChairToken = -1;       /* NULL */
1626 static int hf_h245_floorRequested = -1;           /* TerminalLabel */
1627 static int hf_h245_terminalYouAreSeeingInSubPictureNumber = -1;  /* TerminalYouAreSeeingInSubPictureNumber */
1628 static int hf_h245_videoIndicateCompose = -1;     /* VideoIndicateCompose */
1629 static int hf_h245_subPictureNumber = -1;         /* INTEGER_0_255 */
1630 static int hf_h245_compositionNumber = -1;        /* INTEGER_0_255 */
1631 static int hf_h245_mi_type = -1;                  /* Mi_type */
1632 static int hf_h245_logicalChannelActive = -1;     /* NULL */
1633 static int hf_h245_logicalChannelInactive = -1;   /* NULL */
1634 static int hf_h245_multipointConference = -1;     /* NULL */
1635 static int hf_h245_cancelMultipointConference = -1;  /* NULL */
1636 static int hf_h245_multipointZeroComm = -1;       /* NULL */
1637 static int hf_h245_cancelMultipointZeroComm = -1;  /* NULL */
1638 static int hf_h245_multipointSecondaryStatus = -1;  /* NULL */
1639 static int hf_h245_cancelMultipointSecondaryStatus = -1;  /* NULL */
1640 static int hf_h245_videoIndicateReadyToActivate = -1;  /* NULL */
1641 static int hf_h245_videoNotDecodedMBs = -1;       /* T_videoNotDecodedMBs */
1642 static int hf_h245_temporalReference_0_255 = -1;  /* INTEGER_0_255 */
1643 static int hf_h245_estimatedReceivedJitterMantissa = -1;  /* INTEGER_0_3 */
1644 static int hf_h245_estimatedReceivedJitterExponent = -1;  /* INTEGER_0_7 */
1645 static int hf_h245_skippedFrameCount = -1;        /* INTEGER_0_15 */
1646 static int hf_h245_additionalDecoderBuffer = -1;  /* INTEGER_0_262143 */
1647 static int hf_h245_logicalChannelNumber1 = -1;    /* LogicalChannelNumber */
1648 static int hf_h245_logicalChannelNumber2 = -1;    /* LogicalChannelNumber */
1649 static int hf_h245_skew = -1;                     /* INTEGER_0_4095 */
1650 static int hf_h245_maximumSkew = -1;              /* INTEGER_0_4095 */
1651 static int hf_h245_signalAddress = -1;            /* TransportAddress */
1652 static int hf_h245_vendor = -1;                   /* NonStandardIdentifier */
1653 static int hf_h245_productNumber = -1;            /* OCTET_STRING_SIZE_1_256 */
1654 static int hf_h245_versionNumber = -1;            /* OCTET_STRING_SIZE_1_256 */
1655 static int hf_h245_ind_aal = -1;                  /* Ind_aal */
1656 static int hf_h245_ind_aal1 = -1;                 /* Ind_aal1 */
1657 static int hf_h245_ind_clockRecovery = -1;        /* Ind_clockRecovery */
1658 static int hf_h245_ind_errorCorrection = -1;      /* Ind_errorCorrection */
1659 static int hf_h245_ind_aal5 = -1;                 /* Ind_aal5 */
1660 static int hf_h245_ind_multiplex = -1;            /* Ind_multiplex */
1661 static int hf_h245_ind_reverseParameters = -1;    /* Ind_reverseParameters */
1662 static int hf_h245_indr_multiplex = -1;           /* IndR_multiplex */
1663 static int hf_h245_iv8 = -1;                      /* IV8 */
1664 static int hf_h245_iv16 = -1;                     /* IV16 */
1665 static int hf_h245_iv = -1;                       /* OCTET_STRING */
1666 static int hf_h245_alphanumeric = -1;             /* GeneralString */
1667 static int hf_h245_userInputSupportIndication = -1;  /* T_userInputSupportIndication */
1668 static int hf_h245_signal = -1;                   /* T_signal */
1669 static int hf_h245_signalType = -1;               /* T_signalType */
1670 static int hf_h245_duration = -1;                 /* INTEGER_1_65535 */
1671 static int hf_h245_rtp = -1;                      /* T_rtp */
1672 static int hf_h245_timestamp = -1;                /* INTEGER_0_4294967295 */
1673 static int hf_h245_expirationTime = -1;           /* INTEGER_0_4294967295 */
1674 static int hf_h245_rtpPayloadIndication = -1;     /* NULL */
1675 static int hf_h245_paramS = -1;                   /* Params */
1676 static int hf_h245_encryptedSignalType = -1;      /* OCTET_STRING_SIZE_1 */
1677 static int hf_h245_algorithmOID = -1;             /* OBJECT_IDENTIFIER */
1678 static int hf_h245_signalUpdate = -1;             /* T_signalUpdate */
1679 static int hf_h245_si_rtp = -1;                   /* Si_rtp */
1680 static int hf_h245_extendedAlphanumeric = -1;     /* T_extendedAlphanumeric */
1681 static int hf_h245_encrypted = -1;                /* OCTET_STRING */
1682 static int hf_h245_encryptedAlphanumeric = -1;    /* EncryptedAlphanumeric */
1683
1684 /*--- End of included file: packet-h245-hf.c ---*/
1685 #line 279 "packet-h245-template.c"
1686
1687 /* Initialize the subtree pointers */
1688
1689 /*--- Included file: packet-h245-ett.c ---*/
1690 #line 1 "packet-h245-ett.c"
1691 static gint ett_h245_MultimediaSystemControlMessage = -1;
1692 static gint ett_h245_RequestMessage = -1;
1693 static gint ett_h245_ResponseMessage = -1;
1694 static gint ett_h245_CommandMessage = -1;
1695 static gint ett_h245_IndicationMessage = -1;
1696 static gint ett_h245_GenericMessage = -1;
1697 static gint ett_h245_SEQUENCE_OF_GenericParameter = -1;
1698 static gint ett_h245_NonStandardMessage = -1;
1699 static gint ett_h245_NonStandardParameter = -1;
1700 static gint ett_h245_NonStandardIdentifier = -1;
1701 static gint ett_h245_H221NonStandardID = -1;
1702 static gint ett_h245_MasterSlaveDetermination = -1;
1703 static gint ett_h245_MasterSlaveDeterminationAck = -1;
1704 static gint ett_h245_T_decision = -1;
1705 static gint ett_h245_MasterSlaveDeterminationReject = -1;
1706 static gint ett_h245_MasterSlaveDeterminationRejectCause = -1;
1707 static gint ett_h245_MasterSlaveDeterminationRelease = -1;
1708 static gint ett_h245_TerminalCapabilitySet = -1;
1709 static gint ett_h245_SET_SIZE_1_256_OF_CapabilityTableEntry = -1;
1710 static gint ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptor = -1;
1711 static gint ett_h245_SEQUENCE_OF_GenericInformation = -1;
1712 static gint ett_h245_CapabilityTableEntry = -1;
1713 static gint ett_h245_CapabilityDescriptor = -1;
1714 static gint ett_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet = -1;
1715 static gint ett_h245_AlternativeCapabilitySet = -1;
1716 static gint ett_h245_TerminalCapabilitySetAck = -1;
1717 static gint ett_h245_TerminalCapabilitySetReject = -1;
1718 static gint ett_h245_TerminalCapabilitySetRejectCause = -1;
1719 static gint ett_h245_T_tableEntryCapacityExceeded = -1;
1720 static gint ett_h245_TerminalCapabilitySetRelease = -1;
1721 static gint ett_h245_Capability = -1;
1722 static gint ett_h245_T_h233EncryptionReceiveCapability = -1;
1723 static gint ett_h245_H235SecurityCapability = -1;
1724 static gint ett_h245_MultiplexCapability = -1;
1725 static gint ett_h245_H222Capability = -1;
1726 static gint ett_h245_SET_OF_VCCapability = -1;
1727 static gint ett_h245_VCCapability = -1;
1728 static gint ett_h245_T_aal1 = -1;
1729 static gint ett_h245_T_aal5 = -1;
1730 static gint ett_h245_T_availableBitRates = -1;
1731 static gint ett_h245_Avb_type = -1;
1732 static gint ett_h245_T_rangeOfBitRates = -1;
1733 static gint ett_h245_T_aal1ViaGateway = -1;
1734 static gint ett_h245_SET_SIZE_1_256_OF_Q2931Address = -1;
1735 static gint ett_h245_H223Capability = -1;
1736 static gint ett_h245_T_h223MultiplexTableCapability = -1;
1737 static gint ett_h245_T_enhanced = -1;
1738 static gint ett_h245_T_mobileOperationTransmitCapability = -1;
1739 static gint ett_h245_T_mobileMultilinkFrameCapability = -1;
1740 static gint ett_h245_H223AnnexCCapability = -1;
1741 static gint ett_h245_V76Capability = -1;
1742 static gint ett_h245_V75Capability = -1;
1743 static gint ett_h245_H2250Capability = -1;
1744 static gint ett_h245_T_mcCapability = -1;
1745 static gint ett_h245_SEQUENCE_SIZE_1_256_OF_RedundancyEncodingCapability = -1;
1746 static gint ett_h245_MediaPacketizationCapability = -1;
1747 static gint ett_h245_SEQUENCE_SIZE_1_256_OF_RTPPayloadType = -1;
1748 static gint ett_h245_RSVPParameters = -1;
1749 static gint ett_h245_QOSMode = -1;
1750 static gint ett_h245_ATMParameters = -1;
1751 static gint ett_h245_ServicePriorityValue = -1;
1752 static gint ett_h245_ServicePriority = -1;
1753 static gint ett_h245_AuthorizationParameters = -1;
1754 static gint ett_h245_QOSType = -1;
1755 static gint ett_h245_QOSClass = -1;
1756 static gint ett_h245_QOSDescriptor = -1;
1757 static gint ett_h245_GenericTransportParameters = -1;
1758 static gint ett_h245_QOSCapability = -1;
1759 static gint ett_h245_MediaTransportType = -1;
1760 static gint ett_h245_T_atm_AAL5_compressed = -1;
1761 static gint ett_h245_MediaChannelCapability = -1;
1762 static gint ett_h245_TransportCapability = -1;
1763 static gint ett_h245_SEQUENCE_SIZE_1_256_OF_QOSCapability = -1;
1764 static gint ett_h245_SEQUENCE_SIZE_1_256_OF_MediaChannelCapability = -1;
1765 static gint ett_h245_RedundancyEncodingCapability = -1;
1766 static gint ett_h245_SEQUENCE_SIZE_1_256_OF_CapabilityTableEntryNumber = -1;
1767 static gint ett_h245_RedundancyEncodingMethod = -1;
1768 static gint ett_h245_RTPH263VideoRedundancyEncoding = -1;
1769 static gint ett_h245_T_frameToThreadMapping = -1;
1770 static gint ett_h245_SEQUENCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping = -1;
1771 static gint ett_h245_T_containedThreads = -1;
1772 static gint ett_h245_RTPH263VideoRedundancyFrameMapping = -1;
1773 static gint ett_h245_T_frameSequence = -1;
1774 static gint ett_h245_MultipointCapability = -1;
1775 static gint ett_h245_SEQUENCE_OF_MediaDistributionCapability = -1;
1776 static gint ett_h245_MediaDistributionCapability = -1;
1777 static gint ett_h245_SEQUENCE_OF_DataApplicationCapability = -1;
1778 static gint ett_h245_VideoCapability = -1;
1779 static gint ett_h245_ExtendedVideoCapability = -1;
1780 static gint ett_h245_SEQUENCE_OF_VideoCapability = -1;
1781 static gint ett_h245_SEQUENCE_OF_GenericCapability = -1;
1782 static gint ett_h245_H261VideoCapability = -1;
1783 static gint ett_h245_H262VideoCapability = -1;
1784 static gint ett_h245_H263VideoCapability = -1;
1785 static gint ett_h245_EnhancementLayerInfo = -1;
1786 static gint ett_h245_SET_SIZE_1_14_OF_EnhancementOptions = -1;
1787 static gint ett_h245_SET_SIZE_1_14_OF_BEnhancementParameters = -1;
1788 static gint ett_h245_BEnhancementParameters = -1;
1789 static gint ett_h245_EnhancementOptions = -1;
1790 static gint ett_h245_H263Options = -1;
1791 static gint ett_h245_SET_SIZE_1_16_OF_CustomPictureClockFrequency = -1;
1792 static gint ett_h245_SET_SIZE_1_16_OF_CustomPictureFormat = -1;
1793 static gint ett_h245_SET_SIZE_1_16_OF_H263VideoModeCombos = -1;
1794 static gint ett_h245_TransparencyParameters = -1;
1795 static gint ett_h245_RefPictureSelection = -1;
1796 static gint ett_h245_T_additionalPictureMemory = -1;
1797 static gint ett_h245_T_videoBackChannelSend = -1;
1798 static gint ett_h245_T_enhancedReferencePicSelect = -1;
1799 static gint ett_h245_T_subPictureRemovalParameters = -1;
1800 static gint ett_h245_CustomPictureClockFrequency = -1;
1801 static gint ett_h245_CustomPictureFormat = -1;
1802 static gint ett_h245_T_mPI = -1;
1803 static gint ett_h245_T_customPCF = -1;
1804 static gint ett_h245_T_customPCF_item = -1;
1805 static gint ett_h245_T_pixelAspectInformation = -1;
1806 static gint ett_h245_T_pixelAspectCode = -1;
1807 static gint ett_h245_T_extendedPAR = -1;
1808 static gint ett_h245_T_extendedPAR_item = -1;
1809 static gint ett_h245_H263VideoModeCombos = -1;
1810 static gint ett_h245_SET_SIZE_1_16_OF_H263ModeComboFlags = -1;
1811 static gint ett_h245_H263ModeComboFlags = -1;
1812 static gint ett_h245_H263Version3Options = -1;
1813 static gint ett_h245_IS11172VideoCapability = -1;
1814 static gint ett_h245_AudioCapability = -1;
1815 static gint ett_h245_T_g7231 = -1;
1816 static gint ett_h245_G729Extensions = -1;
1817 static gint ett_h245_G7231AnnexCCapability = -1;
1818 static gint ett_h245_G723AnnexCAudioMode = -1;
1819 static gint ett_h245_IS11172AudioCapability = -1;
1820 static gint ett_h245_IS13818AudioCapability = -1;
1821 static gint ett_h245_GSMAudioCapability = -1;
1822 static gint ett_h245_VBDCapability = -1;
1823 static gint ett_h245_DataApplicationCapability = -1;
1824 static gint ett_h245_Application = -1;
1825 static gint ett_h245_T_t84 = -1;
1826 static gint ett_h245_Nlpid = -1;
1827 static gint ett_h245_T_t38fax = -1;
1828 static gint ett_h245_DataProtocolCapability = -1;
1829 static gint ett_h245_T_v76wCompression = -1;
1830 static gint ett_h245_CompressionType = -1;
1831 static gint ett_h245_V42bis = -1;
1832 static gint ett_h245_T84Profile = -1;
1833 static gint ett_h245_T_t84Restricted = -1;
1834 static gint ett_h245_T38FaxProfile = -1;
1835 static gint ett_h245_T38FaxRateManagement = -1;
1836 static gint ett_h245_T38FaxUdpOptions = -1;
1837 static gint ett_h245_T_t38FaxUdpEC = -1;
1838 static gint ett_h245_T38FaxTcpOptions = -1;
1839 static gint ett_h245_EncryptionAuthenticationAndIntegrity = -1;
1840 static gint ett_h245_EncryptionCapability = -1;
1841 static gint ett_h245_MediaEncryptionAlgorithm = -1;
1842 static gint ett_h245_AuthenticationCapability = -1;
1843 static gint ett_h245_IntegrityCapability = -1;
1844 static gint ett_h245_UserInputCapability = -1;
1845 static gint ett_h245_SEQUENCE_SIZE_1_16_OF_NonStandardParameter = -1;
1846 static gint ett_h245_ConferenceCapability = -1;
1847 static gint ett_h245_SEQUENCE_OF_NonStandardParameter = -1;
1848 static gint ett_h245_GenericCapability = -1;
1849 static gint ett_h245_CapabilityIdentifier = -1;
1850 static gint ett_h245_GenericParameter = -1;
1851 static gint ett_h245_SEQUENCE_OF_ParameterIdentifier = -1;
1852 static gint ett_h245_ParameterIdentifier = -1;
1853 static gint ett_h245_ParameterValue = -1;
1854 static gint ett_h245_MultiplexedStreamCapability = -1;
1855 static gint ett_h245_MultiplexFormat = -1;
1856 static gint ett_h245_AudioTelephonyEventCapability = -1;
1857 static gint ett_h245_AudioToneCapability = -1;
1858 static gint ett_h245_NoPTAudioTelephonyEventCapability = -1;
1859 static gint ett_h245_NoPTAudioToneCapability = -1;
1860 static gint ett_h245_MultiplePayloadStreamCapability = -1;
1861 static gint ett_h245_DepFECCapability = -1;
1862 static gint ett_h245_FECC_rfc2733 = -1;
1863 static gint ett_h245_T_separateStreamBool = -1;
1864 static gint ett_h245_FECCapability = -1;
1865 static gint ett_h245_Rfc2733Format = -1;
1866 static gint ett_h245_OpenLogicalChannel = -1;
1867 static gint ett_h245_T_forwardLogicalChannelParameters = -1;
1868 static gint ett_h245_OLC_forw_multiplexParameters = -1;
1869 static gint ett_h245_OLC_reverseLogicalChannelParameters = -1;
1870 static gint ett_h245_OLC_rev_multiplexParameters = -1;
1871 static gint ett_h245_NetworkAccessParameters = -1;
1872 static gint ett_h245_T_distribution = -1;
1873 static gint ett_h245_T_networkAddress = -1;
1874 static gint ett_h245_T_t120SetupProcedure = -1;
1875 static gint ett_h245_Q2931Address = -1;
1876 static gint ett_h245_T_address = -1;
1877 static gint ett_h245_V75Parameters = -1;
1878 static gint ett_h245_DataType = -1;
1879 static gint ett_h245_H235Media = -1;
1880 static gint ett_h245_T_mediaType = -1;
1881 static gint ett_h245_MultiplexedStreamParameter = -1;
1882 static gint ett_h245_H222LogicalChannelParameters = -1;
1883 static gint ett_h245_H223LogicalChannelParameters = -1;
1884 static gint ett_h245_T_adaptationLayerType = -1;
1885 static gint ett_h245_Al3 = -1;
1886 static gint ett_h245_H223AL1MParameters = -1;
1887 static gint ett_h245_T_transferMode = -1;
1888 static gint ett_h245_AL1HeaderFEC = -1;
1889 static gint ett_h245_AL1CrcLength = -1;
1890 static gint ett_h245_ArqType = -1;
1891 static gint ett_h245_H223AL2MParameters = -1;
1892 static gint ett_h245_AL2HeaderFEC = -1;
1893 static gint ett_h245_H223AL3MParameters = -1;
1894 static gint ett_h245_T_headerFormat = -1;
1895 static gint ett_h245_AL3CrcLength = -1;
1896 static gint ett_h245_H223AnnexCArqParameters = -1;
1897 static gint ett_h245_T_numberOfRetransmissions = -1;
1898 static gint ett_h245_V76LogicalChannelParameters = -1;
1899 static gint ett_h245_T_suspendResume = -1;
1900 static gint ett_h245_V76LCP_mode = -1;
1901 static gint ett_h245_T_eRM = -1;
1902 static gint ett_h245_T_recovery = -1;
1903 static gint ett_h245_V76HDLCParameters = -1;
1904 static gint ett_h245_CRCLength = -1;
1905 static gint ett_h245_H2250LogicalChannelParameters = -1;
1906 static gint ett_h245_T_mediaPacketization = -1;
1907 static gint ett_h245_RTPPayloadType = -1;
1908 static gint ett_h245_T_payloadDescriptor = -1;
1909 static gint ett_h245_RedundancyEncoding = -1;
1910 static gint ett_h245_T_rtpRedundancyEncoding = -1;
1911 static gint ett_h245_SEQUENCE_OF_RedundancyEncodingElement = -1;
1912 static gint ett_h245_RedundancyEncodingElement = -1;
1913 static gint ett_h245_MultiplePayloadStream = -1;
1914 static gint ett_h245_SEQUENCE_OF_MultiplePayloadStreamElement = -1;
1915 static gint ett_h245_MultiplePayloadStreamElement = -1;
1916 static gint ett_h245_DepFECData = -1;
1917 static gint ett_h245_RFC2733Data = -1;
1918 static gint ett_h245_FECdata_mode = -1;
1919 static gint ett_h245_DepSeparateStream = -1;
1920 static gint ett_h245_T_differentPort = -1;
1921 static gint ett_h245_T_samePort = -1;
1922 static gint ett_h245_FECData = -1;
1923 static gint ett_h245_T_rfc2733 = -1;
1924 static gint ett_h245_T_pktMode = -1;
1925 static gint ett_h245_T_mode_rfc2733sameport = -1;
1926 static gint ett_h245_T_mode_rfc2733diffport = -1;
1927 static gint ett_h245_TransportAddress = -1;
1928 static gint ett_h245_UnicastAddress = -1;
1929 static gint ett_h245_T_iPAddress = -1;
1930 static gint ett_h245_T_iPXAddress = -1;
1931 static gint ett_h245_T_iP6Address = -1;
1932 static gint ett_h245_T_iPSourceRouteAddress = -1;
1933 static gint ett_h245_T_routing = -1;
1934 static gint ett_h245_T_route = -1;
1935 static gint ett_h245_MulticastAddress = -1;
1936 static gint ett_h245_MIPAddress = -1;
1937 static gint ett_h245_MIP6Address = -1;
1938 static gint ett_h245_EncryptionSync = -1;
1939 static gint ett_h245_SEQUENCE_SIZE_1_256_OF_EscrowData = -1;
1940 static gint ett_h245_EscrowData = -1;
1941 static gint ett_h245_OpenLogicalChannelAck = -1;
1942 static gint ett_h245_OLC_ack_reverseLogicalChannelParameters = -1;
1943 static gint ett_h245_T_olc_ack_multiplexParameters = -1;
1944 static gint ett_h245_T_forwardMultiplexAckParameters = -1;
1945 static gint ett_h245_OpenLogicalChannelReject = -1;
1946 static gint ett_h245_OpenLogicalChannelRejectCause = -1;
1947 static gint ett_h245_OpenLogicalChannelConfirm = -1;
1948 static gint ett_h245_H2250LogicalChannelAckParameters = -1;
1949 static gint ett_h245_CloseLogicalChannel = -1;
1950 static gint ett_h245_T_cLC_source = -1;
1951 static gint ett_h245_Clc_reason = -1;
1952 static gint ett_h245_CloseLogicalChannelAck = -1;
1953 static gint ett_h245_RequestChannelClose = -1;
1954 static gint ett_h245_T_reason = -1;
1955 static gint ett_h245_RequestChannelCloseAck = -1;
1956 static gint ett_h245_RequestChannelCloseReject = -1;
1957 static gint ett_h245_RequestChannelCloseRejectCause = -1;
1958 static gint ett_h245_RequestChannelCloseRelease = -1;
1959 static gint ett_h245_MultiplexEntrySend = -1;
1960 static gint ett_h245_SET_SIZE_1_15_OF_MultiplexEntryDescriptor = -1;
1961 static gint ett_h245_MultiplexEntryDescriptor = -1;
1962 static gint ett_h245_T_elementList = -1;
1963 static gint ett_h245_MultiplexElement = -1;
1964 static gint ett_h245_Me_type = -1;
1965 static gint ett_h245_T_subElementList = -1;
1966 static gint ett_h245_ME_repeatCount = -1;
1967 static gint ett_h245_MultiplexEntrySendAck = -1;
1968 static gint ett_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber = -1;
1969 static gint ett_h245_MultiplexEntrySendReject = -1;
1970 static gint ett_h245_SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions = -1;
1971 static gint ett_h245_MultiplexEntryRejectionDescriptions = -1;
1972 static gint ett_h245_MultiplexEntryRejectionDescriptionsCause = -1;
1973 static gint ett_h245_MultiplexEntrySendRelease = -1;
1974 static gint ett_h245_RequestMultiplexEntry = -1;
1975 static gint ett_h245_RequestMultiplexEntryAck = -1;
1976 static gint ett_h245_RequestMultiplexEntryReject = -1;
1977 static gint ett_h245_SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions = -1;
1978 static gint ett_h245_RequestMultiplexEntryRejectionDescriptions = -1;
1979 static gint ett_h245_RequestMultiplexEntryRejectionDescriptionsCause = -1;
1980 static gint ett_h245_RequestMultiplexEntryRelease = -1;
1981 static gint ett_h245_RequestMode = -1;
1982 static gint ett_h245_SEQUENCE_SIZE_1_256_OF_ModeDescription = -1;
1983 static gint ett_h245_RequestModeAck = -1;
1984 static gint ett_h245_Req_mode_ack_response = -1;
1985 static gint ett_h245_RequestModeReject = -1;
1986 static gint ett_h245_RequestModeRejectCause = -1;
1987 static gint ett_h245_RequestModeRelease = -1;
1988 static gint ett_h245_ModeDescription = -1;
1989 static gint ett_h245_ModeElementType = -1;
1990 static gint ett_h245_ModeElement = -1;
1991 static gint ett_h245_H235Mode = -1;
1992 static gint ett_h245_T_mediaMode = -1;
1993 static gint ett_h245_MultiplexedStreamModeParameters = -1;
1994 static gint ett_h245_RedundancyEncodingDTMode = -1;
1995 static gint ett_h245_SEQUENCE_OF_RedundancyEncodingDTModeElement = -1;
1996 static gint ett_h245_RedundancyEncodingDTModeElement = -1;
1997 static gint ett_h245_Re_type = -1;
1998 static gint ett_h245_MultiplePayloadStreamMode = -1;
1999 static gint ett_h245_SEQUENCE_OF_MultiplePayloadStreamElementMode = -1;
2000 static gint ett_h245_MultiplePayloadStreamElementMode = -1;
2001 static gint ett_h245_DepFECMode = -1;
2002 static gint ett_h245_T_rfc2733Mode = -1;
2003 static gint ett_h245_FEC_mode = -1;
2004 static gint ett_h245_FECMode = -1;
2005 static gint ett_h245_H223ModeParameters = -1;
2006 static gint ett_h245_AdaptationLayerType = -1;
2007 static gint ett_h245_V76ModeParameters = -1;
2008 static gint ett_h245_H2250ModeParameters = -1;
2009 static gint ett_h245_RedundancyEncodingMode = -1;
2010 static gint ett_h245_T_secondaryEncodingMode = -1;
2011 static gint ett_h245_VideoMode = -1;
2012 static gint ett_h245_H261VideoMode = -1;
2013 static gint ett_h245_H261Resolution = -1;
2014 static gint ett_h245_H262VideoMode = -1;
2015 static gint ett_h245_T_profileAndLevel = -1;
2016 static gint ett_h245_H263VideoMode = -1;
2017 static gint ett_h245_H263Resolution = -1;
2018 static gint ett_h245_IS11172VideoMode = -1;
2019 static gint ett_h245_AudioMode = -1;
2020 static gint ett_h245_Mode_g7231 = -1;
2021 static gint ett_h245_IS11172AudioMode = -1;
2022 static gint ett_h245_T_audioLayer = -1;
2023 static gint ett_h245_T_audioSampling = -1;
2024 static gint ett_h245_IS11172_multichannelType = -1;
2025 static gint ett_h245_IS13818AudioMode = -1;
2026 static gint ett_h245_IS13818AudioLayer = -1;
2027 static gint ett_h245_IS13818AudioSampling = -1;
2028 static gint ett_h245_IS13818MultichannelType = -1;
2029 static gint ett_h245_G7231AnnexCMode = -1;
2030 static gint ett_h245_VBDMode = -1;
2031 static gint ett_h245_DataMode = -1;
2032 static gint ett_h245_DataModeApplication = -1;
2033 static gint ett_h245_T38faxApp = -1;
2034 static gint ett_h245_EncryptionMode = -1;
2035 static gint ett_h245_RoundTripDelayRequest = -1;
2036 static gint ett_h245_RoundTripDelayResponse = -1;
2037 static gint ett_h245_MaintenanceLoopRequest = -1;
2038 static gint ett_h245_Mlr_type = -1;
2039 static gint ett_h245_MaintenanceLoopAck = -1;
2040 static gint ett_h245_Mla_type = -1;
2041 static gint ett_h245_MaintenanceLoopReject = -1;
2042 static gint ett_h245_Mlrej_type = -1;
2043 static gint ett_h245_MaintenanceLoopRejectCause = -1;
2044 static gint ett_h245_MaintenanceLoopOffCommand = -1;
2045 static gint ett_h245_CommunicationModeCommand = -1;
2046 static gint ett_h245_SET_SIZE_1_256_OF_CommunicationModeTableEntry = -1;
2047 static gint ett_h245_CommunicationModeRequest = -1;
2048 static gint ett_h245_CommunicationModeResponse = -1;
2049 static gint ett_h245_CommunicationModeTableEntry = -1;
2050 static gint ett_h245_T_entryDataType = -1;
2051 static gint ett_h245_ConferenceRequest = -1;
2052 static gint ett_h245_T_requestTerminalCertificate = -1;
2053 static gint ett_h245_CertSelectionCriteria = -1;
2054 static gint ett_h245_Criteria = -1;
2055 static gint ett_h245_TerminalLabel = -1;
2056 static gint ett_h245_ConferenceResponse = -1;
2057 static gint ett_h245_T_mCTerminalIDResponse = -1;
2058 static gint ett_h245_T_terminalIDResponse = -1;
2059 static gint ett_h245_T_conferenceIDResponse = -1;
2060 static gint ett_h245_T_passwordResponse = -1;
2061 static gint ett_h245_SET_SIZE_1_256_OF_TerminalLabel = -1;
2062 static gint ett_h245_T_makeMeChairResponse = -1;
2063 static gint ett_h245_T_extensionAddressResponse = -1;
2064 static gint ett_h245_T_chairTokenOwnerResponse = -1;
2065 static gint ett_h245_T_terminalCertificateResponse = -1;
2066 static gint ett_h245_T_broadcastMyLogicalChannelResponse = -1;
2067 static gint ett_h245_T_makeTerminalBroadcasterResponse = -1;
2068 static gint ett_h245_T_sendThisSourceResponse = -1;
2069 static gint ett_h245_RequestAllTerminalIDsResponse = -1;
2070 static gint ett_h245_SEQUENCE_OF_TerminalInformation = -1;
2071 static gint ett_h245_TerminalInformation = -1;
2072 static gint ett_h245_RemoteMCRequest = -1;
2073 static gint ett_h245_RemoteMCResponse = -1;
2074 static gint ett_h245_T_reject = -1;
2075 static gint ett_h245_MultilinkRequest = -1;
2076 static gint ett_h245_CallInformationReq = -1;
2077 static gint ett_h245_AddConnectionReq = -1;
2078 static gint ett_h245_RemoveConnectionReq = -1;
2079 static gint ett_h245_MaximumHeaderIntervalReq = -1;
2080 static gint ett_h245_T_requestType = -1;
2081 static gint ett_h245_MultilinkResponse = -1;
2082 static gint ett_h245_CallInformationResp = -1;
2083 static gint ett_h245_AddConnectionResp = -1;
2084 static gint ett_h245_T_responseCode = -1;
2085 static gint ett_h245_T_rejected = -1;
2086 static gint ett_h245_RemoveConnectionResp = -1;
2087 static gint ett_h245_MaximumHeaderIntervalResp = -1;
2088 static gint ett_h245_MultilinkIndication = -1;
2089 static gint ett_h245_T_crcDesired = -1;
2090 static gint ett_h245_T_excessiveError = -1;
2091 static gint ett_h245_DialingInformation = -1;
2092 static gint ett_h245_SET_SIZE_1_65535_OF_DialingInformationNumber = -1;
2093 static gint ett_h245_DialingInformationNumber = -1;
2094 static gint ett_h245_SET_SIZE_1_255_OF_DialingInformationNetworkType = -1;
2095 static gint ett_h245_DialingInformationNetworkType = -1;
2096 static gint ett_h245_ConnectionIdentifier = -1;
2097 static gint ett_h245_LogicalChannelRateRequest = -1;
2098 static gint ett_h245_LogicalChannelRateAcknowledge = -1;
2099 static gint ett_h245_LogicalChannelRateReject = -1;
2100 static gint ett_h245_LogicalChannelRateRejectReason = -1;
2101 static gint ett_h245_LogicalChannelRateRelease = -1;
2102 static gint ett_h245_SendTerminalCapabilitySet = -1;
2103 static gint ett_h245_T_specificRequest = -1;
2104 static gint ett_h245_SET_SIZE_1_65535_OF_CapabilityTableEntryNumber = -1;
2105 static gint ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptorNumber = -1;
2106 static gint ett_h245_EncryptionCommand = -1;
2107 static gint ett_h245_T_encryptionAlgorithmID = -1;
2108 static gint ett_h245_FlowControlCommand = -1;
2109 static gint ett_h245_Scope = -1;
2110 static gint ett_h245_Restriction = -1;
2111 static gint ett_h245_EndSessionCommand = -1;
2112 static gint ett_h245_T_gstnOptions = -1;
2113 static gint ett_h245_T_isdnOptions = -1;
2114 static gint ett_h245_ConferenceCommand = -1;
2115 static gint ett_h245_SubstituteConferenceIDCommand = -1;
2116 static gint ett_h245_EncryptionUpdateDirection = -1;
2117 static gint ett_h245_MiscellaneousCommand = -1;
2118 static gint ett_h245_Mc_type = -1;
2119 static gint ett_h245_T_videoFastUpdateGOB = -1;
2120 static gint ett_h245_T_videoFastUpdateMB = -1;
2121 static gint ett_h245_T_progressiveRefinementStart = -1;
2122 static gint ett_h245_T_repeatCount = -1;
2123 static gint ett_h245_T_videoBadMBs = -1;
2124 static gint ett_h245_SEQUENCE_OF_PictureReference = -1;
2125 static gint ett_h245_T_lostPartialPicture = -1;
2126 static gint ett_h245_T_encryptionUpdateCommand = -1;
2127 static gint ett_h245_T_encryptionUpdateAck = -1;
2128 static gint ett_h245_KeyProtectionMethod = -1;
2129 static gint ett_h245_EncryptionUpdateRequest = -1;
2130 static gint ett_h245_PictureReference = -1;
2131 static gint ett_h245_H223MultiplexReconfiguration = -1;
2132 static gint ett_h245_T_h223ModeChange = -1;
2133 static gint ett_h245_T_h223AnnexADoubleFlag = -1;
2134 static gint ett_h245_NewATMVCCommand = -1;
2135 static gint ett_h245_Cmd_aal = -1;
2136 static gint ett_h245_Cmd_aal1 = -1;
2137 static gint ett_h245_Cmd_clockRecovery = -1;
2138 static gint ett_h245_Cmd_errorCorrection = -1;
2139 static gint ett_h245_Cmd_aal5 = -1;
2140 static gint ett_h245_Cmd_multiplex = -1;
2141 static gint ett_h245_Cmd_reverseParameters = -1;
2142 static gint ett_h245_CmdR_multiplex = -1;
2143 static gint ett_h245_MobileMultilinkReconfigurationCommand = -1;
2144 static gint ett_h245_T_status = -1;
2145 static gint ett_h245_FunctionNotUnderstood = -1;
2146 static gint ett_h245_FunctionNotSupported = -1;
2147 static gint ett_h245_FunctionNotSupportedCause = -1;
2148 static gint ett_h245_ConferenceIndication = -1;
2149 static gint ett_h245_TerminalYouAreSeeingInSubPictureNumber = -1;
2150 static gint ett_h245_VideoIndicateCompose = -1;
2151 static gint ett_h245_MiscellaneousIndication = -1;
2152 static gint ett_h245_Mi_type = -1;
2153 static gint ett_h245_T_videoNotDecodedMBs = -1;
2154 static gint ett_h245_JitterIndication = -1;
2155 static gint ett_h245_H223SkewIndication = -1;
2156 static gint ett_h245_H2250MaximumSkewIndication = -1;
2157 static gint ett_h245_MCLocationIndication = -1;
2158 static gint ett_h245_VendorIdentification = -1;
2159 static gint ett_h245_NewATMVCIndication = -1;
2160 static gint ett_h245_Ind_aal = -1;
2161 static gint ett_h245_Ind_aal1 = -1;
2162 static gint ett_h245_Ind_clockRecovery = -1;
2163 static gint ett_h245_Ind_errorCorrection = -1;
2164 static gint ett_h245_Ind_aal5 = -1;
2165 static gint ett_h245_Ind_multiplex = -1;
2166 static gint ett_h245_Ind_reverseParameters = -1;
2167 static gint ett_h245_IndR_multiplex = -1;
2168 static gint ett_h245_Params = -1;
2169 static gint ett_h245_UserInputIndication = -1;
2170 static gint ett_h245_T_userInputSupportIndication = -1;
2171 static gint ett_h245_T_signal = -1;
2172 static gint ett_h245_T_rtp = -1;
2173 static gint ett_h245_T_signalUpdate = -1;
2174 static gint ett_h245_Si_rtp = -1;
2175 static gint ett_h245_T_extendedAlphanumeric = -1;
2176 static gint ett_h245_EncryptedAlphanumeric = -1;
2177 static gint ett_h245_FlowControlIndication = -1;
2178 static gint ett_h245_MobileMultilinkReconfigurationIndication = -1;
2179
2180 /*--- End of included file: packet-h245-ett.c ---*/
2181 #line 282 "packet-h245-template.c"
2182
2183
2184 /*--- Included file: packet-h245-fn.c ---*/
2185 #line 1 "packet-h245-fn.c"
2186 /*--- Cyclic dependencies ---*/
2187
2188 /* GenericParameter -> ParameterValue -> ParameterValue/genericParameter -> GenericParameter */
2189 static int dissect_h245_GenericParameter(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
2190
2191 /* VideoCapability -> ExtendedVideoCapability -> ExtendedVideoCapability/videoCapability -> VideoCapability */
2192 static int dissect_h245_VideoCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
2193
2194 /* AudioCapability -> VBDCapability -> AudioCapability */
2195 static int dissect_h245_AudioCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
2196
2197 /* DataType -> H235Media -> H235Media/mediaType -> RedundancyEncoding -> DataType */
2198 /* DataType -> H235Media -> H235Media/mediaType -> RedundancyEncoding -> RedundancyEncoding/rtpRedundancyEncoding -> RedundancyEncodingElement -> DataType */
2199 /* DataType -> H235Media -> H235Media/mediaType -> MultiplePayloadStream -> MultiplePayloadStream/elements -> MultiplePayloadStreamElement -> DataType */
2200 static int dissect_h245_DataType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
2201
2202 /* MultiplexElement -> MultiplexElement/type -> MultiplexElement/type/subElementList -> MultiplexElement */
2203 static int dissect_h245_MultiplexElement(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
2204
2205 /* AudioMode -> VBDMode -> AudioMode */
2206 static int dissect_h245_AudioMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
2207
2208 /* ModeElementType -> RedundancyEncodingDTMode -> RedundancyEncodingDTModeElement -> RedundancyEncodingDTModeElement/type -> FECMode -> ModeElementType */
2209 /* ModeElementType -> MultiplePayloadStreamMode -> MultiplePayloadStreamMode/elements -> MultiplePayloadStreamElementMode -> ModeElementType */
2210 static int dissect_h245_ModeElementType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
2211
2212
2213
2214
2215 static int
2216 dissect_h245_T_object(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2217   offset = dissect_per_object_identifier_str(tvb, offset, actx, tree, hf_index, &nsiOID);
2218
2219   return offset;
2220 }
2221
2222
2223
2224 static int
2225 dissect_h245_T_t35CountryCode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2226   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2227                                               0U, 255U, &t35CountryCode, FALSE);
2228
2229   return offset;
2230 }
2231
2232
2233
2234 static int
2235 dissect_h245_T_t35Extension(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2236   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2237                                               0U, 255U, &t35Extension, FALSE);
2238
2239   return offset;
2240 }
2241
2242
2243
2244 static int
2245 dissect_h245_T_manufacturerCode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2246   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2247                                               0U, 65535U, &manufacturerCode, FALSE);
2248
2249   return offset;
2250 }
2251
2252
2253 static const per_sequence_t H221NonStandardID_sequence[] = {
2254   { &hf_h245_t35CountryCode , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_T_t35CountryCode },
2255   { &hf_h245_t35Extension   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_T_t35Extension },
2256   { &hf_h245_manufacturerCode, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_T_manufacturerCode },
2257   { NULL, 0, 0, NULL }
2258 };
2259
2260 static int
2261 dissect_h245_H221NonStandardID(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2262 #line 701 "h245.cnf"
2263   t35CountryCode = 0;
2264   t35Extension = 0;
2265   manufacturerCode = 0;
2266
2267   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2268                                    ett_h245_H221NonStandardID, H221NonStandardID_sequence);
2269
2270 #line 705 "h245.cnf"
2271   h221NonStandard = ((t35CountryCode * 256) + t35Extension) * 65536 + manufacturerCode;
2272   proto_tree_add_uint(tree, hf_h245Manufacturer, tvb, (offset>>3)-4, 4, h221NonStandard);
2273
2274   return offset;
2275 }
2276
2277
2278 static const value_string h245_NonStandardIdentifier_vals[] = {
2279   {   0, "object" },
2280   {   1, "h221NonStandard" },
2281   { 0, NULL }
2282 };
2283
2284 static const per_choice_t NonStandardIdentifier_choice[] = {
2285   {   0, &hf_h245_object         , ASN1_NO_EXTENSIONS     , dissect_h245_T_object },
2286   {   1, &hf_h245_h221NonStandardID, ASN1_NO_EXTENSIONS     , dissect_h245_H221NonStandardID },
2287   { 0, NULL, 0, NULL }
2288 };
2289
2290 static int
2291 dissect_h245_NonStandardIdentifier(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2292 #line 682 "h245.cnf"
2293         guint32 value;
2294
2295         nsiOID = "";
2296         h221NonStandard = 0;
2297
2298   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2299                                  ett_h245_NonStandardIdentifier, NonStandardIdentifier_choice,
2300                                  &value);
2301
2302         switch (value) {
2303                 case 0 :  /* object */
2304                         nsp_handle = dissector_get_string_handle(nsp_object_dissector_table, nsiOID);
2305                         break;
2306                 case 1 :  /* h221NonStandard */
2307                         nsp_handle = dissector_get_port_handle(nsp_h221_dissector_table, h221NonStandard);
2308                         break;
2309                 default :
2310                         nsp_handle = NULL;
2311     }
2312
2313
2314   return offset;
2315 }
2316
2317
2318
2319 static int
2320 dissect_h245_T_nsd_data(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2321 #line 716 "h245.cnf"
2322   tvbuff_t *next_tvb = NULL;
2323
2324   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
2325                                        NO_BOUND, NO_BOUND, &next_tvb);
2326
2327   if (next_tvb && tvb_length(next_tvb)) {
2328     call_dissector((nsp_handle)?nsp_handle:data_handle, next_tvb, actx->pinfo, tree);
2329   }
2330
2331
2332   return offset;
2333 }
2334
2335
2336 static const per_sequence_t NonStandardParameter_sequence[] = {
2337   { &hf_h245_nonStandardIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_NonStandardIdentifier },
2338   { &hf_h245_nsd_data       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_T_nsd_data },
2339   { NULL, 0, 0, NULL }
2340 };
2341
2342 static int
2343 dissect_h245_NonStandardParameter(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2344 #line 714 "h245.cnf"
2345   nsp_handle = NULL;
2346
2347   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2348                                    ett_h245_NonStandardParameter, NonStandardParameter_sequence);
2349
2350   return offset;
2351 }
2352
2353
2354 static const per_sequence_t NonStandardMessage_sequence[] = {
2355   { &hf_h245_nonStandardData, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_NonStandardParameter },
2356   { NULL, 0, 0, NULL }
2357 };
2358
2359 static int
2360 dissect_h245_NonStandardMessage(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2361   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2362                                    ett_h245_NonStandardMessage, NonStandardMessage_sequence);
2363
2364   return offset;
2365 }
2366
2367
2368
2369 static int
2370 dissect_h245_INTEGER_0_255(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2371   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2372                                               0U, 255U, NULL, FALSE);
2373
2374   return offset;
2375 }
2376
2377
2378
2379 static int
2380 dissect_h245_INTEGER_0_16777215(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2381   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2382                                               0U, 16777215U, NULL, FALSE);
2383
2384   return offset;
2385 }
2386
2387
2388 static const per_sequence_t MasterSlaveDetermination_sequence[] = {
2389   { &hf_h245_terminalType   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_255 },
2390   { &hf_h245_statusDeterminationNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_16777215 },
2391   { NULL, 0, 0, NULL }
2392 };
2393
2394 static int
2395 dissect_h245_MasterSlaveDetermination(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2396   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2397                                    ett_h245_MasterSlaveDetermination, MasterSlaveDetermination_sequence);
2398
2399 #line 465 "h245.cnf"
2400
2401   h245_pi->msg_type = H245_MastSlvDet;
2402
2403   return offset;
2404 }
2405
2406
2407
2408 static int
2409 dissect_h245_SequenceNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2410   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2411                                               0U, 255U, NULL, FALSE);
2412
2413   return offset;
2414 }
2415
2416
2417
2418 static int
2419 dissect_h245_OBJECT_IDENTIFIER(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2420   offset = dissect_per_object_identifier(tvb, offset, actx, tree, hf_index, NULL);
2421
2422   return offset;
2423 }
2424
2425
2426
2427 static int
2428 dissect_h245_INTEGER_1_256(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2429   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2430                                               1U, 256U, NULL, FALSE);
2431
2432   return offset;
2433 }
2434
2435
2436
2437 static int
2438 dissect_h245_BOOLEAN(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2439   offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL);
2440
2441   return offset;
2442 }
2443
2444
2445 static const per_sequence_t T_aal1_sequence[] = {
2446   { &hf_h245_nullClockRecovery, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2447   { &hf_h245_srtsClockRecovery_bool, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2448   { &hf_h245_adaptiveClockRecovery, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2449   { &hf_h245_nullErrorCorrection, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2450   { &hf_h245_longInterleaver, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2451   { &hf_h245_shortInterleaver, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2452   { &hf_h245_errorCorrectionOnly, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2453   { &hf_h245_structuredDataTransfer, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2454   { &hf_h245_partiallyFilledCells, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2455   { NULL, 0, 0, NULL }
2456 };
2457
2458 static int
2459 dissect_h245_T_aal1(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2460   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2461                                    ett_h245_T_aal1, T_aal1_sequence);
2462
2463   return offset;
2464 }
2465
2466
2467
2468 static int
2469 dissect_h245_INTEGER_0_65535(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2470   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2471                                               0U, 65535U, NULL, FALSE);
2472
2473   return offset;
2474 }
2475
2476
2477 static const per_sequence_t T_aal5_sequence[] = {
2478   { &hf_h245_forwardMaximumSDUSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
2479   { &hf_h245_backwardMaximumSDUSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
2480   { NULL, 0, 0, NULL }
2481 };
2482
2483 static int
2484 dissect_h245_T_aal5(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2485   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2486                                    ett_h245_T_aal5, T_aal5_sequence);
2487
2488   return offset;
2489 }
2490
2491
2492
2493 static int
2494 dissect_h245_INTEGER_1_65535(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2495   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2496                                               1U, 65535U, NULL, FALSE);
2497
2498   return offset;
2499 }
2500
2501
2502 static const per_sequence_t T_rangeOfBitRates_sequence[] = {
2503   { &hf_h245_lowerBitRate   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_65535 },
2504   { &hf_h245_higherBitRate  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_65535 },
2505   { NULL, 0, 0, NULL }
2506 };
2507
2508 static int
2509 dissect_h245_T_rangeOfBitRates(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2510   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2511                                    ett_h245_T_rangeOfBitRates, T_rangeOfBitRates_sequence);
2512
2513   return offset;
2514 }
2515
2516
2517 static const value_string h245_Avb_type_vals[] = {
2518   {   0, "singleBitRate" },
2519   {   1, "rangeOfBitRates" },
2520   { 0, NULL }
2521 };
2522
2523 static const per_choice_t Avb_type_choice[] = {
2524   {   0, &hf_h245_singleBitRate  , ASN1_NO_EXTENSIONS     , dissect_h245_INTEGER_1_65535 },
2525   {   1, &hf_h245_rangeOfBitRates, ASN1_NO_EXTENSIONS     , dissect_h245_T_rangeOfBitRates },
2526   { 0, NULL, 0, NULL }
2527 };
2528
2529 static int
2530 dissect_h245_Avb_type(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2531   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2532                                  ett_h245_Avb_type, Avb_type_choice,
2533                                  NULL);
2534
2535   return offset;
2536 }
2537
2538
2539 static const per_sequence_t T_availableBitRates_sequence[] = {
2540   { &hf_h245_avb_type       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Avb_type },
2541   { NULL, 0, 0, NULL }
2542 };
2543
2544 static int
2545 dissect_h245_T_availableBitRates(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2546   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2547                                    ett_h245_T_availableBitRates, T_availableBitRates_sequence);
2548
2549   return offset;
2550 }
2551
2552
2553
2554 static int
2555 dissect_h245_NumericString_SIZE_1_16(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2556   offset = dissect_per_NumericString(tvb, offset, actx, tree, hf_index,
2557                                           1, 16);
2558
2559   return offset;
2560 }
2561
2562
2563
2564 static int
2565 dissect_h245_OCTET_STRING_SIZE_1_20(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2566   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
2567                                        1, 20, NULL);
2568
2569   return offset;
2570 }
2571
2572
2573 static const value_string h245_T_address_vals[] = {
2574   {   0, "internationalNumber" },
2575   {   1, "nsapAddress" },
2576   { 0, NULL }
2577 };
2578
2579 static const per_choice_t T_address_choice[] = {
2580   {   0, &hf_h245_internationalNumber, ASN1_EXTENSION_ROOT    , dissect_h245_NumericString_SIZE_1_16 },
2581   {   1, &hf_h245_nsapAddress    , ASN1_EXTENSION_ROOT    , dissect_h245_OCTET_STRING_SIZE_1_20 },
2582   { 0, NULL, 0, NULL }
2583 };
2584
2585 static int
2586 dissect_h245_T_address(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2587   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2588                                  ett_h245_T_address, T_address_choice,
2589                                  NULL);
2590
2591   return offset;
2592 }
2593
2594
2595 static const per_sequence_t Q2931Address_sequence[] = {
2596   { &hf_h245_address        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_address },
2597   { &hf_h245_subaddress     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OCTET_STRING_SIZE_1_20 },
2598   { NULL, 0, 0, NULL }
2599 };
2600
2601 static int
2602 dissect_h245_Q2931Address(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2603   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2604                                    ett_h245_Q2931Address, Q2931Address_sequence);
2605
2606   return offset;
2607 }
2608
2609
2610 static const per_sequence_t SET_SIZE_1_256_OF_Q2931Address_set_of[1] = {
2611   { &hf_h245_gatewayAddress_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_Q2931Address },
2612 };
2613
2614 static int
2615 dissect_h245_SET_SIZE_1_256_OF_Q2931Address(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2616   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
2617                                              ett_h245_SET_SIZE_1_256_OF_Q2931Address, SET_SIZE_1_256_OF_Q2931Address_set_of,
2618                                              1, 256);
2619
2620   return offset;
2621 }
2622
2623
2624 static const per_sequence_t T_aal1ViaGateway_sequence[] = {
2625   { &hf_h245_gatewayAddress , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_256_OF_Q2931Address },
2626   { &hf_h245_nullClockRecovery, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2627   { &hf_h245_srtsClockRecoveryflag, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2628   { &hf_h245_adaptiveClockRecovery, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2629   { &hf_h245_nullErrorCorrection, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2630   { &hf_h245_longInterleaver, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2631   { &hf_h245_shortInterleaver, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2632   { &hf_h245_errorCorrectionOnly, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2633   { &hf_h245_structuredDataTransfer, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2634   { &hf_h245_partiallyFilledCells, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2635   { NULL, 0, 0, NULL }
2636 };
2637
2638 static int
2639 dissect_h245_T_aal1ViaGateway(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2640   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2641                                    ett_h245_T_aal1ViaGateway, T_aal1ViaGateway_sequence);
2642
2643   return offset;
2644 }
2645
2646
2647 static const per_sequence_t VCCapability_sequence[] = {
2648   { &hf_h245_aal1           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_aal1 },
2649   { &hf_h245_aal5           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_aal5 },
2650   { &hf_h245_transportStream_bool, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2651   { &hf_h245_programStream  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2652   { &hf_h245_availableBitRates, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_availableBitRates },
2653   { &hf_h245_aal1ViaGateway , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_T_aal1ViaGateway },
2654   { NULL, 0, 0, NULL }
2655 };
2656
2657 static int
2658 dissect_h245_VCCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2659   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2660                                    ett_h245_VCCapability, VCCapability_sequence);
2661
2662   return offset;
2663 }
2664
2665
2666 static const per_sequence_t SET_OF_VCCapability_set_of[1] = {
2667   { &hf_h245_vcCapability_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_VCCapability },
2668 };
2669
2670 static int
2671 dissect_h245_SET_OF_VCCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2672   offset = dissect_per_set_of(tvb, offset, actx, tree, hf_index,
2673                                  ett_h245_SET_OF_VCCapability, SET_OF_VCCapability_set_of);
2674
2675   return offset;
2676 }
2677
2678
2679 static const per_sequence_t H222Capability_sequence[] = {
2680   { &hf_h245_numberOfVCs    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_256 },
2681   { &hf_h245_vcCapability   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_OF_VCCapability },
2682   { NULL, 0, 0, NULL }
2683 };
2684
2685 static int
2686 dissect_h245_H222Capability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2687   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2688                                    ett_h245_H222Capability, H222Capability_sequence);
2689
2690   return offset;
2691 }
2692
2693
2694
2695 static int
2696 dissect_h245_INTEGER_0_1023(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2697   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2698                                               0U, 1023U, NULL, FALSE);
2699
2700   return offset;
2701 }
2702
2703
2704
2705 static int
2706 dissect_h245_NULL(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2707   offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
2708
2709   return offset;
2710 }
2711
2712
2713
2714 static int
2715 dissect_h245_INTEGER_1_15(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2716   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2717                                               1U, 15U, NULL, FALSE);
2718
2719   return offset;
2720 }
2721
2722
2723
2724 static int
2725 dissect_h245_INTEGER_2_255(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2726   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2727                                               2U, 255U, NULL, FALSE);
2728
2729   return offset;
2730 }
2731
2732
2733 static const per_sequence_t T_enhanced_sequence[] = {
2734   { &hf_h245_maximumNestingDepth, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_15 },
2735   { &hf_h245_maximumElementListSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_2_255 },
2736   { &hf_h245_maximumSubElementListSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_2_255 },
2737   { NULL, 0, 0, NULL }
2738 };
2739
2740 static int
2741 dissect_h245_T_enhanced(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2742   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2743                                    ett_h245_T_enhanced, T_enhanced_sequence);
2744
2745   return offset;
2746 }
2747
2748
2749 static const value_string h245_T_h223MultiplexTableCapability_vals[] = {
2750   {   0, "basic" },
2751   {   1, "enhanced" },
2752   { 0, NULL }
2753 };
2754
2755 static const per_choice_t T_h223MultiplexTableCapability_choice[] = {
2756   {   0, &hf_h245_basic          , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
2757   {   1, &hf_h245_enhanced       , ASN1_NO_EXTENSIONS     , dissect_h245_T_enhanced },
2758   { 0, NULL, 0, NULL }
2759 };
2760
2761 static int
2762 dissect_h245_T_h223MultiplexTableCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2763   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2764                                  ett_h245_T_h223MultiplexTableCapability, T_h223MultiplexTableCapability_choice,
2765                                  NULL);
2766
2767   return offset;
2768 }
2769
2770
2771 static const per_sequence_t T_mobileOperationTransmitCapability_sequence[] = {
2772   { &hf_h245_modeChangeCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2773   { &hf_h245_h223AnnexA     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2774   { &hf_h245_h223AnnexADoubleFlagFlag, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2775   { &hf_h245_h223AnnexB     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2776   { &hf_h245_h223AnnexBwithHeader, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2777   { NULL, 0, 0, NULL }
2778 };
2779
2780 static int
2781 dissect_h245_T_mobileOperationTransmitCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2782   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2783                                    ett_h245_T_mobileOperationTransmitCapability, T_mobileOperationTransmitCapability_sequence);
2784
2785   return offset;
2786 }
2787
2788
2789 static const per_sequence_t H223AnnexCCapability_sequence[] = {
2790   { &hf_h245_videoWithAL1M  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2791   { &hf_h245_videoWithAL2M  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2792   { &hf_h245_videoWithAL3M  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2793   { &hf_h245_audioWithAL1M  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2794   { &hf_h245_audioWithAL2M  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2795   { &hf_h245_audioWithAL3M  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2796   { &hf_h245_dataWithAL1M   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2797   { &hf_h245_dataWithAL2M   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2798   { &hf_h245_dataWithAL3M   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2799   { &hf_h245_alpduInterleaving, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2800   { &hf_h245_maximumAL1MPDUSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
2801   { &hf_h245_maximumAL2MSDUSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
2802   { &hf_h245_maximumAL3MSDUSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
2803   { &hf_h245_rsCodeCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_BOOLEAN },
2804   { NULL, 0, 0, NULL }
2805 };
2806
2807 static int
2808 dissect_h245_H223AnnexCCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2809   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2810                                    ett_h245_H223AnnexCCapability, H223AnnexCCapability_sequence);
2811
2812   return offset;
2813 }
2814
2815
2816
2817 static int
2818 dissect_h245_INTEGER_1_19200(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2819   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2820                                               1U, 19200U, NULL, FALSE);
2821
2822   return offset;
2823 }
2824
2825
2826
2827 static int
2828 dissect_h245_INTEGER_1_255(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2829   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2830                                               1U, 255U, NULL, FALSE);
2831
2832   return offset;
2833 }
2834
2835
2836
2837 static int
2838 dissect_h245_INTEGER_1_65025(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2839   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2840                                               1U, 65025U, NULL, FALSE);
2841
2842   return offset;
2843 }
2844
2845
2846 static const per_sequence_t T_mobileMultilinkFrameCapability_sequence[] = {
2847   { &hf_h245_maximumSampleSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_255 },
2848   { &hf_h245_maximumPayloadLength, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_65025 },
2849   { NULL, 0, 0, NULL }
2850 };
2851
2852 static int
2853 dissect_h245_T_mobileMultilinkFrameCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2854   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2855                                    ett_h245_T_mobileMultilinkFrameCapability, T_mobileMultilinkFrameCapability_sequence);
2856
2857   return offset;
2858 }
2859
2860
2861 static const per_sequence_t H223Capability_sequence[] = {
2862   { &hf_h245_transportWithI_frames, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2863   { &hf_h245_videoWithAL1   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2864   { &hf_h245_videoWithAL2   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2865   { &hf_h245_videoWithAL3   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2866   { &hf_h245_audioWithAL1   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2867   { &hf_h245_audioWithAL2   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2868   { &hf_h245_audioWithAL3   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2869   { &hf_h245_dataWithAL1    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2870   { &hf_h245_dataWithAL2    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2871   { &hf_h245_dataWithAL3    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2872   { &hf_h245_maximumAl2SDUSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
2873   { &hf_h245_maximumAl3SDUSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
2874   { &hf_h245_maximumDelayJitter, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_1023 },
2875   { &hf_h245_h223MultiplexTableCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_h223MultiplexTableCapability },
2876   { &hf_h245_maxMUXPDUSizeCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2877   { &hf_h245_nsrpSupport    , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2878   { &hf_h245_mobileOperationTransmitCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_T_mobileOperationTransmitCapability },
2879   { &hf_h245_h223AnnexCCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_H223AnnexCCapability },
2880   { &hf_h245_bitRate_1_19200, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_INTEGER_1_19200 },
2881   { &hf_h245_mobileMultilinkFrameCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_T_mobileMultilinkFrameCapability },
2882   { NULL, 0, 0, NULL }
2883 };
2884
2885 static int
2886 dissect_h245_H223Capability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2887   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2888                                    ett_h245_H223Capability, H223Capability_sequence);
2889
2890   return offset;
2891 }
2892
2893
2894
2895 static int
2896 dissect_h245_INTEGER_2_8191(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2897   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2898                                               2U, 8191U, NULL, FALSE);
2899
2900   return offset;
2901 }
2902
2903
2904
2905 static int
2906 dissect_h245_INTEGER_1_4095(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2907   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2908                                               1U, 4095U, NULL, FALSE);
2909
2910   return offset;
2911 }
2912
2913
2914
2915 static int
2916 dissect_h245_INTEGER_1_127(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2917   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2918                                               1U, 127U, NULL, FALSE);
2919
2920   return offset;
2921 }
2922
2923
2924 static const per_sequence_t V75Capability_sequence[] = {
2925   { &hf_h245_audioHeader    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2926   { NULL, 0, 0, NULL }
2927 };
2928
2929 static int
2930 dissect_h245_V75Capability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2931   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2932                                    ett_h245_V75Capability, V75Capability_sequence);
2933
2934   return offset;
2935 }
2936
2937
2938 static const per_sequence_t V76Capability_sequence[] = {
2939   { &hf_h245_suspendResumeCapabilitywAddress, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2940   { &hf_h245_suspendResumeCapabilitywoAddress, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2941   { &hf_h245_rejCapability  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2942   { &hf_h245_sREJCapability , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2943   { &hf_h245_mREJCapability , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2944   { &hf_h245_crc8bitCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2945   { &hf_h245_crc16bitCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2946   { &hf_h245_crc32bitCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2947   { &hf_h245_uihCapability  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2948   { &hf_h245_numOfDLCS      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_2_8191 },
2949   { &hf_h245_twoOctetAddressFieldCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2950   { &hf_h245_loopBackTestCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
2951   { &hf_h245_n401Capability , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_4095 },
2952   { &hf_h245_maxWindowSizeCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_127 },
2953   { &hf_h245_v75Capability  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_V75Capability },
2954   { NULL, 0, 0, NULL }
2955 };
2956
2957 static int
2958 dissect_h245_V76Capability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2959   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2960                                    ett_h245_V76Capability, V76Capability_sequence);
2961
2962   return offset;
2963 }
2964
2965
2966
2967 static int
2968 dissect_h245_INTEGER_1_65536(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2969   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2970                                               1U, 65536U, NULL, FALSE);
2971
2972   return offset;
2973 }
2974
2975
2976 static const per_sequence_t V42bis_sequence[] = {
2977   { &hf_h245_numberOfCodewords, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_65536 },
2978   { &hf_h245_maximumStringLength, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_256 },
2979   { NULL, 0, 0, NULL }
2980 };
2981
2982 static int
2983 dissect_h245_V42bis(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
2984   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2985                                    ett_h245_V42bis, V42bis_sequence);
2986
2987   return offset;
2988 }
2989
2990
2991 static const value_string h245_CompressionType_vals[] = {
2992   {   0, "v42bis" },
2993   { 0, NULL }
2994 };
2995
2996 static const per_choice_t CompressionType_choice[] = {
2997   {   0, &hf_h245_v42bis         , ASN1_EXTENSION_ROOT    , dissect_h245_V42bis },
2998   { 0, NULL, 0, NULL }
2999 };
3000
3001 static int
3002 dissect_h245_CompressionType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3003   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3004                                  ett_h245_CompressionType, CompressionType_choice,
3005                                  NULL);
3006
3007   return offset;
3008 }
3009
3010
3011 static const value_string h245_T_v76wCompression_vals[] = {
3012   {   0, "transmitCompression" },
3013   {   1, "receiveCompression" },
3014   {   2, "transmitAndReceiveCompression" },
3015   { 0, NULL }
3016 };
3017
3018 static const per_choice_t T_v76wCompression_choice[] = {
3019   {   0, &hf_h245_transmitCompression, ASN1_EXTENSION_ROOT    , dissect_h245_CompressionType },
3020   {   1, &hf_h245_receiveCompression, ASN1_EXTENSION_ROOT    , dissect_h245_CompressionType },
3021   {   2, &hf_h245_transmitAndReceiveCompression, ASN1_EXTENSION_ROOT    , dissect_h245_CompressionType },
3022   { 0, NULL, 0, NULL }
3023 };
3024
3025 static int
3026 dissect_h245_T_v76wCompression(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3027   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3028                                  ett_h245_T_v76wCompression, T_v76wCompression_choice,
3029                                  NULL);
3030
3031   return offset;
3032 }
3033
3034
3035 const value_string DataProtocolCapability_vals[] = {
3036   {   0, "nonStandard" },
3037   {   1, "v14buffered" },
3038   {   2, "v42lapm" },
3039   {   3, "hdlcFrameTunnelling" },
3040   {   4, "h310SeparateVCStack" },
3041   {   5, "h310SingleVCStack" },
3042   {   6, "transparent" },
3043   {   7, "segmentationAndReassembly" },
3044   {   8, "hdlcFrameTunnelingwSAR" },
3045   {   9, "v120" },
3046   {  10, "separateLANStack" },
3047   {  11, "v76wCompression" },
3048   {  12, "tcp" },
3049   {  13, "udp" },
3050   { 0, NULL }
3051 };
3052
3053 static const per_choice_t DataProtocolCapability_choice[] = {
3054   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
3055   {   1, &hf_h245_v14buffered    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3056   {   2, &hf_h245_v42lapm        , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3057   {   3, &hf_h245_hdlcFrameTunnelling, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3058   {   4, &hf_h245_h310SeparateVCStack, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3059   {   5, &hf_h245_h310SingleVCStack, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3060   {   6, &hf_h245_transparent    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3061   {   7, &hf_h245_segmentationAndReassembly, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
3062   {   8, &hf_h245_hdlcFrameTunnelingwSAR, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
3063   {   9, &hf_h245_v120           , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
3064   {  10, &hf_h245_separateLANStack, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
3065   {  11, &hf_h245_v76wCompression, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_v76wCompression },
3066   {  12, &hf_h245_tcp            , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
3067   {  13, &hf_h245_udp            , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
3068   { 0, NULL, 0, NULL }
3069 };
3070
3071 int
3072 dissect_h245_DataProtocolCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3073   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3074                                  ett_h245_DataProtocolCapability, DataProtocolCapability_choice,
3075                                  NULL);
3076
3077   return offset;
3078 }
3079
3080
3081 static const per_sequence_t T_t84Restricted_sequence[] = {
3082   { &hf_h245_qcif_bool      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3083   { &hf_h245_cif_bool       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3084   { &hf_h245_ccir601Seq     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3085   { &hf_h245_ccir601Prog    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3086   { &hf_h245_hdtvSeq        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3087   { &hf_h245_hdtvProg       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3088   { &hf_h245_g3FacsMH200x100, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3089   { &hf_h245_g3FacsMH200x200, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3090   { &hf_h245_g4FacsMMR200x100, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3091   { &hf_h245_g4FacsMMR200x200, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3092   { &hf_h245_jbig200x200Seq , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3093   { &hf_h245_jbig200x200Prog, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3094   { &hf_h245_jbig300x300Seq , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3095   { &hf_h245_jbig300x300Prog, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3096   { &hf_h245_digPhotoLow    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3097   { &hf_h245_digPhotoMedSeq , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3098   { &hf_h245_digPhotoMedProg, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3099   { &hf_h245_digPhotoHighSeq, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3100   { &hf_h245_digPhotoHighProg, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3101   { NULL, 0, 0, NULL }
3102 };
3103
3104 static int
3105 dissect_h245_T_t84Restricted(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3106   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3107                                    ett_h245_T_t84Restricted, T_t84Restricted_sequence);
3108
3109   return offset;
3110 }
3111
3112
3113 static const value_string h245_T84Profile_vals[] = {
3114   {   0, "t84Unrestricted" },
3115   {   1, "t84Restricted" },
3116   { 0, NULL }
3117 };
3118
3119 static const per_choice_t T84Profile_choice[] = {
3120   {   0, &hf_h245_t84Unrestricted, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
3121   {   1, &hf_h245_t84Restricted  , ASN1_NO_EXTENSIONS     , dissect_h245_T_t84Restricted },
3122   { 0, NULL, 0, NULL }
3123 };
3124
3125 static int
3126 dissect_h245_T84Profile(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3127   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3128                                  ett_h245_T84Profile, T84Profile_choice,
3129                                  NULL);
3130
3131   return offset;
3132 }
3133
3134
3135 static const per_sequence_t T_t84_sequence[] = {
3136   { &hf_h245_t84Protocol    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_DataProtocolCapability },
3137   { &hf_h245_t84Profile     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_T84Profile },
3138   { NULL, 0, 0, NULL }
3139 };
3140
3141 static int
3142 dissect_h245_T_t84(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3143   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3144                                    ett_h245_T_t84, T_t84_sequence);
3145
3146   return offset;
3147 }
3148
3149
3150
3151 static int
3152 dissect_h245_OCTET_STRING(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3153   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
3154                                        NO_BOUND, NO_BOUND, NULL);
3155
3156   return offset;
3157 }
3158
3159
3160 static const per_sequence_t Nlpid_sequence[] = {
3161   { &hf_h245_nlpidProtocol  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_DataProtocolCapability },
3162   { &hf_h245_nlpidData      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING },
3163   { NULL, 0, 0, NULL }
3164 };
3165
3166 static int
3167 dissect_h245_Nlpid(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3168   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3169                                    ett_h245_Nlpid, Nlpid_sequence);
3170
3171   return offset;
3172 }
3173
3174
3175 static const value_string h245_T38FaxRateManagement_vals[] = {
3176   {   0, "localTCF" },
3177   {   1, "transferredTCF" },
3178   { 0, NULL }
3179 };
3180
3181 static const per_choice_t T38FaxRateManagement_choice[] = {
3182   {   0, &hf_h245_localTCF       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3183   {   1, &hf_h245_transferredTCF , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3184   { 0, NULL, 0, NULL }
3185 };
3186
3187 static int
3188 dissect_h245_T38FaxRateManagement(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3189   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3190                                  ett_h245_T38FaxRateManagement, T38FaxRateManagement_choice,
3191                                  NULL);
3192
3193   return offset;
3194 }
3195
3196
3197
3198 static int
3199 dissect_h245_INTEGER(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3200   offset = dissect_per_integer(tvb, offset, actx, tree, hf_index, NULL);
3201
3202   return offset;
3203 }
3204
3205
3206 static const value_string h245_T_t38FaxUdpEC_vals[] = {
3207   {   0, "t38UDPFEC" },
3208   {   1, "t38UDPRedundancy" },
3209   { 0, NULL }
3210 };
3211
3212 static const per_choice_t T_t38FaxUdpEC_choice[] = {
3213   {   0, &hf_h245_t38UDPFEC      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3214   {   1, &hf_h245_t38UDPRedundancy, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3215   { 0, NULL, 0, NULL }
3216 };
3217
3218 static int
3219 dissect_h245_T_t38FaxUdpEC(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3220   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3221                                  ett_h245_T_t38FaxUdpEC, T_t38FaxUdpEC_choice,
3222                                  NULL);
3223
3224   return offset;
3225 }
3226
3227
3228 static const per_sequence_t T38FaxUdpOptions_sequence[] = {
3229   { &hf_h245_t38FaxMaxBuffer, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_h245_INTEGER },
3230   { &hf_h245_t38FaxMaxDatagram, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_h245_INTEGER },
3231   { &hf_h245_t38FaxUdpEC    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_T_t38FaxUdpEC },
3232   { NULL, 0, 0, NULL }
3233 };
3234
3235 static int
3236 dissect_h245_T38FaxUdpOptions(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3237   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3238                                    ett_h245_T38FaxUdpOptions, T38FaxUdpOptions_sequence);
3239
3240   return offset;
3241 }
3242
3243
3244 static const per_sequence_t T38FaxTcpOptions_sequence[] = {
3245   { &hf_h245_t38TCPBidirectionalMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3246   { NULL, 0, 0, NULL }
3247 };
3248
3249 static int
3250 dissect_h245_T38FaxTcpOptions(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3251   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3252                                    ett_h245_T38FaxTcpOptions, T38FaxTcpOptions_sequence);
3253
3254   return offset;
3255 }
3256
3257
3258 static const per_sequence_t T38FaxProfile_sequence[] = {
3259   { &hf_h245_fillBitRemoval , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3260   { &hf_h245_transcodingJBIG, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3261   { &hf_h245_transcodingMMR , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3262   { &hf_h245_version        , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_255 },
3263   { &hf_h245_t38FaxRateManagement, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_T38FaxRateManagement },
3264   { &hf_h245_t38FaxUdpOptions, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_T38FaxUdpOptions },
3265   { &hf_h245_t38FaxTcpOptions, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_T38FaxTcpOptions },
3266   { NULL, 0, 0, NULL }
3267 };
3268
3269 int
3270 dissect_h245_T38FaxProfile(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3271   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3272                                    ett_h245_T38FaxProfile, T38FaxProfile_sequence);
3273
3274   return offset;
3275 }
3276
3277
3278 static const per_sequence_t T_t38fax_sequence[] = {
3279   { &hf_h245_t38FaxProtocol , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_DataProtocolCapability },
3280   { &hf_h245_t38FaxProfile  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_T38FaxProfile },
3281   { NULL, 0, 0, NULL }
3282 };
3283
3284 static int
3285 dissect_h245_T_t38fax(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3286   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3287                                    ett_h245_T_t38fax, T_t38fax_sequence);
3288
3289   return offset;
3290 }
3291
3292
3293
3294 static int
3295 dissect_h245_T_standardOid(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3296   offset = dissect_per_object_identifier_str(tvb, offset, actx, tree, hf_index, &standard_oid_str);
3297
3298 #line 504 "h245.cnf"
3299   if(!h245_lc_dissector && strcmp(standard_oid_str,"0.0.8.245.1.1.1") == 0)
3300         h245_lc_dissector = amr_handle;
3301
3302   return offset;
3303 }
3304
3305
3306
3307 static int
3308 dissect_h245_OCTET_STRING_SIZE_16(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3309   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
3310                                        16, 16, NULL);
3311
3312   return offset;
3313 }
3314
3315
3316
3317 static int
3318 dissect_h245_IA5String_SIZE_1_64(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3319   offset = dissect_per_IA5String(tvb, offset, actx, tree, hf_index,
3320                                           1, 64);
3321
3322   return offset;
3323 }
3324
3325
3326 static const value_string h245_CapabilityIdentifier_vals[] = {
3327   {   0, "standard" },
3328   {   1, "h221NonStandard" },
3329   {   2, "uuid" },
3330   {   3, "domainBased" },
3331   { 0, NULL }
3332 };
3333
3334 static const per_choice_t CapabilityIdentifier_choice[] = {
3335   {   0, &hf_h245_standardOid    , ASN1_EXTENSION_ROOT    , dissect_h245_T_standardOid },
3336   {   1, &hf_h245_h221NonStandard, ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
3337   {   2, &hf_h245_uuid           , ASN1_EXTENSION_ROOT    , dissect_h245_OCTET_STRING_SIZE_16 },
3338   {   3, &hf_h245_domainBased    , ASN1_EXTENSION_ROOT    , dissect_h245_IA5String_SIZE_1_64 },
3339   { 0, NULL, 0, NULL }
3340 };
3341
3342 static int
3343 dissect_h245_CapabilityIdentifier(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3344   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3345                                  ett_h245_CapabilityIdentifier, CapabilityIdentifier_choice,
3346                                  NULL);
3347
3348   return offset;
3349 }
3350
3351
3352
3353 static int
3354 dissect_h245_INTEGER_0_4294967295(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3355   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3356                                               0U, 4294967295U, NULL, FALSE);
3357
3358   return offset;
3359 }
3360
3361
3362
3363 static int
3364 dissect_h245_INTEGER_0_127(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3365   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3366                                               0U, 127U, NULL, FALSE);
3367
3368   return offset;
3369 }
3370
3371
3372 static const value_string h245_ParameterIdentifier_vals[] = {
3373   {   0, "standard" },
3374   {   1, "h221NonStandard" },
3375   {   2, "uuid" },
3376   {   3, "domainBased" },
3377   { 0, NULL }
3378 };
3379
3380 static const per_choice_t ParameterIdentifier_choice[] = {
3381   {   0, &hf_h245_standard       , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_127 },
3382   {   1, &hf_h245_h221NonStandard, ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
3383   {   2, &hf_h245_uuid           , ASN1_EXTENSION_ROOT    , dissect_h245_OCTET_STRING_SIZE_16 },
3384   {   3, &hf_h245_domainBased    , ASN1_EXTENSION_ROOT    , dissect_h245_IA5String_SIZE_1_64 },
3385   { 0, NULL, 0, NULL }
3386 };
3387
3388 static int
3389 dissect_h245_ParameterIdentifier(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3390   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3391                                  ett_h245_ParameterIdentifier, ParameterIdentifier_choice,
3392                                  NULL);
3393
3394   return offset;
3395 }
3396
3397
3398 static const per_sequence_t SEQUENCE_OF_GenericParameter_sequence_of[1] = {
3399   { &hf_h245_messageContent_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_GenericParameter },
3400 };
3401
3402 static int
3403 dissect_h245_SEQUENCE_OF_GenericParameter(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3404   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
3405                                       ett_h245_SEQUENCE_OF_GenericParameter, SEQUENCE_OF_GenericParameter_sequence_of);
3406
3407   return offset;
3408 }
3409
3410
3411 static const value_string h245_ParameterValue_vals[] = {
3412   {   0, "logical" },
3413   {   1, "booleanArray" },
3414   {   2, "unsignedMin" },
3415   {   3, "unsignedMax" },
3416   {   4, "unsigned32Min" },
3417   {   5, "unsigned32Max" },
3418   {   6, "octetString" },
3419   {   7, "genericParameter" },
3420   { 0, NULL }
3421 };
3422
3423 static const per_choice_t ParameterValue_choice[] = {
3424   {   0, &hf_h245_logical        , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3425   {   1, &hf_h245_booleanArray   , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_255 },
3426   {   2, &hf_h245_unsignedMin    , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_65535 },
3427   {   3, &hf_h245_unsignedMax    , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_65535 },
3428   {   4, &hf_h245_unsigned32Min  , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_4294967295 },
3429   {   5, &hf_h245_unsigned32Max  , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_4294967295 },
3430   {   6, &hf_h245_octetString    , ASN1_EXTENSION_ROOT    , dissect_h245_OCTET_STRING },
3431   {   7, &hf_h245_genericParameters, ASN1_EXTENSION_ROOT    , dissect_h245_SEQUENCE_OF_GenericParameter },
3432   { 0, NULL, 0, NULL }
3433 };
3434
3435 static int
3436 dissect_h245_ParameterValue(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3437   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3438                                  ett_h245_ParameterValue, ParameterValue_choice,
3439                                  NULL);
3440
3441   return offset;
3442 }
3443
3444
3445 static const per_sequence_t SEQUENCE_OF_ParameterIdentifier_sequence_of[1] = {
3446   { &hf_h245_supersedes_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_ParameterIdentifier },
3447 };
3448
3449 static int
3450 dissect_h245_SEQUENCE_OF_ParameterIdentifier(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3451   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
3452                                       ett_h245_SEQUENCE_OF_ParameterIdentifier, SEQUENCE_OF_ParameterIdentifier_sequence_of);
3453
3454   return offset;
3455 }
3456
3457
3458 static const per_sequence_t GenericParameter_sequence[] = {
3459   { &hf_h245_parameterIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_ParameterIdentifier },
3460   { &hf_h245_parameterValue , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_ParameterValue },
3461   { &hf_h245_supersedes     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_ParameterIdentifier },
3462   { NULL, 0, 0, NULL }
3463 };
3464
3465 static int
3466 dissect_h245_GenericParameter(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3467   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3468                                    ett_h245_GenericParameter, GenericParameter_sequence);
3469
3470   return offset;
3471 }
3472
3473
3474 static const per_sequence_t GenericCapability_sequence[] = {
3475   { &hf_h245_capabilityIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityIdentifier },
3476   { &hf_h245_maxBitRate2_0_4294967295, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_4294967295 },
3477   { &hf_h245_collapsing     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_GenericParameter },
3478   { &hf_h245_nonCollapsing  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_GenericParameter },
3479   { &hf_h245_nonCollapsingRaw, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OCTET_STRING },
3480   { &hf_h245_transport      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_DataProtocolCapability },
3481   { NULL, 0, 0, NULL }
3482 };
3483
3484 static int
3485 dissect_h245_GenericCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3486   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3487                                    ett_h245_GenericCapability, GenericCapability_sequence);
3488
3489   return offset;
3490 }
3491
3492
3493 static const value_string h245_Application_vals[] = {
3494   {   0, "nonStandard" },
3495   {   1, "t120" },
3496   {   2, "dsm-cc" },
3497   {   3, "userData" },
3498   {   4, "t84" },
3499   {   5, "t434" },
3500   {   6, "h224" },
3501   {   7, "nlpid" },
3502   {   8, "dsvdControl" },
3503   {   9, "h222DataPartitioning" },
3504   {  10, "t30fax" },
3505   {  11, "t140" },
3506   {  12, "t38fax" },
3507   {  13, "genericDataCapability" },
3508   { 0, NULL }
3509 };
3510
3511 static const per_choice_t Application_choice[] = {
3512   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
3513   {   1, &hf_h245_t120           , ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
3514   {   2, &hf_h245_dsm_cc         , ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
3515   {   3, &hf_h245_userData       , ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
3516   {   4, &hf_h245_t84            , ASN1_EXTENSION_ROOT    , dissect_h245_T_t84 },
3517   {   5, &hf_h245_t434           , ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
3518   {   6, &hf_h245_h224           , ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
3519   {   7, &hf_h245_nlpid          , ASN1_EXTENSION_ROOT    , dissect_h245_Nlpid },
3520   {   8, &hf_h245_dsvdControl    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3521   {   9, &hf_h245_h222DataPartitioning, ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
3522   {  10, &hf_h245_t30fax         , ASN1_NOT_EXTENSION_ROOT, dissect_h245_DataProtocolCapability },
3523   {  11, &hf_h245_t140           , ASN1_NOT_EXTENSION_ROOT, dissect_h245_DataProtocolCapability },
3524   {  12, &hf_h245_t38fax         , ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_t38fax },
3525   {  13, &hf_h245_genericDataCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericCapability },
3526   { 0, NULL, 0, NULL }
3527 };
3528
3529 static int
3530 dissect_h245_Application(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3531 #line 398 "h245.cnf"
3532   guint32 value;
3533
3534   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3535                                  ett_h245_Application, Application_choice,
3536                                  &value);
3537
3538         codec_type = val_to_str(value, h245_Application_vals, "<unknown>");
3539                 if (h245_pi != NULL) g_snprintf(h245_pi->frame_label, 50, "%s %s", h245_pi->frame_label, codec_type);
3540
3541
3542   return offset;
3543 }
3544
3545
3546 static const per_sequence_t DataApplicationCapability_sequence[] = {
3547   { &hf_h245_application    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Application },
3548   { &hf_h245_maxBitRate2_0_4294967295, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_4294967295 },
3549   { NULL, 0, 0, NULL }
3550 };
3551
3552 static int
3553 dissect_h245_DataApplicationCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3554   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3555                                    ett_h245_DataApplicationCapability, DataApplicationCapability_sequence);
3556
3557   return offset;
3558 }
3559
3560
3561 static const per_sequence_t SEQUENCE_OF_DataApplicationCapability_sequence_of[1] = {
3562   { &hf_h245_centralizedData_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_DataApplicationCapability },
3563 };
3564
3565 static int
3566 dissect_h245_SEQUENCE_OF_DataApplicationCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3567   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
3568                                       ett_h245_SEQUENCE_OF_DataApplicationCapability, SEQUENCE_OF_DataApplicationCapability_sequence_of);
3569
3570   return offset;
3571 }
3572
3573
3574 static const per_sequence_t MediaDistributionCapability_sequence[] = {
3575   { &hf_h245_centralizedControl, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3576   { &hf_h245_distributedControl, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3577   { &hf_h245_centralizedAudio, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3578   { &hf_h245_distributedAudio, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3579   { &hf_h245_centralizedVideo, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3580   { &hf_h245_distributedVideo, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3581   { &hf_h245_centralizedData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_DataApplicationCapability },
3582   { &hf_h245_distributedData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_DataApplicationCapability },
3583   { NULL, 0, 0, NULL }
3584 };
3585
3586 static int
3587 dissect_h245_MediaDistributionCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3588   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3589                                    ett_h245_MediaDistributionCapability, MediaDistributionCapability_sequence);
3590
3591   return offset;
3592 }
3593
3594
3595 static const per_sequence_t SEQUENCE_OF_MediaDistributionCapability_sequence_of[1] = {
3596   { &hf_h245_mediaDistributionCapability_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_MediaDistributionCapability },
3597 };
3598
3599 static int
3600 dissect_h245_SEQUENCE_OF_MediaDistributionCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3601   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
3602                                       ett_h245_SEQUENCE_OF_MediaDistributionCapability, SEQUENCE_OF_MediaDistributionCapability_sequence_of);
3603
3604   return offset;
3605 }
3606
3607
3608 static const per_sequence_t MultipointCapability_sequence[] = {
3609   { &hf_h245_multicastCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3610   { &hf_h245_multiUniCastConference, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3611   { &hf_h245_mediaDistributionCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SEQUENCE_OF_MediaDistributionCapability },
3612   { NULL, 0, 0, NULL }
3613 };
3614
3615 static int
3616 dissect_h245_MultipointCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3617   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3618                                    ett_h245_MultipointCapability, MultipointCapability_sequence);
3619
3620   return offset;
3621 }
3622
3623
3624 static const per_sequence_t T_mcCapability_sequence[] = {
3625   { &hf_h245_centralizedConferenceMC, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3626   { &hf_h245_decentralizedConferenceMC, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3627   { NULL, 0, 0, NULL }
3628 };
3629
3630 static int
3631 dissect_h245_T_mcCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3632   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3633                                    ett_h245_T_mcCapability, T_mcCapability_sequence);
3634
3635   return offset;
3636 }
3637
3638
3639
3640 static int
3641 dissect_h245_INTEGER_1_32768_(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3642   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3643                                               1U, 32768U, NULL, TRUE);
3644
3645   return offset;
3646 }
3647
3648
3649 static const value_string h245_T_payloadDescriptor_vals[] = {
3650   {   0, "nonStandardIdentifier" },
3651   {   1, "rfc-number" },
3652   {   2, "oid" },
3653   { 0, NULL }
3654 };
3655
3656 static const per_choice_t T_payloadDescriptor_choice[] = {
3657   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
3658   {   1, &hf_h245_rfc_number     , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_1_32768_ },
3659   {   2, &hf_h245_oid            , ASN1_EXTENSION_ROOT    , dissect_h245_OBJECT_IDENTIFIER },
3660   { 0, NULL, 0, NULL }
3661 };
3662
3663 static int
3664 dissect_h245_T_payloadDescriptor(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3665   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3666                                  ett_h245_T_payloadDescriptor, T_payloadDescriptor_choice,
3667                                  NULL);
3668
3669   return offset;
3670 }
3671
3672
3673 static const per_sequence_t RTPPayloadType_sequence[] = {
3674   { &hf_h245_payloadDescriptor, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_payloadDescriptor },
3675   { &hf_h245_payloadType    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_127 },
3676   { NULL, 0, 0, NULL }
3677 };
3678
3679 static int
3680 dissect_h245_RTPPayloadType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3681   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3682                                    ett_h245_RTPPayloadType, RTPPayloadType_sequence);
3683
3684   return offset;
3685 }
3686
3687
3688 static const per_sequence_t SEQUENCE_SIZE_1_256_OF_RTPPayloadType_sequence_of[1] = {
3689   { &hf_h245_rtpPayloadTypes_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_RTPPayloadType },
3690 };
3691
3692 static int
3693 dissect_h245_SEQUENCE_SIZE_1_256_OF_RTPPayloadType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3694   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3695                                                   ett_h245_SEQUENCE_SIZE_1_256_OF_RTPPayloadType, SEQUENCE_SIZE_1_256_OF_RTPPayloadType_sequence_of,
3696                                                   1, 256);
3697
3698   return offset;
3699 }
3700
3701
3702 static const per_sequence_t MediaPacketizationCapability_sequence[] = {
3703   { &hf_h245_h261aVideoPacketization, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3704   { &hf_h245_rtpPayloadTypes, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_SEQUENCE_SIZE_1_256_OF_RTPPayloadType },
3705   { NULL, 0, 0, NULL }
3706 };
3707
3708 static int
3709 dissect_h245_MediaPacketizationCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3710   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3711                                    ett_h245_MediaPacketizationCapability, MediaPacketizationCapability_sequence);
3712
3713   return offset;
3714 }
3715
3716
3717 static const value_string h245_QOSMode_vals[] = {
3718   {   0, "guaranteedQOS" },
3719   {   1, "controlledLoad" },
3720   { 0, NULL }
3721 };
3722
3723 static const per_choice_t QOSMode_choice[] = {
3724   {   0, &hf_h245_guaranteedQOS  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3725   {   1, &hf_h245_controlledLoad , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3726   { 0, NULL, 0, NULL }
3727 };
3728
3729 static int
3730 dissect_h245_QOSMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3731   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3732                                  ett_h245_QOSMode, QOSMode_choice,
3733                                  NULL);
3734
3735   return offset;
3736 }
3737
3738
3739
3740 static int
3741 dissect_h245_INTEGER_1_4294967295(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3742   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3743                                               1U, 4294967295U, NULL, FALSE);
3744
3745   return offset;
3746 }
3747
3748
3749 static const per_sequence_t RSVPParameters_sequence[] = {
3750   { &hf_h245_qosMode        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_QOSMode },
3751   { &hf_h245_tokenRate      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_4294967295 },
3752   { &hf_h245_bucketSize     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_4294967295 },
3753   { &hf_h245_peakRate       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_4294967295 },
3754   { &hf_h245_minPoliced     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_4294967295 },
3755   { &hf_h245_maxPktSize     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_4294967295 },
3756   { NULL, 0, 0, NULL }
3757 };
3758
3759 static int
3760 dissect_h245_RSVPParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3761   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3762                                    ett_h245_RSVPParameters, RSVPParameters_sequence);
3763
3764   return offset;
3765 }
3766
3767
3768 static const per_sequence_t ATMParameters_sequence[] = {
3769   { &hf_h245_maxNTUSize     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
3770   { &hf_h245_atmUBR         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3771   { &hf_h245_atmrtVBR       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3772   { &hf_h245_atmnrtVBR      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3773   { &hf_h245_atmABR         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3774   { &hf_h245_atmCBR         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3775   { NULL, 0, 0, NULL }
3776 };
3777
3778 static int
3779 dissect_h245_ATMParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3780   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3781                                    ett_h245_ATMParameters, ATMParameters_sequence);
3782
3783   return offset;
3784 }
3785
3786
3787 static const per_sequence_t GenericTransportParameters_sequence[] = {
3788   { &hf_h245_nonStandardData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_NonStandardParameter },
3789   { &hf_h245_averageRate    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_4294967295 },
3790   { &hf_h245_burst          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_4294967295 },
3791   { &hf_h245_peakRate       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_4294967295 },
3792   { &hf_h245_maxPktSize     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_4294967295 },
3793   { NULL, 0, 0, NULL }
3794 };
3795
3796 static int
3797 dissect_h245_GenericTransportParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3798   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3799                                    ett_h245_GenericTransportParameters, GenericTransportParameters_sequence);
3800
3801   return offset;
3802 }
3803
3804
3805 static const per_sequence_t ServicePriorityValue_sequence[] = {
3806   { &hf_h245_nonStandardParameter, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_NonStandardParameter },
3807   { NULL, 0, 0, NULL }
3808 };
3809
3810 static int
3811 dissect_h245_ServicePriorityValue(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3812   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3813                                    ett_h245_ServicePriorityValue, ServicePriorityValue_sequence);
3814
3815   return offset;
3816 }
3817
3818
3819 static const per_sequence_t ServicePriority_sequence[] = {
3820   { &hf_h245_nonStandardData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_NonStandardParameter },
3821   { &hf_h245_servicePrioritySignalled, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3822   { &hf_h245_servicePriorityValue, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_ServicePriorityValue },
3823   { NULL, 0, 0, NULL }
3824 };
3825
3826 static int
3827 dissect_h245_ServicePriority(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3828   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3829                                    ett_h245_ServicePriority, ServicePriority_sequence);
3830
3831   return offset;
3832 }
3833
3834
3835 static const per_sequence_t AuthorizationParameters_sequence[] = {
3836   { &hf_h245_nonStandardData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_NonStandardParameter },
3837   { NULL, 0, 0, NULL }
3838 };
3839
3840 static int
3841 dissect_h245_AuthorizationParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3842   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3843                                    ett_h245_AuthorizationParameters, AuthorizationParameters_sequence);
3844
3845   return offset;
3846 }
3847
3848
3849 static const value_string h245_QOSType_vals[] = {
3850   {   0, "desired" },
3851   {   1, "required" },
3852   { 0, NULL }
3853 };
3854
3855 static const per_choice_t QOSType_choice[] = {
3856   {   0, &hf_h245_desired        , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3857   {   1, &hf_h245_required       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3858   { 0, NULL, 0, NULL }
3859 };
3860
3861 static int
3862 dissect_h245_QOSType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3863   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3864                                  ett_h245_QOSType, QOSType_choice,
3865                                  NULL);
3866
3867   return offset;
3868 }
3869
3870
3871 static const value_string h245_QOSClass_vals[] = {
3872   {   0, "class0" },
3873   {   1, "class1" },
3874   {   2, "class2" },
3875   {   3, "class3" },
3876   {   4, "class4" },
3877   {   5, "class5" },
3878   { 0, NULL }
3879 };
3880
3881 static const per_choice_t QOSClass_choice[] = {
3882   {   0, &hf_h245_class0         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3883   {   1, &hf_h245_class1         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3884   {   2, &hf_h245_class2         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3885   {   3, &hf_h245_class3         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3886   {   4, &hf_h245_class4         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3887   {   5, &hf_h245_class5         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3888   { 0, NULL, 0, NULL }
3889 };
3890
3891 static int
3892 dissect_h245_QOSClass(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3893   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3894                                  ett_h245_QOSClass, QOSClass_choice,
3895                                  NULL);
3896
3897   return offset;
3898 }
3899
3900
3901 static const per_sequence_t QOSDescriptor_sequence[] = {
3902   { &hf_h245_nonStandardData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_NonStandardParameter },
3903   { &hf_h245_qosType        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_QOSType },
3904   { &hf_h245_qosClass       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_QOSClass },
3905   { NULL, 0, 0, NULL }
3906 };
3907
3908 static int
3909 dissect_h245_QOSDescriptor(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3910   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3911                                    ett_h245_QOSDescriptor, QOSDescriptor_sequence);
3912
3913   return offset;
3914 }
3915
3916
3917
3918 static int
3919 dissect_h245_INTEGER_0_63(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3920   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3921                                               0U, 63U, NULL, FALSE);
3922
3923   return offset;
3924 }
3925
3926
3927 static const per_sequence_t QOSCapability_sequence[] = {
3928   { &hf_h245_nonStandardData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_NonStandardParameter },
3929   { &hf_h245_rsvpParameters , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_RSVPParameters },
3930   { &hf_h245_atmParameters  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_ATMParameters },
3931   { &hf_h245_localQoS       , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_BOOLEAN },
3932   { &hf_h245_genericTransportParameters, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_GenericTransportParameters },
3933   { &hf_h245_servicePriority, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_ServicePriority },
3934   { &hf_h245_authorizationParameter, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_AuthorizationParameters },
3935   { &hf_h245_qosDescriptor  , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_QOSDescriptor },
3936   { &hf_h245_dscpValue      , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_INTEGER_0_63 },
3937   { NULL, 0, 0, NULL }
3938 };
3939
3940 int
3941 dissect_h245_QOSCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3942   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3943                                    ett_h245_QOSCapability, QOSCapability_sequence);
3944
3945   return offset;
3946 }
3947
3948
3949 static const per_sequence_t SEQUENCE_SIZE_1_256_OF_QOSCapability_sequence_of[1] = {
3950   { &hf_h245_qOSCapabilities_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_QOSCapability },
3951 };
3952
3953 static int
3954 dissect_h245_SEQUENCE_SIZE_1_256_OF_QOSCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3955   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3956                                                   ett_h245_SEQUENCE_SIZE_1_256_OF_QOSCapability, SEQUENCE_SIZE_1_256_OF_QOSCapability_sequence_of,
3957                                                   1, 256);
3958
3959   return offset;
3960 }
3961
3962
3963 static const per_sequence_t T_atm_AAL5_compressed_sequence[] = {
3964   { &hf_h245_variable_delta , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
3965   { NULL, 0, 0, NULL }
3966 };
3967
3968 static int
3969 dissect_h245_T_atm_AAL5_compressed(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3970   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3971                                    ett_h245_T_atm_AAL5_compressed, T_atm_AAL5_compressed_sequence);
3972
3973   return offset;
3974 }
3975
3976
3977 static const value_string h245_MediaTransportType_vals[] = {
3978   {   0, "ip-UDP" },
3979   {   1, "ip-TCP" },
3980   {   2, "atm-AAL5-UNIDIR" },
3981   {   3, "atm-AAL5-BIDIR" },
3982   {   4, "atm-AAL5-compressed" },
3983   { 0, NULL }
3984 };
3985
3986 static const per_choice_t MediaTransportType_choice[] = {
3987   {   0, &hf_h245_ip_UDP         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3988   {   1, &hf_h245_ip_TCP         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3989   {   2, &hf_h245_atm_AAL5_UNIDIR, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3990   {   3, &hf_h245_atm_AAL5_BIDIR , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
3991   {   4, &hf_h245_atm_AAL5_compressed, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_atm_AAL5_compressed },
3992   { 0, NULL, 0, NULL }
3993 };
3994
3995 static int
3996 dissect_h245_MediaTransportType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
3997   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3998                                  ett_h245_MediaTransportType, MediaTransportType_choice,
3999                                  NULL);
4000
4001   return offset;
4002 }
4003
4004
4005 static const per_sequence_t MediaChannelCapability_sequence[] = {
4006   { &hf_h245_mediaTransport , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_MediaTransportType },
4007   { NULL, 0, 0, NULL }
4008 };
4009
4010 static int
4011 dissect_h245_MediaChannelCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4012   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4013                                    ett_h245_MediaChannelCapability, MediaChannelCapability_sequence);
4014
4015   return offset;
4016 }
4017
4018
4019 static const per_sequence_t SEQUENCE_SIZE_1_256_OF_MediaChannelCapability_sequence_of[1] = {
4020   { &hf_h245_mediaChannelCapabilities_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_MediaChannelCapability },
4021 };
4022
4023 static int
4024 dissect_h245_SEQUENCE_SIZE_1_256_OF_MediaChannelCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4025   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4026                                                   ett_h245_SEQUENCE_SIZE_1_256_OF_MediaChannelCapability, SEQUENCE_SIZE_1_256_OF_MediaChannelCapability_sequence_of,
4027                                                   1, 256);
4028
4029   return offset;
4030 }
4031
4032
4033 static const per_sequence_t TransportCapability_sequence[] = {
4034   { &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_NonStandardParameter },
4035   { &hf_h245_qOSCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_SIZE_1_256_OF_QOSCapability },
4036   { &hf_h245_mediaChannelCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_SIZE_1_256_OF_MediaChannelCapability },
4037   { NULL, 0, 0, NULL }
4038 };
4039
4040 static int
4041 dissect_h245_TransportCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4042   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4043                                    ett_h245_TransportCapability, TransportCapability_sequence);
4044
4045   return offset;
4046 }
4047
4048
4049
4050 static int
4051 dissect_h245_INTEGER_1_16(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4052   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4053                                               1U, 16U, NULL, FALSE);
4054
4055   return offset;
4056 }
4057
4058
4059
4060 static int
4061 dissect_h245_INTEGER_0_15(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4062   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4063                                               0U, 15U, NULL, FALSE);
4064
4065   return offset;
4066 }
4067
4068
4069 static const per_sequence_t T_frameSequence_sequence_of[1] = {
4070   { &hf_h245_frameSequence_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_255 },
4071 };
4072
4073 static int
4074 dissect_h245_T_frameSequence(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4075   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4076                                                   ett_h245_T_frameSequence, T_frameSequence_sequence_of,
4077                                                   1, 256);
4078
4079   return offset;
4080 }
4081
4082
4083 static const per_sequence_t RTPH263VideoRedundancyFrameMapping_sequence[] = {
4084   { &hf_h245_threadNumber   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_15 },
4085   { &hf_h245_frameSequence  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_frameSequence },
4086   { NULL, 0, 0, NULL }
4087 };
4088
4089 static int
4090 dissect_h245_RTPH263VideoRedundancyFrameMapping(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4091   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4092                                    ett_h245_RTPH263VideoRedundancyFrameMapping, RTPH263VideoRedundancyFrameMapping_sequence);
4093
4094   return offset;
4095 }
4096
4097
4098 static const per_sequence_t SEQUENCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping_sequence_of[1] = {
4099   { &hf_h245_custom_item    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_RTPH263VideoRedundancyFrameMapping },
4100 };
4101
4102 static int
4103 dissect_h245_SEQUENCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4104   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4105                                                   ett_h245_SEQUENCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping, SEQUENCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping_sequence_of,
4106                                                   1, 256);
4107
4108   return offset;
4109 }
4110
4111
4112 static const value_string h245_T_frameToThreadMapping_vals[] = {
4113   {   0, "roundrobin" },
4114   {   1, "custom" },
4115   { 0, NULL }
4116 };
4117
4118 static const per_choice_t T_frameToThreadMapping_choice[] = {
4119   {   0, &hf_h245_roundrobin     , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
4120   {   1, &hf_h245_custom         , ASN1_EXTENSION_ROOT    , dissect_h245_SEQUENCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping },
4121   { 0, NULL, 0, NULL }
4122 };
4123
4124 static int
4125 dissect_h245_T_frameToThreadMapping(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4126   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
4127                                  ett_h245_T_frameToThreadMapping, T_frameToThreadMapping_choice,
4128                                  NULL);
4129
4130   return offset;
4131 }
4132
4133
4134 static const per_sequence_t T_containedThreads_sequence_of[1] = {
4135   { &hf_h245_containedThreads_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_15 },
4136 };
4137
4138 static int
4139 dissect_h245_T_containedThreads(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4140   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4141                                                   ett_h245_T_containedThreads, T_containedThreads_sequence_of,
4142                                                   1, 256);
4143
4144   return offset;
4145 }
4146
4147
4148 static const per_sequence_t RTPH263VideoRedundancyEncoding_sequence[] = {
4149   { &hf_h245_numberOfThreads, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_16 },
4150   { &hf_h245_framesBetweenSyncPoints, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_256 },
4151   { &hf_h245_frameToThreadMapping, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_frameToThreadMapping },
4152   { &hf_h245_containedThreads, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_containedThreads },
4153   { NULL, 0, 0, NULL }
4154 };
4155
4156 static int
4157 dissect_h245_RTPH263VideoRedundancyEncoding(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4158   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4159                                    ett_h245_RTPH263VideoRedundancyEncoding, RTPH263VideoRedundancyEncoding_sequence);
4160
4161   return offset;
4162 }
4163
4164
4165 static const value_string h245_RedundancyEncodingMethod_vals[] = {
4166   {   0, "nonStandard" },
4167   {   1, "rtpAudioRedundancyEncoding" },
4168   {   2, "rtpH263VideoRedundancyEncoding" },
4169   { 0, NULL }
4170 };
4171
4172 static const per_choice_t RedundancyEncodingMethod_choice[] = {
4173   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
4174   {   1, &hf_h245_rtpAudioRedundancyEncoding, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
4175   {   2, &hf_h245_rtpH263VideoRedundancyEncoding, ASN1_NOT_EXTENSION_ROOT, dissect_h245_RTPH263VideoRedundancyEncoding },
4176   { 0, NULL, 0, NULL }
4177 };
4178
4179 static int
4180 dissect_h245_RedundancyEncodingMethod(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4181   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
4182                                  ett_h245_RedundancyEncodingMethod, RedundancyEncodingMethod_choice,
4183                                  NULL);
4184
4185   return offset;
4186 }
4187
4188
4189
4190 static int
4191 dissect_h245_CapabilityTableEntryNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4192   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4193                                               1U, 65535U, NULL, FALSE);
4194
4195   return offset;
4196 }
4197
4198
4199 static const per_sequence_t SEQUENCE_SIZE_1_256_OF_CapabilityTableEntryNumber_sequence_of[1] = {
4200   { &hf_h245_secondaryEncodingCapability_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityTableEntryNumber },
4201 };
4202
4203 static int
4204 dissect_h245_SEQUENCE_SIZE_1_256_OF_CapabilityTableEntryNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4205   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4206                                                   ett_h245_SEQUENCE_SIZE_1_256_OF_CapabilityTableEntryNumber, SEQUENCE_SIZE_1_256_OF_CapabilityTableEntryNumber_sequence_of,
4207                                                   1, 256);
4208
4209   return offset;
4210 }
4211
4212
4213 static const per_sequence_t RedundancyEncodingCapability_sequence[] = {
4214   { &hf_h245_redundancyEncodingMethod, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_RedundancyEncodingMethod },
4215   { &hf_h245_primaryEncoding, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityTableEntryNumber },
4216   { &hf_h245_secondaryEncodingCapability, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_SIZE_1_256_OF_CapabilityTableEntryNumber },
4217   { NULL, 0, 0, NULL }
4218 };
4219
4220 static int
4221 dissect_h245_RedundancyEncodingCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4222   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4223                                    ett_h245_RedundancyEncodingCapability, RedundancyEncodingCapability_sequence);
4224
4225   return offset;
4226 }
4227
4228
4229 static const per_sequence_t SEQUENCE_SIZE_1_256_OF_RedundancyEncodingCapability_sequence_of[1] = {
4230   { &hf_h245_redundancyEncodingCapability_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_RedundancyEncodingCapability },
4231 };
4232
4233 static int
4234 dissect_h245_SEQUENCE_SIZE_1_256_OF_RedundancyEncodingCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4235   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4236                                                   ett_h245_SEQUENCE_SIZE_1_256_OF_RedundancyEncodingCapability, SEQUENCE_SIZE_1_256_OF_RedundancyEncodingCapability_sequence_of,
4237                                                   1, 256);
4238
4239   return offset;
4240 }
4241
4242
4243 static const per_sequence_t H2250Capability_sequence[] = {
4244   { &hf_h245_maximumAudioDelayJitter, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_1023 },
4245   { &hf_h245_receiveMultipointCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MultipointCapability },
4246   { &hf_h245_transmitMultipointCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MultipointCapability },
4247   { &hf_h245_receiveAndTransmitMultipointCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MultipointCapability },
4248   { &hf_h245_mcCapability   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_mcCapability },
4249   { &hf_h245_rtcpVideoControlCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4250   { &hf_h245_mediaPacketizationCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MediaPacketizationCapability },
4251   { &hf_h245_transportCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_TransportCapability },
4252   { &hf_h245_redundancyEncodingCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_SEQUENCE_SIZE_1_256_OF_RedundancyEncodingCapability },
4253   { &hf_h245_logicalChannelSwitchingCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4254   { &hf_h245_t120DynamicPortCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4255   { NULL, 0, 0, NULL }
4256 };
4257
4258 static int
4259 dissect_h245_H2250Capability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4260   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4261                                    ett_h245_H2250Capability, H2250Capability_sequence);
4262
4263   return offset;
4264 }
4265
4266
4267 static const value_string h245_MultiplexCapability_vals[] = {
4268   {   0, "nonStandard" },
4269   {   1, "h222Capability" },
4270   {   2, "h223Capability" },
4271   {   3, "v76Capability" },
4272   {   4, "h2250Capability" },
4273   {   5, "genericMultiplexCapability" },
4274   { 0, NULL }
4275 };
4276
4277 static const per_choice_t MultiplexCapability_choice[] = {
4278   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
4279   {   1, &hf_h245_h222Capability , ASN1_EXTENSION_ROOT    , dissect_h245_H222Capability },
4280   {   2, &hf_h245_h223Capability , ASN1_EXTENSION_ROOT    , dissect_h245_H223Capability },
4281   {   3, &hf_h245_v76Capability  , ASN1_EXTENSION_ROOT    , dissect_h245_V76Capability },
4282   {   4, &hf_h245_h2250Capability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_H2250Capability },
4283   {   5, &hf_h245_genericMultiplexCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericCapability },
4284   { 0, NULL, 0, NULL }
4285 };
4286
4287 static int
4288 dissect_h245_MultiplexCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4289   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
4290                                  ett_h245_MultiplexCapability, MultiplexCapability_choice,
4291                                  NULL);
4292
4293   return offset;
4294 }
4295
4296
4297
4298 static int
4299 dissect_h245_INTEGER_1_4(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4300   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4301                                               1U, 4U, NULL, FALSE);
4302
4303   return offset;
4304 }
4305
4306
4307 static const per_sequence_t H261VideoCapability_sequence[] = {
4308   { &hf_h245_qcifMPI_1_4    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_4 },
4309   { &hf_h245_cifMPI_1_4     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_4 },
4310   { &hf_h245_temporalSpatialTradeOffCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4311   { &hf_h245_maxBitRate_1_19200, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_19200 },
4312   { &hf_h245_stillImageTransmission, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4313   { &hf_h245_videoBadMBsCap , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4314   { NULL, 0, 0, NULL }
4315 };
4316
4317 static int
4318 dissect_h245_H261VideoCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4319   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4320                                    ett_h245_H261VideoCapability, H261VideoCapability_sequence);
4321
4322   return offset;
4323 }
4324
4325
4326
4327 static int
4328 dissect_h245_INTEGER_0_1073741823(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4329   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4330                                               0U, 1073741823U, NULL, FALSE);
4331
4332   return offset;
4333 }
4334
4335
4336
4337 static int
4338 dissect_h245_INTEGER_0_262143(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4339   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4340                                               0U, 262143U, NULL, FALSE);
4341
4342   return offset;
4343 }
4344
4345
4346
4347 static int
4348 dissect_h245_INTEGER_0_16383(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4349   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4350                                               0U, 16383U, NULL, FALSE);
4351
4352   return offset;
4353 }
4354
4355
4356 static const per_sequence_t H262VideoCapability_sequence[] = {
4357   { &hf_h245_profileAndLevel_SPatML, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4358   { &hf_h245_profileAndLevel_MPatLL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4359   { &hf_h245_profileAndLevel_MPatML, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4360   { &hf_h245_profileAndLevel_MPatH_14, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4361   { &hf_h245_profileAndLevel_MPatHL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4362   { &hf_h245_profileAndLevel_SNRatLL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4363   { &hf_h245_profileAndLevel_SNRatML, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4364   { &hf_h245_profileAndLevel_SpatialatH_14, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4365   { &hf_h245_profileAndLevel_HPatML, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4366   { &hf_h245_profileAndLevel_HPatH_14, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4367   { &hf_h245_profileAndLevel_HPatHL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4368   { &hf_h245_videoBitRate   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_1073741823 },
4369   { &hf_h245_vbvBufferSize  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_262143 },
4370   { &hf_h245_samplesPerLine , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_16383 },
4371   { &hf_h245_linesPerFrame  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_16383 },
4372   { &hf_h245_framesPerSecond, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_15 },
4373   { &hf_h245_luminanceSampleRate, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_4294967295 },
4374   { &hf_h245_videoBadMBsCap , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4375   { NULL, 0, 0, NULL }
4376 };
4377
4378 static int
4379 dissect_h245_H262VideoCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4380   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4381                                    ett_h245_H262VideoCapability, H262VideoCapability_sequence);
4382
4383   return offset;
4384 }
4385
4386
4387
4388 static int
4389 dissect_h245_INTEGER_1_32(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4390   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4391                                               1U, 32U, NULL, FALSE);
4392
4393   return offset;
4394 }
4395
4396
4397
4398 static int
4399 dissect_h245_INTEGER_1_192400(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4400   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4401                                               1U, 192400U, NULL, FALSE);
4402
4403   return offset;
4404 }
4405
4406
4407
4408 static int
4409 dissect_h245_INTEGER_0_524287(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4410   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4411                                               0U, 524287U, NULL, FALSE);
4412
4413   return offset;
4414 }
4415
4416
4417
4418 static int
4419 dissect_h245_INTEGER_1_3600(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4420   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4421                                               1U, 3600U, NULL, FALSE);
4422
4423   return offset;
4424 }
4425
4426
4427
4428 static int
4429 dissect_h245_INTEGER_M262144_262143(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4430   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4431                                               -262144, 262143U, NULL, FALSE);
4432
4433   return offset;
4434 }
4435
4436
4437 static const per_sequence_t TransparencyParameters_sequence[] = {
4438   { &hf_h245_presentationOrder, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_256 },
4439   { &hf_h245_offset_x       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_M262144_262143 },
4440   { &hf_h245_offset_y       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_M262144_262143 },
4441   { &hf_h245_scale_x        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_255 },
4442   { &hf_h245_scale_y        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_255 },
4443   { NULL, 0, 0, NULL }
4444 };
4445
4446 static int
4447 dissect_h245_TransparencyParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4448   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4449                                    ett_h245_TransparencyParameters, TransparencyParameters_sequence);
4450
4451   return offset;
4452 }
4453
4454
4455 static const per_sequence_t T_additionalPictureMemory_sequence[] = {
4456   { &hf_h245_sqcifAdditionalPictureMemory, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_256 },
4457   { &hf_h245_qcifAdditionalPictureMemory, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_256 },
4458   { &hf_h245_cifAdditionalPictureMemory, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_256 },
4459   { &hf_h245_cif4AdditionalPictureMemory, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_256 },
4460   { &hf_h245_cif16AdditionalPictureMemory, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_256 },
4461   { &hf_h245_bigCpfAdditionalPictureMemory, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_256 },
4462   { NULL, 0, 0, NULL }
4463 };
4464
4465 static int
4466 dissect_h245_T_additionalPictureMemory(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4467   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4468                                    ett_h245_T_additionalPictureMemory, T_additionalPictureMemory_sequence);
4469
4470   return offset;
4471 }
4472
4473
4474 static const value_string h245_T_videoBackChannelSend_vals[] = {
4475   {   0, "none" },
4476   {   1, "ackMessageOnly" },
4477   {   2, "nackMessageOnly" },
4478   {   3, "ackOrNackMessageOnly" },
4479   {   4, "ackAndNackMessage" },
4480   { 0, NULL }
4481 };
4482
4483 static const per_choice_t T_videoBackChannelSend_choice[] = {
4484   {   0, &hf_h245_none           , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
4485   {   1, &hf_h245_ackMessageOnly , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
4486   {   2, &hf_h245_nackMessageOnly, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
4487   {   3, &hf_h245_ackOrNackMessageOnly, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
4488   {   4, &hf_h245_ackAndNackMessage, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
4489   { 0, NULL, 0, NULL }
4490 };
4491
4492 static int
4493 dissect_h245_T_videoBackChannelSend(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4494   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
4495                                  ett_h245_T_videoBackChannelSend, T_videoBackChannelSend_choice,
4496                                  NULL);
4497
4498   return offset;
4499 }
4500
4501
4502
4503 static int
4504 dissect_h245_INTEGER_1_128(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4505   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4506                                               1U, 128U, NULL, FALSE);
4507
4508   return offset;
4509 }
4510
4511
4512
4513 static int
4514 dissect_h245_INTEGER_1_72(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4515   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4516                                               1U, 72U, NULL, FALSE);
4517
4518   return offset;
4519 }
4520
4521
4522 static const per_sequence_t T_subPictureRemovalParameters_sequence[] = {
4523   { &hf_h245_mpuHorizMBs    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_128 },
4524   { &hf_h245_mpuVertMBs     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_72 },
4525   { &hf_h245_mpuTotalNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_65536 },
4526   { NULL, 0, 0, NULL }
4527 };
4528
4529 static int
4530 dissect_h245_T_subPictureRemovalParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4531   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4532                                    ett_h245_T_subPictureRemovalParameters, T_subPictureRemovalParameters_sequence);
4533
4534   return offset;
4535 }
4536
4537
4538 static const per_sequence_t T_enhancedReferencePicSelect_sequence[] = {
4539   { &hf_h245_subPictureRemovalParameters, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_subPictureRemovalParameters },
4540   { NULL, 0, 0, NULL }
4541 };
4542
4543 static int
4544 dissect_h245_T_enhancedReferencePicSelect(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4545   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4546                                    ett_h245_T_enhancedReferencePicSelect, T_enhancedReferencePicSelect_sequence);
4547
4548   return offset;
4549 }
4550
4551
4552 static const per_sequence_t RefPictureSelection_sequence[] = {
4553   { &hf_h245_additionalPictureMemory, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_additionalPictureMemory },
4554   { &hf_h245_videoMux       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4555   { &hf_h245_videoBackChannelSend, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_videoBackChannelSend },
4556   { &hf_h245_enhancedReferencePicSelect, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_T_enhancedReferencePicSelect },
4557   { NULL, 0, 0, NULL }
4558 };
4559
4560 static int
4561 dissect_h245_RefPictureSelection(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4562   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4563                                    ett_h245_RefPictureSelection, RefPictureSelection_sequence);
4564
4565   return offset;
4566 }
4567
4568
4569
4570 static int
4571 dissect_h245_INTEGER_1000_1001(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4572   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4573                                               1000U, 1001U, NULL, FALSE);
4574
4575   return offset;
4576 }
4577
4578
4579
4580 static int
4581 dissect_h245_INTEGER_1_2048(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4582   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4583                                               1U, 2048U, NULL, FALSE);
4584
4585   return offset;
4586 }
4587
4588
4589 static const per_sequence_t CustomPictureClockFrequency_sequence[] = {
4590   { &hf_h245_clockConversionCode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1000_1001 },
4591   { &hf_h245_clockDivisor   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_127 },
4592   { &hf_h245_sqcifMPI       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_2048 },
4593   { &hf_h245_qcifMPI_1_2048 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_2048 },
4594   { &hf_h245_cifMPI2_1_2048 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_2048 },
4595   { &hf_h245_cif4MPI        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_2048 },
4596   { &hf_h245_cif16MPI       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_2048 },
4597   { NULL, 0, 0, NULL }
4598 };
4599
4600 static int
4601 dissect_h245_CustomPictureClockFrequency(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4602   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4603                                    ett_h245_CustomPictureClockFrequency, CustomPictureClockFrequency_sequence);
4604
4605   return offset;
4606 }
4607
4608
4609 static const per_sequence_t SET_SIZE_1_16_OF_CustomPictureClockFrequency_set_of[1] = {
4610   { &hf_h245_customPictureClockFrequency_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_CustomPictureClockFrequency },
4611 };
4612
4613 static int
4614 dissect_h245_SET_SIZE_1_16_OF_CustomPictureClockFrequency(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4615   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
4616                                              ett_h245_SET_SIZE_1_16_OF_CustomPictureClockFrequency, SET_SIZE_1_16_OF_CustomPictureClockFrequency_set_of,
4617                                              1, 16);
4618
4619   return offset;
4620 }
4621
4622
4623
4624 static int
4625 dissect_h245_INTEGER_1_31(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4626   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4627                                               1U, 31U, NULL, FALSE);
4628
4629   return offset;
4630 }
4631
4632
4633 static const per_sequence_t T_customPCF_item_sequence[] = {
4634   { &hf_h245_clockConversionCode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1000_1001 },
4635   { &hf_h245_clockDivisor   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_127 },
4636   { &hf_h245_customMPI      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_2048 },
4637   { NULL, 0, 0, NULL }
4638 };
4639
4640 static int
4641 dissect_h245_T_customPCF_item(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4642   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4643                                    ett_h245_T_customPCF_item, T_customPCF_item_sequence);
4644
4645   return offset;
4646 }
4647
4648
4649 static const per_sequence_t T_customPCF_set_of[1] = {
4650   { &hf_h245_customPCF_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_T_customPCF_item },
4651 };
4652
4653 static int
4654 dissect_h245_T_customPCF(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4655   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
4656                                              ett_h245_T_customPCF, T_customPCF_set_of,
4657                                              1, 16);
4658
4659   return offset;
4660 }
4661
4662
4663 static const per_sequence_t T_mPI_sequence[] = {
4664   { &hf_h245_standardMPI    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_31 },
4665   { &hf_h245_customPCF      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_customPCF },
4666   { NULL, 0, 0, NULL }
4667 };
4668
4669 static int
4670 dissect_h245_T_mPI(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4671   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4672                                    ett_h245_T_mPI, T_mPI_sequence);
4673
4674   return offset;
4675 }
4676
4677
4678
4679 static int
4680 dissect_h245_INTEGER_1_14(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4681   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4682                                               1U, 14U, NULL, FALSE);
4683
4684   return offset;
4685 }
4686
4687
4688 static const per_sequence_t T_pixelAspectCode_set_of[1] = {
4689   { &hf_h245_pixelAspectCode_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_14 },
4690 };
4691
4692 static int
4693 dissect_h245_T_pixelAspectCode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4694   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
4695                                              ett_h245_T_pixelAspectCode, T_pixelAspectCode_set_of,
4696                                              1, 14);
4697
4698   return offset;
4699 }
4700
4701
4702 static const per_sequence_t T_extendedPAR_item_sequence[] = {
4703   { &hf_h245_width          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_255 },
4704   { &hf_h245_height         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_255 },
4705   { NULL, 0, 0, NULL }
4706 };
4707
4708 static int
4709 dissect_h245_T_extendedPAR_item(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4710   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4711                                    ett_h245_T_extendedPAR_item, T_extendedPAR_item_sequence);
4712
4713   return offset;
4714 }
4715
4716
4717 static const per_sequence_t T_extendedPAR_set_of[1] = {
4718   { &hf_h245_extendedPAR_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_T_extendedPAR_item },
4719 };
4720
4721 static int
4722 dissect_h245_T_extendedPAR(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4723   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
4724                                              ett_h245_T_extendedPAR, T_extendedPAR_set_of,
4725                                              1, 256);
4726
4727   return offset;
4728 }
4729
4730
4731 static const value_string h245_T_pixelAspectInformation_vals[] = {
4732   {   0, "anyPixelAspectRatio" },
4733   {   1, "pixelAspectCode" },
4734   {   2, "extendedPAR" },
4735   { 0, NULL }
4736 };
4737
4738 static const per_choice_t T_pixelAspectInformation_choice[] = {
4739   {   0, &hf_h245_anyPixelAspectRatio, ASN1_EXTENSION_ROOT    , dissect_h245_BOOLEAN },
4740   {   1, &hf_h245_pixelAspectCode, ASN1_EXTENSION_ROOT    , dissect_h245_T_pixelAspectCode },
4741   {   2, &hf_h245_extendedPAR    , ASN1_EXTENSION_ROOT    , dissect_h245_T_extendedPAR },
4742   { 0, NULL, 0, NULL }
4743 };
4744
4745 static int
4746 dissect_h245_T_pixelAspectInformation(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4747   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
4748                                  ett_h245_T_pixelAspectInformation, T_pixelAspectInformation_choice,
4749                                  NULL);
4750
4751   return offset;
4752 }
4753
4754
4755 static const per_sequence_t CustomPictureFormat_sequence[] = {
4756   { &hf_h245_maxCustomPictureWidth, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_2048 },
4757   { &hf_h245_maxCustomPictureHeight, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_2048 },
4758   { &hf_h245_minCustomPictureWidth, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_2048 },
4759   { &hf_h245_minCustomPictureHeight, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_2048 },
4760   { &hf_h245_mPI            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_mPI },
4761   { &hf_h245_pixelAspectInformation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_pixelAspectInformation },
4762   { NULL, 0, 0, NULL }
4763 };
4764
4765 static int
4766 dissect_h245_CustomPictureFormat(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4767   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4768                                    ett_h245_CustomPictureFormat, CustomPictureFormat_sequence);
4769
4770   return offset;
4771 }
4772
4773
4774 static const per_sequence_t SET_SIZE_1_16_OF_CustomPictureFormat_set_of[1] = {
4775   { &hf_h245_customPictureFormat_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_CustomPictureFormat },
4776 };
4777
4778 static int
4779 dissect_h245_SET_SIZE_1_16_OF_CustomPictureFormat(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4780   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
4781                                              ett_h245_SET_SIZE_1_16_OF_CustomPictureFormat, SET_SIZE_1_16_OF_CustomPictureFormat_set_of,
4782                                              1, 16);
4783
4784   return offset;
4785 }
4786
4787
4788 static const per_sequence_t H263Version3Options_sequence[] = {
4789   { &hf_h245_dataPartitionedSlices, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4790   { &hf_h245_fixedPointIDCT0, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4791   { &hf_h245_interlacedFields, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4792   { &hf_h245_currentPictureHeaderRepetition, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4793   { &hf_h245_previousPictureHeaderRepetition, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4794   { &hf_h245_nextPictureHeaderRepetition, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4795   { &hf_h245_pictureNumberBoolean, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4796   { &hf_h245_spareReferencePictures, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4797   { NULL, 0, 0, NULL }
4798 };
4799
4800 static int
4801 dissect_h245_H263Version3Options(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4802   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4803                                    ett_h245_H263Version3Options, H263Version3Options_sequence);
4804
4805   return offset;
4806 }
4807
4808
4809 static const per_sequence_t H263ModeComboFlags_sequence[] = {
4810   { &hf_h245_unrestrictedVector, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4811   { &hf_h245_arithmeticCoding, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4812   { &hf_h245_advancedPrediction, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4813   { &hf_h245_pbFrames       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4814   { &hf_h245_advancedIntraCodingMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4815   { &hf_h245_deblockingFilterMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4816   { &hf_h245_unlimitedMotionVectors, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4817   { &hf_h245_slicesInOrder_NonRect, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4818   { &hf_h245_slicesInOrder_Rect, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4819   { &hf_h245_slicesNoOrder_NonRect, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4820   { &hf_h245_slicesNoOrder_Rect, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4821   { &hf_h245_improvedPBFramesMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4822   { &hf_h245_referencePicSelect, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4823   { &hf_h245_dynamicPictureResizingByFour, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4824   { &hf_h245_dynamicPictureResizingSixteenthPel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4825   { &hf_h245_dynamicWarpingHalfPel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4826   { &hf_h245_dynamicWarpingSixteenthPel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4827   { &hf_h245_reducedResolutionUpdate, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4828   { &hf_h245_independentSegmentDecoding, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4829   { &hf_h245_alternateInterVLCMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4830   { &hf_h245_modifiedQuantizationMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4831   { &hf_h245_enhancedReferencePicSelectBool, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4832   { &hf_h245_h263Version3Options, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_H263Version3Options },
4833   { NULL, 0, 0, NULL }
4834 };
4835
4836 static int
4837 dissect_h245_H263ModeComboFlags(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4838   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4839                                    ett_h245_H263ModeComboFlags, H263ModeComboFlags_sequence);
4840
4841   return offset;
4842 }
4843
4844
4845 static const per_sequence_t SET_SIZE_1_16_OF_H263ModeComboFlags_set_of[1] = {
4846   { &hf_h245_h263VideoCoupledModes_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_H263ModeComboFlags },
4847 };
4848
4849 static int
4850 dissect_h245_SET_SIZE_1_16_OF_H263ModeComboFlags(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4851   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
4852                                              ett_h245_SET_SIZE_1_16_OF_H263ModeComboFlags, SET_SIZE_1_16_OF_H263ModeComboFlags_set_of,
4853                                              1, 16);
4854
4855   return offset;
4856 }
4857
4858
4859 static const per_sequence_t H263VideoModeCombos_sequence[] = {
4860   { &hf_h245_h263VideoUncoupledModes, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_H263ModeComboFlags },
4861   { &hf_h245_h263VideoCoupledModes, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_16_OF_H263ModeComboFlags },
4862   { NULL, 0, 0, NULL }
4863 };
4864
4865 static int
4866 dissect_h245_H263VideoModeCombos(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4867   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4868                                    ett_h245_H263VideoModeCombos, H263VideoModeCombos_sequence);
4869
4870   return offset;
4871 }
4872
4873
4874 static const per_sequence_t SET_SIZE_1_16_OF_H263VideoModeCombos_set_of[1] = {
4875   { &hf_h245_modeCombos_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_H263VideoModeCombos },
4876 };
4877
4878 static int
4879 dissect_h245_SET_SIZE_1_16_OF_H263VideoModeCombos(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4880   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
4881                                              ett_h245_SET_SIZE_1_16_OF_H263VideoModeCombos, SET_SIZE_1_16_OF_H263VideoModeCombos_set_of,
4882                                              1, 16);
4883
4884   return offset;
4885 }
4886
4887
4888 static const per_sequence_t H263Options_sequence[] = {
4889   { &hf_h245_advancedIntraCodingMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4890   { &hf_h245_deblockingFilterMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4891   { &hf_h245_improvedPBFramesMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4892   { &hf_h245_unlimitedMotionVectors, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4893   { &hf_h245_fullPictureFreeze, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4894   { &hf_h245_partialPictureFreezeAndRelease, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4895   { &hf_h245_resizingPartPicFreezeAndRelease, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4896   { &hf_h245_fullPictureSnapshot, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4897   { &hf_h245_partialPictureSnapshot, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4898   { &hf_h245_videoSegmentTagging, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4899   { &hf_h245_progressiveRefinement, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4900   { &hf_h245_dynamicPictureResizingByFour, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4901   { &hf_h245_dynamicPictureResizingSixteenthPel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4902   { &hf_h245_dynamicWarpingHalfPel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4903   { &hf_h245_dynamicWarpingSixteenthPel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4904   { &hf_h245_independentSegmentDecoding, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4905   { &hf_h245_slicesInOrder_NonRect, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4906   { &hf_h245_slicesInOrder_Rect, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4907   { &hf_h245_slicesNoOrder_NonRect, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4908   { &hf_h245_slicesNoOrder_Rect, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4909   { &hf_h245_alternateInterVLCMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4910   { &hf_h245_modifiedQuantizationMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4911   { &hf_h245_reducedResolutionUpdate, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4912   { &hf_h245_transparencyParameters, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_TransparencyParameters },
4913   { &hf_h245_separateVideoBackChannel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4914   { &hf_h245_refPictureSelection, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_RefPictureSelection },
4915   { &hf_h245_customPictureClockFrequency, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SET_SIZE_1_16_OF_CustomPictureClockFrequency },
4916   { &hf_h245_customPictureFormat, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SET_SIZE_1_16_OF_CustomPictureFormat },
4917   { &hf_h245_modeCombos     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SET_SIZE_1_16_OF_H263VideoModeCombos },
4918   { &hf_h245_videoBadMBsCap , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4919   { &hf_h245_h263Version3Options, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_H263Version3Options },
4920   { NULL, 0, 0, NULL }
4921 };
4922
4923 static int
4924 dissect_h245_H263Options(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4925   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4926                                    ett_h245_H263Options, H263Options_sequence);
4927
4928   return offset;
4929 }
4930
4931
4932 static const per_sequence_t EnhancementOptions_sequence[] = {
4933   { &hf_h245_sqcifMPI_1_32  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_32 },
4934   { &hf_h245_qcifMPI        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_32 },
4935   { &hf_h245_cifMPI         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_32 },
4936   { &hf_h245_cif4MPI_1_32   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_32 },
4937   { &hf_h245_cif16MPI_1_32  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_32 },
4938   { &hf_h245_maxBitRate     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_192400 },
4939   { &hf_h245_unrestrictedVector, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4940   { &hf_h245_arithmeticCoding, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4941   { &hf_h245_temporalSpatialTradeOffCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4942   { &hf_h245_slowSqcifMPI   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_3600 },
4943   { &hf_h245_slowQcifMPI    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_3600 },
4944   { &hf_h245_slowCifMPI     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_3600 },
4945   { &hf_h245_slowCif4MPI    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_3600 },
4946   { &hf_h245_slowCif16MPI   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_3600 },
4947   { &hf_h245_errorCompensation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
4948   { &hf_h245_h263Options    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_H263Options },
4949   { NULL, 0, 0, NULL }
4950 };
4951
4952 static int
4953 dissect_h245_EnhancementOptions(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4954   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4955                                    ett_h245_EnhancementOptions, EnhancementOptions_sequence);
4956
4957   return offset;
4958 }
4959
4960
4961 static const per_sequence_t SET_SIZE_1_14_OF_EnhancementOptions_set_of[1] = {
4962   { &hf_h245_snrEnhancement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_EnhancementOptions },
4963 };
4964
4965 static int
4966 dissect_h245_SET_SIZE_1_14_OF_EnhancementOptions(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4967   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
4968                                              ett_h245_SET_SIZE_1_14_OF_EnhancementOptions, SET_SIZE_1_14_OF_EnhancementOptions_set_of,
4969                                              1, 14);
4970
4971   return offset;
4972 }
4973
4974
4975
4976 static int
4977 dissect_h245_INTEGER_1_64(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4978   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4979                                               1U, 64U, NULL, FALSE);
4980
4981   return offset;
4982 }
4983
4984
4985 static const per_sequence_t BEnhancementParameters_sequence[] = {
4986   { &hf_h245_enhancementOptions, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_EnhancementOptions },
4987   { &hf_h245_numberOfBPictures, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_64 },
4988   { NULL, 0, 0, NULL }
4989 };
4990
4991 static int
4992 dissect_h245_BEnhancementParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
4993   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4994                                    ett_h245_BEnhancementParameters, BEnhancementParameters_sequence);
4995
4996   return offset;
4997 }
4998
4999
5000 static const per_sequence_t SET_SIZE_1_14_OF_BEnhancementParameters_set_of[1] = {
5001   { &hf_h245_bPictureEnhancement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BEnhancementParameters },
5002 };
5003
5004 static int
5005 dissect_h245_SET_SIZE_1_14_OF_BEnhancementParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5006   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
5007                                              ett_h245_SET_SIZE_1_14_OF_BEnhancementParameters, SET_SIZE_1_14_OF_BEnhancementParameters_set_of,
5008                                              1, 14);
5009
5010   return offset;
5011 }
5012
5013
5014 static const per_sequence_t EnhancementLayerInfo_sequence[] = {
5015   { &hf_h245_baseBitRateConstrained, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5016   { &hf_h245_snrEnhancement , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SET_SIZE_1_14_OF_EnhancementOptions },
5017   { &hf_h245_spatialEnhancement, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SET_SIZE_1_14_OF_EnhancementOptions },
5018   { &hf_h245_bPictureEnhancement, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SET_SIZE_1_14_OF_BEnhancementParameters },
5019   { NULL, 0, 0, NULL }
5020 };
5021
5022 static int
5023 dissect_h245_EnhancementLayerInfo(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5024   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5025                                    ett_h245_EnhancementLayerInfo, EnhancementLayerInfo_sequence);
5026
5027   return offset;
5028 }
5029
5030
5031 static const per_sequence_t H263VideoCapability_sequence[] = {
5032   { &hf_h245_sqcifMPI_1_32  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_32 },
5033   { &hf_h245_qcifMPI        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_32 },
5034   { &hf_h245_cifMPI         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_32 },
5035   { &hf_h245_cif4MPI_1_32   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_32 },
5036   { &hf_h245_cif16MPI_1_32  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_32 },
5037   { &hf_h245_maxBitRate     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_192400 },
5038   { &hf_h245_unrestrictedVector, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5039   { &hf_h245_arithmeticCoding, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5040   { &hf_h245_advancedPrediction, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5041   { &hf_h245_pbFrames       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5042   { &hf_h245_temporalSpatialTradeOffCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5043   { &hf_h245_hrd_B          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_524287 },
5044   { &hf_h245_bppMaxKb       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_65535 },
5045   { &hf_h245_slowSqcifMPI   , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_INTEGER_1_3600 },
5046   { &hf_h245_slowQcifMPI    , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_INTEGER_1_3600 },
5047   { &hf_h245_slowCifMPI     , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_INTEGER_1_3600 },
5048   { &hf_h245_slowCif4MPI    , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_INTEGER_1_3600 },
5049   { &hf_h245_slowCif16MPI   , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_INTEGER_1_3600 },
5050   { &hf_h245_errorCompensation, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5051   { &hf_h245_enhancementLayerInfo, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_EnhancementLayerInfo },
5052   { &hf_h245_h263Options    , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_H263Options },
5053   { NULL, 0, 0, NULL }
5054 };
5055
5056 static int
5057 dissect_h245_H263VideoCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5058   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5059                                    ett_h245_H263VideoCapability, H263VideoCapability_sequence);
5060
5061 #line 265 "h245.cnf"
5062   h245_lc_dissector = h263_handle;
5063
5064   return offset;
5065 }
5066
5067
5068 static const per_sequence_t IS11172VideoCapability_sequence[] = {
5069   { &hf_h245_constrainedBitstream, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5070   { &hf_h245_videoBitRate   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_1073741823 },
5071   { &hf_h245_vbvBufferSize  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_262143 },
5072   { &hf_h245_samplesPerLine , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_16383 },
5073   { &hf_h245_linesPerFrame  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_16383 },
5074   { &hf_h245_pictureRate    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_15 },
5075   { &hf_h245_luminanceSampleRate, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_4294967295 },
5076   { &hf_h245_videoBadMBsCap , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5077   { NULL, 0, 0, NULL }
5078 };
5079
5080 static int
5081 dissect_h245_IS11172VideoCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5082   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5083                                    ett_h245_IS11172VideoCapability, IS11172VideoCapability_sequence);
5084
5085   return offset;
5086 }
5087
5088
5089 static const per_sequence_t SEQUENCE_OF_VideoCapability_sequence_of[1] = {
5090   { &hf_h245_videoCapability_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_VideoCapability },
5091 };
5092
5093 static int
5094 dissect_h245_SEQUENCE_OF_VideoCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5095   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
5096                                       ett_h245_SEQUENCE_OF_VideoCapability, SEQUENCE_OF_VideoCapability_sequence_of);
5097
5098   return offset;
5099 }
5100
5101
5102 static const per_sequence_t SEQUENCE_OF_GenericCapability_sequence_of[1] = {
5103   { &hf_h245_videoCapabilityExtension_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_GenericCapability },
5104 };
5105
5106 static int
5107 dissect_h245_SEQUENCE_OF_GenericCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5108   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
5109                                       ett_h245_SEQUENCE_OF_GenericCapability, SEQUENCE_OF_GenericCapability_sequence_of);
5110
5111   return offset;
5112 }
5113
5114
5115 static const per_sequence_t ExtendedVideoCapability_sequence[] = {
5116   { &hf_h245_videoCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SEQUENCE_OF_VideoCapability },
5117   { &hf_h245_videoCapabilityExtension, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_GenericCapability },
5118   { NULL, 0, 0, NULL }
5119 };
5120
5121 static int
5122 dissect_h245_ExtendedVideoCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5123   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5124                                    ett_h245_ExtendedVideoCapability, ExtendedVideoCapability_sequence);
5125
5126   return offset;
5127 }
5128
5129
5130 static const value_string h245_VideoCapability_vals[] = {
5131   {   0, "nonStandard" },
5132   {   1, "h261VideoCapability" },
5133   {   2, "h262VideoCapability" },
5134   {   3, "h263VideoCapability" },
5135   {   4, "is11172VideoCapability" },
5136   {   5, "genericVideoCapability" },
5137   {   6, "extendedVideoCapability" },
5138   { 0, NULL }
5139 };
5140
5141 static const per_choice_t VideoCapability_choice[] = {
5142   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
5143   {   1, &hf_h245_h261VideoCapability, ASN1_EXTENSION_ROOT    , dissect_h245_H261VideoCapability },
5144   {   2, &hf_h245_h262VideoCapability, ASN1_EXTENSION_ROOT    , dissect_h245_H262VideoCapability },
5145   {   3, &hf_h245_h263VideoCapability, ASN1_EXTENSION_ROOT    , dissect_h245_H263VideoCapability },
5146   {   4, &hf_h245_is11172VideoCapability, ASN1_EXTENSION_ROOT    , dissect_h245_IS11172VideoCapability },
5147   {   5, &hf_h245_genericVideoCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericCapability },
5148   {   6, &hf_h245_extendedVideoCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_ExtendedVideoCapability },
5149   { 0, NULL, 0, NULL }
5150 };
5151
5152 static int
5153 dissect_h245_VideoCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5154 #line 389 "h245.cnf"
5155   guint32 value;
5156
5157   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5158                                  ett_h245_VideoCapability, VideoCapability_choice,
5159                                  &value);
5160
5161         codec_type = val_to_str(value, h245_VideoCapability_vals, "<unknown>");
5162                 if (h245_pi != NULL) g_snprintf(h245_pi->frame_label, 50, "%s %s", h245_pi->frame_label, codec_type);
5163
5164
5165
5166   return offset;
5167 }
5168
5169
5170 static const per_sequence_t T_g7231_sequence[] = {
5171   { &hf_h245_maxAl_sduAudioFrames, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_256 },
5172   { &hf_h245_silenceSuppression, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5173   { NULL, 0, 0, NULL }
5174 };
5175
5176 static int
5177 dissect_h245_T_g7231(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5178   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5179                                    ett_h245_T_g7231, T_g7231_sequence);
5180
5181   return offset;
5182 }
5183
5184
5185
5186 static int
5187 dissect_h245_INTEGER_1_448(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5188   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5189                                               1U, 448U, NULL, FALSE);
5190
5191   return offset;
5192 }
5193
5194
5195 static const per_sequence_t IS11172AudioCapability_sequence[] = {
5196   { &hf_h245_audioLayer1    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5197   { &hf_h245_audioLayer2    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5198   { &hf_h245_audioLayer3    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5199   { &hf_h245_audioSampling32k, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5200   { &hf_h245_audioSampling44k1, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5201   { &hf_h245_audioSampling48k, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5202   { &hf_h245_singleChannel  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5203   { &hf_h245_twoChannels    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5204   { &hf_h245_bitRate_1_448  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_448 },
5205   { NULL, 0, 0, NULL }
5206 };
5207
5208 static int
5209 dissect_h245_IS11172AudioCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5210   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5211                                    ett_h245_IS11172AudioCapability, IS11172AudioCapability_sequence);
5212
5213   return offset;
5214 }
5215
5216
5217
5218 static int
5219 dissect_h245_INTEGER_1_1130(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5220   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5221                                               1U, 1130U, NULL, FALSE);
5222
5223   return offset;
5224 }
5225
5226
5227 static const per_sequence_t IS13818AudioCapability_sequence[] = {
5228   { &hf_h245_audioLayer1    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5229   { &hf_h245_audioLayer2    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5230   { &hf_h245_audioLayer3    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5231   { &hf_h245_audioSampling16k, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5232   { &hf_h245_audioSampling22k05, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5233   { &hf_h245_audioSampling24k, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5234   { &hf_h245_audioSampling32k, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5235   { &hf_h245_audioSampling44k1, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5236   { &hf_h245_audioSampling48k, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5237   { &hf_h245_singleChannel  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5238   { &hf_h245_twoChannels    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5239   { &hf_h245_threeChannels2_1, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5240   { &hf_h245_threeChannels3_0, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5241   { &hf_h245_fourChannels2_0_2_0, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5242   { &hf_h245_fourChannels2_2, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5243   { &hf_h245_fourChannels3_1, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5244   { &hf_h245_fiveChannels3_0_2_0, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5245   { &hf_h245_fiveChannels3_2, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5246   { &hf_h245_lowFrequencyEnhancement, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5247   { &hf_h245_multilingual   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5248   { &hf_h245_bitRate2_1_1130, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_1130 },
5249   { NULL, 0, 0, NULL }
5250 };
5251
5252 static int
5253 dissect_h245_IS13818AudioCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5254   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5255                                    ett_h245_IS13818AudioCapability, IS13818AudioCapability_sequence);
5256
5257   return offset;
5258 }
5259
5260
5261
5262 static int
5263 dissect_h245_INTEGER_27_78(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5264   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5265                                               27U, 78U, NULL, FALSE);
5266
5267   return offset;
5268 }
5269
5270
5271
5272 static int
5273 dissect_h245_INTEGER_23_66(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5274   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5275                                               23U, 66U, NULL, FALSE);
5276
5277   return offset;
5278 }
5279
5280
5281
5282 static int
5283 dissect_h245_INTEGER_6_17(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5284   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5285                                               6U, 17U, NULL, FALSE);
5286
5287   return offset;
5288 }
5289
5290
5291 static const per_sequence_t G723AnnexCAudioMode_sequence[] = {
5292   { &hf_h245_highRateMode0  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_27_78 },
5293   { &hf_h245_highRateMode1  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_27_78 },
5294   { &hf_h245_lowRateMode0   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_23_66 },
5295   { &hf_h245_lowRateMode1   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_23_66 },
5296   { &hf_h245_sidMode0       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_6_17 },
5297   { &hf_h245_sidMode1       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_6_17 },
5298   { NULL, 0, 0, NULL }
5299 };
5300
5301 static int
5302 dissect_h245_G723AnnexCAudioMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5303   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5304                                    ett_h245_G723AnnexCAudioMode, G723AnnexCAudioMode_sequence);
5305
5306   return offset;
5307 }
5308
5309
5310 static const per_sequence_t G7231AnnexCCapability_sequence[] = {
5311   { &hf_h245_maxAl_sduAudioFrames, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_256 },
5312   { &hf_h245_silenceSuppression, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5313   { &hf_h245_g723AnnexCAudioMode, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_G723AnnexCAudioMode },
5314   { NULL, 0, 0, NULL }
5315 };
5316
5317 static int
5318 dissect_h245_G7231AnnexCCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5319   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5320                                    ett_h245_G7231AnnexCCapability, G7231AnnexCCapability_sequence);
5321
5322   return offset;
5323 }
5324
5325
5326 static const per_sequence_t GSMAudioCapability_sequence[] = {
5327   { &hf_h245_audioUnitSize  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_256 },
5328   { &hf_h245_comfortNoise   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5329   { &hf_h245_scrambled      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5330   { NULL, 0, 0, NULL }
5331 };
5332
5333 static int
5334 dissect_h245_GSMAudioCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5335   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5336                                    ett_h245_GSMAudioCapability, GSMAudioCapability_sequence);
5337
5338   return offset;
5339 }
5340
5341
5342 static const per_sequence_t G729Extensions_sequence[] = {
5343   { &hf_h245_audioUnit      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_256 },
5344   { &hf_h245_annexA         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5345   { &hf_h245_annexB         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5346   { &hf_h245_annexD         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5347   { &hf_h245_annexE         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5348   { &hf_h245_annexF         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5349   { &hf_h245_annexG         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5350   { &hf_h245_annexH         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5351   { NULL, 0, 0, NULL }
5352 };
5353
5354 static int
5355 dissect_h245_G729Extensions(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5356   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5357                                    ett_h245_G729Extensions, G729Extensions_sequence);
5358
5359   return offset;
5360 }
5361
5362
5363 static const per_sequence_t VBDCapability_sequence[] = {
5364   { &hf_h245_vbd_cap_type   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_AudioCapability },
5365   { NULL, 0, 0, NULL }
5366 };
5367
5368 static int
5369 dissect_h245_VBDCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5370   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5371                                    ett_h245_VBDCapability, VBDCapability_sequence);
5372
5373   return offset;
5374 }
5375
5376
5377
5378 static int
5379 dissect_h245_GeneralString(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5380   offset = dissect_per_GeneralString(tvb, offset, actx, tree, hf_index);
5381
5382   return offset;
5383 }
5384
5385
5386 static const per_sequence_t NoPTAudioTelephonyEventCapability_sequence[] = {
5387   { &hf_h245_audioTelephoneEvent, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_GeneralString },
5388   { NULL, 0, 0, NULL }
5389 };
5390
5391 static int
5392 dissect_h245_NoPTAudioTelephonyEventCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5393   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5394                                    ett_h245_NoPTAudioTelephonyEventCapability, NoPTAudioTelephonyEventCapability_sequence);
5395
5396   return offset;
5397 }
5398
5399
5400 static const per_sequence_t NoPTAudioToneCapability_sequence[] = {
5401   { NULL, 0, 0, NULL }
5402 };
5403
5404 static int
5405 dissect_h245_NoPTAudioToneCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5406   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5407                                    ett_h245_NoPTAudioToneCapability, NoPTAudioToneCapability_sequence);
5408
5409   return offset;
5410 }
5411
5412
5413 static const value_string h245_AudioCapability_vals[] = {
5414   {   0, "nonStandard" },
5415   {   1, "g711Alaw64k" },
5416   {   2, "g711Alaw56k" },
5417   {   3, "g711Ulaw64k" },
5418   {   4, "g711Ulaw56k" },
5419   {   5, "g722-64k" },
5420   {   6, "g722-56k" },
5421   {   7, "g722-48k" },
5422   {   8, "g7231" },
5423   {   9, "g728" },
5424   {  10, "g729" },
5425   {  11, "g729AnnexA" },
5426   {  12, "is11172AudioCapability" },
5427   {  13, "is13818AudioCapability" },
5428   {  14, "g729wAnnexB" },
5429   {  15, "g729AnnexAwAnnexB" },
5430   {  16, "g7231AnnexCCapability" },
5431   {  17, "gsmFullRate" },
5432   {  18, "gsmHalfRate" },
5433   {  19, "gsmEnhancedFullRate" },
5434   {  20, "genericAudioCapability" },
5435   {  21, "g729Extensions" },
5436   {  22, "vbd" },
5437   {  23, "audioTelephonyEvent" },
5438   {  24, "audioTone" },
5439   { 0, NULL }
5440 };
5441
5442 static const per_choice_t AudioCapability_choice[] = {
5443   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
5444   {   1, &hf_h245_g711Alaw64k    , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_1_256 },
5445   {   2, &hf_h245_g711Alaw56k    , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_1_256 },
5446   {   3, &hf_h245_g711Ulaw64k    , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_1_256 },
5447   {   4, &hf_h245_g711Ulaw56k    , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_1_256 },
5448   {   5, &hf_h245_g722_64k       , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_1_256 },
5449   {   6, &hf_h245_g722_56k       , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_1_256 },
5450   {   7, &hf_h245_g722_48k       , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_1_256 },
5451   {   8, &hf_h245_g7231          , ASN1_EXTENSION_ROOT    , dissect_h245_T_g7231 },
5452   {   9, &hf_h245_g728           , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_1_256 },
5453   {  10, &hf_h245_g729           , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_1_256 },
5454   {  11, &hf_h245_g729AnnexA     , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_1_256 },
5455   {  12, &hf_h245_is11172AudioCapability, ASN1_EXTENSION_ROOT    , dissect_h245_IS11172AudioCapability },
5456   {  13, &hf_h245_is13818AudioCapability, ASN1_EXTENSION_ROOT    , dissect_h245_IS13818AudioCapability },
5457   {  14, &hf_h245_g729wAnnexB    , ASN1_NOT_EXTENSION_ROOT, dissect_h245_INTEGER_1_256 },
5458   {  15, &hf_h245_g729AnnexAwAnnexB, ASN1_NOT_EXTENSION_ROOT, dissect_h245_INTEGER_1_256 },
5459   {  16, &hf_h245_g7231AnnexCCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_G7231AnnexCCapability },
5460   {  17, &hf_h245_gsmFullRate    , ASN1_NOT_EXTENSION_ROOT, dissect_h245_GSMAudioCapability },
5461   {  18, &hf_h245_gsmHalfRate    , ASN1_NOT_EXTENSION_ROOT, dissect_h245_GSMAudioCapability },
5462   {  19, &hf_h245_gsmEnhancedFullRate, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GSMAudioCapability },
5463   {  20, &hf_h245_genericAudioCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericCapability },
5464   {  21, &hf_h245_g729Extensions , ASN1_NOT_EXTENSION_ROOT, dissect_h245_G729Extensions },
5465   {  22, &hf_h245_vbd            , ASN1_NOT_EXTENSION_ROOT, dissect_h245_VBDCapability },
5466   {  23, &hf_h245_audioTelephonyEvent, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NoPTAudioTelephonyEventCapability },
5467   {  24, &hf_h245_audioTone      , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NoPTAudioToneCapability },
5468   { 0, NULL, 0, NULL }
5469 };
5470
5471 static int
5472 dissect_h245_AudioCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5473 #line 380 "h245.cnf"
5474   guint32 value;
5475
5476   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5477                                  ett_h245_AudioCapability, AudioCapability_choice,
5478                                  &value);
5479
5480         codec_type = val_to_str(value, h245_AudioCapability_short_vals, "<unknown>");
5481                 if (h245_pi != NULL) g_snprintf(h245_pi->frame_label, 50, "%s %s", h245_pi->frame_label, val_to_str(value, h245_AudioCapability_short_vals, "ukn"));
5482
5483
5484
5485   return offset;
5486 }
5487
5488
5489 static const per_sequence_t T_h233EncryptionReceiveCapability_sequence[] = {
5490   { &hf_h245_h233IVResponseTime, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_255 },
5491   { NULL, 0, 0, NULL }
5492 };
5493
5494 static int
5495 dissect_h245_T_h233EncryptionReceiveCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5496   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5497                                    ett_h245_T_h233EncryptionReceiveCapability, T_h233EncryptionReceiveCapability_sequence);
5498
5499   return offset;
5500 }
5501
5502
5503 static const per_sequence_t SEQUENCE_OF_NonStandardParameter_sequence_of[1] = {
5504   { &hf_h245_nonStandardParams_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_NonStandardParameter },
5505 };
5506
5507 static int
5508 dissect_h245_SEQUENCE_OF_NonStandardParameter(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5509   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
5510                                       ett_h245_SEQUENCE_OF_NonStandardParameter, SEQUENCE_OF_NonStandardParameter_sequence_of);
5511
5512   return offset;
5513 }
5514
5515
5516 static const per_sequence_t ConferenceCapability_sequence[] = {
5517   { &hf_h245_nonStandardParams, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_NonStandardParameter },
5518   { &hf_h245_chairControlCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5519   { &hf_h245_videoIndicateMixingCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5520   { &hf_h245_multipointVisualizationCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_BOOLEAN },
5521   { NULL, 0, 0, NULL }
5522 };
5523
5524 static int
5525 dissect_h245_ConferenceCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5526   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5527                                    ett_h245_ConferenceCapability, ConferenceCapability_sequence);
5528
5529   return offset;
5530 }
5531
5532
5533 static const value_string h245_MediaEncryptionAlgorithm_vals[] = {
5534   {   0, "nonStandard" },
5535   {   1, "algorithm" },
5536   { 0, NULL }
5537 };
5538
5539 static const per_choice_t MediaEncryptionAlgorithm_choice[] = {
5540   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
5541   {   1, &hf_h245_algorithm      , ASN1_EXTENSION_ROOT    , dissect_h245_OBJECT_IDENTIFIER },
5542   { 0, NULL, 0, NULL }
5543 };
5544
5545 static int
5546 dissect_h245_MediaEncryptionAlgorithm(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5547   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5548                                  ett_h245_MediaEncryptionAlgorithm, MediaEncryptionAlgorithm_choice,
5549                                  NULL);
5550
5551   return offset;
5552 }
5553
5554
5555 static const per_sequence_t EncryptionCapability_sequence_of[1] = {
5556   { &hf_h245_EncryptionCapability_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_MediaEncryptionAlgorithm },
5557 };
5558
5559 static int
5560 dissect_h245_EncryptionCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5561   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5562                                                   ett_h245_EncryptionCapability, EncryptionCapability_sequence_of,
5563                                                   1, 256);
5564
5565   return offset;
5566 }
5567
5568
5569 static const per_sequence_t AuthenticationCapability_sequence[] = {
5570   { &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_NonStandardParameter },
5571   { &hf_h245_antiSpamAlgorithm, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_OBJECT_IDENTIFIER },
5572   { NULL, 0, 0, NULL }
5573 };
5574
5575 static int
5576 dissect_h245_AuthenticationCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5577   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5578                                    ett_h245_AuthenticationCapability, AuthenticationCapability_sequence);
5579
5580   return offset;
5581 }
5582
5583
5584 static const per_sequence_t IntegrityCapability_sequence[] = {
5585   { &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_NonStandardParameter },
5586   { NULL, 0, 0, NULL }
5587 };
5588
5589 static int
5590 dissect_h245_IntegrityCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5591   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5592                                    ett_h245_IntegrityCapability, IntegrityCapability_sequence);
5593
5594   return offset;
5595 }
5596
5597
5598 static const per_sequence_t EncryptionAuthenticationAndIntegrity_sequence[] = {
5599   { &hf_h245_encryptionCapability, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_EncryptionCapability },
5600   { &hf_h245_authenticationCapability, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_AuthenticationCapability },
5601   { &hf_h245_integrityCapability, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_IntegrityCapability },
5602   { &hf_h245_genericH235SecurityCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_GenericCapability },
5603   { NULL, 0, 0, NULL }
5604 };
5605
5606 static int
5607 dissect_h245_EncryptionAuthenticationAndIntegrity(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5608   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5609                                    ett_h245_EncryptionAuthenticationAndIntegrity, EncryptionAuthenticationAndIntegrity_sequence);
5610
5611   return offset;
5612 }
5613
5614
5615 static const per_sequence_t H235SecurityCapability_sequence[] = {
5616   { &hf_h245_encryptionAuthenticationAndIntegrity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_EncryptionAuthenticationAndIntegrity },
5617   { &hf_h245_mediaCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityTableEntryNumber },
5618   { NULL, 0, 0, NULL }
5619 };
5620
5621 static int
5622 dissect_h245_H235SecurityCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5623   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5624                                    ett_h245_H235SecurityCapability, H235SecurityCapability_sequence);
5625
5626   return offset;
5627 }
5628
5629
5630 static const per_sequence_t SEQUENCE_SIZE_1_16_OF_NonStandardParameter_sequence_of[1] = {
5631   { &hf_h245_ui_nonStandard_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_NonStandardParameter },
5632 };
5633
5634 static int
5635 dissect_h245_SEQUENCE_SIZE_1_16_OF_NonStandardParameter(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5636   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5637                                                   ett_h245_SEQUENCE_SIZE_1_16_OF_NonStandardParameter, SEQUENCE_SIZE_1_16_OF_NonStandardParameter_sequence_of,
5638                                                   1, 16);
5639
5640   return offset;
5641 }
5642
5643
5644 static const value_string h245_UserInputCapability_vals[] = {
5645   {   0, "nonStandard" },
5646   {   1, "basicString" },
5647   {   2, "iA5String" },
5648   {   3, "generalString" },
5649   {   4, "dtmf" },
5650   {   5, "hookflash" },
5651   {   6, "extendedAlphanumeric" },
5652   {   7, "encryptedBasicString" },
5653   {   8, "encryptedIA5String" },
5654   {   9, "encryptedGeneralString" },
5655   {  10, "secureDTMF" },
5656   {  11, "genericUserInputCapability" },
5657   { 0, NULL }
5658 };
5659
5660 static const per_choice_t UserInputCapability_choice[] = {
5661   {   0, &hf_h245_ui_nonStandard , ASN1_EXTENSION_ROOT    , dissect_h245_SEQUENCE_SIZE_1_16_OF_NonStandardParameter },
5662   {   1, &hf_h245_basicString    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
5663   {   2, &hf_h245_iA5String      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
5664   {   3, &hf_h245_generalString  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
5665   {   4, &hf_h245_dtmf           , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
5666   {   5, &hf_h245_hookflash      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
5667   {   6, &hf_h245_extendedAlphanumericFlag, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
5668   {   7, &hf_h245_encryptedBasicString, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
5669   {   8, &hf_h245_encryptedIA5String, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
5670   {   9, &hf_h245_encryptedGeneralString, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
5671   {  10, &hf_h245_secureDTMF     , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
5672   {  11, &hf_h245_genericUserInputCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericCapability },
5673   { 0, NULL, 0, NULL }
5674 };
5675
5676 static int
5677 dissect_h245_UserInputCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5678   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5679                                  ett_h245_UserInputCapability, UserInputCapability_choice,
5680                                  NULL);
5681
5682   return offset;
5683 }
5684
5685
5686 static const value_string h245_MultiplexFormat_vals[] = {
5687   {   0, "nonStandard" },
5688   {   1, "h222Capability" },
5689   {   2, "h223Capability" },
5690   { 0, NULL }
5691 };
5692
5693 static const per_choice_t MultiplexFormat_choice[] = {
5694   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
5695   {   1, &hf_h245_h222Capability , ASN1_EXTENSION_ROOT    , dissect_h245_H222Capability },
5696   {   2, &hf_h245_h223Capability , ASN1_EXTENSION_ROOT    , dissect_h245_H223Capability },
5697   { 0, NULL, 0, NULL }
5698 };
5699
5700 static int
5701 dissect_h245_MultiplexFormat(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5702   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5703                                  ett_h245_MultiplexFormat, MultiplexFormat_choice,
5704                                  NULL);
5705
5706   return offset;
5707 }
5708
5709
5710 static const per_sequence_t AlternativeCapabilitySet_sequence_of[1] = {
5711   { &hf_h245_AlternativeCapabilitySet_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityTableEntryNumber },
5712 };
5713
5714 static int
5715 dissect_h245_AlternativeCapabilitySet(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5716   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5717                                                   ett_h245_AlternativeCapabilitySet, AlternativeCapabilitySet_sequence_of,
5718                                                   1, 256);
5719
5720   return offset;
5721 }
5722
5723
5724 static const per_sequence_t SET_SIZE_1_256_OF_AlternativeCapabilitySet_set_of[1] = {
5725   { &hf_h245_simultaneousCapabilities_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_AlternativeCapabilitySet },
5726 };
5727
5728 static int
5729 dissect_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5730   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
5731                                              ett_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet, SET_SIZE_1_256_OF_AlternativeCapabilitySet_set_of,
5732                                              1, 256);
5733
5734   return offset;
5735 }
5736
5737
5738 static const per_sequence_t MultiplexedStreamCapability_sequence[] = {
5739   { &hf_h245_multiplexFormat, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MultiplexFormat },
5740   { &hf_h245_controlOnMuxStream, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5741   { &hf_h245_capabilityOnMuxStream, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet },
5742   { NULL, 0, 0, NULL }
5743 };
5744
5745 static int
5746 dissect_h245_MultiplexedStreamCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5747   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5748                                    ett_h245_MultiplexedStreamCapability, MultiplexedStreamCapability_sequence);
5749
5750   return offset;
5751 }
5752
5753
5754
5755 static int
5756 dissect_h245_INTEGER_96_127(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5757   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5758                                               96U, 127U, NULL, FALSE);
5759
5760   return offset;
5761 }
5762
5763
5764 static const per_sequence_t AudioTelephonyEventCapability_sequence[] = {
5765   { &hf_h245_dynamicRTPPayloadType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_96_127 },
5766   { &hf_h245_audioTelephoneEvent, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_GeneralString },
5767   { NULL, 0, 0, NULL }
5768 };
5769
5770 static int
5771 dissect_h245_AudioTelephonyEventCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5772   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5773                                    ett_h245_AudioTelephonyEventCapability, AudioTelephonyEventCapability_sequence);
5774
5775   return offset;
5776 }
5777
5778
5779 static const per_sequence_t AudioToneCapability_sequence[] = {
5780   { &hf_h245_dynamicRTPPayloadType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_96_127 },
5781   { NULL, 0, 0, NULL }
5782 };
5783
5784 static int
5785 dissect_h245_AudioToneCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5786   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5787                                    ett_h245_AudioToneCapability, AudioToneCapability_sequence);
5788
5789   return offset;
5790 }
5791
5792
5793 static const per_sequence_t T_separateStreamBool_sequence[] = {
5794   { &hf_h245_separatePort   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5795   { &hf_h245_samePortBool   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5796   { NULL, 0, 0, NULL }
5797 };
5798
5799 static int
5800 dissect_h245_T_separateStreamBool(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5801   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5802                                    ett_h245_T_separateStreamBool, T_separateStreamBool_sequence);
5803
5804   return offset;
5805 }
5806
5807
5808 static const per_sequence_t FECC_rfc2733_sequence[] = {
5809   { &hf_h245_redundancyEncodingBool, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
5810   { &hf_h245_separateStreamBool, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_separateStreamBool },
5811   { NULL, 0, 0, NULL }
5812 };
5813
5814 static int
5815 dissect_h245_FECC_rfc2733(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5816   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5817                                    ett_h245_FECC_rfc2733, FECC_rfc2733_sequence);
5818
5819   return offset;
5820 }
5821
5822
5823 static const value_string h245_DepFECCapability_vals[] = {
5824   {   0, "rfc2733" },
5825   { 0, NULL }
5826 };
5827
5828 static const per_choice_t DepFECCapability_choice[] = {
5829   {   0, &hf_h245_fecc_rfc2733   , ASN1_EXTENSION_ROOT    , dissect_h245_FECC_rfc2733 },
5830   { 0, NULL, 0, NULL }
5831 };
5832
5833 static int
5834 dissect_h245_DepFECCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5835   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5836                                  ett_h245_DepFECCapability, DepFECCapability_choice,
5837                                  NULL);
5838
5839   return offset;
5840 }
5841
5842
5843 static const per_sequence_t MultiplePayloadStreamCapability_sequence[] = {
5844   { &hf_h245_capabilities   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet },
5845   { NULL, 0, 0, NULL }
5846 };
5847
5848 static int
5849 dissect_h245_MultiplePayloadStreamCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5850   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5851                                    ett_h245_MultiplePayloadStreamCapability, MultiplePayloadStreamCapability_sequence);
5852
5853   return offset;
5854 }
5855
5856
5857
5858 static int
5859 dissect_h245_MaxRedundancy(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5860   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5861                                               1U, NO_BOUND, NULL, FALSE);
5862
5863   return offset;
5864 }
5865
5866
5867 static const value_string h245_Rfc2733Format_vals[] = {
5868   {   0, "rfc2733rfc2198" },
5869   {   1, "rfc2733sameport" },
5870   {   2, "rfc2733diffport" },
5871   { 0, NULL }
5872 };
5873
5874 static const per_choice_t Rfc2733Format_choice[] = {
5875   {   0, &hf_h245_rfc2733rfc2198 , ASN1_NO_EXTENSIONS     , dissect_h245_MaxRedundancy },
5876   {   1, &hf_h245_rfc2733sameport, ASN1_NO_EXTENSIONS     , dissect_h245_MaxRedundancy },
5877   {   2, &hf_h245_rfc2733diffport, ASN1_NO_EXTENSIONS     , dissect_h245_MaxRedundancy },
5878   { 0, NULL, 0, NULL }
5879 };
5880
5881 static int
5882 dissect_h245_Rfc2733Format(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5883   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5884                                  ett_h245_Rfc2733Format, Rfc2733Format_choice,
5885                                  NULL);
5886
5887   return offset;
5888 }
5889
5890
5891 static const per_sequence_t FECCapability_sequence[] = {
5892   { &hf_h245_protectedCapability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityTableEntryNumber },
5893   { &hf_h245_fecScheme      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OBJECT_IDENTIFIER },
5894   { &hf_h245_rfc2733Format  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_Rfc2733Format },
5895   { NULL, 0, 0, NULL }
5896 };
5897
5898 static int
5899 dissect_h245_FECCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5900   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5901                                    ett_h245_FECCapability, FECCapability_sequence);
5902
5903   return offset;
5904 }
5905
5906
5907 static const value_string h245_Capability_vals[] = {
5908   {   0, "nonStandard" },
5909   {   1, "receiveVideoCapability" },
5910   {   2, "transmitVideoCapability" },
5911   {   3, "receiveAndTransmitVideoCapability" },
5912   {   4, "receiveAudioCapability" },
5913   {   5, "transmitAudioCapability" },
5914   {   6, "receiveAndTransmitAudioCapability" },
5915   {   7, "receiveDataApplicationCapability" },
5916   {   8, "transmitDataApplicationCapability" },
5917   {   9, "receiveAndTransmitDataApplicationCapability" },
5918   {  10, "h233EncryptionTransmitCapability" },
5919   {  11, "h233EncryptionReceiveCapability" },
5920   {  12, "conferenceCapability" },
5921   {  13, "h235SecurityCapability" },
5922   {  14, "maxPendingReplacementFor" },
5923   {  15, "receiveUserInputCapability" },
5924   {  16, "transmitUserInputCapability" },
5925   {  17, "receiveAndTransmitUserInputCapability" },
5926   {  18, "genericControlCapability" },
5927   {  19, "receiveMultiplexedStreamCapability" },
5928   {  20, "transmitMultiplexedStreamCapability" },
5929   {  21, "receiveAndTransmitMultiplexedStreamCapability" },
5930   {  22, "receiveRTPAudioTelephonyEventCapability" },
5931   {  23, "receiveRTPAudioToneCapability" },
5932   {  24, "depFecCapability" },
5933   {  25, "multiplePayloadStreamCapability" },
5934   {  26, "fecCapability" },
5935   {  27, "redundancyEncodingCap" },
5936   {  28, "oneOfCapabilities" },
5937   { 0, NULL }
5938 };
5939
5940 static const per_choice_t Capability_choice[] = {
5941   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
5942   {   1, &hf_h245_receiveVideoCapability, ASN1_EXTENSION_ROOT    , dissect_h245_VideoCapability },
5943   {   2, &hf_h245_transmitVideoCapability, ASN1_EXTENSION_ROOT    , dissect_h245_VideoCapability },
5944   {   3, &hf_h245_receiveAndTransmitVideoCapability, ASN1_EXTENSION_ROOT    , dissect_h245_VideoCapability },
5945   {   4, &hf_h245_receiveAudioCapability, ASN1_EXTENSION_ROOT    , dissect_h245_AudioCapability },
5946   {   5, &hf_h245_transmitAudioCapability, ASN1_EXTENSION_ROOT    , dissect_h245_AudioCapability },
5947   {   6, &hf_h245_receiveAndTransmitAudioCapability, ASN1_EXTENSION_ROOT    , dissect_h245_AudioCapability },
5948   {   7, &hf_h245_receiveDataApplicationCapability, ASN1_EXTENSION_ROOT    , dissect_h245_DataApplicationCapability },
5949   {   8, &hf_h245_transmitDataApplicationCapability, ASN1_EXTENSION_ROOT    , dissect_h245_DataApplicationCapability },
5950   {   9, &hf_h245_receiveAndTransmitDataApplicationCapability, ASN1_EXTENSION_ROOT    , dissect_h245_DataApplicationCapability },
5951   {  10, &hf_h245_h233EncryptionTransmitCapability, ASN1_EXTENSION_ROOT    , dissect_h245_BOOLEAN },
5952   {  11, &hf_h245_h233EncryptionReceiveCapability, ASN1_EXTENSION_ROOT    , dissect_h245_T_h233EncryptionReceiveCapability },
5953   {  12, &hf_h245_conferenceCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_ConferenceCapability },
5954   {  13, &hf_h245_h235SecurityCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_H235SecurityCapability },
5955   {  14, &hf_h245_maxPendingReplacementFor, ASN1_NOT_EXTENSION_ROOT, dissect_h245_INTEGER_0_255 },
5956   {  15, &hf_h245_receiveUserInputCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_UserInputCapability },
5957   {  16, &hf_h245_transmitUserInputCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_UserInputCapability },
5958   {  17, &hf_h245_receiveAndTransmitUserInputCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_UserInputCapability },
5959   {  18, &hf_h245_genericControlCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericCapability },
5960   {  19, &hf_h245_receiveMultiplexedStreamCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MultiplexedStreamCapability },
5961   {  20, &hf_h245_transmitMultiplexedStreamCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MultiplexedStreamCapability },
5962   {  21, &hf_h245_receiveAndTransmitMultiplexedStreamCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MultiplexedStreamCapability },
5963   {  22, &hf_h245_receiveRTPAudioTelephonyEventCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_AudioTelephonyEventCapability },
5964   {  23, &hf_h245_receiveRTPAudioToneCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_AudioToneCapability },
5965   {  24, &hf_h245_depFecCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_DepFECCapability },
5966   {  25, &hf_h245_multiplePayloadStreamCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MultiplePayloadStreamCapability },
5967   {  26, &hf_h245_fecCapability  , ASN1_NOT_EXTENSION_ROOT, dissect_h245_FECCapability },
5968   {  27, &hf_h245_redundancyEncodingCap, ASN1_NOT_EXTENSION_ROOT, dissect_h245_RedundancyEncodingCapability },
5969   {  28, &hf_h245_oneOfCapabilities, ASN1_NOT_EXTENSION_ROOT, dissect_h245_AlternativeCapabilitySet },
5970   { 0, NULL, 0, NULL }
5971 };
5972
5973 static int
5974 dissect_h245_Capability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5975   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5976                                  ett_h245_Capability, Capability_choice,
5977                                  NULL);
5978
5979   return offset;
5980 }
5981
5982
5983 static const per_sequence_t CapabilityTableEntry_sequence[] = {
5984   { &hf_h245_capabilityTableEntryNumber, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityTableEntryNumber },
5985   { &hf_h245_capability     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_h245_Capability },
5986   { NULL, 0, 0, NULL }
5987 };
5988
5989 static int
5990 dissect_h245_CapabilityTableEntry(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
5991   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5992                                    ett_h245_CapabilityTableEntry, CapabilityTableEntry_sequence);
5993
5994   return offset;
5995 }
5996
5997
5998 static const per_sequence_t SET_SIZE_1_256_OF_CapabilityTableEntry_set_of[1] = {
5999   { &hf_h245_capabilityTable_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityTableEntry },
6000 };
6001
6002 static int
6003 dissect_h245_SET_SIZE_1_256_OF_CapabilityTableEntry(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6004   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
6005                                              ett_h245_SET_SIZE_1_256_OF_CapabilityTableEntry, SET_SIZE_1_256_OF_CapabilityTableEntry_set_of,
6006                                              1, 256);
6007
6008   return offset;
6009 }
6010
6011
6012
6013 static int
6014 dissect_h245_CapabilityDescriptorNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6015   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6016                                               0U, 255U, NULL, FALSE);
6017
6018   return offset;
6019 }
6020
6021
6022 static const per_sequence_t CapabilityDescriptor_sequence[] = {
6023   { &hf_h245_capabilityDescriptorNumber, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityDescriptorNumber },
6024   { &hf_h245_simultaneousCapabilities, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet },
6025   { NULL, 0, 0, NULL }
6026 };
6027
6028 static int
6029 dissect_h245_CapabilityDescriptor(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6030   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6031                                    ett_h245_CapabilityDescriptor, CapabilityDescriptor_sequence);
6032
6033   return offset;
6034 }
6035
6036
6037 static const per_sequence_t SET_SIZE_1_256_OF_CapabilityDescriptor_set_of[1] = {
6038   { &hf_h245_capabilityDescriptors_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityDescriptor },
6039 };
6040
6041 static int
6042 dissect_h245_SET_SIZE_1_256_OF_CapabilityDescriptor(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6043   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
6044                                              ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptor, SET_SIZE_1_256_OF_CapabilityDescriptor_set_of,
6045                                              1, 256);
6046
6047   return offset;
6048 }
6049
6050
6051
6052 static int
6053 dissect_h245_T_subMessageIdentifier(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6054 #line 509 "h245.cnf"
6055   guint32 subMessageIdentifer;
6056
6057
6058   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6059                                               0U, 127U, &subMessageIdentifer, FALSE);
6060
6061   return offset;
6062 }
6063
6064
6065 static const per_sequence_t GenericMessage_sequence[] = {
6066   { &hf_h245_messageIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityIdentifier },
6067   { &hf_h245_subMessageIdentifier, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_subMessageIdentifier },
6068   { &hf_h245_messageContent , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_GenericParameter },
6069   { NULL, 0, 0, NULL }
6070 };
6071
6072 static int
6073 dissect_h245_GenericMessage(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6074   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6075                                    ett_h245_GenericMessage, GenericMessage_sequence);
6076
6077   return offset;
6078 }
6079
6080
6081
6082 static int
6083 dissect_h245_GenericInformation(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6084   offset = dissect_h245_GenericMessage(tvb, offset, actx, tree, hf_index);
6085
6086   return offset;
6087 }
6088
6089
6090 static const per_sequence_t SEQUENCE_OF_GenericInformation_sequence_of[1] = {
6091   { &hf_h245_genericInformation_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_GenericInformation },
6092 };
6093
6094 static int
6095 dissect_h245_SEQUENCE_OF_GenericInformation(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6096   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
6097                                       ett_h245_SEQUENCE_OF_GenericInformation, SEQUENCE_OF_GenericInformation_sequence_of);
6098
6099   return offset;
6100 }
6101
6102
6103 static const per_sequence_t TerminalCapabilitySet_sequence[] = {
6104   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
6105   { &hf_h245_protocolIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OBJECT_IDENTIFIER },
6106   { &hf_h245_multiplexCapability, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_MultiplexCapability },
6107   { &hf_h245_capabilityTable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SET_SIZE_1_256_OF_CapabilityTableEntry },
6108   { &hf_h245_capabilityDescriptors, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SET_SIZE_1_256_OF_CapabilityDescriptor },
6109   { &hf_h245_genericInformation, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_GenericInformation },
6110   { NULL, 0, 0, NULL }
6111 };
6112
6113 static int
6114 dissect_h245_TerminalCapabilitySet(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6115   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6116                                    ett_h245_TerminalCapabilitySet, TerminalCapabilitySet_sequence);
6117
6118 #line 480 "h245.cnf"
6119
6120   h245_pi->msg_type = H245_TermCapSet;
6121
6122   return offset;
6123 }
6124
6125
6126
6127 static int
6128 dissect_h245_LogicalChannelNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6129 #line 120 "h245.cnf"
6130   guint32 value;
6131   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6132                                               1U, 65535U, &value, FALSE);
6133
6134   h245_lc_temp = value & 0xfff;
6135
6136
6137   return offset;
6138 }
6139
6140
6141
6142 static int
6143 dissect_h245_OLC_fw_lcn(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6144   offset = dissect_h245_LogicalChannelNumber(tvb, offset, actx, tree, hf_index);
6145
6146 #line 126 "h245.cnf"
6147   h223_fw_lc_num = h245_lc_temp;
6148
6149   return offset;
6150 }
6151
6152
6153 static const value_string h245_EncryptionMode_vals[] = {
6154   {   0, "nonStandard" },
6155   {   1, "h233Encryption" },
6156   { 0, NULL }
6157 };
6158
6159 static const per_choice_t EncryptionMode_choice[] = {
6160   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
6161   {   1, &hf_h245_h233Encryption , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6162   { 0, NULL, 0, NULL }
6163 };
6164
6165 static int
6166 dissect_h245_EncryptionMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6167   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6168                                  ett_h245_EncryptionMode, EncryptionMode_choice,
6169                                  NULL);
6170
6171   return offset;
6172 }
6173
6174
6175 static const per_sequence_t RedundancyEncodingElement_sequence[] = {
6176   { &hf_h245_dataType       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_DataType },
6177   { &hf_h245_payloadType    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_127 },
6178   { NULL, 0, 0, NULL }
6179 };
6180
6181 static int
6182 dissect_h245_RedundancyEncodingElement(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6183   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6184                                    ett_h245_RedundancyEncodingElement, RedundancyEncodingElement_sequence);
6185
6186   return offset;
6187 }
6188
6189
6190 static const per_sequence_t SEQUENCE_OF_RedundancyEncodingElement_sequence_of[1] = {
6191   { &hf_h245_secondary_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_RedundancyEncodingElement },
6192 };
6193
6194 static int
6195 dissect_h245_SEQUENCE_OF_RedundancyEncodingElement(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6196   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
6197                                       ett_h245_SEQUENCE_OF_RedundancyEncodingElement, SEQUENCE_OF_RedundancyEncodingElement_sequence_of);
6198
6199   return offset;
6200 }
6201
6202
6203 static const per_sequence_t T_rtpRedundancyEncoding_sequence[] = {
6204   { &hf_h245_primary        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_RedundancyEncodingElement },
6205   { &hf_h245_secondary      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_RedundancyEncodingElement },
6206   { NULL, 0, 0, NULL }
6207 };
6208
6209 static int
6210 dissect_h245_T_rtpRedundancyEncoding(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6211   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6212                                    ett_h245_T_rtpRedundancyEncoding, T_rtpRedundancyEncoding_sequence);
6213
6214   return offset;
6215 }
6216
6217
6218 static const per_sequence_t RedundancyEncoding_sequence[] = {
6219   { &hf_h245_redundancyEncodingMethod, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_RedundancyEncodingMethod },
6220   { &hf_h245_secondaryEncoding, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_DataType },
6221   { &hf_h245_rtpRedundancyEncoding, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_T_rtpRedundancyEncoding },
6222   { NULL, 0, 0, NULL }
6223 };
6224
6225 static int
6226 dissect_h245_RedundancyEncoding(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6227   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6228                                    ett_h245_RedundancyEncoding, RedundancyEncoding_sequence);
6229
6230   return offset;
6231 }
6232
6233
6234 static const per_sequence_t MultiplePayloadStreamElement_sequence[] = {
6235   { &hf_h245_dataType       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_DataType },
6236   { &hf_h245_payloadType    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_127 },
6237   { NULL, 0, 0, NULL }
6238 };
6239
6240 static int
6241 dissect_h245_MultiplePayloadStreamElement(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6242   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6243                                    ett_h245_MultiplePayloadStreamElement, MultiplePayloadStreamElement_sequence);
6244
6245   return offset;
6246 }
6247
6248
6249 static const per_sequence_t SEQUENCE_OF_MultiplePayloadStreamElement_sequence_of[1] = {
6250   { &hf_h245_elements_item  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_MultiplePayloadStreamElement },
6251 };
6252
6253 static int
6254 dissect_h245_SEQUENCE_OF_MultiplePayloadStreamElement(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6255   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
6256                                       ett_h245_SEQUENCE_OF_MultiplePayloadStreamElement, SEQUENCE_OF_MultiplePayloadStreamElement_sequence_of);
6257
6258   return offset;
6259 }
6260
6261
6262 static const per_sequence_t MultiplePayloadStream_sequence[] = {
6263   { &hf_h245_elements       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SEQUENCE_OF_MultiplePayloadStreamElement },
6264   { NULL, 0, 0, NULL }
6265 };
6266
6267 static int
6268 dissect_h245_MultiplePayloadStream(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6269   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6270                                    ett_h245_MultiplePayloadStream, MultiplePayloadStream_sequence);
6271
6272   return offset;
6273 }
6274
6275
6276 static const per_sequence_t T_differentPort_sequence[] = {
6277   { &hf_h245_protectedSessionID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_255 },
6278   { &hf_h245_protectedPayloadType, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_127 },
6279   { NULL, 0, 0, NULL }
6280 };
6281
6282 static int
6283 dissect_h245_T_differentPort(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6284   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6285                                    ett_h245_T_differentPort, T_differentPort_sequence);
6286
6287   return offset;
6288 }
6289
6290
6291 static const per_sequence_t T_samePort_sequence[] = {
6292   { &hf_h245_protectedPayloadType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_127 },
6293   { NULL, 0, 0, NULL }
6294 };
6295
6296 static int
6297 dissect_h245_T_samePort(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6298   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6299                                    ett_h245_T_samePort, T_samePort_sequence);
6300
6301   return offset;
6302 }
6303
6304
6305 static const value_string h245_DepSeparateStream_vals[] = {
6306   {   0, "differentPort" },
6307   {   1, "samePort" },
6308   { 0, NULL }
6309 };
6310
6311 static const per_choice_t DepSeparateStream_choice[] = {
6312   {   0, &hf_h245_differentPort  , ASN1_EXTENSION_ROOT    , dissect_h245_T_differentPort },
6313   {   1, &hf_h245_samePort       , ASN1_EXTENSION_ROOT    , dissect_h245_T_samePort },
6314   { 0, NULL, 0, NULL }
6315 };
6316
6317 static int
6318 dissect_h245_DepSeparateStream(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6319   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6320                                  ett_h245_DepSeparateStream, DepSeparateStream_choice,
6321                                  NULL);
6322
6323   return offset;
6324 }
6325
6326
6327 static const value_string h245_FECdata_mode_vals[] = {
6328   {   0, "redundancyEncoding" },
6329   {   1, "separateStream" },
6330   { 0, NULL }
6331 };
6332
6333 static const per_choice_t FECdata_mode_choice[] = {
6334   {   0, &hf_h245_redundancyEncodingFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6335   {   1, &hf_h245_separateStream , ASN1_EXTENSION_ROOT    , dissect_h245_DepSeparateStream },
6336   { 0, NULL, 0, NULL }
6337 };
6338
6339 static int
6340 dissect_h245_FECdata_mode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6341   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6342                                  ett_h245_FECdata_mode, FECdata_mode_choice,
6343                                  NULL);
6344
6345   return offset;
6346 }
6347
6348
6349 static const per_sequence_t RFC2733Data_sequence[] = {
6350   { &hf_h245_fec_data_mode  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_FECdata_mode },
6351   { NULL, 0, 0, NULL }
6352 };
6353
6354 static int
6355 dissect_h245_RFC2733Data(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6356   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6357                                    ett_h245_RFC2733Data, RFC2733Data_sequence);
6358
6359   return offset;
6360 }
6361
6362
6363 static const value_string h245_DepFECData_vals[] = {
6364   {   0, "rfc2733" },
6365   { 0, NULL }
6366 };
6367
6368 static const per_choice_t DepFECData_choice[] = {
6369   {   0, &hf_h245_dep_rfc2733    , ASN1_NO_EXTENSIONS     , dissect_h245_RFC2733Data },
6370   { 0, NULL, 0, NULL }
6371 };
6372
6373 static int
6374 dissect_h245_DepFECData(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6375   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6376                                  ett_h245_DepFECData, DepFECData_choice,
6377                                  NULL);
6378
6379   return offset;
6380 }
6381
6382
6383 static const per_sequence_t T_mode_rfc2733sameport_sequence[] = {
6384   { NULL, 0, 0, NULL }
6385 };
6386
6387 static int
6388 dissect_h245_T_mode_rfc2733sameport(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6389   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6390                                    ett_h245_T_mode_rfc2733sameport, T_mode_rfc2733sameport_sequence);
6391
6392   return offset;
6393 }
6394
6395
6396 static const per_sequence_t T_mode_rfc2733diffport_sequence[] = {
6397   { &hf_h245_protectedChannel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
6398   { NULL, 0, 0, NULL }
6399 };
6400
6401 static int
6402 dissect_h245_T_mode_rfc2733diffport(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6403   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6404                                    ett_h245_T_mode_rfc2733diffport, T_mode_rfc2733diffport_sequence);
6405
6406   return offset;
6407 }
6408
6409
6410 static const value_string h245_T_pktMode_vals[] = {
6411   {   0, "rfc2198coding" },
6412   {   1, "rfc2733sameport" },
6413   {   2, "rfc2733diffport" },
6414   { 0, NULL }
6415 };
6416
6417 static const per_choice_t T_pktMode_choice[] = {
6418   {   0, &hf_h245_rfc2198coding  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6419   {   1, &hf_h245_mode_rfc2733sameport, ASN1_EXTENSION_ROOT    , dissect_h245_T_mode_rfc2733sameport },
6420   {   2, &hf_h245_mode_rfc2733diffport, ASN1_EXTENSION_ROOT    , dissect_h245_T_mode_rfc2733diffport },
6421   { 0, NULL, 0, NULL }
6422 };
6423
6424 static int
6425 dissect_h245_T_pktMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6426   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6427                                  ett_h245_T_pktMode, T_pktMode_choice,
6428                                  NULL);
6429
6430   return offset;
6431 }
6432
6433
6434 static const per_sequence_t T_rfc2733_sequence[] = {
6435   { &hf_h245_protectedPayloadType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_127 },
6436   { &hf_h245_fecScheme      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OBJECT_IDENTIFIER },
6437   { &hf_h245_pktMode        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_pktMode },
6438   { NULL, 0, 0, NULL }
6439 };
6440
6441 static int
6442 dissect_h245_T_rfc2733(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6443   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6444                                    ett_h245_T_rfc2733, T_rfc2733_sequence);
6445
6446   return offset;
6447 }
6448
6449
6450 static const value_string h245_FECData_vals[] = {
6451   {   0, "rfc2733" },
6452   { 0, NULL }
6453 };
6454
6455 static const per_choice_t FECData_choice[] = {
6456   {   0, &hf_h245_rfc2733        , ASN1_EXTENSION_ROOT    , dissect_h245_T_rfc2733 },
6457   { 0, NULL, 0, NULL }
6458 };
6459
6460 static int
6461 dissect_h245_FECData(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6462   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6463                                  ett_h245_FECData, FECData_choice,
6464                                  NULL);
6465
6466   return offset;
6467 }
6468
6469
6470 static const value_string h245_T_mediaType_vals[] = {
6471   {   0, "nonStandard" },
6472   {   1, "videoData" },
6473   {   2, "audioData" },
6474   {   3, "data" },
6475   {   4, "redundancyEncoding" },
6476   {   5, "multiplePayloadStream" },
6477   {   6, "depFec" },
6478   {   7, "fec" },
6479   { 0, NULL }
6480 };
6481
6482 static const per_choice_t T_mediaType_choice[] = {
6483   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
6484   {   1, &hf_h245_videoData      , ASN1_EXTENSION_ROOT    , dissect_h245_VideoCapability },
6485   {   2, &hf_h245_audioData      , ASN1_EXTENSION_ROOT    , dissect_h245_AudioCapability },
6486   {   3, &hf_h245_data           , ASN1_EXTENSION_ROOT    , dissect_h245_DataApplicationCapability },
6487   {   4, &hf_h245_redundancyEncoding, ASN1_NOT_EXTENSION_ROOT, dissect_h245_RedundancyEncoding },
6488   {   5, &hf_h245_multiplePayloadStream, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MultiplePayloadStream },
6489   {   6, &hf_h245_depFec         , ASN1_NOT_EXTENSION_ROOT, dissect_h245_DepFECData },
6490   {   7, &hf_h245_fec            , ASN1_NOT_EXTENSION_ROOT, dissect_h245_FECData },
6491   { 0, NULL, 0, NULL }
6492 };
6493
6494 static int
6495 dissect_h245_T_mediaType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6496   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6497                                  ett_h245_T_mediaType, T_mediaType_choice,
6498                                  NULL);
6499
6500   return offset;
6501 }
6502
6503
6504 static const per_sequence_t H235Media_sequence[] = {
6505   { &hf_h245_encryptionAuthenticationAndIntegrity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_EncryptionAuthenticationAndIntegrity },
6506   { &hf_h245_mediaType      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_mediaType },
6507   { NULL, 0, 0, NULL }
6508 };
6509
6510 static int
6511 dissect_h245_H235Media(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6512   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6513                                    ett_h245_H235Media, H235Media_sequence);
6514
6515   return offset;
6516 }
6517
6518
6519 static const per_sequence_t MultiplexedStreamParameter_sequence[] = {
6520   { &hf_h245_multiplexFormat, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MultiplexFormat },
6521   { &hf_h245_controlOnMuxStream, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
6522   { NULL, 0, 0, NULL }
6523 };
6524
6525 static int
6526 dissect_h245_MultiplexedStreamParameter(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6527   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6528                                    ett_h245_MultiplexedStreamParameter, MultiplexedStreamParameter_sequence);
6529
6530   return offset;
6531 }
6532
6533
6534 static const value_string h245_DataType_vals[] = {
6535   {   0, "nonStandard" },
6536   {   1, "nullData" },
6537   {   2, "videoData" },
6538   {   3, "audioData" },
6539   {   4, "data" },
6540   {   5, "encryptionData" },
6541   {   6, "h235Control" },
6542   {   7, "h235Media" },
6543   {   8, "multiplexedStream" },
6544   {   9, "redundancyEncoding" },
6545   {  10, "multiplePayloadStream" },
6546   {  11, "depFec" },
6547   {  12, "fec" },
6548   { 0, NULL }
6549 };
6550
6551 static const per_choice_t DataType_choice[] = {
6552   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
6553   {   1, &hf_h245_nullData       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6554   {   2, &hf_h245_videoData      , ASN1_EXTENSION_ROOT    , dissect_h245_VideoCapability },
6555   {   3, &hf_h245_audioData      , ASN1_EXTENSION_ROOT    , dissect_h245_AudioCapability },
6556   {   4, &hf_h245_data           , ASN1_EXTENSION_ROOT    , dissect_h245_DataApplicationCapability },
6557   {   5, &hf_h245_encryptionData , ASN1_EXTENSION_ROOT    , dissect_h245_EncryptionMode },
6558   {   6, &hf_h245_h235Control    , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NonStandardParameter },
6559   {   7, &hf_h245_h235Media      , ASN1_NOT_EXTENSION_ROOT, dissect_h245_H235Media },
6560   {   8, &hf_h245_multiplexedStream, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MultiplexedStreamParameter },
6561   {   9, &hf_h245_redundancyEncoding, ASN1_NOT_EXTENSION_ROOT, dissect_h245_RedundancyEncoding },
6562   {  10, &hf_h245_multiplePayloadStream, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MultiplePayloadStream },
6563   {  11, &hf_h245_depFec         , ASN1_NOT_EXTENSION_ROOT, dissect_h245_DepFECData },
6564   {  12, &hf_h245_fec            , ASN1_NOT_EXTENSION_ROOT, dissect_h245_FECData },
6565   { 0, NULL, 0, NULL }
6566 };
6567
6568 static int
6569 dissect_h245_DataType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6570   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6571                                  ett_h245_DataType, DataType_choice,
6572                                  NULL);
6573
6574   return offset;
6575 }
6576
6577
6578
6579 static int
6580 dissect_h245_INTEGER_0_8191(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6581   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6582                                               0U, 8191U, NULL, FALSE);
6583
6584   return offset;
6585 }
6586
6587
6588 static const per_sequence_t H222LogicalChannelParameters_sequence[] = {
6589   { &hf_h245_resourceID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
6590   { &hf_h245_subChannelID   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_8191 },
6591   { &hf_h245_pcr_pid        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_8191 },
6592   { &hf_h245_programDescriptors, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OCTET_STRING },
6593   { &hf_h245_streamDescriptors, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OCTET_STRING },
6594   { NULL, 0, 0, NULL }
6595 };
6596
6597 static int
6598 dissect_h245_H222LogicalChannelParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6599   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6600                                    ett_h245_H222LogicalChannelParameters, H222LogicalChannelParameters_sequence);
6601
6602   return offset;
6603 }
6604
6605
6606
6607 static int
6608 dissect_h245_T_h223_al_type_al1Framed(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6609 #line 157 "h245.cnf"
6610   if(h223_lc_params_temp)
6611         h223_lc_params_temp->al_type = al1Framed;
6612
6613   offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
6614
6615   return offset;
6616 }
6617
6618
6619
6620 static int
6621 dissect_h245_T_h223_al_type_al1NotFramed(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6622 #line 162 "h245.cnf"
6623   if(h223_lc_params_temp)
6624         h223_lc_params_temp->al_type = al1NotFramed;
6625
6626   offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
6627
6628   return offset;
6629 }
6630
6631
6632
6633 static int
6634 dissect_h245_T_h223_al_type_al2WithoutSequenceNumbers(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6635 #line 167 "h245.cnf"
6636   if(h223_lc_params_temp)
6637         h223_lc_params_temp->al_type = al2WithoutSequenceNumbers;
6638
6639   offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
6640
6641   return offset;
6642 }
6643
6644
6645
6646 static int
6647 dissect_h245_T_h223_al_type_al2WithSequenceNumbers(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6648 #line 172 "h245.cnf"
6649   if(h223_lc_params_temp)
6650         h223_lc_params_temp->al_type = al2WithSequenceNumbers;
6651
6652   offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
6653
6654   return offset;
6655 }
6656
6657
6658
6659 static int
6660 dissect_h245_T_controlFieldOctets(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6661 #line 186 "h245.cnf"
6662   guint32 value;
6663   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6664                                               0U, 2U, &value, FALSE);
6665
6666   if(h223_lc_params_temp && h223_lc_params_temp->al_params)
6667         ((h223_al3_params*)h223_lc_params_temp->al_params)->control_field_octets = value & 3 ;
6668
6669
6670   return offset;
6671 }
6672
6673
6674
6675 static int
6676 dissect_h245_T_al3_sendBufferSize(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6677 #line 195 "h245.cnf"
6678   guint32 value;
6679   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6680                                               0U, 16777215U, &value, FALSE);
6681
6682   if(h223_lc_params_temp && h223_lc_params_temp->al_params)
6683         ((h223_al3_params*)h223_lc_params_temp->al_params)->send_buffer_size = value & 0xfffff;
6684
6685
6686   return offset;
6687 }
6688
6689
6690 static const per_sequence_t Al3_sequence[] = {
6691   { &hf_h245_controlFieldOctets, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_T_controlFieldOctets },
6692   { &hf_h245_al3_sendBufferSize, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_T_al3_sendBufferSize },
6693   { NULL, 0, 0, NULL }
6694 };
6695
6696 static int
6697 dissect_h245_Al3(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6698   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6699                                    ett_h245_Al3, Al3_sequence);
6700
6701   return offset;
6702 }
6703
6704
6705
6706 static int
6707 dissect_h245_T_h223_al_type_al3(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6708 #line 177 "h245.cnf"
6709  if(h223_lc_params_temp) {
6710         h223_lc_params_temp->al_type = al3;
6711         h223_lc_params_temp->al_params = se_alloc(sizeof(h223_al3_params));
6712   }
6713
6714   offset = dissect_h245_Al3(tvb, offset, actx, tree, hf_index);
6715
6716   return offset;
6717 }
6718
6719
6720 static const value_string h245_T_transferMode_vals[] = {
6721   {   0, "framed" },
6722   {   1, "unframed" },
6723   { 0, NULL }
6724 };
6725
6726 static const per_choice_t T_transferMode_choice[] = {
6727   {   0, &hf_h245_framed         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6728   {   1, &hf_h245_unframed       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6729   { 0, NULL, 0, NULL }
6730 };
6731
6732 static int
6733 dissect_h245_T_transferMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6734   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6735                                  ett_h245_T_transferMode, T_transferMode_choice,
6736                                  NULL);
6737
6738   return offset;
6739 }
6740
6741
6742 static const value_string h245_AL1HeaderFEC_vals[] = {
6743   {   0, "sebch16-7" },
6744   {   1, "golay24-12" },
6745   { 0, NULL }
6746 };
6747
6748 static const per_choice_t AL1HeaderFEC_choice[] = {
6749   {   0, &hf_h245_sebch16_7      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6750   {   1, &hf_h245_golay24_12     , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6751   { 0, NULL, 0, NULL }
6752 };
6753
6754 static int
6755 dissect_h245_AL1HeaderFEC(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6756   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6757                                  ett_h245_AL1HeaderFEC, AL1HeaderFEC_choice,
6758                                  NULL);
6759
6760   return offset;
6761 }
6762
6763
6764 static const value_string h245_AL1CrcLength_vals[] = {
6765   {   0, "crc4bit" },
6766   {   1, "crc12bit" },
6767   {   2, "crc20bit" },
6768   {   3, "crc28bit" },
6769   {   4, "crc8bit" },
6770   {   5, "crc16bit" },
6771   {   6, "crc32bit" },
6772   {   7, "crcNotUsed" },
6773   { 0, NULL }
6774 };
6775
6776 static const per_choice_t AL1CrcLength_choice[] = {
6777   {   0, &hf_h245_crc4bit        , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6778   {   1, &hf_h245_crc12bit       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6779   {   2, &hf_h245_crc20bit       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6780   {   3, &hf_h245_crc28bit       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6781   {   4, &hf_h245_crc8bit        , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
6782   {   5, &hf_h245_crc16bit       , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
6783   {   6, &hf_h245_crc32bit       , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
6784   {   7, &hf_h245_crcNotUsed     , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
6785   { 0, NULL, 0, NULL }
6786 };
6787
6788 static int
6789 dissect_h245_AL1CrcLength(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6790   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6791                                  ett_h245_AL1CrcLength, AL1CrcLength_choice,
6792                                  NULL);
6793
6794   return offset;
6795 }
6796
6797
6798
6799 static int
6800 dissect_h245_INTEGER_8_32(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6801   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6802                                               8U, 32U, NULL, FALSE);
6803
6804   return offset;
6805 }
6806
6807
6808
6809 static int
6810 dissect_h245_INTEGER_0_16(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6811   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6812                                               0U, 16U, NULL, FALSE);
6813
6814   return offset;
6815 }
6816
6817
6818 static const value_string h245_T_numberOfRetransmissions_vals[] = {
6819   {   0, "finite" },
6820   {   1, "infinite" },
6821   { 0, NULL }
6822 };
6823
6824 static const per_choice_t T_numberOfRetransmissions_choice[] = {
6825   {   0, &hf_h245_finite         , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_16 },
6826   {   1, &hf_h245_infinite       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6827   { 0, NULL, 0, NULL }
6828 };
6829
6830 static int
6831 dissect_h245_T_numberOfRetransmissions(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6832   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6833                                  ett_h245_T_numberOfRetransmissions, T_numberOfRetransmissions_choice,
6834                                  NULL);
6835
6836   return offset;
6837 }
6838
6839
6840 static const per_sequence_t H223AnnexCArqParameters_sequence[] = {
6841   { &hf_h245_numberOfRetransmissions, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_numberOfRetransmissions },
6842   { &hf_h245_sendBufferSize , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_16777215 },
6843   { NULL, 0, 0, NULL }
6844 };
6845
6846 static int
6847 dissect_h245_H223AnnexCArqParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6848   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6849                                    ett_h245_H223AnnexCArqParameters, H223AnnexCArqParameters_sequence);
6850
6851   return offset;
6852 }
6853
6854
6855 static const value_string h245_ArqType_vals[] = {
6856   {   0, "noArq" },
6857   {   1, "typeIArq" },
6858   {   2, "typeIIArq" },
6859   { 0, NULL }
6860 };
6861
6862 static const per_choice_t ArqType_choice[] = {
6863   {   0, &hf_h245_noArq          , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6864   {   1, &hf_h245_typeIArq       , ASN1_EXTENSION_ROOT    , dissect_h245_H223AnnexCArqParameters },
6865   {   2, &hf_h245_typeIIArq      , ASN1_EXTENSION_ROOT    , dissect_h245_H223AnnexCArqParameters },
6866   { 0, NULL, 0, NULL }
6867 };
6868
6869 static int
6870 dissect_h245_ArqType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6871   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6872                                  ett_h245_ArqType, ArqType_choice,
6873                                  NULL);
6874
6875   return offset;
6876 }
6877
6878
6879 static const per_sequence_t H223AL1MParameters_sequence[] = {
6880   { &hf_h245_transferMode   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_transferMode },
6881   { &hf_h245_aL1HeaderFEC   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_AL1HeaderFEC },
6882   { &hf_h245_crcLength2     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_AL1CrcLength },
6883   { &hf_h245_rcpcCodeRate   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_8_32 },
6884   { &hf_h245_arqType        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_ArqType },
6885   { &hf_h245_alpduInterleaving, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
6886   { &hf_h245_alsduSplitting , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
6887   { &hf_h245_rsCodeCorrection, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_INTEGER_0_127 },
6888   { NULL, 0, 0, NULL }
6889 };
6890
6891 static int
6892 dissect_h245_H223AL1MParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6893   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6894                                    ett_h245_H223AL1MParameters, H223AL1MParameters_sequence);
6895
6896   return offset;
6897 }
6898
6899
6900
6901 static int
6902 dissect_h245_T_h223_al_type_al1M(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6903 #line 202 "h245.cnf"
6904   if(h223_lc_params_temp)
6905         h223_lc_params_temp->al_type = al1M;
6906
6907   offset = dissect_h245_H223AL1MParameters(tvb, offset, actx, tree, hf_index);
6908
6909   return offset;
6910 }
6911
6912
6913 static const value_string h245_AL2HeaderFEC_vals[] = {
6914   {   0, "sebch16-5" },
6915   {   1, "golay24-12" },
6916   { 0, NULL }
6917 };
6918
6919 static const per_choice_t AL2HeaderFEC_choice[] = {
6920   {   0, &hf_h245_sebch16_5      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6921   {   1, &hf_h245_golay24_12     , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6922   { 0, NULL, 0, NULL }
6923 };
6924
6925 static int
6926 dissect_h245_AL2HeaderFEC(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6927   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6928                                  ett_h245_AL2HeaderFEC, AL2HeaderFEC_choice,
6929                                  NULL);
6930
6931   return offset;
6932 }
6933
6934
6935 static const per_sequence_t H223AL2MParameters_sequence[] = {
6936   { &hf_h245_aL2HeaderFEC   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_AL2HeaderFEC },
6937   { &hf_h245_alpduInterleaving, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
6938   { NULL, 0, 0, NULL }
6939 };
6940
6941 static int
6942 dissect_h245_H223AL2MParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6943   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6944                                    ett_h245_H223AL2MParameters, H223AL2MParameters_sequence);
6945
6946   return offset;
6947 }
6948
6949
6950
6951 static int
6952 dissect_h245_T_h223_al_type_al2M(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6953 #line 207 "h245.cnf"
6954   if(h223_lc_params_temp)
6955         h223_lc_params_temp->al_type = al2M;
6956
6957   offset = dissect_h245_H223AL2MParameters(tvb, offset, actx, tree, hf_index);
6958
6959   return offset;
6960 }
6961
6962
6963 static const value_string h245_T_headerFormat_vals[] = {
6964   {   0, "sebch16-7" },
6965   {   1, "golay24-12" },
6966   { 0, NULL }
6967 };
6968
6969 static const per_choice_t T_headerFormat_choice[] = {
6970   {   0, &hf_h245_sebch16_7      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6971   {   1, &hf_h245_golay24_12     , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6972   { 0, NULL, 0, NULL }
6973 };
6974
6975 static int
6976 dissect_h245_T_headerFormat(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
6977   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6978                                  ett_h245_T_headerFormat, T_headerFormat_choice,
6979                                  NULL);
6980
6981   return offset;
6982 }
6983
6984
6985 static const value_string h245_AL3CrcLength_vals[] = {
6986   {   0, "crc4bit" },
6987   {   1, "crc12bit" },
6988   {   2, "crc20bit" },
6989   {   3, "crc28bit" },
6990   {   4, "crc8bit" },
6991   {   5, "crc16bit" },
6992   {   6, "crc32bit" },
6993   {   7, "crcNotUsed" },
6994   { 0, NULL }
6995 };
6996
6997 static const per_choice_t AL3CrcLength_choice[] = {
6998   {   0, &hf_h245_crc4bit        , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
6999   {   1, &hf_h245_crc12bit       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7000   {   2, &hf_h245_crc20bit       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7001   {   3, &hf_h245_crc28bit       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7002   {   4, &hf_h245_crc8bit        , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
7003   {   5, &hf_h245_crc16bit       , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
7004   {   6, &hf_h245_crc32bit       , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
7005   {   7, &hf_h245_crcNotUsed     , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
7006   { 0, NULL, 0, NULL }
7007 };
7008
7009 static int
7010 dissect_h245_AL3CrcLength(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7011   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7012                                  ett_h245_AL3CrcLength, AL3CrcLength_choice,
7013                                  NULL);
7014
7015   return offset;
7016 }
7017
7018
7019 static const per_sequence_t H223AL3MParameters_sequence[] = {
7020   { &hf_h245_headerFormat   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_headerFormat },
7021   { &hf_h245_crlength2      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_AL3CrcLength },
7022   { &hf_h245_rcpcCodeRate   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_8_32 },
7023   { &hf_h245_arqType        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_ArqType },
7024   { &hf_h245_alpduInterleaving, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
7025   { &hf_h245_rsCodeCorrection, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_INTEGER_0_127 },
7026   { NULL, 0, 0, NULL }
7027 };
7028
7029 static int
7030 dissect_h245_H223AL3MParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7031   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7032                                    ett_h245_H223AL3MParameters, H223AL3MParameters_sequence);
7033
7034   return offset;
7035 }
7036
7037
7038
7039 static int
7040 dissect_h245_T_h223_al_type_al3M(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7041 #line 212 "h245.cnf"
7042   if(h223_lc_params_temp)
7043         h223_lc_params_temp->al_type = al3M;
7044
7045   offset = dissect_h245_H223AL3MParameters(tvb, offset, actx, tree, hf_index);
7046
7047   return offset;
7048 }
7049
7050
7051 static const value_string h245_T_adaptationLayerType_vals[] = {
7052   {   0, "nonStandard" },
7053   {   1, "al1Framed" },
7054   {   2, "al1NotFramed" },
7055   {   3, "al2WithoutSequenceNumbers" },
7056   {   4, "al2WithSequenceNumbers" },
7057   {   5, "al3" },
7058   {   6, "al1M" },
7059   {   7, "al2M" },
7060   {   8, "al3M" },
7061   { 0, NULL }
7062 };
7063
7064 static const per_choice_t T_adaptationLayerType_choice[] = {
7065   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
7066   {   1, &hf_h245_h223_al_type_al1Framed, ASN1_EXTENSION_ROOT    , dissect_h245_T_h223_al_type_al1Framed },
7067   {   2, &hf_h245_h223_al_type_al1NotFramed, ASN1_EXTENSION_ROOT    , dissect_h245_T_h223_al_type_al1NotFramed },
7068   {   3, &hf_h245_h223_al_type_al2WithoutSequenceNumbers, ASN1_EXTENSION_ROOT    , dissect_h245_T_h223_al_type_al2WithoutSequenceNumbers },
7069   {   4, &hf_h245_h223_al_type_al2WithSequenceNumbers, ASN1_EXTENSION_ROOT    , dissect_h245_T_h223_al_type_al2WithSequenceNumbers },
7070   {   5, &hf_h245_h223_al_type_al3, ASN1_EXTENSION_ROOT    , dissect_h245_T_h223_al_type_al3 },
7071   {   6, &hf_h245_h223_al_type_al1M, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_h223_al_type_al1M },
7072   {   7, &hf_h245_h223_al_type_al2M, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_h223_al_type_al2M },
7073   {   8, &hf_h245_h223_al_type_al3M, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_h223_al_type_al3M },
7074   { 0, NULL, 0, NULL }
7075 };
7076
7077 static int
7078 dissect_h245_T_adaptationLayerType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7079   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7080                                  ett_h245_T_adaptationLayerType, T_adaptationLayerType_choice,
7081                                  NULL);
7082
7083   return offset;
7084 }
7085
7086
7087
7088 static int
7089 dissect_h245_T_h223_lc_segmentableFlag(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7090 #line 219 "h245.cnf"
7091   guint32 value;
7092   offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, &value);
7093
7094   if(h223_lc_params_temp)
7095         h223_lc_params_temp->segmentable = value & 1;
7096
7097
7098   return offset;
7099 }
7100
7101
7102 static const per_sequence_t H223LogicalChannelParameters_sequence[] = {
7103   { &hf_h245_adaptationLayerType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_adaptationLayerType },
7104   { &hf_h245_h223_lc_segmentableFlag, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_h223_lc_segmentableFlag },
7105   { NULL, 0, 0, NULL }
7106 };
7107
7108 static int
7109 dissect_h245_H223LogicalChannelParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7110   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7111                                    ett_h245_H223LogicalChannelParameters, H223LogicalChannelParameters_sequence);
7112
7113   return offset;
7114 }
7115
7116
7117
7118 static int
7119 dissect_h245_OLC_fw_h223_params(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7120 #line 139 "h245.cnf"
7121   h223_fw_lc_params = se_alloc(sizeof(h223_lc_params));
7122   h223_fw_lc_params->al_type = al_nonStandard;
7123   h223_fw_lc_params->al_params = NULL;
7124   h223_fw_lc_params->segmentable = 0;
7125   h223_fw_lc_params->subdissector = NULL;
7126   h223_lc_params_temp = h223_fw_lc_params;
7127
7128   offset = dissect_h245_H223LogicalChannelParameters(tvb, offset, actx, tree, hf_index);
7129
7130   return offset;
7131 }
7132
7133
7134 static const value_string h245_CRCLength_vals[] = {
7135   {   0, "crc8bit" },
7136   {   1, "crc16bit" },
7137   {   2, "crc32bit" },
7138   { 0, NULL }
7139 };
7140
7141 static const per_choice_t CRCLength_choice[] = {
7142   {   0, &hf_h245_crc8bit        , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7143   {   1, &hf_h245_crc16bit       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7144   {   2, &hf_h245_crc32bit       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7145   { 0, NULL, 0, NULL }
7146 };
7147
7148 static int
7149 dissect_h245_CRCLength(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7150   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7151                                  ett_h245_CRCLength, CRCLength_choice,
7152                                  NULL);
7153
7154   return offset;
7155 }
7156
7157
7158 static const per_sequence_t V76HDLCParameters_sequence[] = {
7159   { &hf_h245_crcLength      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_CRCLength },
7160   { &hf_h245_n401           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_4095 },
7161   { &hf_h245_loopbackTestProcedure, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
7162   { NULL, 0, 0, NULL }
7163 };
7164
7165 static int
7166 dissect_h245_V76HDLCParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7167   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7168                                    ett_h245_V76HDLCParameters, V76HDLCParameters_sequence);
7169
7170   return offset;
7171 }
7172
7173
7174 static const value_string h245_T_suspendResume_vals[] = {
7175   {   0, "noSuspendResume" },
7176   {   1, "suspendResumewAddress" },
7177   {   2, "suspendResumewoAddress" },
7178   { 0, NULL }
7179 };
7180
7181 static const per_choice_t T_suspendResume_choice[] = {
7182   {   0, &hf_h245_noSuspendResume, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7183   {   1, &hf_h245_suspendResumewAddress, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7184   {   2, &hf_h245_suspendResumewoAddress, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7185   { 0, NULL, 0, NULL }
7186 };
7187
7188 static int
7189 dissect_h245_T_suspendResume(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7190   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7191                                  ett_h245_T_suspendResume, T_suspendResume_choice,
7192                                  NULL);
7193
7194   return offset;
7195 }
7196
7197
7198 static const value_string h245_T_recovery_vals[] = {
7199   {   0, "rej" },
7200   {   1, "sREJ" },
7201   {   2, "mSREJ" },
7202   { 0, NULL }
7203 };
7204
7205 static const per_choice_t T_recovery_choice[] = {
7206   {   0, &hf_h245_rej            , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7207   {   1, &hf_h245_sREJ           , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7208   {   2, &hf_h245_mSREJ          , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7209   { 0, NULL, 0, NULL }
7210 };
7211
7212 static int
7213 dissect_h245_T_recovery(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7214   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7215                                  ett_h245_T_recovery, T_recovery_choice,
7216                                  NULL);
7217
7218   return offset;
7219 }
7220
7221
7222 static const per_sequence_t T_eRM_sequence[] = {
7223   { &hf_h245_windowSize     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_127 },
7224   { &hf_h245_recovery       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_recovery },
7225   { NULL, 0, 0, NULL }
7226 };
7227
7228 static int
7229 dissect_h245_T_eRM(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7230   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7231                                    ett_h245_T_eRM, T_eRM_sequence);
7232
7233   return offset;
7234 }
7235
7236
7237 static const value_string h245_V76LCP_mode_vals[] = {
7238   {   0, "eRM" },
7239   {   1, "uNERM" },
7240   { 0, NULL }
7241 };
7242
7243 static const per_choice_t V76LCP_mode_choice[] = {
7244   {   0, &hf_h245_eRM            , ASN1_EXTENSION_ROOT    , dissect_h245_T_eRM },
7245   {   1, &hf_h245_uNERM          , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7246   { 0, NULL, 0, NULL }
7247 };
7248
7249 static int
7250 dissect_h245_V76LCP_mode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7251   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7252                                  ett_h245_V76LCP_mode, V76LCP_mode_choice,
7253                                  NULL);
7254
7255   return offset;
7256 }
7257
7258
7259 static const per_sequence_t V75Parameters_sequence[] = {
7260   { &hf_h245_audioHeaderPresent, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
7261   { NULL, 0, 0, NULL }
7262 };
7263
7264 static int
7265 dissect_h245_V75Parameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7266   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7267                                    ett_h245_V75Parameters, V75Parameters_sequence);
7268
7269   return offset;
7270 }
7271
7272
7273 static const per_sequence_t V76LogicalChannelParameters_sequence[] = {
7274   { &hf_h245_hdlcParameters , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_V76HDLCParameters },
7275   { &hf_h245_suspendResume  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_suspendResume },
7276   { &hf_h245_uIH            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
7277   { &hf_h245_v76_mode       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_V76LCP_mode },
7278   { &hf_h245_v75Parameters  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_V75Parameters },
7279   { NULL, 0, 0, NULL }
7280 };
7281
7282 static int
7283 dissect_h245_V76LogicalChannelParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7284   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7285                                    ett_h245_V76LogicalChannelParameters, V76LogicalChannelParameters_sequence);
7286
7287   return offset;
7288 }
7289
7290
7291
7292 static int
7293 dissect_h245_Ipv4_network(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7294 #line 516 "h245.cnf"
7295
7296   tvbuff_t *value_tvb;
7297
7298   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
7299                                        4, 4, &value_tvb);
7300
7301   if ( media_channel )
7302     ipv4_address = tvb_get_ipv4(value_tvb, 0);
7303
7304   if ( media_control_channel )
7305     rtcp_ipv4_address = tvb_get_ipv4(value_tvb, 0);
7306
7307
7308
7309   return offset;
7310 }
7311
7312
7313
7314 static int
7315 dissect_h245_TsapIdentifier(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7316 #line 529 "h245.cnf"
7317   guint32 tsapIdentifier;
7318
7319   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7320                                               0U, 65535U, &tsapIdentifier, FALSE);
7321
7322   if ( media_channel )
7323         ipv4_port = tsapIdentifier;
7324
7325   if ( media_control_channel )
7326         rtcp_ipv4_port = tsapIdentifier;
7327
7328
7329
7330   return offset;
7331 }
7332
7333
7334 static const per_sequence_t T_iPAddress_sequence[] = {
7335   { &hf_h245_ip4_network    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Ipv4_network },
7336   { &hf_h245_tsapIdentifier , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TsapIdentifier },
7337   { NULL, 0, 0, NULL }
7338 };
7339
7340 static int
7341 dissect_h245_T_iPAddress(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7342   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7343                                    ett_h245_T_iPAddress, T_iPAddress_sequence);
7344
7345   return offset;
7346 }
7347
7348
7349
7350 static int
7351 dissect_h245_OCTET_STRING_SIZE_6(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7352   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
7353                                        6, 6, NULL);
7354
7355   return offset;
7356 }
7357
7358
7359
7360 static int
7361 dissect_h245_OCTET_STRING_SIZE_4(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7362   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
7363                                        4, 4, NULL);
7364
7365   return offset;
7366 }
7367
7368
7369
7370 static int
7371 dissect_h245_OCTET_STRING_SIZE_2(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7372   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
7373                                        2, 2, NULL);
7374
7375   return offset;
7376 }
7377
7378
7379 static const per_sequence_t T_iPXAddress_sequence[] = {
7380   { &hf_h245_node           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING_SIZE_6 },
7381   { &hf_h245_netnum         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING_SIZE_4 },
7382   { &hf_h245_ipx_tsapIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING_SIZE_2 },
7383   { NULL, 0, 0, NULL }
7384 };
7385
7386 static int
7387 dissect_h245_T_iPXAddress(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7388   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7389                                    ett_h245_T_iPXAddress, T_iPXAddress_sequence);
7390
7391   return offset;
7392 }
7393
7394
7395 static const per_sequence_t T_iP6Address_sequence[] = {
7396   { &hf_h245_ip6_network    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING_SIZE_16 },
7397   { &hf_h245_ipv6_tsapIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
7398   { NULL, 0, 0, NULL }
7399 };
7400
7401 static int
7402 dissect_h245_T_iP6Address(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7403   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7404                                    ett_h245_T_iP6Address, T_iP6Address_sequence);
7405
7406   return offset;
7407 }
7408
7409
7410 static const value_string h245_T_routing_vals[] = {
7411   {   0, "strict" },
7412   {   1, "loose" },
7413   { 0, NULL }
7414 };
7415
7416 static const per_choice_t T_routing_choice[] = {
7417   {   0, &hf_h245_strict         , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
7418   {   1, &hf_h245_loose          , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
7419   { 0, NULL, 0, NULL }
7420 };
7421
7422 static int
7423 dissect_h245_T_routing(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7424   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7425                                  ett_h245_T_routing, T_routing_choice,
7426                                  NULL);
7427
7428   return offset;
7429 }
7430
7431
7432 static const per_sequence_t T_route_sequence_of[1] = {
7433   { &hf_h245_route_item     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING_SIZE_4 },
7434 };
7435
7436 static int
7437 dissect_h245_T_route(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7438   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
7439                                       ett_h245_T_route, T_route_sequence_of);
7440
7441   return offset;
7442 }
7443
7444
7445 static const per_sequence_t T_iPSourceRouteAddress_sequence[] = {
7446   { &hf_h245_routing        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_routing },
7447   { &hf_h245_network        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING_SIZE_4 },
7448   { &hf_h245_iPSrcRoute_tsapIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
7449   { &hf_h245_route          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_route },
7450   { NULL, 0, 0, NULL }
7451 };
7452
7453 static int
7454 dissect_h245_T_iPSourceRouteAddress(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7455   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7456                                    ett_h245_T_iPSourceRouteAddress, T_iPSourceRouteAddress_sequence);
7457
7458   return offset;
7459 }
7460
7461
7462 static const value_string h245_UnicastAddress_vals[] = {
7463   {   0, "iPAddress" },
7464   {   1, "iPXAddress" },
7465   {   2, "iP6Address" },
7466   {   3, "netBios" },
7467   {   4, "iPSourceRouteAddress" },
7468   {   5, "nsap" },
7469   {   6, "nonStandardAddress" },
7470   { 0, NULL }
7471 };
7472
7473 static const per_choice_t UnicastAddress_choice[] = {
7474   {   0, &hf_h245_iPAddress      , ASN1_EXTENSION_ROOT    , dissect_h245_T_iPAddress },
7475   {   1, &hf_h245_iPXAddress     , ASN1_EXTENSION_ROOT    , dissect_h245_T_iPXAddress },
7476   {   2, &hf_h245_iP6Address     , ASN1_EXTENSION_ROOT    , dissect_h245_T_iP6Address },
7477   {   3, &hf_h245_netBios        , ASN1_EXTENSION_ROOT    , dissect_h245_OCTET_STRING_SIZE_16 },
7478   {   4, &hf_h245_iPSourceRouteAddress, ASN1_EXTENSION_ROOT    , dissect_h245_T_iPSourceRouteAddress },
7479   {   5, &hf_h245_nsap           , ASN1_NOT_EXTENSION_ROOT, dissect_h245_OCTET_STRING_SIZE_1_20 },
7480   {   6, &hf_h245_nonStandardAddress, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NonStandardParameter },
7481   { 0, NULL, 0, NULL }
7482 };
7483
7484 static int
7485 dissect_h245_UnicastAddress(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7486   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7487                                  ett_h245_UnicastAddress, UnicastAddress_choice,
7488                                  NULL);
7489
7490   return offset;
7491 }
7492
7493
7494 static const per_sequence_t MIPAddress_sequence[] = {
7495   { &hf_h245_mip4_network   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING_SIZE_4 },
7496   { &hf_h245_multicast_tsapIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
7497   { NULL, 0, 0, NULL }
7498 };
7499
7500 static int
7501 dissect_h245_MIPAddress(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7502   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7503                                    ett_h245_MIPAddress, MIPAddress_sequence);
7504
7505   return offset;
7506 }
7507
7508
7509 static const per_sequence_t MIP6Address_sequence[] = {
7510   { &hf_h245_mip6_network   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING_SIZE_16 },
7511   { &hf_h245_multicast_IPv6_tsapIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
7512   { NULL, 0, 0, NULL }
7513 };
7514
7515 static int
7516 dissect_h245_MIP6Address(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7517   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7518                                    ett_h245_MIP6Address, MIP6Address_sequence);
7519
7520   return offset;
7521 }
7522
7523
7524 static const value_string h245_MulticastAddress_vals[] = {
7525   {   0, "iPAddress" },
7526   {   1, "iP6Address" },
7527   {   2, "nsap" },
7528   {   3, "nonStandardAddress" },
7529   { 0, NULL }
7530 };
7531
7532 static const per_choice_t MulticastAddress_choice[] = {
7533   {   0, &hf_h245_mIPAddress     , ASN1_EXTENSION_ROOT    , dissect_h245_MIPAddress },
7534   {   1, &hf_h245_mIP6Address    , ASN1_EXTENSION_ROOT    , dissect_h245_MIP6Address },
7535   {   2, &hf_h245_nsap           , ASN1_NOT_EXTENSION_ROOT, dissect_h245_OCTET_STRING_SIZE_1_20 },
7536   {   3, &hf_h245_nonStandardAddress, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NonStandardParameter },
7537   { 0, NULL, 0, NULL }
7538 };
7539
7540 static int
7541 dissect_h245_MulticastAddress(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7542   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7543                                  ett_h245_MulticastAddress, MulticastAddress_choice,
7544                                  NULL);
7545
7546   return offset;
7547 }
7548
7549
7550 static const value_string h245_TransportAddress_vals[] = {
7551   {   0, "unicastAddress" },
7552   {   1, "multicastAddress" },
7553   { 0, NULL }
7554 };
7555
7556 static const per_choice_t TransportAddress_choice[] = {
7557   {   0, &hf_h245_unicastAddress , ASN1_EXTENSION_ROOT    , dissect_h245_UnicastAddress },
7558   {   1, &hf_h245_multicastAddress, ASN1_EXTENSION_ROOT    , dissect_h245_MulticastAddress },
7559   { 0, NULL, 0, NULL }
7560 };
7561
7562 static int
7563 dissect_h245_TransportAddress(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7564   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7565                                  ett_h245_TransportAddress, TransportAddress_choice,
7566                                  NULL);
7567
7568   return offset;
7569 }
7570
7571
7572
7573 static int
7574 dissect_h245_T_mediaChannel(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7575 #line 547 "h245.cnf"
7576
7577
7578         media_channel = TRUE;
7579
7580   offset = dissect_h245_TransportAddress(tvb, offset, actx, tree, hf_index);
7581
7582 #line 577 "h245.cnf"
7583
7584
7585         media_channel = FALSE;
7586
7587   return offset;
7588 }
7589
7590
7591
7592 static int
7593 dissect_h245_T_mediaControlChannel(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7594 #line 559 "h245.cnf"
7595
7596
7597         media_control_channel = TRUE;
7598
7599   offset = dissect_h245_TransportAddress(tvb, offset, actx, tree, hf_index);
7600
7601 #line 583 "h245.cnf"
7602
7603
7604         media_control_channel = FALSE;
7605
7606   return offset;
7607 }
7608
7609
7610
7611 static int
7612 dissect_h245_McuNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7613   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7614                                               0U, 192U, NULL, FALSE);
7615
7616   return offset;
7617 }
7618
7619
7620
7621 static int
7622 dissect_h245_TerminalNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7623   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7624                                               0U, 192U, NULL, FALSE);
7625
7626   return offset;
7627 }
7628
7629
7630 static const per_sequence_t TerminalLabel_sequence[] = {
7631   { &hf_h245_mcuNumber      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_McuNumber },
7632   { &hf_h245_terminalNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalNumber },
7633   { NULL, 0, 0, NULL }
7634 };
7635
7636 static int
7637 dissect_h245_TerminalLabel(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7638   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7639                                    ett_h245_TerminalLabel, TerminalLabel_sequence);
7640
7641   return offset;
7642 }
7643
7644
7645 static const value_string h245_T_mediaPacketization_vals[] = {
7646   {   0, "h261aVideoPacketization" },
7647   {   1, "rtpPayloadType" },
7648   { 0, NULL }
7649 };
7650
7651 static const per_choice_t T_mediaPacketization_choice[] = {
7652   {   0, &hf_h245_h261aVideoPacketizationFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7653   {   1, &hf_h245_rtpPayloadType , ASN1_NOT_EXTENSION_ROOT, dissect_h245_RTPPayloadType },
7654   { 0, NULL, 0, NULL }
7655 };
7656
7657 static int
7658 dissect_h245_T_mediaPacketization(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7659   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7660                                  ett_h245_T_mediaPacketization, T_mediaPacketization_choice,
7661                                  NULL);
7662
7663   return offset;
7664 }
7665
7666
7667 static const per_sequence_t H2250LogicalChannelParameters_sequence[] = {
7668   { &hf_h245_nonStandardParams, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_NonStandardParameter },
7669   { &hf_h245_sessionID_0_255, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_255 },
7670   { &hf_h245_associatedSessionID, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_255 },
7671   { &hf_h245_mediaChannel   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_mediaChannel },
7672   { &hf_h245_mediaGuaranteedDelivery, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_BOOLEAN },
7673   { &hf_h245_mediaControlChannel, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_mediaControlChannel },
7674   { &hf_h245_mediaControlGuaranteedDelivery, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_BOOLEAN },
7675   { &hf_h245_silenceSuppression, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_BOOLEAN },
7676   { &hf_h245_destination    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_TerminalLabel },
7677   { &hf_h245_dynamicRTPPayloadType, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_96_127 },
7678   { &hf_h245_mediaPacketization, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_mediaPacketization },
7679   { &hf_h245_transportCapability, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_TransportCapability },
7680   { &hf_h245_redundancyEncoding, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_RedundancyEncoding },
7681   { &hf_h245_source         , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_TerminalLabel },
7682   { NULL, 0, 0, NULL }
7683 };
7684
7685 static int
7686 dissect_h245_H2250LogicalChannelParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7687   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7688                                    ett_h245_H2250LogicalChannelParameters, H2250LogicalChannelParameters_sequence);
7689
7690   return offset;
7691 }
7692
7693
7694 static const value_string h245_OLC_forw_multiplexParameters_vals[] = {
7695   {   0, "h222LogicalChannelParameters" },
7696   {   1, "h223LogicalChannelParameters" },
7697   {   2, "v76LogicalChannelParameters" },
7698   {   3, "h2250LogicalChannelParameters" },
7699   {   4, "none" },
7700   { 0, NULL }
7701 };
7702
7703 static const per_choice_t OLC_forw_multiplexParameters_choice[] = {
7704   {   0, &hf_h245_h222LogicalChannelParameters, ASN1_EXTENSION_ROOT    , dissect_h245_H222LogicalChannelParameters },
7705   {   1, &hf_h245_olc_fw_h223_params, ASN1_EXTENSION_ROOT    , dissect_h245_OLC_fw_h223_params },
7706   {   2, &hf_h245_v76LogicalChannelParameters, ASN1_EXTENSION_ROOT    , dissect_h245_V76LogicalChannelParameters },
7707   {   3, &hf_h245_h2250LogicalChannelParameters, ASN1_NOT_EXTENSION_ROOT, dissect_h245_H2250LogicalChannelParameters },
7708   {   4, &hf_h245_none           , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
7709   { 0, NULL, 0, NULL }
7710 };
7711
7712 static int
7713 dissect_h245_OLC_forw_multiplexParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7714   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7715                                  ett_h245_OLC_forw_multiplexParameters, OLC_forw_multiplexParameters_choice,
7716                                  NULL);
7717
7718   return offset;
7719 }
7720
7721
7722 static const per_sequence_t T_forwardLogicalChannelParameters_sequence[] = {
7723   { &hf_h245_portNumber     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_65535 },
7724   { &hf_h245_dataType       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_DataType },
7725   { &hf_h245_olc_forw_multiplexParameters, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OLC_forw_multiplexParameters },
7726   { &hf_h245_forwardLogicalChannelDependency, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_LogicalChannelNumber },
7727   { &hf_h245_replacementFor , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_LogicalChannelNumber },
7728   { NULL, 0, 0, NULL }
7729 };
7730
7731 static int
7732 dissect_h245_T_forwardLogicalChannelParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7733 #line 130 "h245.cnf"
7734   h245_lc_dissector = NULL;
7735   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7736                                    ett_h245_T_forwardLogicalChannelParameters, T_forwardLogicalChannelParameters_sequence);
7737
7738   if(h223_lc_params_temp && h245_lc_dissector)
7739         h223_lc_params_temp->subdissector = h245_lc_dissector;
7740   else if(h223_lc_params_temp)
7741         h223_lc_params_temp->subdissector = data_handle;
7742
7743
7744   return offset;
7745 }
7746
7747
7748
7749 static int
7750 dissect_h245_OLC_rev_h223_params(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7751 #line 148 "h245.cnf"
7752   h223_rev_lc_params = se_alloc(sizeof(h223_lc_params));
7753   h223_rev_lc_params->al_type = al_nonStandard;
7754   h223_rev_lc_params->al_params = NULL;
7755   h223_rev_lc_params->segmentable = 0;
7756   h223_rev_lc_params->subdissector = NULL;
7757   h223_lc_params_temp = h223_rev_lc_params;
7758
7759   offset = dissect_h245_H223LogicalChannelParameters(tvb, offset, actx, tree, hf_index);
7760
7761   return offset;
7762 }
7763
7764
7765 static const value_string h245_OLC_rev_multiplexParameters_vals[] = {
7766   {   0, "h223LogicalChannelParameters" },
7767   {   1, "v76LogicalChannelParameters" },
7768   {   2, "h2250LogicalChannelParameters" },
7769   { 0, NULL }
7770 };
7771
7772 static const per_choice_t OLC_rev_multiplexParameters_choice[] = {
7773   {   0, &hf_h245_olc_rev_h223_params, ASN1_EXTENSION_ROOT    , dissect_h245_OLC_rev_h223_params },
7774   {   1, &hf_h245_v76LogicalChannelParameters, ASN1_EXTENSION_ROOT    , dissect_h245_V76LogicalChannelParameters },
7775   {   2, &hf_h245_h2250LogicalChannelParameters, ASN1_NOT_EXTENSION_ROOT, dissect_h245_H2250LogicalChannelParameters },
7776   { 0, NULL, 0, NULL }
7777 };
7778
7779 static int
7780 dissect_h245_OLC_rev_multiplexParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7781 #line 633 "h245.cnf"
7782
7783
7784         media_channel = FALSE;
7785         media_control_channel = FALSE;
7786
7787
7788   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7789                                  ett_h245_OLC_rev_multiplexParameters, OLC_rev_multiplexParameters_choice,
7790                                  NULL);
7791
7792 #line 641 "h245.cnf"
7793         
7794         if (!actx->pinfo->fd->flags.visited) {
7795                 if (codec_type && (strcmp(codec_type, "t38fax")==0)) {
7796                         if(ipv4_address!=0 && ipv4_port!=0 && t38_handle){
7797                                 address src_addr;
7798
7799                                 src_addr.type=AT_IPv4;
7800                                 src_addr.len=4;
7801                                 src_addr.data=(guint8*)&ipv4_address;
7802
7803                                 t38_add_address(actx->pinfo, &src_addr, ipv4_port, 0, "H245", actx->pinfo->fd->num);
7804                         }
7805                 } else {
7806                         if(ipv4_address!=0 && ipv4_port!=0 && rtp_handle){
7807                                 address src_addr;
7808
7809                                 src_addr.type=AT_IPv4;
7810                                 src_addr.len=4;
7811                                 src_addr.data=(guint8*)&ipv4_address;
7812
7813                                 rtp_add_address(actx->pinfo, &src_addr, ipv4_port, 0, "H245", actx->pinfo->fd->num, NULL);
7814                         }
7815                         if(rtcp_ipv4_address!=0 && rtcp_ipv4_port!=0 && rtcp_handle){
7816                                 address src_addr;
7817
7818                                 src_addr.type=AT_IPv4;
7819                                 src_addr.len=4;
7820                                 src_addr.data=(guint8*)&rtcp_ipv4_address;
7821
7822                                 rtcp_add_address(actx->pinfo, &src_addr, rtcp_ipv4_port, 0, "H245", actx->pinfo->fd->num);
7823                         }
7824                 }
7825         }
7826
7827   return offset;
7828 }
7829
7830
7831 static const per_sequence_t OLC_reverseLogicalChannelParameters_sequence[] = {
7832   { &hf_h245_dataType       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_DataType },
7833   { &hf_h245_olc_rev_multiplexParameter, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OLC_rev_multiplexParameters },
7834   { &hf_h245_reverseLogicalChannelDependency, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_LogicalChannelNumber },
7835   { &hf_h245_replacementFor , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_LogicalChannelNumber },
7836   { NULL, 0, 0, NULL }
7837 };
7838
7839 static int
7840 dissect_h245_OLC_reverseLogicalChannelParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7841   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7842                                    ett_h245_OLC_reverseLogicalChannelParameters, OLC_reverseLogicalChannelParameters_sequence);
7843
7844   return offset;
7845 }
7846
7847
7848 static const value_string h245_T_distribution_vals[] = {
7849   {   0, "unicast" },
7850   {   1, "multicast" },
7851   { 0, NULL }
7852 };
7853
7854 static const per_choice_t T_distribution_choice[] = {
7855   {   0, &hf_h245_unicast        , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7856   {   1, &hf_h245_multicast      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7857   { 0, NULL, 0, NULL }
7858 };
7859
7860 static int
7861 dissect_h245_T_distribution(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7862   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7863                                  ett_h245_T_distribution, T_distribution_choice,
7864                                  NULL);
7865
7866   return offset;
7867 }
7868
7869
7870
7871 static int
7872 dissect_h245_T_e164Address(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7873   offset = dissect_per_restricted_character_string(tvb, offset, actx, tree, hf_index,
7874                                                       1, 128, "0123456789#*,", strlen("0123456789#*,"),
7875                                                       NULL);
7876
7877   return offset;
7878 }
7879
7880
7881 static const value_string h245_T_networkAddress_vals[] = {
7882   {   0, "q2931Address" },
7883   {   1, "e164Address" },
7884   {   2, "localAreaAddress" },
7885   { 0, NULL }
7886 };
7887
7888 static const per_choice_t T_networkAddress_choice[] = {
7889   {   0, &hf_h245_q2931Address   , ASN1_EXTENSION_ROOT    , dissect_h245_Q2931Address },
7890   {   1, &hf_h245_e164Address    , ASN1_EXTENSION_ROOT    , dissect_h245_T_e164Address },
7891   {   2, &hf_h245_localAreaAddress, ASN1_EXTENSION_ROOT    , dissect_h245_TransportAddress },
7892   { 0, NULL, 0, NULL }
7893 };
7894
7895 static int
7896 dissect_h245_T_networkAddress(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7897   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7898                                  ett_h245_T_networkAddress, T_networkAddress_choice,
7899                                  NULL);
7900
7901   return offset;
7902 }
7903
7904
7905
7906 static int
7907 dissect_h245_OCTET_STRING_SIZE_1_255(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7908   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
7909                                        1, 255, NULL);
7910
7911   return offset;
7912 }
7913
7914
7915 static const value_string h245_T_t120SetupProcedure_vals[] = {
7916   {   0, "originateCall" },
7917   {   1, "waitForCall" },
7918   {   2, "issueQuery" },
7919   { 0, NULL }
7920 };
7921
7922 static const per_choice_t T_t120SetupProcedure_choice[] = {
7923   {   0, &hf_h245_originateCall  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7924   {   1, &hf_h245_waitForCall    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7925   {   2, &hf_h245_issueQuery     , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
7926   { 0, NULL, 0, NULL }
7927 };
7928
7929 static int
7930 dissect_h245_T_t120SetupProcedure(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7931   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7932                                  ett_h245_T_t120SetupProcedure, T_t120SetupProcedure_choice,
7933                                  NULL);
7934
7935   return offset;
7936 }
7937
7938
7939 static const per_sequence_t NetworkAccessParameters_sequence[] = {
7940   { &hf_h245_distribution   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_distribution },
7941   { &hf_h245_networkAddress , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_networkAddress },
7942   { &hf_h245_associateConference, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
7943   { &hf_h245_externalReference, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OCTET_STRING_SIZE_1_255 },
7944   { &hf_h245_t120SetupProcedure, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_T_t120SetupProcedure },
7945   { NULL, 0, 0, NULL }
7946 };
7947
7948 static int
7949 dissect_h245_NetworkAccessParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7950   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7951                                    ett_h245_NetworkAccessParameters, NetworkAccessParameters_sequence);
7952
7953   return offset;
7954 }
7955
7956
7957
7958 static int
7959 dissect_h245_OCTET_STRING_SIZE_1_65535(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7960   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
7961                                        1, 65535, NULL);
7962
7963   return offset;
7964 }
7965
7966
7967
7968 static int
7969 dissect_h245_BIT_STRING_SIZE_1_65535(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7970   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7971                                      1, 65535, FALSE, NULL);
7972
7973   return offset;
7974 }
7975
7976
7977 static const per_sequence_t EscrowData_sequence[] = {
7978   { &hf_h245_escrowID       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OBJECT_IDENTIFIER },
7979   { &hf_h245_escrowValue    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BIT_STRING_SIZE_1_65535 },
7980   { NULL, 0, 0, NULL }
7981 };
7982
7983 static int
7984 dissect_h245_EscrowData(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7985   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7986                                    ett_h245_EscrowData, EscrowData_sequence);
7987
7988   return offset;
7989 }
7990
7991
7992 static const per_sequence_t SEQUENCE_SIZE_1_256_OF_EscrowData_sequence_of[1] = {
7993   { &hf_h245_escrowentry_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_EscrowData },
7994 };
7995
7996 static int
7997 dissect_h245_SEQUENCE_SIZE_1_256_OF_EscrowData(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
7998   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7999                                                   ett_h245_SEQUENCE_SIZE_1_256_OF_EscrowData, SEQUENCE_SIZE_1_256_OF_EscrowData_sequence_of,
8000                                                   1, 256);
8001
8002   return offset;
8003 }
8004
8005
8006 static const per_sequence_t EncryptionSync_sequence[] = {
8007   { &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_NonStandardParameter },
8008   { &hf_h245_synchFlag      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_255 },
8009   { &hf_h245_h235Key        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING_SIZE_1_65535 },
8010   { &hf_h245_escrowentry    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_SIZE_1_256_OF_EscrowData },
8011   { &hf_h245_genericParameter, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_GenericParameter },
8012   { NULL, 0, 0, NULL }
8013 };
8014
8015 static int
8016 dissect_h245_EncryptionSync(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8017   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8018                                    ett_h245_EncryptionSync, EncryptionSync_sequence);
8019
8020   return offset;
8021 }
8022
8023
8024 static const per_sequence_t OpenLogicalChannel_sequence[] = {
8025   { &hf_h245_olc_fw_lcn     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OLC_fw_lcn },
8026   { &hf_h245_forwardLogicalChannelParameters, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_forwardLogicalChannelParameters },
8027   { &hf_h245_reverseLogicalChannelParameters, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OLC_reverseLogicalChannelParameters },
8028   { &hf_h245_separateStack  , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_NetworkAccessParameters },
8029   { &hf_h245_encryptionSync , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_EncryptionSync },
8030   { &hf_h245_genericInformation, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_GenericInformation },
8031   { NULL, 0, 0, NULL }
8032 };
8033
8034 int
8035 dissect_h245_OpenLogicalChannel(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8036 #line 101 "h245.cnf"
8037   gint32 temp;
8038
8039   h223_fw_lc_num = 0;
8040   h223_lc_params_temp = NULL;
8041
8042   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8043                                    ett_h245_OpenLogicalChannel, OpenLogicalChannel_sequence);
8044
8045   if(h223_fw_lc_num != 0 && h223_fw_lc_params) {
8046         h223_pending_olc *pending = se_alloc(sizeof(h223_pending_olc));
8047         pending->fw_channel_params = h223_fw_lc_params;
8048         pending->rev_channel_params = h223_rev_lc_params;
8049         temp = h223_fw_lc_num;
8050         if (actx->pinfo->p2p_dir > -1)
8051                 g_hash_table_insert(h223_pending_olc_reqs[actx->pinfo->p2p_dir], GINT_TO_POINTER(temp), pending);
8052   }
8053
8054
8055 #line 491 "h245.cnf"
8056
8057   if (h245_pi != NULL) h245_pi->msg_type = H245_OpenLogChn;
8058
8059   return offset;
8060 }
8061
8062
8063 static const value_string h245_T_cLC_source_vals[] = {
8064   {   0, "user" },
8065   {   1, "lcse" },
8066   { 0, NULL }
8067 };
8068
8069 static const per_choice_t T_cLC_source_choice[] = {
8070   {   0, &hf_h245_user           , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8071   {   1, &hf_h245_lcse           , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8072   { 0, NULL, 0, NULL }
8073 };
8074
8075 static int
8076 dissect_h245_T_cLC_source(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8077   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8078                                  ett_h245_T_cLC_source, T_cLC_source_choice,
8079                                  NULL);
8080
8081   return offset;
8082 }
8083
8084
8085 static const value_string h245_Clc_reason_vals[] = {
8086   {   0, "unknown" },
8087   {   1, "reopen" },
8088   {   2, "reservationFailure" },
8089   { 0, NULL }
8090 };
8091
8092 static const per_choice_t Clc_reason_choice[] = {
8093   {   0, &hf_h245_unknown        , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8094   {   1, &hf_h245_reopen         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8095   {   2, &hf_h245_reservationFailure, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8096   { 0, NULL, 0, NULL }
8097 };
8098
8099 static int
8100 dissect_h245_Clc_reason(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8101   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8102                                  ett_h245_Clc_reason, Clc_reason_choice,
8103                                  NULL);
8104
8105   return offset;
8106 }
8107
8108
8109 static const per_sequence_t CloseLogicalChannel_sequence[] = {
8110   { &hf_h245_forwardLogicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
8111   { &hf_h245_cLC_source     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_cLC_source },
8112   { &hf_h245_clc_reason     , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_Clc_reason },
8113   { NULL, 0, 0, NULL }
8114 };
8115
8116 static int
8117 dissect_h245_CloseLogicalChannel(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8118   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8119                                    ett_h245_CloseLogicalChannel, CloseLogicalChannel_sequence);
8120
8121 #line 445 "h245.cnf"
8122
8123   h245_pi->msg_type = H245_CloseLogChn;
8124
8125   return offset;
8126 }
8127
8128
8129 static const value_string h245_T_reason_vals[] = {
8130   {   0, "unknown" },
8131   {   1, "normal" },
8132   {   2, "reopen" },
8133   {   3, "reservationFailure" },
8134   { 0, NULL }
8135 };
8136
8137 static const per_choice_t T_reason_choice[] = {
8138   {   0, &hf_h245_unknown        , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8139   {   1, &hf_h245_normal         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8140   {   2, &hf_h245_reopen         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8141   {   3, &hf_h245_reservationFailure, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8142   { 0, NULL, 0, NULL }
8143 };
8144
8145 static int
8146 dissect_h245_T_reason(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8147   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8148                                  ett_h245_T_reason, T_reason_choice,
8149                                  NULL);
8150
8151   return offset;
8152 }
8153
8154
8155 static const per_sequence_t RequestChannelClose_sequence[] = {
8156   { &hf_h245_forwardLogicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
8157   { &hf_h245_qosCapability  , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_QOSCapability },
8158   { &hf_h245_reason         , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_T_reason },
8159   { NULL, 0, 0, NULL }
8160 };
8161
8162 static int
8163 dissect_h245_RequestChannelClose(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8164   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8165                                    ett_h245_RequestChannelClose, RequestChannelClose_sequence);
8166
8167   return offset;
8168 }
8169
8170
8171
8172 static int
8173 dissect_h245_MultiplexTableEntryNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8174 #line 45 "h245.cnf"
8175   guint32 value;
8176   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
8177                                               1U, 15U, &value, FALSE);
8178
8179   h223_mc = value & 0xf;
8180
8181
8182   return offset;
8183 }
8184
8185
8186
8187 static int
8188 dissect_h245_T_logicalChannelNum(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8189 #line 71 "h245.cnf"
8190   /*MultiplexElement/type/logicalChannelNumber*/
8191   guint32 value;
8192   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
8193                                               0U, 65535U, &value, FALSE);
8194
8195   h223_me->sublist = NULL;
8196   h223_me->vc = value & 0xffff;
8197
8198
8199   return offset;
8200 }
8201
8202
8203 static const per_sequence_t T_subElementList_sequence_of[1] = {
8204   { &hf_h245_subElementList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_MultiplexElement },
8205 };
8206
8207 static int
8208 dissect_h245_T_subElementList(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8209 #line 79 "h245.cnf"
8210   h223_mux_element dummy_me, *parent_me = h223_me;
8211   h223_me = &dummy_me;
8212   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
8213                                                   ett_h245_T_subElementList, T_subElementList_sequence_of,
8214                                                   2, 255);
8215
8216   parent_me->sublist = dummy_me.next;
8217   h223_me = parent_me;
8218   h223_me->vc = 0;
8219
8220
8221   return offset;
8222 }
8223
8224
8225 static const value_string h245_Me_type_vals[] = {
8226   {   0, "logicalChannelNumber" },
8227   {   1, "subElementList" },
8228   { 0, NULL }
8229 };
8230
8231 static const per_choice_t Me_type_choice[] = {
8232   {   0, &hf_h245_logicalChannelNum, ASN1_NO_EXTENSIONS     , dissect_h245_T_logicalChannelNum },
8233   {   1, &hf_h245_subElementList , ASN1_NO_EXTENSIONS     , dissect_h245_T_subElementList },
8234   { 0, NULL, 0, NULL }
8235 };
8236
8237 static int
8238 dissect_h245_Me_type(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8239   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8240                                  ett_h245_Me_type, Me_type_choice,
8241                                  NULL);
8242
8243   return offset;
8244 }
8245
8246
8247
8248 static int
8249 dissect_h245_ME_finiteRepeatCount(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8250 #line 94 "h245.cnf"
8251   guint32 value;
8252   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
8253                                               1U, 65535U, &value, FALSE);
8254
8255   h223_me->repeat_count = value & 0xffff;
8256
8257
8258   return offset;
8259 }
8260
8261
8262
8263 static int
8264 dissect_h245_T_untilClosingFlag(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8265   offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
8266
8267 #line 88 "h245.cnf"
8268   h223_me->repeat_count = 0;
8269
8270   return offset;
8271 }
8272
8273
8274 static const value_string h245_ME_repeatCount_vals[] = {
8275   {   0, "finite" },
8276   {   1, "untilClosingFlag" },
8277   { 0, NULL }
8278 };
8279
8280 static const per_choice_t ME_repeatCount_choice[] = {
8281   {   0, &hf_h245_me_repeatCount_finite, ASN1_NO_EXTENSIONS     , dissect_h245_ME_finiteRepeatCount },
8282   {   1, &hf_h245_untilClosingFlag, ASN1_NO_EXTENSIONS     , dissect_h245_T_untilClosingFlag },
8283   { 0, NULL, 0, NULL }
8284 };
8285
8286 static int
8287 dissect_h245_ME_repeatCount(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8288   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8289                                  ett_h245_ME_repeatCount, ME_repeatCount_choice,
8290                                  NULL);
8291
8292   return offset;
8293 }
8294
8295
8296 static const per_sequence_t MultiplexElement_sequence[] = {
8297   { &hf_h245_me_type        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_Me_type },
8298   { &hf_h245_me_repeatCount , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_ME_repeatCount },
8299   { NULL, 0, 0, NULL }
8300 };
8301
8302 static int
8303 dissect_h245_MultiplexElement(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8304 #line 61 "h245.cnf"
8305   /*MultiplexElement*/
8306   h223_mux_element* me = se_alloc(sizeof(h223_mux_element));
8307   h223_me->next = me;
8308   h223_me = me;
8309   h223_me->next = NULL;
8310
8311   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8312                                    ett_h245_MultiplexElement, MultiplexElement_sequence);
8313
8314   return offset;
8315 }
8316
8317
8318 static const per_sequence_t T_elementList_sequence_of[1] = {
8319   { &hf_h245_elementList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_MultiplexElement },
8320 };
8321
8322 static int
8323 dissect_h245_T_elementList(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8324 #line 51 "h245.cnf"
8325   /* create a h223_mux_element to hold onto the head of the list, since
8326    * h223_me will track the tail */
8327   h223_mux_element dummy_me;
8328   h223_me = &dummy_me;
8329   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
8330                                                   ett_h245_T_elementList, T_elementList_sequence_of,
8331                                                   1, 256);
8332
8333   /* set h223_me to the head of the list for MEDescriptor to pick up */
8334   h223_me = dummy_me.next;
8335
8336
8337   return offset;
8338 }
8339
8340
8341 static const per_sequence_t MultiplexEntryDescriptor_sequence[] = {
8342   { &hf_h245_multiplexTableEntryNumber, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_MultiplexTableEntryNumber },
8343   { &hf_h245_elementList    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_h245_T_elementList },
8344   { NULL, 0, 0, NULL }
8345 };
8346
8347 static int
8348 dissect_h245_MultiplexEntryDescriptor(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8349 #line 33 "h245.cnf"
8350   /*MultiplexEntryDescriptor*/
8351   h223_me = NULL;
8352   h223_mc = 0;
8353   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8354                                    ett_h245_MultiplexEntryDescriptor, MultiplexEntryDescriptor_sequence);
8355
8356   if(h223_set_mc_handle)
8357     (*h223_set_mc_handle)(actx->pinfo, h223_mc, h223_me);
8358  /* stuff */
8359
8360
8361   return offset;
8362 }
8363
8364
8365 static const per_sequence_t SET_SIZE_1_15_OF_MultiplexEntryDescriptor_set_of[1] = {
8366   { &hf_h245_multiplexEntryDescriptors_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_MultiplexEntryDescriptor },
8367 };
8368
8369 static int
8370 dissect_h245_SET_SIZE_1_15_OF_MultiplexEntryDescriptor(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8371   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
8372                                              ett_h245_SET_SIZE_1_15_OF_MultiplexEntryDescriptor, SET_SIZE_1_15_OF_MultiplexEntryDescriptor_set_of,
8373                                              1, 15);
8374
8375   return offset;
8376 }
8377
8378
8379 static const per_sequence_t MultiplexEntrySend_sequence[] = {
8380   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
8381   { &hf_h245_multiplexEntryDescriptors, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_15_OF_MultiplexEntryDescriptor },
8382   { NULL, 0, 0, NULL }
8383 };
8384
8385 static int
8386 dissect_h245_MultiplexEntrySend(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8387   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8388                                    ett_h245_MultiplexEntrySend, MultiplexEntrySend_sequence);
8389
8390   return offset;
8391 }
8392
8393
8394 static const per_sequence_t SET_SIZE_1_15_OF_MultiplexTableEntryNumber_set_of[1] = {
8395   { &hf_h245_multiplexTableEntryNumbers_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_MultiplexTableEntryNumber },
8396 };
8397
8398 static int
8399 dissect_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8400   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
8401                                              ett_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber, SET_SIZE_1_15_OF_MultiplexTableEntryNumber_set_of,
8402                                              1, 15);
8403
8404   return offset;
8405 }
8406
8407
8408 static const per_sequence_t RequestMultiplexEntry_sequence[] = {
8409   { &hf_h245_entryNumbers   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber },
8410   { NULL, 0, 0, NULL }
8411 };
8412
8413 static int
8414 dissect_h245_RequestMultiplexEntry(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8415   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8416                                    ett_h245_RequestMultiplexEntry, RequestMultiplexEntry_sequence);
8417
8418   return offset;
8419 }
8420
8421
8422 static const value_string h245_H261Resolution_vals[] = {
8423   {   0, "qcif" },
8424   {   1, "cif" },
8425   { 0, NULL }
8426 };
8427
8428 static const per_choice_t H261Resolution_choice[] = {
8429   {   0, &hf_h245_qcif           , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8430   {   1, &hf_h245_cif            , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8431   { 0, NULL, 0, NULL }
8432 };
8433
8434 static int
8435 dissect_h245_H261Resolution(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8436   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8437                                  ett_h245_H261Resolution, H261Resolution_choice,
8438                                  NULL);
8439
8440   return offset;
8441 }
8442
8443
8444 static const per_sequence_t H261VideoMode_sequence[] = {
8445   { &hf_h245_h261_resolution, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_H261Resolution },
8446   { &hf_h245_bitRate_1_19200, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_19200 },
8447   { &hf_h245_stillImageTransmission, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
8448   { NULL, 0, 0, NULL }
8449 };
8450
8451 static int
8452 dissect_h245_H261VideoMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8453   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8454                                    ett_h245_H261VideoMode, H261VideoMode_sequence);
8455
8456   return offset;
8457 }
8458
8459
8460 static const value_string h245_T_profileAndLevel_vals[] = {
8461   {   0, "profileAndLevel-SPatML" },
8462   {   1, "profileAndLevel-MPatLL" },
8463   {   2, "profileAndLevel-MPatML" },
8464   {   3, "profileAndLevel-MPatH-14" },
8465   {   4, "profileAndLevel-MPatHL" },
8466   {   5, "profileAndLevel-SNRatLL" },
8467   {   6, "profileAndLevel-SNRatML" },
8468   {   7, "profileAndLevel-SpatialatH-14" },
8469   {   8, "profileAndLevel-HPatML" },
8470   {   9, "profileAndLevel-HPatH-14" },
8471   {  10, "profileAndLevel-HPatHL" },
8472   { 0, NULL }
8473 };
8474
8475 static const per_choice_t T_profileAndLevel_choice[] = {
8476   {   0, &hf_h245_profileAndLevel_SPatMLMode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8477   {   1, &hf_h245_profileAndLevel_MPatLLMode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8478   {   2, &hf_h245_profileAndLevel_MPatMLMode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8479   {   3, &hf_h245_profileAndLevel_MPatH_14Mode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8480   {   4, &hf_h245_profileAndLevel_MPatHLMode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8481   {   5, &hf_h245_profileAndLevel_SNRatLLMode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8482   {   6, &hf_h245_profileAndLevel_SNRatMLMode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8483   {   7, &hf_h245_profileAndLevel_SpatialatH_14Mode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8484   {   8, &hf_h245_profileAndLevel_HPatMLMode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8485   {   9, &hf_h245_profileAndLevel_HPatH_14Mode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8486   {  10, &hf_h245_profileAndLevel_HPatHLMode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8487   { 0, NULL, 0, NULL }
8488 };
8489
8490 static int
8491 dissect_h245_T_profileAndLevel(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8492   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8493                                  ett_h245_T_profileAndLevel, T_profileAndLevel_choice,
8494                                  NULL);
8495
8496   return offset;
8497 }
8498
8499
8500 static const per_sequence_t H262VideoMode_sequence[] = {
8501   { &hf_h245_profileAndLevel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_profileAndLevel },
8502   { &hf_h245_videoBitRate   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_1073741823 },
8503   { &hf_h245_vbvBufferSize  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_262143 },
8504   { &hf_h245_samplesPerLine , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_16383 },
8505   { &hf_h245_linesPerFrame  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_16383 },
8506   { &hf_h245_framesPerSecond, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_15 },
8507   { &hf_h245_luminanceSampleRate, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_4294967295 },
8508   { NULL, 0, 0, NULL }
8509 };
8510
8511 static int
8512 dissect_h245_H262VideoMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8513   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8514                                    ett_h245_H262VideoMode, H262VideoMode_sequence);
8515
8516   return offset;
8517 }
8518
8519
8520 static const value_string h245_H263Resolution_vals[] = {
8521   {   0, "sqcif" },
8522   {   1, "qcif" },
8523   {   2, "cif" },
8524   {   3, "cif4" },
8525   {   4, "cif16" },
8526   {   5, "custom" },
8527   { 0, NULL }
8528 };
8529
8530 static const per_choice_t H263Resolution_choice[] = {
8531   {   0, &hf_h245_sqcif          , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8532   {   1, &hf_h245_qcif           , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8533   {   2, &hf_h245_cif            , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8534   {   3, &hf_h245_cif4           , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8535   {   4, &hf_h245_cif16          , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8536   {   5, &hf_h245_custom_res     , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
8537   { 0, NULL, 0, NULL }
8538 };
8539
8540 static int
8541 dissect_h245_H263Resolution(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8542   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8543                                  ett_h245_H263Resolution, H263Resolution_choice,
8544                                  NULL);
8545
8546   return offset;
8547 }
8548
8549
8550 static const per_sequence_t H263VideoMode_sequence[] = {
8551   { &hf_h245_h263_resolution, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_H263Resolution },
8552   { &hf_h245_bitRate_1_19200, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_19200 },
8553   { &hf_h245_unrestrictedVector, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
8554   { &hf_h245_arithmeticCoding, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
8555   { &hf_h245_advancedPrediction, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
8556   { &hf_h245_pbFrames       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
8557   { &hf_h245_errorCompensation, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
8558   { &hf_h245_enhancementLayerInfo, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_EnhancementLayerInfo },
8559   { &hf_h245_h263Options    , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_H263Options },
8560   { NULL, 0, 0, NULL }
8561 };
8562
8563 static int
8564 dissect_h245_H263VideoMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8565   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8566                                    ett_h245_H263VideoMode, H263VideoMode_sequence);
8567
8568   return offset;
8569 }
8570
8571
8572 static const per_sequence_t IS11172VideoMode_sequence[] = {
8573   { &hf_h245_constrainedBitstream, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
8574   { &hf_h245_videoBitRate   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_1073741823 },
8575   { &hf_h245_vbvBufferSize  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_262143 },
8576   { &hf_h245_samplesPerLine , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_16383 },
8577   { &hf_h245_linesPerFrame  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_16383 },
8578   { &hf_h245_pictureRate    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_15 },
8579   { &hf_h245_luminanceSampleRate, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_4294967295 },
8580   { NULL, 0, 0, NULL }
8581 };
8582
8583 static int
8584 dissect_h245_IS11172VideoMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8585   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8586                                    ett_h245_IS11172VideoMode, IS11172VideoMode_sequence);
8587
8588   return offset;
8589 }
8590
8591
8592 static const value_string h245_VideoMode_vals[] = {
8593   {   0, "nonStandard" },
8594   {   1, "h261VideoMode" },
8595   {   2, "h262VideoMode" },
8596   {   3, "h263VideoMode" },
8597   {   4, "is11172VideoMode" },
8598   {   5, "genericVideoMode" },
8599   { 0, NULL }
8600 };
8601
8602 static const per_choice_t VideoMode_choice[] = {
8603   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
8604   {   1, &hf_h245_h261VideoMode  , ASN1_EXTENSION_ROOT    , dissect_h245_H261VideoMode },
8605   {   2, &hf_h245_h262VideoMode  , ASN1_EXTENSION_ROOT    , dissect_h245_H262VideoMode },
8606   {   3, &hf_h245_h263VideoMode  , ASN1_EXTENSION_ROOT    , dissect_h245_H263VideoMode },
8607   {   4, &hf_h245_is11172VideoMode, ASN1_EXTENSION_ROOT    , dissect_h245_IS11172VideoMode },
8608   {   5, &hf_h245_genericVideoMode, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericCapability },
8609   { 0, NULL, 0, NULL }
8610 };
8611
8612 static int
8613 dissect_h245_VideoMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8614 #line 414 "h245.cnf"
8615   guint32 value;
8616
8617   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8618                                  ett_h245_VideoMode, VideoMode_choice,
8619                                  &value);
8620
8621   codec_type = val_to_str(value, h245_VideoMode_vals, "<unknown>");
8622                 if (h245_pi != NULL) g_snprintf(h245_pi->frame_label, 50, "%s %s", h245_pi->frame_label, val_to_str(value, h245_VideoMode_vals, "ukn"));
8623
8624
8625   return offset;
8626 }
8627
8628
8629 static const value_string h245_Mode_g7231_vals[] = {
8630   {   0, "noSilenceSuppressionLowRate" },
8631   {   1, "noSilenceSuppressionHighRate" },
8632   {   2, "silenceSuppressionLowRate" },
8633   {   3, "silenceSuppressionHighRate" },
8634   { 0, NULL }
8635 };
8636
8637 static const per_choice_t Mode_g7231_choice[] = {
8638   {   0, &hf_h245_noSilenceSuppressionLowRate, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8639   {   1, &hf_h245_noSilenceSuppressionHighRate, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8640   {   2, &hf_h245_silenceSuppressionLowRate, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8641   {   3, &hf_h245_silenceSuppressionHighRate, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8642   { 0, NULL, 0, NULL }
8643 };
8644
8645 static int
8646 dissect_h245_Mode_g7231(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8647   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8648                                  ett_h245_Mode_g7231, Mode_g7231_choice,
8649                                  NULL);
8650
8651   return offset;
8652 }
8653
8654
8655 static const value_string h245_T_audioLayer_vals[] = {
8656   {   0, "audioLayer1" },
8657   {   1, "audioLayer2" },
8658   {   2, "audioLayer3" },
8659   { 0, NULL }
8660 };
8661
8662 static const per_choice_t T_audioLayer_choice[] = {
8663   {   0, &hf_h245_audioLayer1Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8664   {   1, &hf_h245_audioLayer2Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8665   {   2, &hf_h245_audioLayer3Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8666   { 0, NULL, 0, NULL }
8667 };
8668
8669 static int
8670 dissect_h245_T_audioLayer(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8671   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8672                                  ett_h245_T_audioLayer, T_audioLayer_choice,
8673                                  NULL);
8674
8675   return offset;
8676 }
8677
8678
8679 static const value_string h245_T_audioSampling_vals[] = {
8680   {   0, "audioSampling32k" },
8681   {   1, "audioSampling44k1" },
8682   {   2, "audioSampling48k" },
8683   { 0, NULL }
8684 };
8685
8686 static const per_choice_t T_audioSampling_choice[] = {
8687   {   0, &hf_h245_audioSampling32kMode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8688   {   1, &hf_h245_audioSampling44k1Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8689   {   2, &hf_h245_audioSampling48kMode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8690   { 0, NULL, 0, NULL }
8691 };
8692
8693 static int
8694 dissect_h245_T_audioSampling(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8695   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8696                                  ett_h245_T_audioSampling, T_audioSampling_choice,
8697                                  NULL);
8698
8699   return offset;
8700 }
8701
8702
8703 static const value_string h245_IS11172_multichannelType_vals[] = {
8704   {   0, "singleChannel" },
8705   {   1, "twoChannelStereo" },
8706   {   2, "twoChannelDual" },
8707   { 0, NULL }
8708 };
8709
8710 static const per_choice_t IS11172_multichannelType_choice[] = {
8711   {   0, &hf_h245_singleChannelMode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8712   {   1, &hf_h245_twoChannelStereo, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8713   {   2, &hf_h245_twoChannelDual , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8714   { 0, NULL, 0, NULL }
8715 };
8716
8717 static int
8718 dissect_h245_IS11172_multichannelType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8719   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8720                                  ett_h245_IS11172_multichannelType, IS11172_multichannelType_choice,
8721                                  NULL);
8722
8723   return offset;
8724 }
8725
8726
8727 static const per_sequence_t IS11172AudioMode_sequence[] = {
8728   { &hf_h245_audioLayer     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_audioLayer },
8729   { &hf_h245_audioSampling  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_audioSampling },
8730   { &hf_h245_is11172multichannelType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_IS11172_multichannelType },
8731   { &hf_h245_bitRate_1_448  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_448 },
8732   { NULL, 0, 0, NULL }
8733 };
8734
8735 static int
8736 dissect_h245_IS11172AudioMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8737   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8738                                    ett_h245_IS11172AudioMode, IS11172AudioMode_sequence);
8739
8740   return offset;
8741 }
8742
8743
8744 static const value_string h245_IS13818AudioLayer_vals[] = {
8745   {   0, "audioLayer1" },
8746   {   1, "audioLayer2" },
8747   {   2, "audioLayer3" },
8748   { 0, NULL }
8749 };
8750
8751 static const per_choice_t IS13818AudioLayer_choice[] = {
8752   {   0, &hf_h245_audioLayer1Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8753   {   1, &hf_h245_audioLayer2Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8754   {   2, &hf_h245_audioLayer3Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8755   { 0, NULL, 0, NULL }
8756 };
8757
8758 static int
8759 dissect_h245_IS13818AudioLayer(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8760   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8761                                  ett_h245_IS13818AudioLayer, IS13818AudioLayer_choice,
8762                                  NULL);
8763
8764   return offset;
8765 }
8766
8767
8768 static const value_string h245_IS13818AudioSampling_vals[] = {
8769   {   0, "audioSampling16k" },
8770   {   1, "audioSampling22k05" },
8771   {   2, "audioSampling24k" },
8772   {   3, "audioSampling32k" },
8773   {   4, "audioSampling44k1" },
8774   {   5, "audioSampling48k" },
8775   { 0, NULL }
8776 };
8777
8778 static const per_choice_t IS13818AudioSampling_choice[] = {
8779   {   0, &hf_h245_audioSampling16kMode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8780   {   1, &hf_h245_audioSampling22k05Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8781   {   2, &hf_h245_audioSampling24kMode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8782   {   3, &hf_h245_audioSampling32kMode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8783   {   4, &hf_h245_audioSampling44k1Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8784   {   5, &hf_h245_audioSampling48kMode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8785   { 0, NULL, 0, NULL }
8786 };
8787
8788 static int
8789 dissect_h245_IS13818AudioSampling(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8790   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8791                                  ett_h245_IS13818AudioSampling, IS13818AudioSampling_choice,
8792                                  NULL);
8793
8794   return offset;
8795 }
8796
8797
8798 static const value_string h245_IS13818MultichannelType_vals[] = {
8799   {   0, "singleChannel" },
8800   {   1, "twoChannelStereo" },
8801   {   2, "twoChannelDual" },
8802   {   3, "threeChannels2-1" },
8803   {   4, "threeChannels3-0" },
8804   {   5, "fourChannels2-0-2-0" },
8805   {   6, "fourChannels2-2" },
8806   {   7, "fourChannels3-1" },
8807   {   8, "fiveChannels3-0-2-0" },
8808   {   9, "fiveChannels3-2" },
8809   { 0, NULL }
8810 };
8811
8812 static const per_choice_t IS13818MultichannelType_choice[] = {
8813   {   0, &hf_h245_singleChannelMode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8814   {   1, &hf_h245_twoChannelStereo, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8815   {   2, &hf_h245_twoChannelDual , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8816   {   3, &hf_h245_threeChannels2_1Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8817   {   4, &hf_h245_threeChannels3_0Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8818   {   5, &hf_h245_fourChannels2_0_2_0Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8819   {   6, &hf_h245_fourChannels2_2Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8820   {   7, &hf_h245_fourChannels3_1Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8821   {   8, &hf_h245_fiveChannels3_0_2_0Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8822   {   9, &hf_h245_fiveChannels3_2Mode, ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
8823   { 0, NULL, 0, NULL }
8824 };
8825
8826 static int
8827 dissect_h245_IS13818MultichannelType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8828   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8829                                  ett_h245_IS13818MultichannelType, IS13818MultichannelType_choice,
8830                                  NULL);
8831
8832   return offset;
8833 }
8834
8835
8836 static const per_sequence_t IS13818AudioMode_sequence[] = {
8837   { &hf_h245_audioLayerMode , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_IS13818AudioLayer },
8838   { &hf_h245_audioSamplingMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_IS13818AudioSampling },
8839   { &hf_h245_is13818MultichannelType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_IS13818MultichannelType },
8840   { &hf_h245_lowFrequencyEnhancement, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
8841   { &hf_h245_multilingual   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
8842   { &hf_h245_bitRate2_1_1130, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_1130 },
8843   { NULL, 0, 0, NULL }
8844 };
8845
8846 static int
8847 dissect_h245_IS13818AudioMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8848   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8849                                    ett_h245_IS13818AudioMode, IS13818AudioMode_sequence);
8850
8851   return offset;
8852 }
8853
8854
8855 static const per_sequence_t G7231AnnexCMode_sequence[] = {
8856   { &hf_h245_maxAl_sduAudioFrames, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_256 },
8857   { &hf_h245_silenceSuppression, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
8858   { &hf_h245_g723AnnexCAudioMode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_G723AnnexCAudioMode },
8859   { NULL, 0, 0, NULL }
8860 };
8861
8862 static int
8863 dissect_h245_G7231AnnexCMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8864   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8865                                    ett_h245_G7231AnnexCMode, G7231AnnexCMode_sequence);
8866
8867   return offset;
8868 }
8869
8870
8871 static const per_sequence_t VBDMode_sequence[] = {
8872   { &hf_h245_vbd_type       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_AudioMode },
8873   { NULL, 0, 0, NULL }
8874 };
8875
8876 static int
8877 dissect_h245_VBDMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8878   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8879                                    ett_h245_VBDMode, VBDMode_sequence);
8880
8881   return offset;
8882 }
8883
8884
8885 static const value_string h245_AudioMode_vals[] = {
8886   {   0, "nonStandard" },
8887   {   1, "g711Alaw64k" },
8888   {   2, "g711Alaw56k" },
8889   {   3, "g711Ulaw64k" },
8890   {   4, "g711Ulaw56k" },
8891   {   5, "g722-64k" },
8892   {   6, "g722-56k" },
8893   {   7, "g722-48k" },
8894   {   8, "g728" },
8895   {   9, "g729" },
8896   {  10, "g729AnnexA" },
8897   {  11, "g7231" },
8898   {  12, "is11172AudioMode" },
8899   {  13, "is13818AudioMode" },
8900   {  14, "g729wAnnexB" },
8901   {  15, "g729AnnexAwAnnexB" },
8902   {  16, "g7231AnnexCMode" },
8903   {  17, "gsmFullRate" },
8904   {  18, "gsmHalfRate" },
8905   {  19, "gsmEnhancedFullRate" },
8906   {  20, "genericAudioMode" },
8907   {  21, "g729Extensions" },
8908   {  22, "vbd" },
8909   { 0, NULL }
8910 };
8911
8912 static const per_choice_t AudioMode_choice[] = {
8913   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
8914   {   1, &hf_h245_g711Alaw64k_mode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8915   {   2, &hf_h245_g711Alaw56k_mode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8916   {   3, &hf_h245_g711Ulaw64k_mode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8917   {   4, &hf_h245_g711Ulaw56k_mode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8918   {   5, &hf_h245_g722_64k_mode  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8919   {   6, &hf_h245_g722_56k_mode  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8920   {   7, &hf_h245_g722_48k_mode  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8921   {   8, &hf_h245_g728_mode      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8922   {   9, &hf_h245_g729_mode      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8923   {  10, &hf_h245_g729AnnexA_mode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8924   {  11, &hf_h245_g7231_mode     , ASN1_EXTENSION_ROOT    , dissect_h245_Mode_g7231 },
8925   {  12, &hf_h245_is11172AudioMode, ASN1_EXTENSION_ROOT    , dissect_h245_IS11172AudioMode },
8926   {  13, &hf_h245_is13818AudioMode, ASN1_EXTENSION_ROOT    , dissect_h245_IS13818AudioMode },
8927   {  14, &hf_h245_g729wAnnexB    , ASN1_NOT_EXTENSION_ROOT, dissect_h245_INTEGER_1_256 },
8928   {  15, &hf_h245_g729AnnexAwAnnexB, ASN1_NOT_EXTENSION_ROOT, dissect_h245_INTEGER_1_256 },
8929   {  16, &hf_h245_g7231AnnexCMode, ASN1_NOT_EXTENSION_ROOT, dissect_h245_G7231AnnexCMode },
8930   {  17, &hf_h245_gsmFullRate    , ASN1_NOT_EXTENSION_ROOT, dissect_h245_GSMAudioCapability },
8931   {  18, &hf_h245_gsmHalfRate    , ASN1_NOT_EXTENSION_ROOT, dissect_h245_GSMAudioCapability },
8932   {  19, &hf_h245_gsmEnhancedFullRate, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GSMAudioCapability },
8933   {  20, &hf_h245_genericAudioMode, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericCapability },
8934   {  21, &hf_h245_g729Extensions , ASN1_NOT_EXTENSION_ROOT, dissect_h245_G729Extensions },
8935   {  22, &hf_h245_vbd_mode       , ASN1_NOT_EXTENSION_ROOT, dissect_h245_VBDMode },
8936   { 0, NULL, 0, NULL }
8937 };
8938
8939 static int
8940 dissect_h245_AudioMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8941 #line 406 "h245.cnf"
8942   guint32 value;
8943
8944   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8945                                  ett_h245_AudioMode, AudioMode_choice,
8946                                  &value);
8947
8948   codec_type = val_to_str(value, h245_AudioMode_vals, "<unknown>");
8949                 if (h245_pi != NULL) g_snprintf(h245_pi->frame_label, 50, "%s %s", h245_pi->frame_label, val_to_str(value, h245_AudioMode_vals, "ukn"));
8950
8951
8952   return offset;
8953 }
8954
8955
8956 static const per_sequence_t T38faxApp_sequence[] = {
8957   { &hf_h245_t38FaxProtocol , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_DataProtocolCapability },
8958   { &hf_h245_t38FaxProfile  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_T38FaxProfile },
8959   { NULL, 0, 0, NULL }
8960 };
8961
8962 static int
8963 dissect_h245_T38faxApp(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
8964   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8965                                    ett_h245_T38faxApp, T38faxApp_sequence);
8966
8967   return offset;
8968 }
8969
8970
8971 static const value_string h245_DataModeApplication_vals[] = {
8972   {   0, "nonStandard" },
8973   {   1, "t120" },
8974   {   2, "dsm-cc" },
8975   {   3, "userData" },
8976   {   4, "t84" },
8977   {   5, "t434" },
8978   {   6, "h224" },
8979   {   7, "nlpid" },
8980   {   8, "dsvdControl" },
8981   {   9, "h222DataPartitioning" },
8982   {  10, "t30fax" },
8983   {  11, "t140" },
8984   {  12, "t38fax" },
8985   {  13, "genericDataMode" },
8986   { 0, NULL }
8987 };
8988
8989 static const per_choice_t DataModeApplication_choice[] = {
8990   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
8991   {   1, &hf_h245_t120           , ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
8992   {   2, &hf_h245_dsm_cc         , ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
8993   {   3, &hf_h245_userData       , ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
8994   {   4, &hf_h245_t84DataProtocolCapability, ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
8995   {   5, &hf_h245_t434           , ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
8996   {   6, &hf_h245_h224           , ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
8997   {   7, &hf_h245_nlpid          , ASN1_EXTENSION_ROOT    , dissect_h245_Nlpid },
8998   {   8, &hf_h245_dsvdControl    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
8999   {   9, &hf_h245_h222DataPartitioning, ASN1_EXTENSION_ROOT    , dissect_h245_DataProtocolCapability },
9000   {  10, &hf_h245_t30fax         , ASN1_NOT_EXTENSION_ROOT, dissect_h245_DataProtocolCapability },
9001   {  11, &hf_h245_t140           , ASN1_NOT_EXTENSION_ROOT, dissect_h245_DataProtocolCapability },
9002   {  12, &hf_h245_t38faxDataProtocolCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T38faxApp },
9003   {  13, &hf_h245_genericDataMode, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericCapability },
9004   { 0, NULL, 0, NULL }
9005 };
9006
9007 static int
9008 dissect_h245_DataModeApplication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9009 #line 422 "h245.cnf"
9010   guint32 value;
9011
9012   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9013                                  ett_h245_DataModeApplication, DataModeApplication_choice,
9014                                  &value);
9015
9016   codec_type = val_to_str(value, h245_DataModeApplication_vals, "<unknown>");
9017                 if (h245_pi != NULL) g_snprintf(h245_pi->frame_label, 50, "%s %s", h245_pi->frame_label, val_to_str(value, h245_DataModeApplication_vals, "ukn"));
9018
9019
9020   return offset;
9021 }
9022
9023
9024 static const per_sequence_t DataMode_sequence[] = {
9025   { &hf_h245_datamodeapplication, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_DataModeApplication },
9026   { &hf_h245_bitRate_0_4294967295, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_4294967295 },
9027   { NULL, 0, 0, NULL }
9028 };
9029
9030 static int
9031 dissect_h245_DataMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9032   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9033                                    ett_h245_DataMode, DataMode_sequence);
9034
9035   return offset;
9036 }
9037
9038
9039 static const value_string h245_T_mediaMode_vals[] = {
9040   {   0, "nonStandard" },
9041   {   1, "videoMode" },
9042   {   2, "audioMode" },
9043   {   3, "dataMode" },
9044   { 0, NULL }
9045 };
9046
9047 static const per_choice_t T_mediaMode_choice[] = {
9048   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
9049   {   1, &hf_h245_videoMode      , ASN1_EXTENSION_ROOT    , dissect_h245_VideoMode },
9050   {   2, &hf_h245_audioMode      , ASN1_EXTENSION_ROOT    , dissect_h245_AudioMode },
9051   {   3, &hf_h245_dataMode       , ASN1_EXTENSION_ROOT    , dissect_h245_DataMode },
9052   { 0, NULL, 0, NULL }
9053 };
9054
9055 static int
9056 dissect_h245_T_mediaMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9057   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9058                                  ett_h245_T_mediaMode, T_mediaMode_choice,
9059                                  NULL);
9060
9061   return offset;
9062 }
9063
9064
9065 static const per_sequence_t H235Mode_sequence[] = {
9066   { &hf_h245_encryptionAuthenticationAndIntegrity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_EncryptionAuthenticationAndIntegrity },
9067   { &hf_h245_mediaMode      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_mediaMode },
9068   { NULL, 0, 0, NULL }
9069 };
9070
9071 static int
9072 dissect_h245_H235Mode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9073   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9074                                    ett_h245_H235Mode, H235Mode_sequence);
9075
9076   return offset;
9077 }
9078
9079
9080 static const per_sequence_t FECMode_sequence[] = {
9081   { &hf_h245_protectedElement, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_ModeElementType },
9082   { &hf_h245_fecScheme      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OBJECT_IDENTIFIER },
9083   { &hf_h245_rfc2733Format  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_Rfc2733Format },
9084   { NULL, 0, 0, NULL }
9085 };
9086
9087 static int
9088 dissect_h245_FECMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9089   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9090                                    ett_h245_FECMode, FECMode_sequence);
9091
9092   return offset;
9093 }
9094
9095
9096 static const value_string h245_Re_type_vals[] = {
9097   {   0, "nonStandard" },
9098   {   1, "videoMode" },
9099   {   2, "audioMode" },
9100   {   3, "dataMode" },
9101   {   4, "encryptionMode" },
9102   {   5, "h235Mode" },
9103   {   6, "fecMode" },
9104   { 0, NULL }
9105 };
9106
9107 static const per_choice_t Re_type_choice[] = {
9108   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
9109   {   1, &hf_h245_videoMode      , ASN1_EXTENSION_ROOT    , dissect_h245_VideoMode },
9110   {   2, &hf_h245_audioMode      , ASN1_EXTENSION_ROOT    , dissect_h245_AudioMode },
9111   {   3, &hf_h245_dataMode       , ASN1_EXTENSION_ROOT    , dissect_h245_DataMode },
9112   {   4, &hf_h245_encryptionMode , ASN1_EXTENSION_ROOT    , dissect_h245_EncryptionMode },
9113   {   5, &hf_h245_h235Mode       , ASN1_EXTENSION_ROOT    , dissect_h245_H235Mode },
9114   {   6, &hf_h245_fecMode        , ASN1_NOT_EXTENSION_ROOT, dissect_h245_FECMode },
9115   { 0, NULL, 0, NULL }
9116 };
9117
9118 static int
9119 dissect_h245_Re_type(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9120   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9121                                  ett_h245_Re_type, Re_type_choice,
9122                                  NULL);
9123
9124   return offset;
9125 }
9126
9127
9128 static const per_sequence_t RedundancyEncodingDTModeElement_sequence[] = {
9129   { &hf_h245_re_type        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Re_type },
9130   { NULL, 0, 0, NULL }
9131 };
9132
9133 static int
9134 dissect_h245_RedundancyEncodingDTModeElement(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9135   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9136                                    ett_h245_RedundancyEncodingDTModeElement, RedundancyEncodingDTModeElement_sequence);
9137
9138   return offset;
9139 }
9140
9141
9142 static const per_sequence_t SEQUENCE_OF_RedundancyEncodingDTModeElement_sequence_of[1] = {
9143   { &hf_h245_secondaryDTM_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_RedundancyEncodingDTModeElement },
9144 };
9145
9146 static int
9147 dissect_h245_SEQUENCE_OF_RedundancyEncodingDTModeElement(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9148   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
9149                                       ett_h245_SEQUENCE_OF_RedundancyEncodingDTModeElement, SEQUENCE_OF_RedundancyEncodingDTModeElement_sequence_of);
9150
9151   return offset;
9152 }
9153
9154
9155 static const per_sequence_t RedundancyEncodingDTMode_sequence[] = {
9156   { &hf_h245_redundancyEncodingMethod, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_RedundancyEncodingMethod },
9157   { &hf_h245_prmary_dtmode  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_RedundancyEncodingDTModeElement },
9158   { &hf_h245_secondaryDTM   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SEQUENCE_OF_RedundancyEncodingDTModeElement },
9159   { NULL, 0, 0, NULL }
9160 };
9161
9162 static int
9163 dissect_h245_RedundancyEncodingDTMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9164   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9165                                    ett_h245_RedundancyEncodingDTMode, RedundancyEncodingDTMode_sequence);
9166
9167   return offset;
9168 }
9169
9170
9171 static const per_sequence_t MultiplePayloadStreamElementMode_sequence[] = {
9172   { &hf_h245_type           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_ModeElementType },
9173   { NULL, 0, 0, NULL }
9174 };
9175
9176 static int
9177 dissect_h245_MultiplePayloadStreamElementMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9178   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9179                                    ett_h245_MultiplePayloadStreamElementMode, MultiplePayloadStreamElementMode_sequence);
9180
9181   return offset;
9182 }
9183
9184
9185 static const per_sequence_t SEQUENCE_OF_MultiplePayloadStreamElementMode_sequence_of[1] = {
9186   { &hf_h245_mpsmElements_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_MultiplePayloadStreamElementMode },
9187 };
9188
9189 static int
9190 dissect_h245_SEQUENCE_OF_MultiplePayloadStreamElementMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9191   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
9192                                       ett_h245_SEQUENCE_OF_MultiplePayloadStreamElementMode, SEQUENCE_OF_MultiplePayloadStreamElementMode_sequence_of);
9193
9194   return offset;
9195 }
9196
9197
9198 static const per_sequence_t MultiplePayloadStreamMode_sequence[] = {
9199   { &hf_h245_mpsmElements   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SEQUENCE_OF_MultiplePayloadStreamElementMode },
9200   { NULL, 0, 0, NULL }
9201 };
9202
9203 static int
9204 dissect_h245_MultiplePayloadStreamMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9205   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9206                                    ett_h245_MultiplePayloadStreamMode, MultiplePayloadStreamMode_sequence);
9207
9208   return offset;
9209 }
9210
9211
9212 static const value_string h245_FEC_mode_vals[] = {
9213   {   0, "redundancyEncoding" },
9214   {   1, "separateStream" },
9215   { 0, NULL }
9216 };
9217
9218 static const per_choice_t FEC_mode_choice[] = {
9219   {   0, &hf_h245_redundancyEncodingFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9220   {   1, &hf_h245_separateStream , ASN1_EXTENSION_ROOT    , dissect_h245_DepSeparateStream },
9221   { 0, NULL, 0, NULL }
9222 };
9223
9224 static int
9225 dissect_h245_FEC_mode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9226   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9227                                  ett_h245_FEC_mode, FEC_mode_choice,
9228                                  NULL);
9229
9230   return offset;
9231 }
9232
9233
9234 static const per_sequence_t T_rfc2733Mode_sequence[] = {
9235   { &hf_h245_fec_mode       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_FEC_mode },
9236   { NULL, 0, 0, NULL }
9237 };
9238
9239 static int
9240 dissect_h245_T_rfc2733Mode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9241   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9242                                    ett_h245_T_rfc2733Mode, T_rfc2733Mode_sequence);
9243
9244   return offset;
9245 }
9246
9247
9248 static const value_string h245_DepFECMode_vals[] = {
9249   {   0, "rfc2733Mode" },
9250   { 0, NULL }
9251 };
9252
9253 static const per_choice_t DepFECMode_choice[] = {
9254   {   0, &hf_h245_rfc2733Mode    , ASN1_EXTENSION_ROOT    , dissect_h245_T_rfc2733Mode },
9255   { 0, NULL, 0, NULL }
9256 };
9257
9258 static int
9259 dissect_h245_DepFECMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9260   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9261                                  ett_h245_DepFECMode, DepFECMode_choice,
9262                                  NULL);
9263
9264   return offset;
9265 }
9266
9267
9268 static const value_string h245_ModeElementType_vals[] = {
9269   {   0, "nonStandard" },
9270   {   1, "videoMode" },
9271   {   2, "audioMode" },
9272   {   3, "dataMode" },
9273   {   4, "encryptionMode" },
9274   {   5, "h235Mode" },
9275   {   6, "multiplexedStreamMode" },
9276   {   7, "redundancyEncodingDTMode" },
9277   {   8, "multiplePayloadStreamMode" },
9278   {   9, "depFecMode" },
9279   {  10, "fecMode" },
9280   { 0, NULL }
9281 };
9282
9283 static const per_choice_t ModeElementType_choice[] = {
9284   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
9285   {   1, &hf_h245_videoMode      , ASN1_EXTENSION_ROOT    , dissect_h245_VideoMode },
9286   {   2, &hf_h245_audioMode      , ASN1_EXTENSION_ROOT    , dissect_h245_AudioMode },
9287   {   3, &hf_h245_dataMode       , ASN1_EXTENSION_ROOT    , dissect_h245_DataMode },
9288   {   4, &hf_h245_encryptionMode , ASN1_EXTENSION_ROOT    , dissect_h245_EncryptionMode },
9289   {   5, &hf_h245_h235Mode       , ASN1_NOT_EXTENSION_ROOT, dissect_h245_H235Mode },
9290   {   6, &hf_h245_multiplexedStreamMode, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MultiplexedStreamParameter },
9291   {   7, &hf_h245_redundancyEncodingDTMode, ASN1_NOT_EXTENSION_ROOT, dissect_h245_RedundancyEncodingDTMode },
9292   {   8, &hf_h245_multiplePayloadStreamMode, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MultiplePayloadStreamMode },
9293   {   9, &hf_h245_depFecMode     , ASN1_NOT_EXTENSION_ROOT, dissect_h245_DepFECMode },
9294   {  10, &hf_h245_fecMode        , ASN1_NOT_EXTENSION_ROOT, dissect_h245_FECMode },
9295   { 0, NULL, 0, NULL }
9296 };
9297
9298 static int
9299 dissect_h245_ModeElementType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9300   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9301                                  ett_h245_ModeElementType, ModeElementType_choice,
9302                                  NULL);
9303
9304   return offset;
9305 }
9306
9307
9308 static const value_string h245_AdaptationLayerType_vals[] = {
9309   {   0, "nonStandard" },
9310   {   1, "al1Framed" },
9311   {   2, "al1NotFramed" },
9312   {   3, "al2WithoutSequenceNumbers" },
9313   {   4, "al2WithSequenceNumbers" },
9314   {   5, "al3" },
9315   {   6, "al1M" },
9316   {   7, "al2M" },
9317   {   8, "al3M" },
9318   { 0, NULL }
9319 };
9320
9321 static const per_choice_t AdaptationLayerType_choice[] = {
9322   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
9323   {   1, &hf_h245_al1Framed      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9324   {   2, &hf_h245_al1NotFramed   , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9325   {   3, &hf_h245_al2WithoutSequenceNumbers, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9326   {   4, &hf_h245_al2WithSequenceNumbers, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9327   {   5, &hf_h245_al3            , ASN1_EXTENSION_ROOT    , dissect_h245_Al3 },
9328   {   6, &hf_h245_al1M           , ASN1_NOT_EXTENSION_ROOT, dissect_h245_H223AL1MParameters },
9329   {   7, &hf_h245_al2M           , ASN1_NOT_EXTENSION_ROOT, dissect_h245_H223AL2MParameters },
9330   {   8, &hf_h245_al3M           , ASN1_NOT_EXTENSION_ROOT, dissect_h245_H223AL3MParameters },
9331   { 0, NULL, 0, NULL }
9332 };
9333
9334 static int
9335 dissect_h245_AdaptationLayerType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9336   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9337                                  ett_h245_AdaptationLayerType, AdaptationLayerType_choice,
9338                                  NULL);
9339
9340   return offset;
9341 }
9342
9343
9344 static const per_sequence_t H223ModeParameters_sequence[] = {
9345   { &hf_h245_adaptationLayer, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_AdaptationLayerType },
9346   { &hf_h245_segmentableFlag, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
9347   { NULL, 0, 0, NULL }
9348 };
9349
9350 static int
9351 dissect_h245_H223ModeParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9352   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9353                                    ett_h245_H223ModeParameters, H223ModeParameters_sequence);
9354
9355   return offset;
9356 }
9357
9358
9359 static const value_string h245_V76ModeParameters_vals[] = {
9360   {   0, "suspendResumewAddress" },
9361   {   1, "suspendResumewoAddress" },
9362   { 0, NULL }
9363 };
9364
9365 static const per_choice_t V76ModeParameters_choice[] = {
9366   {   0, &hf_h245_suspendResumewAddress, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9367   {   1, &hf_h245_suspendResumewoAddress, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9368   { 0, NULL, 0, NULL }
9369 };
9370
9371 static int
9372 dissect_h245_V76ModeParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9373   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9374                                  ett_h245_V76ModeParameters, V76ModeParameters_choice,
9375                                  NULL);
9376
9377   return offset;
9378 }
9379
9380
9381 static const value_string h245_T_secondaryEncodingMode_vals[] = {
9382   {   0, "nonStandard" },
9383   {   1, "audioData" },
9384   { 0, NULL }
9385 };
9386
9387 static const per_choice_t T_secondaryEncodingMode_choice[] = {
9388   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
9389   {   1, &hf_h245_audioMode      , ASN1_EXTENSION_ROOT    , dissect_h245_AudioMode },
9390   { 0, NULL, 0, NULL }
9391 };
9392
9393 static int
9394 dissect_h245_T_secondaryEncodingMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9395   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9396                                  ett_h245_T_secondaryEncodingMode, T_secondaryEncodingMode_choice,
9397                                  NULL);
9398
9399   return offset;
9400 }
9401
9402
9403 static const per_sequence_t RedundancyEncodingMode_sequence[] = {
9404   { &hf_h245_redundancyEncodingMethod, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_RedundancyEncodingMethod },
9405   { &hf_h245_secondaryEncodingMode, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_secondaryEncodingMode },
9406   { NULL, 0, 0, NULL }
9407 };
9408
9409 static int
9410 dissect_h245_RedundancyEncodingMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9411   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9412                                    ett_h245_RedundancyEncodingMode, RedundancyEncodingMode_sequence);
9413
9414   return offset;
9415 }
9416
9417
9418 static const per_sequence_t H2250ModeParameters_sequence[] = {
9419   { &hf_h245_redundancyEncodingMode, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_RedundancyEncodingMode },
9420   { NULL, 0, 0, NULL }
9421 };
9422
9423 static int
9424 dissect_h245_H2250ModeParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9425   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9426                                    ett_h245_H2250ModeParameters, H2250ModeParameters_sequence);
9427
9428   return offset;
9429 }
9430
9431
9432 static const per_sequence_t MultiplexedStreamModeParameters_sequence[] = {
9433   { &hf_h245_logicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
9434   { NULL, 0, 0, NULL }
9435 };
9436
9437 static int
9438 dissect_h245_MultiplexedStreamModeParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9439   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9440                                    ett_h245_MultiplexedStreamModeParameters, MultiplexedStreamModeParameters_sequence);
9441
9442   return offset;
9443 }
9444
9445
9446 static const per_sequence_t ModeElement_sequence[] = {
9447   { &hf_h245_type           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_ModeElementType },
9448   { &hf_h245_h223ModeParameters, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_H223ModeParameters },
9449   { &hf_h245_v76ModeParameters, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_V76ModeParameters },
9450   { &hf_h245_h2250ModeParameters, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_H2250ModeParameters },
9451   { &hf_h245_genericModeParameters, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_GenericCapability },
9452   { &hf_h245_multiplexedStreamModeParameters, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_MultiplexedStreamModeParameters },
9453   { &hf_h245_logicalChannelNumber, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_LogicalChannelNumber },
9454   { NULL, 0, 0, NULL }
9455 };
9456
9457 static int
9458 dissect_h245_ModeElement(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9459   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9460                                    ett_h245_ModeElement, ModeElement_sequence);
9461
9462   return offset;
9463 }
9464
9465
9466 static const per_sequence_t ModeDescription_set_of[1] = {
9467   { &hf_h245_ModeDescription_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_ModeElement },
9468 };
9469
9470 static int
9471 dissect_h245_ModeDescription(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9472   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
9473                                              ett_h245_ModeDescription, ModeDescription_set_of,
9474                                              1, 256);
9475
9476   return offset;
9477 }
9478
9479
9480 static const per_sequence_t SEQUENCE_SIZE_1_256_OF_ModeDescription_sequence_of[1] = {
9481   { &hf_h245_requestedModes_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_ModeDescription },
9482 };
9483
9484 static int
9485 dissect_h245_SEQUENCE_SIZE_1_256_OF_ModeDescription(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9486   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
9487                                                   ett_h245_SEQUENCE_SIZE_1_256_OF_ModeDescription, SEQUENCE_SIZE_1_256_OF_ModeDescription_sequence_of,
9488                                                   1, 256);
9489
9490   return offset;
9491 }
9492
9493
9494 static const per_sequence_t RequestMode_sequence[] = {
9495   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
9496   { &hf_h245_requestedModes , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SEQUENCE_SIZE_1_256_OF_ModeDescription },
9497   { NULL, 0, 0, NULL }
9498 };
9499
9500 static int
9501 dissect_h245_RequestMode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9502   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9503                                    ett_h245_RequestMode, RequestMode_sequence);
9504
9505   return offset;
9506 }
9507
9508
9509 static const per_sequence_t RoundTripDelayRequest_sequence[] = {
9510   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
9511   { NULL, 0, 0, NULL }
9512 };
9513
9514 static int
9515 dissect_h245_RoundTripDelayRequest(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9516   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9517                                    ett_h245_RoundTripDelayRequest, RoundTripDelayRequest_sequence);
9518
9519   return offset;
9520 }
9521
9522
9523 static const value_string h245_Mlr_type_vals[] = {
9524   {   0, "systemLoop" },
9525   {   1, "mediaLoop" },
9526   {   2, "logicalChannelLoop" },
9527   { 0, NULL }
9528 };
9529
9530 static const per_choice_t Mlr_type_choice[] = {
9531   {   0, &hf_h245_systemLoop     , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9532   {   1, &hf_h245_mediaLoop      , ASN1_EXTENSION_ROOT    , dissect_h245_LogicalChannelNumber },
9533   {   2, &hf_h245_logicalChannelLoop, ASN1_EXTENSION_ROOT    , dissect_h245_LogicalChannelNumber },
9534   { 0, NULL, 0, NULL }
9535 };
9536
9537 static int
9538 dissect_h245_Mlr_type(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9539   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9540                                  ett_h245_Mlr_type, Mlr_type_choice,
9541                                  NULL);
9542
9543   return offset;
9544 }
9545
9546
9547 static const per_sequence_t MaintenanceLoopRequest_sequence[] = {
9548   { &hf_h245_mlr_type       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Mlr_type },
9549   { NULL, 0, 0, NULL }
9550 };
9551
9552 static int
9553 dissect_h245_MaintenanceLoopRequest(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9554   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9555                                    ett_h245_MaintenanceLoopRequest, MaintenanceLoopRequest_sequence);
9556
9557   return offset;
9558 }
9559
9560
9561 static const per_sequence_t CommunicationModeRequest_sequence[] = {
9562   { NULL, 0, 0, NULL }
9563 };
9564
9565 static int
9566 dissect_h245_CommunicationModeRequest(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9567   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9568                                    ett_h245_CommunicationModeRequest, CommunicationModeRequest_sequence);
9569
9570   return offset;
9571 }
9572
9573
9574 static const per_sequence_t Criteria_sequence[] = {
9575   { &hf_h245_field          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OBJECT_IDENTIFIER },
9576   { &hf_h245_value          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING_SIZE_1_65535 },
9577   { NULL, 0, 0, NULL }
9578 };
9579
9580 static int
9581 dissect_h245_Criteria(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9582   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9583                                    ett_h245_Criteria, Criteria_sequence);
9584
9585   return offset;
9586 }
9587
9588
9589 static const per_sequence_t CertSelectionCriteria_sequence_of[1] = {
9590   { &hf_h245_CertSelectionCriteria_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_Criteria },
9591 };
9592
9593 static int
9594 dissect_h245_CertSelectionCriteria(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9595   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
9596                                                   ett_h245_CertSelectionCriteria, CertSelectionCriteria_sequence_of,
9597                                                   1, 16);
9598
9599   return offset;
9600 }
9601
9602
9603 static const per_sequence_t T_requestTerminalCertificate_sequence[] = {
9604   { &hf_h245_terminalLabel  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_TerminalLabel },
9605   { &hf_h245_certSelectionCriteria, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_CertSelectionCriteria },
9606   { &hf_h245_sRandom        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_4294967295 },
9607   { NULL, 0, 0, NULL }
9608 };
9609
9610 static int
9611 dissect_h245_T_requestTerminalCertificate(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9612   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9613                                    ett_h245_T_requestTerminalCertificate, T_requestTerminalCertificate_sequence);
9614
9615   return offset;
9616 }
9617
9618
9619 static const value_string h245_RemoteMCRequest_vals[] = {
9620   {   0, "masterActivate" },
9621   {   1, "slaveActivate" },
9622   {   2, "deActivate" },
9623   { 0, NULL }
9624 };
9625
9626 static const per_choice_t RemoteMCRequest_choice[] = {
9627   {   0, &hf_h245_masterActivate , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9628   {   1, &hf_h245_slaveActivate  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9629   {   2, &hf_h245_deActivate     , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9630   { 0, NULL, 0, NULL }
9631 };
9632
9633 static int
9634 dissect_h245_RemoteMCRequest(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9635   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9636                                  ett_h245_RemoteMCRequest, RemoteMCRequest_choice,
9637                                  NULL);
9638
9639   return offset;
9640 }
9641
9642
9643 static const value_string h245_ConferenceRequest_vals[] = {
9644   {   0, "terminalListRequest" },
9645   {   1, "makeMeChair" },
9646   {   2, "cancelMakeMeChair" },
9647   {   3, "dropTerminal" },
9648   {   4, "requestTerminalID" },
9649   {   5, "enterH243Password" },
9650   {   6, "enterH243TerminalID" },
9651   {   7, "enterH243ConferenceID" },
9652   {   8, "enterExtensionAddress" },
9653   {   9, "requestChairTokenOwner" },
9654   {  10, "requestTerminalCertificate" },
9655   {  11, "broadcastMyLogicalChannel" },
9656   {  12, "makeTerminalBroadcaster" },
9657   {  13, "sendThisSource" },
9658   {  14, "requestAllTerminalIDs" },
9659   {  15, "remoteMCRequest" },
9660   { 0, NULL }
9661 };
9662
9663 static const per_choice_t ConferenceRequest_choice[] = {
9664   {   0, &hf_h245_terminalListRequest, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9665   {   1, &hf_h245_makeMeChair    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9666   {   2, &hf_h245_cancelMakeMeChair, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9667   {   3, &hf_h245_dropTerminal   , ASN1_EXTENSION_ROOT    , dissect_h245_TerminalLabel },
9668   {   4, &hf_h245_requestTerminalID, ASN1_EXTENSION_ROOT    , dissect_h245_TerminalLabel },
9669   {   5, &hf_h245_enterH243Password, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9670   {   6, &hf_h245_enterH243TerminalID, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9671   {   7, &hf_h245_enterH243ConferenceID, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9672   {   8, &hf_h245_enterExtensionAddress, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
9673   {   9, &hf_h245_requestChairTokenOwner, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
9674   {  10, &hf_h245_requestTerminalCertificate, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_requestTerminalCertificate },
9675   {  11, &hf_h245_broadcastMyLogicalChannel, ASN1_NOT_EXTENSION_ROOT, dissect_h245_LogicalChannelNumber },
9676   {  12, &hf_h245_makeTerminalBroadcaster, ASN1_NOT_EXTENSION_ROOT, dissect_h245_TerminalLabel },
9677   {  13, &hf_h245_sendThisSource , ASN1_NOT_EXTENSION_ROOT, dissect_h245_TerminalLabel },
9678   {  14, &hf_h245_requestAllTerminalIDs, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
9679   {  15, &hf_h245_remoteMCRequest, ASN1_NOT_EXTENSION_ROOT, dissect_h245_RemoteMCRequest },
9680   { 0, NULL, 0, NULL }
9681 };
9682
9683 static int
9684 dissect_h245_ConferenceRequest(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9685   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9686                                  ett_h245_ConferenceRequest, ConferenceRequest_choice,
9687                                  NULL);
9688
9689   return offset;
9690 }
9691
9692
9693 static const per_sequence_t CallInformationReq_sequence[] = {
9694   { &hf_h245_maxNumberOfAdditionalConnections, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_65535 },
9695   { NULL, 0, 0, NULL }
9696 };
9697
9698 static int
9699 dissect_h245_CallInformationReq(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9700   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9701                                    ett_h245_CallInformationReq, CallInformationReq_sequence);
9702
9703   return offset;
9704 }
9705
9706
9707
9708 static int
9709 dissect_h245_NumericString_SIZE_0_40(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9710   offset = dissect_per_NumericString(tvb, offset, actx, tree, hf_index,
9711                                           0, 40);
9712
9713   return offset;
9714 }
9715
9716
9717
9718 static int
9719 dissect_h245_IA5String_SIZE_1_40(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9720   offset = dissect_per_IA5String(tvb, offset, actx, tree, hf_index,
9721                                           1, 40);
9722
9723   return offset;
9724 }
9725
9726
9727 static const value_string h245_DialingInformationNetworkType_vals[] = {
9728   {   0, "nonStandard" },
9729   {   1, "n-isdn" },
9730   {   2, "gstn" },
9731   {   3, "mobile" },
9732   { 0, NULL }
9733 };
9734
9735 static const per_choice_t DialingInformationNetworkType_choice[] = {
9736   {   0, &hf_h245_nonStandardMsg , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardMessage },
9737   {   1, &hf_h245_n_isdn         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9738   {   2, &hf_h245_gstn           , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9739   {   3, &hf_h245_mobile         , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
9740   { 0, NULL, 0, NULL }
9741 };
9742
9743 static int
9744 dissect_h245_DialingInformationNetworkType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9745   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9746                                  ett_h245_DialingInformationNetworkType, DialingInformationNetworkType_choice,
9747                                  NULL);
9748
9749   return offset;
9750 }
9751
9752
9753 static const per_sequence_t SET_SIZE_1_255_OF_DialingInformationNetworkType_set_of[1] = {
9754   { &hf_h245_networkType_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_DialingInformationNetworkType },
9755 };
9756
9757 static int
9758 dissect_h245_SET_SIZE_1_255_OF_DialingInformationNetworkType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9759   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
9760                                              ett_h245_SET_SIZE_1_255_OF_DialingInformationNetworkType, SET_SIZE_1_255_OF_DialingInformationNetworkType_set_of,
9761                                              1, 255);
9762
9763   return offset;
9764 }
9765
9766
9767 static const per_sequence_t DialingInformationNumber_sequence[] = {
9768   { &hf_h245_networkAddressNum, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_NumericString_SIZE_0_40 },
9769   { &hf_h245_subAddress     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_IA5String_SIZE_1_40 },
9770   { &hf_h245_networkType    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_255_OF_DialingInformationNetworkType },
9771   { NULL, 0, 0, NULL }
9772 };
9773
9774 static int
9775 dissect_h245_DialingInformationNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9776   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9777                                    ett_h245_DialingInformationNumber, DialingInformationNumber_sequence);
9778
9779   return offset;
9780 }
9781
9782
9783 static const per_sequence_t SET_SIZE_1_65535_OF_DialingInformationNumber_set_of[1] = {
9784   { &hf_h245_differential_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_DialingInformationNumber },
9785 };
9786
9787 static int
9788 dissect_h245_SET_SIZE_1_65535_OF_DialingInformationNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9789   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
9790                                              ett_h245_SET_SIZE_1_65535_OF_DialingInformationNumber, SET_SIZE_1_65535_OF_DialingInformationNumber_set_of,
9791                                              1, 65535);
9792
9793   return offset;
9794 }
9795
9796
9797 static const value_string h245_DialingInformation_vals[] = {
9798   {   0, "nonStandard" },
9799   {   1, "differential" },
9800   {   2, "infoNotAvailable" },
9801   { 0, NULL }
9802 };
9803
9804 static const per_choice_t DialingInformation_choice[] = {
9805   {   0, &hf_h245_nonStandardMsg , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardMessage },
9806   {   1, &hf_h245_differential   , ASN1_EXTENSION_ROOT    , dissect_h245_SET_SIZE_1_65535_OF_DialingInformationNumber },
9807   {   2, &hf_h245_infoNotAvailable, ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_1_65535 },
9808   { 0, NULL, 0, NULL }
9809 };
9810
9811 static int
9812 dissect_h245_DialingInformation(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9813   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9814                                  ett_h245_DialingInformation, DialingInformation_choice,
9815                                  NULL);
9816
9817   return offset;
9818 }
9819
9820
9821 static const per_sequence_t AddConnectionReq_sequence[] = {
9822   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
9823   { &hf_h245_dialingInformation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_DialingInformation },
9824   { NULL, 0, 0, NULL }
9825 };
9826
9827 static int
9828 dissect_h245_AddConnectionReq(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9829   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9830                                    ett_h245_AddConnectionReq, AddConnectionReq_sequence);
9831
9832   return offset;
9833 }
9834
9835
9836 static const per_sequence_t ConnectionIdentifier_sequence[] = {
9837   { &hf_h245_channelTag     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_4294967295 },
9838   { &hf_h245_sequenceNum    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_4294967295 },
9839   { NULL, 0, 0, NULL }
9840 };
9841
9842 static int
9843 dissect_h245_ConnectionIdentifier(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9844   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9845                                    ett_h245_ConnectionIdentifier, ConnectionIdentifier_sequence);
9846
9847   return offset;
9848 }
9849
9850
9851 static const per_sequence_t RemoveConnectionReq_sequence[] = {
9852   { &hf_h245_connectionIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_ConnectionIdentifier },
9853   { NULL, 0, 0, NULL }
9854 };
9855
9856 static int
9857 dissect_h245_RemoveConnectionReq(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9858   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9859                                    ett_h245_RemoveConnectionReq, RemoveConnectionReq_sequence);
9860
9861   return offset;
9862 }
9863
9864
9865 static const value_string h245_T_requestType_vals[] = {
9866   {   0, "currentIntervalInformation" },
9867   {   1, "requestedInterval" },
9868   { 0, NULL }
9869 };
9870
9871 static const per_choice_t T_requestType_choice[] = {
9872   {   0, &hf_h245_currentIntervalInformation, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
9873   {   1, &hf_h245_requestedInterval, ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_65535 },
9874   { 0, NULL, 0, NULL }
9875 };
9876
9877 static int
9878 dissect_h245_T_requestType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9879   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9880                                  ett_h245_T_requestType, T_requestType_choice,
9881                                  NULL);
9882
9883   return offset;
9884 }
9885
9886
9887 static const per_sequence_t MaximumHeaderIntervalReq_sequence[] = {
9888   { &hf_h245_requestType    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_requestType },
9889   { NULL, 0, 0, NULL }
9890 };
9891
9892 static int
9893 dissect_h245_MaximumHeaderIntervalReq(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9894   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9895                                    ett_h245_MaximumHeaderIntervalReq, MaximumHeaderIntervalReq_sequence);
9896
9897   return offset;
9898 }
9899
9900
9901 static const value_string h245_MultilinkRequest_vals[] = {
9902   {   0, "nonStandard" },
9903   {   1, "callInformation" },
9904   {   2, "addConnection" },
9905   {   3, "removeConnection" },
9906   {   4, "maximumHeaderInterval" },
9907   { 0, NULL }
9908 };
9909
9910 static const per_choice_t MultilinkRequest_choice[] = {
9911   {   0, &hf_h245_nonStandardMsg , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardMessage },
9912   {   1, &hf_h245_callInformationReq, ASN1_EXTENSION_ROOT    , dissect_h245_CallInformationReq },
9913   {   2, &hf_h245_addConnectionReq, ASN1_EXTENSION_ROOT    , dissect_h245_AddConnectionReq },
9914   {   3, &hf_h245_removeConnectionReq, ASN1_EXTENSION_ROOT    , dissect_h245_RemoveConnectionReq },
9915   {   4, &hf_h245_maximumHeaderIntervalReq, ASN1_EXTENSION_ROOT    , dissect_h245_MaximumHeaderIntervalReq },
9916   { 0, NULL, 0, NULL }
9917 };
9918
9919 static int
9920 dissect_h245_MultilinkRequest(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9921   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9922                                  ett_h245_MultilinkRequest, MultilinkRequest_choice,
9923                                  NULL);
9924
9925   return offset;
9926 }
9927
9928
9929
9930 static int
9931 dissect_h245_MaximumBitRate(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9932   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
9933                                               0U, 4294967295U, NULL, FALSE);
9934
9935   return offset;
9936 }
9937
9938
9939 static const per_sequence_t LogicalChannelRateRequest_sequence[] = {
9940   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
9941   { &hf_h245_logicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
9942   { &hf_h245_maximumBitRate , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MaximumBitRate },
9943   { NULL, 0, 0, NULL }
9944 };
9945
9946 static int
9947 dissect_h245_LogicalChannelRateRequest(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9948   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9949                                    ett_h245_LogicalChannelRateRequest, LogicalChannelRateRequest_sequence);
9950
9951   return offset;
9952 }
9953
9954
9955 static const value_string h245_RequestMessage_vals[] = {
9956   {   0, "nonStandard" },
9957   {   1, "masterSlaveDetermination" },
9958   {   2, "terminalCapabilitySet" },
9959   {   3, "openLogicalChannel" },
9960   {   4, "closeLogicalChannel" },
9961   {   5, "requestChannelClose" },
9962   {   6, "multiplexEntrySend" },
9963   {   7, "requestMultiplexEntry" },
9964   {   8, "requestMode" },
9965   {   9, "roundTripDelayRequest" },
9966   {  10, "maintenanceLoopRequest" },
9967   {  11, "communicationModeRequest" },
9968   {  12, "conferenceRequest" },
9969   {  13, "multilinkRequest" },
9970   {  14, "logicalChannelRateRequest" },
9971   {  15, "genericRequest" },
9972   { 0, NULL }
9973 };
9974
9975 static const per_choice_t RequestMessage_choice[] = {
9976   {   0, &hf_h245_nonStandardMsg , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardMessage },
9977   {   1, &hf_h245_masterSlaveDetermination, ASN1_EXTENSION_ROOT    , dissect_h245_MasterSlaveDetermination },
9978   {   2, &hf_h245_terminalCapabilitySet, ASN1_EXTENSION_ROOT    , dissect_h245_TerminalCapabilitySet },
9979   {   3, &hf_h245_openLogicalChannel, ASN1_EXTENSION_ROOT    , dissect_h245_OpenLogicalChannel },
9980   {   4, &hf_h245_closeLogicalChannel, ASN1_EXTENSION_ROOT    , dissect_h245_CloseLogicalChannel },
9981   {   5, &hf_h245_requestChannelClose, ASN1_EXTENSION_ROOT    , dissect_h245_RequestChannelClose },
9982   {   6, &hf_h245_multiplexEntrySend, ASN1_EXTENSION_ROOT    , dissect_h245_MultiplexEntrySend },
9983   {   7, &hf_h245_requestMultiplexEntry, ASN1_EXTENSION_ROOT    , dissect_h245_RequestMultiplexEntry },
9984   {   8, &hf_h245_requestMode    , ASN1_EXTENSION_ROOT    , dissect_h245_RequestMode },
9985   {   9, &hf_h245_roundTripDelayRequest, ASN1_EXTENSION_ROOT    , dissect_h245_RoundTripDelayRequest },
9986   {  10, &hf_h245_maintenanceLoopRequest, ASN1_EXTENSION_ROOT    , dissect_h245_MaintenanceLoopRequest },
9987   {  11, &hf_h245_communicationModeRequest, ASN1_NOT_EXTENSION_ROOT, dissect_h245_CommunicationModeRequest },
9988   {  12, &hf_h245_conferenceRequest, ASN1_NOT_EXTENSION_ROOT, dissect_h245_ConferenceRequest },
9989   {  13, &hf_h245_multilinkRequest, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MultilinkRequest },
9990   {  14, &hf_h245_logicalChannelRateRequest, ASN1_NOT_EXTENSION_ROOT, dissect_h245_LogicalChannelRateRequest },
9991   {  15, &hf_h245_genericRequest , ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericMessage },
9992   { 0, NULL, 0, NULL }
9993 };
9994
9995 static int
9996 dissect_h245_RequestMessage(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
9997 #line 269 "h245.cnf"
9998   guint32 value;
9999
10000   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10001                                  ett_h245_RequestMessage, RequestMessage_choice,
10002                                  &value);
10003
10004         if (check_col(actx->pinfo->cinfo, COL_INFO)){
10005                 if ( h245_shorttypes == TRUE )
10006                 {
10007                         col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
10008                                 val_to_str(value, h245_RequestMessage_short_vals, "<unknown>"));
10009                 }
10010                 else
10011                 {
10012                         col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
10013                                 val_to_str(value, h245_RequestMessage_vals, "<unknown>"));
10014                 }
10015         }
10016
10017         if (( check_col(actx->pinfo->cinfo, COL_INFO)) && ( codec_type != NULL ) && ( value == 3) ){
10018                 col_append_fstr(actx->pinfo->cinfo, COL_INFO, "(%s) ", codec_type );
10019         }
10020
10021         col_set_fence(actx->pinfo->cinfo,COL_INFO);
10022
10023     /* Add to packet info */
10024
10025     /* if it is TCS*/
10026     if ((codec_type != NULL) && ( value == 2))
10027                 g_snprintf(h245_pi->frame_label, 50, "%s (%s) ",val_to_str(value, h245_RequestMessage_short_vals, "UKN"), h245_pi->frame_label);
10028     else
10029                 g_snprintf(h245_pi->frame_label, 50, "%s ", val_to_str(value, h245_RequestMessage_short_vals, "UKN"));
10030
10031         g_strlcat(h245_pi->comment, val_to_str(value, h245_RequestMessage_vals, "<unknown>"), 50);
10032
10033     /* if it is OLC or RM*/
10034     if ((codec_type != NULL) && (( value == 3) || ( value == 8)))
10035                 g_snprintf(h245_pi->frame_label, 50, "%s (%s) ", h245_pi->frame_label, codec_type);
10036
10037
10038   return offset;
10039 }
10040
10041
10042 static const value_string h245_T_decision_vals[] = {
10043   {   0, "master" },
10044   {   1, "slave" },
10045   { 0, NULL }
10046 };
10047
10048 static const per_choice_t T_decision_choice[] = {
10049   {   0, &hf_h245_master         , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
10050   {   1, &hf_h245_slave          , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
10051   { 0, NULL, 0, NULL }
10052 };
10053
10054 static int
10055 dissect_h245_T_decision(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10056   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10057                                  ett_h245_T_decision, T_decision_choice,
10058                                  NULL);
10059
10060   return offset;
10061 }
10062
10063
10064 static const per_sequence_t MasterSlaveDeterminationAck_sequence[] = {
10065   { &hf_h245_decision       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_decision },
10066   { NULL, 0, 0, NULL }
10067 };
10068
10069 static int
10070 dissect_h245_MasterSlaveDeterminationAck(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10071   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10072                                    ett_h245_MasterSlaveDeterminationAck, MasterSlaveDeterminationAck_sequence);
10073
10074 #line 430 "h245.cnf"
10075
10076   h245_pi->msg_type = H245_MastSlvDetAck;
10077
10078   return offset;
10079 }
10080
10081
10082 static const value_string h245_MasterSlaveDeterminationRejectCause_vals[] = {
10083   {   0, "identicalNumbers" },
10084   { 0, NULL }
10085 };
10086
10087 static const per_choice_t MasterSlaveDeterminationRejectCause_choice[] = {
10088   {   0, &hf_h245_identicalNumbers, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10089   { 0, NULL, 0, NULL }
10090 };
10091
10092 static int
10093 dissect_h245_MasterSlaveDeterminationRejectCause(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10094   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10095                                  ett_h245_MasterSlaveDeterminationRejectCause, MasterSlaveDeterminationRejectCause_choice,
10096                                  NULL);
10097
10098   return offset;
10099 }
10100
10101
10102 static const per_sequence_t MasterSlaveDeterminationReject_sequence[] = {
10103   { &hf_h245_msd_rej_cause  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MasterSlaveDeterminationRejectCause },
10104   { NULL, 0, 0, NULL }
10105 };
10106
10107 static int
10108 dissect_h245_MasterSlaveDeterminationReject(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10109   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10110                                    ett_h245_MasterSlaveDeterminationReject, MasterSlaveDeterminationReject_sequence);
10111
10112 #line 435 "h245.cnf"
10113
10114   h245_pi->msg_type = H245_MastSlvDetRjc;
10115
10116   return offset;
10117 }
10118
10119
10120 static const per_sequence_t TerminalCapabilitySetAck_sequence[] = {
10121   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
10122   { &hf_h245_genericInformation, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_GenericInformation },
10123   { NULL, 0, 0, NULL }
10124 };
10125
10126 static int
10127 dissect_h245_TerminalCapabilitySetAck(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10128   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10129                                    ett_h245_TerminalCapabilitySetAck, TerminalCapabilitySetAck_sequence);
10130
10131 #line 460 "h245.cnf"
10132
10133   h245_pi->msg_type = H245_TermCapSetAck;
10134
10135   return offset;
10136 }
10137
10138
10139 static const value_string h245_T_tableEntryCapacityExceeded_vals[] = {
10140   {   0, "highestEntryNumberProcessed" },
10141   {   1, "noneProcessed" },
10142   { 0, NULL }
10143 };
10144
10145 static const per_choice_t T_tableEntryCapacityExceeded_choice[] = {
10146   {   0, &hf_h245_highestEntryNumberProcessed, ASN1_NO_EXTENSIONS     , dissect_h245_CapabilityTableEntryNumber },
10147   {   1, &hf_h245_noneProcessed  , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
10148   { 0, NULL, 0, NULL }
10149 };
10150
10151 static int
10152 dissect_h245_T_tableEntryCapacityExceeded(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10153   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10154                                  ett_h245_T_tableEntryCapacityExceeded, T_tableEntryCapacityExceeded_choice,
10155                                  NULL);
10156
10157   return offset;
10158 }
10159
10160
10161 static const value_string h245_TerminalCapabilitySetRejectCause_vals[] = {
10162   {   0, "unspecified" },
10163   {   1, "undefinedTableEntryUsed" },
10164   {   2, "descriptorCapacityExceeded" },
10165   {   3, "tableEntryCapacityExceeded" },
10166   { 0, NULL }
10167 };
10168
10169 static const per_choice_t TerminalCapabilitySetRejectCause_choice[] = {
10170   {   0, &hf_h245_unspecified    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10171   {   1, &hf_h245_undefinedTableEntryUsed, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10172   {   2, &hf_h245_descriptorCapacityExceeded, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10173   {   3, &hf_h245_tableEntryCapacityExceeded, ASN1_EXTENSION_ROOT    , dissect_h245_T_tableEntryCapacityExceeded },
10174   { 0, NULL, 0, NULL }
10175 };
10176
10177 static int
10178 dissect_h245_TerminalCapabilitySetRejectCause(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10179   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10180                                  ett_h245_TerminalCapabilitySetRejectCause, TerminalCapabilitySetRejectCause_choice,
10181                                  NULL);
10182
10183   return offset;
10184 }
10185
10186
10187 static const per_sequence_t TerminalCapabilitySetReject_sequence[] = {
10188   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
10189   { &hf_h245_tcs_rej_cause  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalCapabilitySetRejectCause },
10190   { &hf_h245_genericInformation, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_GenericInformation },
10191   { NULL, 0, 0, NULL }
10192 };
10193
10194 static int
10195 dissect_h245_TerminalCapabilitySetReject(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10196   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10197                                    ett_h245_TerminalCapabilitySetReject, TerminalCapabilitySetReject_sequence);
10198
10199 #line 470 "h245.cnf"
10200
10201   h245_pi->msg_type = H245_TermCapSetRjc;
10202
10203   return offset;
10204 }
10205
10206
10207
10208 static int
10209 dissect_h245_OLC_ack_fw_lcn(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10210   offset = dissect_h245_LogicalChannelNumber(tvb, offset, actx, tree, hf_index);
10211
10212 #line 257 "h245.cnf"
10213   h223_fw_lc_num = h245_lc_temp;
10214
10215   return offset;
10216 }
10217
10218
10219
10220 static int
10221 dissect_h245_T_reverseLogicalChannelNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10222   offset = dissect_h245_LogicalChannelNumber(tvb, offset, actx, tree, hf_index);
10223
10224 #line 261 "h245.cnf"
10225   h223_rev_lc_num = h245_lc_temp;
10226
10227   return offset;
10228 }
10229
10230
10231 static const value_string h245_T_olc_ack_multiplexParameters_vals[] = {
10232   {   0, "h222LogicalChannelParameters" },
10233   {   1, "h2250LogicalChannelParameters" },
10234   { 0, NULL }
10235 };
10236
10237 static const per_choice_t T_olc_ack_multiplexParameters_choice[] = {
10238   {   0, &hf_h245_h222LogicalChannelParameters, ASN1_EXTENSION_ROOT    , dissect_h245_H222LogicalChannelParameters },
10239   {   1, &hf_h245_h2250LogicalChannelParameters, ASN1_NOT_EXTENSION_ROOT, dissect_h245_H2250LogicalChannelParameters },
10240   { 0, NULL, 0, NULL }
10241 };
10242
10243 static int
10244 dissect_h245_T_olc_ack_multiplexParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10245   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10246                                  ett_h245_T_olc_ack_multiplexParameters, T_olc_ack_multiplexParameters_choice,
10247                                  NULL);
10248
10249   return offset;
10250 }
10251
10252
10253 static const per_sequence_t OLC_ack_reverseLogicalChannelParameters_sequence[] = {
10254   { &hf_h245_reverseLogicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_reverseLogicalChannelNumber },
10255   { &hf_h245_portNumber     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_65535 },
10256   { &hf_h245_olc_ack_multiplexParameters, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_olc_ack_multiplexParameters },
10257   { &hf_h245_replacementFor , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_LogicalChannelNumber },
10258   { NULL, 0, 0, NULL }
10259 };
10260
10261 static int
10262 dissect_h245_OLC_ack_reverseLogicalChannelParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10263   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10264                                    ett_h245_OLC_ack_reverseLogicalChannelParameters, OLC_ack_reverseLogicalChannelParameters_sequence);
10265
10266   return offset;
10267 }
10268
10269
10270
10271 static int
10272 dissect_h245_Ack_mediaChannel(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10273 #line 541 "h245.cnf"
10274
10275
10276         media_channel = TRUE;
10277
10278   offset = dissect_h245_TransportAddress(tvb, offset, actx, tree, hf_index);
10279
10280 #line 565 "h245.cnf"
10281
10282
10283         media_channel = FALSE;
10284
10285   return offset;
10286 }
10287
10288
10289
10290 static int
10291 dissect_h245_Ack_mediaControlChannel(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10292 #line 553 "h245.cnf"
10293
10294
10295         media_control_channel = TRUE;
10296
10297   offset = dissect_h245_TransportAddress(tvb, offset, actx, tree, hf_index);
10298
10299 #line 571 "h245.cnf"
10300
10301
10302         media_control_channel = FALSE;
10303
10304   return offset;
10305 }
10306
10307
10308 static const per_sequence_t H2250LogicalChannelAckParameters_sequence[] = {
10309   { &hf_h245_nonStandardParams, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_NonStandardParameter },
10310   { &hf_h245_sessionID      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_255 },
10311   { &hf_h245_ack_mediaChannel, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_Ack_mediaChannel },
10312   { &hf_h245_ack_mediaControlChannel, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_Ack_mediaControlChannel },
10313   { &hf_h245_dynamicRTPPayloadType, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_96_127 },
10314   { &hf_h245_flowControlToZero, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
10315   { &hf_h245_portNumber     , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_INTEGER_0_65535 },
10316   { NULL, 0, 0, NULL }
10317 };
10318
10319 static int
10320 dissect_h245_H2250LogicalChannelAckParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10321   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10322                                    ett_h245_H2250LogicalChannelAckParameters, H2250LogicalChannelAckParameters_sequence);
10323
10324   return offset;
10325 }
10326
10327
10328 static const value_string h245_T_forwardMultiplexAckParameters_vals[] = {
10329   {   0, "h2250LogicalChannelAckParameters" },
10330   { 0, NULL }
10331 };
10332
10333 static const per_choice_t T_forwardMultiplexAckParameters_choice[] = {
10334   {   0, &hf_h245_h2250LogicalChannelAckParameters, ASN1_EXTENSION_ROOT    , dissect_h245_H2250LogicalChannelAckParameters },
10335   { 0, NULL, 0, NULL }
10336 };
10337
10338 static int
10339 dissect_h245_T_forwardMultiplexAckParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10340 #line 589 "h245.cnf"
10341
10342
10343         media_channel = FALSE;
10344         media_control_channel = FALSE;
10345
10346
10347   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10348                                  ett_h245_T_forwardMultiplexAckParameters, T_forwardMultiplexAckParameters_choice,
10349                                  NULL);
10350
10351 #line 597 "h245.cnf"
10352         
10353         if (!actx->pinfo->fd->flags.visited) {
10354                 if (codec_type && strcmp(codec_type, "t38fax")==0) {
10355                         if(ipv4_address!=0 && ipv4_port!=0 && t38_handle){
10356                                 address src_addr;
10357
10358                                 src_addr.type=AT_IPv4;
10359                                 src_addr.len=4;
10360                                 src_addr.data=(guint8*)&ipv4_address;
10361
10362                                 t38_add_address(actx->pinfo, &src_addr, ipv4_port, 0, "H245", actx->pinfo->fd->num);
10363                         }
10364                 } else {
10365                         if(ipv4_address!=0 && ipv4_port!=0 && rtp_handle){
10366                                 address src_addr;
10367
10368                                 src_addr.type=AT_IPv4;
10369                                 src_addr.len=4;
10370                                 src_addr.data=(guint8*)&ipv4_address;
10371
10372                                 rtp_add_address(actx->pinfo, &src_addr, ipv4_port, 0, "H245", actx->pinfo->fd->num, NULL);
10373                         }
10374                         if(rtcp_ipv4_address!=0 && rtcp_ipv4_port!=0 && rtcp_handle){
10375                                 address src_addr;
10376
10377                                 src_addr.type=AT_IPv4;
10378                                 src_addr.len=4;
10379                                 src_addr.data=(guint8*)&rtcp_ipv4_address;
10380
10381                                 rtcp_add_address(actx->pinfo, &src_addr, rtcp_ipv4_port, 0, "H245", actx->pinfo->fd->num);
10382                         }
10383                 }
10384         }
10385
10386   return offset;
10387 }
10388
10389
10390 static const per_sequence_t OpenLogicalChannelAck_sequence[] = {
10391   { &hf_h245_olc_ack_fw_lcn , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OLC_ack_fw_lcn },
10392   { &hf_h245_olc_ack_reverseLogicalChannelParameters, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OLC_ack_reverseLogicalChannelParameters },
10393   { &hf_h245_separateStack  , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_NetworkAccessParameters },
10394   { &hf_h245_forwardMultiplexAckParameters, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_T_forwardMultiplexAckParameters },
10395   { &hf_h245_encryptionSync , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_EncryptionSync },
10396   { &hf_h245_genericInformation, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_GenericInformation },
10397   { NULL, 0, 0, NULL }
10398 };
10399
10400 static int
10401 dissect_h245_OpenLogicalChannelAck(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10402 #line 227 "h245.cnf"
10403   guint32 temp;
10404   int p2p_dir;
10405   h223_pending_olc *pend;
10406   h223_fw_lc_num = 0;
10407   h223_rev_lc_num = 0;
10408         
10409   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10410                                    ett_h245_OpenLogicalChannelAck, OpenLogicalChannelAck_sequence);
10411
10412   temp = h223_fw_lc_num;
10413   p2p_dir = actx->pinfo->p2p_dir;
10414   
10415   if(actx->pinfo->p2p_dir == P2P_DIR_SENT)
10416         actx->pinfo->p2p_dir = P2P_DIR_RECV;
10417   else
10418         actx->pinfo->p2p_dir = P2P_DIR_SENT;
10419   pend = g_hash_table_lookup( h223_pending_olc_reqs[actx->pinfo->p2p_dir], GINT_TO_POINTER(temp) );
10420   if (pend) {
10421         DISSECTOR_ASSERT( ( h223_rev_lc_num &&  pend->rev_channel_params)
10422                                    || (!h223_rev_lc_num && !pend->rev_channel_params) );
10423         if(h223_add_lc_handle) {
10424           (*h223_add_lc_handle)( actx->pinfo, h223_fw_lc_num, pend->fw_channel_params );
10425           if(h223_rev_lc_num)
10426                 (*h223_add_lc_handle)( actx->pinfo, h223_rev_lc_num, pend->rev_channel_params );
10427         }
10428   } else {
10429         /* we missed the OpenLogicalChannel packet */
10430   }
10431   actx->pinfo->p2p_dir = p2p_dir;
10432
10433
10434 #line 497 "h245.cnf"
10435
10436   h245_pi->msg_type = H245_OpenLogChnAck;
10437
10438   return offset;
10439 }
10440
10441
10442 static const value_string h245_OpenLogicalChannelRejectCause_vals[] = {
10443   {   0, "unspecified" },
10444   {   1, "unsuitableReverseParameters" },
10445   {   2, "dataTypeNotSupported" },
10446   {   3, "dataTypeNotAvailable" },
10447   {   4, "unknownDataType" },
10448   {   5, "dataTypeALCombinationNotSupported" },
10449   {   6, "multicastChannelNotAllowed" },
10450   {   7, "insufficientBandwidth" },
10451   {   8, "separateStackEstablishmentFailed" },
10452   {   9, "invalidSessionID" },
10453   {  10, "masterSlaveConflict" },
10454   {  11, "waitForCommunicationMode" },
10455   {  12, "invalidDependentChannel" },
10456   {  13, "replacementForRejected" },
10457   {  14, "securityDenied" },
10458   { 0, NULL }
10459 };
10460
10461 static const per_choice_t OpenLogicalChannelRejectCause_choice[] = {
10462   {   0, &hf_h245_unspecified    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10463   {   1, &hf_h245_unsuitableReverseParameters, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10464   {   2, &hf_h245_dataTypeNotSupported, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10465   {   3, &hf_h245_dataTypeNotAvailable, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10466   {   4, &hf_h245_unknownDataType, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10467   {   5, &hf_h245_dataTypeALCombinationNotSupported, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10468   {   6, &hf_h245_multicastChannelNotAllowed, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
10469   {   7, &hf_h245_insufficientBandwidth, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
10470   {   8, &hf_h245_separateStackEstablishmentFailed, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
10471   {   9, &hf_h245_invalidSessionID, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
10472   {  10, &hf_h245_masterSlaveConflict, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
10473   {  11, &hf_h245_waitForCommunicationMode, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
10474   {  12, &hf_h245_invalidDependentChannel, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
10475   {  13, &hf_h245_replacementForRejected, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
10476   {  14, &hf_h245_securityDenied , ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
10477   { 0, NULL, 0, NULL }
10478 };
10479
10480 static int
10481 dissect_h245_OpenLogicalChannelRejectCause(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10482   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10483                                  ett_h245_OpenLogicalChannelRejectCause, OpenLogicalChannelRejectCause_choice,
10484                                  NULL);
10485
10486   return offset;
10487 }
10488
10489
10490 static const per_sequence_t OpenLogicalChannelReject_sequence[] = {
10491   { &hf_h245_forwardLogicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
10492   { &hf_h245_olc_rej_cause  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OpenLogicalChannelRejectCause },
10493   { &hf_h245_genericInformation, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_GenericInformation },
10494   { NULL, 0, 0, NULL }
10495 };
10496
10497 static int
10498 dissect_h245_OpenLogicalChannelReject(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10499   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10500                                    ett_h245_OpenLogicalChannelReject, OpenLogicalChannelReject_sequence);
10501
10502 #line 440 "h245.cnf"
10503
10504   h245_pi->msg_type = H245_OpenLogChnRjc;
10505
10506   return offset;
10507 }
10508
10509
10510 static const per_sequence_t CloseLogicalChannelAck_sequence[] = {
10511   { &hf_h245_forwardLogicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
10512   { NULL, 0, 0, NULL }
10513 };
10514
10515 static int
10516 dissect_h245_CloseLogicalChannelAck(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10517   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10518                                    ett_h245_CloseLogicalChannelAck, CloseLogicalChannelAck_sequence);
10519
10520 #line 450 "h245.cnf"
10521
10522   h245_pi->msg_type = H245_CloseLogChnAck;
10523
10524   return offset;
10525 }
10526
10527
10528 static const per_sequence_t RequestChannelCloseAck_sequence[] = {
10529   { &hf_h245_forwardLogicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
10530   { NULL, 0, 0, NULL }
10531 };
10532
10533 static int
10534 dissect_h245_RequestChannelCloseAck(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10535   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10536                                    ett_h245_RequestChannelCloseAck, RequestChannelCloseAck_sequence);
10537
10538   return offset;
10539 }
10540
10541
10542 static const value_string h245_RequestChannelCloseRejectCause_vals[] = {
10543   {   0, "unspecified" },
10544   { 0, NULL }
10545 };
10546
10547 static const per_choice_t RequestChannelCloseRejectCause_choice[] = {
10548   {   0, &hf_h245_unspecified    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10549   { 0, NULL, 0, NULL }
10550 };
10551
10552 static int
10553 dissect_h245_RequestChannelCloseRejectCause(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10554   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10555                                  ett_h245_RequestChannelCloseRejectCause, RequestChannelCloseRejectCause_choice,
10556                                  NULL);
10557
10558   return offset;
10559 }
10560
10561
10562 static const per_sequence_t RequestChannelCloseReject_sequence[] = {
10563   { &hf_h245_forwardLogicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
10564   { &hf_h245_req_chan_clos_rej_cause, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_RequestChannelCloseRejectCause },
10565   { NULL, 0, 0, NULL }
10566 };
10567
10568 static int
10569 dissect_h245_RequestChannelCloseReject(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10570   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10571                                    ett_h245_RequestChannelCloseReject, RequestChannelCloseReject_sequence);
10572
10573   return offset;
10574 }
10575
10576
10577 static const per_sequence_t MultiplexEntrySendAck_sequence[] = {
10578   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
10579   { &hf_h245_multiplexTableEntryNumbers, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber },
10580   { NULL, 0, 0, NULL }
10581 };
10582
10583 static int
10584 dissect_h245_MultiplexEntrySendAck(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10585   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10586                                    ett_h245_MultiplexEntrySendAck, MultiplexEntrySendAck_sequence);
10587
10588   return offset;
10589 }
10590
10591
10592 static const value_string h245_MultiplexEntryRejectionDescriptionsCause_vals[] = {
10593   {   0, "unspecifiedCause" },
10594   {   1, "descriptorTooComplex" },
10595   { 0, NULL }
10596 };
10597
10598 static const per_choice_t MultiplexEntryRejectionDescriptionsCause_choice[] = {
10599   {   0, &hf_h245_unspecifiedCause, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10600   {   1, &hf_h245_descriptorTooComplex, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10601   { 0, NULL, 0, NULL }
10602 };
10603
10604 static int
10605 dissect_h245_MultiplexEntryRejectionDescriptionsCause(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10606   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10607                                  ett_h245_MultiplexEntryRejectionDescriptionsCause, MultiplexEntryRejectionDescriptionsCause_choice,
10608                                  NULL);
10609
10610   return offset;
10611 }
10612
10613
10614 static const per_sequence_t MultiplexEntryRejectionDescriptions_sequence[] = {
10615   { &hf_h245_multiplexTableEntryNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MultiplexTableEntryNumber },
10616   { &hf_h245_mux_rej_cause  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MultiplexEntryRejectionDescriptionsCause },
10617   { NULL, 0, 0, NULL }
10618 };
10619
10620 static int
10621 dissect_h245_MultiplexEntryRejectionDescriptions(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10622   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10623                                    ett_h245_MultiplexEntryRejectionDescriptions, MultiplexEntryRejectionDescriptions_sequence);
10624
10625   return offset;
10626 }
10627
10628
10629 static const per_sequence_t SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions_set_of[1] = {
10630   { &hf_h245_sendRejectionDescriptions_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_MultiplexEntryRejectionDescriptions },
10631 };
10632
10633 static int
10634 dissect_h245_SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10635   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
10636                                              ett_h245_SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions, SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions_set_of,
10637                                              1, 15);
10638
10639   return offset;
10640 }
10641
10642
10643 static const per_sequence_t MultiplexEntrySendReject_sequence[] = {
10644   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
10645   { &hf_h245_sendRejectionDescriptions, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions },
10646   { NULL, 0, 0, NULL }
10647 };
10648
10649 static int
10650 dissect_h245_MultiplexEntrySendReject(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10651   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10652                                    ett_h245_MultiplexEntrySendReject, MultiplexEntrySendReject_sequence);
10653
10654   return offset;
10655 }
10656
10657
10658 static const per_sequence_t RequestMultiplexEntryAck_sequence[] = {
10659   { &hf_h245_entryNumbers   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber },
10660   { NULL, 0, 0, NULL }
10661 };
10662
10663 static int
10664 dissect_h245_RequestMultiplexEntryAck(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10665   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10666                                    ett_h245_RequestMultiplexEntryAck, RequestMultiplexEntryAck_sequence);
10667
10668   return offset;
10669 }
10670
10671
10672 static const value_string h245_RequestMultiplexEntryRejectionDescriptionsCause_vals[] = {
10673   {   0, "unspecifiedCause" },
10674   { 0, NULL }
10675 };
10676
10677 static const per_choice_t RequestMultiplexEntryRejectionDescriptionsCause_choice[] = {
10678   {   0, &hf_h245_unspecifiedCause, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10679   { 0, NULL, 0, NULL }
10680 };
10681
10682 static int
10683 dissect_h245_RequestMultiplexEntryRejectionDescriptionsCause(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10684   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10685                                  ett_h245_RequestMultiplexEntryRejectionDescriptionsCause, RequestMultiplexEntryRejectionDescriptionsCause_choice,
10686                                  NULL);
10687
10688   return offset;
10689 }
10690
10691
10692 static const per_sequence_t RequestMultiplexEntryRejectionDescriptions_sequence[] = {
10693   { &hf_h245_multiplexTableEntryNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MultiplexTableEntryNumber },
10694   { &hf_h245_req_mux_rej_cause, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_RequestMultiplexEntryRejectionDescriptionsCause },
10695   { NULL, 0, 0, NULL }
10696 };
10697
10698 static int
10699 dissect_h245_RequestMultiplexEntryRejectionDescriptions(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10700   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10701                                    ett_h245_RequestMultiplexEntryRejectionDescriptions, RequestMultiplexEntryRejectionDescriptions_sequence);
10702
10703   return offset;
10704 }
10705
10706
10707 static const per_sequence_t SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions_set_of[1] = {
10708   { &hf_h245_rejectionDescriptions_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_RequestMultiplexEntryRejectionDescriptions },
10709 };
10710
10711 static int
10712 dissect_h245_SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10713   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
10714                                              ett_h245_SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions, SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions_set_of,
10715                                              1, 15);
10716
10717   return offset;
10718 }
10719
10720
10721 static const per_sequence_t RequestMultiplexEntryReject_sequence[] = {
10722   { &hf_h245_entryNumbers   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber },
10723   { &hf_h245_rejectionDescriptions, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions },
10724   { NULL, 0, 0, NULL }
10725 };
10726
10727 static int
10728 dissect_h245_RequestMultiplexEntryReject(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10729   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10730                                    ett_h245_RequestMultiplexEntryReject, RequestMultiplexEntryReject_sequence);
10731
10732   return offset;
10733 }
10734
10735
10736 static const value_string h245_Req_mode_ack_response_vals[] = {
10737   {   0, "willTransmitMostPreferredMode" },
10738   {   1, "willTransmitLessPreferredMode" },
10739   { 0, NULL }
10740 };
10741
10742 static const per_choice_t Req_mode_ack_response_choice[] = {
10743   {   0, &hf_h245_willTransmitMostPreferredMode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10744   {   1, &hf_h245_willTransmitLessPreferredMode, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10745   { 0, NULL, 0, NULL }
10746 };
10747
10748 static int
10749 dissect_h245_Req_mode_ack_response(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10750   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10751                                  ett_h245_Req_mode_ack_response, Req_mode_ack_response_choice,
10752                                  NULL);
10753
10754   return offset;
10755 }
10756
10757
10758 static const per_sequence_t RequestModeAck_sequence[] = {
10759   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
10760   { &hf_h245_req_mode_ack_response, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Req_mode_ack_response },
10761   { NULL, 0, 0, NULL }
10762 };
10763
10764 static int
10765 dissect_h245_RequestModeAck(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10766   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10767                                    ett_h245_RequestModeAck, RequestModeAck_sequence);
10768
10769   return offset;
10770 }
10771
10772
10773 static const value_string h245_RequestModeRejectCause_vals[] = {
10774   {   0, "modeUnavailable" },
10775   {   1, "multipointConstraint" },
10776   {   2, "requestDenied" },
10777   { 0, NULL }
10778 };
10779
10780 static const per_choice_t RequestModeRejectCause_choice[] = {
10781   {   0, &hf_h245_modeUnavailable, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10782   {   1, &hf_h245_multipointConstraint, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10783   {   2, &hf_h245_requestDenied  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10784   { 0, NULL, 0, NULL }
10785 };
10786
10787 static int
10788 dissect_h245_RequestModeRejectCause(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10789   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10790                                  ett_h245_RequestModeRejectCause, RequestModeRejectCause_choice,
10791                                  NULL);
10792
10793   return offset;
10794 }
10795
10796
10797 static const per_sequence_t RequestModeReject_sequence[] = {
10798   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
10799   { &hf_h245_req_rej_cause  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_RequestModeRejectCause },
10800   { NULL, 0, 0, NULL }
10801 };
10802
10803 static int
10804 dissect_h245_RequestModeReject(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10805   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10806                                    ett_h245_RequestModeReject, RequestModeReject_sequence);
10807
10808   return offset;
10809 }
10810
10811
10812 static const per_sequence_t RoundTripDelayResponse_sequence[] = {
10813   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
10814   { NULL, 0, 0, NULL }
10815 };
10816
10817 static int
10818 dissect_h245_RoundTripDelayResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10819   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10820                                    ett_h245_RoundTripDelayResponse, RoundTripDelayResponse_sequence);
10821
10822   return offset;
10823 }
10824
10825
10826 static const value_string h245_Mla_type_vals[] = {
10827   {   0, "systemLoop" },
10828   {   1, "mediaLoop" },
10829   {   2, "logicalChannelLoop" },
10830   { 0, NULL }
10831 };
10832
10833 static const per_choice_t Mla_type_choice[] = {
10834   {   0, &hf_h245_systemLoop     , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10835   {   1, &hf_h245_mediaLoop      , ASN1_EXTENSION_ROOT    , dissect_h245_LogicalChannelNumber },
10836   {   2, &hf_h245_logicalChannelLoop, ASN1_EXTENSION_ROOT    , dissect_h245_LogicalChannelNumber },
10837   { 0, NULL, 0, NULL }
10838 };
10839
10840 static int
10841 dissect_h245_Mla_type(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10842   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10843                                  ett_h245_Mla_type, Mla_type_choice,
10844                                  NULL);
10845
10846   return offset;
10847 }
10848
10849
10850 static const per_sequence_t MaintenanceLoopAck_sequence[] = {
10851   { &hf_h245_mla_type       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Mla_type },
10852   { NULL, 0, 0, NULL }
10853 };
10854
10855 static int
10856 dissect_h245_MaintenanceLoopAck(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10857   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10858                                    ett_h245_MaintenanceLoopAck, MaintenanceLoopAck_sequence);
10859
10860   return offset;
10861 }
10862
10863
10864 static const value_string h245_Mlrej_type_vals[] = {
10865   {   0, "systemLoop" },
10866   {   1, "mediaLoop" },
10867   {   2, "logicalChannelLoop" },
10868   { 0, NULL }
10869 };
10870
10871 static const per_choice_t Mlrej_type_choice[] = {
10872   {   0, &hf_h245_systemLoop     , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10873   {   1, &hf_h245_mediaLoop      , ASN1_EXTENSION_ROOT    , dissect_h245_LogicalChannelNumber },
10874   {   2, &hf_h245_logicalChannelLoop, ASN1_EXTENSION_ROOT    , dissect_h245_LogicalChannelNumber },
10875   { 0, NULL, 0, NULL }
10876 };
10877
10878 static int
10879 dissect_h245_Mlrej_type(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10880   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10881                                  ett_h245_Mlrej_type, Mlrej_type_choice,
10882                                  NULL);
10883
10884   return offset;
10885 }
10886
10887
10888 static const value_string h245_MaintenanceLoopRejectCause_vals[] = {
10889   {   0, "canNotPerformLoop" },
10890   { 0, NULL }
10891 };
10892
10893 static const per_choice_t MaintenanceLoopRejectCause_choice[] = {
10894   {   0, &hf_h245_canNotPerformLoop, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
10895   { 0, NULL, 0, NULL }
10896 };
10897
10898 static int
10899 dissect_h245_MaintenanceLoopRejectCause(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10900   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10901                                  ett_h245_MaintenanceLoopRejectCause, MaintenanceLoopRejectCause_choice,
10902                                  NULL);
10903
10904   return offset;
10905 }
10906
10907
10908 static const per_sequence_t MaintenanceLoopReject_sequence[] = {
10909   { &hf_h245_mlrej_type     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Mlrej_type },
10910   { &hf_h245_maintloop_rej_cause, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MaintenanceLoopRejectCause },
10911   { NULL, 0, 0, NULL }
10912 };
10913
10914 static int
10915 dissect_h245_MaintenanceLoopReject(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10916   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10917                                    ett_h245_MaintenanceLoopReject, MaintenanceLoopReject_sequence);
10918
10919   return offset;
10920 }
10921
10922
10923
10924 static int
10925 dissect_h245_BMPString_SIZE_1_128(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10926   offset = dissect_per_BMPString(tvb, offset, actx, tree, hf_index,
10927                                           1, 128);
10928
10929   return offset;
10930 }
10931
10932
10933 static const value_string h245_T_entryDataType_vals[] = {
10934   {   0, "videoData" },
10935   {   1, "audioData" },
10936   {   2, "data" },
10937   { 0, NULL }
10938 };
10939
10940 static const per_choice_t T_entryDataType_choice[] = {
10941   {   0, &hf_h245_videoData      , ASN1_EXTENSION_ROOT    , dissect_h245_VideoCapability },
10942   {   1, &hf_h245_audioData      , ASN1_EXTENSION_ROOT    , dissect_h245_AudioCapability },
10943   {   2, &hf_h245_data           , ASN1_EXTENSION_ROOT    , dissect_h245_DataApplicationCapability },
10944   { 0, NULL, 0, NULL }
10945 };
10946
10947 static int
10948 dissect_h245_T_entryDataType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10949   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10950                                  ett_h245_T_entryDataType, T_entryDataType_choice,
10951                                  NULL);
10952
10953   return offset;
10954 }
10955
10956
10957
10958 static int
10959 dissect_h245_Cm_mediaChannel(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10960   offset = dissect_h245_TransportAddress(tvb, offset, actx, tree, hf_index);
10961
10962   return offset;
10963 }
10964
10965
10966 static const per_sequence_t CommunicationModeTableEntry_sequence[] = {
10967   { &hf_h245_nonStandardParams, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_NonStandardParameter },
10968   { &hf_h245_sessionID      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_255 },
10969   { &hf_h245_associatedSessionID, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_255 },
10970   { &hf_h245_terminalLabel  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_TerminalLabel },
10971   { &hf_h245_sessionDescription, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BMPString_SIZE_1_128 },
10972   { &hf_h245_entryDataType  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_entryDataType },
10973   { &hf_h245_cm_mediaChannel, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_Cm_mediaChannel },
10974   { &hf_h245_mediaGuaranteedDelivery, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_BOOLEAN },
10975   { &hf_h245_cm_mediaControlChannel, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_TransportAddress },
10976   { &hf_h245_mediaControlGuaranteedDelivery, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_BOOLEAN },
10977   { &hf_h245_redundancyEncoding, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_RedundancyEncoding },
10978   { &hf_h245_sessionDependency, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_INTEGER_1_255 },
10979   { &hf_h245_destination    , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_TerminalLabel },
10980   { NULL, 0, 0, NULL }
10981 };
10982
10983 static int
10984 dissect_h245_CommunicationModeTableEntry(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10985   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10986                                    ett_h245_CommunicationModeTableEntry, CommunicationModeTableEntry_sequence);
10987
10988   return offset;
10989 }
10990
10991
10992 static const per_sequence_t SET_SIZE_1_256_OF_CommunicationModeTableEntry_set_of[1] = {
10993   { &hf_h245_communicationModeTable_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_CommunicationModeTableEntry },
10994 };
10995
10996 static int
10997 dissect_h245_SET_SIZE_1_256_OF_CommunicationModeTableEntry(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
10998   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
10999                                              ett_h245_SET_SIZE_1_256_OF_CommunicationModeTableEntry, SET_SIZE_1_256_OF_CommunicationModeTableEntry_set_of,
11000                                              1, 256);
11001
11002   return offset;
11003 }
11004
11005
11006 static const value_string h245_CommunicationModeResponse_vals[] = {
11007   {   0, "communicationModeTable" },
11008   { 0, NULL }
11009 };
11010
11011 static const per_choice_t CommunicationModeResponse_choice[] = {
11012   {   0, &hf_h245_communicationModeTable, ASN1_EXTENSION_ROOT    , dissect_h245_SET_SIZE_1_256_OF_CommunicationModeTableEntry },
11013   { 0, NULL, 0, NULL }
11014 };
11015
11016 static int
11017 dissect_h245_CommunicationModeResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11018   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11019                                  ett_h245_CommunicationModeResponse, CommunicationModeResponse_choice,
11020                                  NULL);
11021
11022   return offset;
11023 }
11024
11025
11026
11027 static int
11028 dissect_h245_TerminalID(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11029   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
11030                                        1, 128, NULL);
11031
11032   return offset;
11033 }
11034
11035
11036 static const per_sequence_t T_mCTerminalIDResponse_sequence[] = {
11037   { &hf_h245_terminalLabel  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalLabel },
11038   { &hf_h245_terminalID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalID },
11039   { NULL, 0, 0, NULL }
11040 };
11041
11042 static int
11043 dissect_h245_T_mCTerminalIDResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11044   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11045                                    ett_h245_T_mCTerminalIDResponse, T_mCTerminalIDResponse_sequence);
11046
11047   return offset;
11048 }
11049
11050
11051 static const per_sequence_t T_terminalIDResponse_sequence[] = {
11052   { &hf_h245_terminalLabel  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalLabel },
11053   { &hf_h245_terminalID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalID },
11054   { NULL, 0, 0, NULL }
11055 };
11056
11057 static int
11058 dissect_h245_T_terminalIDResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11059   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11060                                    ett_h245_T_terminalIDResponse, T_terminalIDResponse_sequence);
11061
11062   return offset;
11063 }
11064
11065
11066
11067 static int
11068 dissect_h245_ConferenceID(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11069   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
11070                                        1, 32, NULL);
11071
11072   return offset;
11073 }
11074
11075
11076 static const per_sequence_t T_conferenceIDResponse_sequence[] = {
11077   { &hf_h245_terminalLabel  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalLabel },
11078   { &hf_h245_conferenceID   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_ConferenceID },
11079   { NULL, 0, 0, NULL }
11080 };
11081
11082 static int
11083 dissect_h245_T_conferenceIDResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11084   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11085                                    ett_h245_T_conferenceIDResponse, T_conferenceIDResponse_sequence);
11086
11087   return offset;
11088 }
11089
11090
11091
11092 static int
11093 dissect_h245_Password(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11094   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
11095                                        1, 32, NULL);
11096
11097   return offset;
11098 }
11099
11100
11101 static const per_sequence_t T_passwordResponse_sequence[] = {
11102   { &hf_h245_terminalLabel  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalLabel },
11103   { &hf_h245_password       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Password },
11104   { NULL, 0, 0, NULL }
11105 };
11106
11107 static int
11108 dissect_h245_T_passwordResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11109   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11110                                    ett_h245_T_passwordResponse, T_passwordResponse_sequence);
11111
11112   return offset;
11113 }
11114
11115
11116 static const per_sequence_t SET_SIZE_1_256_OF_TerminalLabel_set_of[1] = {
11117   { &hf_h245_terminalListResponse_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_TerminalLabel },
11118 };
11119
11120 static int
11121 dissect_h245_SET_SIZE_1_256_OF_TerminalLabel(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11122   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
11123                                              ett_h245_SET_SIZE_1_256_OF_TerminalLabel, SET_SIZE_1_256_OF_TerminalLabel_set_of,
11124                                              1, 256);
11125
11126   return offset;
11127 }
11128
11129
11130 static const value_string h245_T_makeMeChairResponse_vals[] = {
11131   {   0, "grantedChairToken" },
11132   {   1, "deniedChairToken" },
11133   { 0, NULL }
11134 };
11135
11136 static const per_choice_t T_makeMeChairResponse_choice[] = {
11137   {   0, &hf_h245_grantedChairToken, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11138   {   1, &hf_h245_deniedChairToken, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11139   { 0, NULL, 0, NULL }
11140 };
11141
11142 static int
11143 dissect_h245_T_makeMeChairResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11144   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11145                                  ett_h245_T_makeMeChairResponse, T_makeMeChairResponse_choice,
11146                                  NULL);
11147
11148   return offset;
11149 }
11150
11151
11152 static const per_sequence_t T_extensionAddressResponse_sequence[] = {
11153   { &hf_h245_extensionAddress, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalID },
11154   { NULL, 0, 0, NULL }
11155 };
11156
11157 static int
11158 dissect_h245_T_extensionAddressResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11159   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11160                                    ett_h245_T_extensionAddressResponse, T_extensionAddressResponse_sequence);
11161
11162   return offset;
11163 }
11164
11165
11166 static const per_sequence_t T_chairTokenOwnerResponse_sequence[] = {
11167   { &hf_h245_terminalLabel  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalLabel },
11168   { &hf_h245_terminalID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalID },
11169   { NULL, 0, 0, NULL }
11170 };
11171
11172 static int
11173 dissect_h245_T_chairTokenOwnerResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11174   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11175                                    ett_h245_T_chairTokenOwnerResponse, T_chairTokenOwnerResponse_sequence);
11176
11177   return offset;
11178 }
11179
11180
11181 static const per_sequence_t T_terminalCertificateResponse_sequence[] = {
11182   { &hf_h245_terminalLabel  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_TerminalLabel },
11183   { &hf_h245_certificateResponse, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OCTET_STRING_SIZE_1_65535 },
11184   { NULL, 0, 0, NULL }
11185 };
11186
11187 static int
11188 dissect_h245_T_terminalCertificateResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11189   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11190                                    ett_h245_T_terminalCertificateResponse, T_terminalCertificateResponse_sequence);
11191
11192   return offset;
11193 }
11194
11195
11196 static const value_string h245_T_broadcastMyLogicalChannelResponse_vals[] = {
11197   {   0, "grantedBroadcastMyLogicalChannel" },
11198   {   1, "deniedBroadcastMyLogicalChannel" },
11199   { 0, NULL }
11200 };
11201
11202 static const per_choice_t T_broadcastMyLogicalChannelResponse_choice[] = {
11203   {   0, &hf_h245_grantedBroadcastMyLogicalChannel, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11204   {   1, &hf_h245_deniedBroadcastMyLogicalChannel, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11205   { 0, NULL, 0, NULL }
11206 };
11207
11208 static int
11209 dissect_h245_T_broadcastMyLogicalChannelResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11210   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11211                                  ett_h245_T_broadcastMyLogicalChannelResponse, T_broadcastMyLogicalChannelResponse_choice,
11212                                  NULL);
11213
11214   return offset;
11215 }
11216
11217
11218 static const value_string h245_T_makeTerminalBroadcasterResponse_vals[] = {
11219   {   0, "grantedMakeTerminalBroadcaster" },
11220   {   1, "deniedMakeTerminalBroadcaster" },
11221   { 0, NULL }
11222 };
11223
11224 static const per_choice_t T_makeTerminalBroadcasterResponse_choice[] = {
11225   {   0, &hf_h245_grantedMakeTerminalBroadcaster, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11226   {   1, &hf_h245_deniedMakeTerminalBroadcaster, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11227   { 0, NULL, 0, NULL }
11228 };
11229
11230 static int
11231 dissect_h245_T_makeTerminalBroadcasterResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11232   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11233                                  ett_h245_T_makeTerminalBroadcasterResponse, T_makeTerminalBroadcasterResponse_choice,
11234                                  NULL);
11235
11236   return offset;
11237 }
11238
11239
11240 static const value_string h245_T_sendThisSourceResponse_vals[] = {
11241   {   0, "grantedSendThisSource" },
11242   {   1, "deniedSendThisSource" },
11243   { 0, NULL }
11244 };
11245
11246 static const per_choice_t T_sendThisSourceResponse_choice[] = {
11247   {   0, &hf_h245_grantedSendThisSource, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11248   {   1, &hf_h245_deniedSendThisSource, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11249   { 0, NULL, 0, NULL }
11250 };
11251
11252 static int
11253 dissect_h245_T_sendThisSourceResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11254   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11255                                  ett_h245_T_sendThisSourceResponse, T_sendThisSourceResponse_choice,
11256                                  NULL);
11257
11258   return offset;
11259 }
11260
11261
11262 static const per_sequence_t TerminalInformation_sequence[] = {
11263   { &hf_h245_terminalLabel  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalLabel },
11264   { &hf_h245_terminalID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalID },
11265   { NULL, 0, 0, NULL }
11266 };
11267
11268 static int
11269 dissect_h245_TerminalInformation(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11270   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11271                                    ett_h245_TerminalInformation, TerminalInformation_sequence);
11272
11273   return offset;
11274 }
11275
11276
11277 static const per_sequence_t SEQUENCE_OF_TerminalInformation_sequence_of[1] = {
11278   { &hf_h245_terminalInformation_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_TerminalInformation },
11279 };
11280
11281 static int
11282 dissect_h245_SEQUENCE_OF_TerminalInformation(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11283   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
11284                                       ett_h245_SEQUENCE_OF_TerminalInformation, SEQUENCE_OF_TerminalInformation_sequence_of);
11285
11286   return offset;
11287 }
11288
11289
11290 static const per_sequence_t RequestAllTerminalIDsResponse_sequence[] = {
11291   { &hf_h245_terminalInformation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SEQUENCE_OF_TerminalInformation },
11292   { NULL, 0, 0, NULL }
11293 };
11294
11295 static int
11296 dissect_h245_RequestAllTerminalIDsResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11297   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11298                                    ett_h245_RequestAllTerminalIDsResponse, RequestAllTerminalIDsResponse_sequence);
11299
11300   return offset;
11301 }
11302
11303
11304 static const value_string h245_T_reject_vals[] = {
11305   {   0, "unspecified" },
11306   {   1, "functionNotSupported" },
11307   { 0, NULL }
11308 };
11309
11310 static const per_choice_t T_reject_choice[] = {
11311   {   0, &hf_h245_unspecified    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11312   {   1, &hf_h245_functionNotSupportedFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11313   { 0, NULL, 0, NULL }
11314 };
11315
11316 static int
11317 dissect_h245_T_reject(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11318   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11319                                  ett_h245_T_reject, T_reject_choice,
11320                                  NULL);
11321
11322   return offset;
11323 }
11324
11325
11326 static const value_string h245_RemoteMCResponse_vals[] = {
11327   {   0, "accept" },
11328   {   1, "reject" },
11329   { 0, NULL }
11330 };
11331
11332 static const per_choice_t RemoteMCResponse_choice[] = {
11333   {   0, &hf_h245_accept         , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11334   {   1, &hf_h245_reject         , ASN1_EXTENSION_ROOT    , dissect_h245_T_reject },
11335   { 0, NULL, 0, NULL }
11336 };
11337
11338 static int
11339 dissect_h245_RemoteMCResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11340   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11341                                  ett_h245_RemoteMCResponse, RemoteMCResponse_choice,
11342                                  NULL);
11343
11344   return offset;
11345 }
11346
11347
11348 static const value_string h245_ConferenceResponse_vals[] = {
11349   {   0, "mCTerminalIDResponse" },
11350   {   1, "terminalIDResponse" },
11351   {   2, "conferenceIDResponse" },
11352   {   3, "passwordResponse" },
11353   {   4, "terminalListResponse" },
11354   {   5, "videoCommandReject" },
11355   {   6, "terminalDropReject" },
11356   {   7, "makeMeChairResponse" },
11357   {   8, "extensionAddressResponse" },
11358   {   9, "chairTokenOwnerResponse" },
11359   {  10, "terminalCertificateResponse" },
11360   {  11, "broadcastMyLogicalChannelResponse" },
11361   {  12, "makeTerminalBroadcasterResponse" },
11362   {  13, "sendThisSourceResponse" },
11363   {  14, "requestAllTerminalIDsResponse" },
11364   {  15, "remoteMCResponse" },
11365   { 0, NULL }
11366 };
11367
11368 static const per_choice_t ConferenceResponse_choice[] = {
11369   {   0, &hf_h245_mCTerminalIDResponse, ASN1_EXTENSION_ROOT    , dissect_h245_T_mCTerminalIDResponse },
11370   {   1, &hf_h245_terminalIDResponse, ASN1_EXTENSION_ROOT    , dissect_h245_T_terminalIDResponse },
11371   {   2, &hf_h245_conferenceIDResponse, ASN1_EXTENSION_ROOT    , dissect_h245_T_conferenceIDResponse },
11372   {   3, &hf_h245_passwordResponse, ASN1_EXTENSION_ROOT    , dissect_h245_T_passwordResponse },
11373   {   4, &hf_h245_terminalListResponse, ASN1_EXTENSION_ROOT    , dissect_h245_SET_SIZE_1_256_OF_TerminalLabel },
11374   {   5, &hf_h245_videoCommandReject, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11375   {   6, &hf_h245_terminalDropReject, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11376   {   7, &hf_h245_makeMeChairResponse, ASN1_EXTENSION_ROOT    , dissect_h245_T_makeMeChairResponse },
11377   {   8, &hf_h245_extensionAddressResponse, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_extensionAddressResponse },
11378   {   9, &hf_h245_chairTokenOwnerResponse, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_chairTokenOwnerResponse },
11379   {  10, &hf_h245_terminalCertificateResponse, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_terminalCertificateResponse },
11380   {  11, &hf_h245_broadcastMyLogicalChannelResponse, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_broadcastMyLogicalChannelResponse },
11381   {  12, &hf_h245_makeTerminalBroadcasterResponse, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_makeTerminalBroadcasterResponse },
11382   {  13, &hf_h245_sendThisSourceResponse, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_sendThisSourceResponse },
11383   {  14, &hf_h245_requestAllTerminalIDsResponse, ASN1_NOT_EXTENSION_ROOT, dissect_h245_RequestAllTerminalIDsResponse },
11384   {  15, &hf_h245_remoteMCResponse, ASN1_NOT_EXTENSION_ROOT, dissect_h245_RemoteMCResponse },
11385   { 0, NULL, 0, NULL }
11386 };
11387
11388 static int
11389 dissect_h245_ConferenceResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11390   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11391                                  ett_h245_ConferenceResponse, ConferenceResponse_choice,
11392                                  NULL);
11393
11394   return offset;
11395 }
11396
11397
11398 static const per_sequence_t CallInformationResp_sequence[] = {
11399   { &hf_h245_dialingInformation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_DialingInformation },
11400   { &hf_h245_callAssociationNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_4294967295 },
11401   { NULL, 0, 0, NULL }
11402 };
11403
11404 static int
11405 dissect_h245_CallInformationResp(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11406   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11407                                    ett_h245_CallInformationResp, CallInformationResp_sequence);
11408
11409   return offset;
11410 }
11411
11412
11413 static const value_string h245_T_rejected_vals[] = {
11414   {   0, "connectionsNotAvailable" },
11415   {   1, "userRejected" },
11416   { 0, NULL }
11417 };
11418
11419 static const per_choice_t T_rejected_choice[] = {
11420   {   0, &hf_h245_connectionsNotAvailable, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11421   {   1, &hf_h245_userRejected   , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11422   { 0, NULL, 0, NULL }
11423 };
11424
11425 static int
11426 dissect_h245_T_rejected(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11427   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11428                                  ett_h245_T_rejected, T_rejected_choice,
11429                                  NULL);
11430
11431   return offset;
11432 }
11433
11434
11435 static const value_string h245_T_responseCode_vals[] = {
11436   {   0, "accepted" },
11437   {   1, "rejected" },
11438   { 0, NULL }
11439 };
11440
11441 static const per_choice_t T_responseCode_choice[] = {
11442   {   0, &hf_h245_accepted       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11443   {   1, &hf_h245_rejected       , ASN1_EXTENSION_ROOT    , dissect_h245_T_rejected },
11444   { 0, NULL, 0, NULL }
11445 };
11446
11447 static int
11448 dissect_h245_T_responseCode(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11449   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11450                                  ett_h245_T_responseCode, T_responseCode_choice,
11451                                  NULL);
11452
11453   return offset;
11454 }
11455
11456
11457 static const per_sequence_t AddConnectionResp_sequence[] = {
11458   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
11459   { &hf_h245_responseCode   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_responseCode },
11460   { NULL, 0, 0, NULL }
11461 };
11462
11463 static int
11464 dissect_h245_AddConnectionResp(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11465   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11466                                    ett_h245_AddConnectionResp, AddConnectionResp_sequence);
11467
11468   return offset;
11469 }
11470
11471
11472 static const per_sequence_t RemoveConnectionResp_sequence[] = {
11473   { &hf_h245_connectionIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_ConnectionIdentifier },
11474   { NULL, 0, 0, NULL }
11475 };
11476
11477 static int
11478 dissect_h245_RemoveConnectionResp(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11479   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11480                                    ett_h245_RemoveConnectionResp, RemoveConnectionResp_sequence);
11481
11482   return offset;
11483 }
11484
11485
11486 static const per_sequence_t MaximumHeaderIntervalResp_sequence[] = {
11487   { &hf_h245_currentInterval, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
11488   { NULL, 0, 0, NULL }
11489 };
11490
11491 static int
11492 dissect_h245_MaximumHeaderIntervalResp(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11493   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11494                                    ett_h245_MaximumHeaderIntervalResp, MaximumHeaderIntervalResp_sequence);
11495
11496   return offset;
11497 }
11498
11499
11500 static const value_string h245_MultilinkResponse_vals[] = {
11501   {   0, "nonStandard" },
11502   {   1, "callInformation" },
11503   {   2, "addConnection" },
11504   {   3, "removeConnection" },
11505   {   4, "maximumHeaderInterval" },
11506   { 0, NULL }
11507 };
11508
11509 static const per_choice_t MultilinkResponse_choice[] = {
11510   {   0, &hf_h245_nonStandardMsg , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardMessage },
11511   {   1, &hf_h245_callInformationResp, ASN1_EXTENSION_ROOT    , dissect_h245_CallInformationResp },
11512   {   2, &hf_h245_addConnectionResp, ASN1_EXTENSION_ROOT    , dissect_h245_AddConnectionResp },
11513   {   3, &hf_h245_removeConnectionResp, ASN1_EXTENSION_ROOT    , dissect_h245_RemoveConnectionResp },
11514   {   4, &hf_h245_maximumHeaderIntervalResp, ASN1_EXTENSION_ROOT    , dissect_h245_MaximumHeaderIntervalResp },
11515   { 0, NULL, 0, NULL }
11516 };
11517
11518 static int
11519 dissect_h245_MultilinkResponse(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11520   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11521                                  ett_h245_MultilinkResponse, MultilinkResponse_choice,
11522                                  NULL);
11523
11524   return offset;
11525 }
11526
11527
11528 static const per_sequence_t LogicalChannelRateAcknowledge_sequence[] = {
11529   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
11530   { &hf_h245_logicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
11531   { &hf_h245_maximumBitRate , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_MaximumBitRate },
11532   { NULL, 0, 0, NULL }
11533 };
11534
11535 static int
11536 dissect_h245_LogicalChannelRateAcknowledge(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11537   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11538                                    ett_h245_LogicalChannelRateAcknowledge, LogicalChannelRateAcknowledge_sequence);
11539
11540   return offset;
11541 }
11542
11543
11544 static const value_string h245_LogicalChannelRateRejectReason_vals[] = {
11545   {   0, "undefinedReason" },
11546   {   1, "insufficientResources" },
11547   { 0, NULL }
11548 };
11549
11550 static const per_choice_t LogicalChannelRateRejectReason_choice[] = {
11551   {   0, &hf_h245_undefinedReason, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11552   {   1, &hf_h245_insufficientResources, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11553   { 0, NULL, 0, NULL }
11554 };
11555
11556 static int
11557 dissect_h245_LogicalChannelRateRejectReason(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11558   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11559                                  ett_h245_LogicalChannelRateRejectReason, LogicalChannelRateRejectReason_choice,
11560                                  NULL);
11561
11562   return offset;
11563 }
11564
11565
11566 static const per_sequence_t LogicalChannelRateReject_sequence[] = {
11567   { &hf_h245_sequenceNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
11568   { &hf_h245_logicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
11569   { &hf_h245_rejectReason   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelRateRejectReason },
11570   { &hf_h245_currentMaximumBitRate, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_MaximumBitRate },
11571   { NULL, 0, 0, NULL }
11572 };
11573
11574 static int
11575 dissect_h245_LogicalChannelRateReject(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11576   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11577                                    ett_h245_LogicalChannelRateReject, LogicalChannelRateReject_sequence);
11578
11579   return offset;
11580 }
11581
11582
11583 static const value_string h245_ResponseMessage_vals[] = {
11584   {   0, "nonStandard" },
11585   {   1, "masterSlaveDeterminationAck" },
11586   {   2, "masterSlaveDeterminationReject" },
11587   {   3, "terminalCapabilitySetAck" },
11588   {   4, "terminalCapabilitySetReject" },
11589   {   5, "openLogicalChannelAck" },
11590   {   6, "openLogicalChannelReject" },
11591   {   7, "closeLogicalChannelAck" },
11592   {   8, "requestChannelCloseAck" },
11593   {   9, "requestChannelCloseReject" },
11594   {  10, "multiplexEntrySendAck" },
11595   {  11, "multiplexEntrySendReject" },
11596   {  12, "requestMultiplexEntryAck" },
11597   {  13, "requestMultiplexEntryReject" },
11598   {  14, "requestModeAck" },
11599   {  15, "requestModeReject" },
11600   {  16, "roundTripDelayResponse" },
11601   {  17, "maintenanceLoopAck" },
11602   {  18, "maintenanceLoopReject" },
11603   {  19, "communicationModeResponse" },
11604   {  20, "conferenceResponse" },
11605   {  21, "multilinkResponse" },
11606   {  22, "logicalChannelRateAcknowledge" },
11607   {  23, "logicalChannelRateReject" },
11608   {  24, "genericResponse" },
11609   { 0, NULL }
11610 };
11611
11612 static const per_choice_t ResponseMessage_choice[] = {
11613   {   0, &hf_h245_nonStandardMsg , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardMessage },
11614   {   1, &hf_h245_masterSlaveDeterminationAck, ASN1_EXTENSION_ROOT    , dissect_h245_MasterSlaveDeterminationAck },
11615   {   2, &hf_h245_masterSlaveDeterminationReject, ASN1_EXTENSION_ROOT    , dissect_h245_MasterSlaveDeterminationReject },
11616   {   3, &hf_h245_terminalCapabilitySetAck, ASN1_EXTENSION_ROOT    , dissect_h245_TerminalCapabilitySetAck },
11617   {   4, &hf_h245_terminalCapabilitySetReject, ASN1_EXTENSION_ROOT    , dissect_h245_TerminalCapabilitySetReject },
11618   {   5, &hf_h245_openLogicalChannelAck, ASN1_EXTENSION_ROOT    , dissect_h245_OpenLogicalChannelAck },
11619   {   6, &hf_h245_openLogicalChannelReject, ASN1_EXTENSION_ROOT    , dissect_h245_OpenLogicalChannelReject },
11620   {   7, &hf_h245_closeLogicalChannelAck, ASN1_EXTENSION_ROOT    , dissect_h245_CloseLogicalChannelAck },
11621   {   8, &hf_h245_requestChannelCloseAck, ASN1_EXTENSION_ROOT    , dissect_h245_RequestChannelCloseAck },
11622   {   9, &hf_h245_requestChannelCloseReject, ASN1_EXTENSION_ROOT    , dissect_h245_RequestChannelCloseReject },
11623   {  10, &hf_h245_multiplexEntrySendAck, ASN1_EXTENSION_ROOT    , dissect_h245_MultiplexEntrySendAck },
11624   {  11, &hf_h245_multiplexEntrySendReject, ASN1_EXTENSION_ROOT    , dissect_h245_MultiplexEntrySendReject },
11625   {  12, &hf_h245_requestMultiplexEntryAck, ASN1_EXTENSION_ROOT    , dissect_h245_RequestMultiplexEntryAck },
11626   {  13, &hf_h245_requestMultiplexEntryReject, ASN1_EXTENSION_ROOT    , dissect_h245_RequestMultiplexEntryReject },
11627   {  14, &hf_h245_requestModeAck , ASN1_EXTENSION_ROOT    , dissect_h245_RequestModeAck },
11628   {  15, &hf_h245_requestModeReject, ASN1_EXTENSION_ROOT    , dissect_h245_RequestModeReject },
11629   {  16, &hf_h245_roundTripDelayResponse, ASN1_EXTENSION_ROOT    , dissect_h245_RoundTripDelayResponse },
11630   {  17, &hf_h245_maintenanceLoopAck, ASN1_EXTENSION_ROOT    , dissect_h245_MaintenanceLoopAck },
11631   {  18, &hf_h245_maintenanceLoopReject, ASN1_EXTENSION_ROOT    , dissect_h245_MaintenanceLoopReject },
11632   {  19, &hf_h245_communicationModeResponse, ASN1_NOT_EXTENSION_ROOT, dissect_h245_CommunicationModeResponse },
11633   {  20, &hf_h245_conferenceResponse, ASN1_NOT_EXTENSION_ROOT, dissect_h245_ConferenceResponse },
11634   {  21, &hf_h245_multilinkResponse, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MultilinkResponse },
11635   {  22, &hf_h245_logicalChannelRateAcknowledge, ASN1_NOT_EXTENSION_ROOT, dissect_h245_LogicalChannelRateAcknowledge },
11636   {  23, &hf_h245_logicalChannelRateReject, ASN1_NOT_EXTENSION_ROOT, dissect_h245_LogicalChannelRateReject },
11637   {  24, &hf_h245_genericResponse, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericMessage },
11638   { 0, NULL, 0, NULL }
11639 };
11640
11641 static int
11642 dissect_h245_ResponseMessage(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11643 #line 307 "h245.cnf"
11644   guint32 value;
11645
11646   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11647                                  ett_h245_ResponseMessage, ResponseMessage_choice,
11648                                  &value);
11649
11650         if (check_col(actx->pinfo->cinfo, COL_INFO)){
11651                 if ( h245_shorttypes == TRUE )
11652                 {
11653                         col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
11654                                 val_to_str(value, h245_ResponseMessage_short_vals, "<unknown>"));
11655                 }
11656                 else
11657                 {
11658                         col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
11659                                 val_to_str(value, h245_ResponseMessage_vals, "<unknown>"));
11660                 }
11661         }
11662
11663         col_set_fence(actx->pinfo->cinfo,COL_INFO);
11664
11665     /* Add to packet info */
11666     g_snprintf(h245_pi->frame_label, 50, "%s %s ", h245_pi->frame_label, val_to_str(value, h245_ResponseMessage_short_vals, "UKN"));
11667         g_strlcat(h245_pi->comment, val_to_str(value, h245_ResponseMessage_vals, "<unknown>"), 50);
11668
11669
11670
11671   return offset;
11672 }
11673
11674
11675 static const per_sequence_t MaintenanceLoopOffCommand_sequence[] = {
11676   { NULL, 0, 0, NULL }
11677 };
11678
11679 static int
11680 dissect_h245_MaintenanceLoopOffCommand(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11681   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11682                                    ett_h245_MaintenanceLoopOffCommand, MaintenanceLoopOffCommand_sequence);
11683
11684   return offset;
11685 }
11686
11687
11688 static const per_sequence_t SET_SIZE_1_65535_OF_CapabilityTableEntryNumber_set_of[1] = {
11689   { &hf_h245_capabilityTableEntryNumbers_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityTableEntryNumber },
11690 };
11691
11692 static int
11693 dissect_h245_SET_SIZE_1_65535_OF_CapabilityTableEntryNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11694   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
11695                                              ett_h245_SET_SIZE_1_65535_OF_CapabilityTableEntryNumber, SET_SIZE_1_65535_OF_CapabilityTableEntryNumber_set_of,
11696                                              1, 65535);
11697
11698   return offset;
11699 }
11700
11701
11702 static const per_sequence_t SET_SIZE_1_256_OF_CapabilityDescriptorNumber_set_of[1] = {
11703   { &hf_h245_capabilityDescriptorNumbers_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_CapabilityDescriptorNumber },
11704 };
11705
11706 static int
11707 dissect_h245_SET_SIZE_1_256_OF_CapabilityDescriptorNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11708   offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
11709                                              ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptorNumber, SET_SIZE_1_256_OF_CapabilityDescriptorNumber_set_of,
11710                                              1, 256);
11711
11712   return offset;
11713 }
11714
11715
11716 static const per_sequence_t T_specificRequest_sequence[] = {
11717   { &hf_h245_multiplexCapabilityBool, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
11718   { &hf_h245_capabilityTableEntryNumbers, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SET_SIZE_1_65535_OF_CapabilityTableEntryNumber },
11719   { &hf_h245_capabilityDescriptorNumbers, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_SET_SIZE_1_256_OF_CapabilityDescriptorNumber },
11720   { NULL, 0, 0, NULL }
11721 };
11722
11723 static int
11724 dissect_h245_T_specificRequest(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11725   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11726                                    ett_h245_T_specificRequest, T_specificRequest_sequence);
11727
11728   return offset;
11729 }
11730
11731
11732 static const value_string h245_SendTerminalCapabilitySet_vals[] = {
11733   {   0, "specificRequest" },
11734   {   1, "genericRequest" },
11735   { 0, NULL }
11736 };
11737
11738 static const per_choice_t SendTerminalCapabilitySet_choice[] = {
11739   {   0, &hf_h245_specificRequest, ASN1_EXTENSION_ROOT    , dissect_h245_T_specificRequest },
11740   {   1, &hf_h245_genericRequestFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11741   { 0, NULL, 0, NULL }
11742 };
11743
11744 static int
11745 dissect_h245_SendTerminalCapabilitySet(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11746   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11747                                  ett_h245_SendTerminalCapabilitySet, SendTerminalCapabilitySet_choice,
11748                                  NULL);
11749
11750   return offset;
11751 }
11752
11753
11754 static const per_sequence_t T_encryptionAlgorithmID_sequence[] = {
11755   { &hf_h245_h233AlgorithmIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_SequenceNumber },
11756   { &hf_h245_associatedAlgorithm, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_NonStandardParameter },
11757   { NULL, 0, 0, NULL }
11758 };
11759
11760 static int
11761 dissect_h245_T_encryptionAlgorithmID(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11762   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11763                                    ett_h245_T_encryptionAlgorithmID, T_encryptionAlgorithmID_sequence);
11764
11765   return offset;
11766 }
11767
11768
11769 static const value_string h245_EncryptionCommand_vals[] = {
11770   {   0, "encryptionSE" },
11771   {   1, "encryptionIVRequest" },
11772   {   2, "encryptionAlgorithmID" },
11773   { 0, NULL }
11774 };
11775
11776 static const per_choice_t EncryptionCommand_choice[] = {
11777   {   0, &hf_h245_encryptionSE   , ASN1_EXTENSION_ROOT    , dissect_h245_OCTET_STRING },
11778   {   1, &hf_h245_encryptionIVRequest, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11779   {   2, &hf_h245_encryptionAlgorithmID, ASN1_EXTENSION_ROOT    , dissect_h245_T_encryptionAlgorithmID },
11780   { 0, NULL, 0, NULL }
11781 };
11782
11783 static int
11784 dissect_h245_EncryptionCommand(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11785   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11786                                  ett_h245_EncryptionCommand, EncryptionCommand_choice,
11787                                  NULL);
11788
11789   return offset;
11790 }
11791
11792
11793 static const value_string h245_Scope_vals[] = {
11794   {   0, "logicalChannelNumber" },
11795   {   1, "resourceID" },
11796   {   2, "wholeMultiplex" },
11797   { 0, NULL }
11798 };
11799
11800 static const per_choice_t Scope_choice[] = {
11801   {   0, &hf_h245_logicalChannelNumber, ASN1_NO_EXTENSIONS     , dissect_h245_LogicalChannelNumber },
11802   {   1, &hf_h245_resourceID     , ASN1_NO_EXTENSIONS     , dissect_h245_INTEGER_0_65535 },
11803   {   2, &hf_h245_wholeMultiplex , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
11804   { 0, NULL, 0, NULL }
11805 };
11806
11807 static int
11808 dissect_h245_Scope(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11809   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11810                                  ett_h245_Scope, Scope_choice,
11811                                  NULL);
11812
11813   return offset;
11814 }
11815
11816
11817 static const value_string h245_Restriction_vals[] = {
11818   {   0, "maximumBitRate" },
11819   {   1, "noRestriction" },
11820   { 0, NULL }
11821 };
11822
11823 static const per_choice_t Restriction_choice[] = {
11824   {   0, &hf_h245_res_maximumBitRate, ASN1_NO_EXTENSIONS     , dissect_h245_INTEGER_0_16777215 },
11825   {   1, &hf_h245_noRestriction  , ASN1_NO_EXTENSIONS     , dissect_h245_NULL },
11826   { 0, NULL, 0, NULL }
11827 };
11828
11829 static int
11830 dissect_h245_Restriction(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11831   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11832                                  ett_h245_Restriction, Restriction_choice,
11833                                  NULL);
11834
11835   return offset;
11836 }
11837
11838
11839 static const per_sequence_t FlowControlCommand_sequence[] = {
11840   { &hf_h245_scope          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Scope },
11841   { &hf_h245_restriction    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Restriction },
11842   { NULL, 0, 0, NULL }
11843 };
11844
11845 static int
11846 dissect_h245_FlowControlCommand(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11847   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11848                                    ett_h245_FlowControlCommand, FlowControlCommand_sequence);
11849
11850   return offset;
11851 }
11852
11853
11854 static const value_string h245_T_gstnOptions_vals[] = {
11855   {   0, "telephonyMode" },
11856   {   1, "v8bis" },
11857   {   2, "v34DSVD" },
11858   {   3, "v34DuplexFAX" },
11859   {   4, "v34H324" },
11860   { 0, NULL }
11861 };
11862
11863 static const per_choice_t T_gstnOptions_choice[] = {
11864   {   0, &hf_h245_telephonyMode  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11865   {   1, &hf_h245_v8bis          , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11866   {   2, &hf_h245_v34DSVD        , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11867   {   3, &hf_h245_v34DuplexFAX   , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11868   {   4, &hf_h245_v34H324        , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11869   { 0, NULL, 0, NULL }
11870 };
11871
11872 static int
11873 dissect_h245_T_gstnOptions(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11874   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11875                                  ett_h245_T_gstnOptions, T_gstnOptions_choice,
11876                                  NULL);
11877
11878   return offset;
11879 }
11880
11881
11882 static const value_string h245_T_isdnOptions_vals[] = {
11883   {   0, "telephonyMode" },
11884   {   1, "v140" },
11885   {   2, "terminalOnHold" },
11886   { 0, NULL }
11887 };
11888
11889 static const per_choice_t T_isdnOptions_choice[] = {
11890   {   0, &hf_h245_telephonyMode  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11891   {   1, &hf_h245_v140           , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11892   {   2, &hf_h245_terminalOnHold , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11893   { 0, NULL, 0, NULL }
11894 };
11895
11896 static int
11897 dissect_h245_T_isdnOptions(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11898   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11899                                  ett_h245_T_isdnOptions, T_isdnOptions_choice,
11900                                  NULL);
11901
11902   return offset;
11903 }
11904
11905
11906 static const value_string h245_EndSessionCommand_vals[] = {
11907   {   0, "nonStandard" },
11908   {   1, "disconnect" },
11909   {   2, "gstnOptions" },
11910   {   3, "isdnOptions" },
11911   {   4, "genericInformation" },
11912   { 0, NULL }
11913 };
11914
11915 static const per_choice_t EndSessionCommand_choice[] = {
11916   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
11917   {   1, &hf_h245_disconnect     , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
11918   {   2, &hf_h245_gstnOptions    , ASN1_EXTENSION_ROOT    , dissect_h245_T_gstnOptions },
11919   {   3, &hf_h245_isdnOptions    , ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_isdnOptions },
11920   {   4, &hf_h245_genericInformation, ASN1_NOT_EXTENSION_ROOT, dissect_h245_SEQUENCE_OF_GenericInformation },
11921   { 0, NULL, 0, NULL }
11922 };
11923
11924 static int
11925 dissect_h245_EndSessionCommand(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11926   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11927                                  ett_h245_EndSessionCommand, EndSessionCommand_choice,
11928                                  NULL);
11929
11930   return offset;
11931 }
11932
11933
11934
11935 static int
11936 dissect_h245_INTEGER_0_17(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11937   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11938                                               0U, 17U, NULL, FALSE);
11939
11940   return offset;
11941 }
11942
11943
11944
11945 static int
11946 dissect_h245_INTEGER_1_18(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11947   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11948                                               1U, 18U, NULL, FALSE);
11949
11950   return offset;
11951 }
11952
11953
11954 static const per_sequence_t T_videoFastUpdateGOB_sequence[] = {
11955   { &hf_h245_firstGOB       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_17 },
11956   { &hf_h245_numberOfGOBs   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_18 },
11957   { NULL, 0, 0, NULL }
11958 };
11959
11960 static int
11961 dissect_h245_T_videoFastUpdateGOB(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11962   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11963                                    ett_h245_T_videoFastUpdateGOB, T_videoFastUpdateGOB_sequence);
11964
11965   return offset;
11966 }
11967
11968
11969
11970 static int
11971 dissect_h245_INTEGER_0_31(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11972   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11973                                               0U, 31U, NULL, FALSE);
11974
11975   return offset;
11976 }
11977
11978
11979
11980 static int
11981 dissect_h245_INTEGER_1_8192(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11982   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11983                                               1U, 8192U, NULL, FALSE);
11984
11985   return offset;
11986 }
11987
11988
11989 static const per_sequence_t T_videoFastUpdateMB_sequence[] = {
11990   { &hf_h245_firstGOB_0_255 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_255 },
11991   { &hf_h245_firstMB_1_8192 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_8192 },
11992   { &hf_h245_numberOfMBs    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_8192 },
11993   { NULL, 0, 0, NULL }
11994 };
11995
11996 static int
11997 dissect_h245_T_videoFastUpdateMB(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
11998   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11999                                    ett_h245_T_videoFastUpdateMB, T_videoFastUpdateMB_sequence);
12000
12001   return offset;
12002 }
12003
12004
12005 static const per_sequence_t KeyProtectionMethod_sequence[] = {
12006   { &hf_h245_secureChannel  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
12007   { &hf_h245_sharedSecret   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
12008   { &hf_h245_certProtectedKey, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
12009   { NULL, 0, 0, NULL }
12010 };
12011
12012 static int
12013 dissect_h245_KeyProtectionMethod(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12014   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12015                                    ett_h245_KeyProtectionMethod, KeyProtectionMethod_sequence);
12016
12017   return offset;
12018 }
12019
12020
12021 static const per_sequence_t EncryptionUpdateRequest_sequence[] = {
12022   { &hf_h245_keyProtectionMethod, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_KeyProtectionMethod },
12023   { &hf_h245_synchFlag      , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_INTEGER_0_255 },
12024   { NULL, 0, 0, NULL }
12025 };
12026
12027 static int
12028 dissect_h245_EncryptionUpdateRequest(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12029   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12030                                    ett_h245_EncryptionUpdateRequest, EncryptionUpdateRequest_sequence);
12031
12032   return offset;
12033 }
12034
12035
12036 static const value_string h245_T_repeatCount_vals[] = {
12037   {   0, "doOneProgression" },
12038   {   1, "doContinuousProgressions" },
12039   {   2, "doOneIndependentProgression" },
12040   {   3, "doContinuousIndependentProgressions" },
12041   { 0, NULL }
12042 };
12043
12044 static const per_choice_t T_repeatCount_choice[] = {
12045   {   0, &hf_h245_doOneProgression, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12046   {   1, &hf_h245_doContinuousProgressions, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12047   {   2, &hf_h245_doOneIndependentProgression, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12048   {   3, &hf_h245_doContinuousIndependentProgressions, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12049   { 0, NULL, 0, NULL }
12050 };
12051
12052 static int
12053 dissect_h245_T_repeatCount(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12054   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12055                                  ett_h245_T_repeatCount, T_repeatCount_choice,
12056                                  NULL);
12057
12058   return offset;
12059 }
12060
12061
12062 static const per_sequence_t T_progressiveRefinementStart_sequence[] = {
12063   { &hf_h245_repeatCount    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_repeatCount },
12064   { NULL, 0, 0, NULL }
12065 };
12066
12067 static int
12068 dissect_h245_T_progressiveRefinementStart(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12069   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12070                                    ett_h245_T_progressiveRefinementStart, T_progressiveRefinementStart_sequence);
12071
12072   return offset;
12073 }
12074
12075
12076
12077 static int
12078 dissect_h245_INTEGER_1_9216(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12079   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
12080                                               1U, 9216U, NULL, FALSE);
12081
12082   return offset;
12083 }
12084
12085
12086 static const per_sequence_t T_videoBadMBs_sequence[] = {
12087   { &hf_h245_firstMB        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_9216 },
12088   { &hf_h245_numberOfMBs1_1_9216, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_9216 },
12089   { &hf_h245_temporalReference, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_1023 },
12090   { NULL, 0, 0, NULL }
12091 };
12092
12093 static int
12094 dissect_h245_T_videoBadMBs(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12095   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12096                                    ett_h245_T_videoBadMBs, T_videoBadMBs_sequence);
12097
12098   return offset;
12099 }
12100
12101
12102 static const value_string h245_PictureReference_vals[] = {
12103   {   0, "pictureNumber" },
12104   {   1, "longTermPictureIndex" },
12105   { 0, NULL }
12106 };
12107
12108 static const per_choice_t PictureReference_choice[] = {
12109   {   0, &hf_h245_pictureNumber  , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_1023 },
12110   {   1, &hf_h245_longTermPictureIndex, ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_255 },
12111   { 0, NULL, 0, NULL }
12112 };
12113
12114 static int
12115 dissect_h245_PictureReference(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12116   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12117                                  ett_h245_PictureReference, PictureReference_choice,
12118                                  NULL);
12119
12120   return offset;
12121 }
12122
12123
12124 static const per_sequence_t SEQUENCE_OF_PictureReference_sequence_of[1] = {
12125   { &hf_h245_lostPicture_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h245_PictureReference },
12126 };
12127
12128 static int
12129 dissect_h245_SEQUENCE_OF_PictureReference(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12130   offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
12131                                       ett_h245_SEQUENCE_OF_PictureReference, SEQUENCE_OF_PictureReference_sequence_of);
12132
12133   return offset;
12134 }
12135
12136
12137 static const per_sequence_t T_lostPartialPicture_sequence[] = {
12138   { &hf_h245_pictureReference, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_PictureReference },
12139   { &hf_h245_firstMB        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_9216 },
12140   { &hf_h245_numberOfMBs1_1_9216, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_9216 },
12141   { NULL, 0, 0, NULL }
12142 };
12143
12144 static int
12145 dissect_h245_T_lostPartialPicture(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12146   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12147                                    ett_h245_T_lostPartialPicture, T_lostPartialPicture_sequence);
12148
12149   return offset;
12150 }
12151
12152
12153 static const per_sequence_t T_encryptionUpdateCommand_sequence[] = {
12154   { &hf_h245_encryptionSync , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_EncryptionSync },
12155   { &hf_h245_multiplePayloadStream, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_MultiplePayloadStream },
12156   { NULL, 0, 0, NULL }
12157 };
12158
12159 static int
12160 dissect_h245_T_encryptionUpdateCommand(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12161   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12162                                    ett_h245_T_encryptionUpdateCommand, T_encryptionUpdateCommand_sequence);
12163
12164   return offset;
12165 }
12166
12167
12168 static const per_sequence_t T_encryptionUpdateAck_sequence[] = {
12169   { &hf_h245_synchFlag      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_255 },
12170   { NULL, 0, 0, NULL }
12171 };
12172
12173 static int
12174 dissect_h245_T_encryptionUpdateAck(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12175   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12176                                    ett_h245_T_encryptionUpdateAck, T_encryptionUpdateAck_sequence);
12177
12178   return offset;
12179 }
12180
12181
12182 static const value_string h245_Mc_type_vals[] = {
12183   {   0, "equaliseDelay" },
12184   {   1, "zeroDelay" },
12185   {   2, "multipointModeCommand" },
12186   {   3, "cancelMultipointModeCommand" },
12187   {   4, "videoFreezePicture" },
12188   {   5, "videoFastUpdatePicture" },
12189   {   6, "videoFastUpdateGOB" },
12190   {   7, "videoTemporalSpatialTradeOff" },
12191   {   8, "videoSendSyncEveryGOB" },
12192   {   9, "videoSendSyncEveryGOBCancel" },
12193   {  10, "videoFastUpdateMB" },
12194   {  11, "maxH223MUXPDUsize" },
12195   {  12, "encryptionUpdate" },
12196   {  13, "encryptionUpdateRequest" },
12197   {  14, "switchReceiveMediaOff" },
12198   {  15, "switchReceiveMediaOn" },
12199   {  16, "progressiveRefinementStart" },
12200   {  17, "progressiveRefinementAbortOne" },
12201   {  18, "progressiveRefinementAbortContinuous" },
12202   {  19, "videoBadMBs" },
12203   {  20, "lostPicture" },
12204   {  21, "lostPartialPicture" },
12205   {  22, "recoveryReferencePicture" },
12206   {  23, "encryptionUpdateCommand" },
12207   {  24, "encryptionUpdateAck" },
12208   { 0, NULL }
12209 };
12210
12211 static const per_choice_t Mc_type_choice[] = {
12212   {   0, &hf_h245_equaliseDelay  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12213   {   1, &hf_h245_zeroDelay      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12214   {   2, &hf_h245_multipointModeCommand, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12215   {   3, &hf_h245_cancelMultipointModeCommand, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12216   {   4, &hf_h245_videoFreezePicture, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12217   {   5, &hf_h245_videoFastUpdatePicture, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12218   {   6, &hf_h245_videoFastUpdateGOB, ASN1_EXTENSION_ROOT    , dissect_h245_T_videoFastUpdateGOB },
12219   {   7, &hf_h245_videoTemporalSpatialTradeOff, ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_31 },
12220   {   8, &hf_h245_videoSendSyncEveryGOB, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12221   {   9, &hf_h245_videoSendSyncEveryGOBCancel, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12222   {  10, &hf_h245_videoFastUpdateMB, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_videoFastUpdateMB },
12223   {  11, &hf_h245_maxH223MUXPDUsize, ASN1_NOT_EXTENSION_ROOT, dissect_h245_INTEGER_1_65535 },
12224   {  12, &hf_h245_encryptionUpdate, ASN1_NOT_EXTENSION_ROOT, dissect_h245_EncryptionSync },
12225   {  13, &hf_h245_encryptionUpdateRequest, ASN1_NOT_EXTENSION_ROOT, dissect_h245_EncryptionUpdateRequest },
12226   {  14, &hf_h245_switchReceiveMediaOff, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
12227   {  15, &hf_h245_switchReceiveMediaOn, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
12228   {  16, &hf_h245_progressiveRefinementStart, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_progressiveRefinementStart },
12229   {  17, &hf_h245_progressiveRefinementAbortOne, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
12230   {  18, &hf_h245_progressiveRefinementAbortContinuous, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
12231   {  19, &hf_h245_videoBadMBs    , ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_videoBadMBs },
12232   {  20, &hf_h245_lostPicture    , ASN1_NOT_EXTENSION_ROOT, dissect_h245_SEQUENCE_OF_PictureReference },
12233   {  21, &hf_h245_lostPartialPicture, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_lostPartialPicture },
12234   {  22, &hf_h245_recoveryReferencePicture, ASN1_NOT_EXTENSION_ROOT, dissect_h245_SEQUENCE_OF_PictureReference },
12235   {  23, &hf_h245_encryptionUpdateCommand, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_encryptionUpdateCommand },
12236   {  24, &hf_h245_encryptionUpdateAck, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_encryptionUpdateAck },
12237   { 0, NULL, 0, NULL }
12238 };
12239
12240 static int
12241 dissect_h245_Mc_type(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12242   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12243                                  ett_h245_Mc_type, Mc_type_choice,
12244                                  NULL);
12245
12246   return offset;
12247 }
12248
12249
12250 static const value_string h245_EncryptionUpdateDirection_vals[] = {
12251   {   0, "masterToSlave" },
12252   {   1, "slaveToMaster" },
12253   { 0, NULL }
12254 };
12255
12256 static const per_choice_t EncryptionUpdateDirection_choice[] = {
12257   {   0, &hf_h245_masterToSlave  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12258   {   1, &hf_h245_slaveToMaster  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12259   { 0, NULL, 0, NULL }
12260 };
12261
12262 static int
12263 dissect_h245_EncryptionUpdateDirection(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12264   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12265                                  ett_h245_EncryptionUpdateDirection, EncryptionUpdateDirection_choice,
12266                                  NULL);
12267
12268   return offset;
12269 }
12270
12271
12272 static const per_sequence_t MiscellaneousCommand_sequence[] = {
12273   { &hf_h245_logicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
12274   { &hf_h245_mc_type        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Mc_type },
12275   { &hf_h245_direction      , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_EncryptionUpdateDirection },
12276   { NULL, 0, 0, NULL }
12277 };
12278
12279 static int
12280 dissect_h245_MiscellaneousCommand(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12281   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12282                                    ett_h245_MiscellaneousCommand, MiscellaneousCommand_sequence);
12283
12284   return offset;
12285 }
12286
12287
12288 static const per_sequence_t CommunicationModeCommand_sequence[] = {
12289   { &hf_h245_communicationModeTable, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_256_OF_CommunicationModeTableEntry },
12290   { NULL, 0, 0, NULL }
12291 };
12292
12293 static int
12294 dissect_h245_CommunicationModeCommand(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12295   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12296                                    ett_h245_CommunicationModeCommand, CommunicationModeCommand_sequence);
12297
12298   return offset;
12299 }
12300
12301
12302 static const per_sequence_t SubstituteConferenceIDCommand_sequence[] = {
12303   { &hf_h245_conferenceIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING_SIZE_16 },
12304   { NULL, 0, 0, NULL }
12305 };
12306
12307 static int
12308 dissect_h245_SubstituteConferenceIDCommand(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12309   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12310                                    ett_h245_SubstituteConferenceIDCommand, SubstituteConferenceIDCommand_sequence);
12311
12312   return offset;
12313 }
12314
12315
12316 static const value_string h245_ConferenceCommand_vals[] = {
12317   {   0, "broadcastMyLogicalChannel" },
12318   {   1, "cancelBroadcastMyLogicalChannel" },
12319   {   2, "makeTerminalBroadcaster" },
12320   {   3, "cancelMakeTerminalBroadcaster" },
12321   {   4, "sendThisSource" },
12322   {   5, "cancelSendThisSource" },
12323   {   6, "dropConference" },
12324   {   7, "substituteConferenceIDCommand" },
12325   { 0, NULL }
12326 };
12327
12328 static const per_choice_t ConferenceCommand_choice[] = {
12329   {   0, &hf_h245_broadcastMyLogicalChannel, ASN1_EXTENSION_ROOT    , dissect_h245_LogicalChannelNumber },
12330   {   1, &hf_h245_cancelBroadcastMyLogicalChannel, ASN1_EXTENSION_ROOT    , dissect_h245_LogicalChannelNumber },
12331   {   2, &hf_h245_makeTerminalBroadcaster, ASN1_EXTENSION_ROOT    , dissect_h245_TerminalLabel },
12332   {   3, &hf_h245_cancelMakeTerminalBroadcaster, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12333   {   4, &hf_h245_sendThisSource , ASN1_EXTENSION_ROOT    , dissect_h245_TerminalLabel },
12334   {   5, &hf_h245_cancelSendThisSource, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12335   {   6, &hf_h245_dropConference , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12336   {   7, &hf_h245_substituteConferenceIDCommand, ASN1_NOT_EXTENSION_ROOT, dissect_h245_SubstituteConferenceIDCommand },
12337   { 0, NULL, 0, NULL }
12338 };
12339
12340 static int
12341 dissect_h245_ConferenceCommand(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12342   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12343                                  ett_h245_ConferenceCommand, ConferenceCommand_choice,
12344                                  NULL);
12345
12346   return offset;
12347 }
12348
12349
12350 static const value_string h245_T_h223ModeChange_vals[] = {
12351   {   0, "toLevel0" },
12352   {   1, "toLevel1" },
12353   {   2, "toLevel2" },
12354   {   3, "toLevel2withOptionalHeader" },
12355   { 0, NULL }
12356 };
12357
12358 static const per_choice_t T_h223ModeChange_choice[] = {
12359   {   0, &hf_h245_toLevel0       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12360   {   1, &hf_h245_toLevel1       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12361   {   2, &hf_h245_toLevel2       , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12362   {   3, &hf_h245_toLevel2withOptionalHeader, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12363   { 0, NULL, 0, NULL }
12364 };
12365
12366 static int
12367 dissect_h245_T_h223ModeChange(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12368   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12369                                  ett_h245_T_h223ModeChange, T_h223ModeChange_choice,
12370                                  NULL);
12371
12372   return offset;
12373 }
12374
12375
12376 static const value_string h245_T_h223AnnexADoubleFlag_vals[] = {
12377   {   0, "start" },
12378   {   1, "stop" },
12379   { 0, NULL }
12380 };
12381
12382 static const per_choice_t T_h223AnnexADoubleFlag_choice[] = {
12383   {   0, &hf_h245_start          , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12384   {   1, &hf_h245_stop           , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12385   { 0, NULL, 0, NULL }
12386 };
12387
12388 static int
12389 dissect_h245_T_h223AnnexADoubleFlag(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12390   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12391                                  ett_h245_T_h223AnnexADoubleFlag, T_h223AnnexADoubleFlag_choice,
12392                                  NULL);
12393
12394   return offset;
12395 }
12396
12397
12398 static const value_string h245_H223MultiplexReconfiguration_vals[] = {
12399   {   0, "h223ModeChange" },
12400   {   1, "h223AnnexADoubleFlag" },
12401   { 0, NULL }
12402 };
12403
12404 static const per_choice_t H223MultiplexReconfiguration_choice[] = {
12405   {   0, &hf_h245_h223ModeChange , ASN1_EXTENSION_ROOT    , dissect_h245_T_h223ModeChange },
12406   {   1, &hf_h245_h223AnnexADoubleFlag, ASN1_EXTENSION_ROOT    , dissect_h245_T_h223AnnexADoubleFlag },
12407   { 0, NULL, 0, NULL }
12408 };
12409
12410 static int
12411 dissect_h245_H223MultiplexReconfiguration(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12412   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12413                                  ett_h245_H223MultiplexReconfiguration, H223MultiplexReconfiguration_choice,
12414                                  NULL);
12415
12416   return offset;
12417 }
12418
12419
12420 static const value_string h245_Cmd_clockRecovery_vals[] = {
12421   {   0, "nullClockRecovery" },
12422   {   1, "srtsClockRecovery" },
12423   {   2, "adaptiveClockRecovery" },
12424   { 0, NULL }
12425 };
12426
12427 static const per_choice_t Cmd_clockRecovery_choice[] = {
12428   {   0, &hf_h245_nullClockRecoveryflag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12429   {   1, &hf_h245_srtsClockRecovery, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12430   {   2, &hf_h245_adaptiveClockRecoveryFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12431   { 0, NULL, 0, NULL }
12432 };
12433
12434 static int
12435 dissect_h245_Cmd_clockRecovery(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12436   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12437                                  ett_h245_Cmd_clockRecovery, Cmd_clockRecovery_choice,
12438                                  NULL);
12439
12440   return offset;
12441 }
12442
12443
12444 static const value_string h245_Cmd_errorCorrection_vals[] = {
12445   {   0, "nullErrorCorrection" },
12446   {   1, "longInterleaver" },
12447   {   2, "shortInterleaver" },
12448   {   3, "errorCorrectionOnly" },
12449   { 0, NULL }
12450 };
12451
12452 static const per_choice_t Cmd_errorCorrection_choice[] = {
12453   {   0, &hf_h245_nullErrorCorrectionFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12454   {   1, &hf_h245_longInterleaverFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12455   {   2, &hf_h245_shortInterleaverFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12456   {   3, &hf_h245_errorCorrectionOnlyFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12457   { 0, NULL, 0, NULL }
12458 };
12459
12460 static int
12461 dissect_h245_Cmd_errorCorrection(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12462   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12463                                  ett_h245_Cmd_errorCorrection, Cmd_errorCorrection_choice,
12464                                  NULL);
12465
12466   return offset;
12467 }
12468
12469
12470 static const per_sequence_t Cmd_aal1_sequence[] = {
12471   { &hf_h245_cmd_clockRecovery, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Cmd_clockRecovery },
12472   { &hf_h245_cmd_errorCorrection, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Cmd_errorCorrection },
12473   { &hf_h245_structuredDataTransfer, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
12474   { &hf_h245_partiallyFilledCells, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
12475   { NULL, 0, 0, NULL }
12476 };
12477
12478 static int
12479 dissect_h245_Cmd_aal1(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12480   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12481                                    ett_h245_Cmd_aal1, Cmd_aal1_sequence);
12482
12483   return offset;
12484 }
12485
12486
12487 static const per_sequence_t Cmd_aal5_sequence[] = {
12488   { &hf_h245_forwardMaximumSDUSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
12489   { &hf_h245_backwardMaximumSDUSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
12490   { NULL, 0, 0, NULL }
12491 };
12492
12493 static int
12494 dissect_h245_Cmd_aal5(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12495   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12496                                    ett_h245_Cmd_aal5, Cmd_aal5_sequence);
12497
12498   return offset;
12499 }
12500
12501
12502 static const value_string h245_Cmd_aal_vals[] = {
12503   {   0, "aal1" },
12504   {   1, "aal5" },
12505   { 0, NULL }
12506 };
12507
12508 static const per_choice_t Cmd_aal_choice[] = {
12509   {   0, &hf_h245_cmd_aal1       , ASN1_EXTENSION_ROOT    , dissect_h245_Cmd_aal1 },
12510   {   1, &hf_h245_cmd_aal5       , ASN1_EXTENSION_ROOT    , dissect_h245_Cmd_aal5 },
12511   { 0, NULL, 0, NULL }
12512 };
12513
12514 static int
12515 dissect_h245_Cmd_aal(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12516   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12517                                  ett_h245_Cmd_aal, Cmd_aal_choice,
12518                                  NULL);
12519
12520   return offset;
12521 }
12522
12523
12524 static const value_string h245_Cmd_multiplex_vals[] = {
12525   {   0, "noMultiplex" },
12526   {   1, "transportStream" },
12527   {   2, "programStream" },
12528   { 0, NULL }
12529 };
12530
12531 static const per_choice_t Cmd_multiplex_choice[] = {
12532   {   0, &hf_h245_noMultiplex    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12533   {   1, &hf_h245_transportStream, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12534   {   2, &hf_h245_programStreamFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12535   { 0, NULL, 0, NULL }
12536 };
12537
12538 static int
12539 dissect_h245_Cmd_multiplex(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12540   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12541                                  ett_h245_Cmd_multiplex, Cmd_multiplex_choice,
12542                                  NULL);
12543
12544   return offset;
12545 }
12546
12547
12548 static const value_string h245_CmdR_multiplex_vals[] = {
12549   {   0, "noMultiplex" },
12550   {   1, "transportStream" },
12551   {   2, "programStream" },
12552   { 0, NULL }
12553 };
12554
12555 static const per_choice_t CmdR_multiplex_choice[] = {
12556   {   0, &hf_h245_noMultiplex    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12557   {   1, &hf_h245_transportStream, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12558   {   2, &hf_h245_programStreamFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12559   { 0, NULL, 0, NULL }
12560 };
12561
12562 static int
12563 dissect_h245_CmdR_multiplex(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12564   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12565                                  ett_h245_CmdR_multiplex, CmdR_multiplex_choice,
12566                                  NULL);
12567
12568   return offset;
12569 }
12570
12571
12572 static const per_sequence_t Cmd_reverseParameters_sequence[] = {
12573   { &hf_h245_bitRate        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_65535 },
12574   { &hf_h245_bitRateLockedToPCRClock, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
12575   { &hf_h245_bitRateLockedToNetworkClock, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
12576   { &hf_h245_cmdr_multiplex , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_CmdR_multiplex },
12577   { NULL, 0, 0, NULL }
12578 };
12579
12580 static int
12581 dissect_h245_Cmd_reverseParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12582   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12583                                    ett_h245_Cmd_reverseParameters, Cmd_reverseParameters_sequence);
12584
12585   return offset;
12586 }
12587
12588
12589 static const per_sequence_t NewATMVCCommand_sequence[] = {
12590   { &hf_h245_resourceID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
12591   { &hf_h245_bitRate        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_65535 },
12592   { &hf_h245_bitRateLockedToPCRClock, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
12593   { &hf_h245_bitRateLockedToNetworkClock, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
12594   { &hf_h245_cmd_aal        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Cmd_aal },
12595   { &hf_h245_cmd_multiplex  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Cmd_multiplex },
12596   { &hf_h245_cmd_reverseParameters, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Cmd_reverseParameters },
12597   { NULL, 0, 0, NULL }
12598 };
12599
12600 static int
12601 dissect_h245_NewATMVCCommand(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12602   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12603                                    ett_h245_NewATMVCCommand, NewATMVCCommand_sequence);
12604
12605   return offset;
12606 }
12607
12608
12609 static const value_string h245_T_status_vals[] = {
12610   {   0, "synchronized" },
12611   {   1, "reconfiguration" },
12612   { 0, NULL }
12613 };
12614
12615 static const per_choice_t T_status_choice[] = {
12616   {   0, &hf_h245_synchronized   , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12617   {   1, &hf_h245_reconfiguration, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12618   { 0, NULL, 0, NULL }
12619 };
12620
12621 static int
12622 dissect_h245_T_status(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12623   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12624                                  ett_h245_T_status, T_status_choice,
12625                                  NULL);
12626
12627   return offset;
12628 }
12629
12630
12631 static const per_sequence_t MobileMultilinkReconfigurationCommand_sequence[] = {
12632   { &hf_h245_sampleSize     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_255 },
12633   { &hf_h245_samplesPerFrame, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_255 },
12634   { &hf_h245_status         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_status },
12635   { NULL, 0, 0, NULL }
12636 };
12637
12638 static int
12639 dissect_h245_MobileMultilinkReconfigurationCommand(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12640   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12641                                    ett_h245_MobileMultilinkReconfigurationCommand, MobileMultilinkReconfigurationCommand_sequence);
12642
12643   return offset;
12644 }
12645
12646
12647 static const value_string h245_CommandMessage_vals[] = {
12648   {   0, "nonStandard" },
12649   {   1, "maintenanceLoopOffCommand" },
12650   {   2, "sendTerminalCapabilitySet" },
12651   {   3, "encryptionCommand" },
12652   {   4, "flowControlCommand" },
12653   {   5, "endSessionCommand" },
12654   {   6, "miscellaneousCommand" },
12655   {   7, "communicationModeCommand" },
12656   {   8, "conferenceCommand" },
12657   {   9, "h223MultiplexReconfiguration" },
12658   {  10, "newATMVCCommand" },
12659   {  11, "mobileMultilinkReconfigurationCommand" },
12660   {  12, "genericCommand" },
12661   { 0, NULL }
12662 };
12663
12664 static const per_choice_t CommandMessage_choice[] = {
12665   {   0, &hf_h245_nonStandardMsg , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardMessage },
12666   {   1, &hf_h245_maintenanceLoopOffCommand, ASN1_EXTENSION_ROOT    , dissect_h245_MaintenanceLoopOffCommand },
12667   {   2, &hf_h245_sendTerminalCapabilitySet, ASN1_EXTENSION_ROOT    , dissect_h245_SendTerminalCapabilitySet },
12668   {   3, &hf_h245_encryptionCommand, ASN1_EXTENSION_ROOT    , dissect_h245_EncryptionCommand },
12669   {   4, &hf_h245_flowControlCommand, ASN1_EXTENSION_ROOT    , dissect_h245_FlowControlCommand },
12670   {   5, &hf_h245_endSessionCommand, ASN1_EXTENSION_ROOT    , dissect_h245_EndSessionCommand },
12671   {   6, &hf_h245_miscellaneousCommand, ASN1_EXTENSION_ROOT    , dissect_h245_MiscellaneousCommand },
12672   {   7, &hf_h245_communicationModeCommand, ASN1_NOT_EXTENSION_ROOT, dissect_h245_CommunicationModeCommand },
12673   {   8, &hf_h245_conferenceCommand, ASN1_NOT_EXTENSION_ROOT, dissect_h245_ConferenceCommand },
12674   {   9, &hf_h245_h223MultiplexReconfiguration, ASN1_NOT_EXTENSION_ROOT, dissect_h245_H223MultiplexReconfiguration },
12675   {  10, &hf_h245_newATMVCCommand, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NewATMVCCommand },
12676   {  11, &hf_h245_mobileMultilinkReconfigurationCommand, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MobileMultilinkReconfigurationCommand },
12677   {  12, &hf_h245_genericCommand , ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericMessage },
12678   { 0, NULL, 0, NULL }
12679 };
12680
12681 static int
12682 dissect_h245_CommandMessage(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12683 #line 356 "h245.cnf"
12684   guint32 value;
12685
12686   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12687                                  ett_h245_CommandMessage, CommandMessage_choice,
12688                                  &value);
12689
12690         if (check_col(actx->pinfo->cinfo, COL_INFO)){
12691                 if ( h245_shorttypes == TRUE )
12692                 {
12693                         col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
12694                                 val_to_str(value, h245_CommandMessage_short_vals, "<unknown>"));
12695                 }
12696                 else
12697                 {
12698                         col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
12699                                 val_to_str(value, h245_CommandMessage_vals, "<unknown>"));
12700                 }
12701         }
12702
12703         col_set_fence(actx->pinfo->cinfo,COL_INFO);
12704     /* Add to packet info */
12705     g_snprintf(h245_pi->frame_label, 50, "%s %s ", h245_pi->frame_label, val_to_str(value, h245_CommandMessage_short_vals, "UKN"));
12706         g_strlcat(h245_pi->comment, val_to_str(value, h245_CommandMessage_vals, "<unknown>"), 50);
12707
12708
12709
12710   return offset;
12711 }
12712
12713
12714 static const value_string h245_FunctionNotUnderstood_vals[] = {
12715   {   0, "request" },
12716   {   1, "response" },
12717   {   2, "command" },
12718   { 0, NULL }
12719 };
12720
12721 static const per_choice_t FunctionNotUnderstood_choice[] = {
12722   {   0, &hf_h245_request        , ASN1_NO_EXTENSIONS     , dissect_h245_RequestMessage },
12723   {   1, &hf_h245_response       , ASN1_NO_EXTENSIONS     , dissect_h245_ResponseMessage },
12724   {   2, &hf_h245_command        , ASN1_NO_EXTENSIONS     , dissect_h245_CommandMessage },
12725   { 0, NULL, 0, NULL }
12726 };
12727
12728 static int
12729 dissect_h245_FunctionNotUnderstood(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12730   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12731                                  ett_h245_FunctionNotUnderstood, FunctionNotUnderstood_choice,
12732                                  NULL);
12733
12734   return offset;
12735 }
12736
12737
12738 static const per_sequence_t MasterSlaveDeterminationRelease_sequence[] = {
12739   { NULL, 0, 0, NULL }
12740 };
12741
12742 static int
12743 dissect_h245_MasterSlaveDeterminationRelease(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12744   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12745                                    ett_h245_MasterSlaveDeterminationRelease, MasterSlaveDeterminationRelease_sequence);
12746
12747 #line 475 "h245.cnf"
12748
12749   h245_pi->msg_type = H245_MastSlvDetRls;
12750
12751   return offset;
12752 }
12753
12754
12755 static const per_sequence_t TerminalCapabilitySetRelease_sequence[] = {
12756   { &hf_h245_genericInformation, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_GenericInformation },
12757   { NULL, 0, 0, NULL }
12758 };
12759
12760 static int
12761 dissect_h245_TerminalCapabilitySetRelease(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12762   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12763                                    ett_h245_TerminalCapabilitySetRelease, TerminalCapabilitySetRelease_sequence);
12764
12765 #line 485 "h245.cnf"
12766
12767   h245_pi->msg_type = H245_TermCapSetRls;
12768
12769   return offset;
12770 }
12771
12772
12773 static const per_sequence_t OpenLogicalChannelConfirm_sequence[] = {
12774   { &hf_h245_forwardLogicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
12775   { &hf_h245_genericInformation, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_SEQUENCE_OF_GenericInformation },
12776   { NULL, 0, 0, NULL }
12777 };
12778
12779 static int
12780 dissect_h245_OpenLogicalChannelConfirm(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12781   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12782                                    ett_h245_OpenLogicalChannelConfirm, OpenLogicalChannelConfirm_sequence);
12783
12784 #line 455 "h245.cnf"
12785
12786   h245_pi->msg_type = H245_OpenLogChnCnf;
12787
12788   return offset;
12789 }
12790
12791
12792 static const per_sequence_t RequestChannelCloseRelease_sequence[] = {
12793   { &hf_h245_forwardLogicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
12794   { NULL, 0, 0, NULL }
12795 };
12796
12797 static int
12798 dissect_h245_RequestChannelCloseRelease(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12799   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12800                                    ett_h245_RequestChannelCloseRelease, RequestChannelCloseRelease_sequence);
12801
12802   return offset;
12803 }
12804
12805
12806 static const per_sequence_t MultiplexEntrySendRelease_sequence[] = {
12807   { &hf_h245_multiplexTableEntryNumbers, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber },
12808   { NULL, 0, 0, NULL }
12809 };
12810
12811 static int
12812 dissect_h245_MultiplexEntrySendRelease(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12813   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12814                                    ett_h245_MultiplexEntrySendRelease, MultiplexEntrySendRelease_sequence);
12815
12816   return offset;
12817 }
12818
12819
12820 static const per_sequence_t RequestMultiplexEntryRelease_sequence[] = {
12821   { &hf_h245_entryNumbers   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber },
12822   { NULL, 0, 0, NULL }
12823 };
12824
12825 static int
12826 dissect_h245_RequestMultiplexEntryRelease(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12827   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12828                                    ett_h245_RequestMultiplexEntryRelease, RequestMultiplexEntryRelease_sequence);
12829
12830   return offset;
12831 }
12832
12833
12834 static const per_sequence_t RequestModeRelease_sequence[] = {
12835   { NULL, 0, 0, NULL }
12836 };
12837
12838 static int
12839 dissect_h245_RequestModeRelease(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12840   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12841                                    ett_h245_RequestModeRelease, RequestModeRelease_sequence);
12842
12843   return offset;
12844 }
12845
12846
12847 static const per_sequence_t T_videoNotDecodedMBs_sequence[] = {
12848   { &hf_h245_firstMB_1_8192 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_8192 },
12849   { &hf_h245_numberOfMBs    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_8192 },
12850   { &hf_h245_temporalReference_0_255, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_255 },
12851   { NULL, 0, 0, NULL }
12852 };
12853
12854 static int
12855 dissect_h245_T_videoNotDecodedMBs(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12856   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12857                                    ett_h245_T_videoNotDecodedMBs, T_videoNotDecodedMBs_sequence);
12858
12859   return offset;
12860 }
12861
12862
12863 static const value_string h245_Mi_type_vals[] = {
12864   {   0, "logicalChannelActive" },
12865   {   1, "logicalChannelInactive" },
12866   {   2, "multipointConference" },
12867   {   3, "cancelMultipointConference" },
12868   {   4, "multipointZeroComm" },
12869   {   5, "cancelMultipointZeroComm" },
12870   {   6, "multipointSecondaryStatus" },
12871   {   7, "cancelMultipointSecondaryStatus" },
12872   {   8, "videoIndicateReadyToActivate" },
12873   {   9, "videoTemporalSpatialTradeOff" },
12874   {  10, "videoNotDecodedMBs" },
12875   {  11, "transportCapability" },
12876   { 0, NULL }
12877 };
12878
12879 static const per_choice_t Mi_type_choice[] = {
12880   {   0, &hf_h245_logicalChannelActive, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12881   {   1, &hf_h245_logicalChannelInactive, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12882   {   2, &hf_h245_multipointConference, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12883   {   3, &hf_h245_cancelMultipointConference, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12884   {   4, &hf_h245_multipointZeroComm, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12885   {   5, &hf_h245_cancelMultipointZeroComm, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12886   {   6, &hf_h245_multipointSecondaryStatus, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12887   {   7, &hf_h245_cancelMultipointSecondaryStatus, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12888   {   8, &hf_h245_videoIndicateReadyToActivate, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12889   {   9, &hf_h245_videoTemporalSpatialTradeOff, ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_31 },
12890   {  10, &hf_h245_videoNotDecodedMBs, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_videoNotDecodedMBs },
12891   {  11, &hf_h245_transportCapability, ASN1_NOT_EXTENSION_ROOT, dissect_h245_TransportCapability },
12892   { 0, NULL, 0, NULL }
12893 };
12894
12895 static int
12896 dissect_h245_Mi_type(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12897   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12898                                  ett_h245_Mi_type, Mi_type_choice,
12899                                  NULL);
12900
12901   return offset;
12902 }
12903
12904
12905 static const per_sequence_t MiscellaneousIndication_sequence[] = {
12906   { &hf_h245_logicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
12907   { &hf_h245_mi_type        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Mi_type },
12908   { NULL, 0, 0, NULL }
12909 };
12910
12911 static int
12912 dissect_h245_MiscellaneousIndication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12913   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12914                                    ett_h245_MiscellaneousIndication, MiscellaneousIndication_sequence);
12915
12916   return offset;
12917 }
12918
12919
12920
12921 static int
12922 dissect_h245_INTEGER_0_3(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12923   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
12924                                               0U, 3U, NULL, FALSE);
12925
12926   return offset;
12927 }
12928
12929
12930
12931 static int
12932 dissect_h245_INTEGER_0_7(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12933   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
12934                                               0U, 7U, NULL, FALSE);
12935
12936   return offset;
12937 }
12938
12939
12940 static const per_sequence_t JitterIndication_sequence[] = {
12941   { &hf_h245_scope          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Scope },
12942   { &hf_h245_estimatedReceivedJitterMantissa, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_3 },
12943   { &hf_h245_estimatedReceivedJitterExponent, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_7 },
12944   { &hf_h245_skippedFrameCount, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_15 },
12945   { &hf_h245_additionalDecoderBuffer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_262143 },
12946   { NULL, 0, 0, NULL }
12947 };
12948
12949 static int
12950 dissect_h245_JitterIndication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12951   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12952                                    ett_h245_JitterIndication, JitterIndication_sequence);
12953
12954   return offset;
12955 }
12956
12957
12958
12959 static int
12960 dissect_h245_INTEGER_0_4095(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12961   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
12962                                               0U, 4095U, NULL, FALSE);
12963
12964   return offset;
12965 }
12966
12967
12968 static const per_sequence_t H223SkewIndication_sequence[] = {
12969   { &hf_h245_logicalChannelNumber1, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
12970   { &hf_h245_logicalChannelNumber2, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
12971   { &hf_h245_skew           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_4095 },
12972   { NULL, 0, 0, NULL }
12973 };
12974
12975 static int
12976 dissect_h245_H223SkewIndication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
12977   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12978                                    ett_h245_H223SkewIndication, H223SkewIndication_sequence);
12979
12980   return offset;
12981 }
12982
12983
12984 static const value_string h245_Ind_clockRecovery_vals[] = {
12985   {   0, "nullClockRecovery" },
12986   {   1, "srtsClockRecovery" },
12987   {   2, "adaptiveClockRecovery" },
12988   { 0, NULL }
12989 };
12990
12991 static const per_choice_t Ind_clockRecovery_choice[] = {
12992   {   0, &hf_h245_nullClockRecoveryflag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12993   {   1, &hf_h245_srtsClockRecovery, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12994   {   2, &hf_h245_adaptiveClockRecoveryFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
12995   { 0, NULL, 0, NULL }
12996 };
12997
12998 static int
12999 dissect_h245_Ind_clockRecovery(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13000   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13001                                  ett_h245_Ind_clockRecovery, Ind_clockRecovery_choice,
13002                                  NULL);
13003
13004   return offset;
13005 }
13006
13007
13008 static const value_string h245_Ind_errorCorrection_vals[] = {
13009   {   0, "nullErrorCorrection" },
13010   {   1, "longInterleaver" },
13011   {   2, "shortInterleaver" },
13012   {   3, "errorCorrectionOnly" },
13013   { 0, NULL }
13014 };
13015
13016 static const per_choice_t Ind_errorCorrection_choice[] = {
13017   {   0, &hf_h245_nullErrorCorrectionFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13018   {   1, &hf_h245_longInterleaverFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13019   {   2, &hf_h245_shortInterleaverFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13020   {   3, &hf_h245_errorCorrectionOnlyFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13021   { 0, NULL, 0, NULL }
13022 };
13023
13024 static int
13025 dissect_h245_Ind_errorCorrection(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13026   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13027                                  ett_h245_Ind_errorCorrection, Ind_errorCorrection_choice,
13028                                  NULL);
13029
13030   return offset;
13031 }
13032
13033
13034 static const per_sequence_t Ind_aal1_sequence[] = {
13035   { &hf_h245_ind_clockRecovery, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Ind_clockRecovery },
13036   { &hf_h245_ind_errorCorrection, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Ind_errorCorrection },
13037   { &hf_h245_structuredDataTransfer, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
13038   { &hf_h245_partiallyFilledCells, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
13039   { NULL, 0, 0, NULL }
13040 };
13041
13042 static int
13043 dissect_h245_Ind_aal1(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13044   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13045                                    ett_h245_Ind_aal1, Ind_aal1_sequence);
13046
13047   return offset;
13048 }
13049
13050
13051 static const per_sequence_t Ind_aal5_sequence[] = {
13052   { &hf_h245_forwardMaximumSDUSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
13053   { &hf_h245_backwardMaximumSDUSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
13054   { NULL, 0, 0, NULL }
13055 };
13056
13057 static int
13058 dissect_h245_Ind_aal5(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13059   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13060                                    ett_h245_Ind_aal5, Ind_aal5_sequence);
13061
13062   return offset;
13063 }
13064
13065
13066 static const value_string h245_Ind_aal_vals[] = {
13067   {   0, "aal1" },
13068   {   1, "aal5" },
13069   { 0, NULL }
13070 };
13071
13072 static const per_choice_t Ind_aal_choice[] = {
13073   {   0, &hf_h245_ind_aal1       , ASN1_EXTENSION_ROOT    , dissect_h245_Ind_aal1 },
13074   {   1, &hf_h245_ind_aal5       , ASN1_EXTENSION_ROOT    , dissect_h245_Ind_aal5 },
13075   { 0, NULL, 0, NULL }
13076 };
13077
13078 static int
13079 dissect_h245_Ind_aal(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13080   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13081                                  ett_h245_Ind_aal, Ind_aal_choice,
13082                                  NULL);
13083
13084   return offset;
13085 }
13086
13087
13088 static const value_string h245_Ind_multiplex_vals[] = {
13089   {   0, "noMultiplex" },
13090   {   1, "transportStream" },
13091   {   2, "programStream" },
13092   { 0, NULL }
13093 };
13094
13095 static const per_choice_t Ind_multiplex_choice[] = {
13096   {   0, &hf_h245_noMultiplex    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13097   {   1, &hf_h245_transportStream, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13098   {   2, &hf_h245_programStreamFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13099   { 0, NULL, 0, NULL }
13100 };
13101
13102 static int
13103 dissect_h245_Ind_multiplex(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13104   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13105                                  ett_h245_Ind_multiplex, Ind_multiplex_choice,
13106                                  NULL);
13107
13108   return offset;
13109 }
13110
13111
13112 static const value_string h245_IndR_multiplex_vals[] = {
13113   {   0, "noMultiplex" },
13114   {   1, "transportStream" },
13115   {   2, "programStream" },
13116   { 0, NULL }
13117 };
13118
13119 static const per_choice_t IndR_multiplex_choice[] = {
13120   {   0, &hf_h245_noMultiplex    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13121   {   1, &hf_h245_transportStream, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13122   {   2, &hf_h245_programStreamFlag, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13123   { 0, NULL, 0, NULL }
13124 };
13125
13126 static int
13127 dissect_h245_IndR_multiplex(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13128   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13129                                  ett_h245_IndR_multiplex, IndR_multiplex_choice,
13130                                  NULL);
13131
13132   return offset;
13133 }
13134
13135
13136 static const per_sequence_t Ind_reverseParameters_sequence[] = {
13137   { &hf_h245_bitRate        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_65535 },
13138   { &hf_h245_bitRateLockedToPCRClock, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
13139   { &hf_h245_bitRateLockedToNetworkClock, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
13140   { &hf_h245_indr_multiplex , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_IndR_multiplex },
13141   { NULL, 0, 0, NULL }
13142 };
13143
13144 static int
13145 dissect_h245_Ind_reverseParameters(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13146   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13147                                    ett_h245_Ind_reverseParameters, Ind_reverseParameters_sequence);
13148
13149   return offset;
13150 }
13151
13152
13153 static const per_sequence_t NewATMVCIndication_sequence[] = {
13154   { &hf_h245_resourceID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_65535 },
13155   { &hf_h245_bitRate        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_65535 },
13156   { &hf_h245_bitRateLockedToPCRClock, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
13157   { &hf_h245_bitRateLockedToNetworkClock, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_BOOLEAN },
13158   { &hf_h245_ind_aal        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Ind_aal },
13159   { &hf_h245_ind_multiplex  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Ind_multiplex },
13160   { &hf_h245_ind_reverseParameters, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_h245_Ind_reverseParameters },
13161   { NULL, 0, 0, NULL }
13162 };
13163
13164 static int
13165 dissect_h245_NewATMVCIndication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13166   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13167                                    ett_h245_NewATMVCIndication, NewATMVCIndication_sequence);
13168
13169   return offset;
13170 }
13171
13172
13173 static const value_string h245_T_userInputSupportIndication_vals[] = {
13174   {   0, "nonStandard" },
13175   {   1, "basicString" },
13176   {   2, "iA5String" },
13177   {   3, "generalString" },
13178   {   4, "encryptedBasicString" },
13179   {   5, "encryptedIA5String" },
13180   {   6, "encryptedGeneralString" },
13181   { 0, NULL }
13182 };
13183
13184 static const per_choice_t T_userInputSupportIndication_choice[] = {
13185   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
13186   {   1, &hf_h245_basicString    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13187   {   2, &hf_h245_iA5String      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13188   {   3, &hf_h245_generalString  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13189   {   4, &hf_h245_encryptedBasicString, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
13190   {   5, &hf_h245_encryptedIA5String, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
13191   {   6, &hf_h245_encryptedGeneralString, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
13192   { 0, NULL, 0, NULL }
13193 };
13194
13195 static int
13196 dissect_h245_T_userInputSupportIndication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13197   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13198                                  ett_h245_T_userInputSupportIndication, T_userInputSupportIndication_choice,
13199                                  NULL);
13200
13201   return offset;
13202 }
13203
13204
13205
13206 static int
13207 dissect_h245_T_signalType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13208   offset = dissect_per_restricted_character_string(tvb, offset, actx, tree, hf_index,
13209                                                       1, 1, "0123456789#*ABCD!", strlen("0123456789#*ABCD!"),
13210                                                       NULL);
13211
13212   return offset;
13213 }
13214
13215
13216 static const per_sequence_t T_rtp_sequence[] = {
13217   { &hf_h245_timestamp      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_4294967295 },
13218   { &hf_h245_expirationTime , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_0_4294967295 },
13219   { &hf_h245_logicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
13220   { NULL, 0, 0, NULL }
13221 };
13222
13223 static int
13224 dissect_h245_T_rtp(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13225   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13226                                    ett_h245_T_rtp, T_rtp_sequence);
13227
13228   return offset;
13229 }
13230
13231
13232
13233 static int
13234 dissect_h245_IV8(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13235   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
13236                                        8, 8, NULL);
13237
13238   return offset;
13239 }
13240
13241
13242
13243 static int
13244 dissect_h245_IV16(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13245   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
13246                                        16, 16, NULL);
13247
13248   return offset;
13249 }
13250
13251
13252 static const per_sequence_t Params_sequence[] = {
13253   { &hf_h245_iv8            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_IV8 },
13254   { &hf_h245_iv16           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_IV16 },
13255   { &hf_h245_iv             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OCTET_STRING },
13256   { NULL, 0, 0, NULL }
13257 };
13258
13259 static int
13260 dissect_h245_Params(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13261   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13262                                    ett_h245_Params, Params_sequence);
13263
13264   return offset;
13265 }
13266
13267
13268
13269 static int
13270 dissect_h245_OCTET_STRING_SIZE_1(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13271   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
13272                                        1, 1, NULL);
13273
13274   return offset;
13275 }
13276
13277
13278 static const per_sequence_t T_signal_sequence[] = {
13279   { &hf_h245_signalType     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_T_signalType },
13280   { &hf_h245_duration       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_INTEGER_1_65535 },
13281   { &hf_h245_rtp            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_T_rtp },
13282   { &hf_h245_rtpPayloadIndication, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_NULL },
13283   { &hf_h245_paramS         , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_Params },
13284   { &hf_h245_encryptedSignalType, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_OCTET_STRING_SIZE_1 },
13285   { &hf_h245_algorithmOID   , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_OBJECT_IDENTIFIER },
13286   { NULL, 0, 0, NULL }
13287 };
13288
13289 static int
13290 dissect_h245_T_signal(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13291   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13292                                    ett_h245_T_signal, T_signal_sequence);
13293
13294   return offset;
13295 }
13296
13297
13298 static const per_sequence_t Si_rtp_sequence[] = {
13299   { &hf_h245_logicalChannelNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
13300   { NULL, 0, 0, NULL }
13301 };
13302
13303 static int
13304 dissect_h245_Si_rtp(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13305   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13306                                    ett_h245_Si_rtp, Si_rtp_sequence);
13307
13308   return offset;
13309 }
13310
13311
13312 static const per_sequence_t T_signalUpdate_sequence[] = {
13313   { &hf_h245_duration       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_65535 },
13314   { &hf_h245_si_rtp         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_Si_rtp },
13315   { NULL, 0, 0, NULL }
13316 };
13317
13318 static int
13319 dissect_h245_T_signalUpdate(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13320   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13321                                    ett_h245_T_signalUpdate, T_signalUpdate_sequence);
13322
13323   return offset;
13324 }
13325
13326
13327 static const per_sequence_t EncryptedAlphanumeric_sequence[] = {
13328   { &hf_h245_algorithmOID   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OBJECT_IDENTIFIER },
13329   { &hf_h245_paramS         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_Params },
13330   { &hf_h245_encrypted      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_OCTET_STRING },
13331   { NULL, 0, 0, NULL }
13332 };
13333
13334 static int
13335 dissect_h245_EncryptedAlphanumeric(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13336   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13337                                    ett_h245_EncryptedAlphanumeric, EncryptedAlphanumeric_sequence);
13338
13339   return offset;
13340 }
13341
13342
13343 static const per_sequence_t T_extendedAlphanumeric_sequence[] = {
13344   { &hf_h245_alphanumeric   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_GeneralString },
13345   { &hf_h245_rtpPayloadIndication, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_NULL },
13346   { &hf_h245_encryptedAlphanumeric, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_h245_EncryptedAlphanumeric },
13347   { NULL, 0, 0, NULL }
13348 };
13349
13350 static int
13351 dissect_h245_T_extendedAlphanumeric(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13352   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13353                                    ett_h245_T_extendedAlphanumeric, T_extendedAlphanumeric_sequence);
13354
13355   return offset;
13356 }
13357
13358
13359 static const value_string h245_UserInputIndication_vals[] = {
13360   {   0, "nonStandard" },
13361   {   1, "alphanumeric" },
13362   {   2, "userInputSupportIndication" },
13363   {   3, "signal" },
13364   {   4, "signalUpdate" },
13365   {   5, "extendedAlphanumeric" },
13366   {   6, "encryptedAlphanumeric" },
13367   {   7, "genericInformation" },
13368   { 0, NULL }
13369 };
13370
13371 static const per_choice_t UserInputIndication_choice[] = {
13372   {   0, &hf_h245_nonStandard    , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardParameter },
13373   {   1, &hf_h245_alphanumeric   , ASN1_EXTENSION_ROOT    , dissect_h245_GeneralString },
13374   {   2, &hf_h245_userInputSupportIndication, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_userInputSupportIndication },
13375   {   3, &hf_h245_signal         , ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_signal },
13376   {   4, &hf_h245_signalUpdate   , ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_signalUpdate },
13377   {   5, &hf_h245_extendedAlphanumeric, ASN1_NOT_EXTENSION_ROOT, dissect_h245_T_extendedAlphanumeric },
13378   {   6, &hf_h245_encryptedAlphanumeric, ASN1_NOT_EXTENSION_ROOT, dissect_h245_EncryptedAlphanumeric },
13379   {   7, &hf_h245_genericInformation, ASN1_NOT_EXTENSION_ROOT, dissect_h245_SEQUENCE_OF_GenericInformation },
13380   { 0, NULL, 0, NULL }
13381 };
13382
13383 static int
13384 dissect_h245_UserInputIndication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13385   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13386                                  ett_h245_UserInputIndication, UserInputIndication_choice,
13387                                  NULL);
13388
13389   return offset;
13390 }
13391
13392
13393 static const per_sequence_t H2250MaximumSkewIndication_sequence[] = {
13394   { &hf_h245_logicalChannelNumber1, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
13395   { &hf_h245_logicalChannelNumber2, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_LogicalChannelNumber },
13396   { &hf_h245_maximumSkew    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_4095 },
13397   { NULL, 0, 0, NULL }
13398 };
13399
13400 static int
13401 dissect_h245_H2250MaximumSkewIndication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13402   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13403                                    ett_h245_H2250MaximumSkewIndication, H2250MaximumSkewIndication_sequence);
13404
13405   return offset;
13406 }
13407
13408
13409 static const per_sequence_t MCLocationIndication_sequence[] = {
13410   { &hf_h245_signalAddress  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TransportAddress },
13411   { NULL, 0, 0, NULL }
13412 };
13413
13414 static int
13415 dissect_h245_MCLocationIndication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13416   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13417                                    ett_h245_MCLocationIndication, MCLocationIndication_sequence);
13418
13419   return offset;
13420 }
13421
13422
13423
13424 static int
13425 dissect_h245_INTEGER_0_9(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13426   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
13427                                               0U, 9U, NULL, FALSE);
13428
13429   return offset;
13430 }
13431
13432
13433 static const per_sequence_t TerminalYouAreSeeingInSubPictureNumber_sequence[] = {
13434   { &hf_h245_terminalNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_TerminalNumber },
13435   { &hf_h245_subPictureNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_255 },
13436   { NULL, 0, 0, NULL }
13437 };
13438
13439 static int
13440 dissect_h245_TerminalYouAreSeeingInSubPictureNumber(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13441   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13442                                    ett_h245_TerminalYouAreSeeingInSubPictureNumber, TerminalYouAreSeeingInSubPictureNumber_sequence);
13443
13444   return offset;
13445 }
13446
13447
13448 static const per_sequence_t VideoIndicateCompose_sequence[] = {
13449   { &hf_h245_compositionNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_0_255 },
13450   { NULL, 0, 0, NULL }
13451 };
13452
13453 static int
13454 dissect_h245_VideoIndicateCompose(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13455   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13456                                    ett_h245_VideoIndicateCompose, VideoIndicateCompose_sequence);
13457
13458   return offset;
13459 }
13460
13461
13462 static const value_string h245_ConferenceIndication_vals[] = {
13463   {   0, "sbeNumber" },
13464   {   1, "terminalNumberAssign" },
13465   {   2, "terminalJoinedConference" },
13466   {   3, "terminalLeftConference" },
13467   {   4, "seenByAtLeastOneOther" },
13468   {   5, "cancelSeenByAtLeastOneOther" },
13469   {   6, "seenByAll" },
13470   {   7, "cancelSeenByAll" },
13471   {   8, "terminalYouAreSeeing" },
13472   {   9, "requestForFloor" },
13473   {  10, "withdrawChairToken" },
13474   {  11, "floorRequested" },
13475   {  12, "terminalYouAreSeeingInSubPictureNumber" },
13476   {  13, "videoIndicateCompose" },
13477   { 0, NULL }
13478 };
13479
13480 static const per_choice_t ConferenceIndication_choice[] = {
13481   {   0, &hf_h245_sbeNumber      , ASN1_EXTENSION_ROOT    , dissect_h245_INTEGER_0_9 },
13482   {   1, &hf_h245_terminalNumberAssign, ASN1_EXTENSION_ROOT    , dissect_h245_TerminalLabel },
13483   {   2, &hf_h245_terminalJoinedConference, ASN1_EXTENSION_ROOT    , dissect_h245_TerminalLabel },
13484   {   3, &hf_h245_terminalLeftConference, ASN1_EXTENSION_ROOT    , dissect_h245_TerminalLabel },
13485   {   4, &hf_h245_seenByAtLeastOneOther, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13486   {   5, &hf_h245_cancelSeenByAtLeastOneOther, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13487   {   6, &hf_h245_seenByAll      , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13488   {   7, &hf_h245_cancelSeenByAll, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13489   {   8, &hf_h245_terminalYouAreSeeing, ASN1_EXTENSION_ROOT    , dissect_h245_TerminalLabel },
13490   {   9, &hf_h245_requestForFloor, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13491   {  10, &hf_h245_withdrawChairToken, ASN1_NOT_EXTENSION_ROOT, dissect_h245_NULL },
13492   {  11, &hf_h245_floorRequested , ASN1_NOT_EXTENSION_ROOT, dissect_h245_TerminalLabel },
13493   {  12, &hf_h245_terminalYouAreSeeingInSubPictureNumber, ASN1_NOT_EXTENSION_ROOT, dissect_h245_TerminalYouAreSeeingInSubPictureNumber },
13494   {  13, &hf_h245_videoIndicateCompose, ASN1_NOT_EXTENSION_ROOT, dissect_h245_VideoIndicateCompose },
13495   { 0, NULL, 0, NULL }
13496 };
13497
13498 static int
13499 dissect_h245_ConferenceIndication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13500   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13501                                  ett_h245_ConferenceIndication, ConferenceIndication_choice,
13502                                  NULL);
13503
13504   return offset;
13505 }
13506
13507
13508
13509 static int
13510 dissect_h245_OCTET_STRING_SIZE_1_256(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13511   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
13512                                        1, 256, NULL);
13513
13514   return offset;
13515 }
13516
13517
13518 static const per_sequence_t VendorIdentification_sequence[] = {
13519   { &hf_h245_vendor         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_NonStandardIdentifier },
13520   { &hf_h245_productNumber  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OCTET_STRING_SIZE_1_256 },
13521   { &hf_h245_versionNumber  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OCTET_STRING_SIZE_1_256 },
13522   { NULL, 0, 0, NULL }
13523 };
13524
13525 static int
13526 dissect_h245_VendorIdentification(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13527   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13528                                    ett_h245_VendorIdentification, VendorIdentification_sequence);
13529
13530   return offset;
13531 }
13532
13533
13534 static const value_string h245_FunctionNotSupportedCause_vals[] = {
13535   {   0, "syntaxError" },
13536   {   1, "semanticError" },
13537   {   2, "unknownFunction" },
13538   { 0, NULL }
13539 };
13540
13541 static const per_choice_t FunctionNotSupportedCause_choice[] = {
13542   {   0, &hf_h245_syntaxError    , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13543   {   1, &hf_h245_semanticError  , ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13544   {   2, &hf_h245_unknownFunction, ASN1_EXTENSION_ROOT    , dissect_h245_NULL },
13545   { 0, NULL, 0, NULL }
13546 };
13547
13548 static int
13549 dissect_h245_FunctionNotSupportedCause(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13550   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13551                                  ett_h245_FunctionNotSupportedCause, FunctionNotSupportedCause_choice,
13552                                  NULL);
13553
13554   return offset;
13555 }
13556
13557
13558 static const per_sequence_t FunctionNotSupported_sequence[] = {
13559   { &hf_h245_fns_cause      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_FunctionNotSupportedCause },
13560   { &hf_h245_returnedFunction, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h245_OCTET_STRING },
13561   { NULL, 0, 0, NULL }
13562 };
13563
13564 static int
13565 dissect_h245_FunctionNotSupported(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13566   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13567                                    ett_h245_FunctionNotSupported, FunctionNotSupported_sequence);
13568
13569   return offset;
13570 }
13571
13572
13573 static const per_sequence_t T_crcDesired_sequence[] = {
13574   { NULL, 0, 0, NULL }
13575 };
13576
13577 static int
13578 dissect_h245_T_crcDesired(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13579   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13580                                    ett_h245_T_crcDesired, T_crcDesired_sequence);
13581
13582   return offset;
13583 }
13584
13585
13586 static const per_sequence_t T_excessiveError_sequence[] = {
13587   { &hf_h245_connectionIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_ConnectionIdentifier },
13588   { NULL, 0, 0, NULL }
13589 };
13590
13591 static int
13592 dissect_h245_T_excessiveError(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13593   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13594                                    ett_h245_T_excessiveError, T_excessiveError_sequence);
13595
13596   return offset;
13597 }
13598
13599
13600 static const value_string h245_MultilinkIndication_vals[] = {
13601   {   0, "nonStandard" },
13602   {   1, "crcDesired" },
13603   {   2, "excessiveError" },
13604   { 0, NULL }
13605 };
13606
13607 static const per_choice_t MultilinkIndication_choice[] = {
13608   {   0, &hf_h245_nonStandardMsg , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardMessage },
13609   {   1, &hf_h245_crcDesired     , ASN1_EXTENSION_ROOT    , dissect_h245_T_crcDesired },
13610   {   2, &hf_h245_excessiveError , ASN1_EXTENSION_ROOT    , dissect_h245_T_excessiveError },
13611   { 0, NULL, 0, NULL }
13612 };
13613
13614 static int
13615 dissect_h245_MultilinkIndication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13616   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13617                                  ett_h245_MultilinkIndication, MultilinkIndication_choice,
13618                                  NULL);
13619
13620   return offset;
13621 }
13622
13623
13624 static const per_sequence_t LogicalChannelRateRelease_sequence[] = {
13625   { NULL, 0, 0, NULL }
13626 };
13627
13628 static int
13629 dissect_h245_LogicalChannelRateRelease(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13630   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13631                                    ett_h245_LogicalChannelRateRelease, LogicalChannelRateRelease_sequence);
13632
13633   return offset;
13634 }
13635
13636
13637 static const per_sequence_t FlowControlIndication_sequence[] = {
13638   { &hf_h245_scope          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Scope },
13639   { &hf_h245_restriction    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_Restriction },
13640   { NULL, 0, 0, NULL }
13641 };
13642
13643 static int
13644 dissect_h245_FlowControlIndication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13645   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13646                                    ett_h245_FlowControlIndication, FlowControlIndication_sequence);
13647
13648   return offset;
13649 }
13650
13651
13652 static const per_sequence_t MobileMultilinkReconfigurationIndication_sequence[] = {
13653   { &hf_h245_sampleSize     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_255 },
13654   { &hf_h245_samplesPerFrame, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h245_INTEGER_1_255 },
13655   { NULL, 0, 0, NULL }
13656 };
13657
13658 static int
13659 dissect_h245_MobileMultilinkReconfigurationIndication(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13660   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13661                                    ett_h245_MobileMultilinkReconfigurationIndication, MobileMultilinkReconfigurationIndication_sequence);
13662
13663   return offset;
13664 }
13665
13666
13667 static const value_string h245_IndicationMessage_vals[] = {
13668   {   0, "nonStandard" },
13669   {   1, "functionNotUnderstood" },
13670   {   2, "masterSlaveDeterminationRelease" },
13671   {   3, "terminalCapabilitySetRelease" },
13672   {   4, "openLogicalChannelConfirm" },
13673   {   5, "requestChannelCloseRelease" },
13674   {   6, "multiplexEntrySendRelease" },
13675   {   7, "requestMultiplexEntryRelease" },
13676   {   8, "requestModeRelease" },
13677   {   9, "miscellaneousIndication" },
13678   {  10, "jitterIndication" },
13679   {  11, "h223SkewIndication" },
13680   {  12, "newATMVCIndication" },
13681   {  13, "userInput" },
13682   {  14, "h2250MaximumSkewIndication" },
13683   {  15, "mcLocationIndication" },
13684   {  16, "conferenceIndication" },
13685   {  17, "vendorIdentification" },
13686   {  18, "functionNotSupported" },
13687   {  19, "multilinkIndication" },
13688   {  20, "logicalChannelRateRelease" },
13689   {  21, "flowControlIndication" },
13690   {  22, "mobileMultilinkReconfigurationIndication" },
13691   {  23, "genericIndication" },
13692   { 0, NULL }
13693 };
13694
13695 static const per_choice_t IndicationMessage_choice[] = {
13696   {   0, &hf_h245_nonStandardMsg , ASN1_EXTENSION_ROOT    , dissect_h245_NonStandardMessage },
13697   {   1, &hf_h245_functionNotUnderstood, ASN1_EXTENSION_ROOT    , dissect_h245_FunctionNotUnderstood },
13698   {   2, &hf_h245_masterSlaveDeterminationRelease, ASN1_EXTENSION_ROOT    , dissect_h245_MasterSlaveDeterminationRelease },
13699   {   3, &hf_h245_terminalCapabilitySetRelease, ASN1_EXTENSION_ROOT    , dissect_h245_TerminalCapabilitySetRelease },
13700   {   4, &hf_h245_openLogicalChannelConfirm, ASN1_EXTENSION_ROOT    , dissect_h245_OpenLogicalChannelConfirm },
13701   {   5, &hf_h245_requestChannelCloseRelease, ASN1_EXTENSION_ROOT    , dissect_h245_RequestChannelCloseRelease },
13702   {   6, &hf_h245_multiplexEntrySendRelease, ASN1_EXTENSION_ROOT    , dissect_h245_MultiplexEntrySendRelease },
13703   {   7, &hf_h245_requestMultiplexEntryRelease, ASN1_EXTENSION_ROOT    , dissect_h245_RequestMultiplexEntryRelease },
13704   {   8, &hf_h245_requestModeRelease, ASN1_EXTENSION_ROOT    , dissect_h245_RequestModeRelease },
13705   {   9, &hf_h245_miscellaneousIndication, ASN1_EXTENSION_ROOT    , dissect_h245_MiscellaneousIndication },
13706   {  10, &hf_h245_jitterIndication, ASN1_EXTENSION_ROOT    , dissect_h245_JitterIndication },
13707   {  11, &hf_h245_h223SkewIndication, ASN1_EXTENSION_ROOT    , dissect_h245_H223SkewIndication },
13708   {  12, &hf_h245_newATMVCIndication, ASN1_EXTENSION_ROOT    , dissect_h245_NewATMVCIndication },
13709   {  13, &hf_h245_userInput      , ASN1_EXTENSION_ROOT    , dissect_h245_UserInputIndication },
13710   {  14, &hf_h245_h2250MaximumSkewIndication, ASN1_NOT_EXTENSION_ROOT, dissect_h245_H2250MaximumSkewIndication },
13711   {  15, &hf_h245_mcLocationIndication, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MCLocationIndication },
13712   {  16, &hf_h245_conferenceIndication, ASN1_NOT_EXTENSION_ROOT, dissect_h245_ConferenceIndication },
13713   {  17, &hf_h245_vendorIdentification, ASN1_NOT_EXTENSION_ROOT, dissect_h245_VendorIdentification },
13714   {  18, &hf_h245_functionNotSupported, ASN1_NOT_EXTENSION_ROOT, dissect_h245_FunctionNotSupported },
13715   {  19, &hf_h245_multilinkIndication, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MultilinkIndication },
13716   {  20, &hf_h245_logicalChannelRateRelease, ASN1_NOT_EXTENSION_ROOT, dissect_h245_LogicalChannelRateRelease },
13717   {  21, &hf_h245_flowControlIndication, ASN1_NOT_EXTENSION_ROOT, dissect_h245_FlowControlIndication },
13718   {  22, &hf_h245_mobileMultilinkReconfigurationIndication, ASN1_NOT_EXTENSION_ROOT, dissect_h245_MobileMultilinkReconfigurationIndication },
13719   {  23, &hf_h245_genericIndication, ASN1_NOT_EXTENSION_ROOT, dissect_h245_GenericMessage },
13720   { 0, NULL, 0, NULL }
13721 };
13722
13723 static int
13724 dissect_h245_IndicationMessage(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13725 #line 332 "h245.cnf"
13726   guint32 value;
13727
13728   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13729                                  ett_h245_IndicationMessage, IndicationMessage_choice,
13730                                  &value);
13731
13732         if (check_col(actx->pinfo->cinfo, COL_INFO)){
13733                 if ( h245_shorttypes == TRUE )
13734                 {
13735                         col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
13736                                 val_to_str(value, h245_IndicationMessage_short_vals, "<unknown>"));
13737                 }
13738                 else
13739                 {
13740                         col_append_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
13741                                 val_to_str(value, h245_IndicationMessage_vals, "<unknown>"));
13742                 }
13743         }
13744
13745         col_set_fence(actx->pinfo->cinfo,COL_INFO);
13746     /* Add to packet info */
13747     g_snprintf(h245_pi->frame_label, 50, "%s %s ", h245_pi->frame_label, val_to_str(value, h245_IndicationMessage_short_vals, "UKN"));
13748         g_strlcat(h245_pi->comment, val_to_str(value, h245_IndicationMessage_vals, "<unknown>"), 50);
13749
13750
13751
13752   return offset;
13753 }
13754
13755
13756 static const value_string h245_MultimediaSystemControlMessage_vals[] = {
13757   {   0, "request" },
13758   {   1, "response" },
13759   {   2, "command" },
13760   {   3, "indication" },
13761   { 0, NULL }
13762 };
13763
13764 static const per_choice_t MultimediaSystemControlMessage_choice[] = {
13765   {   0, &hf_h245_request        , ASN1_EXTENSION_ROOT    , dissect_h245_RequestMessage },
13766   {   1, &hf_h245_response       , ASN1_EXTENSION_ROOT    , dissect_h245_ResponseMessage },
13767   {   2, &hf_h245_command        , ASN1_EXTENSION_ROOT    , dissect_h245_CommandMessage },
13768   {   3, &hf_h245_indication     , ASN1_EXTENSION_ROOT    , dissect_h245_IndicationMessage },
13769   { 0, NULL, 0, NULL }
13770 };
13771
13772 static int
13773 dissect_h245_MultimediaSystemControlMessage(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
13774   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13775                                  ett_h245_MultimediaSystemControlMessage, MultimediaSystemControlMessage_choice,
13776                                  NULL);
13777
13778   return offset;
13779 }
13780
13781 /*--- PDUs ---*/
13782
13783 static void dissect_OpenLogicalChannel_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
13784   asn1_ctx_t asn1_ctx;
13785   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
13786   dissect_h245_OpenLogicalChannel(tvb, 0, &asn1_ctx, tree, hf_h245_OpenLogicalChannel_PDU);
13787 }
13788
13789
13790 /*--- End of included file: packet-h245-fn.c ---*/
13791 #line 284 "packet-h245-template.c"
13792
13793 static void
13794 dissect_h245(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
13795 {
13796         /*
13797          * MultimediaSystemControlMessage_handle is the handle for
13798          * dissect_h245_h245, so we don't want to do any h245_pi or tap stuff here.
13799          */
13800         dissect_tpkt_encap(tvb, pinfo, parent_tree, h245_reassembly, MultimediaSystemControlMessage_handle);
13801 }
13802
13803 static void reset_h245_pi(void *dummy _U_)
13804 {
13805         h245_pi = NULL; /* Make sure we don't leave ep_alloc()ated memory lying around */
13806 }
13807
13808 static void
13809 dissect_h245_h245(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
13810 {
13811         proto_item *it;
13812         proto_tree *tr;
13813         guint32 offset=0;
13814         asn1_ctx_t asn1_ctx;
13815
13816         if (check_col(pinfo->cinfo, COL_PROTOCOL)){
13817                 col_set_str(pinfo->cinfo, COL_PROTOCOL, PSNAME);
13818         }
13819
13820         it=proto_tree_add_protocol_format(parent_tree, proto_h245, tvb, 0, tvb_length(tvb), PSNAME);
13821         tr=proto_item_add_subtree(it, ett_h245);
13822
13823         /* assume that whilst there is more tvb data, there are more h245 commands */
13824         while ( tvb_length_remaining( tvb, offset>>3 )>0 ){
13825                 CLEANUP_PUSH(reset_h245_pi, NULL);
13826                 h245_pi=ep_alloc(sizeof(h245_packet_info));
13827                 init_h245_packet_info(h245_pi);
13828                 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
13829                 offset = dissect_h245_MultimediaSystemControlMessage(tvb, offset, &asn1_ctx, tr, hf_h245_pdu_type);
13830                 tap_queue_packet(h245dg_tap, pinfo, h245_pi);
13831                 offset = (offset+0x07) & 0xfffffff8;
13832                 CLEANUP_CALL_AND_POP;
13833         }
13834 }
13835
13836 void
13837 dissect_h245_OpenLogicalChannelCodec(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, char *codec_str) {
13838   dissect_OpenLogicalChannel_PDU(tvb, pinfo, tree);
13839
13840   if (h245_pi != NULL) h245_pi->msg_type = H245_OpenLogChn;
13841
13842   if (codec_str && codec_type){
13843         strncpy(codec_str, codec_type, 50);
13844   }
13845
13846 }
13847
13848 /*--- proto_register_h245 -------------------------------------------*/
13849 void proto_register_h245(void) {
13850
13851   /* List of fields */
13852   static hf_register_info hf[] = {
13853     { &hf_h245_pdu_type,
13854  { "PDU Type", "h245.pdu_type", FT_UINT32, BASE_DEC,
13855                 VALS(h245_MultimediaSystemControlMessage_vals), 0, "Type of H.245 PDU", HFILL }},
13856         { &hf_h245Manufacturer,
13857                 { "H.245 Manufacturer", "h245.Manufacturer", FT_UINT32, BASE_HEX,
13858                 VALS(H221ManufacturerCode_vals), 0, "h245.H.221 Manufacturer", HFILL }},
13859
13860 /*--- Included file: packet-h245-hfarr.c ---*/
13861 #line 1 "packet-h245-hfarr.c"
13862     { &hf_h245_OpenLogicalChannel_PDU,
13863       { "OpenLogicalChannel", "h245.OpenLogicalChannel",
13864         FT_NONE, BASE_NONE, NULL, 0,
13865         "h245.OpenLogicalChannel", HFILL }},
13866     { &hf_h245_request,
13867       { "request", "h245.request",
13868         FT_UINT32, BASE_DEC, VALS(h245_RequestMessage_vals), 0,
13869         "h245.RequestMessage", HFILL }},
13870     { &hf_h245_response,
13871       { "response", "h245.response",
13872         FT_UINT32, BASE_DEC, VALS(h245_ResponseMessage_vals), 0,
13873         "h245.ResponseMessage", HFILL }},
13874     { &hf_h245_command,
13875       { "command", "h245.command",
13876         FT_UINT32, BASE_DEC, VALS(h245_CommandMessage_vals), 0,
13877         "h245.CommandMessage", HFILL }},
13878     { &hf_h245_indication,
13879       { "indication", "h245.indication",
13880         FT_UINT32, BASE_DEC, VALS(h245_IndicationMessage_vals), 0,
13881         "h245.IndicationMessage", HFILL }},
13882     { &hf_h245_nonStandardMsg,
13883       { "nonStandard", "h245.nonStandard",
13884         FT_NONE, BASE_NONE, NULL, 0,
13885         "h245.NonStandardMessage", HFILL }},
13886     { &hf_h245_masterSlaveDetermination,
13887       { "masterSlaveDetermination", "h245.masterSlaveDetermination",
13888         FT_NONE, BASE_NONE, NULL, 0,
13889         "h245.MasterSlaveDetermination", HFILL }},
13890     { &hf_h245_terminalCapabilitySet,
13891       { "terminalCapabilitySet", "h245.terminalCapabilitySet",
13892         FT_NONE, BASE_NONE, NULL, 0,
13893         "h245.TerminalCapabilitySet", HFILL }},
13894     { &hf_h245_openLogicalChannel,
13895       { "openLogicalChannel", "h245.openLogicalChannel",
13896         FT_NONE, BASE_NONE, NULL, 0,
13897         "h245.OpenLogicalChannel", HFILL }},
13898     { &hf_h245_closeLogicalChannel,
13899       { "closeLogicalChannel", "h245.closeLogicalChannel",
13900         FT_NONE, BASE_NONE, NULL, 0,
13901         "h245.CloseLogicalChannel", HFILL }},
13902     { &hf_h245_requestChannelClose,
13903       { "requestChannelClose", "h245.requestChannelClose",
13904         FT_NONE, BASE_NONE, NULL, 0,
13905         "h245.RequestChannelClose", HFILL }},
13906     { &hf_h245_multiplexEntrySend,
13907       { "multiplexEntrySend", "h245.multiplexEntrySend",
13908         FT_NONE, BASE_NONE, NULL, 0,
13909         "h245.MultiplexEntrySend", HFILL }},
13910     { &hf_h245_requestMultiplexEntry,
13911       { "requestMultiplexEntry", "h245.requestMultiplexEntry",
13912         FT_NONE, BASE_NONE, NULL, 0,
13913         "h245.RequestMultiplexEntry", HFILL }},
13914     { &hf_h245_requestMode,
13915       { "requestMode", "h245.requestMode",
13916         FT_NONE, BASE_NONE, NULL, 0,
13917         "h245.RequestMode", HFILL }},
13918     { &hf_h245_roundTripDelayRequest,
13919       { "roundTripDelayRequest", "h245.roundTripDelayRequest",
13920         FT_NONE, BASE_NONE, NULL, 0,
13921         "h245.RoundTripDelayRequest", HFILL }},
13922     { &hf_h245_maintenanceLoopRequest,
13923       { "maintenanceLoopRequest", "h245.maintenanceLoopRequest",
13924         FT_NONE, BASE_NONE, NULL, 0,
13925         "h245.MaintenanceLoopRequest", HFILL }},
13926     { &hf_h245_communicationModeRequest,
13927       { "communicationModeRequest", "h245.communicationModeRequest",
13928         FT_NONE, BASE_NONE, NULL, 0,
13929         "h245.CommunicationModeRequest", HFILL }},
13930     { &hf_h245_conferenceRequest,
13931       { "conferenceRequest", "h245.conferenceRequest",
13932         FT_UINT32, BASE_DEC, VALS(h245_ConferenceRequest_vals), 0,
13933         "h245.ConferenceRequest", HFILL }},
13934     { &hf_h245_multilinkRequest,
13935       { "multilinkRequest", "h245.multilinkRequest",
13936         FT_UINT32, BASE_DEC, VALS(h245_MultilinkRequest_vals), 0,
13937         "h245.MultilinkRequest", HFILL }},
13938     { &hf_h245_logicalChannelRateRequest,
13939       { "logicalChannelRateRequest", "h245.logicalChannelRateRequest",
13940         FT_NONE, BASE_NONE, NULL, 0,
13941         "h245.LogicalChannelRateRequest", HFILL }},
13942     { &hf_h245_genericRequest,
13943       { "genericRequest", "h245.genericRequest",
13944         FT_NONE, BASE_NONE, NULL, 0,
13945         "h245.GenericMessage", HFILL }},
13946     { &hf_h245_masterSlaveDeterminationAck,
13947       { "masterSlaveDeterminationAck", "h245.masterSlaveDeterminationAck",
13948         FT_NONE, BASE_NONE, NULL, 0,
13949         "h245.MasterSlaveDeterminationAck", HFILL }},
13950     { &hf_h245_masterSlaveDeterminationReject,
13951       { "masterSlaveDeterminationReject", "h245.masterSlaveDeterminationReject",
13952         FT_NONE, BASE_NONE, NULL, 0,
13953         "h245.MasterSlaveDeterminationReject", HFILL }},
13954     { &hf_h245_terminalCapabilitySetAck,
13955       { "terminalCapabilitySetAck", "h245.terminalCapabilitySetAck",
13956         FT_NONE, BASE_NONE, NULL, 0,
13957         "h245.TerminalCapabilitySetAck", HFILL }},
13958     { &hf_h245_terminalCapabilitySetReject,
13959       { "terminalCapabilitySetReject", "h245.terminalCapabilitySetReject",
13960         FT_NONE, BASE_NONE, NULL, 0,
13961         "h245.TerminalCapabilitySetReject", HFILL }},
13962     { &hf_h245_openLogicalChannelAck,
13963       { "openLogicalChannelAck", "h245.openLogicalChannelAck",
13964         FT_NONE, BASE_NONE, NULL, 0,
13965         "h245.OpenLogicalChannelAck", HFILL }},
13966     { &hf_h245_openLogicalChannelReject,
13967       { "openLogicalChannelReject", "h245.openLogicalChannelReject",
13968         FT_NONE, BASE_NONE, NULL, 0,
13969         "h245.OpenLogicalChannelReject", HFILL }},
13970     { &hf_h245_closeLogicalChannelAck,
13971       { "closeLogicalChannelAck", "h245.closeLogicalChannelAck",
13972         FT_NONE, BASE_NONE, NULL, 0,
13973         "h245.CloseLogicalChannelAck", HFILL }},
13974     { &hf_h245_requestChannelCloseAck,
13975       { "requestChannelCloseAck", "h245.requestChannelCloseAck",
13976         FT_NONE, BASE_NONE, NULL, 0,
13977         "h245.RequestChannelCloseAck", HFILL }},
13978     { &hf_h245_requestChannelCloseReject,
13979       { "requestChannelCloseReject", "h245.requestChannelCloseReject",
13980         FT_NONE, BASE_NONE, NULL, 0,
13981         "h245.RequestChannelCloseReject", HFILL }},
13982     { &hf_h245_multiplexEntrySendAck,
13983       { "multiplexEntrySendAck", "h245.multiplexEntrySendAck",
13984         FT_NONE, BASE_NONE, NULL, 0,
13985         "h245.MultiplexEntrySendAck", HFILL }},
13986     { &hf_h245_multiplexEntrySendReject,
13987       { "multiplexEntrySendReject", "h245.multiplexEntrySendReject",
13988         FT_NONE, BASE_NONE, NULL, 0,
13989         "h245.MultiplexEntrySendReject", HFILL }},
13990     { &hf_h245_requestMultiplexEntryAck,
13991       { "requestMultiplexEntryAck", "h245.requestMultiplexEntryAck",
13992         FT_NONE, BASE_NONE, NULL, 0,
13993         "h245.RequestMultiplexEntryAck", HFILL }},
13994     { &hf_h245_requestMultiplexEntryReject,
13995       { "requestMultiplexEntryReject", "h245.requestMultiplexEntryReject",
13996         FT_NONE, BASE_NONE, NULL, 0,
13997         "h245.RequestMultiplexEntryReject", HFILL }},
13998     { &hf_h245_requestModeAck,
13999       { "requestModeAck", "h245.requestModeAck",
14000         FT_NONE, BASE_NONE, NULL, 0,
14001         "h245.RequestModeAck", HFILL }},
14002     { &hf_h245_requestModeReject,
14003       { "requestModeReject", "h245.requestModeReject",
14004         FT_NONE, BASE_NONE, NULL, 0,
14005         "h245.RequestModeReject", HFILL }},
14006     { &hf_h245_roundTripDelayResponse,
14007       { "roundTripDelayResponse", "h245.roundTripDelayResponse",
14008         FT_NONE, BASE_NONE, NULL, 0,
14009         "h245.RoundTripDelayResponse", HFILL }},
14010     { &hf_h245_maintenanceLoopAck,
14011       { "maintenanceLoopAck", "h245.maintenanceLoopAck",
14012         FT_NONE, BASE_NONE, NULL, 0,
14013         "h245.MaintenanceLoopAck", HFILL }},
14014     { &hf_h245_maintenanceLoopReject,
14015       { "maintenanceLoopReject", "h245.maintenanceLoopReject",
14016         FT_NONE, BASE_NONE, NULL, 0,
14017         "h245.MaintenanceLoopReject", HFILL }},
14018     { &hf_h245_communicationModeResponse,
14019       { "communicationModeResponse", "h245.communicationModeResponse",
14020         FT_UINT32, BASE_DEC, VALS(h245_CommunicationModeResponse_vals), 0,
14021         "h245.CommunicationModeResponse", HFILL }},
14022     { &hf_h245_conferenceResponse,
14023       { "conferenceResponse", "h245.conferenceResponse",
14024         FT_UINT32, BASE_DEC, VALS(h245_ConferenceResponse_vals), 0,
14025         "h245.ConferenceResponse", HFILL }},
14026     { &hf_h245_multilinkResponse,
14027       { "multilinkResponse", "h245.multilinkResponse",
14028         FT_UINT32, BASE_DEC, VALS(h245_MultilinkResponse_vals), 0,
14029         "h245.MultilinkResponse", HFILL }},
14030     { &hf_h245_logicalChannelRateAcknowledge,
14031       { "logicalChannelRateAcknowledge", "h245.logicalChannelRateAcknowledge",
14032         FT_NONE, BASE_NONE, NULL, 0,
14033         "h245.LogicalChannelRateAcknowledge", HFILL }},
14034     { &hf_h245_logicalChannelRateReject,
14035       { "logicalChannelRateReject", "h245.logicalChannelRateReject",
14036         FT_NONE, BASE_NONE, NULL, 0,
14037         "h245.LogicalChannelRateReject", HFILL }},
14038     { &hf_h245_genericResponse,
14039       { "genericResponse", "h245.genericResponse",
14040         FT_NONE, BASE_NONE, NULL, 0,
14041         "h245.GenericMessage", HFILL }},
14042     { &hf_h245_maintenanceLoopOffCommand,
14043       { "maintenanceLoopOffCommand", "h245.maintenanceLoopOffCommand",
14044         FT_NONE, BASE_NONE, NULL, 0,
14045         "h245.MaintenanceLoopOffCommand", HFILL }},
14046     { &hf_h245_sendTerminalCapabilitySet,
14047       { "sendTerminalCapabilitySet", "h245.sendTerminalCapabilitySet",
14048         FT_UINT32, BASE_DEC, VALS(h245_SendTerminalCapabilitySet_vals), 0,
14049         "h245.SendTerminalCapabilitySet", HFILL }},
14050     { &hf_h245_encryptionCommand,
14051       { "encryptionCommand", "h245.encryptionCommand",
14052         FT_UINT32, BASE_DEC, VALS(h245_EncryptionCommand_vals), 0,
14053         "h245.EncryptionCommand", HFILL }},
14054     { &hf_h245_flowControlCommand,
14055       { "flowControlCommand", "h245.flowControlCommand",
14056         FT_NONE, BASE_NONE, NULL, 0,
14057         "h245.FlowControlCommand", HFILL }},
14058     { &hf_h245_endSessionCommand,
14059       { "endSessionCommand", "h245.endSessionCommand",
14060         FT_UINT32, BASE_DEC, VALS(h245_EndSessionCommand_vals), 0,
14061         "h245.EndSessionCommand", HFILL }},
14062     { &hf_h245_miscellaneousCommand,
14063       { "miscellaneousCommand", "h245.miscellaneousCommand",
14064         FT_NONE, BASE_NONE, NULL, 0,
14065         "h245.MiscellaneousCommand", HFILL }},
14066     { &hf_h245_communicationModeCommand,
14067       { "communicationModeCommand", "h245.communicationModeCommand",
14068         FT_NONE, BASE_NONE, NULL, 0,
14069         "h245.CommunicationModeCommand", HFILL }},
14070     { &hf_h245_conferenceCommand,
14071       { "conferenceCommand", "h245.conferenceCommand",
14072         FT_UINT32, BASE_DEC, VALS(h245_ConferenceCommand_vals), 0,
14073         "h245.ConferenceCommand", HFILL }},
14074     { &hf_h245_h223MultiplexReconfiguration,
14075       { "h223MultiplexReconfiguration", "h245.h223MultiplexReconfiguration",
14076         FT_UINT32, BASE_DEC, VALS(h245_H223MultiplexReconfiguration_vals), 0,
14077         "h245.H223MultiplexReconfiguration", HFILL }},
14078     { &hf_h245_newATMVCCommand,
14079       { "newATMVCCommand", "h245.newATMVCCommand",
14080         FT_NONE, BASE_NONE, NULL, 0,
14081         "h245.NewATMVCCommand", HFILL }},
14082     { &hf_h245_mobileMultilinkReconfigurationCommand,
14083       { "mobileMultilinkReconfigurationCommand", "h245.mobileMultilinkReconfigurationCommand",
14084         FT_NONE, BASE_NONE, NULL, 0,
14085         "h245.MobileMultilinkReconfigurationCommand", HFILL }},
14086     { &hf_h245_genericCommand,
14087       { "genericCommand", "h245.genericCommand",
14088         FT_NONE, BASE_NONE, NULL, 0,
14089         "h245.GenericMessage", HFILL }},
14090     { &hf_h245_functionNotUnderstood,
14091       { "functionNotUnderstood", "h245.functionNotUnderstood",
14092         FT_UINT32, BASE_DEC, VALS(h245_FunctionNotUnderstood_vals), 0,
14093         "h245.FunctionNotUnderstood", HFILL }},
14094     { &hf_h245_masterSlaveDeterminationRelease,
14095       { "masterSlaveDeterminationRelease", "h245.masterSlaveDeterminationRelease",
14096         FT_NONE, BASE_NONE, NULL, 0,
14097         "h245.MasterSlaveDeterminationRelease", HFILL }},
14098     { &hf_h245_terminalCapabilitySetRelease,
14099       { "terminalCapabilitySetRelease", "h245.terminalCapabilitySetRelease",
14100         FT_NONE, BASE_NONE, NULL, 0,
14101         "h245.TerminalCapabilitySetRelease", HFILL }},
14102     { &hf_h245_openLogicalChannelConfirm,
14103       { "openLogicalChannelConfirm", "h245.openLogicalChannelConfirm",
14104         FT_NONE, BASE_NONE, NULL, 0,
14105         "h245.OpenLogicalChannelConfirm", HFILL }},
14106     { &hf_h245_requestChannelCloseRelease,
14107       { "requestChannelCloseRelease", "h245.requestChannelCloseRelease",
14108         FT_NONE, BASE_NONE, NULL, 0,
14109         "h245.RequestChannelCloseRelease", HFILL }},
14110     { &hf_h245_multiplexEntrySendRelease,
14111       { "multiplexEntrySendRelease", "h245.multiplexEntrySendRelease",
14112         FT_NONE, BASE_NONE, NULL, 0,
14113         "h245.MultiplexEntrySendRelease", HFILL }},
14114     { &hf_h245_requestMultiplexEntryRelease,
14115       { "requestMultiplexEntryRelease", "h245.requestMultiplexEntryRelease",
14116         FT_NONE, BASE_NONE, NULL, 0,
14117         "h245.RequestMultiplexEntryRelease", HFILL }},
14118     { &hf_h245_requestModeRelease,
14119       { "requestModeRelease", "h245.requestModeRelease",
14120         FT_NONE, BASE_NONE, NULL, 0,
14121         "h245.RequestModeRelease", HFILL }},
14122     { &hf_h245_miscellaneousIndication,
14123       { "miscellaneousIndication", "h245.miscellaneousIndication",
14124         FT_NONE, BASE_NONE, NULL, 0,
14125         "h245.MiscellaneousIndication", HFILL }},
14126     { &hf_h245_jitterIndication,
14127       { "jitterIndication", "h245.jitterIndication",
14128         FT_NONE, BASE_NONE, NULL, 0,
14129         "h245.JitterIndication", HFILL }},
14130     { &hf_h245_h223SkewIndication,
14131       { "h223SkewIndication", "h245.h223SkewIndication",
14132         FT_NONE, BASE_NONE, NULL, 0,
14133         "h245.H223SkewIndication", HFILL }},
14134     { &hf_h245_newATMVCIndication,
14135       { "newATMVCIndication", "h245.newATMVCIndication",
14136         FT_NONE, BASE_NONE, NULL, 0,
14137         "h245.NewATMVCIndication", HFILL }},
14138     { &hf_h245_userInput,
14139       { "userInput", "h245.userInput",
14140         FT_UINT32, BASE_DEC, VALS(h245_UserInputIndication_vals), 0,
14141         "h245.UserInputIndication", HFILL }},
14142     { &hf_h245_h2250MaximumSkewIndication,
14143       { "h2250MaximumSkewIndication", "h245.h2250MaximumSkewIndication",
14144         FT_NONE, BASE_NONE, NULL, 0,
14145         "h245.H2250MaximumSkewIndication", HFILL }},
14146     { &hf_h245_mcLocationIndication,
14147       { "mcLocationIndication", "h245.mcLocationIndication",
14148         FT_NONE, BASE_NONE, NULL, 0,
14149         "h245.MCLocationIndication", HFILL }},
14150     { &hf_h245_conferenceIndication,
14151       { "conferenceIndication", "h245.conferenceIndication",
14152         FT_UINT32, BASE_DEC, VALS(h245_ConferenceIndication_vals), 0,
14153         "h245.ConferenceIndication", HFILL }},
14154     { &hf_h245_vendorIdentification,
14155       { "vendorIdentification", "h245.vendorIdentification",
14156         FT_NONE, BASE_NONE, NULL, 0,
14157         "h245.VendorIdentification", HFILL }},
14158     { &hf_h245_functionNotSupported,
14159       { "functionNotSupported", "h245.functionNotSupported",
14160         FT_NONE, BASE_NONE, NULL, 0,
14161         "h245.FunctionNotSupported", HFILL }},
14162     { &hf_h245_multilinkIndication,
14163       { "multilinkIndication", "h245.multilinkIndication",
14164         FT_UINT32, BASE_DEC, VALS(h245_MultilinkIndication_vals), 0,
14165         "h245.MultilinkIndication", HFILL }},
14166     { &hf_h245_logicalChannelRateRelease,
14167       { "logicalChannelRateRelease", "h245.logicalChannelRateRelease",
14168         FT_NONE, BASE_NONE, NULL, 0,
14169         "h245.LogicalChannelRateRelease", HFILL }},
14170     { &hf_h245_flowControlIndication,
14171       { "flowControlIndication", "h245.flowControlIndication",
14172         FT_NONE, BASE_NONE, NULL, 0,
14173         "h245.FlowControlIndication", HFILL }},
14174     { &hf_h245_mobileMultilinkReconfigurationIndication,
14175       { "mobileMultilinkReconfigurationIndication", "h245.mobileMultilinkReconfigurationIndication",
14176         FT_NONE, BASE_NONE, NULL, 0,
14177         "h245.MobileMultilinkReconfigurationIndication", HFILL }},
14178     { &hf_h245_genericIndication,
14179       { "genericIndication", "h245.genericIndication",
14180         FT_NONE, BASE_NONE, NULL, 0,
14181         "h245.GenericMessage", HFILL }},
14182     { &hf_h245_messageIdentifier,
14183       { "messageIdentifier", "h245.messageIdentifier",
14184         FT_UINT32, BASE_DEC, VALS(h245_CapabilityIdentifier_vals), 0,
14185         "h245.CapabilityIdentifier", HFILL }},
14186     { &hf_h245_subMessageIdentifier,
14187       { "subMessageIdentifier", "h245.subMessageIdentifier",
14188         FT_UINT32, BASE_DEC, NULL, 0,
14189         "h245.T_subMessageIdentifier", HFILL }},
14190     { &hf_h245_messageContent,
14191       { "messageContent", "h245.messageContent",
14192         FT_UINT32, BASE_DEC, NULL, 0,
14193         "h245.SEQUENCE_OF_GenericParameter", HFILL }},
14194     { &hf_h245_messageContent_item,
14195       { "Item", "h245.messageContent_item",
14196         FT_NONE, BASE_NONE, NULL, 0,
14197         "h245.GenericParameter", HFILL }},
14198     { &hf_h245_nonStandardData,
14199       { "nonStandardData", "h245.nonStandardData",
14200         FT_NONE, BASE_NONE, NULL, 0,
14201         "h245.NonStandardParameter", HFILL }},
14202     { &hf_h245_nonStandardIdentifier,
14203       { "nonStandardIdentifier", "h245.nonStandardIdentifier",
14204         FT_UINT32, BASE_DEC, VALS(h245_NonStandardIdentifier_vals), 0,
14205         "h245.NonStandardIdentifier", HFILL }},
14206     { &hf_h245_nsd_data,
14207       { "data", "h245.data",
14208         FT_BYTES, BASE_HEX, NULL, 0,
14209         "h245.T_nsd_data", HFILL }},
14210     { &hf_h245_object,
14211       { "object", "h245.object",
14212         FT_OID, BASE_NONE, NULL, 0,
14213         "h245.T_object", HFILL }},
14214     { &hf_h245_h221NonStandardID,
14215       { "h221NonStandard", "h245.h221NonStandard",
14216         FT_NONE, BASE_NONE, NULL, 0,
14217         "h245.H221NonStandardID", HFILL }},
14218     { &hf_h245_t35CountryCode,
14219       { "t35CountryCode", "h245.t35CountryCode",
14220         FT_UINT32, BASE_DEC, VALS(T35CountryCode_vals), 0,
14221         "h245.T_t35CountryCode", HFILL }},
14222     { &hf_h245_t35Extension,
14223       { "t35Extension", "h245.t35Extension",
14224         FT_UINT32, BASE_DEC, NULL, 0,
14225         "h245.T_t35Extension", HFILL }},
14226     { &hf_h245_manufacturerCode,
14227       { "manufacturerCode", "h245.manufacturerCode",
14228         FT_UINT32, BASE_DEC, NULL, 0,
14229         "h245.T_manufacturerCode", HFILL }},
14230     { &hf_h245_terminalType,
14231       { "terminalType", "h245.terminalType",
14232         FT_UINT32, BASE_DEC, NULL, 0,
14233         "h245.INTEGER_0_255", HFILL }},
14234     { &hf_h245_statusDeterminationNumber,
14235       { "statusDeterminationNumber", "h245.statusDeterminationNumber",
14236         FT_UINT32, BASE_DEC, NULL, 0,
14237         "h245.INTEGER_0_16777215", HFILL }},
14238     { &hf_h245_decision,
14239       { "decision", "h245.decision",
14240         FT_UINT32, BASE_DEC, VALS(h245_T_decision_vals), 0,
14241         "h245.T_decision", HFILL }},
14242     { &hf_h245_master,
14243       { "master", "h245.master",
14244         FT_NONE, BASE_NONE, NULL, 0,
14245         "h245.NULL", HFILL }},
14246     { &hf_h245_slave,
14247       { "slave", "h245.slave",
14248         FT_NONE, BASE_NONE, NULL, 0,
14249         "h245.NULL", HFILL }},
14250     { &hf_h245_msd_rej_cause,
14251       { "cause", "h245.cause",
14252         FT_UINT32, BASE_DEC, VALS(h245_MasterSlaveDeterminationRejectCause_vals), 0,
14253         "h245.MasterSlaveDeterminationRejectCause", HFILL }},
14254     { &hf_h245_identicalNumbers,
14255       { "identicalNumbers", "h245.identicalNumbers",
14256         FT_NONE, BASE_NONE, NULL, 0,
14257         "h245.NULL", HFILL }},
14258     { &hf_h245_sequenceNumber,
14259       { "sequenceNumber", "h245.sequenceNumber",
14260         FT_UINT32, BASE_DEC, NULL, 0,
14261         "h245.SequenceNumber", HFILL }},
14262     { &hf_h245_protocolIdentifier,
14263       { "protocolIdentifier", "h245.protocolIdentifier",
14264         FT_OID, BASE_NONE, NULL, 0,
14265         "h245.OBJECT_IDENTIFIER", HFILL }},
14266     { &hf_h245_multiplexCapability,
14267       { "multiplexCapability", "h245.multiplexCapability",
14268         FT_UINT32, BASE_DEC, VALS(h245_MultiplexCapability_vals), 0,
14269         "h245.MultiplexCapability", HFILL }},
14270     { &hf_h245_capabilityTable,
14271       { "capabilityTable", "h245.capabilityTable",
14272         FT_UINT32, BASE_DEC, NULL, 0,
14273         "h245.SET_SIZE_1_256_OF_CapabilityTableEntry", HFILL }},
14274     { &hf_h245_capabilityTable_item,
14275       { "Item", "h245.capabilityTable_item",
14276         FT_NONE, BASE_NONE, NULL, 0,
14277         "h245.CapabilityTableEntry", HFILL }},
14278     { &hf_h245_capabilityDescriptors,
14279       { "capabilityDescriptors", "h245.capabilityDescriptors",
14280         FT_UINT32, BASE_DEC, NULL, 0,
14281         "h245.SET_SIZE_1_256_OF_CapabilityDescriptor", HFILL }},
14282     { &hf_h245_capabilityDescriptors_item,
14283       { "Item", "h245.capabilityDescriptors_item",
14284         FT_NONE, BASE_NONE, NULL, 0,
14285         "h245.CapabilityDescriptor", HFILL }},
14286     { &hf_h245_genericInformation,
14287       { "genericInformation", "h245.genericInformation",
14288         FT_UINT32, BASE_DEC, NULL, 0,
14289         "h245.SEQUENCE_OF_GenericInformation", HFILL }},
14290     { &hf_h245_genericInformation_item,
14291       { "Item", "h245.genericInformation_item",
14292         FT_NONE, BASE_NONE, NULL, 0,
14293         "h245.GenericInformation", HFILL }},
14294     { &hf_h245_capabilityTableEntryNumber,
14295       { "capabilityTableEntryNumber", "h245.capabilityTableEntryNumber",
14296         FT_UINT32, BASE_DEC, NULL, 0,
14297         "h245.CapabilityTableEntryNumber", HFILL }},
14298     { &hf_h245_capability,
14299       { "capability", "h245.capability",
14300         FT_UINT32, BASE_DEC, VALS(h245_Capability_vals), 0,
14301         "h245.Capability", HFILL }},
14302     { &hf_h245_capabilityDescriptorNumber,
14303       { "capabilityDescriptorNumber", "h245.capabilityDescriptorNumber",
14304         FT_UINT32, BASE_DEC, NULL, 0,
14305         "h245.CapabilityDescriptorNumber", HFILL }},
14306     { &hf_h245_simultaneousCapabilities,
14307       { "simultaneousCapabilities", "h245.simultaneousCapabilities",
14308         FT_UINT32, BASE_DEC, NULL, 0,
14309         "h245.SET_SIZE_1_256_OF_AlternativeCapabilitySet", HFILL }},
14310     { &hf_h245_simultaneousCapabilities_item,
14311       { "Item", "h245.simultaneousCapabilities_item",
14312         FT_UINT32, BASE_DEC, NULL, 0,
14313         "h245.AlternativeCapabilitySet", HFILL }},
14314     { &hf_h245_AlternativeCapabilitySet_item,
14315       { "alternativeCapability", "h245.AlternativeCapabilitySet_item",
14316         FT_UINT32, BASE_DEC, NULL, 0,
14317         "h245.CapabilityTableEntryNumber", HFILL }},
14318     { &hf_h245_tcs_rej_cause,
14319       { "cause", "h245.cause",
14320         FT_UINT32, BASE_DEC, VALS(h245_TerminalCapabilitySetRejectCause_vals), 0,
14321         "h245.TerminalCapabilitySetRejectCause", HFILL }},
14322     { &hf_h245_unspecified,
14323       { "unspecified", "h245.unspecified",
14324         FT_NONE, BASE_NONE, NULL, 0,
14325         "h245.NULL", HFILL }},
14326     { &hf_h245_undefinedTableEntryUsed,
14327       { "undefinedTableEntryUsed", "h245.undefinedTableEntryUsed",
14328         FT_NONE, BASE_NONE, NULL, 0,
14329         "h245.NULL", HFILL }},
14330     { &hf_h245_descriptorCapacityExceeded,
14331       { "descriptorCapacityExceeded", "h245.descriptorCapacityExceeded",
14332         FT_NONE, BASE_NONE, NULL, 0,
14333         "h245.NULL", HFILL }},
14334     { &hf_h245_tableEntryCapacityExceeded,
14335       { "tableEntryCapacityExceeded", "h245.tableEntryCapacityExceeded",
14336         FT_UINT32, BASE_DEC, VALS(h245_T_tableEntryCapacityExceeded_vals), 0,
14337         "h245.T_tableEntryCapacityExceeded", HFILL }},
14338     { &hf_h245_highestEntryNumberProcessed,
14339       { "highestEntryNumberProcessed", "h245.highestEntryNumberProcessed",
14340         FT_UINT32, BASE_DEC, NULL, 0,
14341         "h245.CapabilityTableEntryNumber", HFILL }},
14342     { &hf_h245_noneProcessed,
14343       { "noneProcessed", "h245.noneProcessed",
14344         FT_NONE, BASE_NONE, NULL, 0,
14345         "h245.NULL", HFILL }},
14346     { &hf_h245_nonStandard,
14347       { "nonStandard", "h245.nonStandard",
14348         FT_NONE, BASE_NONE, NULL, 0,
14349         "h245.NonStandardParameter", HFILL }},
14350     { &hf_h245_receiveVideoCapability,
14351       { "receiveVideoCapability", "h245.receiveVideoCapability",
14352         FT_UINT32, BASE_DEC, VALS(h245_VideoCapability_vals), 0,
14353         "h245.VideoCapability", HFILL }},
14354     { &hf_h245_transmitVideoCapability,
14355       { "transmitVideoCapability", "h245.transmitVideoCapability",
14356         FT_UINT32, BASE_DEC, VALS(h245_VideoCapability_vals), 0,
14357         "h245.VideoCapability", HFILL }},
14358     { &hf_h245_receiveAndTransmitVideoCapability,
14359       { "receiveAndTransmitVideoCapability", "h245.receiveAndTransmitVideoCapability",
14360         FT_UINT32, BASE_DEC, VALS(h245_VideoCapability_vals), 0,
14361         "h245.VideoCapability", HFILL }},
14362     { &hf_h245_receiveAudioCapability,
14363       { "receiveAudioCapability", "h245.receiveAudioCapability",
14364         FT_UINT32, BASE_DEC, VALS(h245_AudioCapability_vals), 0,
14365         "h245.AudioCapability", HFILL }},
14366     { &hf_h245_transmitAudioCapability,
14367       { "transmitAudioCapability", "h245.transmitAudioCapability",
14368         FT_UINT32, BASE_DEC, VALS(h245_AudioCapability_vals), 0,
14369         "h245.AudioCapability", HFILL }},
14370     { &hf_h245_receiveAndTransmitAudioCapability,
14371       { "receiveAndTransmitAudioCapability", "h245.receiveAndTransmitAudioCapability",
14372         FT_UINT32, BASE_DEC, VALS(h245_AudioCapability_vals), 0,
14373         "h245.AudioCapability", HFILL }},
14374     { &hf_h245_receiveDataApplicationCapability,
14375       { "receiveDataApplicationCapability", "h245.receiveDataApplicationCapability",
14376         FT_NONE, BASE_NONE, NULL, 0,
14377         "h245.DataApplicationCapability", HFILL }},
14378     { &hf_h245_transmitDataApplicationCapability,
14379       { "transmitDataApplicationCapability", "h245.transmitDataApplicationCapability",
14380         FT_NONE, BASE_NONE, NULL, 0,
14381         "h245.DataApplicationCapability", HFILL }},
14382     { &hf_h245_receiveAndTransmitDataApplicationCapability,
14383       { "receiveAndTransmitDataApplicationCapability", "h245.receiveAndTransmitDataApplicationCapability",
14384         FT_NONE, BASE_NONE, NULL, 0,
14385         "h245.DataApplicationCapability", HFILL }},
14386     { &hf_h245_h233EncryptionTransmitCapability,
14387       { "h233EncryptionTransmitCapability", "h245.h233EncryptionTransmitCapability",
14388         FT_BOOLEAN, 8, NULL, 0,
14389         "h245.BOOLEAN", HFILL }},
14390     { &hf_h245_h233EncryptionReceiveCapability,
14391       { "h233EncryptionReceiveCapability", "h245.h233EncryptionReceiveCapability",
14392         FT_NONE, BASE_NONE, NULL, 0,
14393         "h245.T_h233EncryptionReceiveCapability", HFILL }},
14394     { &hf_h245_h233IVResponseTime,
14395       { "h233IVResponseTime", "h245.h233IVResponseTime",
14396         FT_UINT32, BASE_DEC, NULL, 0,
14397         "h245.INTEGER_0_255", HFILL }},
14398     { &hf_h245_conferenceCapability,
14399       { "conferenceCapability", "h245.conferenceCapability",
14400         FT_NONE, BASE_NONE, NULL, 0,
14401         "h245.ConferenceCapability", HFILL }},
14402     { &hf_h245_h235SecurityCapability,
14403       { "h235SecurityCapability", "h245.h235SecurityCapability",
14404         FT_NONE, BASE_NONE, NULL, 0,
14405         "h245.H235SecurityCapability", HFILL }},
14406     { &hf_h245_maxPendingReplacementFor,
14407       { "maxPendingReplacementFor", "h245.maxPendingReplacementFor",
14408         FT_UINT32, BASE_DEC, NULL, 0,
14409         "h245.INTEGER_0_255", HFILL }},
14410     { &hf_h245_receiveUserInputCapability,
14411       { "receiveUserInputCapability", "h245.receiveUserInputCapability",
14412         FT_UINT32, BASE_DEC, VALS(h245_UserInputCapability_vals), 0,
14413         "h245.UserInputCapability", HFILL }},
14414     { &hf_h245_transmitUserInputCapability,
14415       { "transmitUserInputCapability", "h245.transmitUserInputCapability",
14416         FT_UINT32, BASE_DEC, VALS(h245_UserInputCapability_vals), 0,
14417         "h245.UserInputCapability", HFILL }},
14418     { &hf_h245_receiveAndTransmitUserInputCapability,
14419       { "receiveAndTransmitUserInputCapability", "h245.receiveAndTransmitUserInputCapability",
14420         FT_UINT32, BASE_DEC, VALS(h245_UserInputCapability_vals), 0,
14421         "h245.UserInputCapability", HFILL }},
14422     { &hf_h245_genericControlCapability,
14423       { "genericControlCapability", "h245.genericControlCapability",
14424         FT_NONE, BASE_NONE, NULL, 0,
14425         "h245.GenericCapability", HFILL }},
14426     { &hf_h245_receiveMultiplexedStreamCapability,
14427       { "receiveMultiplexedStreamCapability", "h245.receiveMultiplexedStreamCapability",
14428         FT_NONE, BASE_NONE, NULL, 0,
14429         "h245.MultiplexedStreamCapability", HFILL }},
14430     { &hf_h245_transmitMultiplexedStreamCapability,
14431       { "transmitMultiplexedStreamCapability", "h245.transmitMultiplexedStreamCapability",
14432         FT_NONE, BASE_NONE, NULL, 0,
14433         "h245.MultiplexedStreamCapability", HFILL }},
14434     { &hf_h245_receiveAndTransmitMultiplexedStreamCapability,
14435       { "receiveAndTransmitMultiplexedStreamCapability", "h245.receiveAndTransmitMultiplexedStreamCapability",
14436         FT_NONE, BASE_NONE, NULL, 0,
14437         "h245.MultiplexedStreamCapability", HFILL }},
14438     { &hf_h245_receiveRTPAudioTelephonyEventCapability,
14439       { "receiveRTPAudioTelephonyEventCapability", "h245.receiveRTPAudioTelephonyEventCapability",
14440         FT_NONE, BASE_NONE, NULL, 0,
14441         "h245.AudioTelephonyEventCapability", HFILL }},
14442     { &hf_h245_receiveRTPAudioToneCapability,
14443       { "receiveRTPAudioToneCapability", "h245.receiveRTPAudioToneCapability",
14444         FT_NONE, BASE_NONE, NULL, 0,
14445         "h245.AudioToneCapability", HFILL }},
14446     { &hf_h245_depFecCapability,
14447       { "depFecCapability", "h245.depFecCapability",
14448         FT_UINT32, BASE_DEC, VALS(h245_DepFECCapability_vals), 0,
14449         "h245.DepFECCapability", HFILL }},
14450     { &hf_h245_multiplePayloadStreamCapability,
14451       { "multiplePayloadStreamCapability", "h245.multiplePayloadStreamCapability",
14452         FT_NONE, BASE_NONE, NULL, 0,
14453         "h245.MultiplePayloadStreamCapability", HFILL }},
14454     { &hf_h245_fecCapability,
14455       { "fecCapability", "h245.fecCapability",
14456         FT_NONE, BASE_NONE, NULL, 0,
14457         "h245.FECCapability", HFILL }},
14458     { &hf_h245_redundancyEncodingCap,
14459       { "redundancyEncodingCap", "h245.redundancyEncodingCap",
14460         FT_NONE, BASE_NONE, NULL, 0,
14461         "h245.RedundancyEncodingCapability", HFILL }},
14462     { &hf_h245_oneOfCapabilities,
14463       { "oneOfCapabilities", "h245.oneOfCapabilities",
14464         FT_UINT32, BASE_DEC, NULL, 0,
14465         "h245.AlternativeCapabilitySet", HFILL }},
14466     { &hf_h245_encryptionAuthenticationAndIntegrity,
14467       { "encryptionAuthenticationAndIntegrity", "h245.encryptionAuthenticationAndIntegrity",
14468         FT_NONE, BASE_NONE, NULL, 0,
14469         "h245.EncryptionAuthenticationAndIntegrity", HFILL }},
14470     { &hf_h245_mediaCapability,
14471       { "mediaCapability", "h245.mediaCapability",
14472         FT_UINT32, BASE_DEC, NULL, 0,
14473         "h245.CapabilityTableEntryNumber", HFILL }},
14474     { &hf_h245_h222Capability,
14475       { "h222Capability", "h245.h222Capability",
14476         FT_NONE, BASE_NONE, NULL, 0,
14477         "h245.H222Capability", HFILL }},
14478     { &hf_h245_h223Capability,
14479       { "h223Capability", "h245.h223Capability",
14480         FT_NONE, BASE_NONE, NULL, 0,
14481         "h245.H223Capability", HFILL }},
14482     { &hf_h245_v76Capability,
14483       { "v76Capability", "h245.v76Capability",
14484         FT_NONE, BASE_NONE, NULL, 0,
14485         "h245.V76Capability", HFILL }},
14486     { &hf_h245_h2250Capability,
14487       { "h2250Capability", "h245.h2250Capability",
14488         FT_NONE, BASE_NONE, NULL, 0,
14489         "h245.H2250Capability", HFILL }},
14490     { &hf_h245_genericMultiplexCapability,
14491       { "genericMultiplexCapability", "h245.genericMultiplexCapability",
14492         FT_NONE, BASE_NONE, NULL, 0,
14493         "h245.GenericCapability", HFILL }},
14494     { &hf_h245_numberOfVCs,
14495       { "numberOfVCs", "h245.numberOfVCs",
14496         FT_UINT32, BASE_DEC, NULL, 0,
14497         "h245.INTEGER_1_256", HFILL }},
14498     { &hf_h245_vcCapability,
14499       { "vcCapability", "h245.vcCapability",
14500         FT_UINT32, BASE_DEC, NULL, 0,
14501         "h245.SET_OF_VCCapability", HFILL }},
14502     { &hf_h245_vcCapability_item,
14503       { "Item", "h245.vcCapability_item",
14504         FT_NONE, BASE_NONE, NULL, 0,
14505         "h245.VCCapability", HFILL }},
14506     { &hf_h245_aal1,
14507       { "aal1", "h245.aal1",
14508         FT_NONE, BASE_NONE, NULL, 0,
14509         "h245.T_aal1", HFILL }},
14510     { &hf_h245_nullClockRecovery,
14511       { "nullClockRecovery", "h245.nullClockRecovery",
14512         FT_BOOLEAN, 8, NULL, 0,
14513         "h245.BOOLEAN", HFILL }},
14514     { &hf_h245_srtsClockRecovery_bool,
14515       { "srtsClockRecovery", "h245.srtsClockRecovery",
14516         FT_BOOLEAN, 8, NULL, 0,
14517         "h245.BOOLEAN", HFILL }},
14518     { &hf_h245_adaptiveClockRecovery,
14519       { "adaptiveClockRecovery", "h245.adaptiveClockRecovery",
14520         FT_BOOLEAN, 8, NULL, 0,
14521         "h245.BOOLEAN", HFILL }},
14522     { &hf_h245_nullErrorCorrection,
14523       { "nullErrorCorrection", "h245.nullErrorCorrection",
14524         FT_BOOLEAN, 8, NULL, 0,
14525         "h245.BOOLEAN", HFILL }},
14526     { &hf_h245_longInterleaver,
14527       { "longInterleaver", "h245.longInterleaver",
14528         FT_BOOLEAN, 8, NULL, 0,
14529         "h245.BOOLEAN", HFILL }},
14530     { &hf_h245_shortInterleaver,
14531       { "shortInterleaver", "h245.shortInterleaver",
14532         FT_BOOLEAN, 8, NULL, 0,
14533         "h245.BOOLEAN", HFILL }},
14534     { &hf_h245_errorCorrectionOnly,
14535       { "errorCorrectionOnly", "h245.errorCorrectionOnly",
14536         FT_BOOLEAN, 8, NULL, 0,
14537         "h245.BOOLEAN", HFILL }},
14538     { &hf_h245_structuredDataTransfer,
14539       { "structuredDataTransfer", "h245.structuredDataTransfer",
14540         FT_BOOLEAN, 8, NULL, 0,
14541         "h245.BOOLEAN", HFILL }},
14542     { &hf_h245_partiallyFilledCells,
14543       { "partiallyFilledCells", "h245.partiallyFilledCells",
14544         FT_BOOLEAN, 8, NULL, 0,
14545         "h245.BOOLEAN", HFILL }},
14546     { &hf_h245_aal5,
14547       { "aal5", "h245.aal5",
14548         FT_NONE, BASE_NONE, NULL, 0,
14549         "h245.T_aal5", HFILL }},
14550     { &hf_h245_forwardMaximumSDUSize,
14551       { "forwardMaximumSDUSize", "h245.forwardMaximumSDUSize",
14552         FT_UINT32, BASE_DEC, NULL, 0,
14553         "h245.INTEGER_0_65535", HFILL }},
14554     { &hf_h245_backwardMaximumSDUSize,
14555       { "backwardMaximumSDUSize", "h245.backwardMaximumSDUSize",
14556         FT_UINT32, BASE_DEC, NULL, 0,
14557         "h245.INTEGER_0_65535", HFILL }},
14558     { &hf_h245_transportStream_bool,
14559       { "transportStream", "h245.transportStream",
14560         FT_BOOLEAN, 8, NULL, 0,
14561         "h245.BOOLEAN", HFILL }},
14562     { &hf_h245_programStream,
14563       { "programStream", "h245.programStream",
14564         FT_BOOLEAN, 8, NULL, 0,
14565         "h245.BOOLEAN", HFILL }},
14566     { &hf_h245_availableBitRates,
14567       { "availableBitRates", "h245.availableBitRates",
14568         FT_NONE, BASE_NONE, NULL, 0,
14569         "h245.T_availableBitRates", HFILL }},
14570     { &hf_h245_avb_type,
14571       { "type", "h245.type",
14572         FT_UINT32, BASE_DEC, VALS(h245_Avb_type_vals), 0,
14573         "h245.Avb_type", HFILL }},
14574     { &hf_h245_singleBitRate,
14575       { "singleBitRate", "h245.singleBitRate",
14576         FT_UINT32, BASE_DEC, NULL, 0,
14577         "h245.INTEGER_1_65535", HFILL }},
14578     { &hf_h245_rangeOfBitRates,
14579       { "rangeOfBitRates", "h245.rangeOfBitRates",
14580         FT_NONE, BASE_NONE, NULL, 0,
14581         "h245.T_rangeOfBitRates", HFILL }},
14582     { &hf_h245_lowerBitRate,
14583       { "lowerBitRate", "h245.lowerBitRate",
14584         FT_UINT32, BASE_DEC, NULL, 0,
14585         "h245.INTEGER_1_65535", HFILL }},
14586     { &hf_h245_higherBitRate,
14587       { "higherBitRate", "h245.higherBitRate",
14588         FT_UINT32, BASE_DEC, NULL, 0,
14589         "h245.INTEGER_1_65535", HFILL }},
14590     { &hf_h245_aal1ViaGateway,
14591       { "aal1ViaGateway", "h245.aal1ViaGateway",
14592         FT_NONE, BASE_NONE, NULL, 0,
14593         "h245.T_aal1ViaGateway", HFILL }},
14594     { &hf_h245_gatewayAddress,
14595       { "gatewayAddress", "h245.gatewayAddress",
14596         FT_UINT32, BASE_DEC, NULL, 0,
14597         "h245.SET_SIZE_1_256_OF_Q2931Address", HFILL }},
14598     { &hf_h245_gatewayAddress_item,
14599       { "Item", "h245.gatewayAddress_item",
14600         FT_NONE, BASE_NONE, NULL, 0,
14601         "h245.Q2931Address", HFILL }},
14602     { &hf_h245_srtsClockRecoveryflag,
14603       { "srtsClockRecovery", "h245.srtsClockRecovery",
14604         FT_BOOLEAN, 8, NULL, 0,
14605         "h245.BOOLEAN", HFILL }},
14606     { &hf_h245_transportWithI_frames,
14607       { "transportWithI-frames", "h245.transportWithI_frames",
14608         FT_BOOLEAN, 8, NULL, 0,
14609         "h245.BOOLEAN", HFILL }},
14610     { &hf_h245_videoWithAL1,
14611       { "videoWithAL1", "h245.videoWithAL1",
14612         FT_BOOLEAN, 8, NULL, 0,
14613         "h245.BOOLEAN", HFILL }},
14614     { &hf_h245_videoWithAL2,
14615       { "videoWithAL2", "h245.videoWithAL2",
14616         FT_BOOLEAN, 8, NULL, 0,
14617         "h245.BOOLEAN", HFILL }},
14618     { &hf_h245_videoWithAL3,
14619       { "videoWithAL3", "h245.videoWithAL3",
14620         FT_BOOLEAN, 8, NULL, 0,
14621         "h245.BOOLEAN", HFILL }},
14622     { &hf_h245_audioWithAL1,
14623       { "audioWithAL1", "h245.audioWithAL1",
14624         FT_BOOLEAN, 8, NULL, 0,
14625         "h245.BOOLEAN", HFILL }},
14626     { &hf_h245_audioWithAL2,
14627       { "audioWithAL2", "h245.audioWithAL2",
14628         FT_BOOLEAN, 8, NULL, 0,
14629         "h245.BOOLEAN", HFILL }},
14630     { &hf_h245_audioWithAL3,
14631       { "audioWithAL3", "h245.audioWithAL3",
14632         FT_BOOLEAN, 8, NULL, 0,
14633         "h245.BOOLEAN", HFILL }},
14634     { &hf_h245_dataWithAL1,
14635       { "dataWithAL1", "h245.dataWithAL1",
14636         FT_BOOLEAN, 8, NULL, 0,
14637         "h245.BOOLEAN", HFILL }},
14638     { &hf_h245_dataWithAL2,
14639       { "dataWithAL2", "h245.dataWithAL2",
14640         FT_BOOLEAN, 8, NULL, 0,
14641         "h245.BOOLEAN", HFILL }},
14642     { &hf_h245_dataWithAL3,
14643       { "dataWithAL3", "h245.dataWithAL3",
14644         FT_BOOLEAN, 8, NULL, 0,
14645         "h245.BOOLEAN", HFILL }},
14646     { &hf_h245_maximumAl2SDUSize,
14647       { "maximumAl2SDUSize", "h245.maximumAl2SDUSize",
14648         FT_UINT32, BASE_DEC, NULL, 0,
14649         "h245.INTEGER_0_65535", HFILL }},
14650     { &hf_h245_maximumAl3SDUSize,
14651       { "maximumAl3SDUSize", "h245.maximumAl3SDUSize",
14652         FT_UINT32, BASE_DEC, NULL, 0,
14653         "h245.INTEGER_0_65535", HFILL }},
14654     { &hf_h245_maximumDelayJitter,
14655       { "maximumDelayJitter", "h245.maximumDelayJitter",
14656         FT_UINT32, BASE_DEC, NULL, 0,
14657         "h245.INTEGER_0_1023", HFILL }},
14658     { &hf_h245_h223MultiplexTableCapability,
14659       { "h223MultiplexTableCapability", "h245.h223MultiplexTableCapability",
14660         FT_UINT32, BASE_DEC, VALS(h245_T_h223MultiplexTableCapability_vals), 0,
14661         "h245.T_h223MultiplexTableCapability", HFILL }},
14662     { &hf_h245_basic,
14663       { "basic", "h245.basic",
14664         FT_NONE, BASE_NONE, NULL, 0,
14665         "h245.NULL", HFILL }},
14666     { &hf_h245_enhanced,
14667       { "enhanced", "h245.enhanced",
14668         FT_NONE, BASE_NONE, NULL, 0,
14669         "h245.T_enhanced", HFILL }},
14670     { &hf_h245_maximumNestingDepth,
14671       { "maximumNestingDepth", "h245.maximumNestingDepth",
14672         FT_UINT32, BASE_DEC, NULL, 0,
14673         "h245.INTEGER_1_15", HFILL }},
14674     { &hf_h245_maximumElementListSize,
14675       { "maximumElementListSize", "h245.maximumElementListSize",
14676         FT_UINT32, BASE_DEC, NULL, 0,
14677         "h245.INTEGER_2_255", HFILL }},
14678     { &hf_h245_maximumSubElementListSize,
14679       { "maximumSubElementListSize", "h245.maximumSubElementListSize",
14680         FT_UINT32, BASE_DEC, NULL, 0,
14681         "h245.INTEGER_2_255", HFILL }},
14682     { &hf_h245_maxMUXPDUSizeCapability,
14683       { "maxMUXPDUSizeCapability", "h245.maxMUXPDUSizeCapability",
14684         FT_BOOLEAN, 8, NULL, 0,
14685         "h245.BOOLEAN", HFILL }},
14686     { &hf_h245_nsrpSupport,
14687       { "nsrpSupport", "h245.nsrpSupport",
14688         FT_BOOLEAN, 8, NULL, 0,
14689         "h245.BOOLEAN", HFILL }},
14690     { &hf_h245_mobileOperationTransmitCapability,
14691       { "mobileOperationTransmitCapability", "h245.mobileOperationTransmitCapability",
14692         FT_NONE, BASE_NONE, NULL, 0,
14693         "h245.T_mobileOperationTransmitCapability", HFILL }},
14694     { &hf_h245_modeChangeCapability,
14695       { "modeChangeCapability", "h245.modeChangeCapability",
14696         FT_BOOLEAN, 8, NULL, 0,
14697         "h245.BOOLEAN", HFILL }},
14698     { &hf_h245_h223AnnexA,
14699       { "h223AnnexA", "h245.h223AnnexA",
14700         FT_BOOLEAN, 8, NULL, 0,
14701         "h245.BOOLEAN", HFILL }},
14702     { &hf_h245_h223AnnexADoubleFlagFlag,
14703       { "h223AnnexADoubleFlag", "h245.h223AnnexADoubleFlag",
14704         FT_BOOLEAN, 8, NULL, 0,
14705         "h245.BOOLEAN", HFILL }},
14706     { &hf_h245_h223AnnexB,
14707       { "h223AnnexB", "h245.h223AnnexB",
14708         FT_BOOLEAN, 8, NULL, 0,
14709         "h245.BOOLEAN", HFILL }},
14710     { &hf_h245_h223AnnexBwithHeader,
14711       { "h223AnnexBwithHeader", "h245.h223AnnexBwithHeader",
14712         FT_BOOLEAN, 8, NULL, 0,
14713         "h245.BOOLEAN", HFILL }},
14714     { &hf_h245_h223AnnexCCapability,
14715       { "h223AnnexCCapability", "h245.h223AnnexCCapability",
14716         FT_NONE, BASE_NONE, NULL, 0,
14717         "h245.H223AnnexCCapability", HFILL }},
14718     { &hf_h245_bitRate_1_19200,
14719       { "bitRate", "h245.bitRate",
14720         FT_UINT32, BASE_DEC, NULL, 0,
14721         "h245.INTEGER_1_19200", HFILL }},
14722     { &hf_h245_mobileMultilinkFrameCapability,
14723       { "mobileMultilinkFrameCapability", "h245.mobileMultilinkFrameCapability",
14724         FT_NONE, BASE_NONE, NULL, 0,
14725         "h245.T_mobileMultilinkFrameCapability", HFILL }},
14726     { &hf_h245_maximumSampleSize,
14727       { "maximumSampleSize", "h245.maximumSampleSize",
14728         FT_UINT32, BASE_DEC, NULL, 0,
14729         "h245.INTEGER_1_255", HFILL }},
14730     { &hf_h245_maximumPayloadLength,
14731       { "maximumPayloadLength", "h245.maximumPayloadLength",
14732         FT_UINT32, BASE_DEC, NULL, 0,
14733         "h245.INTEGER_1_65025", HFILL }},
14734     { &hf_h245_videoWithAL1M,
14735       { "videoWithAL1M", "h245.videoWithAL1M",
14736         FT_BOOLEAN, 8, NULL, 0,
14737         "h245.BOOLEAN", HFILL }},
14738     { &hf_h245_videoWithAL2M,
14739       { "videoWithAL2M", "h245.videoWithAL2M",
14740         FT_BOOLEAN, 8, NULL, 0,
14741         "h245.BOOLEAN", HFILL }},
14742     { &hf_h245_videoWithAL3M,
14743       { "videoWithAL3M", "h245.videoWithAL3M",
14744         FT_BOOLEAN, 8, NULL, 0,
14745         "h245.BOOLEAN", HFILL }},
14746     { &hf_h245_audioWithAL1M,
14747       { "audioWithAL1M", "h245.audioWithAL1M",
14748         FT_BOOLEAN, 8, NULL, 0,
14749         "h245.BOOLEAN", HFILL }},
14750     { &hf_h245_audioWithAL2M,
14751       { "audioWithAL2M", "h245.audioWithAL2M",
14752         FT_BOOLEAN, 8, NULL, 0,
14753         "h245.BOOLEAN", HFILL }},
14754     { &hf_h245_audioWithAL3M,
14755       { "audioWithAL3M", "h245.audioWithAL3M",
14756         FT_BOOLEAN, 8, NULL, 0,
14757         "h245.BOOLEAN", HFILL }},
14758     { &hf_h245_dataWithAL1M,
14759       { "dataWithAL1M", "h245.dataWithAL1M",
14760         FT_BOOLEAN, 8, NULL, 0,
14761         "h245.BOOLEAN", HFILL }},
14762     { &hf_h245_dataWithAL2M,
14763       { "dataWithAL2M", "h245.dataWithAL2M",
14764         FT_BOOLEAN, 8, NULL, 0,
14765         "h245.BOOLEAN", HFILL }},
14766     { &hf_h245_dataWithAL3M,
14767       { "dataWithAL3M", "h245.dataWithAL3M",
14768         FT_BOOLEAN, 8, NULL, 0,
14769         "h245.BOOLEAN", HFILL }},
14770     { &hf_h245_alpduInterleaving,
14771       { "alpduInterleaving", "h245.alpduInterleaving",
14772         FT_BOOLEAN, 8, NULL, 0,
14773         "h245.BOOLEAN", HFILL }},
14774     { &hf_h245_maximumAL1MPDUSize,
14775       { "maximumAL1MPDUSize", "h245.maximumAL1MPDUSize",
14776         FT_UINT32, BASE_DEC, NULL, 0,
14777         "h245.INTEGER_0_65535", HFILL }},
14778     { &hf_h245_maximumAL2MSDUSize,
14779       { "maximumAL2MSDUSize", "h245.maximumAL2MSDUSize",
14780         FT_UINT32, BASE_DEC, NULL, 0,
14781         "h245.INTEGER_0_65535", HFILL }},
14782     { &hf_h245_maximumAL3MSDUSize,
14783       { "maximumAL3MSDUSize", "h245.maximumAL3MSDUSize",
14784         FT_UINT32, BASE_DEC, NULL, 0,
14785         "h245.INTEGER_0_65535", HFILL }},
14786     { &hf_h245_rsCodeCapability,
14787       { "rsCodeCapability", "h245.rsCodeCapability",
14788         FT_BOOLEAN, 8, NULL, 0,
14789         "h245.BOOLEAN", HFILL }},
14790     { &hf_h245_suspendResumeCapabilitywAddress,
14791       { "suspendResumeCapabilitywAddress", "h245.suspendResumeCapabilitywAddress",
14792         FT_BOOLEAN, 8, NULL, 0,
14793         "h245.BOOLEAN", HFILL }},
14794     { &hf_h245_suspendResumeCapabilitywoAddress,
14795       { "suspendResumeCapabilitywoAddress", "h245.suspendResumeCapabilitywoAddress",
14796         FT_BOOLEAN, 8, NULL, 0,
14797         "h245.BOOLEAN", HFILL }},
14798     { &hf_h245_rejCapability,
14799       { "rejCapability", "h245.rejCapability",
14800         FT_BOOLEAN, 8, NULL, 0,
14801         "h245.BOOLEAN", HFILL }},
14802     { &hf_h245_sREJCapability,
14803       { "sREJCapability", "h245.sREJCapability",
14804         FT_BOOLEAN, 8, NULL, 0,
14805         "h245.BOOLEAN", HFILL }},
14806     { &hf_h245_mREJCapability,
14807       { "mREJCapability", "h245.mREJCapability",
14808         FT_BOOLEAN, 8, NULL, 0,
14809         "h245.BOOLEAN", HFILL }},
14810     { &hf_h245_crc8bitCapability,
14811       { "crc8bitCapability", "h245.crc8bitCapability",
14812         FT_BOOLEAN, 8, NULL, 0,
14813         "h245.BOOLEAN", HFILL }},
14814     { &hf_h245_crc16bitCapability,
14815       { "crc16bitCapability", "h245.crc16bitCapability",
14816         FT_BOOLEAN, 8, NULL, 0,
14817         "h245.BOOLEAN", HFILL }},
14818     { &hf_h245_crc32bitCapability,
14819       { "crc32bitCapability", "h245.crc32bitCapability",
14820         FT_BOOLEAN, 8, NULL, 0,
14821         "h245.BOOLEAN", HFILL }},
14822     { &hf_h245_uihCapability,
14823       { "uihCapability", "h245.uihCapability",
14824         FT_BOOLEAN, 8, NULL, 0,
14825         "h245.BOOLEAN", HFILL }},
14826     { &hf_h245_numOfDLCS,
14827       { "numOfDLCS", "h245.numOfDLCS",
14828         FT_UINT32, BASE_DEC, NULL, 0,
14829         "h245.INTEGER_2_8191", HFILL }},
14830     { &hf_h245_twoOctetAddressFieldCapability,
14831       { "twoOctetAddressFieldCapability", "h245.twoOctetAddressFieldCapability",
14832         FT_BOOLEAN, 8, NULL, 0,
14833         "h245.BOOLEAN", HFILL }},
14834     { &hf_h245_loopBackTestCapability,
14835       { "loopBackTestCapability", "h245.loopBackTestCapability",
14836         FT_BOOLEAN, 8, NULL, 0,
14837         "h245.BOOLEAN", HFILL }},
14838     { &hf_h245_n401Capability,
14839       { "n401Capability", "h245.n401Capability",
14840         FT_UINT32, BASE_DEC, NULL, 0,
14841         "h245.INTEGER_1_4095", HFILL }},
14842     { &hf_h245_maxWindowSizeCapability,
14843       { "maxWindowSizeCapability", "h245.maxWindowSizeCapability",
14844         FT_UINT32, BASE_DEC, NULL, 0,
14845         "h245.INTEGER_1_127", HFILL }},
14846     { &hf_h245_v75Capability,
14847       { "v75Capability", "h245.v75Capability",
14848         FT_NONE, BASE_NONE, NULL, 0,
14849         "h245.V75Capability", HFILL }},
14850     { &hf_h245_audioHeader,
14851       { "audioHeader", "h245.audioHeader",
14852         FT_BOOLEAN, 8, NULL, 0,
14853         "h245.BOOLEAN", HFILL }},
14854     { &hf_h245_maximumAudioDelayJitter,
14855       { "maximumAudioDelayJitter", "h245.maximumAudioDelayJitter",
14856         FT_UINT32, BASE_DEC, NULL, 0,
14857         "h245.INTEGER_0_1023", HFILL }},
14858     { &hf_h245_receiveMultipointCapability,
14859       { "receiveMultipointCapability", "h245.receiveMultipointCapability",
14860         FT_NONE, BASE_NONE, NULL, 0,
14861         "h245.MultipointCapability", HFILL }},
14862     { &hf_h245_transmitMultipointCapability,
14863       { "transmitMultipointCapability", "h245.transmitMultipointCapability",
14864         FT_NONE, BASE_NONE, NULL, 0,
14865         "h245.MultipointCapability", HFILL }},
14866     { &hf_h245_receiveAndTransmitMultipointCapability,
14867       { "receiveAndTransmitMultipointCapability", "h245.receiveAndTransmitMultipointCapability",
14868         FT_NONE, BASE_NONE, NULL, 0,
14869         "h245.MultipointCapability", HFILL }},
14870     { &hf_h245_mcCapability,
14871       { "mcCapability", "h245.mcCapability",
14872         FT_NONE, BASE_NONE, NULL, 0,
14873         "h245.T_mcCapability", HFILL }},
14874     { &hf_h245_centralizedConferenceMC,
14875       { "centralizedConferenceMC", "h245.centralizedConferenceMC",
14876         FT_BOOLEAN, 8, NULL, 0,
14877         "h245.BOOLEAN", HFILL }},
14878     { &hf_h245_decentralizedConferenceMC,
14879       { "decentralizedConferenceMC", "h245.decentralizedConferenceMC",
14880         FT_BOOLEAN, 8, NULL, 0,
14881         "h245.BOOLEAN", HFILL }},
14882     { &hf_h245_rtcpVideoControlCapability,
14883       { "rtcpVideoControlCapability", "h245.rtcpVideoControlCapability",
14884         FT_BOOLEAN, 8, NULL, 0,
14885         "h245.BOOLEAN", HFILL }},
14886     { &hf_h245_mediaPacketizationCapability,
14887       { "mediaPacketizationCapability", "h245.mediaPacketizationCapability",
14888         FT_NONE, BASE_NONE, NULL, 0,
14889         "h245.MediaPacketizationCapability", HFILL }},
14890     { &hf_h245_transportCapability,
14891       { "transportCapability", "h245.transportCapability",
14892         FT_NONE, BASE_NONE, NULL, 0,
14893         "h245.TransportCapability", HFILL }},
14894     { &hf_h245_redundancyEncodingCapability,
14895       { "redundancyEncodingCapability", "h245.redundancyEncodingCapability",
14896         FT_UINT32, BASE_DEC, NULL, 0,
14897         "h245.SEQUENCE_SIZE_1_256_OF_RedundancyEncodingCapability", HFILL }},
14898     { &hf_h245_redundancyEncodingCapability_item,
14899       { "Item", "h245.redundancyEncodingCapability_item",
14900         FT_NONE, BASE_NONE, NULL, 0,
14901         "h245.RedundancyEncodingCapability", HFILL }},
14902     { &hf_h245_logicalChannelSwitchingCapability,
14903       { "logicalChannelSwitchingCapability", "h245.logicalChannelSwitchingCapability",
14904         FT_BOOLEAN, 8, NULL, 0,
14905         "h245.BOOLEAN", HFILL }},
14906     { &hf_h245_t120DynamicPortCapability,
14907       { "t120DynamicPortCapability", "h245.t120DynamicPortCapability",
14908         FT_BOOLEAN, 8, NULL, 0,
14909         "h245.BOOLEAN", HFILL }},
14910     { &hf_h245_h261aVideoPacketization,
14911       { "h261aVideoPacketization", "h245.h261aVideoPacketization",
14912         FT_BOOLEAN, 8, NULL, 0,
14913         "h245.BOOLEAN", HFILL }},
14914     { &hf_h245_rtpPayloadTypes,
14915       { "rtpPayloadType", "h245.rtpPayloadType",
14916         FT_UINT32, BASE_DEC, NULL, 0,
14917         "h245.SEQUENCE_SIZE_1_256_OF_RTPPayloadType", HFILL }},
14918     { &hf_h245_rtpPayloadTypes_item,
14919       { "Item", "h245.rtpPayloadType_item",
14920         FT_NONE, BASE_NONE, NULL, 0,
14921         "h245.RTPPayloadType", HFILL }},
14922     { &hf_h245_qosMode,
14923       { "qosMode", "h245.qosMode",
14924         FT_UINT32, BASE_DEC, VALS(h245_QOSMode_vals), 0,
14925         "h245.QOSMode", HFILL }},
14926     { &hf_h245_tokenRate,
14927       { "tokenRate", "h245.tokenRate",
14928         FT_UINT32, BASE_DEC, NULL, 0,
14929         "h245.INTEGER_1_4294967295", HFILL }},
14930     { &hf_h245_bucketSize,
14931       { "bucketSize", "h245.bucketSize",
14932         FT_UINT32, BASE_DEC, NULL, 0,
14933         "h245.INTEGER_1_4294967295", HFILL }},
14934     { &hf_h245_peakRate,
14935       { "peakRate", "h245.peakRate",
14936         FT_UINT32, BASE_DEC, NULL, 0,
14937         "h245.INTEGER_1_4294967295", HFILL }},
14938     { &hf_h245_minPoliced,
14939       { "minPoliced", "h245.minPoliced",
14940         FT_UINT32, BASE_DEC, NULL, 0,
14941         "h245.INTEGER_1_4294967295", HFILL }},
14942     { &hf_h245_maxPktSize,
14943       { "maxPktSize", "h245.maxPktSize",
14944         FT_UINT32, BASE_DEC, NULL, 0,
14945         "h245.INTEGER_1_4294967295", HFILL }},
14946     { &hf_h245_guaranteedQOS,
14947       { "guaranteedQOS", "h245.guaranteedQOS",
14948         FT_NONE, BASE_NONE, NULL, 0,
14949         "h245.NULL", HFILL }},
14950     { &hf_h245_controlledLoad,
14951       { "controlledLoad", "h245.controlledLoad",
14952         FT_NONE, BASE_NONE, NULL, 0,
14953         "h245.NULL", HFILL }},
14954     { &hf_h245_maxNTUSize,
14955       { "maxNTUSize", "h245.maxNTUSize",
14956         FT_UINT32, BASE_DEC, NULL, 0,
14957         "h245.INTEGER_0_65535", HFILL }},
14958     { &hf_h245_atmUBR,
14959       { "atmUBR", "h245.atmUBR",
14960         FT_BOOLEAN, 8, NULL, 0,
14961         "h245.BOOLEAN", HFILL }},
14962     { &hf_h245_atmrtVBR,
14963       { "atmrtVBR", "h245.atmrtVBR",
14964         FT_BOOLEAN, 8, NULL, 0,
14965         "h245.BOOLEAN", HFILL }},
14966     { &hf_h245_atmnrtVBR,
14967       { "atmnrtVBR", "h245.atmnrtVBR",
14968         FT_BOOLEAN, 8, NULL, 0,
14969         "h245.BOOLEAN", HFILL }},
14970     { &hf_h245_atmABR,
14971       { "atmABR", "h245.atmABR",
14972         FT_BOOLEAN, 8, NULL, 0,
14973         "h245.BOOLEAN", HFILL }},
14974     { &hf_h245_atmCBR,
14975       { "atmCBR", "h245.atmCBR",
14976         FT_BOOLEAN, 8, NULL, 0,
14977         "h245.BOOLEAN", HFILL }},
14978     { &hf_h245_nonStandardParameter,
14979       { "nonStandardParameter", "h245.nonStandardParameter",
14980         FT_NONE, BASE_NONE, NULL, 0,
14981         "h245.NonStandardParameter", HFILL }},
14982     { &hf_h245_servicePrioritySignalled,
14983       { "servicePrioritySignalled", "h245.servicePrioritySignalled",
14984         FT_BOOLEAN, 8, NULL, 0,
14985         "h245.BOOLEAN", HFILL }},
14986     { &hf_h245_servicePriorityValue,
14987       { "servicePriorityValue", "h245.servicePriorityValue",
14988         FT_NONE, BASE_NONE, NULL, 0,
14989         "h245.ServicePriorityValue", HFILL }},
14990     { &hf_h245_desired,
14991       { "desired", "h245.desired",
14992         FT_NONE, BASE_NONE, NULL, 0,
14993         "h245.NULL", HFILL }},
14994     { &hf_h245_required,
14995       { "required", "h245.required",
14996         FT_NONE, BASE_NONE, NULL, 0,
14997         "h245.NULL", HFILL }},
14998     { &hf_h245_class0,
14999       { "class0", "h245.class0",
15000         FT_NONE, BASE_NONE, NULL, 0,
15001         "h245.NULL", HFILL }},
15002     { &hf_h245_class1,
15003       { "class1", "h245.class1",
15004         FT_NONE, BASE_NONE, NULL, 0,
15005         "h245.NULL", HFILL }},
15006     { &hf_h245_class2,
15007       { "class2", "h245.class2",
15008         FT_NONE, BASE_NONE, NULL, 0,
15009         "h245.NULL", HFILL }},
15010     { &hf_h245_class3,
15011       { "class3", "h245.class3",
15012         FT_NONE, BASE_NONE, NULL, 0,
15013         "h245.NULL", HFILL }},
15014     { &hf_h245_class4,
15015       { "class4", "h245.class4",
15016         FT_NONE, BASE_NONE, NULL, 0,
15017         "h245.NULL", HFILL }},
15018     { &hf_h245_class5,
15019       { "class5", "h245.class5",
15020         FT_NONE, BASE_NONE, NULL, 0,
15021         "h245.NULL", HFILL }},
15022     { &hf_h245_qosType,
15023       { "qosType", "h245.qosType",
15024         FT_UINT32, BASE_DEC, VALS(h245_QOSType_vals), 0,
15025         "h245.QOSType", HFILL }},
15026     { &hf_h245_qosClass,
15027       { "qosClass", "h245.qosClass",
15028         FT_UINT32, BASE_DEC, VALS(h245_QOSClass_vals), 0,
15029         "h245.QOSClass", HFILL }},
15030     { &hf_h245_averageRate,
15031       { "averageRate", "h245.averageRate",
15032         FT_UINT32, BASE_DEC, NULL, 0,
15033         "h245.INTEGER_1_4294967295", HFILL }},
15034     { &hf_h245_burst,
15035       { "burst", "h245.burst",
15036         FT_UINT32, BASE_DEC, NULL, 0,
15037         "h245.INTEGER_1_4294967295", HFILL }},
15038     { &hf_h245_rsvpParameters,
15039       { "rsvpParameters", "h245.rsvpParameters",
15040         FT_NONE, BASE_NONE, NULL, 0,
15041         "h245.RSVPParameters", HFILL }},
15042     { &hf_h245_atmParameters,
15043       { "atmParameters", "h245.atmParameters",
15044         FT_NONE, BASE_NONE, NULL, 0,
15045         "h245.ATMParameters", HFILL }},
15046     { &hf_h245_localQoS,
15047       { "localQoS", "h245.localQoS",
15048         FT_BOOLEAN, 8, NULL, 0,
15049         "h245.BOOLEAN", HFILL }},
15050     { &hf_h245_genericTransportParameters,
15051       { "genericTransportParameters", "h245.genericTransportParameters",
15052         FT_NONE, BASE_NONE, NULL, 0,
15053         "h245.GenericTransportParameters", HFILL }},
15054     { &hf_h245_servicePriority,
15055       { "servicePriority", "h245.servicePriority",
15056         FT_NONE, BASE_NONE, NULL, 0,
15057         "h245.ServicePriority", HFILL }},
15058     { &hf_h245_authorizationParameter,
15059       { "authorizationParameter", "h245.authorizationParameter",
15060         FT_NONE, BASE_NONE, NULL, 0,
15061         "h245.AuthorizationParameters", HFILL }},
15062     { &hf_h245_qosDescriptor,
15063       { "qosDescriptor", "h245.qosDescriptor",
15064         FT_NONE, BASE_NONE, NULL, 0,
15065         "h245.QOSDescriptor", HFILL }},
15066     { &hf_h245_dscpValue,
15067       { "dscpValue", "h245.dscpValue",
15068         FT_UINT32, BASE_DEC, NULL, 0,
15069         "h245.INTEGER_0_63", HFILL }},
15070     { &hf_h245_ip_UDP,
15071       { "ip-UDP", "h245.ip_UDP",
15072         FT_NONE, BASE_NONE, NULL, 0,
15073         "h245.NULL", HFILL }},
15074     { &hf_h245_ip_TCP,
15075       { "ip-TCP", "h245.ip_TCP",
15076         FT_NONE, BASE_NONE, NULL, 0,
15077         "h245.NULL", HFILL }},
15078     { &hf_h245_atm_AAL5_UNIDIR,
15079       { "atm-AAL5-UNIDIR", "h245.atm_AAL5_UNIDIR",
15080         FT_NONE, BASE_NONE, NULL, 0,
15081         "h245.NULL", HFILL }},
15082     { &hf_h245_atm_AAL5_BIDIR,
15083       { "atm-AAL5-BIDIR", "h245.atm_AAL5_BIDIR",
15084         FT_NONE, BASE_NONE, NULL, 0,
15085         "h245.NULL", HFILL }},
15086     { &hf_h245_atm_AAL5_compressed,
15087       { "atm-AAL5-compressed", "h245.atm_AAL5_compressed",
15088         FT_NONE, BASE_NONE, NULL, 0,
15089         "h245.T_atm_AAL5_compressed", HFILL }},
15090     { &hf_h245_variable_delta,
15091       { "variable-delta", "h245.variable_delta",
15092         FT_BOOLEAN, 8, NULL, 0,
15093         "h245.BOOLEAN", HFILL }},
15094     { &hf_h245_mediaTransport,
15095       { "mediaTransport", "h245.mediaTransport",
15096         FT_UINT32, BASE_DEC, VALS(h245_MediaTransportType_vals), 0,
15097         "h245.MediaTransportType", HFILL }},
15098     { &hf_h245_qOSCapabilities,
15099       { "qOSCapabilities", "h245.qOSCapabilities",
15100         FT_UINT32, BASE_DEC, NULL, 0,
15101         "h245.SEQUENCE_SIZE_1_256_OF_QOSCapability", HFILL }},
15102     { &hf_h245_qOSCapabilities_item,
15103       { "Item", "h245.qOSCapabilities_item",
15104         FT_NONE, BASE_NONE, NULL, 0,
15105         "h245.QOSCapability", HFILL }},
15106     { &hf_h245_mediaChannelCapabilities,
15107       { "mediaChannelCapabilities", "h245.mediaChannelCapabilities",
15108         FT_UINT32, BASE_DEC, NULL, 0,
15109         "h245.SEQUENCE_SIZE_1_256_OF_MediaChannelCapability", HFILL }},
15110     { &hf_h245_mediaChannelCapabilities_item,
15111       { "Item", "h245.mediaChannelCapabilities_item",
15112         FT_NONE, BASE_NONE, NULL, 0,
15113         "h245.MediaChannelCapability", HFILL }},
15114     { &hf_h245_redundancyEncodingMethod,
15115       { "redundancyEncodingMethod", "h245.redundancyEncodingMethod",
15116         FT_UINT32, BASE_DEC, VALS(h245_RedundancyEncodingMethod_vals), 0,
15117         "h245.RedundancyEncodingMethod", HFILL }},
15118     { &hf_h245_primaryEncoding,
15119       { "primaryEncoding", "h245.primaryEncoding",
15120         FT_UINT32, BASE_DEC, NULL, 0,
15121         "h245.CapabilityTableEntryNumber", HFILL }},
15122     { &hf_h245_secondaryEncodingCapability,
15123       { "secondaryEncoding", "h245.secondaryEncoding",
15124         FT_UINT32, BASE_DEC, NULL, 0,
15125         "h245.SEQUENCE_SIZE_1_256_OF_CapabilityTableEntryNumber", HFILL }},
15126     { &hf_h245_secondaryEncodingCapability_item,
15127       { "Item", "h245.secondaryEncoding_item",
15128         FT_UINT32, BASE_DEC, NULL, 0,
15129         "h245.CapabilityTableEntryNumber", HFILL }},
15130     { &hf_h245_rtpAudioRedundancyEncoding,
15131       { "rtpAudioRedundancyEncoding", "h245.rtpAudioRedundancyEncoding",
15132         FT_NONE, BASE_NONE, NULL, 0,
15133         "h245.NULL", HFILL }},
15134     { &hf_h245_rtpH263VideoRedundancyEncoding,
15135       { "rtpH263VideoRedundancyEncoding", "h245.rtpH263VideoRedundancyEncoding",
15136         FT_NONE, BASE_NONE, NULL, 0,
15137         "h245.RTPH263VideoRedundancyEncoding", HFILL }},
15138     { &hf_h245_numberOfThreads,
15139       { "numberOfThreads", "h245.numberOfThreads",
15140         FT_UINT32, BASE_DEC, NULL, 0,
15141         "h245.INTEGER_1_16", HFILL }},
15142     { &hf_h245_framesBetweenSyncPoints,
15143       { "framesBetweenSyncPoints", "h245.framesBetweenSyncPoints",
15144         FT_UINT32, BASE_DEC, NULL, 0,
15145         "h245.INTEGER_1_256", HFILL }},
15146     { &hf_h245_frameToThreadMapping,
15147       { "frameToThreadMapping", "h245.frameToThreadMapping",
15148         FT_UINT32, BASE_DEC, VALS(h245_T_frameToThreadMapping_vals), 0,
15149         "h245.T_frameToThreadMapping", HFILL }},
15150     { &hf_h245_roundrobin,
15151       { "roundrobin", "h245.roundrobin",
15152         FT_NONE, BASE_NONE, NULL, 0,
15153         "h245.NULL", HFILL }},
15154     { &hf_h245_custom,
15155       { "custom", "h245.custom",
15156         FT_UINT32, BASE_DEC, NULL, 0,
15157         "h245.SEQUENCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping", HFILL }},
15158     { &hf_h245_custom_item,
15159       { "Item", "h245.custom_item",
15160         FT_NONE, BASE_NONE, NULL, 0,
15161         "h245.RTPH263VideoRedundancyFrameMapping", HFILL }},
15162     { &hf_h245_containedThreads,
15163       { "containedThreads", "h245.containedThreads",
15164         FT_UINT32, BASE_DEC, NULL, 0,
15165         "h245.T_containedThreads", HFILL }},
15166     { &hf_h245_containedThreads_item,
15167       { "Item", "h245.containedThreads_item",
15168         FT_UINT32, BASE_DEC, NULL, 0,
15169         "h245.INTEGER_0_15", HFILL }},
15170     { &hf_h245_threadNumber,
15171       { "threadNumber", "h245.threadNumber",
15172         FT_UINT32, BASE_DEC, NULL, 0,
15173         "h245.INTEGER_0_15", HFILL }},
15174     { &hf_h245_frameSequence,
15175       { "frameSequence", "h245.frameSequence",
15176         FT_UINT32, BASE_DEC, NULL, 0,
15177         "h245.T_frameSequence", HFILL }},
15178     { &hf_h245_frameSequence_item,
15179       { "Item", "h245.frameSequence_item",
15180         FT_UINT32, BASE_DEC, NULL, 0,
15181         "h245.INTEGER_0_255", HFILL }},
15182     { &hf_h245_multicastCapability,
15183       { "multicastCapability", "h245.multicastCapability",
15184         FT_BOOLEAN, 8, NULL, 0,
15185         "h245.BOOLEAN", HFILL }},
15186     { &hf_h245_multiUniCastConference,
15187       { "multiUniCastConference", "h245.multiUniCastConference",
15188         FT_BOOLEAN, 8, NULL, 0,
15189         "h245.BOOLEAN", HFILL }},
15190     { &hf_h245_mediaDistributionCapability,
15191       { "mediaDistributionCapability", "h245.mediaDistributionCapability",
15192         FT_UINT32, BASE_DEC, NULL, 0,
15193         "h245.SEQUENCE_OF_MediaDistributionCapability", HFILL }},
15194     { &hf_h245_mediaDistributionCapability_item,
15195       { "Item", "h245.mediaDistributionCapability_item",
15196         FT_NONE, BASE_NONE, NULL, 0,
15197         "h245.MediaDistributionCapability", HFILL }},
15198     { &hf_h245_centralizedControl,
15199       { "centralizedControl", "h245.centralizedControl",
15200         FT_BOOLEAN, 8, NULL, 0,
15201         "h245.BOOLEAN", HFILL }},
15202     { &hf_h245_distributedControl,
15203       { "distributedControl", "h245.distributedControl",
15204         FT_BOOLEAN, 8, NULL, 0,
15205         "h245.BOOLEAN", HFILL }},
15206     { &hf_h245_centralizedAudio,
15207       { "centralizedAudio", "h245.centralizedAudio",
15208         FT_BOOLEAN, 8, NULL, 0,
15209         "h245.BOOLEAN", HFILL }},
15210     { &hf_h245_distributedAudio,
15211       { "distributedAudio", "h245.distributedAudio",
15212         FT_BOOLEAN, 8, NULL, 0,
15213         "h245.BOOLEAN", HFILL }},
15214     { &hf_h245_centralizedVideo,
15215       { "centralizedVideo", "h245.centralizedVideo",
15216         FT_BOOLEAN, 8, NULL, 0,
15217         "h245.BOOLEAN", HFILL }},
15218     { &hf_h245_distributedVideo,
15219       { "distributedVideo", "h245.distributedVideo",
15220         FT_BOOLEAN, 8, NULL, 0,
15221         "h245.BOOLEAN", HFILL }},
15222     { &hf_h245_centralizedData,
15223       { "centralizedData", "h245.centralizedData",
15224         FT_UINT32, BASE_DEC, NULL, 0,
15225         "h245.SEQUENCE_OF_DataApplicationCapability", HFILL }},
15226     { &hf_h245_centralizedData_item,
15227       { "Item", "h245.centralizedData_item",
15228         FT_NONE, BASE_NONE, NULL, 0,
15229         "h245.DataApplicationCapability", HFILL }},
15230     { &hf_h245_distributedData,
15231       { "distributedData", "h245.distributedData",
15232         FT_UINT32, BASE_DEC, NULL, 0,
15233         "h245.SEQUENCE_OF_DataApplicationCapability", HFILL }},
15234     { &hf_h245_distributedData_item,
15235       { "Item", "h245.distributedData_item",
15236         FT_NONE, BASE_NONE, NULL, 0,
15237         "h245.DataApplicationCapability", HFILL }},
15238     { &hf_h245_h261VideoCapability,
15239       { "h261VideoCapability", "h245.h261VideoCapability",
15240         FT_NONE, BASE_NONE, NULL, 0,
15241         "h245.H261VideoCapability", HFILL }},
15242     { &hf_h245_h262VideoCapability,
15243       { "h262VideoCapability", "h245.h262VideoCapability",
15244         FT_NONE, BASE_NONE, NULL, 0,
15245         "h245.H262VideoCapability", HFILL }},
15246     { &hf_h245_h263VideoCapability,
15247       { "h263VideoCapability", "h245.h263VideoCapability",
15248         FT_NONE, BASE_NONE, NULL, 0,
15249         "h245.H263VideoCapability", HFILL }},
15250     { &hf_h245_is11172VideoCapability,
15251       { "is11172VideoCapability", "h245.is11172VideoCapability",
15252         FT_NONE, BASE_NONE, NULL, 0,
15253         "h245.IS11172VideoCapability", HFILL }},
15254     { &hf_h245_genericVideoCapability,
15255       { "genericVideoCapability", "h245.genericVideoCapability",
15256         FT_NONE, BASE_NONE, NULL, 0,
15257         "h245.GenericCapability", HFILL }},
15258     { &hf_h245_extendedVideoCapability,
15259       { "extendedVideoCapability", "h245.extendedVideoCapability",
15260         FT_NONE, BASE_NONE, NULL, 0,
15261         "h245.ExtendedVideoCapability", HFILL }},
15262     { &hf_h245_videoCapability,
15263       { "videoCapability", "h245.videoCapability",
15264         FT_UINT32, BASE_DEC, NULL, 0,
15265         "h245.SEQUENCE_OF_VideoCapability", HFILL }},
15266     { &hf_h245_videoCapability_item,
15267       { "Item", "h245.videoCapability_item",
15268         FT_UINT32, BASE_DEC, VALS(h245_VideoCapability_vals), 0,
15269         "h245.VideoCapability", HFILL }},
15270     { &hf_h245_videoCapabilityExtension,
15271       { "videoCapabilityExtension", "h245.videoCapabilityExtension",
15272         FT_UINT32, BASE_DEC, NULL, 0,
15273         "h245.SEQUENCE_OF_GenericCapability", HFILL }},
15274     { &hf_h245_videoCapabilityExtension_item,
15275       { "Item", "h245.videoCapabilityExtension_item",
15276         FT_NONE, BASE_NONE, NULL, 0,
15277         "h245.GenericCapability", HFILL }},
15278     { &hf_h245_qcifMPI_1_4,
15279       { "qcifMPI", "h245.qcifMPI",
15280         FT_UINT32, BASE_DEC, NULL, 0,
15281         "h245.INTEGER_1_4", HFILL }},
15282     { &hf_h245_cifMPI_1_4,
15283       { "cifMPI", "h245.cifMPI",
15284         FT_UINT32, BASE_DEC, NULL, 0,
15285         "h245.INTEGER_1_4", HFILL }},
15286     { &hf_h245_temporalSpatialTradeOffCapability,
15287       { "temporalSpatialTradeOffCapability", "h245.temporalSpatialTradeOffCapability",
15288         FT_BOOLEAN, 8, NULL, 0,
15289         "h245.BOOLEAN", HFILL }},
15290     { &hf_h245_maxBitRate_1_19200,
15291       { "maxBitRate", "h245.maxBitRate",
15292         FT_UINT32, BASE_DEC, NULL, 0,
15293         "h245.INTEGER_1_19200", HFILL }},
15294     { &hf_h245_stillImageTransmission,
15295       { "stillImageTransmission", "h245.stillImageTransmission",
15296         FT_BOOLEAN, 8, NULL, 0,
15297         "h245.BOOLEAN", HFILL }},
15298     { &hf_h245_videoBadMBsCap,
15299       { "videoBadMBsCap", "h245.videoBadMBsCap",
15300         FT_BOOLEAN, 8, NULL, 0,
15301         "h245.BOOLEAN", HFILL }},
15302     { &hf_h245_profileAndLevel_SPatML,
15303       { "profileAndLevel-SPatML", "h245.profileAndLevel_SPatML",
15304         FT_BOOLEAN, 8, NULL, 0,
15305         "h245.BOOLEAN", HFILL }},
15306     { &hf_h245_profileAndLevel_MPatLL,
15307       { "profileAndLevel-MPatLL", "h245.profileAndLevel_MPatLL",
15308         FT_BOOLEAN, 8, NULL, 0,
15309         "h245.BOOLEAN", HFILL }},
15310     { &hf_h245_profileAndLevel_MPatML,
15311       { "profileAndLevel-MPatML", "h245.profileAndLevel_MPatML",
15312         FT_BOOLEAN, 8, NULL, 0,
15313         "h245.BOOLEAN", HFILL }},
15314     { &hf_h245_profileAndLevel_MPatH_14,
15315       { "profileAndLevel-MPatH-14", "h245.profileAndLevel_MPatH_14",
15316         FT_BOOLEAN, 8, NULL, 0,
15317         "h245.BOOLEAN", HFILL }},
15318     { &hf_h245_profileAndLevel_MPatHL,
15319       { "profileAndLevel-MPatHL", "h245.profileAndLevel_MPatHL",
15320         FT_BOOLEAN, 8, NULL, 0,
15321         "h245.BOOLEAN", HFILL }},
15322     { &hf_h245_profileAndLevel_SNRatLL,
15323       { "profileAndLevel-SNRatLL", "h245.profileAndLevel_SNRatLL",
15324         FT_BOOLEAN, 8, NULL, 0,
15325         "h245.BOOLEAN", HFILL }},
15326     { &hf_h245_profileAndLevel_SNRatML,
15327       { "profileAndLevel-SNRatML", "h245.profileAndLevel_SNRatML",
15328         FT_BOOLEAN, 8, NULL, 0,
15329         "h245.BOOLEAN", HFILL }},
15330     { &hf_h245_profileAndLevel_SpatialatH_14,
15331       { "profileAndLevel-SpatialatH-14", "h245.profileAndLevel_SpatialatH_14",
15332         FT_BOOLEAN, 8, NULL, 0,
15333         "h245.BOOLEAN", HFILL }},
15334     { &hf_h245_profileAndLevel_HPatML,
15335       { "profileAndLevel-HPatML", "h245.profileAndLevel_HPatML",
15336         FT_BOOLEAN, 8, NULL, 0,
15337         "h245.BOOLEAN", HFILL }},
15338     { &hf_h245_profileAndLevel_HPatH_14,
15339       { "profileAndLevel-HPatH-14", "h245.profileAndLevel_HPatH_14",
15340         FT_BOOLEAN, 8, NULL, 0,
15341         "h245.BOOLEAN", HFILL }},
15342     { &hf_h245_profileAndLevel_HPatHL,
15343       { "profileAndLevel-HPatHL", "h245.profileAndLevel_HPatHL",
15344         FT_BOOLEAN, 8, NULL, 0,
15345         "h245.BOOLEAN", HFILL }},
15346     { &hf_h245_videoBitRate,
15347       { "videoBitRate", "h245.videoBitRate",
15348         FT_UINT32, BASE_DEC, NULL, 0,
15349         "h245.INTEGER_0_1073741823", HFILL }},
15350     { &hf_h245_vbvBufferSize,
15351       { "vbvBufferSize", "h245.vbvBufferSize",
15352         FT_UINT32, BASE_DEC, NULL, 0,
15353         "h245.INTEGER_0_262143", HFILL }},
15354     { &hf_h245_samplesPerLine,
15355       { "samplesPerLine", "h245.samplesPerLine",
15356         FT_UINT32, BASE_DEC, NULL, 0,
15357         "h245.INTEGER_0_16383", HFILL }},
15358     { &hf_h245_linesPerFrame,
15359       { "linesPerFrame", "h245.linesPerFrame",
15360         FT_UINT32, BASE_DEC, NULL, 0,
15361         "h245.INTEGER_0_16383", HFILL }},
15362     { &hf_h245_framesPerSecond,
15363       { "framesPerSecond", "h245.framesPerSecond",
15364         FT_UINT32, BASE_DEC, NULL, 0,
15365         "h245.INTEGER_0_15", HFILL }},
15366     { &hf_h245_luminanceSampleRate,
15367       { "luminanceSampleRate", "h245.luminanceSampleRate",
15368         FT_UINT32, BASE_DEC, NULL, 0,
15369         "h245.INTEGER_0_4294967295", HFILL }},
15370     { &hf_h245_sqcifMPI_1_32,
15371       { "sqcifMPI", "h245.sqcifMPI",
15372         FT_UINT32, BASE_DEC, NULL, 0,
15373         "h245.INTEGER_1_32", HFILL }},
15374     { &hf_h245_qcifMPI,
15375       { "qcifMPI", "h245.qcifMPI",
15376         FT_UINT32, BASE_DEC, NULL, 0,
15377         "h245.INTEGER_1_32", HFILL }},
15378     { &hf_h245_cifMPI,
15379       { "cifMPI", "h245.cifMPI",
15380         FT_UINT32, BASE_DEC, NULL, 0,
15381         "h245.INTEGER_1_32", HFILL }},
15382     { &hf_h245_cif4MPI_1_32,
15383       { "cif4MPI", "h245.cif4MPI",
15384         FT_UINT32, BASE_DEC, NULL, 0,
15385         "h245.INTEGER_1_32", HFILL }},
15386     { &hf_h245_cif16MPI_1_32,
15387       { "cif16MPI", "h245.cif16MPI",
15388         FT_UINT32, BASE_DEC, NULL, 0,
15389         "h245.INTEGER_1_32", HFILL }},
15390     { &hf_h245_maxBitRate,
15391       { "maxBitRate", "h245.maxBitRate",
15392         FT_UINT32, BASE_DEC, NULL, 0,
15393         "h245.INTEGER_1_192400", HFILL }},
15394     { &hf_h245_unrestrictedVector,
15395       { "unrestrictedVector", "h245.unrestrictedVector",
15396         FT_BOOLEAN, 8, NULL, 0,
15397         "h245.BOOLEAN", HFILL }},
15398     { &hf_h245_arithmeticCoding,
15399       { "arithmeticCoding", "h245.arithmeticCoding",
15400         FT_BOOLEAN, 8, NULL, 0,
15401         "h245.BOOLEAN", HFILL }},
15402     { &hf_h245_advancedPrediction,
15403       { "advancedPrediction", "h245.advancedPrediction",
15404         FT_BOOLEAN, 8, NULL, 0,
15405         "h245.BOOLEAN", HFILL }},
15406     { &hf_h245_pbFrames,
15407       { "pbFrames", "h245.pbFrames",
15408         FT_BOOLEAN, 8, NULL, 0,
15409         "h245.BOOLEAN", HFILL }},
15410     { &hf_h245_hrd_B,
15411       { "hrd-B", "h245.hrd_B",
15412         FT_UINT32, BASE_DEC, NULL, 0,
15413         "h245.INTEGER_0_524287", HFILL }},
15414     { &hf_h245_bppMaxKb,
15415       { "bppMaxKb", "h245.bppMaxKb",
15416         FT_UINT32, BASE_DEC, NULL, 0,
15417         "h245.INTEGER_0_65535", HFILL }},
15418     { &hf_h245_slowSqcifMPI,
15419       { "slowSqcifMPI", "h245.slowSqcifMPI",
15420         FT_UINT32, BASE_DEC, NULL, 0,
15421         "h245.INTEGER_1_3600", HFILL }},
15422     { &hf_h245_slowQcifMPI,
15423       { "slowQcifMPI", "h245.slowQcifMPI",
15424         FT_UINT32, BASE_DEC, NULL, 0,
15425         "h245.INTEGER_1_3600", HFILL }},
15426     { &hf_h245_slowCifMPI,
15427       { "slowCifMPI", "h245.slowCifMPI",
15428         FT_UINT32, BASE_DEC, NULL, 0,
15429         "h245.INTEGER_1_3600", HFILL }},
15430     { &hf_h245_slowCif4MPI,
15431       { "slowCif4MPI", "h245.slowCif4MPI",
15432         FT_UINT32, BASE_DEC, NULL, 0,
15433         "h245.INTEGER_1_3600", HFILL }},
15434     { &hf_h245_slowCif16MPI,
15435       { "slowCif16MPI", "h245.slowCif16MPI",
15436         FT_UINT32, BASE_DEC, NULL, 0,
15437         "h245.INTEGER_1_3600", HFILL }},
15438     { &hf_h245_errorCompensation,
15439       { "errorCompensation", "h245.errorCompensation",
15440         FT_BOOLEAN, 8, NULL, 0,
15441         "h245.BOOLEAN", HFILL }},
15442     { &hf_h245_enhancementLayerInfo,
15443       { "enhancementLayerInfo", "h245.enhancementLayerInfo",
15444         FT_NONE, BASE_NONE, NULL, 0,
15445         "h245.EnhancementLayerInfo", HFILL }},
15446     { &hf_h245_h263Options,
15447       { "h263Options", "h245.h263Options",
15448         FT_NONE, BASE_NONE, NULL, 0,
15449         "h245.H263Options", HFILL }},
15450     { &hf_h245_baseBitRateConstrained,
15451       { "baseBitRateConstrained", "h245.baseBitRateConstrained",
15452         FT_BOOLEAN, 8, NULL, 0,
15453         "h245.BOOLEAN", HFILL }},
15454     { &hf_h245_snrEnhancement,
15455       { "snrEnhancement", "h245.snrEnhancement",
15456         FT_UINT32, BASE_DEC, NULL, 0,
15457         "h245.SET_SIZE_1_14_OF_EnhancementOptions", HFILL }},
15458     { &hf_h245_snrEnhancement_item,
15459       { "Item", "h245.snrEnhancement_item",
15460         FT_NONE, BASE_NONE, NULL, 0,
15461         "h245.EnhancementOptions", HFILL }},
15462     { &hf_h245_spatialEnhancement,
15463       { "spatialEnhancement", "h245.spatialEnhancement",
15464         FT_UINT32, BASE_DEC, NULL, 0,
15465         "h245.SET_SIZE_1_14_OF_EnhancementOptions", HFILL }},
15466     { &hf_h245_spatialEnhancement_item,
15467       { "Item", "h245.spatialEnhancement_item",
15468         FT_NONE, BASE_NONE, NULL, 0,
15469         "h245.EnhancementOptions", HFILL }},
15470     { &hf_h245_bPictureEnhancement,
15471       { "bPictureEnhancement", "h245.bPictureEnhancement",
15472         FT_UINT32, BASE_DEC, NULL, 0,
15473         "h245.SET_SIZE_1_14_OF_BEnhancementParameters", HFILL }},
15474     { &hf_h245_bPictureEnhancement_item,
15475       { "Item", "h245.bPictureEnhancement_item",
15476         FT_NONE, BASE_NONE, NULL, 0,
15477         "h245.BEnhancementParameters", HFILL }},
15478     { &hf_h245_enhancementOptions,
15479       { "enhancementOptions", "h245.enhancementOptions",
15480         FT_NONE, BASE_NONE, NULL, 0,
15481         "h245.EnhancementOptions", HFILL }},
15482     { &hf_h245_numberOfBPictures,
15483       { "numberOfBPictures", "h245.numberOfBPictures",
15484         FT_UINT32, BASE_DEC, NULL, 0,
15485         "h245.INTEGER_1_64", HFILL }},
15486     { &hf_h245_advancedIntraCodingMode,
15487       { "advancedIntraCodingMode", "h245.advancedIntraCodingMode",
15488         FT_BOOLEAN, 8, NULL, 0,
15489         "h245.BOOLEAN", HFILL }},
15490     { &hf_h245_deblockingFilterMode,
15491       { "deblockingFilterMode", "h245.deblockingFilterMode",
15492         FT_BOOLEAN, 8, NULL, 0,
15493         "h245.BOOLEAN", HFILL }},
15494     { &hf_h245_improvedPBFramesMode,
15495       { "improvedPBFramesMode", "h245.improvedPBFramesMode",
15496         FT_BOOLEAN, 8, NULL, 0,
15497         "h245.BOOLEAN", HFILL }},
15498     { &hf_h245_unlimitedMotionVectors,
15499       { "unlimitedMotionVectors", "h245.unlimitedMotionVectors",
15500         FT_BOOLEAN, 8, NULL, 0,
15501         "h245.BOOLEAN", HFILL }},
15502     { &hf_h245_fullPictureFreeze,
15503       { "fullPictureFreeze", "h245.fullPictureFreeze",
15504         FT_BOOLEAN, 8, NULL, 0,
15505         "h245.BOOLEAN", HFILL }},
15506     { &hf_h245_partialPictureFreezeAndRelease,
15507       { "partialPictureFreezeAndRelease", "h245.partialPictureFreezeAndRelease",
15508         FT_BOOLEAN, 8, NULL, 0,
15509         "h245.BOOLEAN", HFILL }},
15510     { &hf_h245_resizingPartPicFreezeAndRelease,
15511       { "resizingPartPicFreezeAndRelease", "h245.resizingPartPicFreezeAndRelease",
15512         FT_BOOLEAN, 8, NULL, 0,
15513         "h245.BOOLEAN", HFILL }},
15514     { &hf_h245_fullPictureSnapshot,
15515       { "fullPictureSnapshot", "h245.fullPictureSnapshot",
15516         FT_BOOLEAN, 8, NULL, 0,
15517         "h245.BOOLEAN", HFILL }},
15518     { &hf_h245_partialPictureSnapshot,
15519       { "partialPictureSnapshot", "h245.partialPictureSnapshot",
15520         FT_BOOLEAN, 8, NULL, 0,
15521         "h245.BOOLEAN", HFILL }},
15522     { &hf_h245_videoSegmentTagging,
15523       { "videoSegmentTagging", "h245.videoSegmentTagging",
15524         FT_BOOLEAN, 8, NULL, 0,
15525         "h245.BOOLEAN", HFILL }},
15526     { &hf_h245_progressiveRefinement,
15527       { "progressiveRefinement", "h245.progressiveRefinement",
15528         FT_BOOLEAN, 8, NULL, 0,
15529         "h245.BOOLEAN", HFILL }},
15530     { &hf_h245_dynamicPictureResizingByFour,
15531       { "dynamicPictureResizingByFour", "h245.dynamicPictureResizingByFour",
15532         FT_BOOLEAN, 8, NULL, 0,
15533         "h245.BOOLEAN", HFILL }},
15534     { &hf_h245_dynamicPictureResizingSixteenthPel,
15535       { "dynamicPictureResizingSixteenthPel", "h245.dynamicPictureResizingSixteenthPel",
15536         FT_BOOLEAN, 8, NULL, 0,
15537         "h245.BOOLEAN", HFILL }},
15538     { &hf_h245_dynamicWarpingHalfPel,
15539       { "dynamicWarpingHalfPel", "h245.dynamicWarpingHalfPel",
15540         FT_BOOLEAN, 8, NULL, 0,
15541         "h245.BOOLEAN", HFILL }},
15542     { &hf_h245_dynamicWarpingSixteenthPel,
15543       { "dynamicWarpingSixteenthPel", "h245.dynamicWarpingSixteenthPel",
15544         FT_BOOLEAN, 8, NULL, 0,
15545         "h245.BOOLEAN", HFILL }},
15546     { &hf_h245_independentSegmentDecoding,
15547       { "independentSegmentDecoding", "h245.independentSegmentDecoding",
15548         FT_BOOLEAN, 8, NULL, 0,
15549         "h245.BOOLEAN", HFILL }},
15550     { &hf_h245_slicesInOrder_NonRect,
15551       { "slicesInOrder-NonRect", "h245.slicesInOrder_NonRect",
15552         FT_BOOLEAN, 8, NULL, 0,
15553         "h245.BOOLEAN", HFILL }},
15554     { &hf_h245_slicesInOrder_Rect,
15555       { "slicesInOrder-Rect", "h245.slicesInOrder_Rect",
15556         FT_BOOLEAN, 8, NULL, 0,
15557         "h245.BOOLEAN", HFILL }},
15558     { &hf_h245_slicesNoOrder_NonRect,
15559       { "slicesNoOrder-NonRect", "h245.slicesNoOrder_NonRect",
15560         FT_BOOLEAN, 8, NULL, 0,
15561         "h245.BOOLEAN", HFILL }},
15562     { &hf_h245_slicesNoOrder_Rect,
15563       { "slicesNoOrder-Rect", "h245.slicesNoOrder_Rect",
15564         FT_BOOLEAN, 8, NULL, 0,
15565         "h245.BOOLEAN", HFILL }},
15566     { &hf_h245_alternateInterVLCMode,
15567       { "alternateInterVLCMode", "h245.alternateInterVLCMode",
15568         FT_BOOLEAN, 8, NULL, 0,
15569         "h245.BOOLEAN", HFILL }},
15570     { &hf_h245_modifiedQuantizationMode,
15571       { "modifiedQuantizationMode", "h245.modifiedQuantizationMode",
15572         FT_BOOLEAN, 8, NULL, 0,
15573         "h245.BOOLEAN", HFILL }},
15574     { &hf_h245_reducedResolutionUpdate,
15575       { "reducedResolutionUpdate", "h245.reducedResolutionUpdate",
15576         FT_BOOLEAN, 8, NULL, 0,
15577         "h245.BOOLEAN", HFILL }},
15578     { &hf_h245_transparencyParameters,
15579       { "transparencyParameters", "h245.transparencyParameters",
15580         FT_NONE, BASE_NONE, NULL, 0,
15581         "h245.TransparencyParameters", HFILL }},
15582     { &hf_h245_separateVideoBackChannel,
15583       { "separateVideoBackChannel", "h245.separateVideoBackChannel",
15584         FT_BOOLEAN, 8, NULL, 0,
15585         "h245.BOOLEAN", HFILL }},
15586     { &hf_h245_refPictureSelection,
15587       { "refPictureSelection", "h245.refPictureSelection",
15588         FT_NONE, BASE_NONE, NULL, 0,
15589         "h245.RefPictureSelection", HFILL }},
15590     { &hf_h245_customPictureClockFrequency,
15591       { "customPictureClockFrequency", "h245.customPictureClockFrequency",
15592         FT_UINT32, BASE_DEC, NULL, 0,
15593         "h245.SET_SIZE_1_16_OF_CustomPictureClockFrequency", HFILL }},
15594     { &hf_h245_customPictureClockFrequency_item,
15595       { "Item", "h245.customPictureClockFrequency_item",
15596         FT_NONE, BASE_NONE, NULL, 0,
15597         "h245.CustomPictureClockFrequency", HFILL }},
15598     { &hf_h245_customPictureFormat,
15599       { "customPictureFormat", "h245.customPictureFormat",
15600         FT_UINT32, BASE_DEC, NULL, 0,
15601         "h245.SET_SIZE_1_16_OF_CustomPictureFormat", HFILL }},
15602     { &hf_h245_customPictureFormat_item,
15603       { "Item", "h245.customPictureFormat_item",
15604         FT_NONE, BASE_NONE, NULL, 0,
15605         "h245.CustomPictureFormat", HFILL }},
15606     { &hf_h245_modeCombos,
15607       { "modeCombos", "h245.modeCombos",
15608         FT_UINT32, BASE_DEC, NULL, 0,
15609         "h245.SET_SIZE_1_16_OF_H263VideoModeCombos", HFILL }},
15610     { &hf_h245_modeCombos_item,
15611       { "Item", "h245.modeCombos_item",
15612         FT_NONE, BASE_NONE, NULL, 0,
15613         "h245.H263VideoModeCombos", HFILL }},
15614     { &hf_h245_h263Version3Options,
15615       { "h263Version3Options", "h245.h263Version3Options",
15616         FT_NONE, BASE_NONE, NULL, 0,
15617         "h245.H263Version3Options", HFILL }},
15618     { &hf_h245_presentationOrder,
15619       { "presentationOrder", "h245.presentationOrder",
15620         FT_UINT32, BASE_DEC, NULL, 0,
15621         "h245.INTEGER_1_256", HFILL }},
15622     { &hf_h245_offset_x,
15623       { "offset-x", "h245.offset_x",
15624         FT_INT32, BASE_DEC, NULL, 0,
15625         "h245.INTEGER_M262144_262143", HFILL }},
15626     { &hf_h245_offset_y,
15627       { "offset-y", "h245.offset_y",
15628         FT_INT32, BASE_DEC, NULL, 0,
15629         "h245.INTEGER_M262144_262143", HFILL }},
15630     { &hf_h245_scale_x,
15631       { "scale-x", "h245.scale_x",
15632         FT_UINT32, BASE_DEC, NULL, 0,
15633         "h245.INTEGER_1_255", HFILL }},
15634     { &hf_h245_scale_y,
15635       { "scale-y", "h245.scale_y",
15636         FT_UINT32, BASE_DEC, NULL, 0,
15637         "h245.INTEGER_1_255", HFILL }},
15638     { &hf_h245_additionalPictureMemory,
15639       { "additionalPictureMemory", "h245.additionalPictureMemory",
15640         FT_NONE, BASE_NONE, NULL, 0,
15641         "h245.T_additionalPictureMemory", HFILL }},
15642     { &hf_h245_sqcifAdditionalPictureMemory,
15643       { "sqcifAdditionalPictureMemory", "h245.sqcifAdditionalPictureMemory",
15644         FT_UINT32, BASE_DEC, NULL, 0,
15645         "h245.INTEGER_1_256", HFILL }},
15646     { &hf_h245_qcifAdditionalPictureMemory,
15647       { "qcifAdditionalPictureMemory", "h245.qcifAdditionalPictureMemory",
15648         FT_UINT32, BASE_DEC, NULL, 0,
15649         "h245.INTEGER_1_256", HFILL }},
15650     { &hf_h245_cifAdditionalPictureMemory,
15651       { "cifAdditionalPictureMemory", "h245.cifAdditionalPictureMemory",
15652         FT_UINT32, BASE_DEC, NULL, 0,
15653         "h245.INTEGER_1_256", HFILL }},
15654     { &hf_h245_cif4AdditionalPictureMemory,
15655       { "cif4AdditionalPictureMemory", "h245.cif4AdditionalPictureMemory",
15656         FT_UINT32, BASE_DEC, NULL, 0,
15657         "h245.INTEGER_1_256", HFILL }},
15658     { &hf_h245_cif16AdditionalPictureMemory,
15659       { "cif16AdditionalPictureMemory", "h245.cif16AdditionalPictureMemory",
15660         FT_UINT32, BASE_DEC, NULL, 0,
15661         "h245.INTEGER_1_256", HFILL }},
15662     { &hf_h245_bigCpfAdditionalPictureMemory,
15663       { "bigCpfAdditionalPictureMemory", "h245.bigCpfAdditionalPictureMemory",
15664         FT_UINT32, BASE_DEC, NULL, 0,
15665         "h245.INTEGER_1_256", HFILL }},
15666     { &hf_h245_videoMux,
15667       { "videoMux", "h245.videoMux",
15668         FT_BOOLEAN, 8, NULL, 0,
15669         "h245.BOOLEAN", HFILL }},
15670     { &hf_h245_videoBackChannelSend,
15671       { "videoBackChannelSend", "h245.videoBackChannelSend",
15672         FT_UINT32, BASE_DEC, VALS(h245_T_videoBackChannelSend_vals), 0,
15673         "h245.T_videoBackChannelSend", HFILL }},
15674     { &hf_h245_none,
15675       { "none", "h245.none",
15676         FT_NONE, BASE_NONE, NULL, 0,
15677         "h245.NULL", HFILL }},
15678     { &hf_h245_ackMessageOnly,
15679       { "ackMessageOnly", "h245.ackMessageOnly",
15680         FT_NONE, BASE_NONE, NULL, 0,
15681         "h245.NULL", HFILL }},
15682     { &hf_h245_nackMessageOnly,
15683       { "nackMessageOnly", "h245.nackMessageOnly",
15684         FT_NONE, BASE_NONE, NULL, 0,
15685         "h245.NULL", HFILL }},
15686     { &hf_h245_ackOrNackMessageOnly,
15687       { "ackOrNackMessageOnly", "h245.ackOrNackMessageOnly",
15688         FT_NONE, BASE_NONE, NULL, 0,
15689         "h245.NULL", HFILL }},
15690     { &hf_h245_ackAndNackMessage,
15691       { "ackAndNackMessage", "h245.ackAndNackMessage",
15692         FT_NONE, BASE_NONE, NULL, 0,
15693         "h245.NULL", HFILL }},
15694     { &hf_h245_enhancedReferencePicSelect,
15695       { "enhancedReferencePicSelect", "h245.enhancedReferencePicSelect",
15696         FT_NONE, BASE_NONE, NULL, 0,
15697         "h245.T_enhancedReferencePicSelect", HFILL }},
15698     { &hf_h245_subPictureRemovalParameters,
15699       { "subPictureRemovalParameters", "h245.subPictureRemovalParameters",
15700         FT_NONE, BASE_NONE, NULL, 0,
15701         "h245.T_subPictureRemovalParameters", HFILL }},
15702     { &hf_h245_mpuHorizMBs,
15703       { "mpuHorizMBs", "h245.mpuHorizMBs",
15704         FT_UINT32, BASE_DEC, NULL, 0,
15705         "h245.INTEGER_1_128", HFILL }},
15706     { &hf_h245_mpuVertMBs,
15707       { "mpuVertMBs", "h245.mpuVertMBs",
15708         FT_UINT32, BASE_DEC, NULL, 0,
15709         "h245.INTEGER_1_72", HFILL }},
15710     { &hf_h245_mpuTotalNumber,
15711       { "mpuTotalNumber", "h245.mpuTotalNumber",
15712         FT_UINT32, BASE_DEC, NULL, 0,
15713         "h245.INTEGER_1_65536", HFILL }},
15714     { &hf_h245_clockConversionCode,
15715       { "clockConversionCode", "h245.clockConversionCode",
15716         FT_UINT32, BASE_DEC, NULL, 0,
15717         "h245.INTEGER_1000_1001", HFILL }},
15718     { &hf_h245_clockDivisor,
15719       { "clockDivisor", "h245.clockDivisor",
15720         FT_UINT32, BASE_DEC, NULL, 0,
15721         "h245.INTEGER_1_127", HFILL }},
15722     { &hf_h245_sqcifMPI,
15723       { "sqcifMPI", "h245.sqcifMPI",
15724         FT_UINT32, BASE_DEC, NULL, 0,
15725         "h245.INTEGER_1_2048", HFILL }},
15726     { &hf_h245_qcifMPI_1_2048,
15727       { "qcifMPI", "h245.qcifMPI",
15728         FT_UINT32, BASE_DEC, NULL, 0,
15729         "h245.INTEGER_1_2048", HFILL }},
15730     { &hf_h245_cifMPI2_1_2048,
15731       { "cifMPI", "h245.cifMPI",
15732         FT_UINT32, BASE_DEC, NULL, 0,
15733         "h245.INTEGER_1_2048", HFILL }},
15734     { &hf_h245_cif4MPI,
15735       { "cif4MPI", "h245.cif4MPI",
15736         FT_UINT32, BASE_DEC, NULL, 0,
15737         "h245.INTEGER_1_2048", HFILL }},
15738     { &hf_h245_cif16MPI,
15739       { "cif16MPI", "h245.cif16MPI",
15740         FT_UINT32, BASE_DEC, NULL, 0,
15741         "h245.INTEGER_1_2048", HFILL }},
15742     { &hf_h245_maxCustomPictureWidth,
15743       { "maxCustomPictureWidth", "h245.maxCustomPictureWidth",
15744         FT_UINT32, BASE_DEC, NULL, 0,
15745         "h245.INTEGER_1_2048", HFILL }},
15746     { &hf_h245_maxCustomPictureHeight,
15747       { "maxCustomPictureHeight", "h245.maxCustomPictureHeight",
15748         FT_UINT32, BASE_DEC, NULL, 0,
15749         "h245.INTEGER_1_2048", HFILL }},
15750     { &hf_h245_minCustomPictureWidth,
15751       { "minCustomPictureWidth", "h245.minCustomPictureWidth",
15752         FT_UINT32, BASE_DEC, NULL, 0,
15753         "h245.INTEGER_1_2048", HFILL }},
15754     { &hf_h245_minCustomPictureHeight,
15755       { "minCustomPictureHeight", "h245.minCustomPictureHeight",
15756         FT_UINT32, BASE_DEC, NULL, 0,
15757         "h245.INTEGER_1_2048", HFILL }},
15758     { &hf_h245_mPI,
15759       { "mPI", "h245.mPI",
15760         FT_NONE, BASE_NONE, NULL, 0,
15761         "h245.T_mPI", HFILL }},
15762     { &hf_h245_standardMPI,
15763       { "standardMPI", "h245.standardMPI",
15764         FT_UINT32, BASE_DEC, NULL, 0,
15765         "h245.INTEGER_1_31", HFILL }},
15766     { &hf_h245_customPCF,
15767       { "customPCF", "h245.customPCF",
15768         FT_UINT32, BASE_DEC, NULL, 0,
15769         "h245.T_customPCF", HFILL }},
15770     { &hf_h245_customPCF_item,
15771       { "Item", "h245.customPCF_item",
15772         FT_NONE, BASE_NONE, NULL, 0,
15773         "h245.T_customPCF_item", HFILL }},
15774     { &hf_h245_customMPI,
15775       { "customMPI", "h245.customMPI",
15776         FT_UINT32, BASE_DEC, NULL, 0,
15777         "h245.INTEGER_1_2048", HFILL }},
15778     { &hf_h245_pixelAspectInformation,
15779       { "pixelAspectInformation", "h245.pixelAspectInformation",
15780         FT_UINT32, BASE_DEC, VALS(h245_T_pixelAspectInformation_vals), 0,
15781         "h245.T_pixelAspectInformation", HFILL }},
15782     { &hf_h245_anyPixelAspectRatio,
15783       { "anyPixelAspectRatio", "h245.anyPixelAspectRatio",
15784         FT_BOOLEAN, 8, NULL, 0,
15785         "h245.BOOLEAN", HFILL }},
15786     { &hf_h245_pixelAspectCode,
15787       { "pixelAspectCode", "h245.pixelAspectCode",
15788         FT_UINT32, BASE_DEC, NULL, 0,
15789         "h245.T_pixelAspectCode", HFILL }},
15790     { &hf_h245_pixelAspectCode_item,
15791       { "Item", "h245.pixelAspectCode_item",
15792         FT_UINT32, BASE_DEC, NULL, 0,
15793         "h245.INTEGER_1_14", HFILL }},
15794     { &hf_h245_extendedPAR,
15795       { "extendedPAR", "h245.extendedPAR",
15796         FT_UINT32, BASE_DEC, NULL, 0,
15797         "h245.T_extendedPAR", HFILL }},
15798     { &hf_h245_extendedPAR_item,
15799       { "Item", "h245.extendedPAR_item",
15800         FT_NONE, BASE_NONE, NULL, 0,
15801         "h245.T_extendedPAR_item", HFILL }},
15802     { &hf_h245_width,
15803       { "width", "h245.width",
15804         FT_UINT32, BASE_DEC, NULL, 0,
15805         "h245.INTEGER_1_255", HFILL }},
15806     { &hf_h245_height,
15807       { "height", "h245.height",
15808         FT_UINT32, BASE_DEC, NULL, 0,
15809         "h245.INTEGER_1_255", HFILL }},
15810     { &hf_h245_h263VideoUncoupledModes,
15811       { "h263VideoUncoupledModes", "h245.h263VideoUncoupledModes",
15812         FT_NONE, BASE_NONE, NULL, 0,
15813         "h245.H263ModeComboFlags", HFILL }},
15814     { &hf_h245_h263VideoCoupledModes,
15815       { "h263VideoCoupledModes", "h245.h263VideoCoupledModes",
15816         FT_UINT32, BASE_DEC, NULL, 0,
15817         "h245.SET_SIZE_1_16_OF_H263ModeComboFlags", HFILL }},
15818     { &hf_h245_h263VideoCoupledModes_item,
15819       { "Item", "h245.h263VideoCoupledModes_item",
15820         FT_NONE, BASE_NONE, NULL, 0,
15821         "h245.H263ModeComboFlags", HFILL }},
15822     { &hf_h245_referencePicSelect,
15823       { "referencePicSelect", "h245.referencePicSelect",
15824         FT_BOOLEAN, 8, NULL, 0,
15825         "h245.BOOLEAN", HFILL }},
15826     { &hf_h245_enhancedReferencePicSelectBool,
15827       { "enhancedReferencePicSelect", "h245.enhancedReferencePicSelect",
15828         FT_BOOLEAN, 8, NULL, 0,
15829         "h245.BOOLEAN", HFILL }},
15830     { &hf_h245_dataPartitionedSlices,
15831       { "dataPartitionedSlices", "h245.dataPartitionedSlices",
15832         FT_BOOLEAN, 8, NULL, 0,
15833         "h245.BOOLEAN", HFILL }},
15834     { &hf_h245_fixedPointIDCT0,
15835       { "fixedPointIDCT0", "h245.fixedPointIDCT0",
15836         FT_BOOLEAN, 8, NULL, 0,
15837         "h245.BOOLEAN", HFILL }},
15838     { &hf_h245_interlacedFields,
15839       { "interlacedFields", "h245.interlacedFields",
15840         FT_BOOLEAN, 8, NULL, 0,
15841         "h245.BOOLEAN", HFILL }},
15842     { &hf_h245_currentPictureHeaderRepetition,
15843       { "currentPictureHeaderRepetition", "h245.currentPictureHeaderRepetition",
15844         FT_BOOLEAN, 8, NULL, 0,
15845         "h245.BOOLEAN", HFILL }},
15846     { &hf_h245_previousPictureHeaderRepetition,
15847       { "previousPictureHeaderRepetition", "h245.previousPictureHeaderRepetition",
15848         FT_BOOLEAN, 8, NULL, 0,
15849         "h245.BOOLEAN", HFILL }},
15850     { &hf_h245_nextPictureHeaderRepetition,
15851       { "nextPictureHeaderRepetition", "h245.nextPictureHeaderRepetition",
15852         FT_BOOLEAN, 8, NULL, 0,
15853         "h245.BOOLEAN", HFILL }},
15854     { &hf_h245_pictureNumberBoolean,
15855       { "pictureNumber", "h245.pictureNumber",
15856         FT_BOOLEAN, 8, NULL, 0,
15857         "h245.BOOLEAN", HFILL }},
15858     { &hf_h245_spareReferencePictures,
15859       { "spareReferencePictures", "h245.spareReferencePictures",
15860         FT_BOOLEAN, 8, NULL, 0,
15861         "h245.BOOLEAN", HFILL }},
15862     { &hf_h245_constrainedBitstream,
15863       { "constrainedBitstream", "h245.constrainedBitstream",
15864         FT_BOOLEAN, 8, NULL, 0,
15865         "h245.BOOLEAN", HFILL }},
15866     { &hf_h245_pictureRate,
15867       { "pictureRate", "h245.pictureRate",
15868         FT_UINT32, BASE_DEC, NULL, 0,
15869         "h245.INTEGER_0_15", HFILL }},
15870     { &hf_h245_g711Alaw64k,
15871       { "g711Alaw64k", "h245.g711Alaw64k",
15872         FT_UINT32, BASE_DEC, NULL, 0,
15873         "h245.INTEGER_1_256", HFILL }},
15874     { &hf_h245_g711Alaw56k,
15875       { "g711Alaw56k", "h245.g711Alaw56k",
15876         FT_UINT32, BASE_DEC, NULL, 0,
15877         "h245.INTEGER_1_256", HFILL }},
15878     { &hf_h245_g711Ulaw64k,
15879       { "g711Ulaw64k", "h245.g711Ulaw64k",
15880         FT_UINT32, BASE_DEC, NULL, 0,
15881         "h245.INTEGER_1_256", HFILL }},
15882     { &hf_h245_g711Ulaw56k,
15883       { "g711Ulaw56k", "h245.g711Ulaw56k",
15884         FT_UINT32, BASE_DEC, NULL, 0,
15885         "h245.INTEGER_1_256", HFILL }},
15886     { &hf_h245_g722_64k,
15887       { "g722-64k", "h245.g722_64k",
15888         FT_UINT32, BASE_DEC, NULL, 0,
15889         "h245.INTEGER_1_256", HFILL }},
15890     { &hf_h245_g722_56k,
15891       { "g722-56k", "h245.g722_56k",
15892         FT_UINT32, BASE_DEC, NULL, 0,
15893         "h245.INTEGER_1_256", HFILL }},
15894     { &hf_h245_g722_48k,
15895       { "g722-48k", "h245.g722_48k",
15896         FT_UINT32, BASE_DEC, NULL, 0,
15897         "h245.INTEGER_1_256", HFILL }},
15898     { &hf_h245_g7231,
15899       { "g7231", "h245.g7231",
15900         FT_NONE, BASE_NONE, NULL, 0,
15901         "h245.T_g7231", HFILL }},
15902     { &hf_h245_maxAl_sduAudioFrames,
15903       { "maxAl-sduAudioFrames", "h245.maxAl_sduAudioFrames",
15904         FT_UINT32, BASE_DEC, NULL, 0,
15905         "h245.INTEGER_1_256", HFILL }},
15906     { &hf_h245_silenceSuppression,
15907       { "silenceSuppression", "h245.silenceSuppression",
15908         FT_BOOLEAN, 8, NULL, 0,
15909         "h245.BOOLEAN", HFILL }},
15910     { &hf_h245_g728,
15911       { "g728", "h245.g728",
15912         FT_UINT32, BASE_DEC, NULL, 0,
15913         "h245.INTEGER_1_256", HFILL }},
15914     { &hf_h245_g729,
15915       { "g729", "h245.g729",
15916         FT_UINT32, BASE_DEC, NULL, 0,
15917         "h245.INTEGER_1_256", HFILL }},
15918     { &hf_h245_g729AnnexA,
15919       { "g729AnnexA", "h245.g729AnnexA",
15920         FT_UINT32, BASE_DEC, NULL, 0,
15921         "h245.INTEGER_1_256", HFILL }},
15922     { &hf_h245_is11172AudioCapability,
15923       { "is11172AudioCapability", "h245.is11172AudioCapability",
15924         FT_NONE, BASE_NONE, NULL, 0,
15925         "h245.IS11172AudioCapability", HFILL }},
15926     { &hf_h245_is13818AudioCapability,
15927       { "is13818AudioCapability", "h245.is13818AudioCapability",
15928         FT_NONE, BASE_NONE, NULL, 0,
15929         "h245.IS13818AudioCapability", HFILL }},
15930     { &hf_h245_g729wAnnexB,
15931       { "g729wAnnexB", "h245.g729wAnnexB",
15932         FT_UINT32, BASE_DEC, NULL, 0,
15933         "h245.INTEGER_1_256", HFILL }},
15934     { &hf_h245_g729AnnexAwAnnexB,
15935       { "g729AnnexAwAnnexB", "h245.g729AnnexAwAnnexB",
15936         FT_UINT32, BASE_DEC, NULL, 0,
15937         "h245.INTEGER_1_256", HFILL }},
15938     { &hf_h245_g7231AnnexCCapability,
15939       { "g7231AnnexCCapability", "h245.g7231AnnexCCapability",
15940         FT_NONE, BASE_NONE, NULL, 0,
15941         "h245.G7231AnnexCCapability", HFILL }},
15942     { &hf_h245_gsmFullRate,
15943       { "gsmFullRate", "h245.gsmFullRate",
15944         FT_NONE, BASE_NONE, NULL, 0,
15945         "h245.GSMAudioCapability", HFILL }},
15946     { &hf_h245_gsmHalfRate,
15947       { "gsmHalfRate", "h245.gsmHalfRate",
15948         FT_NONE, BASE_NONE, NULL, 0,
15949         "h245.GSMAudioCapability", HFILL }},
15950     { &hf_h245_gsmEnhancedFullRate,
15951       { "gsmEnhancedFullRate", "h245.gsmEnhancedFullRate",
15952         FT_NONE, BASE_NONE, NULL, 0,
15953         "h245.GSMAudioCapability", HFILL }},
15954     { &hf_h245_genericAudioCapability,
15955       { "genericAudioCapability", "h245.genericAudioCapability",
15956         FT_NONE, BASE_NONE, NULL, 0,
15957         "h245.GenericCapability", HFILL }},
15958     { &hf_h245_g729Extensions,
15959       { "g729Extensions", "h245.g729Extensions",
15960         FT_NONE, BASE_NONE, NULL, 0,
15961         "h245.G729Extensions", HFILL }},
15962     { &hf_h245_vbd,
15963       { "vbd", "h245.vbd",
15964         FT_NONE, BASE_NONE, NULL, 0,
15965         "h245.VBDCapability", HFILL }},
15966     { &hf_h245_audioTelephonyEvent,
15967       { "audioTelephonyEvent", "h245.audioTelephonyEvent",
15968         FT_NONE, BASE_NONE, NULL, 0,
15969         "h245.NoPTAudioTelephonyEventCapability", HFILL }},
15970     { &hf_h245_audioTone,
15971       { "audioTone", "h245.audioTone",
15972         FT_NONE, BASE_NONE, NULL, 0,
15973         "h245.NoPTAudioToneCapability", HFILL }},
15974     { &hf_h245_audioUnit,
15975       { "audioUnit", "h245.audioUnit",
15976         FT_UINT32, BASE_DEC, NULL, 0,
15977         "h245.INTEGER_1_256", HFILL }},
15978     { &hf_h245_annexA,
15979       { "annexA", "h245.annexA",
15980         FT_BOOLEAN, 8, NULL, 0,
15981         "h245.BOOLEAN", HFILL }},
15982     { &hf_h245_annexB,
15983       { "annexB", "h245.annexB",
15984         FT_BOOLEAN, 8, NULL, 0,
15985         "h245.BOOLEAN", HFILL }},
15986     { &hf_h245_annexD,
15987       { "annexD", "h245.annexD",
15988         FT_BOOLEAN, 8, NULL, 0,
15989         "h245.BOOLEAN", HFILL }},
15990     { &hf_h245_annexE,
15991       { "annexE", "h245.annexE",
15992         FT_BOOLEAN, 8, NULL, 0,
15993         "h245.BOOLEAN", HFILL }},
15994     { &hf_h245_annexF,
15995       { "annexF", "h245.annexF",
15996         FT_BOOLEAN, 8, NULL, 0,
15997         "h245.BOOLEAN", HFILL }},
15998     { &hf_h245_annexG,
15999       { "annexG", "h245.annexG",
16000         FT_BOOLEAN, 8, NULL, 0,
16001         "h245.BOOLEAN", HFILL }},
16002     { &hf_h245_annexH,
16003       { "annexH", "h245.annexH",
16004         FT_BOOLEAN, 8, NULL, 0,
16005         "h245.BOOLEAN", HFILL }},
16006     { &hf_h245_highRateMode0,
16007       { "highRateMode0", "h245.highRateMode0",
16008         FT_UINT32, BASE_DEC, NULL, 0,
16009         "h245.INTEGER_27_78", HFILL }},
16010     { &hf_h245_highRateMode1,
16011       { "highRateMode1", "h245.highRateMode1",
16012         FT_UINT32, BASE_DEC, NULL, 0,
16013         "h245.INTEGER_27_78", HFILL }},
16014     { &hf_h245_lowRateMode0,
16015       { "lowRateMode0", "h245.lowRateMode0",
16016         FT_UINT32, BASE_DEC, NULL, 0,
16017         "h245.INTEGER_23_66", HFILL }},
16018     { &hf_h245_lowRateMode1,
16019       { "lowRateMode1", "h245.lowRateMode1",
16020         FT_UINT32, BASE_DEC, NULL, 0,
16021         "h245.INTEGER_23_66", HFILL }},
16022     { &hf_h245_sidMode0,
16023       { "sidMode0", "h245.sidMode0",
16024         FT_UINT32, BASE_DEC, NULL, 0,
16025         "h245.INTEGER_6_17", HFILL }},
16026     { &hf_h245_sidMode1,
16027       { "sidMode1", "h245.sidMode1",
16028         FT_UINT32, BASE_DEC, NULL, 0,
16029         "h245.INTEGER_6_17", HFILL }},
16030     { &hf_h245_g723AnnexCAudioMode,
16031       { "g723AnnexCAudioMode", "h245.g723AnnexCAudioMode",
16032         FT_NONE, BASE_NONE, NULL, 0,
16033         "h245.G723AnnexCAudioMode", HFILL }},
16034     { &hf_h245_audioLayer1,
16035       { "audioLayer1", "h245.audioLayer1",
16036         FT_BOOLEAN, 8, NULL, 0,
16037         "h245.BOOLEAN", HFILL }},
16038     { &hf_h245_audioLayer2,
16039       { "audioLayer2", "h245.audioLayer2",
16040         FT_BOOLEAN, 8, NULL, 0,
16041         "h245.BOOLEAN", HFILL }},
16042     { &hf_h245_audioLayer3,
16043       { "audioLayer3", "h245.audioLayer3",
16044         FT_BOOLEAN, 8, NULL, 0,
16045         "h245.BOOLEAN", HFILL }},
16046     { &hf_h245_audioSampling32k,
16047       { "audioSampling32k", "h245.audioSampling32k",
16048         FT_BOOLEAN, 8, NULL, 0,
16049         "h245.BOOLEAN", HFILL }},
16050     { &hf_h245_audioSampling44k1,
16051       { "audioSampling44k1", "h245.audioSampling44k1",
16052         FT_BOOLEAN, 8, NULL, 0,
16053         "h245.BOOLEAN", HFILL }},
16054     { &hf_h245_audioSampling48k,
16055       { "audioSampling48k", "h245.audioSampling48k",
16056         FT_BOOLEAN, 8, NULL, 0,
16057         "h245.BOOLEAN", HFILL }},
16058     { &hf_h245_singleChannel,
16059       { "singleChannel", "h245.singleChannel",
16060         FT_BOOLEAN, 8, NULL, 0,
16061         "h245.BOOLEAN", HFILL }},
16062     { &hf_h245_twoChannels,
16063       { "twoChannels", "h245.twoChannels",
16064         FT_BOOLEAN, 8, NULL, 0,
16065         "h245.BOOLEAN", HFILL }},
16066     { &hf_h245_bitRate_1_448,
16067       { "bitRate", "h245.bitRate",
16068         FT_UINT32, BASE_DEC, NULL, 0,
16069         "h245.INTEGER_1_448", HFILL }},
16070     { &hf_h245_audioSampling16k,
16071       { "audioSampling16k", "h245.audioSampling16k",
16072         FT_BOOLEAN, 8, NULL, 0,
16073         "h245.BOOLEAN", HFILL }},
16074     { &hf_h245_audioSampling22k05,
16075       { "audioSampling22k05", "h245.audioSampling22k05",
16076         FT_BOOLEAN, 8, NULL, 0,
16077         "h245.BOOLEAN", HFILL }},
16078     { &hf_h245_audioSampling24k,
16079       { "audioSampling24k", "h245.audioSampling24k",
16080         FT_BOOLEAN, 8, NULL, 0,
16081         "h245.BOOLEAN", HFILL }},
16082     { &hf_h245_threeChannels2_1,
16083       { "threeChannels2-1", "h245.threeChannels2_1",
16084         FT_BOOLEAN, 8, NULL, 0,
16085         "h245.BOOLEAN", HFILL }},
16086     { &hf_h245_threeChannels3_0,
16087       { "threeChannels3-0", "h245.threeChannels3_0",
16088         FT_BOOLEAN, 8, NULL, 0,
16089         "h245.BOOLEAN", HFILL }},
16090     { &hf_h245_fourChannels2_0_2_0,
16091       { "fourChannels2-0-2-0", "h245.fourChannels2_0_2_0",
16092         FT_BOOLEAN, 8, NULL, 0,
16093         "h245.BOOLEAN", HFILL }},
16094     { &hf_h245_fourChannels2_2,
16095       { "fourChannels2-2", "h245.fourChannels2_2",
16096         FT_BOOLEAN, 8, NULL, 0,
16097         "h245.BOOLEAN", HFILL }},
16098     { &hf_h245_fourChannels3_1,
16099       { "fourChannels3-1", "h245.fourChannels3_1",
16100         FT_BOOLEAN, 8, NULL, 0,
16101         "h245.BOOLEAN", HFILL }},
16102     { &hf_h245_fiveChannels3_0_2_0,
16103       { "fiveChannels3-0-2-0", "h245.fiveChannels3_0_2_0",
16104         FT_BOOLEAN, 8, NULL, 0,
16105         "h245.BOOLEAN", HFILL }},
16106     { &hf_h245_fiveChannels3_2,
16107       { "fiveChannels3-2", "h245.fiveChannels3_2",
16108         FT_BOOLEAN, 8, NULL, 0,
16109         "h245.BOOLEAN", HFILL }},
16110     { &hf_h245_lowFrequencyEnhancement,
16111       { "lowFrequencyEnhancement", "h245.lowFrequencyEnhancement",
16112         FT_BOOLEAN, 8, NULL, 0,
16113         "h245.BOOLEAN", HFILL }},
16114     { &hf_h245_multilingual,
16115       { "multilingual", "h245.multilingual",
16116         FT_BOOLEAN, 8, NULL, 0,
16117         "h245.BOOLEAN", HFILL }},
16118     { &hf_h245_bitRate2_1_1130,
16119       { "bitRate", "h245.bitRate",
16120         FT_UINT32, BASE_DEC, NULL, 0,
16121         "h245.INTEGER_1_1130", HFILL }},
16122     { &hf_h245_audioUnitSize,
16123       { "audioUnitSize", "h245.audioUnitSize",
16124         FT_UINT32, BASE_DEC, NULL, 0,
16125         "h245.INTEGER_1_256", HFILL }},
16126     { &hf_h245_comfortNoise,
16127       { "comfortNoise", "h245.comfortNoise",
16128         FT_BOOLEAN, 8, NULL, 0,
16129         "h245.BOOLEAN", HFILL }},
16130     { &hf_h245_scrambled,
16131       { "scrambled", "h245.scrambled",
16132         FT_BOOLEAN, 8, NULL, 0,
16133         "h245.BOOLEAN", HFILL }},
16134     { &hf_h245_vbd_cap_type,
16135       { "type", "h245.type",
16136         FT_UINT32, BASE_DEC, VALS(h245_AudioCapability_vals), 0,
16137         "h245.AudioCapability", HFILL }},
16138     { &hf_h245_t120,
16139       { "t120", "h245.t120",
16140         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
16141         "h245.DataProtocolCapability", HFILL }},
16142     { &hf_h245_dsm_cc,
16143       { "dsm-cc", "h245.dsm_cc",
16144         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
16145         "h245.DataProtocolCapability", HFILL }},
16146     { &hf_h245_userData,
16147       { "userData", "h245.userData",
16148         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
16149         "h245.DataProtocolCapability", HFILL }},
16150     { &hf_h245_t84,
16151       { "t84", "h245.t84",
16152         FT_NONE, BASE_NONE, NULL, 0,
16153         "h245.T_t84", HFILL }},
16154     { &hf_h245_t84Protocol,
16155       { "t84Protocol", "h245.t84Protocol",
16156         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
16157         "h245.DataProtocolCapability", HFILL }},
16158     { &hf_h245_t84Profile,
16159       { "t84Profile", "h245.t84Profile",
16160         FT_UINT32, BASE_DEC, VALS(h245_T84Profile_vals), 0,
16161         "h245.T84Profile", HFILL }},
16162     { &hf_h245_t434,
16163       { "t434", "h245.t434",
16164         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
16165         "h245.DataProtocolCapability", HFILL }},
16166     { &hf_h245_h224,
16167       { "h224", "h245.h224",
16168         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
16169         "h245.DataProtocolCapability", HFILL }},
16170     { &hf_h245_nlpidProtocol,
16171       { "nlpidProtocol", "h245.nlpidProtocol",
16172         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
16173         "h245.DataProtocolCapability", HFILL }},
16174     { &hf_h245_nlpidData,
16175       { "nlpidData", "h245.nlpidData",
16176         FT_BYTES, BASE_HEX, NULL, 0,
16177         "h245.OCTET_STRING", HFILL }},
16178     { &hf_h245_nlpid,
16179       { "nlpid", "h245.nlpid",
16180         FT_NONE, BASE_NONE, NULL, 0,
16181         "h245.Nlpid", HFILL }},
16182     { &hf_h245_dsvdControl,
16183       { "dsvdControl", "h245.dsvdControl",
16184         FT_NONE, BASE_NONE, NULL, 0,
16185         "h245.NULL", HFILL }},
16186     { &hf_h245_h222DataPartitioning,
16187       { "h222DataPartitioning", "h245.h222DataPartitioning",
16188         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
16189         "h245.DataProtocolCapability", HFILL }},
16190     { &hf_h245_t30fax,
16191       { "t30fax", "h245.t30fax",
16192         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
16193         "h245.DataProtocolCapability", HFILL }},
16194     { &hf_h245_t140,
16195       { "t140", "h245.t140",
16196         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
16197         "h245.DataProtocolCapability", HFILL }},
16198     { &hf_h245_t38fax,
16199       { "t38fax", "h245.t38fax",
16200         FT_NONE, BASE_NONE, NULL, 0,
16201         "h245.T_t38fax", HFILL }},
16202     { &hf_h245_t38FaxProtocol,
16203       { "t38FaxProtocol", "h245.t38FaxProtocol",
16204         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
16205         "h245.DataProtocolCapability", HFILL }},
16206     { &hf_h245_t38FaxProfile,
16207       { "t38FaxProfile", "h245.t38FaxProfile",
16208         FT_NONE, BASE_NONE, NULL, 0,
16209         "h245.T38FaxProfile", HFILL }},
16210     { &hf_h245_genericDataCapability,
16211       { "genericDataCapability", "h245.genericDataCapability",
16212         FT_NONE, BASE_NONE, NULL, 0,
16213         "h245.GenericCapability", HFILL }},
16214     { &hf_h245_application,
16215       { "application", "h245.application",
16216         FT_UINT32, BASE_DEC, VALS(h245_Application_vals), 0,
16217         "h245.Application", HFILL }},
16218     { &hf_h245_maxBitRate2_0_4294967295,
16219       { "maxBitRate", "h245.maxBitRate",
16220         FT_UINT32, BASE_DEC, NULL, 0,
16221         "h245.INTEGER_0_4294967295", HFILL }},
16222     { &hf_h245_v14buffered,
16223       { "v14buffered", "h245.v14buffered",
16224         FT_NONE, BASE_NONE, NULL, 0,
16225         "h245.NULL", HFILL }},
16226     { &hf_h245_v42lapm,
16227       { "v42lapm", "h245.v42lapm",
16228         FT_NONE, BASE_NONE, NULL, 0,
16229         "h245.NULL", HFILL }},
16230     { &hf_h245_hdlcFrameTunnelling,
16231       { "hdlcFrameTunnelling", "h245.hdlcFrameTunnelling",
16232         FT_NONE, BASE_NONE, NULL, 0,
16233         "h245.NULL", HFILL }},
16234     { &hf_h245_h310SeparateVCStack,
16235       { "h310SeparateVCStack", "h245.h310SeparateVCStack",
16236         FT_NONE, BASE_NONE, NULL, 0,
16237         "h245.NULL", HFILL }},
16238     { &hf_h245_h310SingleVCStack,
16239       { "h310SingleVCStack", "h245.h310SingleVCStack",
16240         FT_NONE, BASE_NONE, NULL, 0,
16241         "h245.NULL", HFILL }},
16242     { &hf_h245_transparent,
16243       { "transparent", "h245.transparent",
16244         FT_NONE, BASE_NONE, NULL, 0,
16245         "h245.NULL", HFILL }},
16246     { &hf_h245_segmentationAndReassembly,
16247       { "segmentationAndReassembly", "h245.segmentationAndReassembly",
16248         FT_NONE, BASE_NONE, NULL, 0,
16249         "h245.NULL", HFILL }},
16250     { &hf_h245_hdlcFrameTunnelingwSAR,
16251       { "hdlcFrameTunnelingwSAR", "h245.hdlcFrameTunnelingwSAR",
16252         FT_NONE, BASE_NONE, NULL, 0,
16253         "h245.NULL", HFILL }},
16254     { &hf_h245_v120,
16255       { "v120", "h245.v120",
16256         FT_NONE, BASE_NONE, NULL, 0,
16257         "h245.NULL", HFILL }},
16258     { &hf_h245_separateLANStack,
16259       { "separateLANStack", "h245.separateLANStack",
16260         FT_NONE, BASE_NONE, NULL, 0,
16261         "h245.NULL", HFILL }},
16262     { &hf_h245_v76wCompression,
16263       { "v76wCompression", "h245.v76wCompression",
16264         FT_UINT32, BASE_DEC, VALS(h245_T_v76wCompression_vals), 0,
16265         "h245.T_v76wCompression", HFILL }},
16266     { &hf_h245_transmitCompression,
16267       { "transmitCompression", "h245.transmitCompression",
16268         FT_UINT32, BASE_DEC, VALS(h245_CompressionType_vals), 0,
16269         "h245.CompressionType", HFILL }},
16270     { &hf_h245_receiveCompression,
16271       { "receiveCompression", "h245.receiveCompression",
16272         FT_UINT32, BASE_DEC, VALS(h245_CompressionType_vals), 0,
16273         "h245.CompressionType", HFILL }},
16274     { &hf_h245_transmitAndReceiveCompression,
16275       { "transmitAndReceiveCompression", "h245.transmitAndReceiveCompression",
16276         FT_UINT32, BASE_DEC, VALS(h245_CompressionType_vals), 0,
16277         "h245.CompressionType", HFILL }},
16278     { &hf_h245_tcp,
16279       { "tcp", "h245.tcp",
16280         FT_NONE, BASE_NONE, NULL, 0,
16281         "h245.NULL", HFILL }},
16282     { &hf_h245_udp,
16283       { "udp", "h245.udp",
16284         FT_NONE, BASE_NONE, NULL, 0,
16285         "h245.NULL", HFILL }},
16286     { &hf_h245_v42bis,
16287       { "v42bis", "h245.v42bis",
16288         FT_NONE, BASE_NONE, NULL, 0,
16289         "h245.V42bis", HFILL }},
16290     { &hf_h245_numberOfCodewords,
16291       { "numberOfCodewords", "h245.numberOfCodewords",
16292         FT_UINT32, BASE_DEC, NULL, 0,
16293         "h245.INTEGER_1_65536", HFILL }},
16294     { &hf_h245_maximumStringLength,
16295       { "maximumStringLength", "h245.maximumStringLength",
16296         FT_UINT32, BASE_DEC, NULL, 0,
16297         "h245.INTEGER_1_256", HFILL }},
16298     { &hf_h245_t84Unrestricted,
16299       { "t84Unrestricted", "h245.t84Unrestricted",
16300         FT_NONE, BASE_NONE, NULL, 0,
16301         "h245.NULL", HFILL }},
16302     { &hf_h245_t84Restricted,
16303       { "t84Restricted", "h245.t84Restricted",
16304         FT_NONE, BASE_NONE, NULL, 0,
16305         "h245.T_t84Restricted", HFILL }},
16306     { &hf_h245_qcif_bool,
16307       { "qcif", "h245.qcif",
16308         FT_BOOLEAN, 8, NULL, 0,
16309         "h245.BOOLEAN", HFILL }},
16310     { &hf_h245_cif_bool,
16311       { "cif", "h245.cif",
16312         FT_BOOLEAN, 8, NULL, 0,
16313         "h245.BOOLEAN", HFILL }},
16314     { &hf_h245_ccir601Seq,
16315       { "ccir601Seq", "h245.ccir601Seq",
16316         FT_BOOLEAN, 8, NULL, 0,
16317         "h245.BOOLEAN", HFILL }},
16318     { &hf_h245_ccir601Prog,
16319       { "ccir601Prog", "h245.ccir601Prog",
16320         FT_BOOLEAN, 8, NULL, 0,
16321         "h245.BOOLEAN", HFILL }},
16322     { &hf_h245_hdtvSeq,
16323       { "hdtvSeq", "h245.hdtvSeq",
16324         FT_BOOLEAN, 8, NULL, 0,
16325         "h245.BOOLEAN", HFILL }},
16326     { &hf_h245_hdtvProg,
16327       { "hdtvProg", "h245.hdtvProg",
16328         FT_BOOLEAN, 8, NULL, 0,
16329         "h245.BOOLEAN", HFILL }},
16330     { &hf_h245_g3FacsMH200x100,
16331       { "g3FacsMH200x100", "h245.g3FacsMH200x100",
16332         FT_BOOLEAN, 8, NULL, 0,
16333         "h245.BOOLEAN", HFILL }},
16334     { &hf_h245_g3FacsMH200x200,
16335       { "g3FacsMH200x200", "h245.g3FacsMH200x200",
16336         FT_BOOLEAN, 8, NULL, 0,
16337         "h245.BOOLEAN", HFILL }},
16338     { &hf_h245_g4FacsMMR200x100,
16339       { "g4FacsMMR200x100", "h245.g4FacsMMR200x100",
16340         FT_BOOLEAN, 8, NULL, 0,
16341         "h245.BOOLEAN", HFILL }},
16342     { &hf_h245_g4FacsMMR200x200,
16343       { "g4FacsMMR200x200", "h245.g4FacsMMR200x200",
16344         FT_BOOLEAN, 8, NULL, 0,
16345         "h245.BOOLEAN", HFILL }},
16346     { &hf_h245_jbig200x200Seq,
16347       { "jbig200x200Seq", "h245.jbig200x200Seq",
16348         FT_BOOLEAN, 8, NULL, 0,
16349         "h245.BOOLEAN", HFILL }},
16350     { &hf_h245_jbig200x200Prog,
16351       { "jbig200x200Prog", "h245.jbig200x200Prog",
16352         FT_BOOLEAN, 8, NULL, 0,
16353         "h245.BOOLEAN", HFILL }},
16354     { &hf_h245_jbig300x300Seq,
16355       { "jbig300x300Seq", "h245.jbig300x300Seq",
16356         FT_BOOLEAN, 8, NULL, 0,
16357         "h245.BOOLEAN", HFILL }},
16358     { &hf_h245_jbig300x300Prog,
16359       { "jbig300x300Prog", "h245.jbig300x300Prog",
16360         FT_BOOLEAN, 8, NULL, 0,
16361         "h245.BOOLEAN", HFILL }},
16362     { &hf_h245_digPhotoLow,
16363       { "digPhotoLow", "h245.digPhotoLow",
16364         FT_BOOLEAN, 8, NULL, 0,
16365         "h245.BOOLEAN", HFILL }},
16366     { &hf_h245_digPhotoMedSeq,
16367       { "digPhotoMedSeq", "h245.digPhotoMedSeq",
16368         FT_BOOLEAN, 8, NULL, 0,
16369         "h245.BOOLEAN", HFILL }},
16370     { &hf_h245_digPhotoMedProg,
16371       { "digPhotoMedProg", "h245.digPhotoMedProg",
16372         FT_BOOLEAN, 8, NULL, 0,
16373         "h245.BOOLEAN", HFILL }},
16374     { &hf_h245_digPhotoHighSeq,
16375       { "digPhotoHighSeq", "h245.digPhotoHighSeq",
16376         FT_BOOLEAN, 8, NULL, 0,
16377         "h245.BOOLEAN", HFILL }},
16378     { &hf_h245_digPhotoHighProg,
16379       { "digPhotoHighProg", "h245.digPhotoHighProg",
16380         FT_BOOLEAN, 8, NULL, 0,
16381         "h245.BOOLEAN", HFILL }},
16382     { &hf_h245_fillBitRemoval,
16383       { "fillBitRemoval", "h245.fillBitRemoval",
16384         FT_BOOLEAN, 8, NULL, 0,
16385         "h245.BOOLEAN", HFILL }},
16386     { &hf_h245_transcodingJBIG,
16387       { "transcodingJBIG", "h245.transcodingJBIG",
16388         FT_BOOLEAN, 8, NULL, 0,
16389         "h245.BOOLEAN", HFILL }},
16390     { &hf_h245_transcodingMMR,
16391       { "transcodingMMR", "h245.transcodingMMR",
16392         FT_BOOLEAN, 8, NULL, 0,
16393         "h245.BOOLEAN", HFILL }},
16394     { &hf_h245_version,
16395       { "version", "h245.version",
16396         FT_UINT32, BASE_DEC, NULL, 0,
16397         "h245.INTEGER_0_255", HFILL }},
16398     { &hf_h245_t38FaxRateManagement,
16399       { "t38FaxRateManagement", "h245.t38FaxRateManagement",
16400         FT_UINT32, BASE_DEC, VALS(h245_T38FaxRateManagement_vals), 0,
16401         "h245.T38FaxRateManagement", HFILL }},
16402     { &hf_h245_t38FaxUdpOptions,
16403       { "t38FaxUdpOptions", "h245.t38FaxUdpOptions",
16404         FT_NONE, BASE_NONE, NULL, 0,
16405         "h245.T38FaxUdpOptions", HFILL }},
16406     { &hf_h245_t38FaxTcpOptions,
16407       { "t38FaxTcpOptions", "h245.t38FaxTcpOptions",
16408         FT_NONE, BASE_NONE, NULL, 0,
16409         "h245.T38FaxTcpOptions", HFILL }},
16410     { &hf_h245_localTCF,
16411       { "localTCF", "h245.localTCF",
16412         FT_NONE, BASE_NONE, NULL, 0,
16413         "h245.NULL", HFILL }},
16414     { &hf_h245_transferredTCF,
16415       { "transferredTCF", "h245.transferredTCF",
16416         FT_NONE, BASE_NONE, NULL, 0,
16417         "h245.NULL", HFILL }},
16418     { &hf_h245_t38FaxMaxBuffer,
16419       { "t38FaxMaxBuffer", "h245.t38FaxMaxBuffer",
16420         FT_INT32, BASE_DEC, NULL, 0,
16421         "h245.INTEGER", HFILL }},
16422     { &hf_h245_t38FaxMaxDatagram,
16423       { "t38FaxMaxDatagram", "h245.t38FaxMaxDatagram",
16424         FT_INT32, BASE_DEC, NULL, 0,
16425         "h245.INTEGER", HFILL }},
16426     { &hf_h245_t38FaxUdpEC,
16427       { "t38FaxUdpEC", "h245.t38FaxUdpEC",
16428         FT_UINT32, BASE_DEC, VALS(h245_T_t38FaxUdpEC_vals), 0,
16429         "h245.T_t38FaxUdpEC", HFILL }},
16430     { &hf_h245_t38UDPFEC,
16431       { "t38UDPFEC", "h245.t38UDPFEC",
16432         FT_NONE, BASE_NONE, NULL, 0,
16433         "h245.NULL", HFILL }},
16434     { &hf_h245_t38UDPRedundancy,
16435       { "t38UDPRedundancy", "h245.t38UDPRedundancy",
16436         FT_NONE, BASE_NONE, NULL, 0,
16437         "h245.NULL", HFILL }},
16438     { &hf_h245_t38TCPBidirectionalMode,
16439       { "t38TCPBidirectionalMode", "h245.t38TCPBidirectionalMode",
16440         FT_BOOLEAN, 8, NULL, 0,
16441         "h245.BOOLEAN", HFILL }},
16442     { &hf_h245_encryptionCapability,
16443       { "encryptionCapability", "h245.encryptionCapability",
16444         FT_UINT32, BASE_DEC, NULL, 0,
16445         "h245.EncryptionCapability", HFILL }},
16446     { &hf_h245_authenticationCapability,
16447       { "authenticationCapability", "h245.authenticationCapability",
16448         FT_NONE, BASE_NONE, NULL, 0,
16449         "h245.AuthenticationCapability", HFILL }},
16450     { &hf_h245_integrityCapability,
16451       { "integrityCapability", "h245.integrityCapability",
16452         FT_NONE, BASE_NONE, NULL, 0,
16453         "h245.IntegrityCapability", HFILL }},
16454     { &hf_h245_genericH235SecurityCapability,
16455       { "genericH235SecurityCapability", "h245.genericH235SecurityCapability",
16456         FT_NONE, BASE_NONE, NULL, 0,
16457         "h245.GenericCapability", HFILL }},
16458     { &hf_h245_EncryptionCapability_item,
16459       { "Item", "h245.EncryptionCapability_item",
16460         FT_UINT32, BASE_DEC, VALS(h245_MediaEncryptionAlgorithm_vals), 0,
16461         "h245.MediaEncryptionAlgorithm", HFILL }},
16462     { &hf_h245_algorithm,
16463       { "algorithm", "h245.algorithm",
16464         FT_OID, BASE_NONE, NULL, 0,
16465         "h245.OBJECT_IDENTIFIER", HFILL }},
16466     { &hf_h245_antiSpamAlgorithm,
16467       { "antiSpamAlgorithm", "h245.antiSpamAlgorithm",
16468         FT_OID, BASE_NONE, NULL, 0,
16469         "h245.OBJECT_IDENTIFIER", HFILL }},
16470     { &hf_h245_ui_nonStandard,
16471       { "nonStandard", "h245.nonStandard",
16472         FT_UINT32, BASE_DEC, NULL, 0,
16473         "h245.SEQUENCE_SIZE_1_16_OF_NonStandardParameter", HFILL }},
16474     { &hf_h245_ui_nonStandard_item,
16475       { "Item", "h245.nonStandard_item",
16476         FT_NONE, BASE_NONE, NULL, 0,
16477         "h245.NonStandardParameter", HFILL }},
16478     { &hf_h245_basicString,
16479       { "basicString", "h245.basicString",
16480         FT_NONE, BASE_NONE, NULL, 0,
16481         "h245.NULL", HFILL }},
16482     { &hf_h245_iA5String,
16483       { "iA5String", "h245.iA5String",
16484         FT_NONE, BASE_NONE, NULL, 0,
16485         "h245.NULL", HFILL }},
16486     { &hf_h245_generalString,
16487       { "generalString", "h245.generalString",
16488         FT_NONE, BASE_NONE, NULL, 0,
16489         "h245.NULL", HFILL }},
16490     { &hf_h245_dtmf,
16491       { "dtmf", "h245.dtmf",
16492         FT_NONE, BASE_NONE, NULL, 0,
16493         "h245.NULL", HFILL }},
16494     { &hf_h245_hookflash,
16495       { "hookflash", "h245.hookflash",
16496         FT_NONE, BASE_NONE, NULL, 0,
16497         "h245.NULL", HFILL }},
16498     { &hf_h245_extendedAlphanumericFlag,
16499       { "extendedAlphanumeric", "h245.extendedAlphanumeric",
16500         FT_NONE, BASE_NONE, NULL, 0,
16501         "h245.NULL", HFILL }},
16502     { &hf_h245_encryptedBasicString,
16503       { "encryptedBasicString", "h245.encryptedBasicString",
16504         FT_NONE, BASE_NONE, NULL, 0,
16505         "h245.NULL", HFILL }},
16506     { &hf_h245_encryptedIA5String,
16507       { "encryptedIA5String", "h245.encryptedIA5String",
16508         FT_NONE, BASE_NONE, NULL, 0,
16509         "h245.NULL", HFILL }},
16510     { &hf_h245_encryptedGeneralString,
16511       { "encryptedGeneralString", "h245.encryptedGeneralString",
16512         FT_NONE, BASE_NONE, NULL, 0,
16513         "h245.NULL", HFILL }},
16514     { &hf_h245_secureDTMF,
16515       { "secureDTMF", "h245.secureDTMF",
16516         FT_NONE, BASE_NONE, NULL, 0,
16517         "h245.NULL", HFILL }},
16518     { &hf_h245_genericUserInputCapability,
16519       { "genericUserInputCapability", "h245.genericUserInputCapability",
16520         FT_NONE, BASE_NONE, NULL, 0,
16521         "h245.GenericCapability", HFILL }},
16522     { &hf_h245_nonStandardParams,
16523       { "nonStandardData", "h245.nonStandardData",
16524         FT_UINT32, BASE_DEC, NULL, 0,
16525         "h245.SEQUENCE_OF_NonStandardParameter", HFILL }},
16526     { &hf_h245_nonStandardParams_item,
16527       { "Item", "h245.nonStandardData_item",
16528         FT_NONE, BASE_NONE, NULL, 0,
16529         "h245.NonStandardParameter", HFILL }},
16530     { &hf_h245_chairControlCapability,
16531       { "chairControlCapability", "h245.chairControlCapability",
16532         FT_BOOLEAN, 8, NULL, 0,
16533         "h245.BOOLEAN", HFILL }},
16534     { &hf_h245_videoIndicateMixingCapability,
16535       { "videoIndicateMixingCapability", "h245.videoIndicateMixingCapability",
16536         FT_BOOLEAN, 8, NULL, 0,
16537         "h245.BOOLEAN", HFILL }},
16538     { &hf_h245_multipointVisualizationCapability,
16539       { "multipointVisualizationCapability", "h245.multipointVisualizationCapability",
16540         FT_BOOLEAN, 8, NULL, 0,
16541         "h245.BOOLEAN", HFILL }},
16542     { &hf_h245_capabilityIdentifier,
16543       { "capabilityIdentifier", "h245.capabilityIdentifier",
16544         FT_UINT32, BASE_DEC, VALS(h245_CapabilityIdentifier_vals), 0,
16545         "h245.CapabilityIdentifier", HFILL }},
16546     { &hf_h245_collapsing,
16547       { "collapsing", "h245.collapsing",
16548         FT_UINT32, BASE_DEC, NULL, 0,
16549         "h245.SEQUENCE_OF_GenericParameter", HFILL }},
16550     { &hf_h245_collapsing_item,
16551       { "Item", "h245.collapsing_item",
16552         FT_NONE, BASE_NONE, NULL, 0,
16553         "h245.GenericParameter", HFILL }},
16554     { &hf_h245_nonCollapsing,
16555       { "nonCollapsing", "h245.nonCollapsing",
16556         FT_UINT32, BASE_DEC, NULL, 0,
16557         "h245.SEQUENCE_OF_GenericParameter", HFILL }},
16558     { &hf_h245_nonCollapsing_item,
16559       { "Item", "h245.nonCollapsing_item",
16560         FT_NONE, BASE_NONE, NULL, 0,
16561         "h245.GenericParameter", HFILL }},
16562     { &hf_h245_nonCollapsingRaw,
16563       { "nonCollapsingRaw", "h245.nonCollapsingRaw",
16564         FT_BYTES, BASE_HEX, NULL, 0,
16565         "h245.OCTET_STRING", HFILL }},
16566     { &hf_h245_transport,
16567       { "transport", "h245.transport",
16568         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
16569         "h245.DataProtocolCapability", HFILL }},
16570     { &hf_h245_standardOid,
16571       { "standard", "h245.standard",
16572         FT_OID, BASE_NONE, NULL, 0,
16573         "h245.T_standardOid", HFILL }},
16574     { &hf_h245_h221NonStandard,
16575       { "h221NonStandard", "h245.h221NonStandard",
16576         FT_NONE, BASE_NONE, NULL, 0,
16577         "h245.NonStandardParameter", HFILL }},
16578     { &hf_h245_uuid,
16579       { "uuid", "h245.uuid",
16580         FT_BYTES, BASE_HEX, NULL, 0,
16581         "h245.OCTET_STRING_SIZE_16", HFILL }},
16582     { &hf_h245_domainBased,
16583       { "domainBased", "h245.domainBased",
16584         FT_STRING, BASE_NONE, NULL, 0,
16585         "h245.IA5String_SIZE_1_64", HFILL }},
16586     { &hf_h245_parameterIdentifier,
16587       { "parameterIdentifier", "h245.parameterIdentifier",
16588         FT_UINT32, BASE_DEC, VALS(h245_ParameterIdentifier_vals), 0,
16589         "h245.ParameterIdentifier", HFILL }},
16590     { &hf_h245_parameterValue,
16591       { "parameterValue", "h245.parameterValue",
16592         FT_UINT32, BASE_DEC, VALS(h245_ParameterValue_vals), 0,
16593         "h245.ParameterValue", HFILL }},
16594     { &hf_h245_supersedes,
16595       { "supersedes", "h245.supersedes",
16596         FT_UINT32, BASE_DEC, NULL, 0,
16597         "h245.SEQUENCE_OF_ParameterIdentifier", HFILL }},
16598     { &hf_h245_supersedes_item,
16599       { "Item", "h245.supersedes_item",
16600         FT_UINT32, BASE_DEC, VALS(h245_ParameterIdentifier_vals), 0,
16601         "h245.ParameterIdentifier", HFILL }},
16602     { &hf_h245_standard,
16603       { "standard", "h245.standard",
16604         FT_UINT32, BASE_DEC, NULL, 0,
16605         "h245.INTEGER_0_127", HFILL }},
16606     { &hf_h245_logical,
16607       { "logical", "h245.logical",
16608         FT_NONE, BASE_NONE, NULL, 0,
16609         "h245.NULL", HFILL }},
16610     { &hf_h245_booleanArray,
16611       { "booleanArray", "h245.booleanArray",
16612         FT_UINT32, BASE_DEC, NULL, 0,
16613         "h245.INTEGER_0_255", HFILL }},
16614     { &hf_h245_unsignedMin,
16615       { "unsignedMin", "h245.unsignedMin",
16616         FT_UINT32, BASE_DEC, NULL, 0,
16617         "h245.INTEGER_0_65535", HFILL }},
16618     { &hf_h245_unsignedMax,
16619       { "unsignedMax", "h245.unsignedMax",
16620         FT_UINT32, BASE_DEC, NULL, 0,
16621         "h245.INTEGER_0_65535", HFILL }},
16622     { &hf_h245_unsigned32Min,
16623       { "unsigned32Min", "h245.unsigned32Min",
16624         FT_UINT32, BASE_DEC, NULL, 0,
16625         "h245.INTEGER_0_4294967295", HFILL }},
16626     { &hf_h245_unsigned32Max,
16627       { "unsigned32Max", "h245.unsigned32Max",
16628         FT_UINT32, BASE_DEC, NULL, 0,
16629         "h245.INTEGER_0_4294967295", HFILL }},
16630     { &hf_h245_octetString,
16631       { "octetString", "h245.octetString",
16632         FT_BYTES, BASE_HEX, NULL, 0,
16633         "h245.OCTET_STRING", HFILL }},
16634     { &hf_h245_genericParameters,
16635       { "genericParameter", "h245.genericParameter",
16636         FT_UINT32, BASE_DEC, NULL, 0,
16637         "h245.SEQUENCE_OF_GenericParameter", HFILL }},
16638     { &hf_h245_genericParameters_item,
16639       { "Item", "h245.genericParameter_item",
16640         FT_NONE, BASE_NONE, NULL, 0,
16641         "h245.GenericParameter", HFILL }},
16642     { &hf_h245_multiplexFormat,
16643       { "multiplexFormat", "h245.multiplexFormat",
16644         FT_UINT32, BASE_DEC, VALS(h245_MultiplexFormat_vals), 0,
16645         "h245.MultiplexFormat", HFILL }},
16646     { &hf_h245_controlOnMuxStream,
16647       { "controlOnMuxStream", "h245.controlOnMuxStream",
16648         FT_BOOLEAN, 8, NULL, 0,
16649         "h245.BOOLEAN", HFILL }},
16650     { &hf_h245_capabilityOnMuxStream,
16651       { "capabilityOnMuxStream", "h245.capabilityOnMuxStream",
16652         FT_UINT32, BASE_DEC, NULL, 0,
16653         "h245.SET_SIZE_1_256_OF_AlternativeCapabilitySet", HFILL }},
16654     { &hf_h245_capabilityOnMuxStream_item,
16655       { "Item", "h245.capabilityOnMuxStream_item",
16656         FT_UINT32, BASE_DEC, NULL, 0,
16657         "h245.AlternativeCapabilitySet", HFILL }},
16658     { &hf_h245_dynamicRTPPayloadType,
16659       { "dynamicRTPPayloadType", "h245.dynamicRTPPayloadType",
16660         FT_UINT32, BASE_DEC, NULL, 0,
16661         "h245.INTEGER_96_127", HFILL }},
16662     { &hf_h245_audioTelephoneEvent,
16663       { "audioTelephoneEvent", "h245.audioTelephoneEvent",
16664         FT_STRING, BASE_NONE, NULL, 0,
16665         "h245.GeneralString", HFILL }},
16666     { &hf_h245_capabilities,
16667       { "capabilities", "h245.capabilities",
16668         FT_UINT32, BASE_DEC, NULL, 0,
16669         "h245.SET_SIZE_1_256_OF_AlternativeCapabilitySet", HFILL }},
16670     { &hf_h245_capabilities_item,
16671       { "Item", "h245.capabilities_item",
16672         FT_UINT32, BASE_DEC, NULL, 0,
16673         "h245.AlternativeCapabilitySet", HFILL }},
16674     { &hf_h245_fecc_rfc2733,
16675       { "rfc2733", "h245.rfc2733",
16676         FT_NONE, BASE_NONE, NULL, 0,
16677         "h245.FECC_rfc2733", HFILL }},
16678     { &hf_h245_redundancyEncodingBool,
16679       { "redundancyEncoding", "h245.redundancyEncoding",
16680         FT_BOOLEAN, 8, NULL, 0,
16681         "h245.BOOLEAN", HFILL }},
16682     { &hf_h245_separateStreamBool,
16683       { "separateStream", "h245.separateStream",
16684         FT_NONE, BASE_NONE, NULL, 0,
16685         "h245.T_separateStreamBool", HFILL }},
16686     { &hf_h245_separatePort,
16687       { "separatePort", "h245.separatePort",
16688         FT_BOOLEAN, 8, NULL, 0,
16689         "h245.BOOLEAN", HFILL }},
16690     { &hf_h245_samePortBool,
16691       { "samePort", "h245.samePort",
16692         FT_BOOLEAN, 8, NULL, 0,
16693         "h245.BOOLEAN", HFILL }},
16694     { &hf_h245_protectedCapability,
16695       { "protectedCapability", "h245.protectedCapability",
16696         FT_UINT32, BASE_DEC, NULL, 0,
16697         "h245.CapabilityTableEntryNumber", HFILL }},
16698     { &hf_h245_fecScheme,
16699       { "fecScheme", "h245.fecScheme",
16700         FT_OID, BASE_NONE, NULL, 0,
16701         "h245.OBJECT_IDENTIFIER", HFILL }},
16702     { &hf_h245_rfc2733rfc2198,
16703       { "rfc2733rfc2198", "h245.rfc2733rfc2198",
16704         FT_UINT32, BASE_DEC, NULL, 0,
16705         "h245.MaxRedundancy", HFILL }},
16706     { &hf_h245_rfc2733sameport,
16707       { "rfc2733sameport", "h245.rfc2733sameport",
16708         FT_UINT32, BASE_DEC, NULL, 0,
16709         "h245.MaxRedundancy", HFILL }},
16710     { &hf_h245_rfc2733diffport,
16711       { "rfc2733diffport", "h245.rfc2733diffport",
16712         FT_UINT32, BASE_DEC, NULL, 0,
16713         "h245.MaxRedundancy", HFILL }},
16714     { &hf_h245_rfc2733Format,
16715       { "rfc2733Format", "h245.rfc2733Format",
16716         FT_UINT32, BASE_DEC, VALS(h245_Rfc2733Format_vals), 0,
16717         "h245.Rfc2733Format", HFILL }},
16718     { &hf_h245_olc_fw_lcn,
16719       { "forwardLogicalChannelNumber", "h245.forwardLogicalChannelNumber",
16720         FT_UINT32, BASE_DEC, NULL, 0,
16721         "h245.OLC_fw_lcn", HFILL }},
16722     { &hf_h245_forwardLogicalChannelParameters,
16723       { "forwardLogicalChannelParameters", "h245.forwardLogicalChannelParameters",
16724         FT_NONE, BASE_NONE, NULL, 0,
16725         "h245.T_forwardLogicalChannelParameters", HFILL }},
16726     { &hf_h245_portNumber,
16727       { "portNumber", "h245.portNumber",
16728         FT_UINT32, BASE_DEC, NULL, 0,
16729         "h245.INTEGER_0_65535", HFILL }},
16730     { &hf_h245_dataType,
16731       { "dataType", "h245.dataType",
16732         FT_UINT32, BASE_DEC, VALS(h245_DataType_vals), 0,
16733         "h245.DataType", HFILL }},
16734     { &hf_h245_olc_forw_multiplexParameters,
16735       { "multiplexParameters", "h245.multiplexParameters",
16736         FT_UINT32, BASE_DEC, VALS(h245_OLC_forw_multiplexParameters_vals), 0,
16737         "h245.OLC_forw_multiplexParameters", HFILL }},
16738     { &hf_h245_h222LogicalChannelParameters,
16739       { "h222LogicalChannelParameters", "h245.h222LogicalChannelParameters",
16740         FT_NONE, BASE_NONE, NULL, 0,
16741         "h245.H222LogicalChannelParameters", HFILL }},
16742     { &hf_h245_olc_fw_h223_params,
16743       { "h223LogicalChannelParameters", "h245.h223LogicalChannelParameters",
16744         FT_NONE, BASE_NONE, NULL, 0,
16745         "h245.OLC_fw_h223_params", HFILL }},
16746     { &hf_h245_v76LogicalChannelParameters,
16747       { "v76LogicalChannelParameters", "h245.v76LogicalChannelParameters",
16748         FT_NONE, BASE_NONE, NULL, 0,
16749         "h245.V76LogicalChannelParameters", HFILL }},
16750     { &hf_h245_h2250LogicalChannelParameters,
16751       { "h2250LogicalChannelParameters", "h245.h2250LogicalChannelParameters",
16752         FT_NONE, BASE_NONE, NULL, 0,
16753         "h245.H2250LogicalChannelParameters", HFILL }},
16754     { &hf_h245_forwardLogicalChannelDependency,
16755       { "forwardLogicalChannelDependency", "h245.forwardLogicalChannelDependency",
16756         FT_UINT32, BASE_DEC, NULL, 0,
16757         "h245.LogicalChannelNumber", HFILL }},
16758     { &hf_h245_replacementFor,
16759       { "replacementFor", "h245.replacementFor",
16760         FT_UINT32, BASE_DEC, NULL, 0,
16761         "h245.LogicalChannelNumber", HFILL }},
16762     { &hf_h245_reverseLogicalChannelParameters,
16763       { "reverseLogicalChannelParameters", "h245.reverseLogicalChannelParameters",
16764         FT_NONE, BASE_NONE, NULL, 0,
16765         "h245.OLC_reverseLogicalChannelParameters", HFILL }},
16766     { &hf_h245_olc_rev_multiplexParameter,
16767       { "multiplexParameters", "h245.multiplexParameters",
16768         FT_UINT32, BASE_DEC, VALS(h245_OLC_rev_multiplexParameters_vals), 0,
16769         "h245.OLC_rev_multiplexParameters", HFILL }},
16770     { &hf_h245_olc_rev_h223_params,
16771       { "h223LogicalChannelParameters", "h245.h223LogicalChannelParameters",
16772         FT_NONE, BASE_NONE, NULL, 0,
16773         "h245.OLC_rev_h223_params", HFILL }},
16774     { &hf_h245_reverseLogicalChannelDependency,
16775       { "reverseLogicalChannelDependency", "h245.reverseLogicalChannelDependency",
16776         FT_UINT32, BASE_DEC, NULL, 0,
16777         "h245.LogicalChannelNumber", HFILL }},
16778     { &hf_h245_separateStack,
16779       { "separateStack", "h245.separateStack",
16780         FT_NONE, BASE_NONE, NULL, 0,
16781         "h245.NetworkAccessParameters", HFILL }},
16782     { &hf_h245_encryptionSync,
16783       { "encryptionSync", "h245.encryptionSync",
16784         FT_NONE, BASE_NONE, NULL, 0,
16785         "h245.EncryptionSync", HFILL }},
16786     { &hf_h245_distribution,
16787       { "distribution", "h245.distribution",
16788         FT_UINT32, BASE_DEC, VALS(h245_T_distribution_vals), 0,
16789         "h245.T_distribution", HFILL }},
16790     { &hf_h245_unicast,
16791       { "unicast", "h245.unicast",
16792         FT_NONE, BASE_NONE, NULL, 0,
16793         "h245.NULL", HFILL }},
16794     { &hf_h245_multicast,
16795       { "multicast", "h245.multicast",
16796         FT_NONE, BASE_NONE, NULL, 0,
16797         "h245.NULL", HFILL }},
16798     { &hf_h245_networkAddress,
16799       { "networkAddress", "h245.networkAddress",
16800         FT_UINT32, BASE_DEC, VALS(h245_T_networkAddress_vals), 0,
16801         "h245.T_networkAddress", HFILL }},
16802     { &hf_h245_q2931Address,
16803       { "q2931Address", "h245.q2931Address",
16804         FT_NONE, BASE_NONE, NULL, 0,
16805         "h245.Q2931Address", HFILL }},
16806     { &hf_h245_e164Address,
16807       { "e164Address", "h245.e164Address",
16808         FT_STRING, BASE_NONE, NULL, 0,
16809         "h245.T_e164Address", HFILL }},
16810     { &hf_h245_localAreaAddress,
16811       { "localAreaAddress", "h245.localAreaAddress",
16812         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
16813         "h245.TransportAddress", HFILL }},
16814     { &hf_h245_associateConference,
16815       { "associateConference", "h245.associateConference",
16816         FT_BOOLEAN, 8, NULL, 0,
16817         "h245.BOOLEAN", HFILL }},
16818     { &hf_h245_externalReference,
16819       { "externalReference", "h245.externalReference",
16820         FT_BYTES, BASE_HEX, NULL, 0,
16821         "h245.OCTET_STRING_SIZE_1_255", HFILL }},
16822     { &hf_h245_t120SetupProcedure,
16823       { "t120SetupProcedure", "h245.t120SetupProcedure",
16824         FT_UINT32, BASE_DEC, VALS(h245_T_t120SetupProcedure_vals), 0,
16825         "h245.T_t120SetupProcedure", HFILL }},
16826     { &hf_h245_originateCall,
16827       { "originateCall", "h245.originateCall",
16828         FT_NONE, BASE_NONE, NULL, 0,
16829         "h245.NULL", HFILL }},
16830     { &hf_h245_waitForCall,
16831       { "waitForCall", "h245.waitForCall",
16832         FT_NONE, BASE_NONE, NULL, 0,
16833         "h245.NULL", HFILL }},
16834     { &hf_h245_issueQuery,
16835       { "issueQuery", "h245.issueQuery",
16836         FT_NONE, BASE_NONE, NULL, 0,
16837         "h245.NULL", HFILL }},
16838     { &hf_h245_address,
16839       { "address", "h245.address",
16840         FT_UINT32, BASE_DEC, VALS(h245_T_address_vals), 0,
16841         "h245.T_address", HFILL }},
16842     { &hf_h245_internationalNumber,
16843       { "internationalNumber", "h245.internationalNumber",
16844         FT_STRING, BASE_NONE, NULL, 0,
16845         "h245.NumericString_SIZE_1_16", HFILL }},
16846     { &hf_h245_nsapAddress,
16847       { "nsapAddress", "h245.nsapAddress",
16848         FT_BYTES, BASE_HEX, NULL, 0,
16849         "h245.OCTET_STRING_SIZE_1_20", HFILL }},
16850     { &hf_h245_subaddress,
16851       { "subaddress", "h245.subaddress",
16852         FT_BYTES, BASE_HEX, NULL, 0,
16853         "h245.OCTET_STRING_SIZE_1_20", HFILL }},
16854     { &hf_h245_audioHeaderPresent,
16855       { "audioHeaderPresent", "h245.audioHeaderPresent",
16856         FT_BOOLEAN, 8, NULL, 0,
16857         "h245.BOOLEAN", HFILL }},
16858     { &hf_h245_nullData,
16859       { "nullData", "h245.nullData",
16860         FT_NONE, BASE_NONE, NULL, 0,
16861         "h245.NULL", HFILL }},
16862     { &hf_h245_videoData,
16863       { "videoData", "h245.videoData",
16864         FT_UINT32, BASE_DEC, VALS(h245_VideoCapability_vals), 0,
16865         "h245.VideoCapability", HFILL }},
16866     { &hf_h245_audioData,
16867       { "audioData", "h245.audioData",
16868         FT_UINT32, BASE_DEC, VALS(h245_AudioCapability_vals), 0,
16869         "h245.AudioCapability", HFILL }},
16870     { &hf_h245_data,
16871       { "data", "h245.data",
16872         FT_NONE, BASE_NONE, NULL, 0,
16873         "h245.DataApplicationCapability", HFILL }},
16874     { &hf_h245_encryptionData,
16875       { "encryptionData", "h245.encryptionData",
16876         FT_UINT32, BASE_DEC, VALS(h245_EncryptionMode_vals), 0,
16877         "h245.EncryptionMode", HFILL }},
16878     { &hf_h245_h235Control,
16879       { "h235Control", "h245.h235Control",
16880         FT_NONE, BASE_NONE, NULL, 0,
16881         "h245.NonStandardParameter", HFILL }},
16882     { &hf_h245_h235Media,
16883       { "h235Media", "h245.h235Media",
16884         FT_NONE, BASE_NONE, NULL, 0,
16885         "h245.H235Media", HFILL }},
16886     { &hf_h245_multiplexedStream,
16887       { "multiplexedStream", "h245.multiplexedStream",
16888         FT_NONE, BASE_NONE, NULL, 0,
16889         "h245.MultiplexedStreamParameter", HFILL }},
16890     { &hf_h245_redundancyEncoding,
16891       { "redundancyEncoding", "h245.redundancyEncoding",
16892         FT_NONE, BASE_NONE, NULL, 0,
16893         "h245.RedundancyEncoding", HFILL }},
16894     { &hf_h245_multiplePayloadStream,
16895       { "multiplePayloadStream", "h245.multiplePayloadStream",
16896         FT_NONE, BASE_NONE, NULL, 0,
16897         "h245.MultiplePayloadStream", HFILL }},
16898     { &hf_h245_depFec,
16899       { "depFec", "h245.depFec",
16900         FT_UINT32, BASE_DEC, VALS(h245_DepFECData_vals), 0,
16901         "h245.DepFECData", HFILL }},
16902     { &hf_h245_fec,
16903       { "fec", "h245.fec",
16904         FT_UINT32, BASE_DEC, VALS(h245_FECData_vals), 0,
16905         "h245.FECData", HFILL }},
16906     { &hf_h245_mediaType,
16907       { "mediaType", "h245.mediaType",
16908         FT_UINT32, BASE_DEC, VALS(h245_T_mediaType_vals), 0,
16909         "h245.T_mediaType", HFILL }},
16910     { &hf_h245_resourceID,
16911       { "resourceID", "h245.resourceID",
16912         FT_UINT32, BASE_DEC, NULL, 0,
16913         "h245.INTEGER_0_65535", HFILL }},
16914     { &hf_h245_subChannelID,
16915       { "subChannelID", "h245.subChannelID",
16916         FT_UINT32, BASE_DEC, NULL, 0,
16917         "h245.INTEGER_0_8191", HFILL }},
16918     { &hf_h245_pcr_pid,
16919       { "pcr-pid", "h245.pcr_pid",
16920         FT_UINT32, BASE_DEC, NULL, 0,
16921         "h245.INTEGER_0_8191", HFILL }},
16922     { &hf_h245_programDescriptors,
16923       { "programDescriptors", "h245.programDescriptors",
16924         FT_BYTES, BASE_HEX, NULL, 0,
16925         "h245.OCTET_STRING", HFILL }},
16926     { &hf_h245_streamDescriptors,
16927       { "streamDescriptors", "h245.streamDescriptors",
16928         FT_BYTES, BASE_HEX, NULL, 0,
16929         "h245.OCTET_STRING", HFILL }},
16930     { &hf_h245_adaptationLayerType,
16931       { "adaptationLayerType", "h245.adaptationLayerType",
16932         FT_UINT32, BASE_DEC, VALS(h245_T_adaptationLayerType_vals), 0,
16933         "h245.T_adaptationLayerType", HFILL }},
16934     { &hf_h245_h223_al_type_al1Framed,
16935       { "al1Framed", "h245.al1Framed",
16936         FT_NONE, BASE_NONE, NULL, 0,
16937         "h245.T_h223_al_type_al1Framed", HFILL }},
16938     { &hf_h245_h223_al_type_al1NotFramed,
16939       { "al1NotFramed", "h245.al1NotFramed",
16940         FT_NONE, BASE_NONE, NULL, 0,
16941         "h245.T_h223_al_type_al1NotFramed", HFILL }},
16942     { &hf_h245_h223_al_type_al2WithoutSequenceNumbers,
16943       { "al2WithoutSequenceNumbers", "h245.al2WithoutSequenceNumbers",
16944         FT_NONE, BASE_NONE, NULL, 0,
16945         "h245.T_h223_al_type_al2WithoutSequenceNumbers", HFILL }},
16946     { &hf_h245_h223_al_type_al2WithSequenceNumbers,
16947       { "al2WithSequenceNumbers", "h245.al2WithSequenceNumbers",
16948         FT_NONE, BASE_NONE, NULL, 0,
16949         "h245.T_h223_al_type_al2WithSequenceNumbers", HFILL }},
16950     { &hf_h245_controlFieldOctets,
16951       { "controlFieldOctets", "h245.controlFieldOctets",
16952         FT_UINT32, BASE_DEC, NULL, 0,
16953         "h245.T_controlFieldOctets", HFILL }},
16954     { &hf_h245_al3_sendBufferSize,
16955       { "sendBufferSize", "h245.sendBufferSize",
16956         FT_UINT32, BASE_DEC, NULL, 0,
16957         "h245.T_al3_sendBufferSize", HFILL }},
16958     { &hf_h245_h223_al_type_al3,
16959       { "al3", "h245.al3",
16960         FT_NONE, BASE_NONE, NULL, 0,
16961         "h245.T_h223_al_type_al3", HFILL }},
16962     { &hf_h245_h223_al_type_al1M,
16963       { "al1M", "h245.al1M",
16964         FT_NONE, BASE_NONE, NULL, 0,
16965         "h245.T_h223_al_type_al1M", HFILL }},
16966     { &hf_h245_h223_al_type_al2M,
16967       { "al2M", "h245.al2M",
16968         FT_NONE, BASE_NONE, NULL, 0,
16969         "h245.T_h223_al_type_al2M", HFILL }},
16970     { &hf_h245_h223_al_type_al3M,
16971       { "al3M", "h245.al3M",
16972         FT_NONE, BASE_NONE, NULL, 0,
16973         "h245.T_h223_al_type_al3M", HFILL }},
16974     { &hf_h245_h223_lc_segmentableFlag,
16975       { "segmentableFlag", "h245.segmentableFlag",
16976         FT_BOOLEAN, 8, NULL, 0,
16977         "h245.T_h223_lc_segmentableFlag", HFILL }},
16978     { &hf_h245_transferMode,
16979       { "transferMode", "h245.transferMode",
16980         FT_UINT32, BASE_DEC, VALS(h245_T_transferMode_vals), 0,
16981         "h245.T_transferMode", HFILL }},
16982     { &hf_h245_framed,
16983       { "framed", "h245.framed",
16984         FT_NONE, BASE_NONE, NULL, 0,
16985         "h245.NULL", HFILL }},
16986     { &hf_h245_unframed,
16987       { "unframed", "h245.unframed",
16988         FT_NONE, BASE_NONE, NULL, 0,
16989         "h245.NULL", HFILL }},
16990     { &hf_h245_aL1HeaderFEC,
16991       { "headerFEC", "h245.headerFEC",
16992         FT_UINT32, BASE_DEC, VALS(h245_AL1HeaderFEC_vals), 0,
16993         "h245.AL1HeaderFEC", HFILL }},
16994     { &hf_h245_sebch16_7,
16995       { "sebch16-7", "h245.sebch16_7",
16996         FT_NONE, BASE_NONE, NULL, 0,
16997         "h245.NULL", HFILL }},
16998     { &hf_h245_golay24_12,
16999       { "golay24-12", "h245.golay24_12",
17000         FT_NONE, BASE_NONE, NULL, 0,
17001         "h245.NULL", HFILL }},
17002     { &hf_h245_crcLength2,
17003       { "crcLength", "h245.crcLength",
17004         FT_UINT32, BASE_DEC, VALS(h245_AL1CrcLength_vals), 0,
17005         "h245.AL1CrcLength", HFILL }},
17006     { &hf_h245_crc4bit,
17007       { "crc4bit", "h245.crc4bit",
17008         FT_NONE, BASE_NONE, NULL, 0,
17009         "h245.NULL", HFILL }},
17010     { &hf_h245_crc12bit,
17011       { "crc12bit", "h245.crc12bit",
17012         FT_NONE, BASE_NONE, NULL, 0,
17013         "h245.NULL", HFILL }},
17014     { &hf_h245_crc20bit,
17015       { "crc20bit", "h245.crc20bit",
17016         FT_NONE, BASE_NONE, NULL, 0,
17017         "h245.NULL", HFILL }},
17018     { &hf_h245_crc28bit,
17019       { "crc28bit", "h245.crc28bit",
17020         FT_NONE, BASE_NONE, NULL, 0,
17021         "h245.NULL", HFILL }},
17022     { &hf_h245_crc8bit,
17023       { "crc8bit", "h245.crc8bit",
17024         FT_NONE, BASE_NONE, NULL, 0,
17025         "h245.NULL", HFILL }},
17026     { &hf_h245_crc16bit,
17027       { "crc16bit", "h245.crc16bit",
17028         FT_NONE, BASE_NONE, NULL, 0,
17029         "h245.NULL", HFILL }},
17030     { &hf_h245_crc32bit,
17031       { "crc32bit", "h245.crc32bit",
17032         FT_NONE, BASE_NONE, NULL, 0,
17033         "h245.NULL", HFILL }},
17034     { &hf_h245_crcNotUsed,
17035       { "crcNotUsed", "h245.crcNotUsed",
17036         FT_NONE, BASE_NONE, NULL, 0,
17037         "h245.NULL", HFILL }},
17038     { &hf_h245_rcpcCodeRate,
17039       { "rcpcCodeRate", "h245.rcpcCodeRate",
17040         FT_UINT32, BASE_DEC, NULL, 0,
17041         "h245.INTEGER_8_32", HFILL }},
17042     { &hf_h245_noArq,
17043       { "noArq", "h245.noArq",
17044         FT_NONE, BASE_NONE, NULL, 0,
17045         "h245.NULL", HFILL }},
17046     { &hf_h245_typeIArq,
17047       { "typeIArq", "h245.typeIArq",
17048         FT_NONE, BASE_NONE, NULL, 0,
17049         "h245.H223AnnexCArqParameters", HFILL }},
17050     { &hf_h245_typeIIArq,
17051       { "typeIIArq", "h245.typeIIArq",
17052         FT_NONE, BASE_NONE, NULL, 0,
17053         "h245.H223AnnexCArqParameters", HFILL }},
17054     { &hf_h245_arqType,
17055       { "arqType", "h245.arqType",
17056         FT_UINT32, BASE_DEC, VALS(h245_ArqType_vals), 0,
17057         "h245.ArqType", HFILL }},
17058     { &hf_h245_alsduSplitting,
17059       { "alsduSplitting", "h245.alsduSplitting",
17060         FT_BOOLEAN, 8, NULL, 0,
17061         "h245.BOOLEAN", HFILL }},
17062     { &hf_h245_rsCodeCorrection,
17063       { "rsCodeCorrection", "h245.rsCodeCorrection",
17064         FT_UINT32, BASE_DEC, NULL, 0,
17065         "h245.INTEGER_0_127", HFILL }},
17066     { &hf_h245_aL2HeaderFEC,
17067       { "headerFEC", "h245.headerFEC",
17068         FT_UINT32, BASE_DEC, VALS(h245_AL2HeaderFEC_vals), 0,
17069         "h245.AL2HeaderFEC", HFILL }},
17070     { &hf_h245_sebch16_5,
17071       { "sebch16-5", "h245.sebch16_5",
17072         FT_NONE, BASE_NONE, NULL, 0,
17073         "h245.NULL", HFILL }},
17074     { &hf_h245_headerFormat,
17075       { "headerFormat", "h245.headerFormat",
17076         FT_UINT32, BASE_DEC, VALS(h245_T_headerFormat_vals), 0,
17077         "h245.T_headerFormat", HFILL }},
17078     { &hf_h245_crlength2,
17079       { "crcLength", "h245.crcLength",
17080         FT_UINT32, BASE_DEC, VALS(h245_AL3CrcLength_vals), 0,
17081         "h245.AL3CrcLength", HFILL }},
17082     { &hf_h245_numberOfRetransmissions,
17083       { "numberOfRetransmissions", "h245.numberOfRetransmissions",
17084         FT_UINT32, BASE_DEC, VALS(h245_T_numberOfRetransmissions_vals), 0,
17085         "h245.T_numberOfRetransmissions", HFILL }},
17086     { &hf_h245_finite,
17087       { "finite", "h245.finite",
17088         FT_UINT32, BASE_DEC, NULL, 0,
17089         "h245.INTEGER_0_16", HFILL }},
17090     { &hf_h245_infinite,
17091       { "infinite", "h245.infinite",
17092         FT_NONE, BASE_NONE, NULL, 0,
17093         "h245.NULL", HFILL }},
17094     { &hf_h245_sendBufferSize,
17095       { "sendBufferSize", "h245.sendBufferSize",
17096         FT_UINT32, BASE_DEC, NULL, 0,
17097         "h245.INTEGER_0_16777215", HFILL }},
17098     { &hf_h245_hdlcParameters,
17099       { "hdlcParameters", "h245.hdlcParameters",
17100         FT_NONE, BASE_NONE, NULL, 0,
17101         "h245.V76HDLCParameters", HFILL }},
17102     { &hf_h245_suspendResume,
17103       { "suspendResume", "h245.suspendResume",
17104         FT_UINT32, BASE_DEC, VALS(h245_T_suspendResume_vals), 0,
17105         "h245.T_suspendResume", HFILL }},
17106     { &hf_h245_noSuspendResume,
17107       { "noSuspendResume", "h245.noSuspendResume",
17108         FT_NONE, BASE_NONE, NULL, 0,
17109         "h245.NULL", HFILL }},
17110     { &hf_h245_suspendResumewAddress,
17111       { "suspendResumewAddress", "h245.suspendResumewAddress",
17112         FT_NONE, BASE_NONE, NULL, 0,
17113         "h245.NULL", HFILL }},
17114     { &hf_h245_suspendResumewoAddress,
17115       { "suspendResumewoAddress", "h245.suspendResumewoAddress",
17116         FT_NONE, BASE_NONE, NULL, 0,
17117         "h245.NULL", HFILL }},
17118     { &hf_h245_uIH,
17119       { "uIH", "h245.uIH",
17120         FT_BOOLEAN, 8, NULL, 0,
17121         "h245.BOOLEAN", HFILL }},
17122     { &hf_h245_v76_mode,
17123       { "mode", "h245.mode",
17124         FT_UINT32, BASE_DEC, VALS(h245_V76LCP_mode_vals), 0,
17125         "h245.V76LCP_mode", HFILL }},
17126     { &hf_h245_eRM,
17127       { "eRM", "h245.eRM",
17128         FT_NONE, BASE_NONE, NULL, 0,
17129         "h245.T_eRM", HFILL }},
17130     { &hf_h245_windowSize,
17131       { "windowSize", "h245.windowSize",
17132         FT_UINT32, BASE_DEC, NULL, 0,
17133         "h245.INTEGER_1_127", HFILL }},
17134     { &hf_h245_recovery,
17135       { "recovery", "h245.recovery",
17136         FT_UINT32, BASE_DEC, VALS(h245_T_recovery_vals), 0,
17137         "h245.T_recovery", HFILL }},
17138     { &hf_h245_rej,
17139       { "rej", "h245.rej",
17140         FT_NONE, BASE_NONE, NULL, 0,
17141         "h245.NULL", HFILL }},
17142     { &hf_h245_sREJ,
17143       { "sREJ", "h245.sREJ",
17144         FT_NONE, BASE_NONE, NULL, 0,
17145         "h245.NULL", HFILL }},
17146     { &hf_h245_mSREJ,
17147       { "mSREJ", "h245.mSREJ",
17148         FT_NONE, BASE_NONE, NULL, 0,
17149         "h245.NULL", HFILL }},
17150     { &hf_h245_uNERM,
17151       { "uNERM", "h245.uNERM",
17152         FT_NONE, BASE_NONE, NULL, 0,
17153         "h245.NULL", HFILL }},
17154     { &hf_h245_v75Parameters,
17155       { "v75Parameters", "h245.v75Parameters",
17156         FT_NONE, BASE_NONE, NULL, 0,
17157         "h245.V75Parameters", HFILL }},
17158     { &hf_h245_crcLength,
17159       { "crcLength", "h245.crcLength",
17160         FT_UINT32, BASE_DEC, VALS(h245_CRCLength_vals), 0,
17161         "h245.CRCLength", HFILL }},
17162     { &hf_h245_n401,
17163       { "n401", "h245.n401",
17164         FT_UINT32, BASE_DEC, NULL, 0,
17165         "h245.INTEGER_1_4095", HFILL }},
17166     { &hf_h245_loopbackTestProcedure,
17167       { "loopbackTestProcedure", "h245.loopbackTestProcedure",
17168         FT_BOOLEAN, 8, NULL, 0,
17169         "h245.BOOLEAN", HFILL }},
17170     { &hf_h245_sessionID_0_255,
17171       { "sessionID", "h245.sessionID",
17172         FT_UINT32, BASE_DEC, NULL, 0,
17173         "h245.INTEGER_0_255", HFILL }},
17174     { &hf_h245_associatedSessionID,
17175       { "associatedSessionID", "h245.associatedSessionID",
17176         FT_UINT32, BASE_DEC, NULL, 0,
17177         "h245.INTEGER_1_255", HFILL }},
17178     { &hf_h245_mediaChannel,
17179       { "mediaChannel", "h245.mediaChannel",
17180         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
17181         "h245.T_mediaChannel", HFILL }},
17182     { &hf_h245_mediaGuaranteedDelivery,
17183       { "mediaGuaranteedDelivery", "h245.mediaGuaranteedDelivery",
17184         FT_BOOLEAN, 8, NULL, 0,
17185         "h245.BOOLEAN", HFILL }},
17186     { &hf_h245_mediaControlChannel,
17187       { "mediaControlChannel", "h245.mediaControlChannel",
17188         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
17189         "h245.T_mediaControlChannel", HFILL }},
17190     { &hf_h245_mediaControlGuaranteedDelivery,
17191       { "mediaControlGuaranteedDelivery", "h245.mediaControlGuaranteedDelivery",
17192         FT_BOOLEAN, 8, NULL, 0,
17193         "h245.BOOLEAN", HFILL }},
17194     { &hf_h245_destination,
17195       { "destination", "h245.destination",
17196         FT_NONE, BASE_NONE, NULL, 0,
17197         "h245.TerminalLabel", HFILL }},
17198     { &hf_h245_mediaPacketization,
17199       { "mediaPacketization", "h245.mediaPacketization",
17200         FT_UINT32, BASE_DEC, VALS(h245_T_mediaPacketization_vals), 0,
17201         "h245.T_mediaPacketization", HFILL }},
17202     { &hf_h245_h261aVideoPacketizationFlag,
17203       { "h261aVideoPacketization", "h245.h261aVideoPacketization",
17204         FT_NONE, BASE_NONE, NULL, 0,
17205         "h245.NULL", HFILL }},
17206     { &hf_h245_rtpPayloadType,
17207       { "rtpPayloadType", "h245.rtpPayloadType",
17208         FT_NONE, BASE_NONE, NULL, 0,
17209         "h245.RTPPayloadType", HFILL }},
17210     { &hf_h245_source,
17211       { "source", "h245.source",
17212         FT_NONE, BASE_NONE, NULL, 0,
17213         "h245.TerminalLabel", HFILL }},
17214     { &hf_h245_payloadDescriptor,
17215       { "payloadDescriptor", "h245.payloadDescriptor",
17216         FT_UINT32, BASE_DEC, VALS(h245_T_payloadDescriptor_vals), 0,
17217         "h245.T_payloadDescriptor", HFILL }},
17218     { &hf_h245_rfc_number,
17219       { "rfc-number", "h245.rfc_number",
17220         FT_UINT32, BASE_DEC, VALS(h245_RFC_number_vals), 0,
17221         "h245.INTEGER_1_32768_", HFILL }},
17222     { &hf_h245_oid,
17223       { "oid", "h245.oid",
17224         FT_OID, BASE_NONE, NULL, 0,
17225         "h245.OBJECT_IDENTIFIER", HFILL }},
17226     { &hf_h245_payloadType,
17227       { "payloadType", "h245.payloadType",
17228         FT_UINT32, BASE_DEC, NULL, 0,
17229         "h245.INTEGER_0_127", HFILL }},
17230     { &hf_h245_secondaryEncoding,
17231       { "secondaryEncoding", "h245.secondaryEncoding",
17232         FT_UINT32, BASE_DEC, VALS(h245_DataType_vals), 0,
17233         "h245.DataType", HFILL }},
17234     { &hf_h245_rtpRedundancyEncoding,
17235       { "rtpRedundancyEncoding", "h245.rtpRedundancyEncoding",
17236         FT_NONE, BASE_NONE, NULL, 0,
17237         "h245.T_rtpRedundancyEncoding", HFILL }},
17238     { &hf_h245_primary,
17239       { "primary", "h245.primary",
17240         FT_NONE, BASE_NONE, NULL, 0,
17241         "h245.RedundancyEncodingElement", HFILL }},
17242     { &hf_h245_secondary,
17243       { "secondary", "h245.secondary",
17244         FT_UINT32, BASE_DEC, NULL, 0,
17245         "h245.SEQUENCE_OF_RedundancyEncodingElement", HFILL }},
17246     { &hf_h245_secondary_item,
17247       { "Item", "h245.secondary_item",
17248         FT_NONE, BASE_NONE, NULL, 0,
17249         "h245.RedundancyEncodingElement", HFILL }},
17250     { &hf_h245_elements,
17251       { "elements", "h245.elements",
17252         FT_UINT32, BASE_DEC, NULL, 0,
17253         "h245.SEQUENCE_OF_MultiplePayloadStreamElement", HFILL }},
17254     { &hf_h245_elements_item,
17255       { "Item", "h245.elements_item",
17256         FT_NONE, BASE_NONE, NULL, 0,
17257         "h245.MultiplePayloadStreamElement", HFILL }},
17258     { &hf_h245_dep_rfc2733,
17259       { "rfc2733", "h245.rfc2733",
17260         FT_NONE, BASE_NONE, NULL, 0,
17261         "h245.RFC2733Data", HFILL }},
17262     { &hf_h245_fec_data_mode,
17263       { "mode", "h245.mode",
17264         FT_UINT32, BASE_DEC, VALS(h245_FECdata_mode_vals), 0,
17265         "h245.FECdata_mode", HFILL }},
17266     { &hf_h245_redundancyEncodingFlag,
17267       { "redundancyEncoding", "h245.redundancyEncoding",
17268         FT_NONE, BASE_NONE, NULL, 0,
17269         "h245.NULL", HFILL }},
17270     { &hf_h245_differentPort,
17271       { "differentPort", "h245.differentPort",
17272         FT_NONE, BASE_NONE, NULL, 0,
17273         "h245.T_differentPort", HFILL }},
17274     { &hf_h245_protectedSessionID,
17275       { "protectedSessionID", "h245.protectedSessionID",
17276         FT_UINT32, BASE_DEC, NULL, 0,
17277         "h245.INTEGER_1_255", HFILL }},
17278     { &hf_h245_protectedPayloadType,
17279       { "protectedPayloadType", "h245.protectedPayloadType",
17280         FT_UINT32, BASE_DEC, NULL, 0,
17281         "h245.INTEGER_0_127", HFILL }},
17282     { &hf_h245_samePort,
17283       { "samePort", "h245.samePort",
17284         FT_NONE, BASE_NONE, NULL, 0,
17285         "h245.T_samePort", HFILL }},
17286     { &hf_h245_separateStream,
17287       { "separateStream", "h245.separateStream",
17288         FT_UINT32, BASE_DEC, VALS(h245_DepSeparateStream_vals), 0,
17289         "h245.DepSeparateStream", HFILL }},
17290     { &hf_h245_rfc2733,
17291       { "rfc2733", "h245.rfc2733",
17292         FT_NONE, BASE_NONE, NULL, 0,
17293         "h245.T_rfc2733", HFILL }},
17294     { &hf_h245_pktMode,
17295       { "pktMode", "h245.pktMode",
17296         FT_UINT32, BASE_DEC, VALS(h245_T_pktMode_vals), 0,
17297         "h245.T_pktMode", HFILL }},
17298     { &hf_h245_rfc2198coding,
17299       { "rfc2198coding", "h245.rfc2198coding",
17300         FT_NONE, BASE_NONE, NULL, 0,
17301         "h245.NULL", HFILL }},
17302     { &hf_h245_mode_rfc2733sameport,
17303       { "rfc2733sameport", "h245.rfc2733sameport",
17304         FT_NONE, BASE_NONE, NULL, 0,
17305         "h245.T_mode_rfc2733sameport", HFILL }},
17306     { &hf_h245_mode_rfc2733diffport,
17307       { "rfc2733diffport", "h245.rfc2733diffport",
17308         FT_NONE, BASE_NONE, NULL, 0,
17309         "h245.T_mode_rfc2733diffport", HFILL }},
17310     { &hf_h245_protectedChannel,
17311       { "protectedChannel", "h245.protectedChannel",
17312         FT_UINT32, BASE_DEC, NULL, 0,
17313         "h245.LogicalChannelNumber", HFILL }},
17314     { &hf_h245_unicastAddress,
17315       { "unicastAddress", "h245.unicastAddress",
17316         FT_UINT32, BASE_DEC, VALS(h245_UnicastAddress_vals), 0,
17317         "h245.UnicastAddress", HFILL }},
17318     { &hf_h245_multicastAddress,
17319       { "multicastAddress", "h245.multicastAddress",
17320         FT_UINT32, BASE_DEC, VALS(h245_MulticastAddress_vals), 0,
17321         "h245.MulticastAddress", HFILL }},
17322     { &hf_h245_iPAddress,
17323       { "iPAddress", "h245.iPAddress",
17324         FT_NONE, BASE_NONE, NULL, 0,
17325         "h245.T_iPAddress", HFILL }},
17326     { &hf_h245_ip4_network,
17327       { "network", "h245.network",
17328         FT_IPv4, BASE_NONE, NULL, 0,
17329         "h245.Ipv4_network", HFILL }},
17330     { &hf_h245_tsapIdentifier,
17331       { "tsapIdentifier", "h245.tsapIdentifier",
17332         FT_UINT32, BASE_DEC, NULL, 0,
17333         "h245.TsapIdentifier", HFILL }},
17334     { &hf_h245_iPXAddress,
17335       { "iPXAddress", "h245.iPXAddress",
17336         FT_NONE, BASE_NONE, NULL, 0,
17337         "h245.T_iPXAddress", HFILL }},
17338     { &hf_h245_node,
17339       { "node", "h245.node",
17340         FT_BYTES, BASE_HEX, NULL, 0,
17341         "h245.OCTET_STRING_SIZE_6", HFILL }},
17342     { &hf_h245_netnum,
17343       { "netnum", "h245.netnum",
17344         FT_BYTES, BASE_HEX, NULL, 0,
17345         "h245.OCTET_STRING_SIZE_4", HFILL }},
17346     { &hf_h245_ipx_tsapIdentifier,
17347       { "tsapIdentifier", "h245.tsapIdentifier",
17348         FT_BYTES, BASE_HEX, NULL, 0,
17349         "h245.OCTET_STRING_SIZE_2", HFILL }},
17350     { &hf_h245_iP6Address,
17351       { "iP6Address", "h245.iP6Address",
17352         FT_NONE, BASE_NONE, NULL, 0,
17353         "h245.T_iP6Address", HFILL }},
17354     { &hf_h245_ip6_network,
17355       { "network", "h245.network",
17356         FT_IPv6, BASE_NONE, NULL, 0,
17357         "h245.OCTET_STRING_SIZE_16", HFILL }},
17358     { &hf_h245_ipv6_tsapIdentifier,
17359       { "tsapIdentifier", "h245.tsapIdentifier",
17360         FT_UINT32, BASE_DEC, NULL, 0,
17361         "h245.INTEGER_0_65535", HFILL }},
17362     { &hf_h245_netBios,
17363       { "netBios", "h245.netBios",
17364         FT_BYTES, BASE_HEX, NULL, 0,
17365         "h245.OCTET_STRING_SIZE_16", HFILL }},
17366     { &hf_h245_iPSourceRouteAddress,
17367       { "iPSourceRouteAddress", "h245.iPSourceRouteAddress",
17368         FT_NONE, BASE_NONE, NULL, 0,
17369         "h245.T_iPSourceRouteAddress", HFILL }},
17370     { &hf_h245_routing,
17371       { "routing", "h245.routing",
17372         FT_UINT32, BASE_DEC, VALS(h245_T_routing_vals), 0,
17373         "h245.T_routing", HFILL }},
17374     { &hf_h245_strict,
17375       { "strict", "h245.strict",
17376         FT_NONE, BASE_NONE, NULL, 0,
17377         "h245.NULL", HFILL }},
17378     { &hf_h245_loose,
17379       { "loose", "h245.loose",
17380         FT_NONE, BASE_NONE, NULL, 0,
17381         "h245.NULL", HFILL }},
17382     { &hf_h245_network,
17383       { "network", "h245.network",
17384         FT_BYTES, BASE_HEX, NULL, 0,
17385         "h245.OCTET_STRING_SIZE_4", HFILL }},
17386     { &hf_h245_iPSrcRoute_tsapIdentifier,
17387       { "tsapIdentifier", "h245.tsapIdentifier",
17388         FT_UINT32, BASE_DEC, NULL, 0,
17389         "h245.INTEGER_0_65535", HFILL }},
17390     { &hf_h245_route,
17391       { "route", "h245.route",
17392         FT_UINT32, BASE_DEC, NULL, 0,
17393         "h245.T_route", HFILL }},
17394     { &hf_h245_route_item,
17395       { "Item", "h245.route_item",
17396         FT_BYTES, BASE_HEX, NULL, 0,
17397         "h245.OCTET_STRING_SIZE_4", HFILL }},
17398     { &hf_h245_nsap,
17399       { "nsap", "h245.nsap",
17400         FT_BYTES, BASE_HEX, NULL, 0,
17401         "h245.OCTET_STRING_SIZE_1_20", HFILL }},
17402     { &hf_h245_nonStandardAddress,
17403       { "nonStandardAddress", "h245.nonStandardAddress",
17404         FT_NONE, BASE_NONE, NULL, 0,
17405         "h245.NonStandardParameter", HFILL }},
17406     { &hf_h245_mIPAddress,
17407       { "iPAddress", "h245.iPAddress",
17408         FT_NONE, BASE_NONE, NULL, 0,
17409         "h245.MIPAddress", HFILL }},
17410     { &hf_h245_mip4_network,
17411       { "network", "h245.network",
17412         FT_IPv4, BASE_NONE, NULL, 0,
17413         "h245.OCTET_STRING_SIZE_4", HFILL }},
17414     { &hf_h245_multicast_tsapIdentifier,
17415       { "tsapIdentifier", "h245.tsapIdentifier",
17416         FT_UINT32, BASE_DEC, NULL, 0,
17417         "h245.INTEGER_0_65535", HFILL }},
17418     { &hf_h245_mIP6Address,
17419       { "iP6Address", "h245.iP6Address",
17420         FT_NONE, BASE_NONE, NULL, 0,
17421         "h245.MIP6Address", HFILL }},
17422     { &hf_h245_mip6_network,
17423       { "network", "h245.network",
17424         FT_IPv6, BASE_NONE, NULL, 0,
17425         "h245.OCTET_STRING_SIZE_16", HFILL }},
17426     { &hf_h245_multicast_IPv6_tsapIdentifier,
17427       { "tsapIdentifier", "h245.tsapIdentifier",
17428         FT_UINT32, BASE_DEC, NULL, 0,
17429         "h245.INTEGER_0_65535", HFILL }},
17430     { &hf_h245_synchFlag,
17431       { "synchFlag", "h245.synchFlag",
17432         FT_UINT32, BASE_DEC, NULL, 0,
17433         "h245.INTEGER_0_255", HFILL }},
17434     { &hf_h245_h235Key,
17435       { "h235Key", "h245.h235Key",
17436         FT_BYTES, BASE_HEX, NULL, 0,
17437         "h245.OCTET_STRING_SIZE_1_65535", HFILL }},
17438     { &hf_h245_escrowentry,
17439       { "escrowentry", "h245.escrowentry",
17440         FT_UINT32, BASE_DEC, NULL, 0,
17441         "h245.SEQUENCE_SIZE_1_256_OF_EscrowData", HFILL }},
17442     { &hf_h245_escrowentry_item,
17443       { "Item", "h245.escrowentry_item",
17444         FT_NONE, BASE_NONE, NULL, 0,
17445         "h245.EscrowData", HFILL }},
17446     { &hf_h245_genericParameter,
17447       { "genericParameter", "h245.genericParameter",
17448         FT_NONE, BASE_NONE, NULL, 0,
17449         "h245.GenericParameter", HFILL }},
17450     { &hf_h245_escrowID,
17451       { "escrowID", "h245.escrowID",
17452         FT_OID, BASE_NONE, NULL, 0,
17453         "h245.OBJECT_IDENTIFIER", HFILL }},
17454     { &hf_h245_escrowValue,
17455       { "escrowValue", "h245.escrowValue",
17456         FT_BYTES, BASE_HEX, NULL, 0,
17457         "h245.BIT_STRING_SIZE_1_65535", HFILL }},
17458     { &hf_h245_olc_ack_fw_lcn,
17459       { "forwardLogicalChannelNumber", "h245.forwardLogicalChannelNumber",
17460         FT_UINT32, BASE_DEC, NULL, 0,
17461         "h245.OLC_ack_fw_lcn", HFILL }},
17462     { &hf_h245_olc_ack_reverseLogicalChannelParameters,
17463       { "reverseLogicalChannelParameters", "h245.reverseLogicalChannelParameters",
17464         FT_NONE, BASE_NONE, NULL, 0,
17465         "h245.OLC_ack_reverseLogicalChannelParameters", HFILL }},
17466     { &hf_h245_reverseLogicalChannelNumber,
17467       { "reverseLogicalChannelNumber", "h245.reverseLogicalChannelNumber",
17468         FT_UINT32, BASE_DEC, NULL, 0,
17469         "h245.T_reverseLogicalChannelNumber", HFILL }},
17470     { &hf_h245_olc_ack_multiplexParameters,
17471       { "multiplexParameters", "h245.multiplexParameters",
17472         FT_UINT32, BASE_DEC, VALS(h245_T_olc_ack_multiplexParameters_vals), 0,
17473         "h245.T_olc_ack_multiplexParameters", HFILL }},
17474     { &hf_h245_forwardMultiplexAckParameters,
17475       { "forwardMultiplexAckParameters", "h245.forwardMultiplexAckParameters",
17476         FT_UINT32, BASE_DEC, VALS(h245_T_forwardMultiplexAckParameters_vals), 0,
17477         "h245.T_forwardMultiplexAckParameters", HFILL }},
17478     { &hf_h245_h2250LogicalChannelAckParameters,
17479       { "h2250LogicalChannelAckParameters", "h245.h2250LogicalChannelAckParameters",
17480         FT_NONE, BASE_NONE, NULL, 0,
17481         "h245.H2250LogicalChannelAckParameters", HFILL }},
17482     { &hf_h245_forwardLogicalChannelNumber,
17483       { "forwardLogicalChannelNumber", "h245.forwardLogicalChannelNumber",
17484         FT_UINT32, BASE_DEC, NULL, 0,
17485         "h245.LogicalChannelNumber", HFILL }},
17486     { &hf_h245_olc_rej_cause,
17487       { "cause", "h245.cause",
17488         FT_UINT32, BASE_DEC, VALS(h245_OpenLogicalChannelRejectCause_vals), 0,
17489         "h245.OpenLogicalChannelRejectCause", HFILL }},
17490     { &hf_h245_unsuitableReverseParameters,
17491       { "unsuitableReverseParameters", "h245.unsuitableReverseParameters",
17492         FT_NONE, BASE_NONE, NULL, 0,
17493         "h245.NULL", HFILL }},
17494     { &hf_h245_dataTypeNotSupported,
17495       { "dataTypeNotSupported", "h245.dataTypeNotSupported",
17496         FT_NONE, BASE_NONE, NULL, 0,
17497         "h245.NULL", HFILL }},
17498     { &hf_h245_dataTypeNotAvailable,
17499       { "dataTypeNotAvailable", "h245.dataTypeNotAvailable",
17500         FT_NONE, BASE_NONE, NULL, 0,
17501         "h245.NULL", HFILL }},
17502     { &hf_h245_unknownDataType,
17503       { "unknownDataType", "h245.unknownDataType",
17504         FT_NONE, BASE_NONE, NULL, 0,
17505         "h245.NULL", HFILL }},
17506     { &hf_h245_dataTypeALCombinationNotSupported,
17507       { "dataTypeALCombinationNotSupported", "h245.dataTypeALCombinationNotSupported",
17508         FT_NONE, BASE_NONE, NULL, 0,
17509         "h245.NULL", HFILL }},
17510     { &hf_h245_multicastChannelNotAllowed,
17511       { "multicastChannelNotAllowed", "h245.multicastChannelNotAllowed",
17512         FT_NONE, BASE_NONE, NULL, 0,
17513         "h245.NULL", HFILL }},
17514     { &hf_h245_insufficientBandwidth,
17515       { "insufficientBandwidth", "h245.insufficientBandwidth",
17516         FT_NONE, BASE_NONE, NULL, 0,
17517         "h245.NULL", HFILL }},
17518     { &hf_h245_separateStackEstablishmentFailed,
17519       { "separateStackEstablishmentFailed", "h245.separateStackEstablishmentFailed",
17520         FT_NONE, BASE_NONE, NULL, 0,
17521         "h245.NULL", HFILL }},
17522     { &hf_h245_invalidSessionID,
17523       { "invalidSessionID", "h245.invalidSessionID",
17524         FT_NONE, BASE_NONE, NULL, 0,
17525         "h245.NULL", HFILL }},
17526     { &hf_h245_masterSlaveConflict,
17527       { "masterSlaveConflict", "h245.masterSlaveConflict",
17528         FT_NONE, BASE_NONE, NULL, 0,
17529         "h245.NULL", HFILL }},
17530     { &hf_h245_waitForCommunicationMode,
17531       { "waitForCommunicationMode", "h245.waitForCommunicationMode",
17532         FT_NONE, BASE_NONE, NULL, 0,
17533         "h245.NULL", HFILL }},
17534     { &hf_h245_invalidDependentChannel,
17535       { "invalidDependentChannel", "h245.invalidDependentChannel",
17536         FT_NONE, BASE_NONE, NULL, 0,
17537         "h245.NULL", HFILL }},
17538     { &hf_h245_replacementForRejected,
17539       { "replacementForRejected", "h245.replacementForRejected",
17540         FT_NONE, BASE_NONE, NULL, 0,
17541         "h245.NULL", HFILL }},
17542     { &hf_h245_securityDenied,
17543       { "securityDenied", "h245.securityDenied",
17544         FT_NONE, BASE_NONE, NULL, 0,
17545         "h245.NULL", HFILL }},
17546     { &hf_h245_sessionID,
17547       { "sessionID", "h245.sessionID",
17548         FT_UINT32, BASE_DEC, NULL, 0,
17549         "h245.INTEGER_1_255", HFILL }},
17550     { &hf_h245_ack_mediaChannel,
17551       { "mediaChannel", "h245.mediaChannel",
17552         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
17553         "h245.Ack_mediaChannel", HFILL }},
17554     { &hf_h245_ack_mediaControlChannel,
17555       { "mediaControlChannel", "h245.mediaControlChannel",
17556         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
17557         "h245.Ack_mediaControlChannel", HFILL }},
17558     { &hf_h245_flowControlToZero,
17559       { "flowControlToZero", "h245.flowControlToZero",
17560         FT_BOOLEAN, 8, NULL, 0,
17561         "h245.BOOLEAN", HFILL }},
17562     { &hf_h245_cLC_source,
17563       { "source", "h245.source",
17564         FT_UINT32, BASE_DEC, VALS(h245_T_cLC_source_vals), 0,
17565         "h245.T_cLC_source", HFILL }},
17566     { &hf_h245_user,
17567       { "user", "h245.user",
17568         FT_NONE, BASE_NONE, NULL, 0,
17569         "h245.NULL", HFILL }},
17570     { &hf_h245_lcse,
17571       { "lcse", "h245.lcse",
17572         FT_NONE, BASE_NONE, NULL, 0,
17573         "h245.NULL", HFILL }},
17574     { &hf_h245_clc_reason,
17575       { "reason", "h245.reason",
17576         FT_UINT32, BASE_DEC, VALS(h245_Clc_reason_vals), 0,
17577         "h245.Clc_reason", HFILL }},
17578     { &hf_h245_unknown,
17579       { "unknown", "h245.unknown",
17580         FT_NONE, BASE_NONE, NULL, 0,
17581         "h245.NULL", HFILL }},
17582     { &hf_h245_reopen,
17583       { "reopen", "h245.reopen",
17584         FT_NONE, BASE_NONE, NULL, 0,
17585         "h245.NULL", HFILL }},
17586     { &hf_h245_reservationFailure,
17587       { "reservationFailure", "h245.reservationFailure",
17588         FT_NONE, BASE_NONE, NULL, 0,
17589         "h245.NULL", HFILL }},
17590     { &hf_h245_qosCapability,
17591       { "qosCapability", "h245.qosCapability",
17592         FT_NONE, BASE_NONE, NULL, 0,
17593         "h245.QOSCapability", HFILL }},
17594     { &hf_h245_reason,
17595       { "reason", "h245.reason",
17596         FT_UINT32, BASE_DEC, VALS(h245_T_reason_vals), 0,
17597         "h245.T_reason", HFILL }},
17598     { &hf_h245_normal,
17599       { "normal", "h245.normal",
17600         FT_NONE, BASE_NONE, NULL, 0,
17601         "h245.NULL", HFILL }},
17602     { &hf_h245_req_chan_clos_rej_cause,
17603       { "cause", "h245.cause",
17604         FT_UINT32, BASE_DEC, VALS(h245_RequestChannelCloseRejectCause_vals), 0,
17605         "h245.RequestChannelCloseRejectCause", HFILL }},
17606     { &hf_h245_multiplexEntryDescriptors,
17607       { "multiplexEntryDescriptors", "h245.multiplexEntryDescriptors",
17608         FT_UINT32, BASE_DEC, NULL, 0,
17609         "h245.SET_SIZE_1_15_OF_MultiplexEntryDescriptor", HFILL }},
17610     { &hf_h245_multiplexEntryDescriptors_item,
17611       { "Item", "h245.multiplexEntryDescriptors_item",
17612         FT_NONE, BASE_NONE, NULL, 0,
17613         "h245.MultiplexEntryDescriptor", HFILL }},
17614     { &hf_h245_multiplexTableEntryNumber,
17615       { "multiplexTableEntryNumber", "h245.multiplexTableEntryNumber",
17616         FT_UINT32, BASE_DEC, NULL, 0,
17617         "h245.MultiplexTableEntryNumber", HFILL }},
17618     { &hf_h245_elementList,
17619       { "elementList", "h245.elementList",
17620         FT_UINT32, BASE_DEC, NULL, 0,
17621         "h245.T_elementList", HFILL }},
17622     { &hf_h245_elementList_item,
17623       { "Item", "h245.elementList_item",
17624         FT_NONE, BASE_NONE, NULL, 0,
17625         "h245.MultiplexElement", HFILL }},
17626     { &hf_h245_me_type,
17627       { "type", "h245.type",
17628         FT_UINT32, BASE_DEC, VALS(h245_Me_type_vals), 0,
17629         "h245.Me_type", HFILL }},
17630     { &hf_h245_logicalChannelNum,
17631       { "logicalChannelNumber", "h245.logicalChannelNumber",
17632         FT_UINT32, BASE_DEC, NULL, 0,
17633         "h245.T_logicalChannelNum", HFILL }},
17634     { &hf_h245_subElementList,
17635       { "subElementList", "h245.subElementList",
17636         FT_UINT32, BASE_DEC, NULL, 0,
17637         "h245.T_subElementList", HFILL }},
17638     { &hf_h245_subElementList_item,
17639       { "Item", "h245.subElementList_item",
17640         FT_NONE, BASE_NONE, NULL, 0,
17641         "h245.MultiplexElement", HFILL }},
17642     { &hf_h245_me_repeatCount,
17643       { "repeatCount", "h245.repeatCount",
17644         FT_UINT32, BASE_DEC, VALS(h245_ME_repeatCount_vals), 0,
17645         "h245.ME_repeatCount", HFILL }},
17646     { &hf_h245_me_repeatCount_finite,
17647       { "finite", "h245.finite",
17648         FT_UINT32, BASE_DEC, NULL, 0,
17649         "h245.ME_finiteRepeatCount", HFILL }},
17650     { &hf_h245_untilClosingFlag,
17651       { "untilClosingFlag", "h245.untilClosingFlag",
17652         FT_NONE, BASE_NONE, NULL, 0,
17653         "h245.T_untilClosingFlag", HFILL }},
17654     { &hf_h245_multiplexTableEntryNumbers,
17655       { "multiplexTableEntryNumber", "h245.multiplexTableEntryNumber",
17656         FT_UINT32, BASE_DEC, NULL, 0,
17657         "h245.SET_SIZE_1_15_OF_MultiplexTableEntryNumber", HFILL }},
17658     { &hf_h245_multiplexTableEntryNumbers_item,
17659       { "Item", "h245.multiplexTableEntryNumber_item",
17660         FT_UINT32, BASE_DEC, NULL, 0,
17661         "h245.MultiplexTableEntryNumber", HFILL }},
17662     { &hf_h245_sendRejectionDescriptions,
17663       { "rejectionDescriptions", "h245.rejectionDescriptions",
17664         FT_UINT32, BASE_DEC, NULL, 0,
17665         "h245.SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions", HFILL }},
17666     { &hf_h245_sendRejectionDescriptions_item,
17667       { "Item", "h245.rejectionDescriptions_item",
17668         FT_NONE, BASE_NONE, NULL, 0,
17669         "h245.MultiplexEntryRejectionDescriptions", HFILL }},
17670     { &hf_h245_mux_rej_cause,
17671       { "cause", "h245.cause",
17672         FT_UINT32, BASE_DEC, VALS(h245_MultiplexEntryRejectionDescriptionsCause_vals), 0,
17673         "h245.MultiplexEntryRejectionDescriptionsCause", HFILL }},
17674     { &hf_h245_unspecifiedCause,
17675       { "unspecifiedCause", "h245.unspecifiedCause",
17676         FT_NONE, BASE_NONE, NULL, 0,
17677         "h245.NULL", HFILL }},
17678     { &hf_h245_descriptorTooComplex,
17679       { "descriptorTooComplex", "h245.descriptorTooComplex",
17680         FT_NONE, BASE_NONE, NULL, 0,
17681         "h245.NULL", HFILL }},
17682     { &hf_h245_entryNumbers,
17683       { "entryNumbers", "h245.entryNumbers",
17684         FT_UINT32, BASE_DEC, NULL, 0,
17685         "h245.SET_SIZE_1_15_OF_MultiplexTableEntryNumber", HFILL }},
17686     { &hf_h245_entryNumbers_item,
17687       { "Item", "h245.entryNumbers_item",
17688         FT_UINT32, BASE_DEC, NULL, 0,
17689         "h245.MultiplexTableEntryNumber", HFILL }},
17690     { &hf_h245_rejectionDescriptions,
17691       { "rejectionDescriptions", "h245.rejectionDescriptions",
17692         FT_UINT32, BASE_DEC, NULL, 0,
17693         "h245.SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions", HFILL }},
17694     { &hf_h245_rejectionDescriptions_item,
17695       { "Item", "h245.rejectionDescriptions_item",
17696         FT_NONE, BASE_NONE, NULL, 0,
17697         "h245.RequestMultiplexEntryRejectionDescriptions", HFILL }},
17698     { &hf_h245_req_mux_rej_cause,
17699       { "cause", "h245.cause",
17700         FT_UINT32, BASE_DEC, VALS(h245_RequestMultiplexEntryRejectionDescriptionsCause_vals), 0,
17701         "h245.RequestMultiplexEntryRejectionDescriptionsCause", HFILL }},
17702     { &hf_h245_requestedModes,
17703       { "requestedModes", "h245.requestedModes",
17704         FT_UINT32, BASE_DEC, NULL, 0,
17705         "h245.SEQUENCE_SIZE_1_256_OF_ModeDescription", HFILL }},
17706     { &hf_h245_requestedModes_item,
17707       { "Item", "h245.requestedModes_item",
17708         FT_UINT32, BASE_DEC, NULL, 0,
17709         "h245.ModeDescription", HFILL }},
17710     { &hf_h245_req_mode_ack_response,
17711       { "response", "h245.response",
17712         FT_UINT32, BASE_DEC, VALS(h245_Req_mode_ack_response_vals), 0,
17713         "h245.Req_mode_ack_response", HFILL }},
17714     { &hf_h245_willTransmitMostPreferredMode,
17715       { "willTransmitMostPreferredMode", "h245.willTransmitMostPreferredMode",
17716         FT_NONE, BASE_NONE, NULL, 0,
17717         "h245.NULL", HFILL }},
17718     { &hf_h245_willTransmitLessPreferredMode,
17719       { "willTransmitLessPreferredMode", "h245.willTransmitLessPreferredMode",
17720         FT_NONE, BASE_NONE, NULL, 0,
17721         "h245.NULL", HFILL }},
17722     { &hf_h245_req_rej_cause,
17723       { "cause", "h245.cause",
17724         FT_UINT32, BASE_DEC, VALS(h245_RequestModeRejectCause_vals), 0,
17725         "h245.RequestModeRejectCause", HFILL }},
17726     { &hf_h245_modeUnavailable,
17727       { "modeUnavailable", "h245.modeUnavailable",
17728         FT_NONE, BASE_NONE, NULL, 0,
17729         "h245.NULL", HFILL }},
17730     { &hf_h245_multipointConstraint,
17731       { "multipointConstraint", "h245.multipointConstraint",
17732         FT_NONE, BASE_NONE, NULL, 0,
17733         "h245.NULL", HFILL }},
17734     { &hf_h245_requestDenied,
17735       { "requestDenied", "h245.requestDenied",
17736         FT_NONE, BASE_NONE, NULL, 0,
17737         "h245.NULL", HFILL }},
17738     { &hf_h245_ModeDescription_item,
17739       { "Item", "h245.ModeDescription_item",
17740         FT_NONE, BASE_NONE, NULL, 0,
17741         "h245.ModeElement", HFILL }},
17742     { &hf_h245_videoMode,
17743       { "videoMode", "h245.videoMode",
17744         FT_UINT32, BASE_DEC, VALS(h245_VideoMode_vals), 0,
17745         "h245.VideoMode", HFILL }},
17746     { &hf_h245_audioMode,
17747       { "audioMode", "h245.audioMode",
17748         FT_UINT32, BASE_DEC, VALS(h245_AudioMode_vals), 0,
17749         "h245.AudioMode", HFILL }},
17750     { &hf_h245_dataMode,
17751       { "dataMode", "h245.dataMode",
17752         FT_NONE, BASE_NONE, NULL, 0,
17753         "h245.DataMode", HFILL }},
17754     { &hf_h245_encryptionMode,
17755       { "encryptionMode", "h245.encryptionMode",
17756         FT_UINT32, BASE_DEC, VALS(h245_EncryptionMode_vals), 0,
17757         "h245.EncryptionMode", HFILL }},
17758     { &hf_h245_h235Mode,
17759       { "h235Mode", "h245.h235Mode",
17760         FT_NONE, BASE_NONE, NULL, 0,
17761         "h245.H235Mode", HFILL }},
17762     { &hf_h245_multiplexedStreamMode,
17763       { "multiplexedStreamMode", "h245.multiplexedStreamMode",
17764         FT_NONE, BASE_NONE, NULL, 0,
17765         "h245.MultiplexedStreamParameter", HFILL }},
17766     { &hf_h245_redundancyEncodingDTMode,
17767       { "redundancyEncodingDTMode", "h245.redundancyEncodingDTMode",
17768         FT_NONE, BASE_NONE, NULL, 0,
17769         "h245.RedundancyEncodingDTMode", HFILL }},
17770     { &hf_h245_multiplePayloadStreamMode,
17771       { "multiplePayloadStreamMode", "h245.multiplePayloadStreamMode",
17772         FT_NONE, BASE_NONE, NULL, 0,
17773         "h245.MultiplePayloadStreamMode", HFILL }},
17774     { &hf_h245_depFecMode,
17775       { "depFecMode", "h245.depFecMode",
17776         FT_UINT32, BASE_DEC, VALS(h245_DepFECMode_vals), 0,
17777         "h245.DepFECMode", HFILL }},
17778     { &hf_h245_fecMode,
17779       { "fecMode", "h245.fecMode",
17780         FT_NONE, BASE_NONE, NULL, 0,
17781         "h245.FECMode", HFILL }},
17782     { &hf_h245_type,
17783       { "type", "h245.type",
17784         FT_UINT32, BASE_DEC, VALS(h245_ModeElementType_vals), 0,
17785         "h245.ModeElementType", HFILL }},
17786     { &hf_h245_h223ModeParameters,
17787       { "h223ModeParameters", "h245.h223ModeParameters",
17788         FT_NONE, BASE_NONE, NULL, 0,
17789         "h245.H223ModeParameters", HFILL }},
17790     { &hf_h245_v76ModeParameters,
17791       { "v76ModeParameters", "h245.v76ModeParameters",
17792         FT_UINT32, BASE_DEC, VALS(h245_V76ModeParameters_vals), 0,
17793         "h245.V76ModeParameters", HFILL }},
17794     { &hf_h245_h2250ModeParameters,
17795       { "h2250ModeParameters", "h245.h2250ModeParameters",
17796         FT_NONE, BASE_NONE, NULL, 0,
17797         "h245.H2250ModeParameters", HFILL }},
17798     { &hf_h245_genericModeParameters,
17799       { "genericModeParameters", "h245.genericModeParameters",
17800         FT_NONE, BASE_NONE, NULL, 0,
17801         "h245.GenericCapability", HFILL }},
17802     { &hf_h245_multiplexedStreamModeParameters,
17803       { "multiplexedStreamModeParameters", "h245.multiplexedStreamModeParameters",
17804         FT_NONE, BASE_NONE, NULL, 0,
17805         "h245.MultiplexedStreamModeParameters", HFILL }},
17806     { &hf_h245_logicalChannelNumber,
17807       { "logicalChannelNumber", "h245.logicalChannelNumber",
17808         FT_UINT32, BASE_DEC, NULL, 0,
17809         "h245.LogicalChannelNumber", HFILL }},
17810     { &hf_h245_mediaMode,
17811       { "mediaMode", "h245.mediaMode",
17812         FT_UINT32, BASE_DEC, VALS(h245_T_mediaMode_vals), 0,
17813         "h245.T_mediaMode", HFILL }},
17814     { &hf_h245_prmary_dtmode,
17815       { "primary", "h245.primary",
17816         FT_NONE, BASE_NONE, NULL, 0,
17817         "h245.RedundancyEncodingDTModeElement", HFILL }},
17818     { &hf_h245_secondaryDTM,
17819       { "secondary", "h245.secondary",
17820         FT_UINT32, BASE_DEC, NULL, 0,
17821         "h245.SEQUENCE_OF_RedundancyEncodingDTModeElement", HFILL }},
17822     { &hf_h245_secondaryDTM_item,
17823       { "Item", "h245.secondary_item",
17824         FT_NONE, BASE_NONE, NULL, 0,
17825         "h245.RedundancyEncodingDTModeElement", HFILL }},
17826     { &hf_h245_re_type,
17827       { "type", "h245.type",
17828         FT_UINT32, BASE_DEC, VALS(h245_Re_type_vals), 0,
17829         "h245.Re_type", HFILL }},
17830     { &hf_h245_mpsmElements,
17831       { "elements", "h245.elements",
17832         FT_UINT32, BASE_DEC, NULL, 0,
17833         "h245.SEQUENCE_OF_MultiplePayloadStreamElementMode", HFILL }},
17834     { &hf_h245_mpsmElements_item,
17835       { "Item", "h245.elements_item",
17836         FT_NONE, BASE_NONE, NULL, 0,
17837         "h245.MultiplePayloadStreamElementMode", HFILL }},
17838     { &hf_h245_rfc2733Mode,
17839       { "rfc2733Mode", "h245.rfc2733Mode",
17840         FT_NONE, BASE_NONE, NULL, 0,
17841         "h245.T_rfc2733Mode", HFILL }},
17842     { &hf_h245_fec_mode,
17843       { "mode", "h245.mode",
17844         FT_UINT32, BASE_DEC, VALS(h245_FEC_mode_vals), 0,
17845         "h245.FEC_mode", HFILL }},
17846     { &hf_h245_protectedElement,
17847       { "protectedElement", "h245.protectedElement",
17848         FT_UINT32, BASE_DEC, VALS(h245_ModeElementType_vals), 0,
17849         "h245.ModeElementType", HFILL }},
17850     { &hf_h245_adaptationLayer,
17851       { "adaptationLayerType", "h245.adaptationLayerType",
17852         FT_UINT32, BASE_DEC, VALS(h245_AdaptationLayerType_vals), 0,
17853         "h245.AdaptationLayerType", HFILL }},
17854     { &hf_h245_al1Framed,
17855       { "al1Framed", "h245.al1Framed",
17856         FT_NONE, BASE_NONE, NULL, 0,
17857         "h245.NULL", HFILL }},
17858     { &hf_h245_al1NotFramed,
17859       { "al1NotFramed", "h245.al1NotFramed",
17860         FT_NONE, BASE_NONE, NULL, 0,
17861         "h245.NULL", HFILL }},
17862     { &hf_h245_al2WithoutSequenceNumbers,
17863       { "al2WithoutSequenceNumbers", "h245.al2WithoutSequenceNumbers",
17864         FT_NONE, BASE_NONE, NULL, 0,
17865         "h245.NULL", HFILL }},
17866     { &hf_h245_al2WithSequenceNumbers,
17867       { "al2WithSequenceNumbers", "h245.al2WithSequenceNumbers",
17868         FT_NONE, BASE_NONE, NULL, 0,
17869         "h245.NULL", HFILL }},
17870     { &hf_h245_al3,
17871       { "al3", "h245.al3",
17872         FT_NONE, BASE_NONE, NULL, 0,
17873         "h245.Al3", HFILL }},
17874     { &hf_h245_al1M,
17875       { "al1M", "h245.al1M",
17876         FT_NONE, BASE_NONE, NULL, 0,
17877         "h245.H223AL1MParameters", HFILL }},
17878     { &hf_h245_al2M,
17879       { "al2M", "h245.al2M",
17880         FT_NONE, BASE_NONE, NULL, 0,
17881         "h245.H223AL2MParameters", HFILL }},
17882     { &hf_h245_al3M,
17883       { "al3M", "h245.al3M",
17884         FT_NONE, BASE_NONE, NULL, 0,
17885         "h245.H223AL3MParameters", HFILL }},
17886     { &hf_h245_segmentableFlag,
17887       { "segmentableFlag", "h245.segmentableFlag",
17888         FT_BOOLEAN, 8, NULL, 0,
17889         "h245.BOOLEAN", HFILL }},
17890     { &hf_h245_redundancyEncodingMode,
17891       { "redundancyEncodingMode", "h245.redundancyEncodingMode",
17892         FT_NONE, BASE_NONE, NULL, 0,
17893         "h245.RedundancyEncodingMode", HFILL }},
17894     { &hf_h245_secondaryEncodingMode,
17895       { "secondaryEncoding", "h245.secondaryEncoding",
17896         FT_UINT32, BASE_DEC, VALS(h245_T_secondaryEncodingMode_vals), 0,
17897         "h245.T_secondaryEncodingMode", HFILL }},
17898     { &hf_h245_h261VideoMode,
17899       { "h261VideoMode", "h245.h261VideoMode",
17900         FT_NONE, BASE_NONE, NULL, 0,
17901         "h245.H261VideoMode", HFILL }},
17902     { &hf_h245_h262VideoMode,
17903       { "h262VideoMode", "h245.h262VideoMode",
17904         FT_NONE, BASE_NONE, NULL, 0,
17905         "h245.H262VideoMode", HFILL }},
17906     { &hf_h245_h263VideoMode,
17907       { "h263VideoMode", "h245.h263VideoMode",
17908         FT_NONE, BASE_NONE, NULL, 0,
17909         "h245.H263VideoMode", HFILL }},
17910     { &hf_h245_is11172VideoMode,
17911       { "is11172VideoMode", "h245.is11172VideoMode",
17912         FT_NONE, BASE_NONE, NULL, 0,
17913         "h245.IS11172VideoMode", HFILL }},
17914     { &hf_h245_genericVideoMode,
17915       { "genericVideoMode", "h245.genericVideoMode",
17916         FT_NONE, BASE_NONE, NULL, 0,
17917         "h245.GenericCapability", HFILL }},
17918     { &hf_h245_h261_resolution,
17919       { "resolution", "h245.resolution",
17920         FT_UINT32, BASE_DEC, VALS(h245_H261Resolution_vals), 0,
17921         "h245.H261Resolution", HFILL }},
17922     { &hf_h245_qcif,
17923       { "qcif", "h245.qcif",
17924         FT_NONE, BASE_NONE, NULL, 0,
17925         "h245.NULL", HFILL }},
17926     { &hf_h245_cif,
17927       { "cif", "h245.cif",
17928         FT_NONE, BASE_NONE, NULL, 0,
17929         "h245.NULL", HFILL }},
17930     { &hf_h245_profileAndLevel,
17931       { "profileAndLevel", "h245.profileAndLevel",
17932         FT_UINT32, BASE_DEC, VALS(h245_T_profileAndLevel_vals), 0,
17933         "h245.T_profileAndLevel", HFILL }},
17934     { &hf_h245_profileAndLevel_SPatMLMode,
17935       { "profileAndLevel-SPatML", "h245.profileAndLevel_SPatML",
17936         FT_NONE, BASE_NONE, NULL, 0,
17937         "h245.NULL", HFILL }},
17938     { &hf_h245_profileAndLevel_MPatLLMode,
17939       { "profileAndLevel-MPatLL", "h245.profileAndLevel_MPatLL",
17940         FT_NONE, BASE_NONE, NULL, 0,
17941         "h245.NULL", HFILL }},
17942     { &hf_h245_profileAndLevel_MPatMLMode,
17943       { "profileAndLevel-MPatML", "h245.profileAndLevel_MPatML",
17944         FT_NONE, BASE_NONE, NULL, 0,
17945         "h245.NULL", HFILL }},
17946     { &hf_h245_profileAndLevel_MPatH_14Mode,
17947       { "profileAndLevel-MPatH-14", "h245.profileAndLevel_MPatH_14",
17948         FT_NONE, BASE_NONE, NULL, 0,
17949         "h245.NULL", HFILL }},
17950     { &hf_h245_profileAndLevel_MPatHLMode,
17951       { "profileAndLevel-MPatHL", "h245.profileAndLevel_MPatHL",
17952         FT_NONE, BASE_NONE, NULL, 0,
17953         "h245.NULL", HFILL }},
17954     { &hf_h245_profileAndLevel_SNRatLLMode,
17955       { "profileAndLevel-SNRatLL", "h245.profileAndLevel_SNRatLL",
17956         FT_NONE, BASE_NONE, NULL, 0,
17957         "h245.NULL", HFILL }},
17958     { &hf_h245_profileAndLevel_SNRatMLMode,
17959       { "profileAndLevel-SNRatML", "h245.profileAndLevel_SNRatML",
17960         FT_NONE, BASE_NONE, NULL, 0,
17961         "h245.NULL", HFILL }},
17962     { &hf_h245_profileAndLevel_SpatialatH_14Mode,
17963       { "profileAndLevel-SpatialatH-14", "h245.profileAndLevel_SpatialatH_14",
17964         FT_NONE, BASE_NONE, NULL, 0,
17965         "h245.NULL", HFILL }},
17966     { &hf_h245_profileAndLevel_HPatMLMode,
17967       { "profileAndLevel-HPatML", "h245.profileAndLevel_HPatML",
17968         FT_NONE, BASE_NONE, NULL, 0,
17969         "h245.NULL", HFILL }},
17970     { &hf_h245_profileAndLevel_HPatH_14Mode,
17971       { "profileAndLevel-HPatH-14", "h245.profileAndLevel_HPatH_14",
17972         FT_NONE, BASE_NONE, NULL, 0,
17973         "h245.NULL", HFILL }},
17974     { &hf_h245_profileAndLevel_HPatHLMode,
17975       { "profileAndLevel-HPatHL", "h245.profileAndLevel_HPatHL",
17976         FT_NONE, BASE_NONE, NULL, 0,
17977         "h245.NULL", HFILL }},
17978     { &hf_h245_h263_resolution,
17979       { "resolution", "h245.resolution",
17980         FT_UINT32, BASE_DEC, VALS(h245_H263Resolution_vals), 0,
17981         "h245.H263Resolution", HFILL }},
17982     { &hf_h245_sqcif,
17983       { "sqcif", "h245.sqcif",
17984         FT_NONE, BASE_NONE, NULL, 0,
17985         "h245.NULL", HFILL }},
17986     { &hf_h245_cif4,
17987       { "cif4", "h245.cif4",
17988         FT_NONE, BASE_NONE, NULL, 0,
17989         "h245.NULL", HFILL }},
17990     { &hf_h245_cif16,
17991       { "cif16", "h245.cif16",
17992         FT_NONE, BASE_NONE, NULL, 0,
17993         "h245.NULL", HFILL }},
17994     { &hf_h245_custom_res,
17995       { "custom", "h245.custom",
17996         FT_NONE, BASE_NONE, NULL, 0,
17997         "h245.NULL", HFILL }},
17998     { &hf_h245_g711Alaw64k_mode,
17999       { "g711Alaw64k", "h245.g711Alaw64k",
18000         FT_NONE, BASE_NONE, NULL, 0,
18001         "h245.NULL", HFILL }},
18002     { &hf_h245_g711Alaw56k_mode,
18003       { "g711Alaw56k", "h245.g711Alaw56k",
18004         FT_NONE, BASE_NONE, NULL, 0,
18005         "h245.NULL", HFILL }},
18006     { &hf_h245_g711Ulaw64k_mode,
18007       { "g711Ulaw64k", "h245.g711Ulaw64k",
18008         FT_NONE, BASE_NONE, NULL, 0,
18009         "h245.NULL", HFILL }},
18010     { &hf_h245_g711Ulaw56k_mode,
18011       { "g711Ulaw56k", "h245.g711Ulaw56k",
18012         FT_NONE, BASE_NONE, NULL, 0,
18013         "h245.NULL", HFILL }},
18014     { &hf_h245_g722_64k_mode,
18015       { "g722-64k", "h245.g722_64k",
18016         FT_NONE, BASE_NONE, NULL, 0,
18017         "h245.NULL", HFILL }},
18018     { &hf_h245_g722_56k_mode,
18019       { "g722-56k", "h245.g722_56k",
18020         FT_NONE, BASE_NONE, NULL, 0,
18021         "h245.NULL", HFILL }},
18022     { &hf_h245_g722_48k_mode,
18023       { "g722-48k", "h245.g722_48k",
18024         FT_NONE, BASE_NONE, NULL, 0,
18025         "h245.NULL", HFILL }},
18026     { &hf_h245_g728_mode,
18027       { "g728", "h245.g728",
18028         FT_NONE, BASE_NONE, NULL, 0,
18029         "h245.NULL", HFILL }},
18030     { &hf_h245_g729_mode,
18031       { "g729", "h245.g729",
18032         FT_NONE, BASE_NONE, NULL, 0,
18033         "h245.NULL", HFILL }},
18034     { &hf_h245_g729AnnexA_mode,
18035       { "g729AnnexA", "h245.g729AnnexA",
18036         FT_NONE, BASE_NONE, NULL, 0,
18037         "h245.NULL", HFILL }},
18038     { &hf_h245_g7231_mode,
18039       { "g7231", "h245.g7231",
18040         FT_UINT32, BASE_DEC, VALS(h245_Mode_g7231_vals), 0,
18041         "h245.Mode_g7231", HFILL }},
18042     { &hf_h245_noSilenceSuppressionLowRate,
18043       { "noSilenceSuppressionLowRate", "h245.noSilenceSuppressionLowRate",
18044         FT_NONE, BASE_NONE, NULL, 0,
18045         "h245.NULL", HFILL }},
18046     { &hf_h245_noSilenceSuppressionHighRate,
18047       { "noSilenceSuppressionHighRate", "h245.noSilenceSuppressionHighRate",
18048         FT_NONE, BASE_NONE, NULL, 0,
18049         "h245.NULL", HFILL }},
18050     { &hf_h245_silenceSuppressionLowRate,
18051       { "silenceSuppressionLowRate", "h245.silenceSuppressionLowRate",
18052         FT_NONE, BASE_NONE, NULL, 0,
18053         "h245.NULL", HFILL }},
18054     { &hf_h245_silenceSuppressionHighRate,
18055       { "silenceSuppressionHighRate", "h245.silenceSuppressionHighRate",
18056         FT_NONE, BASE_NONE, NULL, 0,
18057         "h245.NULL", HFILL }},
18058     { &hf_h245_is11172AudioMode,
18059       { "is11172AudioMode", "h245.is11172AudioMode",
18060         FT_NONE, BASE_NONE, NULL, 0,
18061         "h245.IS11172AudioMode", HFILL }},
18062     { &hf_h245_is13818AudioMode,
18063       { "is13818AudioMode", "h245.is13818AudioMode",
18064         FT_NONE, BASE_NONE, NULL, 0,
18065         "h245.IS13818AudioMode", HFILL }},
18066     { &hf_h245_g7231AnnexCMode,
18067       { "g7231AnnexCMode", "h245.g7231AnnexCMode",
18068         FT_NONE, BASE_NONE, NULL, 0,
18069         "h245.G7231AnnexCMode", HFILL }},
18070     { &hf_h245_genericAudioMode,
18071       { "genericAudioMode", "h245.genericAudioMode",
18072         FT_NONE, BASE_NONE, NULL, 0,
18073         "h245.GenericCapability", HFILL }},
18074     { &hf_h245_vbd_mode,
18075       { "vbd", "h245.vbd",
18076         FT_NONE, BASE_NONE, NULL, 0,
18077         "h245.VBDMode", HFILL }},
18078     { &hf_h245_audioLayer,
18079       { "audioLayer", "h245.audioLayer",
18080         FT_UINT32, BASE_DEC, VALS(h245_T_audioLayer_vals), 0,
18081         "h245.T_audioLayer", HFILL }},
18082     { &hf_h245_audioLayer1Mode,
18083       { "audioLayer1", "h245.audioLayer1",
18084         FT_NONE, BASE_NONE, NULL, 0,
18085         "h245.NULL", HFILL }},
18086     { &hf_h245_audioLayer2Mode,
18087       { "audioLayer2", "h245.audioLayer2",
18088         FT_NONE, BASE_NONE, NULL, 0,
18089         "h245.NULL", HFILL }},
18090     { &hf_h245_audioLayer3Mode,
18091       { "audioLayer3", "h245.audioLayer3",
18092         FT_NONE, BASE_NONE, NULL, 0,
18093         "h245.NULL", HFILL }},
18094     { &hf_h245_audioSampling,
18095       { "audioSampling", "h245.audioSampling",
18096         FT_UINT32, BASE_DEC, VALS(h245_T_audioSampling_vals), 0,
18097         "h245.T_audioSampling", HFILL }},
18098     { &hf_h245_audioSampling32kMode,
18099       { "audioSampling32k", "h245.audioSampling32k",
18100         FT_NONE, BASE_NONE, NULL, 0,
18101         "h245.NULL", HFILL }},
18102     { &hf_h245_audioSampling44k1Mode,
18103       { "audioSampling44k1", "h245.audioSampling44k1",
18104         FT_NONE, BASE_NONE, NULL, 0,
18105         "h245.NULL", HFILL }},
18106     { &hf_h245_audioSampling48kMode,
18107       { "audioSampling48k", "h245.audioSampling48k",
18108         FT_NONE, BASE_NONE, NULL, 0,
18109         "h245.NULL", HFILL }},
18110     { &hf_h245_is11172multichannelType,
18111       { "multichannelType", "h245.multichannelType",
18112         FT_UINT32, BASE_DEC, VALS(h245_IS11172_multichannelType_vals), 0,
18113         "h245.IS11172_multichannelType", HFILL }},
18114     { &hf_h245_singleChannelMode,
18115       { "singleChannel", "h245.singleChannel",
18116         FT_NONE, BASE_NONE, NULL, 0,
18117         "h245.NULL", HFILL }},
18118     { &hf_h245_twoChannelStereo,
18119       { "twoChannelStereo", "h245.twoChannelStereo",
18120         FT_NONE, BASE_NONE, NULL, 0,
18121         "h245.NULL", HFILL }},
18122     { &hf_h245_twoChannelDual,
18123       { "twoChannelDual", "h245.twoChannelDual",
18124         FT_NONE, BASE_NONE, NULL, 0,
18125         "h245.NULL", HFILL }},
18126     { &hf_h245_audioLayerMode,
18127       { "audioLayer", "h245.audioLayer",
18128         FT_UINT32, BASE_DEC, VALS(h245_IS13818AudioLayer_vals), 0,
18129         "h245.IS13818AudioLayer", HFILL }},
18130     { &hf_h245_audioSamplingMode,
18131       { "audioSampling", "h245.audioSampling",
18132         FT_UINT32, BASE_DEC, VALS(h245_IS13818AudioSampling_vals), 0,
18133         "h245.IS13818AudioSampling", HFILL }},
18134     { &hf_h245_audioSampling16kMode,
18135       { "audioSampling16k", "h245.audioSampling16k",
18136         FT_NONE, BASE_NONE, NULL, 0,
18137         "h245.NULL", HFILL }},
18138     { &hf_h245_audioSampling22k05Mode,
18139       { "audioSampling22k05", "h245.audioSampling22k05",
18140         FT_NONE, BASE_NONE, NULL, 0,
18141         "h245.NULL", HFILL }},
18142     { &hf_h245_audioSampling24kMode,
18143       { "audioSampling24k", "h245.audioSampling24k",
18144         FT_NONE, BASE_NONE, NULL, 0,
18145         "h245.NULL", HFILL }},
18146     { &hf_h245_is13818MultichannelType,
18147       { "multichannelType", "h245.multichannelType",
18148         FT_UINT32, BASE_DEC, VALS(h245_IS13818MultichannelType_vals), 0,
18149         "h245.IS13818MultichannelType", HFILL }},
18150     { &hf_h245_threeChannels2_1Mode,
18151       { "threeChannels2-1", "h245.threeChannels2_1",
18152         FT_NONE, BASE_NONE, NULL, 0,
18153         "h245.NULL", HFILL }},
18154     { &hf_h245_threeChannels3_0Mode,
18155       { "threeChannels3-0", "h245.threeChannels3_0",
18156         FT_NONE, BASE_NONE, NULL, 0,
18157         "h245.NULL", HFILL }},
18158     { &hf_h245_fourChannels2_0_2_0Mode,
18159       { "fourChannels2-0-2-0", "h245.fourChannels2_0_2_0",
18160         FT_NONE, BASE_NONE, NULL, 0,
18161         "h245.NULL", HFILL }},
18162     { &hf_h245_fourChannels2_2Mode,
18163       { "fourChannels2-2", "h245.fourChannels2_2",
18164         FT_NONE, BASE_NONE, NULL, 0,
18165         "h245.NULL", HFILL }},
18166     { &hf_h245_fourChannels3_1Mode,
18167       { "fourChannels3-1", "h245.fourChannels3_1",
18168         FT_NONE, BASE_NONE, NULL, 0,
18169         "h245.NULL", HFILL }},
18170     { &hf_h245_fiveChannels3_0_2_0Mode,
18171       { "fiveChannels3-0-2-0", "h245.fiveChannels3_0_2_0",
18172         FT_NONE, BASE_NONE, NULL, 0,
18173         "h245.NULL", HFILL }},
18174     { &hf_h245_fiveChannels3_2Mode,
18175       { "fiveChannels3-2", "h245.fiveChannels3_2",
18176         FT_NONE, BASE_NONE, NULL, 0,
18177         "h245.NULL", HFILL }},
18178     { &hf_h245_vbd_type,
18179       { "type", "h245.type",
18180         FT_UINT32, BASE_DEC, VALS(h245_AudioMode_vals), 0,
18181         "h245.AudioMode", HFILL }},
18182     { &hf_h245_datamodeapplication,
18183       { "application", "h245.application",
18184         FT_UINT32, BASE_DEC, VALS(h245_DataModeApplication_vals), 0,
18185         "h245.DataModeApplication", HFILL }},
18186     { &hf_h245_t84DataProtocolCapability,
18187       { "t84", "h245.t84",
18188         FT_UINT32, BASE_DEC, VALS(DataProtocolCapability_vals), 0,
18189         "h245.DataProtocolCapability", HFILL }},
18190     { &hf_h245_t38faxDataProtocolCapability,
18191       { "t38fax", "h245.t38fax",
18192         FT_NONE, BASE_NONE, NULL, 0,
18193         "h245.T38faxApp", HFILL }},
18194     { &hf_h245_genericDataMode,
18195       { "genericDataMode", "h245.genericDataMode",
18196         FT_NONE, BASE_NONE, NULL, 0,
18197         "h245.GenericCapability", HFILL }},
18198     { &hf_h245_bitRate_0_4294967295,
18199       { "bitRate", "h245.bitRate",
18200         FT_UINT32, BASE_DEC, NULL, 0,
18201         "h245.INTEGER_0_4294967295", HFILL }},
18202     { &hf_h245_h233Encryption,
18203       { "h233Encryption", "h245.h233Encryption",
18204         FT_NONE, BASE_NONE, NULL, 0,
18205         "h245.NULL", HFILL }},
18206     { &hf_h245_mlr_type,
18207       { "type", "h245.type",
18208         FT_UINT32, BASE_DEC, VALS(h245_Mlr_type_vals), 0,
18209         "h245.Mlr_type", HFILL }},
18210     { &hf_h245_systemLoop,
18211       { "systemLoop", "h245.systemLoop",
18212         FT_NONE, BASE_NONE, NULL, 0,
18213         "h245.NULL", HFILL }},
18214     { &hf_h245_mediaLoop,
18215       { "mediaLoop", "h245.mediaLoop",
18216         FT_UINT32, BASE_DEC, NULL, 0,
18217         "h245.LogicalChannelNumber", HFILL }},
18218     { &hf_h245_logicalChannelLoop,
18219       { "logicalChannelLoop", "h245.logicalChannelLoop",
18220         FT_UINT32, BASE_DEC, NULL, 0,
18221         "h245.LogicalChannelNumber", HFILL }},
18222     { &hf_h245_mla_type,
18223       { "type", "h245.type",
18224         FT_UINT32, BASE_DEC, VALS(h245_Mla_type_vals), 0,
18225         "h245.Mla_type", HFILL }},
18226     { &hf_h245_mlrej_type,
18227       { "type", "h245.type",
18228         FT_UINT32, BASE_DEC, VALS(h245_Mlrej_type_vals), 0,
18229         "h245.Mlrej_type", HFILL }},
18230     { &hf_h245_maintloop_rej_cause,
18231       { "cause", "h245.cause",
18232         FT_UINT32, BASE_DEC, VALS(h245_MaintenanceLoopRejectCause_vals), 0,
18233         "h245.MaintenanceLoopRejectCause", HFILL }},
18234     { &hf_h245_canNotPerformLoop,
18235       { "canNotPerformLoop", "h245.canNotPerformLoop",
18236         FT_NONE, BASE_NONE, NULL, 0,
18237         "h245.NULL", HFILL }},
18238     { &hf_h245_communicationModeTable,
18239       { "communicationModeTable", "h245.communicationModeTable",
18240         FT_UINT32, BASE_DEC, NULL, 0,
18241         "h245.SET_SIZE_1_256_OF_CommunicationModeTableEntry", HFILL }},
18242     { &hf_h245_communicationModeTable_item,
18243       { "Item", "h245.communicationModeTable_item",
18244         FT_NONE, BASE_NONE, NULL, 0,
18245         "h245.CommunicationModeTableEntry", HFILL }},
18246     { &hf_h245_terminalLabel,
18247       { "terminalLabel", "h245.terminalLabel",
18248         FT_NONE, BASE_NONE, NULL, 0,
18249         "h245.TerminalLabel", HFILL }},
18250     { &hf_h245_sessionDescription,
18251       { "sessionDescription", "h245.sessionDescription",
18252         FT_STRING, BASE_NONE, NULL, 0,
18253         "h245.BMPString_SIZE_1_128", HFILL }},
18254     { &hf_h245_entryDataType,
18255       { "dataType", "h245.dataType",
18256         FT_UINT32, BASE_DEC, VALS(h245_T_entryDataType_vals), 0,
18257         "h245.T_entryDataType", HFILL }},
18258     { &hf_h245_cm_mediaChannel,
18259       { "mediaChannel", "h245.mediaChannel",
18260         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
18261         "h245.Cm_mediaChannel", HFILL }},
18262     { &hf_h245_cm_mediaControlChannel,
18263       { "mediaControlChannel", "h245.mediaControlChannel",
18264         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
18265         "h245.TransportAddress", HFILL }},
18266     { &hf_h245_sessionDependency,
18267       { "sessionDependency", "h245.sessionDependency",
18268         FT_UINT32, BASE_DEC, NULL, 0,
18269         "h245.INTEGER_1_255", HFILL }},
18270     { &hf_h245_terminalListRequest,
18271       { "terminalListRequest", "h245.terminalListRequest",
18272         FT_NONE, BASE_NONE, NULL, 0,
18273         "h245.NULL", HFILL }},
18274     { &hf_h245_makeMeChair,
18275       { "makeMeChair", "h245.makeMeChair",
18276         FT_NONE, BASE_NONE, NULL, 0,
18277         "h245.NULL", HFILL }},
18278     { &hf_h245_cancelMakeMeChair,
18279       { "cancelMakeMeChair", "h245.cancelMakeMeChair",
18280         FT_NONE, BASE_NONE, NULL, 0,
18281         "h245.NULL", HFILL }},
18282     { &hf_h245_dropTerminal,
18283       { "dropTerminal", "h245.dropTerminal",
18284         FT_NONE, BASE_NONE, NULL, 0,
18285         "h245.TerminalLabel", HFILL }},
18286     { &hf_h245_requestTerminalID,
18287       { "requestTerminalID", "h245.requestTerminalID",
18288         FT_NONE, BASE_NONE, NULL, 0,
18289         "h245.TerminalLabel", HFILL }},
18290     { &hf_h245_enterH243Password,
18291       { "enterH243Password", "h245.enterH243Password",
18292         FT_NONE, BASE_NONE, NULL, 0,
18293         "h245.NULL", HFILL }},
18294     { &hf_h245_enterH243TerminalID,
18295       { "enterH243TerminalID", "h245.enterH243TerminalID",
18296         FT_NONE, BASE_NONE, NULL, 0,
18297         "h245.NULL", HFILL }},
18298     { &hf_h245_enterH243ConferenceID,
18299       { "enterH243ConferenceID", "h245.enterH243ConferenceID",
18300         FT_NONE, BASE_NONE, NULL, 0,
18301         "h245.NULL", HFILL }},
18302     { &hf_h245_enterExtensionAddress,
18303       { "enterExtensionAddress", "h245.enterExtensionAddress",
18304         FT_NONE, BASE_NONE, NULL, 0,
18305         "h245.NULL", HFILL }},
18306     { &hf_h245_requestChairTokenOwner,
18307       { "requestChairTokenOwner", "h245.requestChairTokenOwner",
18308         FT_NONE, BASE_NONE, NULL, 0,
18309         "h245.NULL", HFILL }},
18310     { &hf_h245_requestTerminalCertificate,
18311       { "requestTerminalCertificate", "h245.requestTerminalCertificate",
18312         FT_NONE, BASE_NONE, NULL, 0,
18313         "h245.T_requestTerminalCertificate", HFILL }},
18314     { &hf_h245_certSelectionCriteria,
18315       { "certSelectionCriteria", "h245.certSelectionCriteria",
18316         FT_UINT32, BASE_DEC, NULL, 0,
18317         "h245.CertSelectionCriteria", HFILL }},
18318     { &hf_h245_sRandom,
18319       { "sRandom", "h245.sRandom",
18320         FT_UINT32, BASE_DEC, NULL, 0,
18321         "h245.INTEGER_1_4294967295", HFILL }},
18322     { &hf_h245_broadcastMyLogicalChannel,
18323       { "broadcastMyLogicalChannel", "h245.broadcastMyLogicalChannel",
18324         FT_UINT32, BASE_DEC, NULL, 0,
18325         "h245.LogicalChannelNumber", HFILL }},
18326     { &hf_h245_makeTerminalBroadcaster,
18327       { "makeTerminalBroadcaster", "h245.makeTerminalBroadcaster",
18328         FT_NONE, BASE_NONE, NULL, 0,
18329         "h245.TerminalLabel", HFILL }},
18330     { &hf_h245_sendThisSource,
18331       { "sendThisSource", "h245.sendThisSource",
18332         FT_NONE, BASE_NONE, NULL, 0,
18333         "h245.TerminalLabel", HFILL }},
18334     { &hf_h245_requestAllTerminalIDs,
18335       { "requestAllTerminalIDs", "h245.requestAllTerminalIDs",
18336         FT_NONE, BASE_NONE, NULL, 0,
18337         "h245.NULL", HFILL }},
18338     { &hf_h245_remoteMCRequest,
18339       { "remoteMCRequest", "h245.remoteMCRequest",
18340         FT_UINT32, BASE_DEC, VALS(h245_RemoteMCRequest_vals), 0,
18341         "h245.RemoteMCRequest", HFILL }},
18342     { &hf_h245_CertSelectionCriteria_item,
18343       { "Item", "h245.CertSelectionCriteria_item",
18344         FT_NONE, BASE_NONE, NULL, 0,
18345         "h245.Criteria", HFILL }},
18346     { &hf_h245_field,
18347       { "field", "h245.field",
18348         FT_OID, BASE_NONE, NULL, 0,
18349         "h245.OBJECT_IDENTIFIER", HFILL }},
18350     { &hf_h245_value,
18351       { "value", "h245.value",
18352         FT_BYTES, BASE_HEX, NULL, 0,
18353         "h245.OCTET_STRING_SIZE_1_65535", HFILL }},
18354     { &hf_h245_mcuNumber,
18355       { "mcuNumber", "h245.mcuNumber",
18356         FT_UINT32, BASE_DEC, NULL, 0,
18357         "h245.McuNumber", HFILL }},
18358     { &hf_h245_terminalNumber,
18359       { "terminalNumber", "h245.terminalNumber",
18360         FT_UINT32, BASE_DEC, NULL, 0,
18361         "h245.TerminalNumber", HFILL }},
18362     { &hf_h245_mCTerminalIDResponse,
18363       { "mCTerminalIDResponse", "h245.mCTerminalIDResponse",
18364         FT_NONE, BASE_NONE, NULL, 0,
18365         "h245.T_mCTerminalIDResponse", HFILL }},
18366     { &hf_h245_terminalID,
18367       { "terminalID", "h245.terminalID",
18368         FT_BYTES, BASE_HEX, NULL, 0,
18369         "h245.TerminalID", HFILL }},
18370     { &hf_h245_terminalIDResponse,
18371       { "terminalIDResponse", "h245.terminalIDResponse",
18372         FT_NONE, BASE_NONE, NULL, 0,
18373         "h245.T_terminalIDResponse", HFILL }},
18374     { &hf_h245_conferenceIDResponse,
18375       { "conferenceIDResponse", "h245.conferenceIDResponse",
18376         FT_NONE, BASE_NONE, NULL, 0,
18377         "h245.T_conferenceIDResponse", HFILL }},
18378     { &hf_h245_conferenceID,
18379       { "conferenceID", "h245.conferenceID",
18380         FT_BYTES, BASE_HEX, NULL, 0,
18381         "h245.ConferenceID", HFILL }},
18382     { &hf_h245_passwordResponse,
18383       { "passwordResponse", "h245.passwordResponse",
18384         FT_NONE, BASE_NONE, NULL, 0,
18385         "h245.T_passwordResponse", HFILL }},
18386     { &hf_h245_password,
18387       { "password", "h245.password",
18388         FT_BYTES, BASE_HEX, NULL, 0,
18389         "h245.Password", HFILL }},
18390     { &hf_h245_terminalListResponse,
18391       { "terminalListResponse", "h245.terminalListResponse",
18392         FT_UINT32, BASE_DEC, NULL, 0,
18393         "h245.SET_SIZE_1_256_OF_TerminalLabel", HFILL }},
18394     { &hf_h245_terminalListResponse_item,
18395       { "Item", "h245.terminalListResponse_item",
18396         FT_NONE, BASE_NONE, NULL, 0,
18397         "h245.TerminalLabel", HFILL }},
18398     { &hf_h245_videoCommandReject,
18399       { "videoCommandReject", "h245.videoCommandReject",
18400         FT_NONE, BASE_NONE, NULL, 0,
18401         "h245.NULL", HFILL }},
18402     { &hf_h245_terminalDropReject,
18403       { "terminalDropReject", "h245.terminalDropReject",
18404         FT_NONE, BASE_NONE, NULL, 0,
18405         "h245.NULL", HFILL }},
18406     { &hf_h245_makeMeChairResponse,
18407       { "makeMeChairResponse", "h245.makeMeChairResponse",
18408         FT_UINT32, BASE_DEC, VALS(h245_T_makeMeChairResponse_vals), 0,
18409         "h245.T_makeMeChairResponse", HFILL }},
18410     { &hf_h245_grantedChairToken,
18411       { "grantedChairToken", "h245.grantedChairToken",
18412         FT_NONE, BASE_NONE, NULL, 0,
18413         "h245.NULL", HFILL }},
18414     { &hf_h245_deniedChairToken,
18415       { "deniedChairToken", "h245.deniedChairToken",
18416         FT_NONE, BASE_NONE, NULL, 0,
18417         "h245.NULL", HFILL }},
18418     { &hf_h245_extensionAddressResponse,
18419       { "extensionAddressResponse", "h245.extensionAddressResponse",
18420         FT_NONE, BASE_NONE, NULL, 0,
18421         "h245.T_extensionAddressResponse", HFILL }},
18422     { &hf_h245_extensionAddress,
18423       { "extensionAddress", "h245.extensionAddress",
18424         FT_BYTES, BASE_HEX, NULL, 0,
18425         "h245.TerminalID", HFILL }},
18426     { &hf_h245_chairTokenOwnerResponse,
18427       { "chairTokenOwnerResponse", "h245.chairTokenOwnerResponse",
18428         FT_NONE, BASE_NONE, NULL, 0,
18429         "h245.T_chairTokenOwnerResponse", HFILL }},
18430     { &hf_h245_terminalCertificateResponse,
18431       { "terminalCertificateResponse", "h245.terminalCertificateResponse",
18432         FT_NONE, BASE_NONE, NULL, 0,
18433         "h245.T_terminalCertificateResponse", HFILL }},
18434     { &hf_h245_certificateResponse,
18435       { "certificateResponse", "h245.certificateResponse",
18436         FT_BYTES, BASE_HEX, NULL, 0,
18437         "h245.OCTET_STRING_SIZE_1_65535", HFILL }},
18438     { &hf_h245_broadcastMyLogicalChannelResponse,
18439       { "broadcastMyLogicalChannelResponse", "h245.broadcastMyLogicalChannelResponse",
18440         FT_UINT32, BASE_DEC, VALS(h245_T_broadcastMyLogicalChannelResponse_vals), 0,
18441         "h245.T_broadcastMyLogicalChannelResponse", HFILL }},
18442     { &hf_h245_grantedBroadcastMyLogicalChannel,
18443       { "grantedBroadcastMyLogicalChannel", "h245.grantedBroadcastMyLogicalChannel",
18444         FT_NONE, BASE_NONE, NULL, 0,
18445         "h245.NULL", HFILL }},
18446     { &hf_h245_deniedBroadcastMyLogicalChannel,
18447       { "deniedBroadcastMyLogicalChannel", "h245.deniedBroadcastMyLogicalChannel",
18448         FT_NONE, BASE_NONE, NULL, 0,
18449         "h245.NULL", HFILL }},
18450     { &hf_h245_makeTerminalBroadcasterResponse,
18451       { "makeTerminalBroadcasterResponse", "h245.makeTerminalBroadcasterResponse",
18452         FT_UINT32, BASE_DEC, VALS(h245_T_makeTerminalBroadcasterResponse_vals), 0,
18453         "h245.T_makeTerminalBroadcasterResponse", HFILL }},
18454     { &hf_h245_grantedMakeTerminalBroadcaster,
18455       { "grantedMakeTerminalBroadcaster", "h245.grantedMakeTerminalBroadcaster",
18456         FT_NONE, BASE_NONE, NULL, 0,
18457         "h245.NULL", HFILL }},
18458     { &hf_h245_deniedMakeTerminalBroadcaster,
18459       { "deniedMakeTerminalBroadcaster", "h245.deniedMakeTerminalBroadcaster",
18460         FT_NONE, BASE_NONE, NULL, 0,
18461         "h245.NULL", HFILL }},
18462     { &hf_h245_sendThisSourceResponse,
18463       { "sendThisSourceResponse", "h245.sendThisSourceResponse",
18464         FT_UINT32, BASE_DEC, VALS(h245_T_sendThisSourceResponse_vals), 0,
18465         "h245.T_sendThisSourceResponse", HFILL }},
18466     { &hf_h245_grantedSendThisSource,
18467       { "grantedSendThisSource", "h245.grantedSendThisSource",
18468         FT_NONE, BASE_NONE, NULL, 0,
18469         "h245.NULL", HFILL }},
18470     { &hf_h245_deniedSendThisSource,
18471       { "deniedSendThisSource", "h245.deniedSendThisSource",
18472         FT_NONE, BASE_NONE, NULL, 0,
18473         "h245.NULL", HFILL }},
18474     { &hf_h245_requestAllTerminalIDsResponse,
18475       { "requestAllTerminalIDsResponse", "h245.requestAllTerminalIDsResponse",
18476         FT_NONE, BASE_NONE, NULL, 0,
18477         "h245.RequestAllTerminalIDsResponse", HFILL }},
18478     { &hf_h245_remoteMCResponse,
18479       { "remoteMCResponse", "h245.remoteMCResponse",
18480         FT_UINT32, BASE_DEC, VALS(h245_RemoteMCResponse_vals), 0,
18481         "h245.RemoteMCResponse", HFILL }},
18482     { &hf_h245_terminalInformation,
18483       { "terminalInformation", "h245.terminalInformation",
18484         FT_UINT32, BASE_DEC, NULL, 0,
18485         "h245.SEQUENCE_OF_TerminalInformation", HFILL }},
18486     { &hf_h245_terminalInformation_item,
18487       { "Item", "h245.terminalInformation_item",
18488         FT_NONE, BASE_NONE, NULL, 0,
18489         "h245.TerminalInformation", HFILL }},
18490     { &hf_h245_masterActivate,
18491       { "masterActivate", "h245.masterActivate",
18492         FT_NONE, BASE_NONE, NULL, 0,
18493         "h245.NULL", HFILL }},
18494     { &hf_h245_slaveActivate,
18495       { "slaveActivate", "h245.slaveActivate",
18496         FT_NONE, BASE_NONE, NULL, 0,
18497         "h245.NULL", HFILL }},
18498     { &hf_h245_deActivate,
18499       { "deActivate", "h245.deActivate",
18500         FT_NONE, BASE_NONE, NULL, 0,
18501         "h245.NULL", HFILL }},
18502     { &hf_h245_accept,
18503       { "accept", "h245.accept",
18504         FT_NONE, BASE_NONE, NULL, 0,
18505         "h245.NULL", HFILL }},
18506     { &hf_h245_reject,
18507       { "reject", "h245.reject",
18508         FT_UINT32, BASE_DEC, VALS(h245_T_reject_vals), 0,
18509         "h245.T_reject", HFILL }},
18510     { &hf_h245_functionNotSupportedFlag,
18511       { "functionNotSupported", "h245.functionNotSupported",
18512         FT_NONE, BASE_NONE, NULL, 0,
18513         "h245.NULL", HFILL }},
18514     { &hf_h245_callInformationReq,
18515       { "callInformation", "h245.callInformation",
18516         FT_NONE, BASE_NONE, NULL, 0,
18517         "h245.CallInformationReq", HFILL }},
18518     { &hf_h245_maxNumberOfAdditionalConnections,
18519       { "maxNumberOfAdditionalConnections", "h245.maxNumberOfAdditionalConnections",
18520         FT_UINT32, BASE_DEC, NULL, 0,
18521         "h245.INTEGER_1_65535", HFILL }},
18522     { &hf_h245_addConnectionReq,
18523       { "addConnection", "h245.addConnection",
18524         FT_NONE, BASE_NONE, NULL, 0,
18525         "h245.AddConnectionReq", HFILL }},
18526     { &hf_h245_dialingInformation,
18527       { "dialingInformation", "h245.dialingInformation",
18528         FT_UINT32, BASE_DEC, VALS(h245_DialingInformation_vals), 0,
18529         "h245.DialingInformation", HFILL }},
18530     { &hf_h245_removeConnectionReq,
18531       { "removeConnection", "h245.removeConnection",
18532         FT_NONE, BASE_NONE, NULL, 0,
18533         "h245.RemoveConnectionReq", HFILL }},
18534     { &hf_h245_connectionIdentifier,
18535       { "connectionIdentifier", "h245.connectionIdentifier",
18536         FT_NONE, BASE_NONE, NULL, 0,
18537         "h245.ConnectionIdentifier", HFILL }},
18538     { &hf_h245_maximumHeaderIntervalReq,
18539       { "maximumHeaderInterval", "h245.maximumHeaderInterval",
18540         FT_NONE, BASE_NONE, NULL, 0,
18541         "h245.MaximumHeaderIntervalReq", HFILL }},
18542     { &hf_h245_requestType,
18543       { "requestType", "h245.requestType",
18544         FT_UINT32, BASE_DEC, VALS(h245_T_requestType_vals), 0,
18545         "h245.T_requestType", HFILL }},
18546     { &hf_h245_currentIntervalInformation,
18547       { "currentIntervalInformation", "h245.currentIntervalInformation",
18548         FT_NONE, BASE_NONE, NULL, 0,
18549         "h245.NULL", HFILL }},
18550     { &hf_h245_requestedInterval,
18551       { "requestedInterval", "h245.requestedInterval",
18552         FT_UINT32, BASE_DEC, NULL, 0,
18553         "h245.INTEGER_0_65535", HFILL }},
18554     { &hf_h245_callInformationResp,
18555       { "callInformation", "h245.callInformation",
18556         FT_NONE, BASE_NONE, NULL, 0,
18557         "h245.CallInformationResp", HFILL }},
18558     { &hf_h245_callAssociationNumber,
18559       { "callAssociationNumber", "h245.callAssociationNumber",
18560         FT_UINT32, BASE_DEC, NULL, 0,
18561         "h245.INTEGER_0_4294967295", HFILL }},
18562     { &hf_h245_addConnectionResp,
18563       { "addConnection", "h245.addConnection",
18564         FT_NONE, BASE_NONE, NULL, 0,
18565         "h245.AddConnectionResp", HFILL }},
18566     { &hf_h245_responseCode,
18567       { "responseCode", "h245.responseCode",
18568         FT_UINT32, BASE_DEC, VALS(h245_T_responseCode_vals), 0,
18569         "h245.T_responseCode", HFILL }},
18570     { &hf_h245_accepted,
18571       { "accepted", "h245.accepted",
18572         FT_NONE, BASE_NONE, NULL, 0,
18573         "h245.NULL", HFILL }},
18574     { &hf_h245_rejected,
18575       { "rejected", "h245.rejected",
18576         FT_UINT32, BASE_DEC, VALS(h245_T_rejected_vals), 0,
18577         "h245.T_rejected", HFILL }},
18578     { &hf_h245_connectionsNotAvailable,
18579       { "connectionsNotAvailable", "h245.connectionsNotAvailable",
18580         FT_NONE, BASE_NONE, NULL, 0,
18581         "h245.NULL", HFILL }},
18582     { &hf_h245_userRejected,
18583       { "userRejected", "h245.userRejected",
18584         FT_NONE, BASE_NONE, NULL, 0,
18585         "h245.NULL", HFILL }},
18586     { &hf_h245_removeConnectionResp,
18587       { "removeConnection", "h245.removeConnection",
18588         FT_NONE, BASE_NONE, NULL, 0,
18589         "h245.RemoveConnectionResp", HFILL }},
18590     { &hf_h245_maximumHeaderIntervalResp,
18591       { "maximumHeaderInterval", "h245.maximumHeaderInterval",
18592         FT_NONE, BASE_NONE, NULL, 0,
18593         "h245.MaximumHeaderIntervalResp", HFILL }},
18594     { &hf_h245_currentInterval,
18595       { "currentInterval", "h245.currentInterval",
18596         FT_UINT32, BASE_DEC, NULL, 0,
18597         "h245.INTEGER_0_65535", HFILL }},
18598     { &hf_h245_crcDesired,
18599       { "crcDesired", "h245.crcDesired",
18600         FT_NONE, BASE_NONE, NULL, 0,
18601         "h245.T_crcDesired", HFILL }},
18602     { &hf_h245_excessiveError,
18603       { "excessiveError", "h245.excessiveError",
18604         FT_NONE, BASE_NONE, NULL, 0,
18605         "h245.T_excessiveError", HFILL }},
18606     { &hf_h245_differential,
18607       { "differential", "h245.differential",
18608         FT_UINT32, BASE_DEC, NULL, 0,
18609         "h245.SET_SIZE_1_65535_OF_DialingInformationNumber", HFILL }},
18610     { &hf_h245_differential_item,
18611       { "Item", "h245.differential_item",
18612         FT_NONE, BASE_NONE, NULL, 0,
18613         "h245.DialingInformationNumber", HFILL }},
18614     { &hf_h245_infoNotAvailable,
18615       { "infoNotAvailable", "h245.infoNotAvailable",
18616         FT_UINT32, BASE_DEC, NULL, 0,
18617         "h245.INTEGER_1_65535", HFILL }},
18618     { &hf_h245_networkAddressNum,
18619       { "networkAddress", "h245.networkAddress",
18620         FT_STRING, BASE_NONE, NULL, 0,
18621         "h245.NumericString_SIZE_0_40", HFILL }},
18622     { &hf_h245_subAddress,
18623       { "subAddress", "h245.subAddress",
18624         FT_STRING, BASE_NONE, NULL, 0,
18625         "h245.IA5String_SIZE_1_40", HFILL }},
18626     { &hf_h245_networkType,
18627       { "networkType", "h245.networkType",
18628         FT_UINT32, BASE_DEC, NULL, 0,
18629         "h245.SET_SIZE_1_255_OF_DialingInformationNetworkType", HFILL }},
18630     { &hf_h245_networkType_item,
18631       { "Item", "h245.networkType_item",
18632         FT_UINT32, BASE_DEC, VALS(h245_DialingInformationNetworkType_vals), 0,
18633         "h245.DialingInformationNetworkType", HFILL }},
18634     { &hf_h245_n_isdn,
18635       { "n-isdn", "h245.n_isdn",
18636         FT_NONE, BASE_NONE, NULL, 0,
18637         "h245.NULL", HFILL }},
18638     { &hf_h245_gstn,
18639       { "gstn", "h245.gstn",
18640         FT_NONE, BASE_NONE, NULL, 0,
18641         "h245.NULL", HFILL }},
18642     { &hf_h245_mobile,
18643       { "mobile", "h245.mobile",
18644         FT_NONE, BASE_NONE, NULL, 0,
18645         "h245.NULL", HFILL }},
18646     { &hf_h245_channelTag,
18647       { "channelTag", "h245.channelTag",
18648         FT_UINT32, BASE_DEC, NULL, 0,
18649         "h245.INTEGER_0_4294967295", HFILL }},
18650     { &hf_h245_sequenceNum,
18651       { "sequenceNumber", "h245.sequenceNumber",
18652         FT_UINT32, BASE_DEC, NULL, 0,
18653         "h245.INTEGER_0_4294967295", HFILL }},
18654     { &hf_h245_maximumBitRate,
18655       { "maximumBitRate", "h245.maximumBitRate",
18656         FT_UINT32, BASE_DEC, NULL, 0,
18657         "h245.MaximumBitRate", HFILL }},
18658     { &hf_h245_rejectReason,
18659       { "rejectReason", "h245.rejectReason",
18660         FT_UINT32, BASE_DEC, VALS(h245_LogicalChannelRateRejectReason_vals), 0,
18661         "h245.LogicalChannelRateRejectReason", HFILL }},
18662     { &hf_h245_currentMaximumBitRate,
18663       { "currentMaximumBitRate", "h245.currentMaximumBitRate",
18664         FT_UINT32, BASE_DEC, NULL, 0,
18665         "h245.MaximumBitRate", HFILL }},
18666     { &hf_h245_undefinedReason,
18667       { "undefinedReason", "h245.undefinedReason",
18668         FT_NONE, BASE_NONE, NULL, 0,
18669         "h245.NULL", HFILL }},
18670     { &hf_h245_insufficientResources,
18671       { "insufficientResources", "h245.insufficientResources",
18672         FT_NONE, BASE_NONE, NULL, 0,
18673         "h245.NULL", HFILL }},
18674     { &hf_h245_specificRequest,
18675       { "specificRequest", "h245.specificRequest",
18676         FT_NONE, BASE_NONE, NULL, 0,
18677         "h245.T_specificRequest", HFILL }},
18678     { &hf_h245_multiplexCapabilityBool,
18679       { "multiplexCapability", "h245.multiplexCapability",
18680         FT_BOOLEAN, 8, NULL, 0,
18681         "h245.BOOLEAN", HFILL }},
18682     { &hf_h245_capabilityTableEntryNumbers,
18683       { "capabilityTableEntryNumbers", "h245.capabilityTableEntryNumbers",
18684         FT_UINT32, BASE_DEC, NULL, 0,
18685         "h245.SET_SIZE_1_65535_OF_CapabilityTableEntryNumber", HFILL }},
18686     { &hf_h245_capabilityTableEntryNumbers_item,
18687       { "Item", "h245.capabilityTableEntryNumbers_item",
18688         FT_UINT32, BASE_DEC, NULL, 0,
18689         "h245.CapabilityTableEntryNumber", HFILL }},
18690     { &hf_h245_capabilityDescriptorNumbers,
18691       { "capabilityDescriptorNumbers", "h245.capabilityDescriptorNumbers",
18692         FT_UINT32, BASE_DEC, NULL, 0,
18693         "h245.SET_SIZE_1_256_OF_CapabilityDescriptorNumber", HFILL }},
18694     { &hf_h245_capabilityDescriptorNumbers_item,
18695       { "Item", "h245.capabilityDescriptorNumbers_item",
18696         FT_UINT32, BASE_DEC, NULL, 0,
18697         "h245.CapabilityDescriptorNumber", HFILL }},
18698     { &hf_h245_genericRequestFlag,
18699       { "genericRequest", "h245.genericRequest",
18700         FT_NONE, BASE_NONE, NULL, 0,
18701         "h245.NULL", HFILL }},
18702     { &hf_h245_encryptionSE,
18703       { "encryptionSE", "h245.encryptionSE",
18704         FT_BYTES, BASE_HEX, NULL, 0,
18705         "h245.OCTET_STRING", HFILL }},
18706     { &hf_h245_encryptionIVRequest,
18707       { "encryptionIVRequest", "h245.encryptionIVRequest",
18708         FT_NONE, BASE_NONE, NULL, 0,
18709         "h245.NULL", HFILL }},
18710     { &hf_h245_encryptionAlgorithmID,
18711       { "encryptionAlgorithmID", "h245.encryptionAlgorithmID",
18712         FT_NONE, BASE_NONE, NULL, 0,
18713         "h245.T_encryptionAlgorithmID", HFILL }},
18714     { &hf_h245_h233AlgorithmIdentifier,
18715       { "h233AlgorithmIdentifier", "h245.h233AlgorithmIdentifier",
18716         FT_UINT32, BASE_DEC, NULL, 0,
18717         "h245.SequenceNumber", HFILL }},
18718     { &hf_h245_associatedAlgorithm,
18719       { "associatedAlgorithm", "h245.associatedAlgorithm",
18720         FT_NONE, BASE_NONE, NULL, 0,
18721         "h245.NonStandardParameter", HFILL }},
18722     { &hf_h245_wholeMultiplex,
18723       { "wholeMultiplex", "h245.wholeMultiplex",
18724         FT_NONE, BASE_NONE, NULL, 0,
18725         "h245.NULL", HFILL }},
18726     { &hf_h245_scope,
18727       { "scope", "h245.scope",
18728         FT_UINT32, BASE_DEC, VALS(h245_Scope_vals), 0,
18729         "h245.Scope", HFILL }},
18730     { &hf_h245_res_maximumBitRate,
18731       { "maximumBitRate", "h245.maximumBitRate",
18732         FT_UINT32, BASE_DEC, NULL, 0,
18733         "h245.INTEGER_0_16777215", HFILL }},
18734     { &hf_h245_noRestriction,
18735       { "noRestriction", "h245.noRestriction",
18736         FT_NONE, BASE_NONE, NULL, 0,
18737         "h245.NULL", HFILL }},
18738     { &hf_h245_restriction,
18739       { "restriction", "h245.restriction",
18740         FT_UINT32, BASE_DEC, VALS(h245_Restriction_vals), 0,
18741         "h245.Restriction", HFILL }},
18742     { &hf_h245_disconnect,
18743       { "disconnect", "h245.disconnect",
18744         FT_NONE, BASE_NONE, NULL, 0,
18745         "h245.NULL", HFILL }},
18746     { &hf_h245_gstnOptions,
18747       { "gstnOptions", "h245.gstnOptions",
18748         FT_UINT32, BASE_DEC, VALS(h245_T_gstnOptions_vals), 0,
18749         "h245.T_gstnOptions", HFILL }},
18750     { &hf_h245_telephonyMode,
18751       { "telephonyMode", "h245.telephonyMode",
18752         FT_NONE, BASE_NONE, NULL, 0,
18753         "h245.NULL", HFILL }},
18754     { &hf_h245_v8bis,
18755       { "v8bis", "h245.v8bis",
18756         FT_NONE, BASE_NONE, NULL, 0,
18757         "h245.NULL", HFILL }},
18758     { &hf_h245_v34DSVD,
18759       { "v34DSVD", "h245.v34DSVD",
18760         FT_NONE, BASE_NONE, NULL, 0,
18761         "h245.NULL", HFILL }},
18762     { &hf_h245_v34DuplexFAX,
18763       { "v34DuplexFAX", "h245.v34DuplexFAX",
18764         FT_NONE, BASE_NONE, NULL, 0,
18765         "h245.NULL", HFILL }},
18766     { &hf_h245_v34H324,
18767       { "v34H324", "h245.v34H324",
18768         FT_NONE, BASE_NONE, NULL, 0,
18769         "h245.NULL", HFILL }},
18770     { &hf_h245_isdnOptions,
18771       { "isdnOptions", "h245.isdnOptions",
18772         FT_UINT32, BASE_DEC, VALS(h245_T_isdnOptions_vals), 0,
18773         "h245.T_isdnOptions", HFILL }},
18774     { &hf_h245_v140,
18775       { "v140", "h245.v140",
18776         FT_NONE, BASE_NONE, NULL, 0,
18777         "h245.NULL", HFILL }},
18778     { &hf_h245_terminalOnHold,
18779       { "terminalOnHold", "h245.terminalOnHold",
18780         FT_NONE, BASE_NONE, NULL, 0,
18781         "h245.NULL", HFILL }},
18782     { &hf_h245_cancelBroadcastMyLogicalChannel,
18783       { "cancelBroadcastMyLogicalChannel", "h245.cancelBroadcastMyLogicalChannel",
18784         FT_UINT32, BASE_DEC, NULL, 0,
18785         "h245.LogicalChannelNumber", HFILL }},
18786     { &hf_h245_cancelMakeTerminalBroadcaster,
18787       { "cancelMakeTerminalBroadcaster", "h245.cancelMakeTerminalBroadcaster",
18788         FT_NONE, BASE_NONE, NULL, 0,
18789         "h245.NULL", HFILL }},
18790     { &hf_h245_cancelSendThisSource,
18791       { "cancelSendThisSource", "h245.cancelSendThisSource",
18792         FT_NONE, BASE_NONE, NULL, 0,
18793         "h245.NULL", HFILL }},
18794     { &hf_h245_dropConference,
18795       { "dropConference", "h245.dropConference",
18796         FT_NONE, BASE_NONE, NULL, 0,
18797         "h245.NULL", HFILL }},
18798     { &hf_h245_substituteConferenceIDCommand,
18799       { "substituteConferenceIDCommand", "h245.substituteConferenceIDCommand",
18800         FT_NONE, BASE_NONE, NULL, 0,
18801         "h245.SubstituteConferenceIDCommand", HFILL }},
18802     { &hf_h245_conferenceIdentifier,
18803       { "conferenceIdentifier", "h245.conferenceIdentifier",
18804         FT_BYTES, BASE_HEX, NULL, 0,
18805         "h245.OCTET_STRING_SIZE_16", HFILL }},
18806     { &hf_h245_masterToSlave,
18807       { "masterToSlave", "h245.masterToSlave",
18808         FT_NONE, BASE_NONE, NULL, 0,
18809         "h245.NULL", HFILL }},
18810     { &hf_h245_slaveToMaster,
18811       { "slaveToMaster", "h245.slaveToMaster",
18812         FT_NONE, BASE_NONE, NULL, 0,
18813         "h245.NULL", HFILL }},
18814     { &hf_h245_mc_type,
18815       { "type", "h245.type",
18816         FT_UINT32, BASE_DEC, VALS(h245_Mc_type_vals), 0,
18817         "h245.Mc_type", HFILL }},
18818     { &hf_h245_equaliseDelay,
18819       { "equaliseDelay", "h245.equaliseDelay",
18820         FT_NONE, BASE_NONE, NULL, 0,
18821         "h245.NULL", HFILL }},
18822     { &hf_h245_zeroDelay,
18823       { "zeroDelay", "h245.zeroDelay",
18824         FT_NONE, BASE_NONE, NULL, 0,
18825         "h245.NULL", HFILL }},
18826     { &hf_h245_multipointModeCommand,
18827       { "multipointModeCommand", "h245.multipointModeCommand",
18828         FT_NONE, BASE_NONE, NULL, 0,
18829         "h245.NULL", HFILL }},
18830     { &hf_h245_cancelMultipointModeCommand,
18831       { "cancelMultipointModeCommand", "h245.cancelMultipointModeCommand",
18832         FT_NONE, BASE_NONE, NULL, 0,
18833         "h245.NULL", HFILL }},
18834     { &hf_h245_videoFreezePicture,
18835       { "videoFreezePicture", "h245.videoFreezePicture",
18836         FT_NONE, BASE_NONE, NULL, 0,
18837         "h245.NULL", HFILL }},
18838     { &hf_h245_videoFastUpdatePicture,
18839       { "videoFastUpdatePicture", "h245.videoFastUpdatePicture",
18840         FT_NONE, BASE_NONE, NULL, 0,
18841         "h245.NULL", HFILL }},
18842     { &hf_h245_videoFastUpdateGOB,
18843       { "videoFastUpdateGOB", "h245.videoFastUpdateGOB",
18844         FT_NONE, BASE_NONE, NULL, 0,
18845         "h245.T_videoFastUpdateGOB", HFILL }},
18846     { &hf_h245_firstGOB,
18847       { "firstGOB", "h245.firstGOB",
18848         FT_UINT32, BASE_DEC, NULL, 0,
18849         "h245.INTEGER_0_17", HFILL }},
18850     { &hf_h245_numberOfGOBs,
18851       { "numberOfGOBs", "h245.numberOfGOBs",
18852         FT_UINT32, BASE_DEC, NULL, 0,
18853         "h245.INTEGER_1_18", HFILL }},
18854     { &hf_h245_videoTemporalSpatialTradeOff,
18855       { "videoTemporalSpatialTradeOff", "h245.videoTemporalSpatialTradeOff",
18856         FT_UINT32, BASE_DEC, NULL, 0,
18857         "h245.INTEGER_0_31", HFILL }},
18858     { &hf_h245_videoSendSyncEveryGOB,
18859       { "videoSendSyncEveryGOB", "h245.videoSendSyncEveryGOB",
18860         FT_NONE, BASE_NONE, NULL, 0,
18861         "h245.NULL", HFILL }},
18862     { &hf_h245_videoSendSyncEveryGOBCancel,
18863       { "videoSendSyncEveryGOBCancel", "h245.videoSendSyncEveryGOBCancel",
18864         FT_NONE, BASE_NONE, NULL, 0,
18865         "h245.NULL", HFILL }},
18866     { &hf_h245_videoFastUpdateMB,
18867       { "videoFastUpdateMB", "h245.videoFastUpdateMB",
18868         FT_NONE, BASE_NONE, NULL, 0,
18869         "h245.T_videoFastUpdateMB", HFILL }},
18870     { &hf_h245_firstGOB_0_255,
18871       { "firstGOB", "h245.firstGOB",
18872         FT_UINT32, BASE_DEC, NULL, 0,
18873         "h245.INTEGER_0_255", HFILL }},
18874     { &hf_h245_firstMB_1_8192,
18875       { "firstMB", "h245.firstMB",
18876         FT_UINT32, BASE_DEC, NULL, 0,
18877         "h245.INTEGER_1_8192", HFILL }},
18878     { &hf_h245_numberOfMBs,
18879       { "numberOfMBs", "h245.numberOfMBs",
18880         FT_UINT32, BASE_DEC, NULL, 0,
18881         "h245.INTEGER_1_8192", HFILL }},
18882     { &hf_h245_maxH223MUXPDUsize,
18883       { "maxH223MUXPDUsize", "h245.maxH223MUXPDUsize",
18884         FT_UINT32, BASE_DEC, NULL, 0,
18885         "h245.INTEGER_1_65535", HFILL }},
18886     { &hf_h245_encryptionUpdate,
18887       { "encryptionUpdate", "h245.encryptionUpdate",
18888         FT_NONE, BASE_NONE, NULL, 0,
18889         "h245.EncryptionSync", HFILL }},
18890     { &hf_h245_encryptionUpdateRequest,
18891       { "encryptionUpdateRequest", "h245.encryptionUpdateRequest",
18892         FT_NONE, BASE_NONE, NULL, 0,
18893         "h245.EncryptionUpdateRequest", HFILL }},
18894     { &hf_h245_switchReceiveMediaOff,
18895       { "switchReceiveMediaOff", "h245.switchReceiveMediaOff",
18896         FT_NONE, BASE_NONE, NULL, 0,
18897         "h245.NULL", HFILL }},
18898     { &hf_h245_switchReceiveMediaOn,
18899       { "switchReceiveMediaOn", "h245.switchReceiveMediaOn",
18900         FT_NONE, BASE_NONE, NULL, 0,
18901         "h245.NULL", HFILL }},
18902     { &hf_h245_progressiveRefinementStart,
18903       { "progressiveRefinementStart", "h245.progressiveRefinementStart",
18904         FT_NONE, BASE_NONE, NULL, 0,
18905         "h245.T_progressiveRefinementStart", HFILL }},
18906     { &hf_h245_repeatCount,
18907       { "repeatCount", "h245.repeatCount",
18908         FT_UINT32, BASE_DEC, VALS(h245_T_repeatCount_vals), 0,
18909         "h245.T_repeatCount", HFILL }},
18910     { &hf_h245_doOneProgression,
18911       { "doOneProgression", "h245.doOneProgression",
18912         FT_NONE, BASE_NONE, NULL, 0,
18913         "h245.NULL", HFILL }},
18914     { &hf_h245_doContinuousProgressions,
18915       { "doContinuousProgressions", "h245.doContinuousProgressions",
18916         FT_NONE, BASE_NONE, NULL, 0,
18917         "h245.NULL", HFILL }},
18918     { &hf_h245_doOneIndependentProgression,
18919       { "doOneIndependentProgression", "h245.doOneIndependentProgression",
18920         FT_NONE, BASE_NONE, NULL, 0,
18921         "h245.NULL", HFILL }},
18922     { &hf_h245_doContinuousIndependentProgressions,
18923       { "doContinuousIndependentProgressions", "h245.doContinuousIndependentProgressions",
18924         FT_NONE, BASE_NONE, NULL, 0,
18925         "h245.NULL", HFILL }},
18926     { &hf_h245_progressiveRefinementAbortOne,
18927       { "progressiveRefinementAbortOne", "h245.progressiveRefinementAbortOne",
18928         FT_NONE, BASE_NONE, NULL, 0,
18929         "h245.NULL", HFILL }},
18930     { &hf_h245_progressiveRefinementAbortContinuous,
18931       { "progressiveRefinementAbortContinuous", "h245.progressiveRefinementAbortContinuous",
18932         FT_NONE, BASE_NONE, NULL, 0,
18933         "h245.NULL", HFILL }},
18934     { &hf_h245_videoBadMBs,
18935       { "videoBadMBs", "h245.videoBadMBs",
18936         FT_NONE, BASE_NONE, NULL, 0,
18937         "h245.T_videoBadMBs", HFILL }},
18938     { &hf_h245_firstMB,
18939       { "firstMB", "h245.firstMB",
18940         FT_UINT32, BASE_DEC, NULL, 0,
18941         "h245.INTEGER_1_9216", HFILL }},
18942     { &hf_h245_numberOfMBs1_1_9216,
18943       { "numberOfMBs", "h245.numberOfMBs",
18944         FT_UINT32, BASE_DEC, NULL, 0,
18945         "h245.INTEGER_1_9216", HFILL }},
18946     { &hf_h245_temporalReference,
18947       { "temporalReference", "h245.temporalReference",
18948         FT_UINT32, BASE_DEC, NULL, 0,
18949         "h245.INTEGER_0_1023", HFILL }},
18950     { &hf_h245_lostPicture,
18951       { "lostPicture", "h245.lostPicture",
18952         FT_UINT32, BASE_DEC, NULL, 0,
18953         "h245.SEQUENCE_OF_PictureReference", HFILL }},
18954     { &hf_h245_lostPicture_item,
18955       { "Item", "h245.lostPicture_item",
18956         FT_UINT32, BASE_DEC, VALS(h245_PictureReference_vals), 0,
18957         "h245.PictureReference", HFILL }},
18958     { &hf_h245_lostPartialPicture,
18959       { "lostPartialPicture", "h245.lostPartialPicture",
18960         FT_NONE, BASE_NONE, NULL, 0,
18961         "h245.T_lostPartialPicture", HFILL }},
18962     { &hf_h245_pictureReference,
18963       { "pictureReference", "h245.pictureReference",
18964         FT_UINT32, BASE_DEC, VALS(h245_PictureReference_vals), 0,
18965         "h245.PictureReference", HFILL }},
18966     { &hf_h245_recoveryReferencePicture,
18967       { "recoveryReferencePicture", "h245.recoveryReferencePicture",
18968         FT_UINT32, BASE_DEC, NULL, 0,
18969         "h245.SEQUENCE_OF_PictureReference", HFILL }},
18970     { &hf_h245_recoveryReferencePicture_item,
18971       { "Item", "h245.recoveryReferencePicture_item",
18972         FT_UINT32, BASE_DEC, VALS(h245_PictureReference_vals), 0,
18973         "h245.PictureReference", HFILL }},
18974     { &hf_h245_encryptionUpdateCommand,
18975       { "encryptionUpdateCommand", "h245.encryptionUpdateCommand",
18976         FT_NONE, BASE_NONE, NULL, 0,
18977         "h245.T_encryptionUpdateCommand", HFILL }},
18978     { &hf_h245_encryptionUpdateAck,
18979       { "encryptionUpdateAck", "h245.encryptionUpdateAck",
18980         FT_NONE, BASE_NONE, NULL, 0,
18981         "h245.T_encryptionUpdateAck", HFILL }},
18982     { &hf_h245_direction,
18983       { "direction", "h245.direction",
18984         FT_UINT32, BASE_DEC, VALS(h245_EncryptionUpdateDirection_vals), 0,
18985         "h245.EncryptionUpdateDirection", HFILL }},
18986     { &hf_h245_secureChannel,
18987       { "secureChannel", "h245.secureChannel",
18988         FT_BOOLEAN, 8, NULL, 0,
18989         "h245.BOOLEAN", HFILL }},
18990     { &hf_h245_sharedSecret,
18991       { "sharedSecret", "h245.sharedSecret",
18992         FT_BOOLEAN, 8, NULL, 0,
18993         "h245.BOOLEAN", HFILL }},
18994     { &hf_h245_certProtectedKey,
18995       { "certProtectedKey", "h245.certProtectedKey",
18996         FT_BOOLEAN, 8, NULL, 0,
18997         "h245.BOOLEAN", HFILL }},
18998     { &hf_h245_keyProtectionMethod,
18999       { "keyProtectionMethod", "h245.keyProtectionMethod",
19000         FT_NONE, BASE_NONE, NULL, 0,
19001         "h245.KeyProtectionMethod", HFILL }},
19002     { &hf_h245_pictureNumber,
19003       { "pictureNumber", "h245.pictureNumber",
19004         FT_UINT32, BASE_DEC, NULL, 0,
19005         "h245.INTEGER_0_1023", HFILL }},
19006     { &hf_h245_longTermPictureIndex,
19007       { "longTermPictureIndex", "h245.longTermPictureIndex",
19008         FT_UINT32, BASE_DEC, NULL, 0,
19009         "h245.INTEGER_0_255", HFILL }},
19010     { &hf_h245_h223ModeChange,
19011       { "h223ModeChange", "h245.h223ModeChange",
19012         FT_UINT32, BASE_DEC, VALS(h245_T_h223ModeChange_vals), 0,
19013         "h245.T_h223ModeChange", HFILL }},
19014     { &hf_h245_toLevel0,
19015       { "toLevel0", "h245.toLevel0",
19016         FT_NONE, BASE_NONE, NULL, 0,
19017         "h245.NULL", HFILL }},
19018     { &hf_h245_toLevel1,
19019       { "toLevel1", "h245.toLevel1",
19020         FT_NONE, BASE_NONE, NULL, 0,
19021         "h245.NULL", HFILL }},
19022     { &hf_h245_toLevel2,
19023       { "toLevel2", "h245.toLevel2",
19024         FT_NONE, BASE_NONE, NULL, 0,
19025         "h245.NULL", HFILL }},
19026     { &hf_h245_toLevel2withOptionalHeader,
19027       { "toLevel2withOptionalHeader", "h245.toLevel2withOptionalHeader",
19028         FT_NONE, BASE_NONE, NULL, 0,
19029         "h245.NULL", HFILL }},
19030     { &hf_h245_h223AnnexADoubleFlag,
19031       { "h223AnnexADoubleFlag", "h245.h223AnnexADoubleFlag",
19032         FT_UINT32, BASE_DEC, VALS(h245_T_h223AnnexADoubleFlag_vals), 0,
19033         "h245.T_h223AnnexADoubleFlag", HFILL }},
19034     { &hf_h245_start,
19035       { "start", "h245.start",
19036         FT_NONE, BASE_NONE, NULL, 0,
19037         "h245.NULL", HFILL }},
19038     { &hf_h245_stop,
19039       { "stop", "h245.stop",
19040         FT_NONE, BASE_NONE, NULL, 0,
19041         "h245.NULL", HFILL }},
19042     { &hf_h245_bitRate,
19043       { "bitRate", "h245.bitRate",
19044         FT_UINT32, BASE_DEC, NULL, 0,
19045         "h245.INTEGER_1_65535", HFILL }},
19046     { &hf_h245_bitRateLockedToPCRClock,
19047       { "bitRateLockedToPCRClock", "h245.bitRateLockedToPCRClock",
19048         FT_BOOLEAN, 8, NULL, 0,
19049         "h245.BOOLEAN", HFILL }},
19050     { &hf_h245_bitRateLockedToNetworkClock,
19051       { "bitRateLockedToNetworkClock", "h245.bitRateLockedToNetworkClock",
19052         FT_BOOLEAN, 8, NULL, 0,
19053         "h245.BOOLEAN", HFILL }},
19054     { &hf_h245_cmd_aal,
19055       { "aal", "h245.aal",
19056         FT_UINT32, BASE_DEC, VALS(h245_Cmd_aal_vals), 0,
19057         "h245.Cmd_aal", HFILL }},
19058     { &hf_h245_cmd_aal1,
19059       { "aal1", "h245.aal1",
19060         FT_NONE, BASE_NONE, NULL, 0,
19061         "h245.Cmd_aal1", HFILL }},
19062     { &hf_h245_cmd_clockRecovery,
19063       { "clockRecovery", "h245.clockRecovery",
19064         FT_UINT32, BASE_DEC, VALS(h245_Cmd_clockRecovery_vals), 0,
19065         "h245.Cmd_clockRecovery", HFILL }},
19066     { &hf_h245_nullClockRecoveryflag,
19067       { "nullClockRecovery", "h245.nullClockRecovery",
19068         FT_NONE, BASE_NONE, NULL, 0,
19069         "h245.NULL", HFILL }},
19070     { &hf_h245_srtsClockRecovery,
19071       { "srtsClockRecovery", "h245.srtsClockRecovery",
19072         FT_NONE, BASE_NONE, NULL, 0,
19073         "h245.NULL", HFILL }},
19074     { &hf_h245_adaptiveClockRecoveryFlag,
19075       { "adaptiveClockRecovery", "h245.adaptiveClockRecovery",
19076         FT_NONE, BASE_NONE, NULL, 0,
19077         "h245.NULL", HFILL }},
19078     { &hf_h245_cmd_errorCorrection,
19079       { "errorCorrection", "h245.errorCorrection",
19080         FT_UINT32, BASE_DEC, VALS(h245_Cmd_errorCorrection_vals), 0,
19081         "h245.Cmd_errorCorrection", HFILL }},
19082     { &hf_h245_nullErrorCorrectionFlag,
19083       { "nullErrorCorrection", "h245.nullErrorCorrection",
19084         FT_NONE, BASE_NONE, NULL, 0,
19085         "h245.NULL", HFILL }},
19086     { &hf_h245_longInterleaverFlag,
19087       { "longInterleaver", "h245.longInterleaver",
19088         FT_NONE, BASE_NONE, NULL, 0,
19089         "h245.NULL", HFILL }},
19090     { &hf_h245_shortInterleaverFlag,
19091       { "shortInterleaver", "h245.shortInterleaver",
19092         FT_NONE, BASE_NONE, NULL, 0,
19093         "h245.NULL", HFILL }},
19094     { &hf_h245_errorCorrectionOnlyFlag,
19095       { "errorCorrectionOnly", "h245.errorCorrectionOnly",
19096         FT_NONE, BASE_NONE, NULL, 0,
19097         "h245.NULL", HFILL }},
19098     { &hf_h245_cmd_aal5,
19099       { "aal5", "h245.aal5",
19100         FT_NONE, BASE_NONE, NULL, 0,
19101         "h245.Cmd_aal5", HFILL }},
19102     { &hf_h245_cmd_multiplex,
19103       { "multiplex", "h245.multiplex",
19104         FT_UINT32, BASE_DEC, VALS(h245_Cmd_multiplex_vals), 0,
19105         "h245.Cmd_multiplex", HFILL }},
19106     { &hf_h245_noMultiplex,
19107       { "noMultiplex", "h245.noMultiplex",
19108         FT_NONE, BASE_NONE, NULL, 0,
19109         "h245.NULL", HFILL }},
19110     { &hf_h245_transportStream,
19111       { "transportStream", "h245.transportStream",
19112         FT_NONE, BASE_NONE, NULL, 0,
19113         "h245.NULL", HFILL }},
19114     { &hf_h245_programStreamFlag,
19115       { "programStream", "h245.programStream",
19116         FT_NONE, BASE_NONE, NULL, 0,
19117         "h245.NULL", HFILL }},
19118     { &hf_h245_cmd_reverseParameters,
19119       { "reverseParameters", "h245.reverseParameters",
19120         FT_NONE, BASE_NONE, NULL, 0,
19121         "h245.Cmd_reverseParameters", HFILL }},
19122     { &hf_h245_cmdr_multiplex,
19123       { "multiplex", "h245.multiplex",
19124         FT_UINT32, BASE_DEC, VALS(h245_CmdR_multiplex_vals), 0,
19125         "h245.CmdR_multiplex", HFILL }},
19126     { &hf_h245_sampleSize,
19127       { "sampleSize", "h245.sampleSize",
19128         FT_UINT32, BASE_DEC, NULL, 0,
19129         "h245.INTEGER_1_255", HFILL }},
19130     { &hf_h245_samplesPerFrame,
19131       { "samplesPerFrame", "h245.samplesPerFrame",
19132         FT_UINT32, BASE_DEC, NULL, 0,
19133         "h245.INTEGER_1_255", HFILL }},
19134     { &hf_h245_status,
19135       { "status", "h245.status",
19136         FT_UINT32, BASE_DEC, VALS(h245_T_status_vals), 0,
19137         "h245.T_status", HFILL }},
19138     { &hf_h245_synchronized,
19139       { "synchronized", "h245.synchronized",
19140         FT_NONE, BASE_NONE, NULL, 0,
19141         "h245.NULL", HFILL }},
19142     { &hf_h245_reconfiguration,
19143       { "reconfiguration", "h245.reconfiguration",
19144         FT_NONE, BASE_NONE, NULL, 0,
19145         "h245.NULL", HFILL }},
19146     { &hf_h245_fns_cause,
19147       { "cause", "h245.cause",
19148         FT_UINT32, BASE_DEC, VALS(h245_FunctionNotSupportedCause_vals), 0,
19149         "h245.FunctionNotSupportedCause", HFILL }},
19150     { &hf_h245_syntaxError,
19151       { "syntaxError", "h245.syntaxError",
19152         FT_NONE, BASE_NONE, NULL, 0,
19153         "h245.NULL", HFILL }},
19154     { &hf_h245_semanticError,
19155       { "semanticError", "h245.semanticError",
19156         FT_NONE, BASE_NONE, NULL, 0,
19157         "h245.NULL", HFILL }},
19158     { &hf_h245_unknownFunction,
19159       { "unknownFunction", "h245.unknownFunction",
19160         FT_NONE, BASE_NONE, NULL, 0,
19161         "h245.NULL", HFILL }},
19162     { &hf_h245_returnedFunction,
19163       { "returnedFunction", "h245.returnedFunction",
19164         FT_BYTES, BASE_HEX, NULL, 0,
19165         "h245.OCTET_STRING", HFILL }},
19166     { &hf_h245_sbeNumber,
19167       { "sbeNumber", "h245.sbeNumber",
19168         FT_UINT32, BASE_DEC, NULL, 0,
19169         "h245.INTEGER_0_9", HFILL }},
19170     { &hf_h245_terminalNumberAssign,
19171       { "terminalNumberAssign", "h245.terminalNumberAssign",
19172         FT_NONE, BASE_NONE, NULL, 0,
19173         "h245.TerminalLabel", HFILL }},
19174     { &hf_h245_terminalJoinedConference,
19175       { "terminalJoinedConference", "h245.terminalJoinedConference",
19176         FT_NONE, BASE_NONE, NULL, 0,
19177         "h245.TerminalLabel", HFILL }},
19178     { &hf_h245_terminalLeftConference,
19179       { "terminalLeftConference", "h245.terminalLeftConference",
19180         FT_NONE, BASE_NONE, NULL, 0,
19181         "h245.TerminalLabel", HFILL }},
19182     { &hf_h245_seenByAtLeastOneOther,
19183       { "seenByAtLeastOneOther", "h245.seenByAtLeastOneOther",
19184         FT_NONE, BASE_NONE, NULL, 0,
19185         "h245.NULL", HFILL }},
19186     { &hf_h245_cancelSeenByAtLeastOneOther,
19187       { "cancelSeenByAtLeastOneOther", "h245.cancelSeenByAtLeastOneOther",
19188         FT_NONE, BASE_NONE, NULL, 0,
19189         "h245.NULL", HFILL }},
19190     { &hf_h245_seenByAll,
19191       { "seenByAll", "h245.seenByAll",
19192         FT_NONE, BASE_NONE, NULL, 0,
19193         "h245.NULL", HFILL }},
19194     { &hf_h245_cancelSeenByAll,
19195       { "cancelSeenByAll", "h245.cancelSeenByAll",
19196         FT_NONE, BASE_NONE, NULL, 0,
19197         "h245.NULL", HFILL }},
19198     { &hf_h245_terminalYouAreSeeing,
19199       { "terminalYouAreSeeing", "h245.terminalYouAreSeeing",
19200         FT_NONE, BASE_NONE, NULL, 0,
19201         "h245.TerminalLabel", HFILL }},
19202     { &hf_h245_requestForFloor,
19203       { "requestForFloor", "h245.requestForFloor",
19204         FT_NONE, BASE_NONE, NULL, 0,
19205         "h245.NULL", HFILL }},
19206     { &hf_h245_withdrawChairToken,
19207       { "withdrawChairToken", "h245.withdrawChairToken",
19208         FT_NONE, BASE_NONE, NULL, 0,
19209         "h245.NULL", HFILL }},
19210     { &hf_h245_floorRequested,
19211       { "floorRequested", "h245.floorRequested",
19212         FT_NONE, BASE_NONE, NULL, 0,
19213         "h245.TerminalLabel", HFILL }},
19214     { &hf_h245_terminalYouAreSeeingInSubPictureNumber,
19215       { "terminalYouAreSeeingInSubPictureNumber", "h245.terminalYouAreSeeingInSubPictureNumber",
19216         FT_NONE, BASE_NONE, NULL, 0,
19217         "h245.TerminalYouAreSeeingInSubPictureNumber", HFILL }},
19218     { &hf_h245_videoIndicateCompose,
19219       { "videoIndicateCompose", "h245.videoIndicateCompose",
19220         FT_NONE, BASE_NONE, NULL, 0,
19221         "h245.VideoIndicateCompose", HFILL }},
19222     { &hf_h245_subPictureNumber,
19223       { "subPictureNumber", "h245.subPictureNumber",
19224         FT_UINT32, BASE_DEC, NULL, 0,
19225         "h245.INTEGER_0_255", HFILL }},
19226     { &hf_h245_compositionNumber,
19227       { "compositionNumber", "h245.compositionNumber",
19228         FT_UINT32, BASE_DEC, NULL, 0,
19229         "h245.INTEGER_0_255", HFILL }},
19230     { &hf_h245_mi_type,
19231       { "type", "h245.type",
19232         FT_UINT32, BASE_DEC, VALS(h245_Mi_type_vals), 0,
19233         "h245.Mi_type", HFILL }},
19234     { &hf_h245_logicalChannelActive,
19235       { "logicalChannelActive", "h245.logicalChannelActive",
19236         FT_NONE, BASE_NONE, NULL, 0,
19237         "h245.NULL", HFILL }},
19238     { &hf_h245_logicalChannelInactive,
19239       { "logicalChannelInactive", "h245.logicalChannelInactive",
19240         FT_NONE, BASE_NONE, NULL, 0,
19241         "h245.NULL", HFILL }},
19242     { &hf_h245_multipointConference,
19243       { "multipointConference", "h245.multipointConference",
19244         FT_NONE, BASE_NONE, NULL, 0,
19245         "h245.NULL", HFILL }},
19246     { &hf_h245_cancelMultipointConference,
19247       { "cancelMultipointConference", "h245.cancelMultipointConference",
19248         FT_NONE, BASE_NONE, NULL, 0,
19249         "h245.NULL", HFILL }},
19250     { &hf_h245_multipointZeroComm,
19251       { "multipointZeroComm", "h245.multipointZeroComm",
19252         FT_NONE, BASE_NONE, NULL, 0,
19253         "h245.NULL", HFILL }},
19254     { &hf_h245_cancelMultipointZeroComm,
19255       { "cancelMultipointZeroComm", "h245.cancelMultipointZeroComm",
19256         FT_NONE, BASE_NONE, NULL, 0,
19257         "h245.NULL", HFILL }},
19258     { &hf_h245_multipointSecondaryStatus,
19259       { "multipointSecondaryStatus", "h245.multipointSecondaryStatus",
19260         FT_NONE, BASE_NONE, NULL, 0,
19261         "h245.NULL", HFILL }},
19262     { &hf_h245_cancelMultipointSecondaryStatus,
19263       { "cancelMultipointSecondaryStatus", "h245.cancelMultipointSecondaryStatus",
19264         FT_NONE, BASE_NONE, NULL, 0,
19265         "h245.NULL", HFILL }},
19266     { &hf_h245_videoIndicateReadyToActivate,
19267       { "videoIndicateReadyToActivate", "h245.videoIndicateReadyToActivate",
19268         FT_NONE, BASE_NONE, NULL, 0,
19269         "h245.NULL", HFILL }},
19270     { &hf_h245_videoNotDecodedMBs,
19271       { "videoNotDecodedMBs", "h245.videoNotDecodedMBs",
19272         FT_NONE, BASE_NONE, NULL, 0,
19273         "h245.T_videoNotDecodedMBs", HFILL }},
19274     { &hf_h245_temporalReference_0_255,
19275       { "temporalReference", "h245.temporalReference",
19276         FT_UINT32, BASE_DEC, NULL, 0,
19277         "h245.INTEGER_0_255", HFILL }},
19278     { &hf_h245_estimatedReceivedJitterMantissa,
19279       { "estimatedReceivedJitterMantissa", "h245.estimatedReceivedJitterMantissa",
19280         FT_UINT32, BASE_DEC, NULL, 0,
19281         "h245.INTEGER_0_3", HFILL }},
19282     { &hf_h245_estimatedReceivedJitterExponent,
19283       { "estimatedReceivedJitterExponent", "h245.estimatedReceivedJitterExponent",
19284         FT_UINT32, BASE_DEC, NULL, 0,
19285         "h245.INTEGER_0_7", HFILL }},
19286     { &hf_h245_skippedFrameCount,
19287       { "skippedFrameCount", "h245.skippedFrameCount",
19288         FT_UINT32, BASE_DEC, NULL, 0,
19289         "h245.INTEGER_0_15", HFILL }},
19290     { &hf_h245_additionalDecoderBuffer,
19291       { "additionalDecoderBuffer", "h245.additionalDecoderBuffer",
19292         FT_UINT32, BASE_DEC, NULL, 0,
19293         "h245.INTEGER_0_262143", HFILL }},
19294     { &hf_h245_logicalChannelNumber1,
19295       { "logicalChannelNumber1", "h245.logicalChannelNumber1",
19296         FT_UINT32, BASE_DEC, NULL, 0,
19297         "h245.LogicalChannelNumber", HFILL }},
19298     { &hf_h245_logicalChannelNumber2,
19299       { "logicalChannelNumber2", "h245.logicalChannelNumber2",
19300         FT_UINT32, BASE_DEC, NULL, 0,
19301         "h245.LogicalChannelNumber", HFILL }},
19302     { &hf_h245_skew,
19303       { "skew", "h245.skew",
19304         FT_UINT32, BASE_DEC, NULL, 0,
19305         "h245.INTEGER_0_4095", HFILL }},
19306     { &hf_h245_maximumSkew,
19307       { "maximumSkew", "h245.maximumSkew",
19308         FT_UINT32, BASE_DEC, NULL, 0,
19309         "h245.INTEGER_0_4095", HFILL }},
19310     { &hf_h245_signalAddress,
19311       { "signalAddress", "h245.signalAddress",
19312         FT_UINT32, BASE_DEC, VALS(h245_TransportAddress_vals), 0,
19313         "h245.TransportAddress", HFILL }},
19314     { &hf_h245_vendor,
19315       { "vendor", "h245.vendor",
19316         FT_UINT32, BASE_DEC, VALS(h245_NonStandardIdentifier_vals), 0,
19317         "h245.NonStandardIdentifier", HFILL }},
19318     { &hf_h245_productNumber,
19319       { "productNumber", "h245.productNumber",
19320         FT_STRING, BASE_HEX, NULL, 0,
19321         "h245.OCTET_STRING_SIZE_1_256", HFILL }},
19322     { &hf_h245_versionNumber,
19323       { "versionNumber", "h245.versionNumber",
19324         FT_STRING, BASE_HEX, NULL, 0,
19325         "h245.OCTET_STRING_SIZE_1_256", HFILL }},
19326     { &hf_h245_ind_aal,
19327       { "aal", "h245.aal",
19328         FT_UINT32, BASE_DEC, VALS(h245_Ind_aal_vals), 0,
19329         "h245.Ind_aal", HFILL }},
19330     { &hf_h245_ind_aal1,
19331       { "aal1", "h245.aal1",
19332         FT_NONE, BASE_NONE, NULL, 0,
19333         "h245.Ind_aal1", HFILL }},
19334     { &hf_h245_ind_clockRecovery,
19335       { "clockRecovery", "h245.clockRecovery",
19336         FT_UINT32, BASE_DEC, VALS(h245_Ind_clockRecovery_vals), 0,
19337         "h245.Ind_clockRecovery", HFILL }},
19338     { &hf_h245_ind_errorCorrection,
19339       { "errorCorrection", "h245.errorCorrection",
19340         FT_UINT32, BASE_DEC, VALS(h245_Ind_errorCorrection_vals), 0,
19341         "h245.Ind_errorCorrection", HFILL }},
19342     { &hf_h245_ind_aal5,
19343       { "aal5", "h245.aal5",
19344         FT_NONE, BASE_NONE, NULL, 0,
19345         "h245.Ind_aal5", HFILL }},
19346     { &hf_h245_ind_multiplex,
19347       { "multiplex", "h245.multiplex",
19348         FT_UINT32, BASE_DEC, VALS(h245_Ind_multiplex_vals), 0,
19349         "h245.Ind_multiplex", HFILL }},
19350     { &hf_h245_ind_reverseParameters,
19351       { "reverseParameters", "h245.reverseParameters",
19352         FT_NONE, BASE_NONE, NULL, 0,
19353         "h245.Ind_reverseParameters", HFILL }},
19354     { &hf_h245_indr_multiplex,
19355       { "multiplex", "h245.multiplex",
19356         FT_UINT32, BASE_DEC, VALS(h245_IndR_multiplex_vals), 0,
19357         "h245.IndR_multiplex", HFILL }},
19358     { &hf_h245_iv8,
19359       { "iv8", "h245.iv8",
19360         FT_BYTES, BASE_HEX, NULL, 0,
19361         "h245.IV8", HFILL }},
19362     { &hf_h245_iv16,
19363       { "iv16", "h245.iv16",
19364         FT_BYTES, BASE_HEX, NULL, 0,
19365         "h245.IV16", HFILL }},
19366     { &hf_h245_iv,
19367       { "iv", "h245.iv",
19368         FT_BYTES, BASE_HEX, NULL, 0,
19369         "h245.OCTET_STRING", HFILL }},
19370     { &hf_h245_alphanumeric,
19371       { "alphanumeric", "h245.alphanumeric",
19372         FT_STRING, BASE_NONE, NULL, 0,
19373         "h245.GeneralString", HFILL }},
19374     { &hf_h245_userInputSupportIndication,
19375       { "userInputSupportIndication", "h245.userInputSupportIndication",
19376         FT_UINT32, BASE_DEC, VALS(h245_T_userInputSupportIndication_vals), 0,
19377         "h245.T_userInputSupportIndication", HFILL }},
19378     { &hf_h245_signal,
19379       { "signal", "h245.signal",
19380         FT_NONE, BASE_NONE, NULL, 0,
19381         "h245.T_signal", HFILL }},
19382     { &hf_h245_signalType,
19383       { "signalType", "h245.signalType",
19384         FT_STRING, BASE_NONE, NULL, 0,
19385         "h245.T_signalType", HFILL }},
19386     { &hf_h245_duration,
19387       { "duration", "h245.duration",
19388         FT_UINT32, BASE_DEC, NULL, 0,
19389         "h245.INTEGER_1_65535", HFILL }},
19390     { &hf_h245_rtp,
19391       { "rtp", "h245.rtp",
19392         FT_NONE, BASE_NONE, NULL, 0,
19393         "h245.T_rtp", HFILL }},
19394     { &hf_h245_timestamp,
19395       { "timestamp", "h245.timestamp",
19396         FT_UINT32, BASE_DEC, NULL, 0,
19397         "h245.INTEGER_0_4294967295", HFILL }},
19398     { &hf_h245_expirationTime,
19399       { "expirationTime", "h245.expirationTime",
19400         FT_UINT32, BASE_DEC, NULL, 0,
19401         "h245.INTEGER_0_4294967295", HFILL }},
19402     { &hf_h245_rtpPayloadIndication,
19403       { "rtpPayloadIndication", "h245.rtpPayloadIndication",
19404         FT_NONE, BASE_NONE, NULL, 0,
19405         "h245.NULL", HFILL }},
19406     { &hf_h245_paramS,
19407       { "paramS", "h245.paramS",
19408         FT_NONE, BASE_NONE, NULL, 0,
19409         "h245.Params", HFILL }},
19410     { &hf_h245_encryptedSignalType,
19411       { "encryptedSignalType", "h245.encryptedSignalType",
19412         FT_BYTES, BASE_HEX, NULL, 0,
19413         "h245.OCTET_STRING_SIZE_1", HFILL }},
19414     { &hf_h245_algorithmOID,
19415       { "algorithmOID", "h245.algorithmOID",
19416         FT_OID, BASE_NONE, NULL, 0,
19417         "h245.OBJECT_IDENTIFIER", HFILL }},
19418     { &hf_h245_signalUpdate,
19419       { "signalUpdate", "h245.signalUpdate",
19420         FT_NONE, BASE_NONE, NULL, 0,
19421         "h245.T_signalUpdate", HFILL }},
19422     { &hf_h245_si_rtp,
19423       { "rtp", "h245.rtp",
19424         FT_NONE, BASE_NONE, NULL, 0,
19425         "h245.Si_rtp", HFILL }},
19426     { &hf_h245_extendedAlphanumeric,
19427       { "extendedAlphanumeric", "h245.extendedAlphanumeric",
19428         FT_NONE, BASE_NONE, NULL, 0,
19429         "h245.T_extendedAlphanumeric", HFILL }},
19430     { &hf_h245_encrypted,
19431       { "encrypted", "h245.encrypted",
19432         FT_BYTES, BASE_HEX, NULL, 0,
19433         "h245.OCTET_STRING", HFILL }},
19434     { &hf_h245_encryptedAlphanumeric,
19435       { "encryptedAlphanumeric", "h245.encryptedAlphanumeric",
19436         FT_NONE, BASE_NONE, NULL, 0,
19437         "h245.EncryptedAlphanumeric", HFILL }},
19438
19439 /*--- End of included file: packet-h245-hfarr.c ---*/
19440 #line 352 "packet-h245-template.c"
19441   };
19442
19443   /* List of subtrees */
19444   static gint *ett[] = {
19445           &ett_h245,
19446
19447 /*--- Included file: packet-h245-ettarr.c ---*/
19448 #line 1 "packet-h245-ettarr.c"
19449     &ett_h245_MultimediaSystemControlMessage,
19450     &ett_h245_RequestMessage,
19451     &ett_h245_ResponseMessage,
19452     &ett_h245_CommandMessage,
19453     &ett_h245_IndicationMessage,
19454     &ett_h245_GenericMessage,
19455     &ett_h245_SEQUENCE_OF_GenericParameter,
19456     &ett_h245_NonStandardMessage,
19457     &ett_h245_NonStandardParameter,
19458     &ett_h245_NonStandardIdentifier,
19459     &ett_h245_H221NonStandardID,
19460     &ett_h245_MasterSlaveDetermination,
19461     &ett_h245_MasterSlaveDeterminationAck,
19462     &ett_h245_T_decision,
19463     &ett_h245_MasterSlaveDeterminationReject,
19464     &ett_h245_MasterSlaveDeterminationRejectCause,
19465     &ett_h245_MasterSlaveDeterminationRelease,
19466     &ett_h245_TerminalCapabilitySet,
19467     &ett_h245_SET_SIZE_1_256_OF_CapabilityTableEntry,
19468     &ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptor,
19469     &ett_h245_SEQUENCE_OF_GenericInformation,
19470     &ett_h245_CapabilityTableEntry,
19471     &ett_h245_CapabilityDescriptor,
19472     &ett_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet,
19473     &ett_h245_AlternativeCapabilitySet,
19474     &ett_h245_TerminalCapabilitySetAck,
19475     &ett_h245_TerminalCapabilitySetReject,
19476     &ett_h245_TerminalCapabilitySetRejectCause,
19477     &ett_h245_T_tableEntryCapacityExceeded,
19478     &ett_h245_TerminalCapabilitySetRelease,
19479     &ett_h245_Capability,
19480     &ett_h245_T_h233EncryptionReceiveCapability,
19481     &ett_h245_H235SecurityCapability,
19482     &ett_h245_MultiplexCapability,
19483     &ett_h245_H222Capability,
19484     &ett_h245_SET_OF_VCCapability,
19485     &ett_h245_VCCapability,
19486     &ett_h245_T_aal1,
19487     &ett_h245_T_aal5,
19488     &ett_h245_T_availableBitRates,
19489     &ett_h245_Avb_type,
19490     &ett_h245_T_rangeOfBitRates,
19491     &ett_h245_T_aal1ViaGateway,
19492     &ett_h245_SET_SIZE_1_256_OF_Q2931Address,
19493     &ett_h245_H223Capability,
19494     &ett_h245_T_h223MultiplexTableCapability,
19495     &ett_h245_T_enhanced,
19496     &ett_h245_T_mobileOperationTransmitCapability,
19497     &ett_h245_T_mobileMultilinkFrameCapability,
19498     &ett_h245_H223AnnexCCapability,
19499     &ett_h245_V76Capability,
19500     &ett_h245_V75Capability,
19501     &ett_h245_H2250Capability,
19502     &ett_h245_T_mcCapability,
19503     &ett_h245_SEQUENCE_SIZE_1_256_OF_RedundancyEncodingCapability,
19504     &ett_h245_MediaPacketizationCapability,
19505     &ett_h245_SEQUENCE_SIZE_1_256_OF_RTPPayloadType,
19506     &ett_h245_RSVPParameters,
19507     &ett_h245_QOSMode,
19508     &ett_h245_ATMParameters,
19509     &ett_h245_ServicePriorityValue,
19510     &ett_h245_ServicePriority,
19511     &ett_h245_AuthorizationParameters,
19512     &ett_h245_QOSType,
19513     &ett_h245_QOSClass,
19514     &ett_h245_QOSDescriptor,
19515     &ett_h245_GenericTransportParameters,
19516     &ett_h245_QOSCapability,
19517     &ett_h245_MediaTransportType,
19518     &ett_h245_T_atm_AAL5_compressed,
19519     &ett_h245_MediaChannelCapability,
19520     &ett_h245_TransportCapability,
19521     &ett_h245_SEQUENCE_SIZE_1_256_OF_QOSCapability,
19522     &ett_h245_SEQUENCE_SIZE_1_256_OF_MediaChannelCapability,
19523     &ett_h245_RedundancyEncodingCapability,
19524     &ett_h245_SEQUENCE_SIZE_1_256_OF_CapabilityTableEntryNumber,
19525     &ett_h245_RedundancyEncodingMethod,
19526     &ett_h245_RTPH263VideoRedundancyEncoding,
19527     &ett_h245_T_frameToThreadMapping,
19528     &ett_h245_SEQUENCE_SIZE_1_256_OF_RTPH263VideoRedundancyFrameMapping,
19529     &ett_h245_T_containedThreads,
19530     &ett_h245_RTPH263VideoRedundancyFrameMapping,
19531     &ett_h245_T_frameSequence,
19532     &ett_h245_MultipointCapability,
19533     &ett_h245_SEQUENCE_OF_MediaDistributionCapability,
19534     &ett_h245_MediaDistributionCapability,
19535     &ett_h245_SEQUENCE_OF_DataApplicationCapability,
19536     &ett_h245_VideoCapability,
19537     &ett_h245_ExtendedVideoCapability,
19538     &ett_h245_SEQUENCE_OF_VideoCapability,
19539     &ett_h245_SEQUENCE_OF_GenericCapability,
19540     &ett_h245_H261VideoCapability,
19541     &ett_h245_H262VideoCapability,
19542     &ett_h245_H263VideoCapability,
19543     &ett_h245_EnhancementLayerInfo,
19544     &ett_h245_SET_SIZE_1_14_OF_EnhancementOptions,
19545     &ett_h245_SET_SIZE_1_14_OF_BEnhancementParameters,
19546     &ett_h245_BEnhancementParameters,
19547     &ett_h245_EnhancementOptions,
19548     &ett_h245_H263Options,
19549     &ett_h245_SET_SIZE_1_16_OF_CustomPictureClockFrequency,
19550     &ett_h245_SET_SIZE_1_16_OF_CustomPictureFormat,
19551     &ett_h245_SET_SIZE_1_16_OF_H263VideoModeCombos,
19552     &ett_h245_TransparencyParameters,
19553     &ett_h245_RefPictureSelection,
19554     &ett_h245_T_additionalPictureMemory,
19555     &ett_h245_T_videoBackChannelSend,
19556     &ett_h245_T_enhancedReferencePicSelect,
19557     &ett_h245_T_subPictureRemovalParameters,
19558     &ett_h245_CustomPictureClockFrequency,
19559     &ett_h245_CustomPictureFormat,
19560     &ett_h245_T_mPI,
19561     &ett_h245_T_customPCF,
19562     &ett_h245_T_customPCF_item,
19563     &ett_h245_T_pixelAspectInformation,
19564     &ett_h245_T_pixelAspectCode,
19565     &ett_h245_T_extendedPAR,
19566     &ett_h245_T_extendedPAR_item,
19567     &ett_h245_H263VideoModeCombos,
19568     &ett_h245_SET_SIZE_1_16_OF_H263ModeComboFlags,
19569     &ett_h245_H263ModeComboFlags,
19570     &ett_h245_H263Version3Options,
19571     &ett_h245_IS11172VideoCapability,
19572     &ett_h245_AudioCapability,
19573     &ett_h245_T_g7231,
19574     &ett_h245_G729Extensions,
19575     &ett_h245_G7231AnnexCCapability,
19576     &ett_h245_G723AnnexCAudioMode,
19577     &ett_h245_IS11172AudioCapability,
19578     &ett_h245_IS13818AudioCapability,
19579     &ett_h245_GSMAudioCapability,
19580     &ett_h245_VBDCapability,
19581     &ett_h245_DataApplicationCapability,
19582     &ett_h245_Application,
19583     &ett_h245_T_t84,
19584     &ett_h245_Nlpid,
19585     &ett_h245_T_t38fax,
19586     &ett_h245_DataProtocolCapability,
19587     &ett_h245_T_v76wCompression,
19588     &ett_h245_CompressionType,
19589     &ett_h245_V42bis,
19590     &ett_h245_T84Profile,
19591     &ett_h245_T_t84Restricted,
19592     &ett_h245_T38FaxProfile,
19593     &ett_h245_T38FaxRateManagement,
19594     &ett_h245_T38FaxUdpOptions,
19595     &ett_h245_T_t38FaxUdpEC,
19596     &ett_h245_T38FaxTcpOptions,
19597     &ett_h245_EncryptionAuthenticationAndIntegrity,
19598     &ett_h245_EncryptionCapability,
19599     &ett_h245_MediaEncryptionAlgorithm,
19600     &ett_h245_AuthenticationCapability,
19601     &ett_h245_IntegrityCapability,
19602     &ett_h245_UserInputCapability,
19603     &ett_h245_SEQUENCE_SIZE_1_16_OF_NonStandardParameter,
19604     &ett_h245_ConferenceCapability,
19605     &ett_h245_SEQUENCE_OF_NonStandardParameter,
19606     &ett_h245_GenericCapability,
19607     &ett_h245_CapabilityIdentifier,
19608     &ett_h245_GenericParameter,
19609     &ett_h245_SEQUENCE_OF_ParameterIdentifier,
19610     &ett_h245_ParameterIdentifier,
19611     &ett_h245_ParameterValue,
19612     &ett_h245_MultiplexedStreamCapability,
19613     &ett_h245_MultiplexFormat,
19614     &ett_h245_AudioTelephonyEventCapability,
19615     &ett_h245_AudioToneCapability,
19616     &ett_h245_NoPTAudioTelephonyEventCapability,
19617     &ett_h245_NoPTAudioToneCapability,
19618     &ett_h245_MultiplePayloadStreamCapability,
19619     &ett_h245_DepFECCapability,
19620     &ett_h245_FECC_rfc2733,
19621     &ett_h245_T_separateStreamBool,
19622     &ett_h245_FECCapability,
19623     &ett_h245_Rfc2733Format,
19624     &ett_h245_OpenLogicalChannel,
19625     &ett_h245_T_forwardLogicalChannelParameters,
19626     &ett_h245_OLC_forw_multiplexParameters,
19627     &ett_h245_OLC_reverseLogicalChannelParameters,
19628     &ett_h245_OLC_rev_multiplexParameters,
19629     &ett_h245_NetworkAccessParameters,
19630     &ett_h245_T_distribution,
19631     &ett_h245_T_networkAddress,
19632     &ett_h245_T_t120SetupProcedure,
19633     &ett_h245_Q2931Address,
19634     &ett_h245_T_address,
19635     &ett_h245_V75Parameters,
19636     &ett_h245_DataType,
19637     &ett_h245_H235Media,
19638     &ett_h245_T_mediaType,
19639     &ett_h245_MultiplexedStreamParameter,
19640     &ett_h245_H222LogicalChannelParameters,
19641     &ett_h245_H223LogicalChannelParameters,
19642     &ett_h245_T_adaptationLayerType,
19643     &ett_h245_Al3,
19644     &ett_h245_H223AL1MParameters,
19645     &ett_h245_T_transferMode,
19646     &ett_h245_AL1HeaderFEC,
19647     &ett_h245_AL1CrcLength,
19648     &ett_h245_ArqType,
19649     &ett_h245_H223AL2MParameters,
19650     &ett_h245_AL2HeaderFEC,
19651     &ett_h245_H223AL3MParameters,
19652     &ett_h245_T_headerFormat,
19653     &ett_h245_AL3CrcLength,
19654     &ett_h245_H223AnnexCArqParameters,
19655     &ett_h245_T_numberOfRetransmissions,
19656     &ett_h245_V76LogicalChannelParameters,
19657     &ett_h245_T_suspendResume,
19658     &ett_h245_V76LCP_mode,
19659     &ett_h245_T_eRM,
19660     &ett_h245_T_recovery,
19661     &ett_h245_V76HDLCParameters,
19662     &ett_h245_CRCLength,
19663     &ett_h245_H2250LogicalChannelParameters,
19664     &ett_h245_T_mediaPacketization,
19665     &ett_h245_RTPPayloadType,
19666     &ett_h245_T_payloadDescriptor,
19667     &ett_h245_RedundancyEncoding,
19668     &ett_h245_T_rtpRedundancyEncoding,
19669     &ett_h245_SEQUENCE_OF_RedundancyEncodingElement,
19670     &ett_h245_RedundancyEncodingElement,
19671     &ett_h245_MultiplePayloadStream,
19672     &ett_h245_SEQUENCE_OF_MultiplePayloadStreamElement,
19673     &ett_h245_MultiplePayloadStreamElement,
19674     &ett_h245_DepFECData,
19675     &ett_h245_RFC2733Data,
19676     &ett_h245_FECdata_mode,
19677     &ett_h245_DepSeparateStream,
19678     &ett_h245_T_differentPort,
19679     &ett_h245_T_samePort,
19680     &ett_h245_FECData,
19681     &ett_h245_T_rfc2733,
19682     &ett_h245_T_pktMode,
19683     &ett_h245_T_mode_rfc2733sameport,
19684     &ett_h245_T_mode_rfc2733diffport,
19685     &ett_h245_TransportAddress,
19686     &ett_h245_UnicastAddress,
19687     &ett_h245_T_iPAddress,
19688     &ett_h245_T_iPXAddress,
19689     &ett_h245_T_iP6Address,
19690     &ett_h245_T_iPSourceRouteAddress,
19691     &ett_h245_T_routing,
19692     &ett_h245_T_route,
19693     &ett_h245_MulticastAddress,
19694     &ett_h245_MIPAddress,
19695     &ett_h245_MIP6Address,
19696     &ett_h245_EncryptionSync,
19697     &ett_h245_SEQUENCE_SIZE_1_256_OF_EscrowData,
19698     &ett_h245_EscrowData,
19699     &ett_h245_OpenLogicalChannelAck,
19700     &ett_h245_OLC_ack_reverseLogicalChannelParameters,
19701     &ett_h245_T_olc_ack_multiplexParameters,
19702     &ett_h245_T_forwardMultiplexAckParameters,
19703     &ett_h245_OpenLogicalChannelReject,
19704     &ett_h245_OpenLogicalChannelRejectCause,
19705     &ett_h245_OpenLogicalChannelConfirm,
19706     &ett_h245_H2250LogicalChannelAckParameters,
19707     &ett_h245_CloseLogicalChannel,
19708     &ett_h245_T_cLC_source,
19709     &ett_h245_Clc_reason,
19710     &ett_h245_CloseLogicalChannelAck,
19711     &ett_h245_RequestChannelClose,
19712     &ett_h245_T_reason,
19713     &ett_h245_RequestChannelCloseAck,
19714     &ett_h245_RequestChannelCloseReject,
19715     &ett_h245_RequestChannelCloseRejectCause,
19716     &ett_h245_RequestChannelCloseRelease,
19717     &ett_h245_MultiplexEntrySend,
19718     &ett_h245_SET_SIZE_1_15_OF_MultiplexEntryDescriptor,
19719     &ett_h245_MultiplexEntryDescriptor,
19720     &ett_h245_T_elementList,
19721     &ett_h245_MultiplexElement,
19722     &ett_h245_Me_type,
19723     &ett_h245_T_subElementList,
19724     &ett_h245_ME_repeatCount,
19725     &ett_h245_MultiplexEntrySendAck,
19726     &ett_h245_SET_SIZE_1_15_OF_MultiplexTableEntryNumber,
19727     &ett_h245_MultiplexEntrySendReject,
19728     &ett_h245_SET_SIZE_1_15_OF_MultiplexEntryRejectionDescriptions,
19729     &ett_h245_MultiplexEntryRejectionDescriptions,
19730     &ett_h245_MultiplexEntryRejectionDescriptionsCause,
19731     &ett_h245_MultiplexEntrySendRelease,
19732     &ett_h245_RequestMultiplexEntry,
19733     &ett_h245_RequestMultiplexEntryAck,
19734     &ett_h245_RequestMultiplexEntryReject,
19735     &ett_h245_SET_SIZE_1_15_OF_RequestMultiplexEntryRejectionDescriptions,
19736     &ett_h245_RequestMultiplexEntryRejectionDescriptions,
19737     &ett_h245_RequestMultiplexEntryRejectionDescriptionsCause,
19738     &ett_h245_RequestMultiplexEntryRelease,
19739     &ett_h245_RequestMode,
19740     &ett_h245_SEQUENCE_SIZE_1_256_OF_ModeDescription,
19741     &ett_h245_RequestModeAck,
19742     &ett_h245_Req_mode_ack_response,
19743     &ett_h245_RequestModeReject,
19744     &ett_h245_RequestModeRejectCause,
19745     &ett_h245_RequestModeRelease,
19746     &ett_h245_ModeDescription,
19747     &ett_h245_ModeElementType,
19748     &ett_h245_ModeElement,
19749     &ett_h245_H235Mode,
19750     &ett_h245_T_mediaMode,
19751     &ett_h245_MultiplexedStreamModeParameters,
19752     &ett_h245_RedundancyEncodingDTMode,
19753     &ett_h245_SEQUENCE_OF_RedundancyEncodingDTModeElement,
19754     &ett_h245_RedundancyEncodingDTModeElement,
19755     &ett_h245_Re_type,
19756     &ett_h245_MultiplePayloadStreamMode,
19757     &ett_h245_SEQUENCE_OF_MultiplePayloadStreamElementMode,
19758     &ett_h245_MultiplePayloadStreamElementMode,
19759     &ett_h245_DepFECMode,
19760     &ett_h245_T_rfc2733Mode,
19761     &ett_h245_FEC_mode,
19762     &ett_h245_FECMode,
19763     &ett_h245_H223ModeParameters,
19764     &ett_h245_AdaptationLayerType,
19765     &ett_h245_V76ModeParameters,
19766     &ett_h245_H2250ModeParameters,
19767     &ett_h245_RedundancyEncodingMode,
19768     &ett_h245_T_secondaryEncodingMode,
19769     &ett_h245_VideoMode,
19770     &ett_h245_H261VideoMode,
19771     &ett_h245_H261Resolution,
19772     &ett_h245_H262VideoMode,
19773     &ett_h245_T_profileAndLevel,
19774     &ett_h245_H263VideoMode,
19775     &ett_h245_H263Resolution,
19776     &ett_h245_IS11172VideoMode,
19777     &ett_h245_AudioMode,
19778     &ett_h245_Mode_g7231,
19779     &ett_h245_IS11172AudioMode,
19780     &ett_h245_T_audioLayer,
19781     &ett_h245_T_audioSampling,
19782     &ett_h245_IS11172_multichannelType,
19783     &ett_h245_IS13818AudioMode,
19784     &ett_h245_IS13818AudioLayer,
19785     &ett_h245_IS13818AudioSampling,
19786     &ett_h245_IS13818MultichannelType,
19787     &ett_h245_G7231AnnexCMode,
19788     &ett_h245_VBDMode,
19789     &ett_h245_DataMode,
19790     &ett_h245_DataModeApplication,
19791     &ett_h245_T38faxApp,
19792     &ett_h245_EncryptionMode,
19793     &ett_h245_RoundTripDelayRequest,
19794     &ett_h245_RoundTripDelayResponse,
19795     &ett_h245_MaintenanceLoopRequest,
19796     &ett_h245_Mlr_type,
19797     &ett_h245_MaintenanceLoopAck,
19798     &ett_h245_Mla_type,
19799     &ett_h245_MaintenanceLoopReject,
19800     &ett_h245_Mlrej_type,
19801     &ett_h245_MaintenanceLoopRejectCause,
19802     &ett_h245_MaintenanceLoopOffCommand,
19803     &ett_h245_CommunicationModeCommand,
19804     &ett_h245_SET_SIZE_1_256_OF_CommunicationModeTableEntry,
19805     &ett_h245_CommunicationModeRequest,
19806     &ett_h245_CommunicationModeResponse,
19807     &ett_h245_CommunicationModeTableEntry,
19808     &ett_h245_T_entryDataType,
19809     &ett_h245_ConferenceRequest,
19810     &ett_h245_T_requestTerminalCertificate,
19811     &ett_h245_CertSelectionCriteria,
19812     &ett_h245_Criteria,
19813     &ett_h245_TerminalLabel,
19814     &ett_h245_ConferenceResponse,
19815     &ett_h245_T_mCTerminalIDResponse,
19816     &ett_h245_T_terminalIDResponse,
19817     &ett_h245_T_conferenceIDResponse,
19818     &ett_h245_T_passwordResponse,
19819     &ett_h245_SET_SIZE_1_256_OF_TerminalLabel,
19820     &ett_h245_T_makeMeChairResponse,
19821     &ett_h245_T_extensionAddressResponse,
19822     &ett_h245_T_chairTokenOwnerResponse,
19823     &ett_h245_T_terminalCertificateResponse,
19824     &ett_h245_T_broadcastMyLogicalChannelResponse,
19825     &ett_h245_T_makeTerminalBroadcasterResponse,
19826     &ett_h245_T_sendThisSourceResponse,
19827     &ett_h245_RequestAllTerminalIDsResponse,
19828     &ett_h245_SEQUENCE_OF_TerminalInformation,
19829     &ett_h245_TerminalInformation,
19830     &ett_h245_RemoteMCRequest,
19831     &ett_h245_RemoteMCResponse,
19832     &ett_h245_T_reject,
19833     &ett_h245_MultilinkRequest,
19834     &ett_h245_CallInformationReq,
19835     &ett_h245_AddConnectionReq,
19836     &ett_h245_RemoveConnectionReq,
19837     &ett_h245_MaximumHeaderIntervalReq,
19838     &ett_h245_T_requestType,
19839     &ett_h245_MultilinkResponse,
19840     &ett_h245_CallInformationResp,
19841     &ett_h245_AddConnectionResp,
19842     &ett_h245_T_responseCode,
19843     &ett_h245_T_rejected,
19844     &ett_h245_RemoveConnectionResp,
19845     &ett_h245_MaximumHeaderIntervalResp,
19846     &ett_h245_MultilinkIndication,
19847     &ett_h245_T_crcDesired,
19848     &ett_h245_T_excessiveError,
19849     &ett_h245_DialingInformation,
19850     &ett_h245_SET_SIZE_1_65535_OF_DialingInformationNumber,
19851     &ett_h245_DialingInformationNumber,
19852     &ett_h245_SET_SIZE_1_255_OF_DialingInformationNetworkType,
19853     &ett_h245_DialingInformationNetworkType,
19854     &ett_h245_ConnectionIdentifier,
19855     &ett_h245_LogicalChannelRateRequest,
19856     &ett_h245_LogicalChannelRateAcknowledge,
19857     &ett_h245_LogicalChannelRateReject,
19858     &ett_h245_LogicalChannelRateRejectReason,
19859     &ett_h245_LogicalChannelRateRelease,
19860     &ett_h245_SendTerminalCapabilitySet,
19861     &ett_h245_T_specificRequest,
19862     &ett_h245_SET_SIZE_1_65535_OF_CapabilityTableEntryNumber,
19863     &ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptorNumber,
19864     &ett_h245_EncryptionCommand,
19865     &ett_h245_T_encryptionAlgorithmID,
19866     &ett_h245_FlowControlCommand,
19867     &ett_h245_Scope,
19868     &ett_h245_Restriction,
19869     &ett_h245_EndSessionCommand,
19870     &ett_h245_T_gstnOptions,
19871     &ett_h245_T_isdnOptions,
19872     &ett_h245_ConferenceCommand,
19873     &ett_h245_SubstituteConferenceIDCommand,
19874     &ett_h245_EncryptionUpdateDirection,
19875     &ett_h245_MiscellaneousCommand,
19876     &ett_h245_Mc_type,
19877     &ett_h245_T_videoFastUpdateGOB,
19878     &ett_h245_T_videoFastUpdateMB,
19879     &ett_h245_T_progressiveRefinementStart,
19880     &ett_h245_T_repeatCount,
19881     &ett_h245_T_videoBadMBs,
19882     &ett_h245_SEQUENCE_OF_PictureReference,
19883     &ett_h245_T_lostPartialPicture,
19884     &ett_h245_T_encryptionUpdateCommand,
19885     &ett_h245_T_encryptionUpdateAck,
19886     &ett_h245_KeyProtectionMethod,
19887     &ett_h245_EncryptionUpdateRequest,
19888     &ett_h245_PictureReference,
19889     &ett_h245_H223MultiplexReconfiguration,
19890     &ett_h245_T_h223ModeChange,
19891     &ett_h245_T_h223AnnexADoubleFlag,
19892     &ett_h245_NewATMVCCommand,
19893     &ett_h245_Cmd_aal,
19894     &ett_h245_Cmd_aal1,
19895     &ett_h245_Cmd_clockRecovery,
19896     &ett_h245_Cmd_errorCorrection,
19897     &ett_h245_Cmd_aal5,
19898     &ett_h245_Cmd_multiplex,
19899     &ett_h245_Cmd_reverseParameters,
19900     &ett_h245_CmdR_multiplex,
19901     &ett_h245_MobileMultilinkReconfigurationCommand,
19902     &ett_h245_T_status,
19903     &ett_h245_FunctionNotUnderstood,
19904     &ett_h245_FunctionNotSupported,
19905     &ett_h245_FunctionNotSupportedCause,
19906     &ett_h245_ConferenceIndication,
19907     &ett_h245_TerminalYouAreSeeingInSubPictureNumber,
19908     &ett_h245_VideoIndicateCompose,
19909     &ett_h245_MiscellaneousIndication,
19910     &ett_h245_Mi_type,
19911     &ett_h245_T_videoNotDecodedMBs,
19912     &ett_h245_JitterIndication,
19913     &ett_h245_H223SkewIndication,
19914     &ett_h245_H2250MaximumSkewIndication,
19915     &ett_h245_MCLocationIndication,
19916     &ett_h245_VendorIdentification,
19917     &ett_h245_NewATMVCIndication,
19918     &ett_h245_Ind_aal,
19919     &ett_h245_Ind_aal1,
19920     &ett_h245_Ind_clockRecovery,
19921     &ett_h245_Ind_errorCorrection,
19922     &ett_h245_Ind_aal5,
19923     &ett_h245_Ind_multiplex,
19924     &ett_h245_Ind_reverseParameters,
19925     &ett_h245_IndR_multiplex,
19926     &ett_h245_Params,
19927     &ett_h245_UserInputIndication,
19928     &ett_h245_T_userInputSupportIndication,
19929     &ett_h245_T_signal,
19930     &ett_h245_T_rtp,
19931     &ett_h245_T_signalUpdate,
19932     &ett_h245_Si_rtp,
19933     &ett_h245_T_extendedAlphanumeric,
19934     &ett_h245_EncryptedAlphanumeric,
19935     &ett_h245_FlowControlIndication,
19936     &ett_h245_MobileMultilinkReconfigurationIndication,
19937
19938 /*--- End of included file: packet-h245-ettarr.c ---*/
19939 #line 358 "packet-h245-template.c"
19940   };
19941   module_t *h245_module;
19942
19943   /* Register protocol */
19944   proto_h245 = proto_register_protocol(PNAME, PSNAME, PFNAME);
19945   /* Register fields and subtrees */
19946   proto_register_field_array(proto_h245, hf, array_length(hf));
19947   proto_register_subtree_array(ett, array_length(ett));
19948
19949   /* From Ronnie Sahlbergs original H245 dissector */
19950
19951   h245_module = prefs_register_protocol(proto_h245, NULL);
19952   prefs_register_bool_preference(h245_module, "reassembly",
19953                 "Reassemble H.245 messages spanning multiple TCP segments",
19954                 "Whether the H.245 dissector should reassemble messages spanning multiple TCP segments."
19955                 " To use this option, you must also enable \"Allow subdissectors to reassemble TCP streams\" in the TCP protocol settings.",
19956                 &h245_reassembly);
19957   prefs_register_bool_preference(h245_module, "shorttypes",
19958                 "Show short message types",
19959                 "Whether the dissector should show short names or the long names from the standard",
19960                 &h245_shorttypes);
19961   register_dissector("h245dg", dissect_h245_h245, proto_h245);
19962   register_dissector("h245", dissect_h245, proto_h245);
19963
19964   nsp_object_dissector_table = register_dissector_table("h245.nsp.object", "H.245 NonStandardParameter (object)", FT_STRING, BASE_NONE);
19965   nsp_h221_dissector_table = register_dissector_table("h245.nsp.h221", "H.245 NonStandardParameter (h221)", FT_UINT32, BASE_HEX);
19966   h245_tap = register_tap("h245");
19967   h245dg_tap = register_tap("h245dg");
19968
19969   add_oid_str_name("0.0.8.239.1.1","itu-t(0) recommendation(0) h(8) h239(239) generic-capabilities(1) h239ControlCapability(1)");
19970   add_oid_str_name("0.0.8.239.1.2","itu-t(0) recommendation(0) h(8) h239(239) generic-capabilities(1) h239ExtendedVideoCapability(2)");
19971   add_oid_str_name("0.0.8.239.2","itu-t(0) recommendation(0) h(8) h239(239) generic-message(2)");
19972   add_oid_str_name("0.0.8.245.0.3","itu-t(0) recommendation(0) h(8) h245(245) version(0) 3");
19973   add_oid_str_name("0.0.8.245.0.4","itu-t(0) recommendation(0) h(8) h245(245) version(0) 4");
19974   add_oid_str_name("0.0.8.245.0.5","itu-t(0) recommendation(0) h(8) h245(245) version(0) 5");
19975   add_oid_str_name("0.0.8.245.0.6","itu-t(0) recommendation(0) h(8) h245(245) version(0) 6");
19976   add_oid_str_name("0.0.8.245.0.7","itu-t(0) recommendation(0) h(8) h245(245) version(0) 7");
19977   add_oid_str_name("0.0.8.245.0.8","itu-t(0) recommendation(0) h(8) h245(245) version(0) 8");
19978   add_oid_str_name("0.0.8.245.0.10","itu-t(0) recommendation(0) h(8) h245(245) version(0) 10");
19979   add_oid_str_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");
19980   add_oid_str_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");
19981   add_oid_str_name("0.0.8.245.1.1.1","itu-t(0) recommendation(0) h(8) h245(245) generic-capabilities(1) audio(1) amr(1)");
19982
19983   add_oid_str_name("0.0.8.241.0.0.1","itu-t(0) recommendation(0) h(8) h241(241) specificVideoCodecCapabilities(0) h264(0) generic-capabilities(1)");
19984
19985
19986 }
19987
19988
19989 /*--- proto_reg_handoff_h245 ---------------------------------------*/
19990 void proto_reg_handoff_h245(void) {
19991         rtp_handle = find_dissector("rtp");
19992         rtcp_handle = find_dissector("rtcp");
19993         t38_handle = find_dissector("t38");
19994         data_handle = find_dissector("data");
19995         h263_handle = find_dissector("h263data");
19996         amr_handle = find_dissector("amr_if2");
19997
19998
19999         h245_handle=create_dissector_handle(dissect_h245, proto_h245);
20000         dissector_add_handle("tcp.port", h245_handle);
20001         MultimediaSystemControlMessage_handle=create_dissector_handle(dissect_h245_h245, proto_h245);
20002         dissector_add_handle("udp.port", MultimediaSystemControlMessage_handle);
20003
20004         h223_lc_init();
20005 }
20006
20007 static void init_h245_packet_info(h245_packet_info *pi)
20008 {
20009         if(pi == NULL) {
20010                 return;
20011         }
20012
20013         pi->msg_type = H245_OTHER;
20014                 pi->frame_label[0] = '\0';
20015                 g_snprintf(pi->comment, sizeof(pi->comment), "H245 ");
20016 }
20017