Embed:
(wiki syntax)
Show/hide line numbers
atm.h
00001 /* 00002 * atm.h 00003 * 00004 * ATM support 00005 * 00006 * This file is part of the w32api package. 00007 * 00008 * Contributors: 00009 * Created by Casper S. Hornstrup <chorns@users.sourceforge.net> 00010 * 00011 * THIS SOFTWARE IS NOT COPYRIGHTED 00012 * 00013 * This source code is offered for use in the public domain. You may 00014 * use, modify or distribute it freely. 00015 * 00016 * This code is distributed in the hope that it will be useful but 00017 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY 00018 * DISCLAIMED. This includes but is not limited to warranties of 00019 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00020 * 00021 */ 00022 00023 #ifndef __ATM_H 00024 #define __ATM_H 00025 00026 #if __GNUC__ >=3 00027 #pragma GCC system_header 00028 #endif 00029 00030 #ifdef __cplusplus 00031 extern "C" { 00032 #endif 00033 00034 typedef ULONG ATM_ADDRESSTYPE; 00035 00036 #define SAP_TYPE_NSAP 1 00037 #define SAP_TYPE_E164 2 00038 00039 #define ATM_MEDIA_SPECIFIC 1 00040 00041 #define CALLMGR_SPECIFIC_Q2931 1 00042 00043 #define ATM_NSAP 0 00044 #define ATM_E164 1 00045 00046 #define ATM_MAC_ADDRESS_LENGTH 6 00047 #define ATM_ADDRESS_LENGTH 20 00048 00049 typedef ULONG ATM_AAL_TYPE, *PATM_AAL_TYPE; 00050 00051 #define AAL_TYPE_AAL0 1 00052 #define AAL_TYPE_AAL1 2 00053 #define AAL_TYPE_AAL34 4 00054 #define AAL_TYPE_AAL5 8 00055 00056 #define ATM_ADDR_BLANK_CHAR L' ' 00057 #define ATM_ADDR_E164_START_CHAR L'+' 00058 #define ATM_ADDR_PUNCTUATION_CHAR L'.' 00059 00060 typedef enum { 00061 IE_AALParameters, 00062 IE_TrafficDescriptor, 00063 IE_BroadbandBearerCapability, 00064 IE_BHLI, 00065 IE_BLLI, 00066 IE_CalledPartyNumber, 00067 IE_CalledPartySubaddress, 00068 IE_CallingPartyNumber, 00069 IE_CallingPartySubaddress, 00070 IE_Cause, 00071 IE_QOSClass, 00072 IE_TransitNetworkSelection, 00073 IE_BroadbandSendingComplete, 00074 IE_LIJCallId, 00075 IE_Raw 00076 } Q2931_IE_TYPE; 00077 00078 typedef struct _Q2931_IE { 00079 Q2931_IE_TYPE IEType; 00080 ULONG IELength; 00081 UCHAR IE[1]; 00082 } Q2931_IE, *PQ2931_IE; 00083 00084 typedef struct _AAL1_PARAMETERS { 00085 UCHAR Subtype; 00086 UCHAR CBRRate; 00087 USHORT Multiplier; 00088 UCHAR SourceClockRecoveryMethod; 00089 UCHAR ErrorCorrectionMethod; 00090 USHORT StructuredDataTransferBlocksize; 00091 UCHAR PartiallyFilledCellsMethod; 00092 } AAL1_PARAMETERS, *PAAL1_PARAMETERS; 00093 00094 typedef struct _AAL34_PARAMETERS { 00095 USHORT ForwardMaxCPCSSDUSize; 00096 USHORT BackwardMaxCPCSSDUSize; 00097 USHORT LowestMID; 00098 USHORT HighestMID; 00099 UCHAR SSCSType; 00100 } AAL34_PARAMETERS, *PAAL34_PARAMETERS; 00101 00102 /* AAL5_PARAMETERS.Mode constants */ 00103 #define AAL5_MODE_MESSAGE 0x01 00104 #define AAL5_MODE_STREAMING 0x02 00105 00106 /* AAL5_PARAMETERS.SSCSType constants */ 00107 #define AAL5_SSCS_NULL 0x00 00108 #define AAL5_SSCS_SSCOP_ASSURED 0x01 00109 #define AAL5_SSCS_SSCOP_NON_ASSURED 0x02 00110 #define AAL5_SSCS_FRAME_RELAY 0x04 00111 00112 typedef struct _AAL5_PARAMETERS { 00113 ULONG ForwardMaxCPCSSDUSize; 00114 ULONG BackwardMaxCPCSSDUSize; 00115 UCHAR Mode; 00116 UCHAR SSCSType; 00117 } AAL5_PARAMETERS, *PAAL5_PARAMETERS; 00118 00119 typedef struct _AALUSER_PARAMETERS { 00120 ULONG UserDefined; 00121 } AALUSER_PARAMETERS, *PAALUSER_PARAMETERS; 00122 00123 typedef struct _AAL_PARAMETERS_IE { 00124 ATM_AAL_TYPE AALType; 00125 union { 00126 AAL1_PARAMETERS AAL1Parameters; 00127 AAL34_PARAMETERS AAL34Parameters; 00128 AAL5_PARAMETERS AAL5Parameters; 00129 AALUSER_PARAMETERS AALUserParameters; 00130 } AALSpecificParameters; 00131 } AAL_PARAMETERS_IE, *PAAL_PARAMETERS_IE; 00132 00133 00134 /* FIXME: Should the union be anonymous in C++ too? If so, 00135 can't define named types _ATM_AAL5_INFO and _ATM_AAL0_INFO 00136 within anonymous union for C++. */ 00137 typedef struct _ATM_AAL_OOB_INFO 00138 { 00139 ATM_AAL_TYPE AalType; 00140 #ifndef __cplusplus 00141 _ANONYMOUS_UNION 00142 #endif 00143 union { 00144 struct _ATM_AAL5_INFO { 00145 BOOLEAN CellLossPriority; 00146 UCHAR UserToUserIndication; 00147 UCHAR CommonPartIndicator; 00148 } ATM_AAL5_INFO; 00149 00150 struct _ATM_AAL0_INFO { 00151 BOOLEAN CellLossPriority; 00152 UCHAR PayLoadTypeIdentifier; 00153 } ATM_AAL0_INFO; 00154 #ifndef __cplusplus 00155 } DUMMYUNIONNAME; 00156 #else 00157 } u; 00158 #endif 00159 } ATM_AAL_OOB_INFO, *PATM_AAL_OOB_INFO; 00160 00161 typedef struct _ATM_ADDRESS { 00162 ATM_ADDRESSTYPE AddressType; 00163 ULONG NumberOfDigits; 00164 UCHAR Address[ATM_ADDRESS_LENGTH]; 00165 } ATM_ADDRESS, *PATM_ADDRESS; 00166 00167 /* ATM_BHLI_IE.HighLayerInfoType constants */ 00168 #define BHLI_ISO 0x00 00169 #define BHLI_UserSpecific 0x01 00170 #define BHLI_HighLayerProfile 0x02 00171 #define BHLI_VendorSpecificAppId 0x03 00172 00173 typedef struct _ATM_BHLI_IE { 00174 ULONG HighLayerInfoType; 00175 ULONG HighLayerInfoLength; 00176 UCHAR HighLayerInfo[8]; 00177 } ATM_BHLI_IE, *PATM_BHLI_IE; 00178 00179 /* ATM_BLLI_IE.Layer2Protocol constants */ 00180 #define BLLI_L2_ISO_1745 0x01 00181 #define BLLI_L2_Q921 0x02 00182 #define BLLI_L2_X25L 0x06 00183 #define BLLI_L2_X25M 0x07 00184 #define BLLI_L2_ELAPB 0x08 00185 #define BLLI_L2_HDLC_ARM 0x09 00186 #define BLLI_L2_HDLC_NRM 0x0A 00187 #define BLLI_L2_HDLC_ABM 0x0B 00188 #define BLLI_L2_LLC 0x0C 00189 #define BLLI_L2_X75 0x0D 00190 #define BLLI_L2_Q922 0x0E 00191 #define BLLI_L2_USER_SPECIFIED 0x10 00192 #define BLLI_L2_ISO_7776 0x11 00193 00194 /* ATM_BLLI_IE.Layer3Protocol constants */ 00195 #define BLLI_L3_X25 0x06 00196 #define BLLI_L3_ISO_8208 0x07 00197 #define BLLI_L3_X223 0x08 00198 #define BLLI_L3_SIO_8473 0x09 00199 #define BLLI_L3_T70 0x0A 00200 #define BLLI_L3_ISO_TR9577 0x0B 00201 #define BLLI_L3_USER_SPECIFIED 0x10 00202 00203 /* ATM_BLLI_IE.Layer3IPI constants */ 00204 #define BLLI_L3_IPI_SNAP 0x80 00205 #define BLLI_L3_IPI_IP 0xCC 00206 00207 typedef struct _ATM_BLLI_IE { 00208 ULONG Layer2Protocol; 00209 UCHAR Layer2Mode; 00210 UCHAR Layer2WindowSize; 00211 ULONG Layer2UserSpecifiedProtocol; 00212 ULONG Layer3Protocol; 00213 UCHAR Layer3Mode; 00214 UCHAR Layer3DefaultPacketSize; 00215 UCHAR Layer3PacketWindowSize; 00216 ULONG Layer3UserSpecifiedProtocol; 00217 ULONG Layer3IPI; 00218 UCHAR SnapId[5]; 00219 } ATM_BLLI_IE, *PATM_BLLI_IE; 00220 00221 /* ATM_BROADBAND_BEARER_CAPABILITY_IE.BearerClass constants */ 00222 #define BCOB_A 0x00 00223 #define BCOB_C 0x01 00224 #define BCOB_X 0x02 00225 00226 /* ATM_BROADBAND_BEARER_CAPABILITY_IE.TrafficType constants */ 00227 #define TT_NOIND 0x00 00228 #define TT_CBR 0x04 00229 #define TT_VBR 0x08 00230 00231 /* ATM_BROADBAND_BEARER_CAPABILITY_IE.TimingRequirements constants */ 00232 #define TR_NOIND 0x00 00233 #define TR_END_TO_END 0x01 00234 #define TR_NO_END_TO_END 0x02 00235 00236 /* ATM_BROADBAND_BEARER_CAPABILITY_IE.ClippingSusceptability constants */ 00237 #define CLIP_NOT 0x00 00238 #define CLIP_SUS 0x20 00239 00240 /* ATM_BROADBAND_BEARER_CAPABILITY_IE.UserPlaneConnectionConfig constants */ 00241 #define UP_P2P 0x00 00242 #define UP_P2MP 0x01 00243 00244 typedef struct _ATM_BROADBAND_BEARER_CAPABILITY_IE { 00245 UCHAR BearerClass; 00246 UCHAR TrafficType; 00247 UCHAR TimingRequirements; 00248 UCHAR ClippingSusceptability; 00249 UCHAR UserPlaneConnectionConfig; 00250 } ATM_BROADBAND_BEARER_CAPABILITY_IE, *PATM_BROADBAND_BEARER_CAPABILITY_IE; 00251 00252 typedef struct _ATM_BROADBAND_SENDING_COMPLETE_IE { 00253 UCHAR SendingComplete; 00254 } ATM_BROADBAND_SENDING_COMPLETE_IE, *PATM_BROADBAND_SENDING_COMPLETE_IE; 00255 00256 typedef struct _ATM_CALLING_PARTY_NUMBER_IE { 00257 ATM_ADDRESS Number; 00258 UCHAR PresentationIndication; 00259 UCHAR ScreeningIndicator; 00260 } ATM_CALLING_PARTY_NUMBER_IE, *PATM_CALLING_PARTY_NUMBER_IE; 00261 00262 /* ATM_CAUSE_IE.Location constants */ 00263 #define ATM_CAUSE_LOC_USER 0x00 00264 #define ATM_CAUSE_LOC_PRIVATE_LOCAL 0x01 00265 #define ATM_CAUSE_LOC_PUBLIC_LOCAL 0x02 00266 #define ATM_CAUSE_LOC_TRANSIT_NETWORK 0x03 00267 #define ATM_CAUSE_LOC_PUBLIC_REMOTE 0x04 00268 #define ATM_CAUSE_LOC_PRIVATE_REMOTE 0x05 00269 #define ATM_CAUSE_LOC_INTERNATIONAL_NETWORK 0x07 00270 #define ATM_CAUSE_LOC_BEYOND_INTERWORKING 0x0A 00271 00272 /* ATM_CAUSE_IE.Cause constants */ 00273 #define ATM_CAUSE_UNALLOCATED_NUMBER 0x01 00274 #define ATM_CAUSE_NO_ROUTE_TO_TRANSIT_NETWORK 0x02 00275 #define ATM_CAUSE_NO_ROUTE_TO_DESTINATION 0x03 00276 #define ATM_CAUSE_VPI_VCI_UNACCEPTABLE 0x0A 00277 #define ATM_CAUSE_NORMAL_CALL_CLEARING 0x10 00278 #define ATM_CAUSE_USER_BUSY 0x11 00279 #define ATM_CAUSE_NO_USER_RESPONDING 0x12 00280 #define ATM_CAUSE_CALL_REJECTED 0x15 00281 #define ATM_CAUSE_NUMBER_CHANGED 0x16 00282 #define ATM_CAUSE_USER_REJECTS_CLIR 0x17 00283 #define ATM_CAUSE_DESTINATION_OUT_OF_ORDER 0x1B 00284 #define ATM_CAUSE_INVALID_NUMBER_FORMAT 0x1C 00285 #define ATM_CAUSE_STATUS_ENQUIRY_RESPONSE 0x1E 00286 #define ATM_CAUSE_NORMAL_UNSPECIFIED 0x1F 00287 #define ATM_CAUSE_VPI_VCI_UNAVAILABLE 0x23 00288 #define ATM_CAUSE_NETWORK_OUT_OF_ORDER 0x26 00289 #define ATM_CAUSE_TEMPORARY_FAILURE 0x29 00290 #define ATM_CAUSE_ACCESS_INFORMAION_DISCARDED 0x2B 00291 #define ATM_CAUSE_NO_VPI_VCI_AVAILABLE 0x2D 00292 #define ATM_CAUSE_RESOURCE_UNAVAILABLE 0x2F 00293 #define ATM_CAUSE_QOS_UNAVAILABLE 0x31 00294 #define ATM_CAUSE_USER_CELL_RATE_UNAVAILABLE 0x33 00295 #define ATM_CAUSE_BEARER_CAPABILITY_UNAUTHORIZED 0x39 00296 #define ATM_CAUSE_BEARER_CAPABILITY_UNAVAILABLE 0x3A 00297 #define ATM_CAUSE_OPTION_UNAVAILABLE 0x3F 00298 #define ATM_CAUSE_BEARER_CAPABILITY_UNIMPLEMENTED 0x41 00299 #define ATM_CAUSE_UNSUPPORTED_TRAFFIC_PARAMETERS 0x49 00300 #define ATM_CAUSE_INVALID_CALL_REFERENCE 0x51 00301 #define ATM_CAUSE_CHANNEL_NONEXISTENT 0x52 00302 #define ATM_CAUSE_INCOMPATIBLE_DESTINATION 0x58 00303 #define ATM_CAUSE_INVALID_ENDPOINT_REFERENCE 0x59 00304 #define ATM_CAUSE_INVALID_TRANSIT_NETWORK_SELECTION 0x5B 00305 #define ATM_CAUSE_TOO_MANY_PENDING_ADD_PARTY 0x5C 00306 #define ATM_CAUSE_AAL_PARAMETERS_UNSUPPORTED 0x5D 00307 #define ATM_CAUSE_MANDATORY_IE_MISSING 0x60 00308 #define ATM_CAUSE_UNIMPLEMENTED_MESSAGE_TYPE 0x61 00309 #define ATM_CAUSE_UNIMPLEMENTED_IE 0x63 00310 #define ATM_CAUSE_INVALID_IE_CONTENTS 0x64 00311 #define ATM_CAUSE_INVALID_STATE_FOR_MESSAGE 0x65 00312 #define ATM_CAUSE_RECOVERY_ON_TIMEOUT 0x66 00313 #define ATM_CAUSE_INCORRECT_MESSAGE_LENGTH 0x68 00314 #define ATM_CAUSE_PROTOCOL_ERROR 0x6F 00315 00316 /* ATM_CAUSE_IE.Diagnostics constants */ 00317 #define ATM_CAUSE_COND_UNKNOWN 0x00 00318 #define ATM_CAUSE_COND_PERMANENT 0x01 00319 #define ATM_CAUSE_COND_TRANSIENT 0x02 00320 #define ATM_CAUSE_REASON_USER 0x00 00321 #define ATM_CAUSE_REASON_IE_MISSING 0x04 00322 #define ATM_CAUSE_REASON_IE_INSUFFICIENT 0x08 00323 #define ATM_CAUSE_PU_PROVIDER 0x00 00324 #define ATM_CAUSE_PU_USER 0x08 00325 #define ATM_CAUSE_NA_NORMAL 0x00 00326 #define ATM_CAUSE_NA_ABNORMAL 0x04 00327 00328 typedef struct _ATM_CAUSE_IE { 00329 UCHAR Location; 00330 UCHAR Cause; 00331 UCHAR DiagnosticsLength; 00332 UCHAR Diagnostics[4]; 00333 } ATM_CAUSE_IE, *PATM_CAUSE_IE; 00334 00335 00336 typedef ULONG ATM_SERVICE_CATEGORY, *PATM_SERVICE_CATEGORY; 00337 00338 /* ATM_FLOW_PARAMETERS.ServiceCategory constants */ 00339 #define ATM_SERVICE_CATEGORY_CBR 1 00340 #define ATM_SERVICE_CATEGORY_VBR 2 00341 #define ATM_SERVICE_CATEGORY_UBR 4 00342 #define ATM_SERVICE_CATEGORY_ABR 8 00343 00344 /* ATM_FLOW_PARAMETERS.Reserved1 constants */ 00345 #define ATM_FLOW_PARAMS_RSVD1_MPP 0x01 00346 00347 typedef struct _ATM_FLOW_PARAMETERS { 00348 ATM_SERVICE_CATEGORY ServiceCategory; 00349 ULONG AverageCellRate; 00350 ULONG PeakCellRate; 00351 ULONG MinimumCellRate; 00352 ULONG InitialCellRate; 00353 ULONG BurstLengthCells; 00354 ULONG MaxSduSize; 00355 ULONG TransientBufferExposure; 00356 ULONG CumulativeRMFixedRTT; 00357 UCHAR RateIncreaseFactor; 00358 UCHAR RateDecreaseFactor; 00359 USHORT ACRDecreaseTimeFactor; 00360 UCHAR MaximumCellsPerForwardRMCell; 00361 UCHAR MaximumForwardRMCellInterval; 00362 UCHAR CutoffDecreaseFactor; 00363 UCHAR Reserved1; 00364 ULONG MissingRMCellCount; 00365 ULONG Reserved2; 00366 ULONG Reserved3; 00367 } ATM_FLOW_PARAMETERS, *PATM_FLOW_PARAMETERS; 00368 00369 typedef struct _ATM_VPIVCI { 00370 ULONG Vpi; 00371 ULONG Vci; 00372 } ATM_VPIVCI, *PATM_VPIVCI; 00373 00374 typedef struct _ATM_MEDIA_PARAMETERS { 00375 ATM_VPIVCI ConnectionId; 00376 ATM_AAL_TYPE AALType; 00377 ULONG CellDelayVariationCLP0; 00378 ULONG CellDelayVariationCLP1; 00379 ULONG CellLossRatioCLP0; 00380 ULONG CellLossRatioCLP1; 00381 ULONG CellTransferDelayCLP0; 00382 ULONG CellTransferDelayCLP1; 00383 ULONG DefaultCLP; 00384 ATM_FLOW_PARAMETERS Transmit; 00385 ATM_FLOW_PARAMETERS Receive; 00386 } ATM_MEDIA_PARAMETERS, *PATM_MEDIA_PARAMETERS; 00387 00388 typedef struct _ATM_PVC_SAP { 00389 ATM_BLLI_IE Blli; 00390 ATM_BHLI_IE Bhli; 00391 } ATM_PVC_SAP, *PATM_PVC_SAP; 00392 00393 /* ATM_QOS_CLASS_IE constants */ 00394 #define QOS_CLASS0 0x00 00395 #define QOS_CLASS1 0x01 00396 #define QOS_CLASS2 0x02 00397 #define QOS_CLASS3 0x03 00398 #define QOS_CLASS4 0x04 00399 00400 typedef struct _ATM_QOS_CLASS_IE { 00401 UCHAR QOSClassForward; 00402 UCHAR QOSClassBackward; 00403 } ATM_QOS_CLASS_IE, *PATM_QOS_CLASS_IE; 00404 00405 typedef struct _ATM_RAW_IE { 00406 ULONG RawIELength; 00407 ULONG RawIEType; 00408 UCHAR RawIEValue[1]; 00409 } ATM_RAW_IE, *PATM_RAW_IE; 00410 00411 typedef struct _ATM_SAP { 00412 ATM_BLLI_IE Blli; 00413 ATM_BHLI_IE Bhli; 00414 ULONG NumberOfAddresses; 00415 UCHAR Addresses[1]; 00416 } ATM_SAP, *PATM_SAP; 00417 00418 typedef struct _ATM_TRAFFIC_DESCRIPTOR { 00419 ULONG PeakCellRateCLP0; 00420 ULONG PeakCellRateCLP01; 00421 ULONG SustainableCellRateCLP0; 00422 ULONG SustainableCellRateCLP01; 00423 ULONG MaximumBurstSizeCLP0; 00424 ULONG MaximumBurstSizeCLP01; 00425 BOOLEAN BestEffort; 00426 BOOLEAN Tagging; 00427 } ATM_TRAFFIC_DESCRIPTOR, *PATM_TRAFFIC_DESCRIPTOR; 00428 00429 typedef struct _ATM_TRAFFIC_DESCRIPTOR_IE { 00430 ATM_TRAFFIC_DESCRIPTOR ForwardTD; 00431 ATM_TRAFFIC_DESCRIPTOR BackwardTD; 00432 BOOLEAN BestEffort; 00433 } ATM_TRAFFIC_DESCRIPTOR_IE, *PATM_TRAFFIC_DESCRIPTOR_IE; 00434 00435 /* ATM_TRANSIT_NETWORK_SELECTION_IE.TypeOfNetworkId constants */ 00436 #define TNS_TYPE_NATIONAL 0x40 00437 00438 /* ATM_TRANSIT_NETWORK_SELECTION_IE.NetworkIdPlan constants */ 00439 #define TNS_PLAN_CARRIER_ID_CODE 0x01 00440 00441 typedef struct _ATM_TRANSIT_NETWORK_SELECTION_IE { 00442 UCHAR TypeOfNetworkId; 00443 UCHAR NetworkIdPlan; 00444 UCHAR NetworkIdLength; 00445 UCHAR NetworkId[1]; 00446 } ATM_TRANSIT_NETWORK_SELECTION_IE, *PATM_TRANSIT_NETWORK_SELECTION_IE; 00447 00448 typedef struct _ATM_LIJ_CALLID_IE { 00449 ULONG Identifier; 00450 } ATM_LIJ_CALLID_IE, *PATM_LIJ_CALLID_IE; 00451 00452 /* Q2931_ADD_PVC.Flags constants */ 00453 #define CO_FLAG_SIGNALING_VC 0x00000001 00454 #define CO_FLAG_NO_DEST_SAP 0x00000002 00455 00456 typedef struct _Q2931_ADD_PVC { 00457 ATM_ADDRESS CalledParty; 00458 ATM_ADDRESS CallingParty; 00459 ATM_VPIVCI ConnectionId; 00460 ATM_AAL_TYPE AALType; 00461 ATM_FLOW_PARAMETERS ForwardFP; 00462 ATM_FLOW_PARAMETERS BackwardFP; 00463 ULONG Flags; 00464 ATM_PVC_SAP LocalSap; 00465 ATM_PVC_SAP DestinationSap; 00466 BOOLEAN LIJIdPresent; 00467 ATM_LIJ_CALLID_IE LIJId; 00468 } Q2931_ADD_PVC, *PQ2931_ADD_PVC; 00469 00470 typedef struct _Q2931_DELETE_PVC { 00471 ATM_VPIVCI ConnectionId; 00472 } Q2931_DELETE_PVC, *PQ2931_DELETE_PVC; 00473 00474 typedef ATM_ADDRESS ATM_CALLED_PARTY_NUMBER_IE; 00475 typedef ATM_ADDRESS ATM_CALLED_PARTY_SUBADDRESS_IE; 00476 typedef ATM_ADDRESS ATM_CALLING_PARTY_SUBADDRESS_IE; 00477 00478 typedef struct _Q2931_CALLMGR_PARAMETERS { 00479 ATM_ADDRESS CalledParty; 00480 ATM_ADDRESS CallingParty; 00481 ULONG InfoElementCount; 00482 UCHAR InfoElements[1]; 00483 } Q2931_CALLMGR_PARAMETERS, *PQ2931_CALLMGR_PARAMETERS; 00484 00485 typedef struct _ATM_VC_RATES_SUPPORTED { 00486 ULONG MinCellRate; 00487 ULONG MaxCellRate; 00488 } ATM_VC_RATES_SUPPORTED, *PATM_VC_RATES_SUPPORTED; 00489 00490 typedef ULONG ATM_SERVICE_REGISTRY_TYPE; 00491 00492 /* ATM_SERVICE_ADDRESS_LIST.ServiceRegistryType constants */ 00493 #define ATM_SERVICE_REGISTRY_LECS 1 00494 #define ATM_SERVICE_REGISTRY_ANS 2 00495 00496 typedef struct _ATM_SERVICE_ADDRESS_LIST { 00497 ATM_SERVICE_REGISTRY_TYPE ServiceRegistryType; 00498 ULONG NumberOfAddressesAvailable; 00499 ULONG NumberOfAddressesReturned; 00500 ATM_ADDRESS Address[1]; 00501 } ATM_SERVICE_ADDRESS_LIST, *PATM_SERVICE_ADDRESS_LIST; 00502 00503 #ifdef __cplusplus 00504 } 00505 #endif 00506 00507 #endif /* __ATM_H */
Generated on Tue Jul 12 2022 19:59:53 by
1.7.2