1/* Generated by Jing Min Zhao's ASN.1 parser, May 16 2007
2 *
3 * Copyright (c) 2006 Jing Min Zhao <zhaojingmin@users.sourceforge.net>
4 *
5 * This source code is licensed under General Public License version 2.
6 */
7
8typedef struct TransportAddress_ipAddress { /* SEQUENCE */
9 int options; /* No use */
10 unsigned int ip;
11} TransportAddress_ipAddress;
12
13typedef struct TransportAddress_ip6Address { /* SEQUENCE */
14 int options; /* No use */
15 unsigned int ip;
16} TransportAddress_ip6Address;
17
18typedef struct TransportAddress { /* CHOICE */
19 enum {
20 eTransportAddress_ipAddress,
21 eTransportAddress_ipSourceRoute,
22 eTransportAddress_ipxAddress,
23 eTransportAddress_ip6Address,
24 eTransportAddress_netBios,
25 eTransportAddress_nsap,
26 eTransportAddress_nonStandardAddress,
27 } choice;
28 union {
29 TransportAddress_ipAddress ipAddress;
30 TransportAddress_ip6Address ip6Address;
31 };
32} TransportAddress;
33
34typedef struct DataProtocolCapability { /* CHOICE */
35 enum {
36 eDataProtocolCapability_nonStandard,
37 eDataProtocolCapability_v14buffered,
38 eDataProtocolCapability_v42lapm,
39 eDataProtocolCapability_hdlcFrameTunnelling,
40 eDataProtocolCapability_h310SeparateVCStack,
41 eDataProtocolCapability_h310SingleVCStack,
42 eDataProtocolCapability_transparent,
43 eDataProtocolCapability_segmentationAndReassembly,
44 eDataProtocolCapability_hdlcFrameTunnelingwSAR,
45 eDataProtocolCapability_v120,
46 eDataProtocolCapability_separateLANStack,
47 eDataProtocolCapability_v76wCompression,
48 eDataProtocolCapability_tcp,
49 eDataProtocolCapability_udp,
50 } choice;
51} DataProtocolCapability;
52
53typedef struct DataApplicationCapability_application { /* CHOICE */
54 enum {
55 eDataApplicationCapability_application_nonStandard,
56 eDataApplicationCapability_application_t120,
57 eDataApplicationCapability_application_dsm_cc,
58 eDataApplicationCapability_application_userData,
59 eDataApplicationCapability_application_t84,
60 eDataApplicationCapability_application_t434,
61 eDataApplicationCapability_application_h224,
62 eDataApplicationCapability_application_nlpid,
63 eDataApplicationCapability_application_dsvdControl,
64 eDataApplicationCapability_application_h222DataPartitioning,
65 eDataApplicationCapability_application_t30fax,
66 eDataApplicationCapability_application_t140,
67 eDataApplicationCapability_application_t38fax,
68 eDataApplicationCapability_application_genericDataCapability,
69 } choice;
70 union {
71 DataProtocolCapability t120;
72 };
73} DataApplicationCapability_application;
74
75typedef struct DataApplicationCapability { /* SEQUENCE */
76 int options; /* No use */
77 DataApplicationCapability_application application;
78} DataApplicationCapability;
79
80typedef struct DataType { /* CHOICE */
81 enum {
82 eDataType_nonStandard,
83 eDataType_nullData,
84 eDataType_videoData,
85 eDataType_audioData,
86 eDataType_data,
87 eDataType_encryptionData,
88 eDataType_h235Control,
89 eDataType_h235Media,
90 eDataType_multiplexedStream,
91 } choice;
92 union {
93 DataApplicationCapability data;
94 };
95} DataType;
96
97typedef struct UnicastAddress_iPAddress { /* SEQUENCE */
98 int options; /* No use */
99 unsigned int network;
100} UnicastAddress_iPAddress;
101
102typedef struct UnicastAddress_iP6Address { /* SEQUENCE */
103 int options; /* No use */
104 unsigned int network;
105} UnicastAddress_iP6Address;
106
107typedef struct UnicastAddress { /* CHOICE */
108 enum {
109 eUnicastAddress_iPAddress,
110 eUnicastAddress_iPXAddress,
111 eUnicastAddress_iP6Address,
112 eUnicastAddress_netBios,
113 eUnicastAddress_iPSourceRouteAddress,
114 eUnicastAddress_nsap,
115 eUnicastAddress_nonStandardAddress,
116 } choice;
117 union {
118 UnicastAddress_iPAddress iPAddress;
119 UnicastAddress_iP6Address iP6Address;
120 };
121} UnicastAddress;
122
123typedef struct H245_TransportAddress { /* CHOICE */
124 enum {
125 eH245_TransportAddress_unicastAddress,
126 eH245_TransportAddress_multicastAddress,
127 } choice;
128 union {
129 UnicastAddress unicastAddress;
130 };
131} H245_TransportAddress;
132
133typedef struct H2250LogicalChannelParameters { /* SEQUENCE */
134 enum {
135 eH2250LogicalChannelParameters_nonStandard = (1 << 31),
136 eH2250LogicalChannelParameters_associatedSessionID =
137 (1 << 30),
138 eH2250LogicalChannelParameters_mediaChannel = (1 << 29),
139 eH2250LogicalChannelParameters_mediaGuaranteedDelivery =
140 (1 << 28),
141 eH2250LogicalChannelParameters_mediaControlChannel =
142 (1 << 27),
143 eH2250LogicalChannelParameters_mediaControlGuaranteedDelivery
144 = (1 << 26),
145 eH2250LogicalChannelParameters_silenceSuppression = (1 << 25),
146 eH2250LogicalChannelParameters_destination = (1 << 24),
147 eH2250LogicalChannelParameters_dynamicRTPPayloadType =
148 (1 << 23),
149 eH2250LogicalChannelParameters_mediaPacketization = (1 << 22),
150 eH2250LogicalChannelParameters_transportCapability =
151 (1 << 21),
152 eH2250LogicalChannelParameters_redundancyEncoding = (1 << 20),
153 eH2250LogicalChannelParameters_source = (1 << 19),
154 } options;
155 H245_TransportAddress mediaChannel;
156 H245_TransportAddress mediaControlChannel;
157} H2250LogicalChannelParameters;
158
159typedef struct OpenLogicalChannel_forwardLogicalChannelParameters_multiplexParameters { /* CHOICE */
160 enum {
161 eOpenLogicalChannel_forwardLogicalChannelParameters_multiplexParameters_h222LogicalChannelParameters,
162 eOpenLogicalChannel_forwardLogicalChannelParameters_multiplexParameters_h223LogicalChannelParameters,
163 eOpenLogicalChannel_forwardLogicalChannelParameters_multiplexParameters_v76LogicalChannelParameters,
164 eOpenLogicalChannel_forwardLogicalChannelParameters_multiplexParameters_h2250LogicalChannelParameters,
165 eOpenLogicalChannel_forwardLogicalChannelParameters_multiplexParameters_none,
166 } choice;
167 union {
168 H2250LogicalChannelParameters h2250LogicalChannelParameters;
169 };
170} OpenLogicalChannel_forwardLogicalChannelParameters_multiplexParameters;
171
172typedef struct OpenLogicalChannel_forwardLogicalChannelParameters { /* SEQUENCE */
173 enum {
174 eOpenLogicalChannel_forwardLogicalChannelParameters_portNumber
175 = (1 << 31),
176 eOpenLogicalChannel_forwardLogicalChannelParameters_forwardLogicalChannelDependency
177 = (1 << 30),
178 eOpenLogicalChannel_forwardLogicalChannelParameters_replacementFor
179 = (1 << 29),
180 } options;
181 DataType dataType;
182 OpenLogicalChannel_forwardLogicalChannelParameters_multiplexParameters
183 multiplexParameters;
184} OpenLogicalChannel_forwardLogicalChannelParameters;
185
186typedef struct OpenLogicalChannel_reverseLogicalChannelParameters_multiplexParameters { /* CHOICE */
187 enum {
188 eOpenLogicalChannel_reverseLogicalChannelParameters_multiplexParameters_h223LogicalChannelParameters,
189 eOpenLogicalChannel_reverseLogicalChannelParameters_multiplexParameters_v76LogicalChannelParameters,
190 eOpenLogicalChannel_reverseLogicalChannelParameters_multiplexParameters_h2250LogicalChannelParameters,
191 } choice;
192 union {
193 H2250LogicalChannelParameters h2250LogicalChannelParameters;
194 };
195} OpenLogicalChannel_reverseLogicalChannelParameters_multiplexParameters;
196
197typedef struct OpenLogicalChannel_reverseLogicalChannelParameters { /* SEQUENCE */
198 enum {
199 eOpenLogicalChannel_reverseLogicalChannelParameters_multiplexParameters
200 = (1 << 31),
201 eOpenLogicalChannel_reverseLogicalChannelParameters_reverseLogicalChannelDependency
202 = (1 << 30),
203 eOpenLogicalChannel_reverseLogicalChannelParameters_replacementFor
204 = (1 << 29),
205 } options;
206 OpenLogicalChannel_reverseLogicalChannelParameters_multiplexParameters
207 multiplexParameters;
208} OpenLogicalChannel_reverseLogicalChannelParameters;
209
210typedef struct NetworkAccessParameters_networkAddress { /* CHOICE */
211 enum {
212 eNetworkAccessParameters_networkAddress_q2931Address,
213 eNetworkAccessParameters_networkAddress_e164Address,
214 eNetworkAccessParameters_networkAddress_localAreaAddress,
215 } choice;
216 union {
217 H245_TransportAddress localAreaAddress;
218 };
219} NetworkAccessParameters_networkAddress;
220
221typedef struct NetworkAccessParameters { /* SEQUENCE */
222 enum {
223 eNetworkAccessParameters_distribution = (1 << 31),
224 eNetworkAccessParameters_externalReference = (1 << 30),
225 eNetworkAccessParameters_t120SetupProcedure = (1 << 29),
226 } options;
227 NetworkAccessParameters_networkAddress networkAddress;
228} NetworkAccessParameters;
229
230typedef struct OpenLogicalChannel { /* SEQUENCE */
231 enum {
232 eOpenLogicalChannel_reverseLogicalChannelParameters =
233 (1 << 31),
234 eOpenLogicalChannel_separateStack = (1 << 30),
235 eOpenLogicalChannel_encryptionSync = (1 << 29),
236 } options;
237 OpenLogicalChannel_forwardLogicalChannelParameters
238 forwardLogicalChannelParameters;
239 OpenLogicalChannel_reverseLogicalChannelParameters
240 reverseLogicalChannelParameters;
241 NetworkAccessParameters separateStack;
242} OpenLogicalChannel;
243
244typedef struct Setup_UUIE_fastStart { /* SEQUENCE OF */
245 int count;
246 OpenLogicalChannel item[30];
247} Setup_UUIE_fastStart;
248
249typedef struct Setup_UUIE { /* SEQUENCE */
250 enum {
251 eSetup_UUIE_h245Address = (1 << 31),
252 eSetup_UUIE_sourceAddress = (1 << 30),
253 eSetup_UUIE_destinationAddress = (1 << 29),
254 eSetup_UUIE_destCallSignalAddress = (1 << 28),
255 eSetup_UUIE_destExtraCallInfo = (1 << 27),
256 eSetup_UUIE_destExtraCRV = (1 << 26),
257 eSetup_UUIE_callServices = (1 << 25),
258 eSetup_UUIE_sourceCallSignalAddress = (1 << 24),
259 eSetup_UUIE_remoteExtensionAddress = (1 << 23),
260 eSetup_UUIE_callIdentifier = (1 << 22),
261 eSetup_UUIE_h245SecurityCapability = (1 << 21),
262 eSetup_UUIE_tokens = (1 << 20),
263 eSetup_UUIE_cryptoTokens = (1 << 19),
264 eSetup_UUIE_fastStart = (1 << 18),
265 eSetup_UUIE_mediaWaitForConnect = (1 << 17),
266 eSetup_UUIE_canOverlapSend = (1 << 16),
267 eSetup_UUIE_endpointIdentifier = (1 << 15),
268 eSetup_UUIE_multipleCalls = (1 << 14),
269 eSetup_UUIE_maintainConnection = (1 << 13),
270 eSetup_UUIE_connectionParameters = (1 << 12),
271 eSetup_UUIE_language = (1 << 11),
272 eSetup_UUIE_presentationIndicator = (1 << 10),
273 eSetup_UUIE_screeningIndicator = (1 << 9),
274 eSetup_UUIE_serviceControl = (1 << 8),
275 eSetup_UUIE_symmetricOperationRequired = (1 << 7),
276 eSetup_UUIE_capacity = (1 << 6),
277 eSetup_UUIE_circuitInfo = (1 << 5),
278 eSetup_UUIE_desiredProtocols = (1 << 4),
279 eSetup_UUIE_neededFeatures = (1 << 3),
280 eSetup_UUIE_desiredFeatures = (1 << 2),
281 eSetup_UUIE_supportedFeatures = (1 << 1),
282 eSetup_UUIE_parallelH245Control = (1 << 0),
283 } options;
284 TransportAddress h245Address;
285 TransportAddress destCallSignalAddress;
286 TransportAddress sourceCallSignalAddress;
287 Setup_UUIE_fastStart fastStart;
288} Setup_UUIE;
289
290typedef struct CallProceeding_UUIE_fastStart { /* SEQUENCE OF */
291 int count;
292 OpenLogicalChannel item[30];
293} CallProceeding_UUIE_fastStart;
294
295typedef struct CallProceeding_UUIE { /* SEQUENCE */
296 enum {
297 eCallProceeding_UUIE_h245Address = (1 << 31),
298 eCallProceeding_UUIE_callIdentifier = (1 << 30),
299 eCallProceeding_UUIE_h245SecurityMode = (1 << 29),
300 eCallProceeding_UUIE_tokens = (1 << 28),
301 eCallProceeding_UUIE_cryptoTokens = (1 << 27),
302 eCallProceeding_UUIE_fastStart = (1 << 26),
303 eCallProceeding_UUIE_multipleCalls = (1 << 25),
304 eCallProceeding_UUIE_maintainConnection = (1 << 24),
305 eCallProceeding_UUIE_fastConnectRefused = (1 << 23),
306 eCallProceeding_UUIE_featureSet = (1 << 22),
307 } options;
308 TransportAddress h245Address;
309 CallProceeding_UUIE_fastStart fastStart;
310} CallProceeding_UUIE;
311
312typedef struct Connect_UUIE_fastStart { /* SEQUENCE OF */
313 int count;
314 OpenLogicalChannel item[30];
315} Connect_UUIE_fastStart;
316
317typedef struct Connect_UUIE { /* SEQUENCE */
318 enum {
319 eConnect_UUIE_h245Address = (1 << 31),
320 eConnect_UUIE_callIdentifier = (1 << 30),
321 eConnect_UUIE_h245SecurityMode = (1 << 29),
322 eConnect_UUIE_tokens = (1 << 28),
323 eConnect_UUIE_cryptoTokens = (1 << 27),
324 eConnect_UUIE_fastStart = (1 << 26),
325 eConnect_UUIE_multipleCalls = (1 << 25),
326 eConnect_UUIE_maintainConnection = (1 << 24),
327 eConnect_UUIE_language = (1 << 23),
328 eConnect_UUIE_connectedAddress = (1 << 22),
329 eConnect_UUIE_presentationIndicator = (1 << 21),
330 eConnect_UUIE_screeningIndicator = (1 << 20),
331 eConnect_UUIE_fastConnectRefused = (1 << 19),
332 eConnect_UUIE_serviceControl = (1 << 18),
333 eConnect_UUIE_capacity = (1 << 17),
334 eConnect_UUIE_featureSet = (1 << 16),
335 } options;
336 TransportAddress h245Address;
337 Connect_UUIE_fastStart fastStart;
338} Connect_UUIE;
339
340typedef struct Alerting_UUIE_fastStart { /* SEQUENCE OF */
341 int count;
342 OpenLogicalChannel item[30];
343} Alerting_UUIE_fastStart;
344
345typedef struct Alerting_UUIE { /* SEQUENCE */
346 enum {
347 eAlerting_UUIE_h245Address = (1 << 31),
348 eAlerting_UUIE_callIdentifier = (1 << 30),
349 eAlerting_UUIE_h245SecurityMode = (1 << 29),
350 eAlerting_UUIE_tokens = (1 << 28),
351 eAlerting_UUIE_cryptoTokens = (1 << 27),
352 eAlerting_UUIE_fastStart = (1 << 26),
353 eAlerting_UUIE_multipleCalls = (1 << 25),
354 eAlerting_UUIE_maintainConnection = (1 << 24),
355 eAlerting_UUIE_alertingAddress = (1 << 23),
356 eAlerting_UUIE_presentationIndicator = (1 << 22),
357 eAlerting_UUIE_screeningIndicator = (1 << 21),
358 eAlerting_UUIE_fastConnectRefused = (1 << 20),
359 eAlerting_UUIE_serviceControl = (1 << 19),
360 eAlerting_UUIE_capacity = (1 << 18),
361 eAlerting_UUIE_featureSet = (1 << 17),
362 } options;
363 TransportAddress h245Address;
364 Alerting_UUIE_fastStart fastStart;
365} Alerting_UUIE;
366
367typedef struct FacilityReason { /* CHOICE */
368 enum {
369 eFacilityReason_routeCallToGatekeeper,
370 eFacilityReason_callForwarded,
371 eFacilityReason_routeCallToMC,
372 eFacilityReason_undefinedReason,
373 eFacilityReason_conferenceListChoice,
374 eFacilityReason_startH245,
375 eFacilityReason_noH245,
376 eFacilityReason_newTokens,
377 eFacilityReason_featureSetUpdate,
378 eFacilityReason_forwardedElements,
379 eFacilityReason_transportedInformation,
380 } choice;
381} FacilityReason;
382
383typedef struct Facility_UUIE_fastStart { /* SEQUENCE OF */
384 int count;
385 OpenLogicalChannel item[30];
386} Facility_UUIE_fastStart;
387
388typedef struct Facility_UUIE { /* SEQUENCE */
389 enum {
390 eFacility_UUIE_alternativeAddress = (1 << 31),
391 eFacility_UUIE_alternativeAliasAddress = (1 << 30),
392 eFacility_UUIE_conferenceID = (1 << 29),
393 eFacility_UUIE_callIdentifier = (1 << 28),
394 eFacility_UUIE_destExtraCallInfo = (1 << 27),
395 eFacility_UUIE_remoteExtensionAddress = (1 << 26),
396 eFacility_UUIE_tokens = (1 << 25),
397 eFacility_UUIE_cryptoTokens = (1 << 24),
398 eFacility_UUIE_conferences = (1 << 23),
399 eFacility_UUIE_h245Address = (1 << 22),
400 eFacility_UUIE_fastStart = (1 << 21),
401 eFacility_UUIE_multipleCalls = (1 << 20),
402 eFacility_UUIE_maintainConnection = (1 << 19),
403 eFacility_UUIE_fastConnectRefused = (1 << 18),
404 eFacility_UUIE_serviceControl = (1 << 17),
405 eFacility_UUIE_circuitInfo = (1 << 16),
406 eFacility_UUIE_featureSet = (1 << 15),
407 eFacility_UUIE_destinationInfo = (1 << 14),
408 eFacility_UUIE_h245SecurityMode = (1 << 13),
409 } options;
410 TransportAddress alternativeAddress;
411 FacilityReason reason;
412 TransportAddress h245Address;
413 Facility_UUIE_fastStart fastStart;
414} Facility_UUIE;
415
416typedef struct Progress_UUIE_fastStart { /* SEQUENCE OF */
417 int count;
418 OpenLogicalChannel item[30];
419} Progress_UUIE_fastStart;
420
421typedef struct Progress_UUIE { /* SEQUENCE */
422 enum {
423 eProgress_UUIE_h245Address = (1 << 31),
424 eProgress_UUIE_h245SecurityMode = (1 << 30),
425 eProgress_UUIE_tokens = (1 << 29),
426 eProgress_UUIE_cryptoTokens = (1 << 28),
427 eProgress_UUIE_fastStart = (1 << 27),
428 eProgress_UUIE_multipleCalls = (1 << 26),
429 eProgress_UUIE_maintainConnection = (1 << 25),
430 eProgress_UUIE_fastConnectRefused = (1 << 24),
431 } options;
432 TransportAddress h245Address;
433 Progress_UUIE_fastStart fastStart;
434} Progress_UUIE;
435
436typedef struct H323_UU_PDU_h323_message_body { /* CHOICE */
437 enum {
438 eH323_UU_PDU_h323_message_body_setup,
439 eH323_UU_PDU_h323_message_body_callProceeding,
440 eH323_UU_PDU_h323_message_body_connect,
441 eH323_UU_PDU_h323_message_body_alerting,
442 eH323_UU_PDU_h323_message_body_information,
443 eH323_UU_PDU_h323_message_body_releaseComplete,
444 eH323_UU_PDU_h323_message_body_facility,
445 eH323_UU_PDU_h323_message_body_progress,
446 eH323_UU_PDU_h323_message_body_empty,
447 eH323_UU_PDU_h323_message_body_status,
448 eH323_UU_PDU_h323_message_body_statusInquiry,
449 eH323_UU_PDU_h323_message_body_setupAcknowledge,
450 eH323_UU_PDU_h323_message_body_notify,
451 } choice;
452 union {
453 Setup_UUIE setup;
454 CallProceeding_UUIE callProceeding;
455 Connect_UUIE connect;
456 Alerting_UUIE alerting;
457 Facility_UUIE facility;
458 Progress_UUIE progress;
459 };
460} H323_UU_PDU_h323_message_body;
461
462typedef struct RequestMessage { /* CHOICE */
463 enum {
464 eRequestMessage_nonStandard,
465 eRequestMessage_masterSlaveDetermination,
466 eRequestMessage_terminalCapabilitySet,
467 eRequestMessage_openLogicalChannel,
468 eRequestMessage_closeLogicalChannel,
469 eRequestMessage_requestChannelClose,
470 eRequestMessage_multiplexEntrySend,
471 eRequestMessage_requestMultiplexEntry,
472 eRequestMessage_requestMode,
473 eRequestMessage_roundTripDelayRequest,
474 eRequestMessage_maintenanceLoopRequest,
475 eRequestMessage_communicationModeRequest,
476 eRequestMessage_conferenceRequest,
477 eRequestMessage_multilinkRequest,
478 eRequestMessage_logicalChannelRateRequest,
479 } choice;
480 union {
481 OpenLogicalChannel openLogicalChannel;
482 };
483} RequestMessage;
484
485typedef struct OpenLogicalChannelAck_reverseLogicalChannelParameters_multiplexParameters { /* CHOICE */
486 enum {
487 eOpenLogicalChannelAck_reverseLogicalChannelParameters_multiplexParameters_h222LogicalChannelParameters,
488 eOpenLogicalChannelAck_reverseLogicalChannelParameters_multiplexParameters_h2250LogicalChannelParameters,
489 } choice;
490 union {
491 H2250LogicalChannelParameters h2250LogicalChannelParameters;
492 };
493} OpenLogicalChannelAck_reverseLogicalChannelParameters_multiplexParameters;
494
495typedef struct OpenLogicalChannelAck_reverseLogicalChannelParameters { /* SEQUENCE */
496 enum {
497 eOpenLogicalChannelAck_reverseLogicalChannelParameters_portNumber
498 = (1 << 31),
499 eOpenLogicalChannelAck_reverseLogicalChannelParameters_multiplexParameters
500 = (1 << 30),
501 eOpenLogicalChannelAck_reverseLogicalChannelParameters_replacementFor
502 = (1 << 29),
503 } options;
504 OpenLogicalChannelAck_reverseLogicalChannelParameters_multiplexParameters
505 multiplexParameters;
506} OpenLogicalChannelAck_reverseLogicalChannelParameters;
507
508typedef struct H2250LogicalChannelAckParameters { /* SEQUENCE */
509 enum {
510 eH2250LogicalChannelAckParameters_nonStandard = (1 << 31),
511 eH2250LogicalChannelAckParameters_sessionID = (1 << 30),
512 eH2250LogicalChannelAckParameters_mediaChannel = (1 << 29),
513 eH2250LogicalChannelAckParameters_mediaControlChannel =
514 (1 << 28),
515 eH2250LogicalChannelAckParameters_dynamicRTPPayloadType =
516 (1 << 27),
517 eH2250LogicalChannelAckParameters_flowControlToZero =
518 (1 << 26),
519 eH2250LogicalChannelAckParameters_portNumber = (1 << 25),
520 } options;
521 H245_TransportAddress mediaChannel;
522 H245_TransportAddress mediaControlChannel;
523} H2250LogicalChannelAckParameters;
524
525typedef struct OpenLogicalChannelAck_forwardMultiplexAckParameters { /* CHOICE */
526 enum {
527 eOpenLogicalChannelAck_forwardMultiplexAckParameters_h2250LogicalChannelAckParameters,
528 } choice;
529 union {
530 H2250LogicalChannelAckParameters
531 h2250LogicalChannelAckParameters;
532 };
533} OpenLogicalChannelAck_forwardMultiplexAckParameters;
534
535typedef struct OpenLogicalChannelAck { /* SEQUENCE */
536 enum {
537 eOpenLogicalChannelAck_reverseLogicalChannelParameters =
538 (1 << 31),
539 eOpenLogicalChannelAck_separateStack = (1 << 30),
540 eOpenLogicalChannelAck_forwardMultiplexAckParameters =
541 (1 << 29),
542 eOpenLogicalChannelAck_encryptionSync = (1 << 28),
543 } options;
544 OpenLogicalChannelAck_reverseLogicalChannelParameters
545 reverseLogicalChannelParameters;
546 NetworkAccessParameters separateStack;
547 OpenLogicalChannelAck_forwardMultiplexAckParameters
548 forwardMultiplexAckParameters;
549} OpenLogicalChannelAck;
550
551typedef struct ResponseMessage { /* CHOICE */
552 enum {
553 eResponseMessage_nonStandard,
554 eResponseMessage_masterSlaveDeterminationAck,
555 eResponseMessage_masterSlaveDeterminationReject,
556 eResponseMessage_terminalCapabilitySetAck,
557 eResponseMessage_terminalCapabilitySetReject,
558 eResponseMessage_openLogicalChannelAck,
559 eResponseMessage_openLogicalChannelReject,
560 eResponseMessage_closeLogicalChannelAck,
561 eResponseMessage_requestChannelCloseAck,
562 eResponseMessage_requestChannelCloseReject,
563 eResponseMessage_multiplexEntrySendAck,
564 eResponseMessage_multiplexEntrySendReject,
565 eResponseMessage_requestMultiplexEntryAck,
566 eResponseMessage_requestMultiplexEntryReject,
567 eResponseMessage_requestModeAck,
568 eResponseMessage_requestModeReject,
569 eResponseMessage_roundTripDelayResponse,
570 eResponseMessage_maintenanceLoopAck,
571 eResponseMessage_maintenanceLoopReject,
572 eResponseMessage_communicationModeResponse,
573 eResponseMessage_conferenceResponse,
574 eResponseMessage_multilinkResponse,
575 eResponseMessage_logicalChannelRateAcknowledge,
576 eResponseMessage_logicalChannelRateReject,
577 } choice;
578 union {
579 OpenLogicalChannelAck openLogicalChannelAck;
580 };
581} ResponseMessage;
582
583typedef struct MultimediaSystemControlMessage { /* CHOICE */
584 enum {
585 eMultimediaSystemControlMessage_request,
586 eMultimediaSystemControlMessage_response,
587 eMultimediaSystemControlMessage_command,
588 eMultimediaSystemControlMessage_indication,
589 } choice;
590 union {
591 RequestMessage request;
592 ResponseMessage response;
593 };
594} MultimediaSystemControlMessage;
595
596typedef struct H323_UU_PDU_h245Control { /* SEQUENCE OF */
597 int count;
598 MultimediaSystemControlMessage item[4];
599} H323_UU_PDU_h245Control;
600
601typedef struct H323_UU_PDU { /* SEQUENCE */
602 enum {
603 eH323_UU_PDU_nonStandardData = (1 << 31),
604 eH323_UU_PDU_h4501SupplementaryService = (1 << 30),
605 eH323_UU_PDU_h245Tunneling = (1 << 29),
606 eH323_UU_PDU_h245Control = (1 << 28),
607 eH323_UU_PDU_nonStandardControl = (1 << 27),
608 eH323_UU_PDU_callLinkage = (1 << 26),
609 eH323_UU_PDU_tunnelledSignallingMessage = (1 << 25),
610 eH323_UU_PDU_provisionalRespToH245Tunneling = (1 << 24),
611 eH323_UU_PDU_stimulusControl = (1 << 23),
612 eH323_UU_PDU_genericData = (1 << 22),
613 } options;
614 H323_UU_PDU_h323_message_body h323_message_body;
615 H323_UU_PDU_h245Control h245Control;
616} H323_UU_PDU;
617
618typedef struct H323_UserInformation { /* SEQUENCE */
619 enum {
620 eH323_UserInformation_user_data = (1 << 31),
621 } options;
622 H323_UU_PDU h323_uu_pdu;
623} H323_UserInformation;
624
625typedef struct GatekeeperRequest { /* SEQUENCE */
626 enum {
627 eGatekeeperRequest_nonStandardData = (1 << 31),
628 eGatekeeperRequest_gatekeeperIdentifier = (1 << 30),
629 eGatekeeperRequest_callServices = (1 << 29),
630 eGatekeeperRequest_endpointAlias = (1 << 28),
631 eGatekeeperRequest_alternateEndpoints = (1 << 27),
632 eGatekeeperRequest_tokens = (1 << 26),
633 eGatekeeperRequest_cryptoTokens = (1 << 25),
634 eGatekeeperRequest_authenticationCapability = (1 << 24),
635 eGatekeeperRequest_algorithmOIDs = (1 << 23),
636 eGatekeeperRequest_integrity = (1 << 22),
637 eGatekeeperRequest_integrityCheckValue = (1 << 21),
638 eGatekeeperRequest_supportsAltGK = (1 << 20),
639 eGatekeeperRequest_featureSet = (1 << 19),
640 eGatekeeperRequest_genericData = (1 << 18),
641 } options;
642 TransportAddress rasAddress;
643} GatekeeperRequest;
644
645typedef struct GatekeeperConfirm { /* SEQUENCE */
646 enum {
647 eGatekeeperConfirm_nonStandardData = (1 << 31),
648 eGatekeeperConfirm_gatekeeperIdentifier = (1 << 30),
649 eGatekeeperConfirm_alternateGatekeeper = (1 << 29),
650 eGatekeeperConfirm_authenticationMode = (1 << 28),
651 eGatekeeperConfirm_tokens = (1 << 27),
652 eGatekeeperConfirm_cryptoTokens = (1 << 26),
653 eGatekeeperConfirm_algorithmOID = (1 << 25),
654 eGatekeeperConfirm_integrity = (1 << 24),
655 eGatekeeperConfirm_integrityCheckValue = (1 << 23),
656 eGatekeeperConfirm_featureSet = (1 << 22),
657 eGatekeeperConfirm_genericData = (1 << 21),
658 } options;
659 TransportAddress rasAddress;
660} GatekeeperConfirm;
661
662typedef struct RegistrationRequest_callSignalAddress { /* SEQUENCE OF */
663 int count;
664 TransportAddress item[10];
665} RegistrationRequest_callSignalAddress;
666
667typedef struct RegistrationRequest_rasAddress { /* SEQUENCE OF */
668 int count;
669 TransportAddress item[10];
670} RegistrationRequest_rasAddress;
671
672typedef struct RegistrationRequest { /* SEQUENCE */
673 enum {
674 eRegistrationRequest_nonStandardData = (1 << 31),
675 eRegistrationRequest_terminalAlias = (1 << 30),
676 eRegistrationRequest_gatekeeperIdentifier = (1 << 29),
677 eRegistrationRequest_alternateEndpoints = (1 << 28),
678 eRegistrationRequest_timeToLive = (1 << 27),
679 eRegistrationRequest_tokens = (1 << 26),
680 eRegistrationRequest_cryptoTokens = (1 << 25),
681 eRegistrationRequest_integrityCheckValue = (1 << 24),
682 eRegistrationRequest_keepAlive = (1 << 23),
683 eRegistrationRequest_endpointIdentifier = (1 << 22),
684 eRegistrationRequest_willSupplyUUIEs = (1 << 21),
685 eRegistrationRequest_maintainConnection = (1 << 20),
686 eRegistrationRequest_alternateTransportAddresses = (1 << 19),
687 eRegistrationRequest_additiveRegistration = (1 << 18),
688 eRegistrationRequest_terminalAliasPattern = (1 << 17),
689 eRegistrationRequest_supportsAltGK = (1 << 16),
690 eRegistrationRequest_usageReportingCapability = (1 << 15),
691 eRegistrationRequest_multipleCalls = (1 << 14),
692 eRegistrationRequest_supportedH248Packages = (1 << 13),
693 eRegistrationRequest_callCreditCapability = (1 << 12),
694 eRegistrationRequest_capacityReportingCapability = (1 << 11),
695 eRegistrationRequest_capacity = (1 << 10),
696 eRegistrationRequest_featureSet = (1 << 9),
697 eRegistrationRequest_genericData = (1 << 8),
698 } options;
699 RegistrationRequest_callSignalAddress callSignalAddress;
700 RegistrationRequest_rasAddress rasAddress;
701 unsigned int timeToLive;
702} RegistrationRequest;
703
704typedef struct RegistrationConfirm_callSignalAddress { /* SEQUENCE OF */
705 int count;
706 TransportAddress item[10];
707} RegistrationConfirm_callSignalAddress;
708
709typedef struct RegistrationConfirm { /* SEQUENCE */
710 enum {
711 eRegistrationConfirm_nonStandardData = (1 << 31),
712 eRegistrationConfirm_terminalAlias = (1 << 30),
713 eRegistrationConfirm_gatekeeperIdentifier = (1 << 29),
714 eRegistrationConfirm_alternateGatekeeper = (1 << 28),
715 eRegistrationConfirm_timeToLive = (1 << 27),
716 eRegistrationConfirm_tokens = (1 << 26),
717 eRegistrationConfirm_cryptoTokens = (1 << 25),
718 eRegistrationConfirm_integrityCheckValue = (1 << 24),
719 eRegistrationConfirm_willRespondToIRR = (1 << 23),
720 eRegistrationConfirm_preGrantedARQ = (1 << 22),
721 eRegistrationConfirm_maintainConnection = (1 << 21),
722 eRegistrationConfirm_serviceControl = (1 << 20),
723 eRegistrationConfirm_supportsAdditiveRegistration = (1 << 19),
724 eRegistrationConfirm_terminalAliasPattern = (1 << 18),
725 eRegistrationConfirm_supportedPrefixes = (1 << 17),
726 eRegistrationConfirm_usageSpec = (1 << 16),
727 eRegistrationConfirm_featureServerAlias = (1 << 15),
728 eRegistrationConfirm_capacityReportingSpec = (1 << 14),
729 eRegistrationConfirm_featureSet = (1 << 13),
730 eRegistrationConfirm_genericData = (1 << 12),
731 } options;
732 RegistrationConfirm_callSignalAddress callSignalAddress;
733 unsigned int timeToLive;
734} RegistrationConfirm;
735
736typedef struct UnregistrationRequest_callSignalAddress { /* SEQUENCE OF */
737 int count;
738 TransportAddress item[10];
739} UnregistrationRequest_callSignalAddress;
740
741typedef struct UnregistrationRequest { /* SEQUENCE */
742 enum {
743 eUnregistrationRequest_endpointAlias = (1 << 31),
744 eUnregistrationRequest_nonStandardData = (1 << 30),
745 eUnregistrationRequest_endpointIdentifier = (1 << 29),
746 eUnregistrationRequest_alternateEndpoints = (1 << 28),
747 eUnregistrationRequest_gatekeeperIdentifier = (1 << 27),
748 eUnregistrationRequest_tokens = (1 << 26),
749 eUnregistrationRequest_cryptoTokens = (1 << 25),
750 eUnregistrationRequest_integrityCheckValue = (1 << 24),
751 eUnregistrationRequest_reason = (1 << 23),
752 eUnregistrationRequest_endpointAliasPattern = (1 << 22),
753 eUnregistrationRequest_supportedPrefixes = (1 << 21),
754 eUnregistrationRequest_alternateGatekeeper = (1 << 20),
755 eUnregistrationRequest_genericData = (1 << 19),
756 } options;
757 UnregistrationRequest_callSignalAddress callSignalAddress;
758} UnregistrationRequest;
759
760typedef struct AdmissionRequest { /* SEQUENCE */
761 enum {
762 eAdmissionRequest_callModel = (1 << 31),
763 eAdmissionRequest_destinationInfo = (1 << 30),
764 eAdmissionRequest_destCallSignalAddress = (1 << 29),
765 eAdmissionRequest_destExtraCallInfo = (1 << 28),
766 eAdmissionRequest_srcCallSignalAddress = (1 << 27),
767 eAdmissionRequest_nonStandardData = (1 << 26),
768 eAdmissionRequest_callServices = (1 << 25),
769 eAdmissionRequest_canMapAlias = (1 << 24),
770 eAdmissionRequest_callIdentifier = (1 << 23),
771 eAdmissionRequest_srcAlternatives = (1 << 22),
772 eAdmissionRequest_destAlternatives = (1 << 21),
773 eAdmissionRequest_gatekeeperIdentifier = (1 << 20),
774 eAdmissionRequest_tokens = (1 << 19),
775 eAdmissionRequest_cryptoTokens = (1 << 18),
776 eAdmissionRequest_integrityCheckValue = (1 << 17),
777 eAdmissionRequest_transportQOS = (1 << 16),
778 eAdmissionRequest_willSupplyUUIEs = (1 << 15),
779 eAdmissionRequest_callLinkage = (1 << 14),
780 eAdmissionRequest_gatewayDataRate = (1 << 13),
781 eAdmissionRequest_capacity = (1 << 12),
782 eAdmissionRequest_circuitInfo = (1 << 11),
783 eAdmissionRequest_desiredProtocols = (1 << 10),
784 eAdmissionRequest_desiredTunnelledProtocol = (1 << 9),
785 eAdmissionRequest_featureSet = (1 << 8),
786 eAdmissionRequest_genericData = (1 << 7),
787 } options;
788 TransportAddress destCallSignalAddress;
789 TransportAddress srcCallSignalAddress;
790} AdmissionRequest;
791
792typedef struct AdmissionConfirm { /* SEQUENCE */
793 enum {
794 eAdmissionConfirm_irrFrequency = (1 << 31),
795 eAdmissionConfirm_nonStandardData = (1 << 30),
796 eAdmissionConfirm_destinationInfo = (1 << 29),
797 eAdmissionConfirm_destExtraCallInfo = (1 << 28),
798 eAdmissionConfirm_destinationType = (1 << 27),
799 eAdmissionConfirm_remoteExtensionAddress = (1 << 26),
800 eAdmissionConfirm_alternateEndpoints = (1 << 25),
801 eAdmissionConfirm_tokens = (1 << 24),
802 eAdmissionConfirm_cryptoTokens = (1 << 23),
803 eAdmissionConfirm_integrityCheckValue = (1 << 22),
804 eAdmissionConfirm_transportQOS = (1 << 21),
805 eAdmissionConfirm_willRespondToIRR = (1 << 20),
806 eAdmissionConfirm_uuiesRequested = (1 << 19),
807 eAdmissionConfirm_language = (1 << 18),
808 eAdmissionConfirm_alternateTransportAddresses = (1 << 17),
809 eAdmissionConfirm_useSpecifiedTransport = (1 << 16),
810 eAdmissionConfirm_circuitInfo = (1 << 15),
811 eAdmissionConfirm_usageSpec = (1 << 14),
812 eAdmissionConfirm_supportedProtocols = (1 << 13),
813 eAdmissionConfirm_serviceControl = (1 << 12),
814 eAdmissionConfirm_multipleCalls = (1 << 11),
815 eAdmissionConfirm_featureSet = (1 << 10),
816 eAdmissionConfirm_genericData = (1 << 9),
817 } options;
818 TransportAddress destCallSignalAddress;
819} AdmissionConfirm;
820
821typedef struct LocationRequest { /* SEQUENCE */
822 enum {
823 eLocationRequest_endpointIdentifier = (1 << 31),
824 eLocationRequest_nonStandardData = (1 << 30),
825 eLocationRequest_sourceInfo = (1 << 29),
826 eLocationRequest_canMapAlias = (1 << 28),
827 eLocationRequest_gatekeeperIdentifier = (1 << 27),
828 eLocationRequest_tokens = (1 << 26),
829 eLocationRequest_cryptoTokens = (1 << 25),
830 eLocationRequest_integrityCheckValue = (1 << 24),
831 eLocationRequest_desiredProtocols = (1 << 23),
832 eLocationRequest_desiredTunnelledProtocol = (1 << 22),
833 eLocationRequest_featureSet = (1 << 21),
834 eLocationRequest_genericData = (1 << 20),
835 eLocationRequest_hopCount = (1 << 19),
836 eLocationRequest_circuitInfo = (1 << 18),
837 } options;
838 TransportAddress replyAddress;
839} LocationRequest;
840
841typedef struct LocationConfirm { /* SEQUENCE */
842 enum {
843 eLocationConfirm_nonStandardData = (1 << 31),
844 eLocationConfirm_destinationInfo = (1 << 30),
845 eLocationConfirm_destExtraCallInfo = (1 << 29),
846 eLocationConfirm_destinationType = (1 << 28),
847 eLocationConfirm_remoteExtensionAddress = (1 << 27),
848 eLocationConfirm_alternateEndpoints = (1 << 26),
849 eLocationConfirm_tokens = (1 << 25),
850 eLocationConfirm_cryptoTokens = (1 << 24),
851 eLocationConfirm_integrityCheckValue = (1 << 23),
852 eLocationConfirm_alternateTransportAddresses = (1 << 22),
853 eLocationConfirm_supportedProtocols = (1 << 21),
854 eLocationConfirm_multipleCalls = (1 << 20),
855 eLocationConfirm_featureSet = (1 << 19),
856 eLocationConfirm_genericData = (1 << 18),
857 eLocationConfirm_circuitInfo = (1 << 17),
858 eLocationConfirm_serviceControl = (1 << 16),
859 } options;
860 TransportAddress callSignalAddress;
861 TransportAddress rasAddress;
862} LocationConfirm;
863
864typedef struct InfoRequestResponse_callSignalAddress { /* SEQUENCE OF */
865 int count;
866 TransportAddress item[10];
867} InfoRequestResponse_callSignalAddress;
868
869typedef struct InfoRequestResponse { /* SEQUENCE */
870 enum {
871 eInfoRequestResponse_nonStandardData = (1 << 31),
872 eInfoRequestResponse_endpointAlias = (1 << 30),
873 eInfoRequestResponse_perCallInfo = (1 << 29),
874 eInfoRequestResponse_tokens = (1 << 28),
875 eInfoRequestResponse_cryptoTokens = (1 << 27),
876 eInfoRequestResponse_integrityCheckValue = (1 << 26),
877 eInfoRequestResponse_needResponse = (1 << 25),
878 eInfoRequestResponse_capacity = (1 << 24),
879 eInfoRequestResponse_irrStatus = (1 << 23),
880 eInfoRequestResponse_unsolicited = (1 << 22),
881 eInfoRequestResponse_genericData = (1 << 21),
882 } options;
883 TransportAddress rasAddress;
884 InfoRequestResponse_callSignalAddress callSignalAddress;
885} InfoRequestResponse;
886
887typedef struct RasMessage { /* CHOICE */
888 enum {
889 eRasMessage_gatekeeperRequest,
890 eRasMessage_gatekeeperConfirm,
891 eRasMessage_gatekeeperReject,
892 eRasMessage_registrationRequest,
893 eRasMessage_registrationConfirm,
894 eRasMessage_registrationReject,
895 eRasMessage_unregistrationRequest,
896 eRasMessage_unregistrationConfirm,
897 eRasMessage_unregistrationReject,
898 eRasMessage_admissionRequest,
899 eRasMessage_admissionConfirm,
900 eRasMessage_admissionReject,
901 eRasMessage_bandwidthRequest,
902 eRasMessage_bandwidthConfirm,
903 eRasMessage_bandwidthReject,
904 eRasMessage_disengageRequest,
905 eRasMessage_disengageConfirm,
906 eRasMessage_disengageReject,
907 eRasMessage_locationRequest,
908 eRasMessage_locationConfirm,
909 eRasMessage_locationReject,
910 eRasMessage_infoRequest,
911 eRasMessage_infoRequestResponse,
912 eRasMessage_nonStandardMessage,
913 eRasMessage_unknownMessageResponse,
914 eRasMessage_requestInProgress,
915 eRasMessage_resourcesAvailableIndicate,
916 eRasMessage_resourcesAvailableConfirm,
917 eRasMessage_infoRequestAck,
918 eRasMessage_infoRequestNak,
919 eRasMessage_serviceControlIndication,
920 eRasMessage_serviceControlResponse,
921 } choice;
922 union {
923 GatekeeperRequest gatekeeperRequest;
924 GatekeeperConfirm gatekeeperConfirm;
925 RegistrationRequest registrationRequest;
926 RegistrationConfirm registrationConfirm;
927 UnregistrationRequest unregistrationRequest;
928 AdmissionRequest admissionRequest;
929 AdmissionConfirm admissionConfirm;
930 LocationRequest locationRequest;
931 LocationConfirm locationConfirm;
932 InfoRequestResponse infoRequestResponse;
933 };
934} RasMessage;
935