From f0e3db2b348c18645e3a4e6817e06fc4aa9b51e2 Mon Sep 17 00:00:00 2001 From: Amine Khaldi Date: Fri, 9 Apr 2010 21:41:00 +0000 Subject: [PATCH] [DDK] - atm.h : Introduce pragma once, apply consistent formatting and add some missing definitions. svn path=/branches/header-work/; revision=46799 --- include/ddk/atm.h | 548 ++++++++++++++++++++++++---------------------- 1 file changed, 281 insertions(+), 267 deletions(-) diff --git a/include/ddk/atm.h b/include/ddk/atm.h index 0ff43c38647..d23f278b944 100644 --- a/include/ddk/atm.h +++ b/include/ddk/atm.h @@ -20,250 +20,249 @@ * */ -#ifndef _ATM_H -#define _ATM_H +#pragma once #ifdef __cplusplus extern "C" { #endif -typedef ULONG ATM_ADDRESSTYPE; +typedef ULONG ATM_ADDRESSTYPE; -#define SAP_TYPE_NSAP 1 -#define SAP_TYPE_E164 2 +#define SAP_TYPE_NSAP 1 +#define SAP_TYPE_E164 2 -#define ATM_MEDIA_SPECIFIC 1 +#define ATM_MEDIA_SPECIFIC 1 -#define CALLMGR_SPECIFIC_Q2931 1 +#define CALLMGR_SPECIFIC_Q2931 1 -#define ATM_NSAP 0 -#define ATM_E164 1 +#define ATM_NSAP 0 +#define ATM_E164 1 -#define ATM_MAC_ADDRESS_LENGTH 6 -#define ATM_ADDRESS_LENGTH 20 +#define ATM_MAC_ADDRESS_LENGTH 6 +#define ATM_ADDRESS_LENGTH 20 -typedef ULONG ATM_AAL_TYPE, *PATM_AAL_TYPE; +typedef ULONG ATM_AAL_TYPE, *PATM_AAL_TYPE; -#define AAL_TYPE_AAL0 1 -#define AAL_TYPE_AAL1 2 -#define AAL_TYPE_AAL34 4 -#define AAL_TYPE_AAL5 8 +#define AAL_TYPE_AAL0 1 +#define AAL_TYPE_AAL1 2 +#define AAL_TYPE_AAL34 4 +#define AAL_TYPE_AAL5 8 -#define ATM_ADDR_BLANK_CHAR L' ' -#define ATM_ADDR_E164_START_CHAR L'+' -#define ATM_ADDR_PUNCTUATION_CHAR L'.' +#define ATM_ADDR_BLANK_CHAR L' ' +#define ATM_ADDR_E164_START_CHAR L'+' +#define ATM_ADDR_PUNCTUATION_CHAR L'.' -typedef enum { - IE_AALParameters, - IE_TrafficDescriptor, - IE_BroadbandBearerCapability, - IE_BHLI, - IE_BLLI, - IE_CalledPartyNumber, - IE_CalledPartySubaddress, - IE_CallingPartyNumber, - IE_CallingPartySubaddress, - IE_Cause, - IE_QOSClass, - IE_TransitNetworkSelection, - IE_BroadbandSendingComplete, - IE_LIJCallId, - IE_Raw +typedef enum _Q2931_IE_TYPE { + IE_AALParameters, + IE_TrafficDescriptor, + IE_BroadbandBearerCapability, + IE_BHLI, + IE_BLLI, + IE_CalledPartyNumber, + IE_CalledPartySubaddress, + IE_CallingPartyNumber, + IE_CallingPartySubaddress, + IE_Cause, + IE_QOSClass, + IE_TransitNetworkSelection, + IE_BroadbandSendingComplete, + IE_LIJCallId, + IE_Raw } Q2931_IE_TYPE; typedef struct _Q2931_IE { - Q2931_IE_TYPE IEType; - ULONG IELength; - UCHAR IE[1]; + Q2931_IE_TYPE IEType; + ULONG IELength; + UCHAR IE[1]; } Q2931_IE, *PQ2931_IE; typedef struct _AAL1_PARAMETERS { - UCHAR Subtype; - UCHAR CBRRate; - USHORT Multiplier; - UCHAR SourceClockRecoveryMethod; - UCHAR ErrorCorrectionMethod; - USHORT StructuredDataTransferBlocksize; - UCHAR PartiallyFilledCellsMethod; + UCHAR Subtype; + UCHAR CBRRate; + USHORT Multiplier; + UCHAR SourceClockRecoveryMethod; + UCHAR ErrorCorrectionMethod; + USHORT StructuredDataTransferBlocksize; + UCHAR PartiallyFilledCellsMethod; } AAL1_PARAMETERS, *PAAL1_PARAMETERS; typedef struct _AAL34_PARAMETERS { - USHORT ForwardMaxCPCSSDUSize; - USHORT BackwardMaxCPCSSDUSize; - USHORT LowestMID; - USHORT HighestMID; - UCHAR SSCSType; + USHORT ForwardMaxCPCSSDUSize; + USHORT BackwardMaxCPCSSDUSize; + USHORT LowestMID; + USHORT HighestMID; + UCHAR SSCSType; } AAL34_PARAMETERS, *PAAL34_PARAMETERS; /* AAL5_PARAMETERS.Mode constants */ -#define AAL5_MODE_MESSAGE 0x01 -#define AAL5_MODE_STREAMING 0x02 +#define AAL5_MODE_MESSAGE 0x01 +#define AAL5_MODE_STREAMING 0x02 /* AAL5_PARAMETERS.SSCSType constants */ -#define AAL5_SSCS_NULL 0x00 -#define AAL5_SSCS_SSCOP_ASSURED 0x01 -#define AAL5_SSCS_SSCOP_NON_ASSURED 0x02 -#define AAL5_SSCS_FRAME_RELAY 0x04 +#define AAL5_SSCS_NULL 0x00 +#define AAL5_SSCS_SSCOP_ASSURED 0x01 +#define AAL5_SSCS_SSCOP_NON_ASSURED 0x02 +#define AAL5_SSCS_FRAME_RELAY 0x04 typedef struct _AAL5_PARAMETERS { - ULONG ForwardMaxCPCSSDUSize; - ULONG BackwardMaxCPCSSDUSize; - UCHAR Mode; - UCHAR SSCSType; + ULONG ForwardMaxCPCSSDUSize; + ULONG BackwardMaxCPCSSDUSize; + UCHAR Mode; + UCHAR SSCSType; } AAL5_PARAMETERS, *PAAL5_PARAMETERS; typedef struct _AALUSER_PARAMETERS { - ULONG UserDefined; + ULONG UserDefined; } AALUSER_PARAMETERS, *PAALUSER_PARAMETERS; typedef struct _AAL_PARAMETERS_IE { - ATM_AAL_TYPE AALType; + ATM_AAL_TYPE AALType; union { - AAL1_PARAMETERS AAL1Parameters; - AAL34_PARAMETERS AAL34Parameters; - AAL5_PARAMETERS AAL5Parameters; - AALUSER_PARAMETERS AALUserParameters; + AAL1_PARAMETERS AAL1Parameters; + AAL34_PARAMETERS AAL34Parameters; + AAL5_PARAMETERS AAL5Parameters; + AALUSER_PARAMETERS AALUserParameters; } AALSpecificParameters; } AAL_PARAMETERS_IE, *PAAL_PARAMETERS_IE; struct _ATM_AAL5_INFO { - BOOLEAN CellLossPriority; - UCHAR UserToUserIndication; - UCHAR CommonPartIndicator; + BOOLEAN CellLossPriority; + UCHAR UserToUserIndication; + UCHAR CommonPartIndicator; }; struct _ATM_AAL0_INFO { - BOOLEAN CellLossPriority; - UCHAR PayLoadTypeIdentifier; + BOOLEAN CellLossPriority; + UCHAR PayLoadTypeIdentifier; }; -/* FIXME: Should the union be anonymous in C++ too? */ -typedef struct _ATM_AAL_OOB_INFO -{ - ATM_AAL_TYPE AalType; -#ifndef __cplusplus - _ANONYMOUS_UNION -#endif - union { - struct _ATM_AAL5_INFO ATM_AAL5_INFO; - struct _ATM_AAL0_INFO ATM_AAL0_INFO; -#ifndef __cplusplus - } DUMMYUNIONNAME; -#else - } u; -#endif +typedef struct _ATM_AAL_OOB_INFO { + ATM_AAL_TYPE AalType; + union { + struct _ATM_AAL5_INFO ATM_AAL5_INFO; + struct _ATM_AAL0_INFO ATM_AAL0_INFO; + }; } ATM_AAL_OOB_INFO, *PATM_AAL_OOB_INFO; -typedef struct _ATM_ADDRESS { - ATM_ADDRESSTYPE AddressType; - ULONG NumberOfDigits; - UCHAR Address[ATM_ADDRESS_LENGTH]; +typedef struct _ATM_ADDRESS { + ATM_ADDRESSTYPE AddressType; + ULONG NumberOfDigits; + UCHAR Address[ATM_ADDRESS_LENGTH]; } ATM_ADDRESS, *PATM_ADDRESS; +#define ATM_PHYS_RATE_SONET_STS3C 155520000 +#define ATM_PHYS_RATE_IBM_25 25600000 + +#define ATM_CELL_TRANSFER_CAPACITY_SONET_STS3C 149760000 +#define ATM_CELL_TRANSFER_CAPACITY_IBM_25 25125926 + +#define ATM_USER_DATA_RATE_SONET_155 1356317 +#define ATM_USER_DATA_RATE_IBM_25 227556 + /* ATM_BHLI_IE.HighLayerInfoType constants */ -#define BHLI_ISO 0x00 -#define BHLI_UserSpecific 0x01 -#define BHLI_HighLayerProfile 0x02 -#define BHLI_VendorSpecificAppId 0x03 +#define BHLI_ISO 0x00 +#define BHLI_UserSpecific 0x01 +#define BHLI_HighLayerProfile 0x02 +#define BHLI_VendorSpecificAppId 0x03 typedef struct _ATM_BHLI_IE { - ULONG HighLayerInfoType; - ULONG HighLayerInfoLength; - UCHAR HighLayerInfo[8]; + ULONG HighLayerInfoType; + ULONG HighLayerInfoLength; + UCHAR HighLayerInfo[8]; } ATM_BHLI_IE, *PATM_BHLI_IE; /* ATM_BLLI_IE.Layer2Protocol constants */ -#define BLLI_L2_ISO_1745 0x01 -#define BLLI_L2_Q921 0x02 -#define BLLI_L2_X25L 0x06 -#define BLLI_L2_X25M 0x07 -#define BLLI_L2_ELAPB 0x08 -#define BLLI_L2_HDLC_ARM 0x09 -#define BLLI_L2_HDLC_NRM 0x0A -#define BLLI_L2_HDLC_ABM 0x0B -#define BLLI_L2_LLC 0x0C -#define BLLI_L2_X75 0x0D -#define BLLI_L2_Q922 0x0E -#define BLLI_L2_USER_SPECIFIED 0x10 -#define BLLI_L2_ISO_7776 0x11 +#define BLLI_L2_ISO_1745 0x01 +#define BLLI_L2_Q921 0x02 +#define BLLI_L2_X25L 0x06 +#define BLLI_L2_X25M 0x07 +#define BLLI_L2_ELAPB 0x08 +#define BLLI_L2_HDLC_ARM 0x09 +#define BLLI_L2_HDLC_NRM 0x0A +#define BLLI_L2_HDLC_ABM 0x0B +#define BLLI_L2_LLC 0x0C +#define BLLI_L2_X75 0x0D +#define BLLI_L2_Q922 0x0E +#define BLLI_L2_USER_SPECIFIED 0x10 +#define BLLI_L2_ISO_7776 0x11 /* ATM_BLLI_IE.Layer3Protocol constants */ -#define BLLI_L3_X25 0x06 -#define BLLI_L3_ISO_8208 0x07 -#define BLLI_L3_X223 0x08 -#define BLLI_L3_SIO_8473 0x09 -#define BLLI_L3_T70 0x0A -#define BLLI_L3_ISO_TR9577 0x0B -#define BLLI_L3_USER_SPECIFIED 0x10 +#define BLLI_L3_X25 0x06 +#define BLLI_L3_ISO_8208 0x07 +#define BLLI_L3_X223 0x08 +#define BLLI_L3_SIO_8473 0x09 +#define BLLI_L3_T70 0x0A +#define BLLI_L3_ISO_TR9577 0x0B +#define BLLI_L3_USER_SPECIFIED 0x10 /* ATM_BLLI_IE.Layer3IPI constants */ -#define BLLI_L3_IPI_SNAP 0x80 -#define BLLI_L3_IPI_IP 0xCC +#define BLLI_L3_IPI_SNAP 0x80 +#define BLLI_L3_IPI_IP 0xCC typedef struct _ATM_BLLI_IE { - ULONG Layer2Protocol; - UCHAR Layer2Mode; - UCHAR Layer2WindowSize; - ULONG Layer2UserSpecifiedProtocol; - ULONG Layer3Protocol; - UCHAR Layer3Mode; - UCHAR Layer3DefaultPacketSize; - UCHAR Layer3PacketWindowSize; - ULONG Layer3UserSpecifiedProtocol; - ULONG Layer3IPI; - UCHAR SnapId[5]; + ULONG Layer2Protocol; + UCHAR Layer2Mode; + UCHAR Layer2WindowSize; + ULONG Layer2UserSpecifiedProtocol; + ULONG Layer3Protocol; + UCHAR Layer3Mode; + UCHAR Layer3DefaultPacketSize; + UCHAR Layer3PacketWindowSize; + ULONG Layer3UserSpecifiedProtocol; + ULONG Layer3IPI; + UCHAR SnapId[5]; } ATM_BLLI_IE, *PATM_BLLI_IE; /* ATM_BROADBAND_BEARER_CAPABILITY_IE.BearerClass constants */ -#define BCOB_A 0x00 -#define BCOB_C 0x01 -#define BCOB_X 0x02 +#define BCOB_A 0x00 +#define BCOB_C 0x01 +#define BCOB_X 0x02 /* ATM_BROADBAND_BEARER_CAPABILITY_IE.TrafficType constants */ -#define TT_NOIND 0x00 -#define TT_CBR 0x04 -#define TT_VBR 0x08 +#define TT_NOIND 0x00 +#define TT_CBR 0x04 +#define TT_VBR 0x08 /* ATM_BROADBAND_BEARER_CAPABILITY_IE.TimingRequirements constants */ -#define TR_NOIND 0x00 -#define TR_END_TO_END 0x01 -#define TR_NO_END_TO_END 0x02 +#define TR_NOIND 0x00 +#define TR_END_TO_END 0x01 +#define TR_NO_END_TO_END 0x02 /* ATM_BROADBAND_BEARER_CAPABILITY_IE.ClippingSusceptability constants */ -#define CLIP_NOT 0x00 -#define CLIP_SUS 0x20 +#define CLIP_NOT 0x00 +#define CLIP_SUS 0x20 /* ATM_BROADBAND_BEARER_CAPABILITY_IE.UserPlaneConnectionConfig constants */ -#define UP_P2P 0x00 -#define UP_P2MP 0x01 +#define UP_P2P 0x00 +#define UP_P2MP 0x01 typedef struct _ATM_BROADBAND_BEARER_CAPABILITY_IE { - UCHAR BearerClass; - UCHAR TrafficType; - UCHAR TimingRequirements; - UCHAR ClippingSusceptability; - UCHAR UserPlaneConnectionConfig; + UCHAR BearerClass; + UCHAR TrafficType; + UCHAR TimingRequirements; + UCHAR ClippingSusceptability; + UCHAR UserPlaneConnectionConfig; } ATM_BROADBAND_BEARER_CAPABILITY_IE, *PATM_BROADBAND_BEARER_CAPABILITY_IE; typedef struct _ATM_BROADBAND_SENDING_COMPLETE_IE { - UCHAR SendingComplete; + UCHAR SendingComplete; } ATM_BROADBAND_SENDING_COMPLETE_IE, *PATM_BROADBAND_SENDING_COMPLETE_IE; typedef struct _ATM_CALLING_PARTY_NUMBER_IE { - ATM_ADDRESS Number; - UCHAR PresentationIndication; - UCHAR ScreeningIndicator; + ATM_ADDRESS Number; + UCHAR PresentationIndication; + UCHAR ScreeningIndicator; } ATM_CALLING_PARTY_NUMBER_IE, *PATM_CALLING_PARTY_NUMBER_IE; /* ATM_CAUSE_IE.Location constants */ -#define ATM_CAUSE_LOC_USER 0x00 -#define ATM_CAUSE_LOC_PRIVATE_LOCAL 0x01 -#define ATM_CAUSE_LOC_PUBLIC_LOCAL 0x02 -#define ATM_CAUSE_LOC_TRANSIT_NETWORK 0x03 -#define ATM_CAUSE_LOC_PUBLIC_REMOTE 0x04 -#define ATM_CAUSE_LOC_PRIVATE_REMOTE 0x05 -#define ATM_CAUSE_LOC_INTERNATIONAL_NETWORK 0x07 -#define ATM_CAUSE_LOC_BEYOND_INTERWORKING 0x0A +#define ATM_CAUSE_LOC_USER 0x00 +#define ATM_CAUSE_LOC_PRIVATE_LOCAL 0x01 +#define ATM_CAUSE_LOC_PUBLIC_LOCAL 0x02 +#define ATM_CAUSE_LOC_TRANSIT_NETWORK 0x03 +#define ATM_CAUSE_LOC_PUBLIC_REMOTE 0x04 +#define ATM_CAUSE_LOC_PRIVATE_REMOTE 0x05 +#define ATM_CAUSE_LOC_INTERNATIONAL_NETWORK 0x07 +#define ATM_CAUSE_LOC_BEYOND_INTERWORKING 0x0A /* ATM_CAUSE_IE.Cause constants */ #define ATM_CAUSE_UNALLOCATED_NUMBER 0x01 @@ -322,182 +321,197 @@ typedef struct _ATM_CALLING_PARTY_NUMBER_IE { #define ATM_CAUSE_NA_ABNORMAL 0x04 typedef struct _ATM_CAUSE_IE { - UCHAR Location; - UCHAR Cause; - UCHAR DiagnosticsLength; - UCHAR Diagnostics[4]; + UCHAR Location; + UCHAR Cause; + UCHAR DiagnosticsLength; + UCHAR Diagnostics[4]; } ATM_CAUSE_IE, *PATM_CAUSE_IE; -typedef ULONG ATM_SERVICE_CATEGORY, *PATM_SERVICE_CATEGORY; +typedef ULONG ATM_SERVICE_CATEGORY, *PATM_SERVICE_CATEGORY; /* ATM_FLOW_PARAMETERS.ServiceCategory constants */ -#define ATM_SERVICE_CATEGORY_CBR 1 -#define ATM_SERVICE_CATEGORY_VBR 2 -#define ATM_SERVICE_CATEGORY_UBR 4 -#define ATM_SERVICE_CATEGORY_ABR 8 +#define ATM_SERVICE_CATEGORY_CBR 1 +#define ATM_SERVICE_CATEGORY_VBR 2 +#define ATM_SERVICE_CATEGORY_UBR 4 +#define ATM_SERVICE_CATEGORY_ABR 8 /* ATM_FLOW_PARAMETERS.Reserved1 constants */ -#define ATM_FLOW_PARAMS_RSVD1_MPP 0x01 +#define ATM_FLOW_PARAMS_RSVD1_MPP 0x01 + +#ifndef SAP_FIELD_ABSENT +#define SAP_FIELD_ABSENT ((ULONG)0xfffffffe) +#endif + +#ifndef SAP_FIELD_ANY +#define SAP_FIELD_ANY ((ULONG)0xffffffff) +#endif + +#define SAP_FIELD_ANY_AESA_SEL ((ULONG)0xfffffffa) +#define SAP_FIELD_ANY_AESA_REST ((ULONG)0xfffffffb) typedef struct _ATM_FLOW_PARAMETERS { - ATM_SERVICE_CATEGORY ServiceCategory; - ULONG AverageCellRate; - ULONG PeakCellRate; - ULONG MinimumCellRate; - ULONG InitialCellRate; - ULONG BurstLengthCells; - ULONG MaxSduSize; - ULONG TransientBufferExposure; - ULONG CumulativeRMFixedRTT; - UCHAR RateIncreaseFactor; - UCHAR RateDecreaseFactor; - USHORT ACRDecreaseTimeFactor; - UCHAR MaximumCellsPerForwardRMCell; - UCHAR MaximumForwardRMCellInterval; - UCHAR CutoffDecreaseFactor; - UCHAR Reserved1; - ULONG MissingRMCellCount; - ULONG Reserved2; - ULONG Reserved3; + ATM_SERVICE_CATEGORY ServiceCategory; + ULONG AverageCellRate; + ULONG PeakCellRate; + ULONG MinimumCellRate; + ULONG InitialCellRate; + ULONG BurstLengthCells; + ULONG MaxSduSize; + ULONG TransientBufferExposure; + ULONG CumulativeRMFixedRTT; + UCHAR RateIncreaseFactor; + UCHAR RateDecreaseFactor; + USHORT ACRDecreaseTimeFactor; + UCHAR MaximumCellsPerForwardRMCell; + UCHAR MaximumForwardRMCellInterval; + UCHAR CutoffDecreaseFactor; + UCHAR Reserved1; + ULONG MissingRMCellCount; + ULONG Reserved2; + ULONG Reserved3; } ATM_FLOW_PARAMETERS, *PATM_FLOW_PARAMETERS; typedef struct _ATM_VPIVCI { - ULONG Vpi; - ULONG Vci; + ULONG Vpi; + ULONG Vci; } ATM_VPIVCI, *PATM_VPIVCI; typedef struct _ATM_MEDIA_PARAMETERS { - ATM_VPIVCI ConnectionId; - ATM_AAL_TYPE AALType; - ULONG CellDelayVariationCLP0; - ULONG CellDelayVariationCLP1; - ULONG CellLossRatioCLP0; - ULONG CellLossRatioCLP1; - ULONG CellTransferDelayCLP0; - ULONG CellTransferDelayCLP1; - ULONG DefaultCLP; - ATM_FLOW_PARAMETERS Transmit; - ATM_FLOW_PARAMETERS Receive; + ATM_VPIVCI ConnectionId; + ATM_AAL_TYPE AALType; + ULONG CellDelayVariationCLP0; + ULONG CellDelayVariationCLP1; + ULONG CellLossRatioCLP0; + ULONG CellLossRatioCLP1; + ULONG CellTransferDelayCLP0; + ULONG CellTransferDelayCLP1; + ULONG DefaultCLP; + ATM_FLOW_PARAMETERS Transmit; + ATM_FLOW_PARAMETERS Receive; } ATM_MEDIA_PARAMETERS, *PATM_MEDIA_PARAMETERS; typedef struct _ATM_PVC_SAP { - ATM_BLLI_IE Blli; - ATM_BHLI_IE Bhli; + ATM_BLLI_IE Blli; + ATM_BHLI_IE Bhli; } ATM_PVC_SAP, *PATM_PVC_SAP; /* ATM_QOS_CLASS_IE constants */ -#define QOS_CLASS0 0x00 -#define QOS_CLASS1 0x01 -#define QOS_CLASS2 0x02 -#define QOS_CLASS3 0x03 -#define QOS_CLASS4 0x04 +#define QOS_CLASS0 0x00 +#define QOS_CLASS1 0x01 +#define QOS_CLASS2 0x02 +#define QOS_CLASS3 0x03 +#define QOS_CLASS4 0x04 typedef struct _ATM_QOS_CLASS_IE { - UCHAR QOSClassForward; - UCHAR QOSClassBackward; + UCHAR QOSClassForward; + UCHAR QOSClassBackward; } ATM_QOS_CLASS_IE, *PATM_QOS_CLASS_IE; typedef struct _ATM_RAW_IE { - ULONG RawIELength; - ULONG RawIEType; - UCHAR RawIEValue[1]; + ULONG RawIELength; + ULONG RawIEType; + UCHAR RawIEValue[1]; } ATM_RAW_IE, *PATM_RAW_IE; typedef struct _ATM_SAP { - ATM_BLLI_IE Blli; - ATM_BHLI_IE Bhli; - ULONG NumberOfAddresses; - UCHAR Addresses[1]; + ATM_BLLI_IE Blli; + ATM_BHLI_IE Bhli; + ULONG NumberOfAddresses; + UCHAR Addresses[1]; } ATM_SAP, *PATM_SAP; typedef struct _ATM_TRAFFIC_DESCRIPTOR { - ULONG PeakCellRateCLP0; - ULONG PeakCellRateCLP01; - ULONG SustainableCellRateCLP0; - ULONG SustainableCellRateCLP01; - ULONG MaximumBurstSizeCLP0; - ULONG MaximumBurstSizeCLP01; - BOOLEAN BestEffort; - BOOLEAN Tagging; + ULONG PeakCellRateCLP0; + ULONG PeakCellRateCLP01; + ULONG SustainableCellRateCLP0; + ULONG SustainableCellRateCLP01; + ULONG MaximumBurstSizeCLP0; + ULONG MaximumBurstSizeCLP01; + BOOLEAN Tagging; } ATM_TRAFFIC_DESCRIPTOR, *PATM_TRAFFIC_DESCRIPTOR; typedef struct _ATM_TRAFFIC_DESCRIPTOR_IE { - ATM_TRAFFIC_DESCRIPTOR ForwardTD; - ATM_TRAFFIC_DESCRIPTOR BackwardTD; - BOOLEAN BestEffort; + ATM_TRAFFIC_DESCRIPTOR ForwardTD; + ATM_TRAFFIC_DESCRIPTOR BackwardTD; + BOOLEAN BestEffort; } ATM_TRAFFIC_DESCRIPTOR_IE, *PATM_TRAFFIC_DESCRIPTOR_IE; /* ATM_TRANSIT_NETWORK_SELECTION_IE.TypeOfNetworkId constants */ -#define TNS_TYPE_NATIONAL 0x40 +#define TNS_TYPE_NATIONAL 0x40 /* ATM_TRANSIT_NETWORK_SELECTION_IE.NetworkIdPlan constants */ -#define TNS_PLAN_CARRIER_ID_CODE 0x01 +#define TNS_PLAN_CARRIER_ID_CODE 0x01 typedef struct _ATM_TRANSIT_NETWORK_SELECTION_IE { - UCHAR TypeOfNetworkId; - UCHAR NetworkIdPlan; - UCHAR NetworkIdLength; - UCHAR NetworkId[1]; + UCHAR TypeOfNetworkId; + UCHAR NetworkIdPlan; + UCHAR NetworkIdLength; + UCHAR NetworkId[1]; } ATM_TRANSIT_NETWORK_SELECTION_IE, *PATM_TRANSIT_NETWORK_SELECTION_IE; typedef struct _ATM_LIJ_CALLID_IE { - ULONG Identifier; + ULONG Identifier; } ATM_LIJ_CALLID_IE, *PATM_LIJ_CALLID_IE; /* Q2931_ADD_PVC.Flags constants */ -#define CO_FLAG_SIGNALING_VC 0x00000001 -#define CO_FLAG_NO_DEST_SAP 0x00000002 +#define CO_FLAG_SIGNALING_VC 0x00000001 +#define CO_FLAG_NO_DEST_SAP 0x00000002 +#define CO_FLAG_NO_LOCAL_SAP 0x00000004 typedef struct _Q2931_ADD_PVC { - ATM_ADDRESS CalledParty; - ATM_ADDRESS CallingParty; - ATM_VPIVCI ConnectionId; - ATM_AAL_TYPE AALType; - ATM_FLOW_PARAMETERS ForwardFP; - ATM_FLOW_PARAMETERS BackwardFP; - ULONG Flags; - ATM_PVC_SAP LocalSap; - ATM_PVC_SAP DestinationSap; - BOOLEAN LIJIdPresent; - ATM_LIJ_CALLID_IE LIJId; + ATM_ADDRESS CalledParty; + ATM_ADDRESS CallingParty; + ATM_VPIVCI ConnectionId; + ATM_AAL_TYPE AALType; + ATM_FLOW_PARAMETERS ForwardFP; + ATM_FLOW_PARAMETERS BackwardFP; + ULONG Flags; + ATM_PVC_SAP LocalSap; + ATM_PVC_SAP DestinationSap; + BOOLEAN LIJIdPresent; + ATM_LIJ_CALLID_IE LIJId; } Q2931_ADD_PVC, *PQ2931_ADD_PVC; typedef struct _Q2931_DELETE_PVC { - ATM_VPIVCI ConnectionId; + ATM_VPIVCI ConnectionId; } Q2931_DELETE_PVC, *PQ2931_DELETE_PVC; -typedef ATM_ADDRESS ATM_CALLED_PARTY_NUMBER_IE; -typedef ATM_ADDRESS ATM_CALLED_PARTY_SUBADDRESS_IE; -typedef ATM_ADDRESS ATM_CALLING_PARTY_SUBADDRESS_IE; +typedef struct _CO_GET_CALL_INFORMATION { + ULONG CallInfoType; + ULONG CallInfoLength; + PVOID CallInfoBuffer; +} CO_GET_CALL_INFORMATION, *PCO_GET_CALL_INFORMATION; + +typedef ATM_ADDRESS ATM_CALLED_PARTY_NUMBER_IE; +typedef ATM_ADDRESS ATM_CALLED_PARTY_SUBADDRESS_IE; +typedef ATM_ADDRESS ATM_CALLING_PARTY_SUBADDRESS_IE; typedef struct _Q2931_CALLMGR_PARAMETERS { - ATM_ADDRESS CalledParty; - ATM_ADDRESS CallingParty; - ULONG InfoElementCount; - UCHAR InfoElements[1]; + ATM_ADDRESS CalledParty; + ATM_ADDRESS CallingParty; + ULONG InfoElementCount; + UCHAR InfoElements[1]; } Q2931_CALLMGR_PARAMETERS, *PQ2931_CALLMGR_PARAMETERS; typedef struct _ATM_VC_RATES_SUPPORTED { - ULONG MinCellRate; - ULONG MaxCellRate; + ULONG MinCellRate; + ULONG MaxCellRate; } ATM_VC_RATES_SUPPORTED, *PATM_VC_RATES_SUPPORTED; typedef ULONG ATM_SERVICE_REGISTRY_TYPE; /* ATM_SERVICE_ADDRESS_LIST.ServiceRegistryType constants */ -#define ATM_SERVICE_REGISTRY_LECS 1 -#define ATM_SERVICE_REGISTRY_ANS 2 +#define ATM_SERVICE_REGISTRY_LECS 1 +#define ATM_SERVICE_REGISTRY_ANS 2 typedef struct _ATM_SERVICE_ADDRESS_LIST { - ATM_SERVICE_REGISTRY_TYPE ServiceRegistryType; - ULONG NumberOfAddressesAvailable; - ULONG NumberOfAddressesReturned; - ATM_ADDRESS Address[1]; + ATM_SERVICE_REGISTRY_TYPE ServiceRegistryType; + ULONG NumberOfAddressesAvailable; + ULONG NumberOfAddressesReturned; + ATM_ADDRESS Address[1]; } ATM_SERVICE_ADDRESS_LIST, *PATM_SERVICE_ADDRESS_LIST; #ifdef __cplusplus } #endif - -#endif /* _ATM_H */ -- 2.17.1