00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
#ifndef _ATM_H_
00028
#define _ATM_H_
00029
00030
00031
00032
00033 typedef ULONG
ATM_ADDRESSTYPE;
00034
00035 #define ATM_NSAP 0
00036 #define ATM_E164 1
00037
00038
00039
00040
00041 #define ATM_MAC_ADDRESS_LENGTH 6 // Same as 802.x
00042 #define ATM_ADDRESS_LENGTH 20
00043
00044
00045
00046
00047 #define ATM_ADDR_BLANK_CHAR L' '
00048 #define ATM_ADDR_PUNCTUATION_CHAR L'.'
00049 #define ATM_ADDR_E164_START_CHAR L'+'
00050
00051
typedef struct _ATM_ADDRESS
00052 {
00053 ATM_ADDRESSTYPE AddressType;
00054 ULONG
NumberOfDigits;
00055 UCHAR
Address[
ATM_ADDRESS_LENGTH];
00056 }
ATM_ADDRESS, *
PATM_ADDRESS;
00057
00058
00059
00060
00061
00062
00063 #define AAL_TYPE_AAL0 1
00064 #define AAL_TYPE_AAL1 2
00065 #define AAL_TYPE_AAL34 4
00066 #define AAL_TYPE_AAL5 8
00067
00068 typedef ULONG
ATM_AAL_TYPE, *
PATM_AAL_TYPE;
00069
00070
00071
00072
00073
00074 #define ATM_IE_RESPONSE_FLAG 0x80000000
00075 #define ATM_IE_EMPTY_FLAG 0x40000000
00076
00077
00078
00079
00080
00081 typedef enum
00082 {
00083
00084
IE_AALParameters,
00085
IE_TrafficDescriptor,
00086
IE_BroadbandBearerCapability,
00087
IE_BHLI,
00088
IE_BLLI,
00089
IE_CalledPartyNumber,
00090
IE_CalledPartySubaddress,
00091
IE_CallingPartyNumber,
00092
IE_CallingPartySubaddress,
00093
IE_Cause,
00094
IE_QOSClass,
00095
IE_TransitNetworkSelection,
00096
IE_BroadbandSendingComplete,
00097
IE_LIJCallId,
00098
IE_Raw,
00099
#ifdef MS_UNI4
00100
IE_TrafficDescriptor_AddOn,
00101 IE_BroadbandBearerCapability_Uni40,
00102 IE_BLLI_AddOn,
00103 IE_ConnectionId,
00104 IE_NotificationIndicator,
00105 IE_MinimumTrafficDescriptor,
00106 IE_AlternativeTrafficDescriptor,
00107 IE_ExtendedQOS,
00108 IE_EndToEndTransitDelay,
00109 IE_ABRSetupParameters,
00110 IE_ABRAdditionalParameters,
00111 IE_LIJParameters,
00112 IE_LeafSequenceNumber,
00113 IE_ConnectionScopeSelection,
00114 IE_UserUser,
00115 IE_GenericIDTransport,
00116 IE_ConnectedNumber,
00117 IE_ConnectedSubaddress,
00118
#endif // MS_UNI4
00119
00120
IE_NextRequest,
00121
00122
00123
IE_Cause_Empty =
IE_Cause |
ATM_IE_EMPTY_FLAG,
00124
#ifdef MS_UNI4
00125
IE_ConnectionId_Empty = IE_ConnectionId |
ATM_IE_EMPTY_FLAG,
00126 IE_ConnectedNumber_Empty = IE_ConnectedNumber |
ATM_IE_EMPTY_FLAG,
00127 IE_ConnectedSubaddress_Empty = IE_ConnectedSubaddress |
ATM_IE_EMPTY_FLAG,
00128 IE_NotificationIndicator_Empty = IE_NotificationIndicator |
ATM_IE_EMPTY_FLAG,
00129 IE_UserUser_Empty = IE_UserUser |
ATM_IE_EMPTY_FLAG,
00130 IE_GenericIDTransport_Empty = IE_GenericIDTransport |
ATM_IE_EMPTY_FLAG,
00131
#endif // MS_UNI4
00132
00133
00134
IE_Cause_Response =
IE_Cause |
ATM_IE_RESPONSE_FLAG,
00135
IE_AALParameters_Response =
IE_AALParameters |
ATM_IE_RESPONSE_FLAG,
00136
IE_BLLI_Response =
IE_BLLI |
ATM_IE_RESPONSE_FLAG,
00137
#ifdef MS_UNI4
00138
IE_BLLI_AddOn_Response = IE_BLLI_AddOn |
ATM_IE_RESPONSE_FLAG,
00139 IE_TrafficDescriptor_Response =
IE_TrafficDescriptor |
ATM_IE_RESPONSE_FLAG,
00140 IE_TrafficDescriptor_AddOn_Response = IE_TrafficDescriptor_AddOn|
ATM_IE_RESPONSE_FLAG,
00141 IE_ConnectionId_Response = IE_ConnectionId |
ATM_IE_RESPONSE_FLAG,
00142 IE_NotificationIndicator_Response = IE_NotificationIndicator |
ATM_IE_RESPONSE_FLAG,
00143 IE_ExtendedQOS_Response = IE_ExtendedQOS |
ATM_IE_RESPONSE_FLAG,
00144 IE_EndToEndTransitDelay_Response = IE_EndToEndTransitDelay |
ATM_IE_RESPONSE_FLAG,
00145 IE_ABRSetupParameters_Response = IE_ABRSetupParameters |
ATM_IE_RESPONSE_FLAG,
00146 IE_ABRAdditionalParameters_Response = IE_ABRAdditionalParameters|
ATM_IE_RESPONSE_FLAG,
00147 IE_ConnectedNumber_Response = IE_ConnectedNumber |
ATM_IE_RESPONSE_FLAG,
00148 IE_ConnectedSubaddress_Response = IE_ConnectedSubaddress |
ATM_IE_RESPONSE_FLAG,
00149 IE_UserUser_Response = IE_UserUser |
ATM_IE_RESPONSE_FLAG,
00150 IE_GenericIDTransport_Response = IE_GenericIDTransport |
ATM_IE_RESPONSE_FLAG,
00151
#endif // MS_UNI4
00152
}
Q2931_IE_TYPE;
00153
00154
00155
00156
00157
00158
00159
typedef struct _Q2931_IE
00160 {
00161 Q2931_IE_TYPE IEType;
00162 ULONG
IELength;
00163 UCHAR
IE[1];
00164 }
Q2931_IE, *
PQ2931_IE;
00165
00166
00167
00168
00169
00170 #define SAP_TYPE_NSAP 0x00000001
00171 #define SAP_TYPE_E164 0x00000002
00172
00173
00174
00175
00176 #define AAL5_MODE_MESSAGE 0x01
00177 #define AAL5_MODE_STREAMING 0x02
00178
00179
00180
00181
00182 #define AAL5_SSCS_NULL 0x00
00183 #define AAL5_SSCS_SSCOP_ASSURED 0x01
00184 #define AAL5_SSCS_SSCOP_NON_ASSURED 0x02
00185 #define AAL5_SSCS_FRAME_RELAY 0x04
00186
00187
00188
00189
00190
00191
typedef struct _AAL1_PARAMETERS
00192 {
00193 UCHAR
Subtype;
00194 UCHAR
CBRRate;
00195 USHORT Multiplier;
00196 UCHAR
SourceClockRecoveryMethod;
00197 UCHAR
ErrorCorrectionMethod;
00198 USHORT StructuredDataTransferBlocksize;
00199 UCHAR
PartiallyFilledCellsMethod;
00200 }
AAL1_PARAMETERS, *
PAAL1_PARAMETERS;
00201
00202
typedef struct _AAL34_PARAMETERS
00203 {
00204 USHORT ForwardMaxCPCSSDUSize;
00205 USHORT BackwardMaxCPCSSDUSize;
00206 USHORT LowestMID;
00207 USHORT HighestMID;
00208 UCHAR
SSCSType;
00209 }
AAL34_PARAMETERS, *
PAAL34_PARAMETERS;
00210
00211
typedef struct _AAL5_PARAMETERS
00212 {
00213 ULONG
ForwardMaxCPCSSDUSize;
00214 ULONG
BackwardMaxCPCSSDUSize;
00215 UCHAR
Mode;
00216 UCHAR
SSCSType;
00217 }
AAL5_PARAMETERS, *
PAAL5_PARAMETERS;
00218
00219
typedef struct _AALUSER_PARAMETERS
00220 {
00221 ULONG
UserDefined;
00222 }
AALUSER_PARAMETERS, *
PAALUSER_PARAMETERS;
00223
00224
typedef struct _AAL_PARAMETERS_IE
00225 {
00226 ATM_AAL_TYPE AALType;
00227
union
00228
{
00229 AAL1_PARAMETERS AAL1Parameters;
00230 AAL34_PARAMETERS AAL34Parameters;
00231 AAL5_PARAMETERS AAL5Parameters;
00232 AALUSER_PARAMETERS AALUserParameters;
00233 } AALSpecificParameters;
00234
00235 }
AAL_PARAMETERS_IE, *
PAAL_PARAMETERS_IE;
00236
00237
00238
00239
00240
typedef struct _ATM_TRAFFIC_DESCRIPTOR
00241 {
00242 ULONG
PeakCellRateCLP0;
00243 ULONG
PeakCellRateCLP01;
00244 ULONG
SustainableCellRateCLP0;
00245 ULONG
SustainableCellRateCLP01;
00246 ULONG
MaximumBurstSizeCLP0;
00247 ULONG
MaximumBurstSizeCLP01;
00248 BOOLEAN
Tagging;
00249 }
ATM_TRAFFIC_DESCRIPTOR, *
PATM_TRAFFIC_DESCRIPTOR;
00250
00251
00252
typedef struct _ATM_TRAFFIC_DESCRIPTOR_IE
00253 {
00254 ATM_TRAFFIC_DESCRIPTOR ForwardTD;
00255 ATM_TRAFFIC_DESCRIPTOR BackwardTD;
00256 BOOLEAN
BestEffort;
00257 }
ATM_TRAFFIC_DESCRIPTOR_IE, *
PATM_TRAFFIC_DESCRIPTOR_IE;
00258
00259
00260
#ifdef MS_UNI4
00261
00262
00263
00264
00265
00266
typedef struct _ATM_TRAFFIC_DESCRIPTOR_ADDON
00267 {
00268 ULONG ABRMinimumCellRateCLP01;
00269 BOOLEAN FrameDiscard;
00270 } ATM_TRAFFIC_DESCRIPTOR_ADDON, *PATM_TRAFFIC_DESCRIPTOR_ADDON;
00271
00272
00273
typedef struct _ATM_TRAFFIC_DESCRIPTOR_IE_ADDON
00274 {
00275 ATM_TRAFFIC_DESCRIPTOR_ADDON ForwardTD;
00276 ATM_TRAFFIC_DESCRIPTOR_ADDON BackwardTD;
00277 } ATM_TRAFFIC_DESCRIPTOR_IE_ADDON, *PATM_TRAFFIC_DESCRIPTOR_IE_ADDON;
00278
00279
#endif // MS_UNI4
00280
00281
00282
#ifdef MS_UNI4
00283
00284
00285
00286
typedef struct ATM_ALTERNATIVE_TRAFFIC_DESCRIPTOR_IE
00287 {
00288
ATM_TRAFFIC_DESCRIPTOR_IE Part1;
00289 ATM_TRAFFIC_DESCRIPTOR_IE_ADDON Part2;
00290 } ATM_ALTERNATIVE_TRAFFIC_DESCRIPTOR_IE, *PATM_ALTERNATIVE_TRAFFIC_DESCRIPTOR_IE;
00291
00292
#endif // MS_UNI4
00293
00294
00295
#ifdef MS_UNI4
00296
00297
00298
00299
typedef struct _ATM_MINIMUM_TRAFFIC_DESCRIPTOR
00300 {
00301 ULONG PeakCellRateCLP0;
00302 ULONG PeakCellRateCLP01;
00303 ULONG MinimumCellRateCLP01;
00304 } ATM_MINIMUM_TRAFFIC_DESCRIPTOR, *PATM_MINIMUM_TRAFFIC_DESCRIPTOR;
00305
00306
00307
typedef struct _ATM_MINIMUM_TRAFFIC_DESCRIPTOR_IE
00308 {
00309 ATM_MINIMUM_TRAFFIC_DESCRIPTOR ForwardTD;
00310 ATM_MINIMUM_TRAFFIC_DESCRIPTOR BackwardTD;
00311 } ATM_MINIMUM_TRAFFIC_DESCRIPTOR_IE, *PATM_MINIMUM_TRAFFIC_DESCRIPTOR_IE;
00312
00313
#endif // MS_UNI4
00314
00315
00316
00317
00318
00319
00320
00321
00322 #define BCOB_A 0x00 // Bearer class A
00323 #define BCOB_C 0x01 // Bearer class C
00324 #define BCOB_X 0x02 // Bearer class X
00325
#ifdef MS_UNI4_NOT_USED
00326
#define BCOB_VP_SERVICE 0x03 // VP service
00327
#endif
00328
00329
00330
00331
00332 #define TT_NOIND 0x00 // No indication of traffic type
00333 #define TT_CBR 0x04 // Constant bit rate
00334
#ifdef MS_UNI3_ERROR_KEPT
00335
#define TT_VBR 0x06 // Variable bit rate
00336
#else
00337 #define TT_VBR 0x08 // Variable bit rate
00338
#endif
00339
00340
00341
00342
00343 #define TR_NOIND 0x00 // No timing requirement indication
00344 #define TR_END_TO_END 0x01 // End-to-end timing required
00345 #define TR_NO_END_TO_END 0x02 // End-to-end timing not required
00346
00347
00348
00349
00350
00351 #define CLIP_NOT 0x00 // Not susceptible to clipping
00352 #define CLIP_SUS 0x20 // Susceptible to clipping
00353
00354
00355
00356
00357
00358
00359 #define UP_P2P 0x00 // Point-to-point connection
00360 #define UP_P2MP 0x01 // Point-to-multipoint connection
00361
00362
00363
00364
00365
00366
typedef struct _ATM_BROADBAND_BEARER_CAPABILITY_IE
00367 {
00368 UCHAR
BearerClass;
00369 UCHAR
TrafficType;
00370 UCHAR
TimingRequirements;
00371 UCHAR
ClippingSusceptability;
00372 UCHAR
UserPlaneConnectionConfig;
00373 }
ATM_BROADBAND_BEARER_CAPABILITY_IE, *
PATM_BROADBAND_BEARER_CAPABILITY_IE;
00374
00375
00376
#ifdef MS_UNI4
00377
00378
00379
00380
00381
00382
00383
#define XCAP_NRT_VBR_RCV_0 0x00 // Only rcv NOIND NOIND
00384
#define XCAP_RT_VBR_RCV_1 0x01 // Only rcv NOIND END_TO_END
00385
#define XCAP_NRT_VBR_RCV_2 0x02 // Only rcv NOIND NO_END_TO_END
00386
#define XCAP_CBR_RCV_4 0x04 // Only rcv CBR NOIND
00387
#define XCAP_CBR 0x05 // CBR END_TO_END
00388
#define XCAP_CBR_RCV_6 0x06 // Only rcv CBR NO_END_TO_END
00389
#define XCAP_CBR_W_CLR 0x07 // None CBR <reserved>
00390
#define XCAP_NRT_VBR_RCV_8 0x08 // Only rcv VBR NOIND
00391
#define XCAP_RT_VBR 0x09 // VBR END_TO_END
00392
#define XCAP_NRT_VBR 0x0A // VBR NO_END_TO_END
00393
#define XCAP_NRT_VBR_W_CLR 0x0B // None VBR <reserved>
00394
#define XCAP_ABR 0x0C // None <reserved> NOIND
00395
#define XCAP_RT_VBR_W_CLR 0x13 // None (NOIND) <reserved>
00396
00397
00398
00399
00400
00401
typedef struct _ATM_BROADBAND_BEARER_CAPABILITY_IE_UNI40
00402 {
00403 UCHAR BearerClass;
00404 UCHAR TransferCapability;
00405 UCHAR ClippingSusceptability;
00406 UCHAR UserPlaneConnectionConfig;
00407 } ATM_BROADBAND_BEARER_CAPABILITY_IE_UNI40, *PATM_BROADBAND_BEARER_CAPABILITY_IE_UNI40;
00408
#endif // MS_UNI4
00409
00410
00411
00412
00413
00414 #define BHLI_ISO 0x00 // ISO
00415 #define BHLI_UserSpecific 0x01 // User Specific
00416 #define BHLI_HighLayerProfile 0x02 // High layer profile (only in UNI3.0)
00417 #define BHLI_VendorSpecificAppId 0x03 // Vendor-Specific Application ID
00418
00419
00420
00421
00422
typedef struct _ATM_BHLI_IE
00423 {
00424 ULONG
HighLayerInfoType;
00425 ULONG
HighLayerInfoLength;
00426 UCHAR
HighLayerInfo[8];
00427
00428 }
ATM_BHLI_IE, *
PATM_BHLI_IE;
00429
00430
00431
00432
00433 #define BLLI_L2_ISO_1745 0x01 // Basic mode ISO 1745
00434 #define BLLI_L2_Q921 0x02 // CCITT Rec. Q.921
00435 #define BLLI_L2_X25L 0x06 // CCITT Rec. X.25, link layer
00436 #define BLLI_L2_X25M 0x07 // CCITT Rec. X.25, multilink
00437 #define BLLI_L2_ELAPB 0x08 // Extended LAPB; for half duplex operation
00438
#ifdef MS_UNI3_ERROR_KEPT
00439
#define BLLI_L2_HDLC_NRM 0x09 // HDLC NRM (ISO 4335)
00440
#define BLLI_L2_HDLC_ABM 0x0A // HDLC ABM (ISO 4335)
00441
#define BLLI_L2_HDLC_ARM 0x0B // HDLC ARM (ISO 4335)
00442
#else
00443 #define BLLI_L2_HDLC_ARM 0x09 // HDLC ARM (ISO 4335)
00444 #define BLLI_L2_HDLC_NRM 0x0A // HDLC NRM (ISO 4335)
00445 #define BLLI_L2_HDLC_ABM 0x0B // HDLC ABM (ISO 4335)
00446
#endif
00447 #define BLLI_L2_LLC 0x0C // LAN logical link control (ISO 8802/2)
00448 #define BLLI_L2_X75 0x0D // CCITT Rec. X.75, single link procedure
00449 #define BLLI_L2_Q922 0x0E // CCITT Rec. Q.922
00450 #define BLLI_L2_USER_SPECIFIED 0x10 // User Specified
00451 #define BLLI_L2_ISO_7776 0x11 // ISO 7776 DTE-DTE operation
00452
00453
00454
00455
00456 #define BLLI_L3_X25 0x06 // CCITT Rec. X.25, packet layer
00457 #define BLLI_L3_ISO_8208 0x07 // ISO/IEC 8208 (X.25 packet layer for DTE
00458 #define BLLI_L3_X223 0x08 // X.223/ISO 8878
00459 #define BLLI_L3_SIO_8473 0x09 // ISO/IEC 8473 (OSI connectionless)
00460 #define BLLI_L3_T70 0x0A // CCITT Rec. T.70 min. network layer
00461 #define BLLI_L3_ISO_TR9577 0x0B // ISO/IEC TR 9577 Network Layer Protocol ID
00462 #define BLLI_L3_USER_SPECIFIED 0x10 // User Specified
00463
#ifdef MS_UNI4
00464
#define BLLI_L3_H310 0x0C // ITU H.310
00465
#define BLLI_L3_H321 0x0D // ITU H.321
00466
#endif // MS_UNI4
00467
00468
00469
00470
00471 #define BLLI_L3_IPI_SNAP 0x80 // IEEE 802.1 SNAP identifier
00472 #define BLLI_L3_IPI_IP 0xCC // Internet Protocol (IP) identifier
00473
00474
00475
00476
00477
typedef struct _ATM_BLLI_IE
00478 {
00479 ULONG
Layer2Protocol;
00480 UCHAR
Layer2Mode;
00481 UCHAR
Layer2WindowSize;
00482 ULONG
Layer2UserSpecifiedProtocol;
00483 ULONG
Layer3Protocol;
00484 UCHAR
Layer3Mode;
00485 UCHAR
Layer3DefaultPacketSize;
00486 UCHAR
Layer3PacketWindowSize;
00487 ULONG
Layer3UserSpecifiedProtocol;
00488 ULONG
Layer3IPI;
00489 UCHAR
SnapId[5];
00490 }
ATM_BLLI_IE, *
PATM_BLLI_IE;
00491
00492
00493
#ifdef MS_UNI4
00494
00495
00496
00497
00498
#define BLLI_L3_H310_TT_RECEIVE_ONLY 0x01
00499
#define BLLI_L3_H310_TT_SEND_ONLY 0x02
00500
#define BLLI_L3_H310_TT_RECEIVE_AND_SEND 0x03
00501
00502
00503
00504
00505
00506
00507
#define BLLI_L3_H310_MUX_NONE 0x00
00508
#define BLLI_L3_H310_MUX_TRANSPORT_STREAM 0x01
00509
#define BLLI_L3_H310_MUX_TRANSPORT_STREAM_WITH_FEC 0x02
00510
#define BLLI_L3_H310_MUX_PROGRAM_STREAM 0x03
00511
#define BLLI_L3_H310_MUX_PROGRAM_STREAM_WITH_FEC 0x04
00512
#define BLLI_L3_H310_MUX_H221 0x05
00513
00514
00515
00516
00517
00518
00519
00520
typedef struct _ATM_BLLI_IE_ADDON
00521 {
00522 UCHAR Layer3H310TerminalType;
00523 UCHAR Layer3H310ForwardMultiplexingCapability;
00524 UCHAR Layer3H310BackwardMultiplexingCapability;
00525 } ATM_BLLI_IE_ADDON, *PATM_BLLI_IE_ADDON;
00526
00527
#endif // MS_UNI4
00528
00529
00530
00531
00532
00533
00534 #define CALLING_NUMBER_PRESENTATION_ALLOWED 0x00
00535 #define CALLING_NUMBER_PRESENTATION_RESTRICTED 0x01
00536 #define CALLING_NUMBER_PRESENTATION_NOT_AVAIL 0x02
00537 #define CALLING_NUMBER_PRESENTATION_RESERVED 0x03
00538
00539
00540
00541
00542
00543 #define CALLING_NUMBER_SCREENING_USER_PROVIDED_NOT_SCREENED 0x00
00544 #define CALLING_NUMBER_SCREENING_USER_PROVIDED_PASSED_SCREENING 0x01
00545 #define CALLING_NUMBER_SCREENING_USER_PROVIDED_FAILED_SCREENING 0x02
00546 #define CALLING_NUMBER_SCREENING_NW_PROVIDED 0x03
00547
00548
00549
00550
00551
00552
00553
00554
00555 typedef ATM_ADDRESS ATM_CALLED_PARTY_NUMBER_IE;
00556
00557
00558
00559
00560
00561 typedef ATM_ADDRESS ATM_CALLED_PARTY_SUBADDRESS_IE;
00562
00563
00564
00565
00566
00567
00568
typedef struct _ATM_CALLING_PARTY_NUMBER_IE
00569 {
00570 ATM_ADDRESS Number;
00571 UCHAR
PresentationIndication;
00572 UCHAR
ScreeningIndicator;
00573 }
ATM_CALLING_PARTY_NUMBER_IE, *
PATM_CALLING_PARTY_NUMBER_IE;
00574
00575
00576
00577
00578
00579 typedef ATM_ADDRESS ATM_CALLING_PARTY_SUBADDRESS_IE;
00580
00581
00582
#ifdef MS_UNI4
00583
00584
00585
00586
typedef ATM_CALLING_PARTY_NUMBER_IE ATM_CONNECTED_NUMBER_IE, *PATM_CONNECTED_NUMBER_IE;
00587
00588
00589
00590
00591
00592
typedef ATM_CALLING_PARTY_SUBADDRESS_IE ATM_CONNECTED_SUBADDRESS_IE, *PATM_CONNECTED_SUBADDRESS_IE;
00593
00594
#endif // MS_UNI4
00595
00596
00597
00598
00599
00600
00601 #define QOS_CLASS0 0x00
00602 #define QOS_CLASS1 0x01
00603 #define QOS_CLASS2 0x02
00604 #define QOS_CLASS3 0x03
00605 #define QOS_CLASS4 0x04
00606
00607
00608
00609
00610
typedef struct _ATM_QOS_CLASS_IE
00611 {
00612 UCHAR
QOSClassForward;
00613 UCHAR
QOSClassBackward;
00614 }
ATM_QOS_CLASS_IE, *
PATM_QOS_CLASS_IE;
00615
00616
00617
#ifdef MS_UNI4
00618
00619
00620
00621
#define ATM_XQOS_ORIGINATING_USER 0x00
00622
#define ATM_XQOS_INTERMEDIATE_NW 0x01
00623
00624
00625
00626
00627
typedef struct _ATM_EXTENDED_QOS_PARAMETERS_IE
00628 {
00629 UCHAR Origin;
00630 UCHAR Filler[3];
00631 ULONG AcceptableForwardPeakCDV;
00632 ULONG AcceptableBackwardPeakCDV;
00633 ULONG CumulativeForwardPeakCDV;
00634 ULONG CumulativeBackwardPeakCDV;
00635 UCHAR AcceptableForwardCLR;
00636 UCHAR AcceptableBackwardCLR;
00637 } ATM_EXTENDED_QOS_PARAMETERS_IE, *PATM_EXTENDED_QOS_PARAMETERS_IE;
00638
00639
#endif // MS_UNI4
00640
00641
00642
00643
00644
00645
typedef struct _ATM_BROADBAND_SENDING_COMPLETE_IE
00646 {
00647 UCHAR
SendingComplete;
00648 }
ATM_BROADBAND_SENDING_COMPLETE_IE, *
PATM_BROADBAND_SENDING_COMPLETE_IE;
00649
00650
00651
00652
00653
00654 #define TNS_TYPE_NATIONAL 0x40
00655
00656
00657
00658
00659 #define TNS_PLAN_CARRIER_ID_CODE 0x01
00660
00661
00662
00663
00664
typedef struct _ATM_TRANSIT_NETWORK_SELECTION_IE
00665 {
00666 UCHAR
TypeOfNetworkId;
00667 UCHAR
NetworkIdPlan;
00668 UCHAR
NetworkIdLength;
00669 UCHAR
NetworkId[1];
00670 }
ATM_TRANSIT_NETWORK_SELECTION_IE, *
PATM_TRANSIT_NETWORK_SELECTION_IE;
00671
00672
00673
00674
00675
00676 #define ATM_CAUSE_LOC_USER 0x00
00677 #define ATM_CAUSE_LOC_PRIVATE_LOCAL 0x01
00678 #define ATM_CAUSE_LOC_PUBLIC_LOCAL 0x02
00679 #define ATM_CAUSE_LOC_TRANSIT_NETWORK 0x03
00680 #define ATM_CAUSE_LOC_PUBLIC_REMOTE 0x04
00681 #define ATM_CAUSE_LOC_PRIVATE_REMOTE 0x05
00682
#ifdef MS_UNI3_ERROR_KEPT
00683
#define ATM_CAUSE_LOC_INTERNATIONAL_NETWORK 0x06
00684
#else
00685 #define ATM_CAUSE_LOC_INTERNATIONAL_NETWORK 0x07
00686
#endif
00687 #define ATM_CAUSE_LOC_BEYOND_INTERWORKING 0x0A
00688
00689
00690
00691
00692
#ifdef MS_UNI4
00693
#define ATM_CAUSE_UNALLOCATED_NUMBER 0x01
00694
#define ATM_CAUSE_NO_ROUTE_TO_TRANSIT_NETWORK 0x02
00695
#define ATM_CAUSE_NO_ROUTE_TO_DESTINATION 0x03
00696
#define ATM_CAUSE_SEND_SPECIAL_TONE 0x04 // UNI 4.0+
00697
#define ATM_CAUSE_MISDIALLED_TRUNK_PREFIX 0x05 // UNI 4.0+
00698
#define ATM_CAUSE_CHANNEL_UNACCEPTABLE 0x06 // UNI 4.0+
00699
#define ATM_CAUSE_CALL_AWARDED_IN_EST_CHAN 0x07 // UNI 4.0+
00700
#define ATM_CAUSE_PREEMPTION 0x08 // UNI 4.0+
00701
#define ATM_CAUSE_PREEMPTION_CIRC_RES_REUSE 0x09 // UNI 4.0+
00702
#define ATM_CAUSE_VPI_VCI_UNACCEPTABLE 0x0A // UNI 3.0 only!
00703
#define ATM_CAUSE_NORMAL_CALL_CLEARING 0x10 // UNI 3.1+
00704
#define ATM_CAUSE_USER_BUSY 0x11
00705
#define ATM_CAUSE_NO_USER_RESPONDING 0x12
00706
#define ATM_CAUSE_NO_ANSWER_FROM_USER_ALERTED 0x13 // UNI 4.0+
00707
#define ATM_CAUSE_SUBSCRIBER_ABSENT 0x14 // UNI 4.0+
00708
#define ATM_CAUSE_CALL_REJECTED 0x15
00709
#define ATM_CAUSE_NUMBER_CHANGED 0x16
00710
#define ATM_CAUSE_USER_REJECTS_CLIR 0x17
00711
#define ATM_CAUSE_NONSELECTED_USER_CLEARING 0x1A // UNI 4.0+
00712
#define ATM_CAUSE_DESTINATION_OUT_OF_ORDER 0x1B
00713
#define ATM_CAUSE_INVALID_NUMBER_FORMAT 0x1C
00714
#define ATM_CAUSE_FACILITY_REJECTED 0x1D // UNI 4.0+
00715
#define ATM_CAUSE_STATUS_ENQUIRY_RESPONSE 0x1E
00716
#define ATM_CAUSE_NORMAL_UNSPECIFIED 0x1F
00717
#define ATM_CAUSE_TOO_MANY_ADD_PARTY 0x20 // UNI 4.0+
00718
#define ATM_CAUSE_NO_CIRCUIT_CHANNEL_AVAIL 0x22 // UNI 4.0+
00719
#define ATM_CAUSE_VPI_VCI_UNAVAILABLE 0x23
00720
#define ATM_CAUSE_VPCI_VCI_ASSIGN_FAIL 0x24 // UNI 3.1+
00721
#define ATM_CAUSE_USER_CELL_RATE_UNAVAILABLE 0x25 // UNI 3.1+
00722
#define ATM_CAUSE_NETWORK_OUT_OF_ORDER 0x26
00723
#define ATM_CAUSE_PFM_CONNECTION_OUT_OF_ORDER 0x27 // UNI 4.0+
00724
#define ATM_CAUSE_PFM_CONNNECTION_OPERATIONAL 0x28 // UNI 4.0+
00725
#define ATM_CAUSE_TEMPORARY_FAILURE 0x29
00726
#define ATM_CAUSE_SWITCH_EQUIPM_CONGESTED 0x2A // UNI 4.0+
00727
#define ATM_CAUSE_ACCESS_INFORMAION_DISCARDED 0x2B
00728
#define ATM_CAUSE_REQUESTED_CIRC_CHANNEL_NOT_AVAIL 0x2C // UNI 4.0+
00729
#define ATM_CAUSE_NO_VPI_VCI_AVAILABLE 0x2D
00730
#define ATM_CAUSE_RESOURCE_UNAVAILABLE 0x2F
00731
#define ATM_CAUSE_QOS_UNAVAILABLE 0x31
00732
#define ATM_CAUSE_REQ_FACILITY_NOT_SUBSCRIBED 0x32 // UNI 4.0+
00733
#define ATM_CAUSE_USER_CELL_RATE_UNAVAILABLE__UNI30 0x33 // UNI 3.0 only!
00734
#define ATM_CAUSE_OUTG_CALLS_BARRED_W_CUG 0x35 // UNI 4.0+
00735
#define ATM_CAUSE_INCOM_CALLS_BARRED_W_CUG 0x37 // UNI 4.0+
00736
#define ATM_CAUSE_BEARER_CAPABILITY_UNAUTHORIZED 0x39
00737
#define ATM_CAUSE_BEARER_CAPABILITY_UNAVAILABLE 0x3A
00738
#define ATM_CAUSE_INCONSIST_OUTG_ACCESS_INFO 0x3E // UNI 4.0+
00739
#define ATM_CAUSE_OPTION_UNAVAILABLE 0x3F
00740
#define ATM_CAUSE_BEARER_CAPABILITY_UNIMPLEMENTED 0x41
00741
#define ATM_CAUSE_CHANNEL_TYPE_NOT_IMPLEMENTED 0x42 // UNI 4.0+
00742
#define ATM_CAUSE_REQ_FACILITY_NOT_IMPLEMENTED 0x45 // UNI 4.0+
00743
#define ATM_CAUSE_ONLY_RESTR_BEAR_CAP_AVAIL 0x46 // UNI 4.0+
00744
#define ATM_CAUSE_UNSUPPORTED_TRAFFIC_PARAMETERS 0x49
00745
#define ATM_CAUSE_AAL_PARAMETERS_UNSUPPORTED 0x4E // UNI 3.1+
00746
#define ATM_CAUSE_SERVICE_OPTION_NOT_AVAIL 0x4F // UNI 4.0+
00747
#define ATM_CAUSE_INVALID_CALL_REFERENCE 0x51
00748
#define ATM_CAUSE_CHANNEL_NONEXISTENT 0x52
00749
#define ATM_CAUSE_SUSP_CALL_EXISTS_NOT_CALL_ID 0x53 // UNI 4.0+
00750
#define ATM_CAUSE_CALL_ID_IN_USE 0x54 // UNI 4.0+
00751
#define ATM_CAUSE_NO_CALL_SUSPENDED 0x55 // UNI 4.0+
00752
#define ATM_CAUSE_CALL_W_REQ_ID_CLEARED 0x56 // UNI 4.0+
00753
#define ATM_CAUSE_USER_NOT_MEMBER_CUG 0x57 // UNI 4.0+
00754
#define ATM_CAUSE_INCOMPATIBLE_DESTINATION 0x58
00755
#define ATM_CAUSE_INVALID_ENDPOINT_REFERENCE 0x59
00756
#define ATM_CAUSE_NON_EXISTENT_CUG 0x5A // UNI 4.0+
00757
#define ATM_CAUSE_INVALID_TRANSIT_NETWORK_SELECTION 0x5B
00758
#define ATM_CAUSE_TOO_MANY_PENDING_ADD_PARTY 0x5C
00759
#define ATM_CAUSE_AAL_PARAMETERS_UNSUPPORTED__UNI30 0x5D // UNI 3.0 only!
00760
#define ATM_CAUSE_INVALID_MSG_UNSPECIFIED 0x5F // UNI 4.0+
00761
#define ATM_CAUSE_MANDATORY_IE_MISSING 0x60
00762
#define ATM_CAUSE_UNIMPLEMENTED_MESSAGE_TYPE 0x61
00763
#define ATM_CAUSE_MSG_CONFL_STATE_OR_UNIMPL 0x62 // UNI 4.0+
00764
#define ATM_CAUSE_UNIMPLEMENTED_IE 0x63
00765
#define ATM_CAUSE_INVALID_IE_CONTENTS 0x64
00766
#define ATM_CAUSE_INVALID_STATE_FOR_MESSAGE 0x65
00767
#define ATM_CAUSE_RECOVERY_ON_TIMEOUT 0x66
00768
#define ATM_CAUSE_IE_INVAL_UNIMPL_PASSED_ON 0x67 // UNI 4.0+
00769
#define ATM_CAUSE_INCORRECT_MESSAGE_LENGTH 0x68
00770
#define ATM_CAUSE_UNRECOGNIZED_PARM_MSG_DISCARDED 0x6E // UNI 4.0+
00771
#define ATM_CAUSE_PROTOCOL_ERROR 0x6F
00772
#define ATM_CAUSE_INTERWORKING_UNSPECIFIED 0x7F // UNI 4.0+
00773
00774
#else // !MS_UNI4
00775
00776 #define ATM_CAUSE_UNALLOCATED_NUMBER 0x01
00777 #define ATM_CAUSE_NO_ROUTE_TO_TRANSIT_NETWORK 0x02
00778 #define ATM_CAUSE_NO_ROUTE_TO_DESTINATION 0x03
00779 #define ATM_CAUSE_VPI_VCI_UNACCEPTABLE 0x0A
00780 #define ATM_CAUSE_NORMAL_CALL_CLEARING 0x10
00781 #define ATM_CAUSE_USER_BUSY 0x11
00782 #define ATM_CAUSE_NO_USER_RESPONDING 0x12
00783 #define ATM_CAUSE_CALL_REJECTED 0x15
00784 #define ATM_CAUSE_NUMBER_CHANGED 0x16
00785 #define ATM_CAUSE_USER_REJECTS_CLIR 0x17
00786 #define ATM_CAUSE_DESTINATION_OUT_OF_ORDER 0x1B
00787 #define ATM_CAUSE_INVALID_NUMBER_FORMAT 0x1C
00788 #define ATM_CAUSE_STATUS_ENQUIRY_RESPONSE 0x1E
00789 #define ATM_CAUSE_NORMAL_UNSPECIFIED 0x1F
00790 #define ATM_CAUSE_VPI_VCI_UNAVAILABLE 0x23
00791 #define ATM_CAUSE_NETWORK_OUT_OF_ORDER 0x26
00792 #define ATM_CAUSE_TEMPORARY_FAILURE 0x29
00793 #define ATM_CAUSE_ACCESS_INFORMAION_DISCARDED 0x2B
00794 #define ATM_CAUSE_NO_VPI_VCI_AVAILABLE 0x2D
00795 #define ATM_CAUSE_RESOURCE_UNAVAILABLE 0x2F
00796 #define ATM_CAUSE_QOS_UNAVAILABLE 0x31
00797 #define ATM_CAUSE_USER_CELL_RATE_UNAVAILABLE 0x33
00798 #define ATM_CAUSE_BEARER_CAPABILITY_UNAUTHORIZED 0x39
00799 #define ATM_CAUSE_BEARER_CAPABILITY_UNAVAILABLE 0x3A
00800 #define ATM_CAUSE_OPTION_UNAVAILABLE 0x3F
00801 #define ATM_CAUSE_BEARER_CAPABILITY_UNIMPLEMENTED 0x41
00802 #define ATM_CAUSE_UNSUPPORTED_TRAFFIC_PARAMETERS 0x49
00803 #define ATM_CAUSE_INVALID_CALL_REFERENCE 0x51
00804 #define ATM_CAUSE_CHANNEL_NONEXISTENT 0x52
00805 #define ATM_CAUSE_INCOMPATIBLE_DESTINATION 0x58
00806 #define ATM_CAUSE_INVALID_ENDPOINT_REFERENCE 0x59
00807 #define ATM_CAUSE_INVALID_TRANSIT_NETWORK_SELECTION 0x5B
00808 #define ATM_CAUSE_TOO_MANY_PENDING_ADD_PARTY 0x5C
00809 #define ATM_CAUSE_AAL_PARAMETERS_UNSUPPORTED 0x5D
00810 #define ATM_CAUSE_MANDATORY_IE_MISSING 0x60
00811 #define ATM_CAUSE_UNIMPLEMENTED_MESSAGE_TYPE 0x61
00812 #define ATM_CAUSE_UNIMPLEMENTED_IE 0x63
00813 #define ATM_CAUSE_INVALID_IE_CONTENTS 0x64
00814 #define ATM_CAUSE_INVALID_STATE_FOR_MESSAGE 0x65
00815 #define ATM_CAUSE_RECOVERY_ON_TIMEOUT 0x66
00816 #define ATM_CAUSE_INCORRECT_MESSAGE_LENGTH 0x68
00817 #define ATM_CAUSE_PROTOCOL_ERROR 0x6F
00818
#endif // !MS_UNI4
00819
00820
00821
00822
00823
00824 #define ATM_CAUSE_COND_UNKNOWN 0x00
00825 #define ATM_CAUSE_COND_PERMANENT 0x01
00826 #define ATM_CAUSE_COND_TRANSIENT 0x02
00827
00828
00829
00830
00831
00832 #define ATM_CAUSE_REASON_USER 0x00
00833 #define ATM_CAUSE_REASON_IE_MISSING 0x04
00834 #define ATM_CAUSE_REASON_IE_INSUFFICIENT 0x08
00835
00836
00837
00838
00839
00840 #define ATM_CAUSE_PU_PROVIDER 0x00
00841 #define ATM_CAUSE_PU_USER 0x08
00842
00843
00844
00845
00846
00847 #define ATM_CAUSE_NA_NORMAL 0x00
00848 #define ATM_CAUSE_NA_ABNORMAL 0x04
00849
00850
#ifdef MS_UNI4
00851
00852
00853
00854
#define ATM_CAUSE_DIAG_IE_NARROW_BEARER_CAPABILITY 0x04
00855
#define ATM_CAUSE_DIAG_IE_CAUSE 0x08
00856
#define ATM_CAUSE_DIAG_IE_CALL_STATE 0x14
00857
#define ATM_CAUSE_DIAG_IE_PROGRESS_IND 0x1E
00858
#define ATM_CAUSE_DIAG_IE_NOTIF_IND 0x27
00859
#define ATM_CAUSE_DIAG_IE_END_TO_END_TDELAY 0x42
00860
#define ATM_CAUSE_DIAG_IE_CONNECTED_NUMBER 0x4C
00861
#define ATM_CAUSE_DIAG_IE_CONNECTED_SUBADDR 0x4D
00862
#define ATM_CAUSE_DIAG_IE_ENDPOINT_REF 0x54
00863
#define ATM_CAUSE_DIAG_IE_ENDPOINT_STATE 0x55
00864
#define ATM_CAUSE_DIAG_IE_AAL_PARMS 0x58
00865
#define ATM_CAUSE_DIAG_IE_TRAFFIC_DESCRIPTOR 0x59
00866
#define ATM_CAUSE_DIAG_IE_CONNECTION_ID 0x5A
00867
#define ATM_CAUSE_DIAG_IE_OAM_TRAFFIC_DESCRIPTOR 0x5B
00868
#define ATM_CAUSE_DIAG_IE_QOS 0x5C
00869
#define ATM_CAUSE_DIAG_IE_HIGH_LAYER_INFO 0x5D
00870
#define ATM_CAUSE_DIAG_IE_BEARER_CAPABILITY 0x5E
00871
#define ATM_CAUSE_DIAG_IE_LOW_LAYER_INFO 0x5F
00872
#define ATM_CAUSE_DIAG_IE_LOCKING_SHIFT 0x60
00873
#define ATM_CAUSE_DIAG_IE_NON_LOCKING_SHIFT 0x61
00874
#define ATM_CAUSE_DIAG_IE_SENDING_COMPLETE 0x62
00875
#define ATM_CAUSE_DIAG_IE_REPEAT_INDICATOR 0x63
00876
#define ATM_CAUSE_DIAG_IE_CALLING_PARTY_NUMBER 0x6C
00877
#define ATM_CAUSE_DIAG_IE_CALLING_PARTY_SUBADDR 0x6D
00878
#define ATM_CAUSE_DIAG_IE_CALLED_PARTY_NUMBER 0x70
00879
#define ATM_CAUSE_DIAG_IE_CALLED_PARTY_SUBADDR 0x71
00880
#define ATM_CAUSE_DIAG_IE_TRANSIT_NETWORK_SELECT 0x78
00881
#define ATM_CAUSE_DIAG_IE_RESTART_INDICATOR 0x79
00882
#define ATM_CAUSE_DIAG_IE_NARROW_LOW_LAYER_COMPAT 0x7C
00883
#define ATM_CAUSE_DIAG_IE_NARROW_HIGH_LAYER_COMPAT 0x7D
00884
#define ATM_CAUSE_DIAG_IE_USER_USER 0x7E
00885
#define ATM_CAUSE_DIAG_IE_GENERIC_ID 0x7F
00886
#define ATM_CAUSE_DIAG_IE_MIN_TRAFFIC_DESCRIPTOR 0x81
00887
#define ATM_CAUSE_DIAG_IE_ALT_TRAFFIC_DESCRIPTOR 0x82
00888
#define ATM_CAUSE_DIAG_IE_ABR_SETUP_PARMS 0x84
00889
#define ATM_CAUSE_DIAG_IE_CALLED_SOFT_PVPC_PVCC 0xE0
00890
#define ATM_CAUSE_DIAG_IE_CRANKBACK 0xE1
00891
#define ATM_CAUSE_DIAG_IE_DESIGNATED_TRANSIT_LIST 0xE2
00892
#define ATM_CAUSE_DIAG_IE_CALLING_SOFT_PVPC_PVCC 0xE3
00893
#define ATM_CAUSE_DIAG_IE_ABR_ADD_PARMS 0xE4
00894
#define ATM_CAUSE_DIAG_IE_LIJ_CALL_ID 0xE8
00895
#define ATM_CAUSE_DIAG_IE_LIJ_PARMS 0xE9
00896
#define ATM_CAUSE_DIAG_IE_LEAF_SEQ_NO 0xEA
00897
#define ATM_CAUSE_DIAG_IE_CONNECTION_SCOPE_SELECT 0xEB
00898
#define ATM_CAUSE_DIAG_IE_EXTENDED_QOS 0xEC
00899
00900
00901
00902
00903
#define ATM_CAUSE_DIAG_RATE_ID_FW_PEAK_CLP0 0x82
00904
#define ATM_CAUSE_DIAG_RATE_ID_BW_PEAK_CLP0 0x83
00905
#define ATM_CAUSE_DIAG_RATE_ID_FW_PEAK_CLP01 0x84
00906
#define ATM_CAUSE_DIAG_RATE_ID_BW_PEAK_CLP01 0x85
00907
#define ATM_CAUSE_DIAG_RATE_ID_FW_SUST_CLP0 0x88
00908
#define ATM_CAUSE_DIAG_RATE_ID_BW_SUST_CLP0 0x89
00909
#define ATM_CAUSE_DIAG_RATE_ID_FW_SUST_CLP01 0x90
00910
#define ATM_CAUSE_DIAG_RATE_ID_BW_SUST_CLP01 0x91
00911
#define ATM_CAUSE_DIAG_RATE_ID_FW_ABR_MIN_CLP01 0x92
00912
#define ATM_CAUSE_DIAG_RATE_ID_BW_ABR_MIN_CLP01 0x93
00913
#define ATM_CAUSE_DIAG_RATE_ID_FW_BURST_CLP0 0xA0
00914
#define ATM_CAUSE_DIAG_RATE_ID_BW_BURST_CLP0 0xA1
00915
#define ATM_CAUSE_DIAG_RATE_ID_FW_BURST_CLP01 0xB0
00916
#define ATM_CAUSE_DIAG_RATE_ID_BW_BURST_CLP01 0xB1
00917
#define ATM_CAUSE_DIAG_RATE_ID_BEST_EFFORT 0xBE
00918
#define ATM_CAUSE_DIAG_RATE_ID_TM_OPTIONS 0xBF
00919
00920
00921
00922
00923
#define ATM_CAUSE_DIAG_CCBS_SPARE 0x00
00924
#define ATM_CAUSE_DIAG_CCBS_CCBS_POSSIBLE 0x01
00925
#define ATM_CAUSE_DIAG_CCBS_CCBS_NOT_POSSIBLE 0x02
00926
00927
00928
00929
00930
#define ATM_CAUSE_DIAG_ATTR_NO_INFO_XFER_CAP 0x31
00931
#define ATM_CAUSE_DIAG_ATTR_NO_INFO_XFER_MODE 0x32
00932
#define ATM_CAUSE_DIAG_ATTR_NO_INFO_XFER_RATE 0x33
00933
#define ATM_CAUSE_DIAG_ATTR_NO_STRUCTURE 0x34
00934
#define ATM_CAUSE_DIAG_ATTR_NO_CONFIG 0x35
00935
#define ATM_CAUSE_DIAG_ATTR_NO_ESTABL 0x36
00936
#define ATM_CAUSE_DIAG_ATTR_NO_SYMMETRY 0x37
00937
#define ATM_CAUSE_DIAG_ATTR_NO_INFO_XFER_RATE2 0x38
00938
#define ATM_CAUSE_DIAG_ATTR_NO_LAYER_ID 0x39
00939
#define ATM_CAUSE_DIAG_ATTR_NO_RATE_MULT 0x3A
00940
00941
#endif // MS_UNI4
00942
00943
00944
00945
00946
00947
00948
00949
00950
typedef struct _ATM_CAUSE_IE
00951 {
00952 UCHAR
Location;
00953 UCHAR
Cause;
00954 UCHAR
DiagnosticsLength;
00955 UCHAR
Diagnostics[4];
00956 }
ATM_CAUSE_IE, *
PATM_CAUSE_IE;
00957
00958
00959
#ifdef MS_UNI4
00960
00961
00962
00963
00964
00965
00966
00967
00968
00969
00970
00971
00972
00973
00974
00975
00976
00977
00978
00979
00980
00981
00982
00983
typedef struct _ATM_CONNECTION_ID_IE
00984 {
00985 ULONG Vpci;
00986 ULONG Vci;
00987 } ATM_CONNECTION_ID_IE, *PATM_CONNECTION_ID_IE;
00988
00989
#endif // MS_UNI4
00990
00991
00992
#ifdef MS_UNI4
00993
00994
00995
00996
typedef struct _ATM_END_TO_END_TRANSIT_DELAY_IE
00997 {
00998 ULONG CumulativeTransitDelay;
00999 ULONG MaximumEndToEndTransitDelay;
01000 BOOLEAN NetworkGenerated;
01001 } ATM_END_TO_END_TRANSIT_DELAY_IE, *PATM_END_TO_END_TRANSIT_DELAY_IE;
01002
01003
#endif // MS_UNI4
01004
01005
01006
#ifdef MS_UNI4
01007
01008
01009
01010
01011
01012
01013
typedef struct _ATM_NOTIFICATION_INDICATOR_IE
01014 {
01015
USHORT NotificationId;
01016
USHORT InformationLength;
01017 UCHAR NotificationInformation[1];
01018 } ATM_NOTIFICATION_INDICATOR_IE, *PATM_NOTIFICATION_INDICATOR_IE;
01019
01020
#endif // MS_UNI4
01021
01022
01023
#ifdef MS_UNI4
01024
01025
01026
01027
01028
01029
01030
typedef struct _ATM_USER_USER_IE
01031 {
01032 UCHAR ProtocolDescriminator;
01033 UCHAR Filler[1];
01034
USHORT InformationLength;
01035 UCHAR UserUserInformation[1];
01036 } ATM_USER_USER_IE, *PATM_USER_USER_IE;
01037
01038
#endif // MS_UNI4
01039
01040
01041
#ifdef MS_UNI4
01042
01043
01044
01045
01046
01047
01048
typedef struct _ATM_GENERIC_ID_TRANSPORT_IE
01049 {
01050
USHORT InformationLength;
01051 UCHAR GenericIDInformation[1];
01052 } ATM_GENERIC_ID_TRANSPORT_IE, *PATM_GENERIC_ID_TRANSPORT_IE;
01053
01054
#endif // MS_UNI4
01055
01056
01057
01058
01059
01060
typedef struct _ATM_LIJ_CALLID_IE
01061 {
01062 ULONG
Identifier;
01063 }
ATM_LIJ_CALLID_IE, *
PATM_LIJ_CALLID_IE;
01064
01065
01066
#ifdef MS_UNI4
01067
01068
01069
01070
#define ATM_LIJ_PARMS_SCREEN_NO_ROOT_NOTIF 0x00
01071
01072
01073
01074
01075
typedef struct _ATM_LIJ_PARAMETERS_IE
01076 {
01077 UCHAR ScreeningIndication;
01078 } ATM_LIJ_PARAMETERS_IE, *PATM_LIJ_PARAMETERS_IE;
01079
01080
#endif // MS_UNI4
01081
01082
01083
#ifdef MS_UNI4
01084
01085
01086
01087
typedef struct _ATM_LEAF_SEQUENCE_NUMBER_IE
01088 {
01089 ULONG SequenceNumber;
01090 } ATM_LEAF_SEQUENCE_NUMBER_IE, *PATM_LEAF_SEQUENCE_NUMBER_IE;
01091
01092
#endif // MS_UNI4
01093
01094
01095
#ifdef MS_UNI4
01096
01097
01098
01099
#define ATM_SCOPE_TYPE_ORGANIZATIONAL 0x01
01100
01101
01102
01103
01104
#define ATM_SCOPE_ORGANIZATIONAL_LOCAL_NW 0x01
01105
#define ATM_SCOPE_ORGANIZATIONAL_LOCAL_NW_PLUS1 0x02
01106
#define ATM_SCOPE_ORGANIZATIONAL_LOCAL_NW_PLUS2 0x03
01107
#define ATM_SCOPE_ORGANIZATIONAL_SITE_MINUS1 0x04
01108
#define ATM_SCOPE_ORGANIZATIONAL_INTRA_SITE 0x05
01109
#define ATM_SCOPE_ORGANIZATIONAL_SITE_PLUS1 0x06
01110
#define ATM_SCOPE_ORGANIZATIONAL_ORG_MINUS1 0x07
01111
#define ATM_SCOPE_ORGANIZATIONAL_INTRA_ORG 0x08
01112
#define ATM_SCOPE_ORGANIZATIONAL_ORG_PLUS1 0x09
01113
#define ATM_SCOPE_ORGANIZATIONAL_COMM_MINUS1 0x0A
01114
#define ATM_SCOPE_ORGANIZATIONAL_INTRA_COMM 0x0B
01115
#define ATM_SCOPE_ORGANIZATIONAL_COMM_PLUS1 0x0C
01116
#define ATM_SCOPE_ORGANIZATIONAL_REGIONAL 0x0D
01117
#define ATM_SCOPE_ORGANIZATIONAL_INTER_REGIONAL 0x0E
01118
#define ATM_SCOPE_ORGANIZATIONAL_GLOBAL 0x0F
01119
01120
01121
01122
01123
typedef struct _ATM_CONNECTION_SCOPE_SELECTION_IE
01124 {
01125 UCHAR ConnectionScopeType;
01126 UCHAR ConnectionScopeSelection;
01127 } ATM_CONNECTION_SCOPE_SELECTION_IE, *PATM_CONNECTION_SCOPE_SELECTION_IE;
01128
01129
#endif // MS_UNI4
01130
01131
01132
#ifdef MS_UNI4
01133
01134
01135
01136
#define ATM_ABR_PARMS_NRM_PRESENT 0x80000000
01137
#define ATM_ABR_PARMS_TRM_PRESENT 0x40000000
01138
#define ATM_ABR_PARMS_CDF_PRESENT 0x20000000
01139
#define ATM_ABR_PARMS_ADTF_PRESENT 0x10000000
01140
#define ATM_ABR_PARMS_NRM_MASK 0x0E000000
01141
#define ATM_ABR_PARMS_NRM_SHIFT 25
01142
#define ATM_ABR_PARMS_TRM_MASK 0x01C00000
01143
#define ATM_ABR_PARMS_TRM_SHIFT 22
01144
#define ATM_ABR_PARMS_CDF_MASK 0x00380000
01145
#define ATM_ABR_PARMS_CDF_SHIFT 19
01146
#define ATM_ABR_PARMS_ADTF_MASK 0x0007FE00
01147
#define ATM_ABR_PARMS_ADTF_SHIFT 9
01148
#define ATM_ABR_PARMS_NRM_DEFAULT 4
01149
#define ATM_ABR_PARMS_TRM_DEFAULT 7
01150
#define ATM_ABR_PARMS_CDF_DEFAULT 3
01151
#define ATM_ABR_PARMS_ADTF_DEFAULT 50
01152
01153
typedef struct _ATM_ABR_ADDITIONAL_PARAMETERS_IE
01154 {
01155 ULONG ForwardAdditionalParameters;
01156 ULONG BackwardAdditionalParameters;
01157 } ATM_ABR_ADDITIONAL_PARAMETERS_IE, *PATM_ABR_ADDITIONAL_PARAMETERS_IE;
01158
01159
#endif // MS_UNI4
01160
01161
01162
#ifdef MS_UNI4
01163
01164
01165
01166
typedef struct _ATM_ABR_SETUP_PARAMETERS_IE
01167 {
01168 ULONG ForwardABRInitialCellRateCLP01;
01169 ULONG BackwardABRInitialCellRateCLP01;
01170 ULONG ForwardABRTransientBufferExposure;
01171 ULONG BackwardABRTransientBufferExposure;
01172 ULONG CumulativeRmFixedRTT;
01173 UCHAR ForwardABRRateIncreaseFactorLog2;
01174 UCHAR BackwardABRRateIncreaseFactorLog2;
01175 UCHAR ForwardABRRateDecreaseFactorLog2;
01176 UCHAR BackwardABRRateDecreaseFactorLog2;
01177 } ATM_ABR_SETUP_PARAMETERS_IE, *PATM_ABR_SETUP_PARAMETERS_IE;
01178
01179
#endif // MS_UNI4
01180
01181
01182
01183
01184
01185
typedef struct _ATM_RAW_IE
01186 {
01187 ULONG
RawIELength;
01188 ULONG
RawIEType;
01189 UCHAR
RawIEValue[1];
01190 }
ATM_RAW_IE, *
PATM_RAW_IE;
01191
01192
01193
01194
01195
01196
01197
01198 #define ATM_MEDIA_SPECIFIC 0x00000001
01199
01200
01201
01202
01203
01204
typedef struct _Q2931_CALLMGR_PARAMETERS
01205 {
01206 ATM_ADDRESS CalledParty;
01207 ATM_ADDRESS CallingParty;
01208 ULONG
InfoElementCount;
01209 UCHAR
InfoElements[1];
01210 }
Q2931_CALLMGR_PARAMETERS, *
PQ2931_CALLMGR_PARAMETERS;
01211
01212
01213
01214
01215
01216
01217
01218 #define CALLMGR_SPECIFIC_Q2931 0x00000001
01219
01220
typedef struct _ATM_VPIVCI
01221 {
01222 ULONG
Vpi;
01223 ULONG
Vci;
01224 }
ATM_VPIVCI, *
PATM_VPIVCI;
01225
01226
01227
01228
01229 #define ATM_SERVICE_CATEGORY_CBR 1 // Constant Bit Rate
01230 #define ATM_SERVICE_CATEGORY_VBR 2 // Variable Bit Rate
01231 #define ATM_SERVICE_CATEGORY_UBR 4 // Unspecified Bit Rate
01232 #define ATM_SERVICE_CATEGORY_ABR 8 // Available Bit Rate
01233
01234 typedef ULONG
ATM_SERVICE_CATEGORY, *
PATM_SERVICE_CATEGORY;
01235
01236
01237
01238
01239
01240
typedef struct _ATM_FLOW_PARAMETERS
01241 {
01242 ATM_SERVICE_CATEGORY ServiceCategory;
01243 ULONG
AverageCellRate;
01244 ULONG
PeakCellRate;
01245 ULONG
MinimumCellRate;
01246 ULONG
InitialCellRate;
01247 ULONG
BurstLengthCells;
01248 ULONG
MaxSduSize;
01249 ULONG
TransientBufferExposure;
01250 ULONG
CumulativeRMFixedRTT;
01251 UCHAR
RateIncreaseFactor;
01252 UCHAR
RateDecreaseFactor;
01253 USHORT ACRDecreaseTimeFactor;
01254 UCHAR
MaximumCellsPerForwardRMCell;
01255 UCHAR
MaximumForwardRMCellInterval;
01256 UCHAR
CutoffDecreaseFactor;
01257 UCHAR
Reserved1;
01258 ULONG
MissingRMCellCount;
01259 ULONG
Reserved2;
01260 ULONG
Reserved3;
01261 }
ATM_FLOW_PARAMETERS, *
PATM_FLOW_PARAMETERS;
01262
01263
01264
01265
01266
01267
typedef struct _ATM_MEDIA_PARAMETERS
01268 {
01269 ATM_VPIVCI ConnectionId;
01270 ATM_AAL_TYPE AALType;
01271 ULONG
CellDelayVariationCLP0;
01272 ULONG
CellDelayVariationCLP1;
01273 ULONG
CellLossRatioCLP0;
01274 ULONG
CellLossRatioCLP1;
01275 ULONG
CellTransferDelayCLP0;
01276 ULONG
CellTransferDelayCLP1;
01277 ULONG
DefaultCLP;
01278 ATM_FLOW_PARAMETERS Transmit;
01279 ATM_FLOW_PARAMETERS Receive;
01280 }
ATM_MEDIA_PARAMETERS, *
PATM_MEDIA_PARAMETERS;
01281
01282
#ifdef MS_UNI4
01283
01284
01285
01286
01287
01288
01289
01290
01291
01292
01293
01294
01295
01296
01297
01298
01299
typedef struct _Q2931_CALLMGR_SUBSEQUENT_PARAMETERS
01300 {
01301 ULONG InfoElementCount;
01302 UCHAR InfoElements[1];
01303 } Q2931_CALLMGR_SUBSEQUENT_PARAMETERS, *PQ2931_CALLMGR_SUBSEQUENT_PARAMETERS;
01304
#endif // MS_UNI4
01305
01306
#ifdef MS_UNI4
01307
01308
01309
01310
01311
#endif // MS_UNI4
01312
01313
#ifndef SAP_FIELD_ABSENT
01314 #define SAP_FIELD_ABSENT ((ULONG)0xfffffffe)
01315
#endif
01316
01317
#ifndef SAP_FIELD_ABSENT_USHORT
01318 #define SAP_FIELD_ABSENT_USHORT ((USHORT)0xfffe)
01319
#endif
01320
01321
#ifndef SAP_FIELD_ABSENT_UCHAR
01322 #define SAP_FIELD_ABSENT_UCHAR ((UCHAR)0xfe)
01323
#endif
01324
01325
#ifndef SAP_FIELD_ANY
01326 #define SAP_FIELD_ANY ((ULONG)0xffffffff)
01327
#endif
01328
01329 #define SAP_FIELD_ANY_AESA_SEL ((ULONG)0xfffffffa) // SEL is wild-carded
01330 #define SAP_FIELD_ANY_AESA_REST ((ULONG)0xfffffffb) // All of the address
01331
01332
01333
01334
01335
01336
typedef struct _ATM_SAP
01337 {
01338 ATM_BLLI_IE Blli;
01339 ATM_BHLI_IE Bhli;
01340 ULONG
NumberOfAddresses;
01341 UCHAR
Addresses[1];
01342 }
ATM_SAP, *
PATM_SAP;
01343
01344
01345
01346
01347
typedef struct _ATM_PVC_SAP
01348 {
01349 ATM_BLLI_IE Blli;
01350 ATM_BHLI_IE Bhli;
01351 }
ATM_PVC_SAP, *
PATM_PVC_SAP;
01352
01353
01354
01355
01356
01357
typedef struct _Q2931_ADD_PVC
01358 {
01359 ATM_ADDRESS CalledParty;
01360 ATM_ADDRESS CallingParty;
01361 ATM_VPIVCI ConnectionId;
01362 ATM_AAL_TYPE AALType;
01363 ATM_FLOW_PARAMETERS ForwardFP;
01364 ATM_FLOW_PARAMETERS BackwardFP;
01365 ULONG
Flags;
01366 ATM_PVC_SAP LocalSap;
01367 ATM_PVC_SAP DestinationSap;
01368 BOOLEAN
LIJIdPresent;
01369 ATM_LIJ_CALLID_IE LIJId;
01370 }
Q2931_ADD_PVC, *
PQ2931_ADD_PVC;
01371
01372
01373
01374
01375
01376 #define CO_FLAG_SIGNALING_VC 0x00000001
01377
01378
01379
01380
01381
01382 #define CO_FLAG_NO_DEST_SAP 0x00000002
01383
01384
01385
01386
01387 #define CO_FLAG_NO_LOCAL_SAP 0x00000004
01388
01389
01390
01391
01392
01393
typedef struct _Q2931_DELETE_PVC
01394 {
01395 ATM_VPIVCI ConnectionId;
01396 }
Q2931_DELETE_PVC, *
PQ2931_DELETE_PVC;
01397
01398
typedef struct _CO_GET_CALL_INFORMATION
01399 {
01400 ULONG
CallInfoType;
01401 ULONG
CallInfoLength;
01402 PVOID
CallInfoBuffer;
01403 }
CO_GET_CALL_INFORMATION, *
PCO_GET_CALL_INFORMATION;
01404
01405
01406
01407
01408
01409
typedef struct _ATM_VC_RATES_SUPPORTED
01410 {
01411 ULONG
MinCellRate;
01412 ULONG
MaxCellRate;
01413 }
ATM_VC_RATES_SUPPORTED, *
PATM_VC_RATES_SUPPORTED;
01414
01415
01416
01417
01418
typedef struct _ATM_AAL_OOB_INFO
01419 {
01420 ATM_AAL_TYPE AalType;
01421
union
01422
{
01423
struct _ATM_AAL5_INFO
01424 {
01425 BOOLEAN CellLossPriority;
01426 UCHAR UserToUserIndication;
01427 UCHAR CommonPartIndicator;
01428 } ATM_AAL5_INFO;
01429
01430
struct _ATM_AAL0_INFO
01431 {
01432 BOOLEAN CellLossPriority;
01433 UCHAR PayLoadTypeIdentifier;
01434 } ATM_AAL0_INFO;
01435 };
01436 }
ATM_AAL_OOB_INFO, *
PATM_AAL_OOB_INFO;
01437
01438
01439
01440
01441
01442 #define ATM_PHYS_RATE_SONET_STS3C 155520000
01443 #define ATM_PHYS_RATE_IBM_25 25600000
01444
01445
01446
01447
01448
01449 #define ATM_CELL_TRANSFER_CAPACITY_SONET_STS3C 149760000
01450 #define ATM_CELL_TRANSFER_CAPACITY_IBM_25 25125926
01451
01452
01453
01454
01455
01456
01457
01458
01459
01460 #define ATM_USER_DATA_RATE_SONET_155 1356317
01461 #define ATM_USER_DATA_RATE_IBM_25 227556
01462
01463
01464
01465
01466
01467
01468
01469
01470
01471 typedef ULONG
ATM_SERVICE_REGISTRY_TYPE;
01472
01473 #define ATM_SERVICE_REGISTRY_LECS 1 // LAN Emulation Configuration Server
01474 #define ATM_SERVICE_REGISTRY_ANS 2 // ATM Name Server
01475
01476
01477
01478
01479
typedef struct _ATM_SERVICE_ADDRESS_LIST
01480 {
01481 ATM_SERVICE_REGISTRY_TYPE ServiceRegistryType;
01482 ULONG
NumberOfAddressesAvailable;
01483 ULONG
NumberOfAddressesReturned;
01484 ATM_ADDRESS Address[1];
01485 }
ATM_SERVICE_ADDRESS_LIST, *
PATM_SERVICE_ADDRESS_LIST;
01486
01487
#endif // _ATM_H_
01488