From 4c7cd88113bcee6d009ec6262abfed12eec22b16 Mon Sep 17 00:00:00 2001 From: Robert Dickenson Date: Fri, 17 Oct 2003 09:17:59 +0000 Subject: [PATCH] Minor progress to bring ros-ddk headers closer to the latest mingw-ddk headers. Tested some dependant targets and found no build problems. svn path=/trunk/; revision=6342 --- reactos/include/net/ndis.h | 983 +++++++++++++++++---------------- reactos/include/net/ndisoid.h | 150 +---- reactos/include/net/netevent.h | 38 +- reactos/include/net/ntddndis.h | 192 ++++++- reactos/include/net/tdi.h | 270 +++++---- reactos/include/net/tdiinfo.h | 157 +++--- reactos/include/net/tdikrnl.h | 500 ++++++++++++++--- reactos/include/net/tdistat.h | 83 +++ 8 files changed, 1489 insertions(+), 884 deletions(-) create mode 100644 reactos/include/net/tdistat.h diff --git a/reactos/include/net/ndis.h b/reactos/include/net/ndis.h index 2bdf10ba0a5..54609ebb8ff 100644 --- a/reactos/include/net/ndis.h +++ b/reactos/include/net/ndis.h @@ -40,10 +40,15 @@ #ifndef __NDIS_H #define __NDIS_H +#if __GNUC__ >=3 +#pragma GCC system_header +#endif + #ifdef __cplusplus -extern "C" -{ -#endif /* __cplusplus */ +extern "C" { +#endif + +#pragma pack(push,4) #ifdef NDIS50 #undef NDIS40 @@ -62,17 +67,17 @@ extern "C" #ifdef NDIS_WRAPPER #ifdef _MSC_VER -#define EXPIMP __declspec(dllexport) +#define DDKAPI __declspec(dllexport) #else -#define EXPIMP STDCALL /* MS ndis.h is 100% stdcall due to compiler flag /Gz */ +#define DDKAPI STDCALL /* MS ndis.h is 100% stdcall due to compiler flag /Gz */ #endif #else /* NDIS_WRAPPER */ #ifdef _MSC_VER -#define EXPIMP __declspec(dllimport) +#define DDKAPI __declspec(dllimport) #else -#define EXPIMP STDCALL +#define DDKAPI STDCALL #endif #endif /* NDIS_WRAPPER */ @@ -249,14 +254,12 @@ typedef struct _GUID { /* NDIS base types */ -typedef struct _NDIS_SPIN_LOCK -{ +typedef struct _NDIS_SPIN_LOCK { KSPIN_LOCK SpinLock; KIRQL OldIrql; } NDIS_SPIN_LOCK, * PNDIS_SPIN_LOCK; -typedef struct _NDIS_EVENT -{ +typedef struct _NDIS_EVENT { KEVENT Event; } NDIS_EVENT, *PNDIS_EVENT; @@ -274,7 +277,6 @@ typedef MDL NDIS_BUFFER, *PNDIS_BUFFER; #define NDIS_STATUS_NOT_COPIED ((NDIS_STATUS)0x00010002L) #define NDIS_STATUS_NOT_ACCEPTED ((NDIS_STATUS)0x00010003L) #define NDIS_STATUS_CALL_ACTIVE ((NDIS_STATUS)0x00010007L) - #define NDIS_STATUS_ONLINE ((NDIS_STATUS)0x40010003L) #define NDIS_STATUS_RESET_START ((NDIS_STATUS)0x40010004L) #define NDIS_STATUS_RESET_END ((NDIS_STATUS)0x40010005L) @@ -366,7 +368,7 @@ typedef MDL NDIS_BUFFER, *PNDIS_BUFFER; #define NDIS_ERROR_CODE_ADAPTER_DISABLED EVENT_NDIS_ADAPTER_DISABLED -/* Memory allocation flags. Used by Ndis(Allocate|Free)Memory */ +/* Memory allocation flags. Used by Ndis[Allocate|Free]Memory */ #define NDIS_MEMORY_CONTIGUOUS 0x00000001 #define NDIS_MEMORY_NONCACHED 0x00000002 @@ -379,25 +381,18 @@ typedef MDL NDIS_BUFFER, *PNDIS_BUFFER; #define NDIS_ATTRIBUTE_DESERIALIZE 0x00000020 - #define MAXIMUM_PROCESSORS 32 - - /* Lock */ -typedef union _NDIS_RW_LOCK_REFCOUNT -{ +typedef union _NDIS_RW_LOCK_REFCOUNT { UINT RefCount; UCHAR cacheLine[16]; } NDIS_RW_LOCK_REFCOUNT; -typedef struct _NDIS_RW_LOCK -{ - union - { - struct - { +typedef struct _NDIS_RW_LOCK { + union { + struct { KSPIN_LOCK SpinLock; PVOID Context; } s; @@ -407,8 +402,7 @@ typedef struct _NDIS_RW_LOCK NDIS_RW_LOCK_REFCOUNT RefCount[MAXIMUM_PROCESSORS]; } NDIS_RW_LOCK, *PNDIS_RW_LOCK; -typedef struct _LOCK_STATE -{ +typedef struct _LOCK_STATE { USHORT LockState; KIRQL OldIrql; } LOCK_STATE, *PLOCK_STATE; @@ -417,27 +411,27 @@ typedef struct _LOCK_STATE /* Timer */ -typedef VOID (*PNDIS_TIMER_FUNCTION)( +typedef VOID +(*PNDIS_TIMER_FUNCTION)( IN PVOID SystemSpecific1, IN PVOID FunctionContext, IN PVOID SystemSpecific2, IN PVOID SystemSpecific3); -typedef struct _NDIS_TIMER -{ +typedef struct _NDIS_TIMER { KTIMER Timer; KDPC Dpc; } NDIS_TIMER, *PNDIS_TIMER; VOID -EXPIMP +DDKAPI NdisInitializeTimer( IN OUT PNDIS_TIMER Timer, IN PNDIS_TIMER_FUNCTION TimerFunction, IN PVOID FunctionContext); VOID -EXPIMP +DDKAPI NdisSetTimer( IN PNDIS_TIMER Timer, IN UINT MillisecondsToDelay); @@ -450,8 +444,7 @@ typedef CM_EISA_FUNCTION_INFORMATION NDIS_EISA_FUNCTION_INFORMATION, *PNDIS_EISA typedef CM_PARTIAL_RESOURCE_LIST NDIS_RESOURCE_LIST, *PNDIS_RESOURCE_LIST; /* Hardware status codes (OID_GEN_HARDWARE_STATUS) */ -typedef enum _NDIS_HARDWARE_STATUS -{ +typedef enum _NDIS_HARDWARE_STATUS { NdisHardwareStatusReady, NdisHardwareStatusInitializing, NdisHardwareStatusReset, @@ -460,8 +453,7 @@ typedef enum _NDIS_HARDWARE_STATUS } NDIS_HARDWARE_STATUS, *PNDIS_HARDWARE_STATUS; /* OID_GEN_GET_TIME_CAPS */ -typedef struct _GEN_GET_TIME_CAPS -{ +typedef struct _GEN_GET_TIME_CAPS { ULONG Flags; ULONG ClockPrecision; } GEN_GET_TIME_CAPS, *PGEN_GET_TIME_CAPS; @@ -475,14 +467,12 @@ typedef struct _GEN_GET_TIME_CAPS #define TIME_STAMP_CAPABLE 0x00000020 /* OID_GEN_GET_NETCARD_TIME */ -typedef struct _GEN_GET_NETCARD_TIME -{ +typedef struct _GEN_GET_NETCARD_TIME { ULONGLONG ReadTime; } GEN_GET_NETCARD_TIME, *PGEN_GET_NETCARD_TIME; /* NDIS driver medium (OID_GEN_MEDIA_SUPPORTED / OID_GEN_MEDIA_IN_USE) */ -typedef enum _NDIS_MEDIUM -{ +typedef enum _NDIS_MEDIUM { NdisMedium802_3, NdisMedium802_5, NdisMediumFddi, @@ -530,18 +520,15 @@ typedef enum _NDIS_MEDIUM #define NDIS_MAC_OPTION_RESERVED 0x80000000 /* State of the LAN media (OID_GEN_MEDIA_CONNECT_STATUS) */ -typedef enum _NDIS_MEDIA_STATE -{ +typedef enum _NDIS_MEDIA_STATE { NdisMediaStateConnected, NdisMediaStateDisconnected } NDIS_MEDIA_STATE, *PNDIS_MEDIA_STATE; /* OID_GEN_SUPPORTED_GUIDS */ -typedef struct _NDIS_GUID -{ +typedef struct _NDIS_GUID { GUID Guid; - union - { + union { NDIS_OID Oid; NDIS_STATUS Status; } u; @@ -556,17 +543,14 @@ typedef struct _NDIS_GUID #define NDIS_GUID_ARRAY 0x00000010 - -typedef struct _NDIS_PACKET_POOL -{ +typedef struct _NDIS_PACKET_POOL { NDIS_SPIN_LOCK SpinLock; struct _NDIS_PACKET *FreeList; UINT PacketLength; UCHAR Buffer[1]; } NDIS_PACKET_POOL, * PNDIS_PACKET_POOL; -typedef struct _NDIS_PACKET_PRIVATE -{ +typedef struct _NDIS_PACKET_PRIVATE { UINT PhysicalCount; UINT TotalLength; PNDIS_BUFFER Head; @@ -613,8 +597,7 @@ typedef struct _NDIS_PACKET_OOB_DATA { NDIS_STATUS Status; } NDIS_PACKET_OOB_DATA, *PNDIS_PACKET_OOB_DATA; -typedef struct _NDIS_PM_PACKET_PATTERN -{ +typedef struct _NDIS_PM_PACKET_PATTERN { ULONG Priority; ULONG Reserved; ULONG MaskSize; @@ -625,8 +608,7 @@ typedef struct _NDIS_PM_PACKET_PATTERN /* Request types used by NdisRequest */ -typedef enum _NDIS_REQUEST_TYPE -{ +typedef enum _NDIS_REQUEST_TYPE { NdisRequestQueryInformation, NdisRequestSetInformation, NdisRequestQueryStatistics, @@ -674,8 +656,7 @@ typedef struct _NDIS_REQUEST { /* Wide Area Networks definitions */ -typedef struct _NDIS_WAN_PACKET -{ +typedef struct _NDIS_WAN_PACKET { LIST_ENTRY WanPacketQueue; PUCHAR CurrentBuffer; ULONG CurrentLength; @@ -695,8 +676,7 @@ typedef struct _NDIS_WAN_PACKET /* DMA channel information */ -typedef struct _NDIS_DMA_DESCRIPTION -{ +typedef struct _NDIS_DMA_DESCRIPTION { BOOLEAN DemandMode; BOOLEAN AutoInitialize; BOOLEAN DmaChannelSpecified; @@ -706,8 +686,7 @@ typedef struct _NDIS_DMA_DESCRIPTION ULONG DmaChannel; } NDIS_DMA_DESCRIPTION, *PNDIS_DMA_DESCRIPTION; -typedef struct _NDIS_DMA_BLOCK -{ +typedef struct _NDIS_DMA_BLOCK { PVOID MapRegisterBase; KEVENT AllocationEvent; PADAPTER_OBJECT SystemAdapterObject; @@ -719,8 +698,7 @@ typedef struct _NDIS_DMA_BLOCK #define NDIS_DMA_64BITS 2 /* Possible hardware architecture */ -typedef enum _NDIS_INTERFACE_TYPE -{ +typedef enum _NDIS_INTERFACE_TYPE { NdisInterfaceInternal = Internal, NdisInterfaceIsa = Isa, NdisInterfaceEisa = Eisa, @@ -734,22 +712,19 @@ typedef enum _NDIS_INTERFACE_TYPE #define NdisInterruptLatched Latched typedef KINTERRUPT_MODE NDIS_INTERRUPT_MODE, *PNDIS_INTERRUPT_MODE; -typedef enum _NDIS_PROCESSOR_TYPE -{ +typedef enum _NDIS_PROCESSOR_TYPE { NdisProcessorX86, NdisProcessorMips, NdisProcessorAlpha, NdisProcessorPpc } NDIS_PROCESSOR_TYPE, *PNDIS_PROCESSOR_TYPE; -typedef enum _NDIS_ENVIRONMENT_TYPE -{ +typedef enum _NDIS_ENVIRONMENT_TYPE { NdisEnvironmentWindows, NdisEnvironmentWindowsNt } NDIS_ENVIRONMENT_TYPE, *PNDIS_ENVIRONMENT_TYPE; -typedef enum _NDIS_PARAMETER_TYPE -{ +typedef enum _NDIS_PARAMETER_TYPE { NdisParameterInteger, NdisParameterHexInteger, NdisParameterString, @@ -757,33 +732,31 @@ typedef enum _NDIS_PARAMETER_TYPE NdisParameterBinary } NDIS_PARAMETER_TYPE, *PNDIS_PARAMETER_TYPE; -typedef struct -{ +typedef struct { USHORT Length; PVOID Buffer; } BINARY_DATA; -typedef struct _NDIS_CONFIGURATION_PARAMETER -{ +typedef struct _NDIS_CONFIGURATION_PARAMETER { NDIS_PARAMETER_TYPE ParameterType; - union - { + union { ULONG IntegerData; NDIS_STRING StringData; BINARY_DATA BinaryData; } ParameterData; } NDIS_CONFIGURATION_PARAMETER, *PNDIS_CONFIGURATION_PARAMETER; + typedef PHYSICAL_ADDRESS NDIS_PHYSICAL_ADDRESS, *PNDIS_PHYSICAL_ADDRESS; -typedef struct _NDIS_PHYSICAL_ADDRESS_UNIT -{ +typedef struct _NDIS_PHYSICAL_ADDRESS_UNIT { NDIS_PHYSICAL_ADDRESS PhysicalAddress; UINT Length; } NDIS_PHYSICAL_ADDRESS_UNIT, *PNDIS_PHYSICAL_ADDRESS_UNIT; -typedef VOID STDCALL (*ADAPTER_SHUTDOWN_HANDLER)( +typedef VOID STDCALL +(*ADAPTER_SHUTDOWN_HANDLER)( IN PVOID ShutdownContext); @@ -794,8 +767,7 @@ typedef struct _OID_LIST OID_LIST, *POID_LIST; /* PnP state */ -typedef enum _NDIS_PNP_DEVICE_STATE -{ +typedef enum _NDIS_PNP_DEVICE_STATE { NdisPnPDeviceAdded, NdisPnPDeviceStarted, NdisPnPDeviceQueryStopped, @@ -819,15 +791,13 @@ typedef struct _ATM_ADDRESS ATM_ADDRESS, *PATM_ADDRESS; /* OID_GEN_NETWORK_LAYER_ADDRESSES */ -typedef struct _NETWORK_ADDRESS -{ +typedef struct _NETWORK_ADDRESS { USHORT AddressLength; USHORT AddressType; UCHAR Address[1]; } NETWORK_ADDRESS, *PNETWORK_ADDRESS; -typedef struct _NETWORK_ADDRESS_LIST -{ +typedef struct _NETWORK_ADDRESS_LIST { LONG AddressCount; USHORT AddressType; NETWORK_ADDRESS Address[1]; @@ -841,44 +811,39 @@ typedef struct _NETWORK_ADDRESS_LIST #define NDIS_PROTOCOL_ID_MAX 0x0F #define NDIS_PROTOCOL_ID_MASK 0x0F + /* OID_GEN_TRANSPORT_HEADER_OFFSET */ -typedef struct _TRANSPORT_HEADER_OFFSET -{ +typedef struct _TRANSPORT_HEADER_OFFSET { USHORT ProtocolType; USHORT HeaderOffset; } TRANSPORT_HEADER_OFFSET, *PTRANSPORT_HEADER_OFFSET; /* OID_GEN_CO_LINK_SPEED / OID_GEN_CO_MINIMUM_LINK_SPEED */ -typedef struct _NDIS_CO_LINK_SPEED -{ +typedef struct _NDIS_CO_LINK_SPEED { ULONG Outbound; ULONG Inbound; } NDIS_CO_LINK_SPEED, *PNDIS_CO_LINK_SPEED; -typedef enum _NDIS_AF -{ +typedef enum _NDIS_AF { CO_ADDRESS_FAMILY_Q2931 = 1, CO_ADDRESS_FAMILY_SPANS, } NDIS_AF, *PNDIS_AF; -typedef struct -{ +typedef struct { NDIS_AF AddressFamily; ULONG MajorVersion; ULONG MinorVersion; } CO_ADDRESS_FAMILY, *PCO_ADDRESS_FAMILY; -typedef enum -{ +typedef enum { BestEffortService, PredictiveService, GuaranteedService } GUARANTEE; -typedef struct _CO_FLOW_PARAMETERS -{ +typedef struct _CO_FLOW_PARAMETERS { ULONG TokenRate; /* In Bytes/sec */ ULONG TokenBucketSize; /* In Bytes */ ULONG PeakBandwidth; /* In Bytes/sec */ @@ -891,8 +856,7 @@ typedef struct _CO_FLOW_PARAMETERS ULONG MaxSduSize; /* In Bytes */ } CO_FLOW_PARAMETERS, *PCO_FLOW_PARAMETERS; -typedef struct _CO_SPECIFIC_PARAMETERS -{ +typedef struct _CO_SPECIFIC_PARAMETERS { ULONG ParamType; ULONG Length; UCHAR Parameters[1]; @@ -904,15 +868,7 @@ typedef struct _CO_CALL_MANAGER_PARAMETERS { CO_SPECIFIC_PARAMETERS CallMgrSpecific; } CO_CALL_MANAGER_PARAMETERS, *PCO_CALL_MANAGER_PARAMETERS; -typedef struct _CO_MEDIA_PARAMETERS -{ - ULONG Flags; - ULONG ReceivePriority; - ULONG ReceiveSizeHint; - CO_SPECIFIC_PARAMETERS MediaSpecific; -} CO_MEDIA_PARAMETERS, *PCO_MEDIA_PARAMETERS; - -/* Definitions for the flags in CO_MEDIA_PARAMETERS */ +/* CO_MEDIA_PARAMETERS.Flags constants */ #define RECEIVE_TIME_INDICATION 0x00000001 #define USE_TIME_STAMPS 0x00000002 #define TRANSMIT_VC 0x00000004 @@ -923,8 +879,14 @@ typedef struct _CO_MEDIA_PARAMETERS #define ROUND_DOWN_FLOW 0x00000080 #define ROUND_UP_FLOW 0x00000100 -typedef struct _CO_CALL_PARAMETERS -{ +typedef struct _CO_MEDIA_PARAMETERS { + ULONG Flags; + ULONG ReceivePriority; + ULONG ReceiveSizeHint; + CO_SPECIFIC_PARAMETERS MediaSpecific; +} CO_MEDIA_PARAMETERS, *PCO_MEDIA_PARAMETERS; + +typedef struct _CO_CALL_PARAMETERS { ULONG Flags; PCO_CALL_MANAGER_PARAMETERS CallMgrParameters; PCO_MEDIA_PARAMETERS MediaParameters; @@ -936,18 +898,13 @@ typedef struct _CO_SAP { UCHAR Sap[1]; } CO_SAP, *PCO_SAP; -typedef struct _NDIS_IPSEC_PACKET_INFO -{ - union - { - struct - { +typedef struct _NDIS_IPSEC_PACKET_INFO { + union { + struct { NDIS_HANDLE OffloadHandle; NDIS_HANDLE NextOffloadHandle; } Transmit; - - struct - { + struct { ULONG SA_DELETE_REQ:1; ULONG CRYPTO_DONE:1; ULONG NEXT_CRYPTO_DONE:1; @@ -960,8 +917,7 @@ typedef struct _NDIS_IPSEC_PACKET_INFO /* Plug and play and power management */ /* PnP and PM event codes */ -typedef enum _NET_PNP_EVENT_CODE -{ +typedef enum _NET_PNP_EVENT_CODE { NetEventSetPower, NetEventQueryPower, NetEventQueryRemoveDevice, @@ -974,8 +930,7 @@ typedef enum _NET_PNP_EVENT_CODE } NET_PNP_EVENT_CODE, *PNET_PNP_EVENT_CODE; /* Networking PnP event indication structure */ -typedef struct _NET_PNP_EVENT -{ +typedef struct _NET_PNP_EVENT { /* Event code */ NET_PNP_EVENT_CODE NetEvent; /* Event specific data */ @@ -991,8 +946,7 @@ typedef struct _NET_PNP_EVENT } NET_PNP_EVENT, *PNET_PNP_EVENT; /* Device power state structure */ -typedef enum _NET_DEVICE_POWER_STATE -{ +typedef enum _NET_DEVICE_POWER_STATE { NetDeviceStateUnspecified = 0, NetDeviceStateD0, NetDeviceStateD1, @@ -1036,50 +990,50 @@ typedef NDIS_STATUS STDCALL (*CM_OPEN_AF_HANDLER)( typedef NDIS_STATUS -STDCALL (*CM_CLOSE_AF_HANDLER)( - IN NDIS_HANDLE CallMgrAfContext - ); +STDCALL +(*CM_CLOSE_AF_HANDLER)( + IN NDIS_HANDLE CallMgrAfContext); typedef NDIS_STATUS -STDCALL (*CM_REG_SAP_HANDLER)( +STDCALL +(*CM_REG_SAP_HANDLER)( IN NDIS_HANDLE CallMgrAfContext, IN PCO_SAP Sap, IN NDIS_HANDLE NdisSapHandle, - OUT PNDIS_HANDLE CallMgrSapContext - ); + OUT PNDIS_HANDLE CallMgrSapContext); typedef NDIS_STATUS -STDCALL (*CM_DEREG_SAP_HANDLER)( - IN NDIS_HANDLE CallMgrSapContext - ); +STDCALL +(*CM_DEREG_SAP_HANDLER)( + IN NDIS_HANDLE CallMgrSapContext); typedef NDIS_STATUS -STDCALL (*CM_MAKE_CALL_HANDLER)( +STDCALL +(*CM_MAKE_CALL_HANDLER)( IN NDIS_HANDLE CallMgrVcContext, IN OUT PCO_CALL_PARAMETERS CallParameters, IN NDIS_HANDLE NdisPartyHandle OPTIONAL, - OUT PNDIS_HANDLE CallMgrPartyContext OPTIONAL - ); + OUT PNDIS_HANDLE CallMgrPartyContext OPTIONAL); typedef NDIS_STATUS -STDCALL (*CM_CLOSE_CALL_HANDLER)( +STDCALL +(*CM_CLOSE_CALL_HANDLER)( IN NDIS_HANDLE CallMgrVcContext, IN NDIS_HANDLE CallMgrPartyContext OPTIONAL, IN PVOID CloseData OPTIONAL, - IN UINT Size OPTIONAL - ); + IN UINT Size OPTIONAL); typedef VOID -STDCALL (*CM_INCOMING_CALL_COMPLETE_HANDLER)( +STDCALL +(*CM_INCOMING_CALL_COMPLETE_HANDLER)( IN NDIS_STATUS Status, IN NDIS_HANDLE CallMgrVcContext, - IN PCO_CALL_PARAMETERS CallParameters - ); + IN PCO_CALL_PARAMETERS CallParameters); typedef NDIS_STATUS @@ -1115,19 +1069,16 @@ STDCALL (*CM_DEACTIVATE_VC_COMPLETE_HANDLER)( typedef NDIS_STATUS -STDCALL (*CM_MODIFY_CALL_QOS_HANDLER)( +STDCALL +(*CM_MODIFY_CALL_QOS_HANDLER)( IN NDIS_HANDLE CallMgrVcContext, - IN PCO_CALL_PARAMETERS CallParameters - ); + IN PCO_CALL_PARAMETERS CallParameters); -typedef struct _NDIS_CALL_MANAGER_CHARACTERISTICS -{ +typedef struct _NDIS_CALL_MANAGER_CHARACTERISTICS { UCHAR MajorVersion; UCHAR MinorVersion; - USHORT Filler; UINT Reserved; - CO_CREATE_VC_HANDLER CmCreateVcHandler; CO_DELETE_VC_HANDLER CmDeleteVcHandler; CM_OPEN_AF_HANDLER CmOpenAfHandler; @@ -1155,79 +1106,89 @@ typedef VOID STDCALL (*CL_OPEN_AF_COMPLETE_HANDLER)( IN NDIS_HANDLE ProtocolAfContext, IN NDIS_HANDLE NdisAfHandle); -typedef VOID STDCALL (*CL_CLOSE_AF_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*CL_CLOSE_AF_COMPLETE_HANDLER)( IN NDIS_STATUS Status, IN NDIS_HANDLE ProtocolAfContext); -typedef VOID STDCALL (*CL_REG_SAP_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*CL_REG_SAP_COMPLETE_HANDLER)( IN NDIS_STATUS Status, IN NDIS_HANDLE ProtocolSapContext, IN PCO_SAP Sap, IN NDIS_HANDLE NdisSapHandle); -typedef VOID STDCALL (*CL_DEREG_SAP_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*CL_DEREG_SAP_COMPLETE_HANDLER)( IN NDIS_STATUS Status, IN NDIS_HANDLE ProtocolSapContext); -typedef VOID STDCALL (*CL_MAKE_CALL_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*CL_MAKE_CALL_COMPLETE_HANDLER)( IN NDIS_STATUS Status, IN NDIS_HANDLE ProtocolVcContext, IN NDIS_HANDLE NdisPartyHandle OPTIONAL, IN PCO_CALL_PARAMETERS CallParameters); -typedef VOID STDCALL (*CL_MODIFY_CALL_QOS_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*CL_MODIFY_CALL_QOS_COMPLETE_HANDLER)( IN NDIS_STATUS Status, IN NDIS_HANDLE ProtocolVcContext, IN PCO_CALL_PARAMETERS CallParameters); -typedef VOID STDCALL (*CL_CLOSE_CALL_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*CL_CLOSE_CALL_COMPLETE_HANDLER)( IN NDIS_STATUS Status, IN NDIS_HANDLE ProtocolVcContext, IN NDIS_HANDLE ProtocolPartyContext OPTIONAL); -typedef VOID STDCALL (*CL_ADD_PARTY_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*CL_ADD_PARTY_COMPLETE_HANDLER)( IN NDIS_STATUS Status, IN NDIS_HANDLE ProtocolPartyContext, IN NDIS_HANDLE NdisPartyHandle, IN PCO_CALL_PARAMETERS CallParameters); -typedef VOID STDCALL (*CL_DROP_PARTY_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*CL_DROP_PARTY_COMPLETE_HANDLER)( IN NDIS_STATUS Status, IN NDIS_HANDLE ProtocolPartyContext); -typedef NDIS_STATUS STDCALL (*CL_INCOMING_CALL_HANDLER)( +typedef NDIS_STATUS STDCALL +(*CL_INCOMING_CALL_HANDLER)( IN NDIS_HANDLE ProtocolSapContext, IN NDIS_HANDLE ProtocolVcContext, IN OUT PCO_CALL_PARAMETERS CallParameters); -typedef VOID STDCALL (*CL_INCOMING_CALL_QOS_CHANGE_HANDLER)( +typedef VOID STDCALL +(*CL_INCOMING_CALL_QOS_CHANGE_HANDLER)( IN NDIS_HANDLE ProtocolVcContext, IN PCO_CALL_PARAMETERS CallParameters); -typedef VOID STDCALL (*CL_INCOMING_CLOSE_CALL_HANDLER)( +typedef VOID STDCALL +(*CL_INCOMING_CLOSE_CALL_HANDLER)( IN NDIS_STATUS CloseStatus, IN NDIS_HANDLE ProtocolVcContext, IN PVOID CloseData OPTIONAL, IN UINT Size OPTIONAL); -typedef VOID STDCALL (*CL_INCOMING_DROP_PARTY_HANDLER)( +typedef VOID STDCALL +(*CL_INCOMING_DROP_PARTY_HANDLER)( IN NDIS_STATUS DropStatus, IN NDIS_HANDLE ProtocolPartyContext, IN PVOID CloseData OPTIONAL, IN UINT Size OPTIONAL); -typedef VOID STDCALL (*CL_CALL_CONNECTED_HANDLER)( +typedef VOID STDCALL +(*CL_CALL_CONNECTED_HANDLER)( IN NDIS_HANDLE ProtocolVcContext); -typedef struct _NDIS_CLIENT_CHARACTERISTICS -{ +typedef struct _NDIS_CLIENT_CHARACTERISTICS { UCHAR MajorVersion; UCHAR MinorVersion; - USHORT Filler; UINT Reserved; - CO_CREATE_VC_HANDLER ClCreateVcHandler; CO_DELETE_VC_HANDLER ClDeleteVcHandler; CO_REQUEST_HANDLER ClRequestHandler; @@ -1249,58 +1210,68 @@ typedef struct _NDIS_CLIENT_CHARACTERISTICS } NDIS_CLIENT_CHARACTERISTICS, *PNDIS_CLIENT_CHARACTERISTICS; - /* NDIS protocol structures */ /* Prototypes for NDIS 3.0 protocol characteristics */ -typedef VOID STDCALL (*OPEN_ADAPTER_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*OPEN_ADAPTER_COMPLETE_HANDLER)( IN NDIS_HANDLE ProtocolBindingContext, IN NDIS_STATUS Status, IN NDIS_STATUS OpenErrorStatus); -typedef VOID STDCALL (*CLOSE_ADAPTER_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*CLOSE_ADAPTER_COMPLETE_HANDLER)( IN NDIS_HANDLE ProtocolBindingContext, IN NDIS_STATUS Status); -typedef VOID STDCALL (*RESET_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*RESET_COMPLETE_HANDLER)( IN NDIS_HANDLE ProtocolBindingContext, IN NDIS_STATUS Status); -typedef VOID STDCALL (*REQUEST_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*REQUEST_COMPLETE_HANDLER)( IN NDIS_HANDLE ProtocolBindingContext, IN PNDIS_REQUEST NdisRequest, IN NDIS_STATUS Status); -typedef VOID STDCALL (*STATUS_HANDLER)( +typedef VOID STDCALL +(*STATUS_HANDLER)( IN NDIS_HANDLE ProtocolBindingContext, IN NDIS_STATUS GeneralStatus, IN PVOID StatusBuffer, IN UINT StatusBufferSize); -typedef VOID STDCALL (*STATUS_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*STATUS_COMPLETE_HANDLER)( IN NDIS_HANDLE ProtocolBindingContext); -typedef VOID STDCALL (*SEND_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*SEND_COMPLETE_HANDLER)( IN NDIS_HANDLE ProtocolBindingContext, IN PNDIS_PACKET Packet, IN NDIS_STATUS Status); -typedef VOID STDCALL (*WAN_SEND_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*WAN_SEND_COMPLETE_HANDLER)( IN NDIS_HANDLE ProtocolBindingContext, IN PNDIS_WAN_PACKET Packet, IN NDIS_STATUS Status); -typedef VOID STDCALL (*TRANSFER_DATA_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*TRANSFER_DATA_COMPLETE_HANDLER)( IN NDIS_HANDLE ProtocolBindingContext, IN PNDIS_PACKET Packet, IN NDIS_STATUS Status, IN UINT BytesTransferred); -typedef VOID STDCALL (*WAN_TRANSFER_DATA_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*WAN_TRANSFER_DATA_COMPLETE_HANDLER)( VOID); -typedef NDIS_STATUS STDCALL (*RECEIVE_HANDLER)( +typedef NDIS_STATUS STDCALL +(*RECEIVE_HANDLER)( IN NDIS_HANDLE ProtocolBindingContext, IN NDIS_HANDLE MacReceiveContext, IN PVOID HeaderBuffer, @@ -1309,19 +1280,20 @@ typedef NDIS_STATUS STDCALL (*RECEIVE_HANDLER)( IN UINT LookaheadBufferSize, IN UINT PacketSize); -typedef NDIS_STATUS STDCALL (*WAN_RECEIVE_HANDLER)( +typedef NDIS_STATUS STDCALL +(*WAN_RECEIVE_HANDLER)( IN NDIS_HANDLE NdisLinkHandle, IN PUCHAR Packet, IN ULONG PacketSize); -typedef VOID STDCALL (*RECEIVE_COMPLETE_HANDLER)( +typedef VOID STDCALL +(*RECEIVE_COMPLETE_HANDLER)( IN NDIS_HANDLE ProtocolBindingContext); /* Protocol characteristics for NDIS 3.0 protocols */ #ifdef _MSC_VER -typedef struct _NDIS30_PROTOCOL_CHARACTERISTICS -{ +typedef struct _NDIS30_PROTOCOL_CHARACTERISTICS { UCHAR MajorNdisVersion; UCHAR MinorNdisVersion; union @@ -1395,37 +1367,41 @@ typedef struct _NDIS30_PROTOCOL_CHARACTERISTICS_S /* Prototypes for NDIS 4.0 protocol characteristics */ -typedef INT STDCALL (*RECEIVE_PACKET_HANDLER)( +typedef INT STDCALL +(*RECEIVE_PACKET_HANDLER)( IN NDIS_HANDLE ProtocolBindingContext, IN PNDIS_PACKET Packet); -typedef VOID STDCALL (*BIND_HANDLER)( +typedef VOID STDCALL +(*BIND_HANDLER)( OUT PNDIS_STATUS Status, IN NDIS_HANDLE BindContext, IN PNDIS_STRING DeviceName, IN PVOID SystemSpecific1, IN PVOID SystemSpecific2); -typedef VOID STDCALL (*UNBIND_HANDLER)( +typedef VOID STDCALL +(*UNBIND_HANDLER)( OUT PNDIS_STATUS Status, IN NDIS_HANDLE ProtocolBindingContext, IN NDIS_HANDLE UnbindContext); -typedef VOID STDCALL (*TRANSLATE_HANDLER)( +typedef VOID STDCALL +(*TRANSLATE_HANDLER)( OUT PNDIS_STATUS Status, IN NDIS_HANDLE ProtocolBindingContext, OUT PNET_PNP_ID IdList, IN ULONG IdListLength, OUT PULONG BytesReturned); -typedef VOID STDCALL (*UNLOAD_PROTOCOL_HANDLER)( +typedef VOID STDCALL +(*UNLOAD_PROTOCOL_HANDLER)( VOID); /* Protocol characteristics for NDIS 4.0 protocols */ #ifdef _MSC_VER -typedef struct _NDIS40_PROTOCOL_CHARACTERISTICS -{ +typedef struct _NDIS40_PROTOCOL_CHARACTERISTICS { NDIS30_PROTOCOL_CHARACTERISTICS; RECEIVE_PACKET_HANDLER ReceivePacketHandler; @@ -1530,7 +1506,7 @@ typedef NDIS_PROTOCOL_CHARACTERISTICS *PNDIS_PROTOCOL_CHARACTERISTICS; /* Buffer management routines */ VOID -EXPIMP +DDKAPI NdisAllocateBuffer( OUT PNDIS_STATUS Status, OUT PNDIS_BUFFER *Buffer, @@ -1539,21 +1515,21 @@ NdisAllocateBuffer( IN UINT Length); VOID -EXPIMP +DDKAPI NdisAllocateBufferPool( OUT PNDIS_STATUS Status, OUT PNDIS_HANDLE PoolHandle, IN UINT NumberOfDescriptors); VOID -EXPIMP +DDKAPI NdisAllocatePacket( OUT PNDIS_STATUS Status, OUT PNDIS_PACKET *Packet, IN NDIS_HANDLE PoolHandle); VOID -EXPIMP +DDKAPI NdisAllocatePacketPool( OUT PNDIS_STATUS Status, OUT PNDIS_HANDLE PoolHandle, @@ -1561,7 +1537,7 @@ NdisAllocatePacketPool( IN UINT ProtocolReservedLength); VOID -EXPIMP +DDKAPI NdisCopyBuffer( OUT PNDIS_STATUS Status, OUT PNDIS_BUFFER *Buffer, @@ -1571,7 +1547,7 @@ NdisCopyBuffer( IN UINT Length); VOID -EXPIMP +DDKAPI NdisCopyFromPacketToPacket( IN PNDIS_PACKET Destination, IN UINT DestinationOffset, @@ -1581,58 +1557,58 @@ NdisCopyFromPacketToPacket( OUT PUINT BytesCopied); VOID -EXPIMP +DDKAPI NdisDprAllocatePacket( OUT PNDIS_STATUS Status, OUT PNDIS_PACKET *Packet, IN NDIS_HANDLE PoolHandle); VOID -EXPIMP +DDKAPI NdisDprAllocatePacketNonInterlocked( OUT PNDIS_STATUS Status, OUT PNDIS_PACKET *Packet, IN NDIS_HANDLE PoolHandle); VOID -EXPIMP +DDKAPI NdisDprFreePacket( IN PNDIS_PACKET Packet); VOID -EXPIMP +DDKAPI NdisDprFreePacketNonInterlocked( IN PNDIS_PACKET Packet); VOID -EXPIMP +DDKAPI NdisFreeBufferPool( IN NDIS_HANDLE PoolHandle); VOID -EXPIMP +DDKAPI NdisFreePacket( IN PNDIS_PACKET Packet); VOID -EXPIMP +DDKAPI NdisFreePacketPool( IN NDIS_HANDLE PoolHandle); VOID -EXPIMP +DDKAPI NdisReturnPackets( IN PNDIS_PACKET *PacketsToReturn, IN UINT NumberOfPackets); VOID -EXPIMP +DDKAPI NdisUnchainBufferAtBack( IN OUT PNDIS_PACKET Packet, OUT PNDIS_BUFFER *Buffer); VOID -EXPIMP +DDKAPI NdisUnchainBufferAtFront( IN OUT PNDIS_PACKET Packet, OUT PNDIS_BUFFER *Buffer); @@ -1643,7 +1619,7 @@ NdisUnchainBufferAtFront( * IN UINT Length); */ VOID -EXPIMP +DDKAPI NdisAdjustBufferLength( IN PNDIS_BUFFER Buffer, IN UINT Length); @@ -1653,12 +1629,12 @@ NdisAdjustBufferLength( * IN PNDIS_BUFFER Buffer); */ ULONG -EXPIMP +DDKAPI NDIS_BUFFER_TO_SPAN_PAGES( IN PNDIS_BUFFER Buffer); VOID -EXPIMP +DDKAPI NdisFreeBuffer( IN PNDIS_BUFFER Buffer); @@ -1670,7 +1646,7 @@ NdisFreeBuffer( * OUT PUINT ArraySize); */ VOID -EXPIMP +DDKAPI NdisGetBufferPhysicalArraySize( IN PNDIS_BUFFER Buffer, OUT PUINT ArraySize); @@ -1684,7 +1660,7 @@ NdisGetBufferPhysicalArraySize( * OUT PUINT _TotalBufferLength) */ VOID -EXPIMP +DDKAPI NdisGetFirstBufferFromPacket( IN PNDIS_PACKET _Packet, OUT PNDIS_BUFFER * _FirstBuffer, @@ -1693,14 +1669,14 @@ NdisGetFirstBufferFromPacket( OUT PUINT _TotalBufferLength); VOID -EXPIMP +DDKAPI NdisQueryBuffer( IN PNDIS_BUFFER Buffer, OUT PVOID *VirtualAddress OPTIONAL, OUT PUINT Length); VOID -EXPIMP +DDKAPI NdisQueryBufferOffset( IN PNDIS_BUFFER Buffer, OUT PUINT Offset, @@ -1911,7 +1887,7 @@ NdisQueryBufferOffset( } VOID -EXPIMP +DDKAPI NdisReinitializePacket( IN OUT PNDIS_PACKET Packet); @@ -2007,40 +1983,40 @@ NdisReinitializePacket( /* Memory management routines */ VOID -EXPIMP +DDKAPI NdisCreateLookaheadBufferFromSharedMemory( IN PVOID pSharedMemory, IN UINT LookaheadLength, OUT PVOID *pLookaheadBuffer); VOID -EXPIMP +DDKAPI NdisDestroyLookaheadBufferFromSharedMemory( IN PVOID pLookaheadBuffer); VOID -EXPIMP +DDKAPI NdisMoveFromMappedMemory( OUT PVOID Destination, IN PVOID Source, IN ULONG Length); VOID -EXPIMP +DDKAPI NdisMoveMappedMemory( OUT PVOID Destination, IN PVOID Source, IN ULONG Length); VOID -EXPIMP +DDKAPI NdisMoveToMappedMemory( OUT PVOID Destination, IN PVOID Source, IN ULONG Length); VOID -EXPIMP +DDKAPI NdisMUpdateSharedMemory( IN NDIS_HANDLE MiniportAdapterHandle, IN ULONG Length, @@ -2048,7 +2024,7 @@ NdisMUpdateSharedMemory( IN NDIS_PHYSICAL_ADDRESS PhysicalAddress); NDIS_STATUS -EXPIMP +DDKAPI NdisAllocateMemory( OUT PVOID *VirtualAddress, IN UINT Length, @@ -2056,14 +2032,14 @@ NdisAllocateMemory( IN NDIS_PHYSICAL_ADDRESS HighestAcceptableAddress); VOID -EXPIMP +DDKAPI NdisFreeMemory( IN PVOID VirtualAddress, IN UINT Length, IN UINT MemoryFlags); VOID -EXPIMP +DDKAPI NdisImmediateReadSharedMemory( IN NDIS_HANDLE WrapperConfigurationContext, IN ULONG SharedMemoryAddress, @@ -2071,7 +2047,7 @@ NdisImmediateReadSharedMemory( IN ULONG Length); VOID -EXPIMP +DDKAPI NdisImmediateWriteSharedMemory( IN NDIS_HANDLE WrapperConfigurationContext, IN ULONG SharedMemoryAddress, @@ -2079,7 +2055,7 @@ NdisImmediateWriteSharedMemory( IN ULONG Length); VOID -EXPIMP +DDKAPI NdisMAllocateSharedMemory( IN NDIS_HANDLE MiniportAdapterHandle, IN ULONG Length, @@ -2088,7 +2064,7 @@ NdisMAllocateSharedMemory( OUT PNDIS_PHYSICAL_ADDRESS PhysicalAddress); NDIS_STATUS -EXPIMP +DDKAPI NdisMAllocateSharedMemoryAsync( IN NDIS_HANDLE MiniportAdapterHandle, IN ULONG Length, @@ -2096,7 +2072,7 @@ NdisMAllocateSharedMemoryAsync( IN PVOID Context); VOID -EXPIMP +DDKAPI NdisMFreeSharedMemory( IN NDIS_HANDLE MiniportAdapterHandle, IN ULONG Length, @@ -2105,7 +2081,7 @@ NdisMFreeSharedMemory( IN NDIS_PHYSICAL_ADDRESS PhysicalAddress); VOID -EXPIMP +DDKAPI NdisUpdateSharedMemory( IN NDIS_HANDLE NdisAdapterHandle, IN ULONG Length, @@ -2196,13 +2172,13 @@ NdisUpdateSharedMemory( // CCHAR -EXPIMP +DDKAPI NdisSystemProcessorCount( VOID ); VOID -EXPIMP +DDKAPI NdisImmediateReadPortUchar( IN NDIS_HANDLE WrapperConfigurationContext, IN ULONG Port, @@ -2210,7 +2186,7 @@ NdisImmediateReadPortUchar( ); VOID -EXPIMP +DDKAPI NdisImmediateReadPortUshort( IN NDIS_HANDLE WrapperConfigurationContext, IN ULONG Port, @@ -2218,7 +2194,7 @@ NdisImmediateReadPortUshort( ); VOID -EXPIMP +DDKAPI NdisImmediateReadPortUlong( IN NDIS_HANDLE WrapperConfigurationContext, IN ULONG Port, @@ -2226,7 +2202,7 @@ NdisImmediateReadPortUlong( ); VOID -EXPIMP +DDKAPI NdisImmediateWritePortUchar( IN NDIS_HANDLE WrapperConfigurationContext, IN ULONG Port, @@ -2234,7 +2210,7 @@ NdisImmediateWritePortUchar( ); VOID -EXPIMP +DDKAPI NdisImmediateWritePortUshort( IN NDIS_HANDLE WrapperConfigurationContext, IN ULONG Port, @@ -2242,7 +2218,7 @@ NdisImmediateWritePortUshort( ); VOID -EXPIMP +DDKAPI NdisImmediateWritePortUlong( IN NDIS_HANDLE WrapperConfigurationContext, IN ULONG Port, @@ -2250,7 +2226,7 @@ NdisImmediateWritePortUlong( ); VOID -EXPIMP +DDKAPI NdisImmediateReadSharedMemory( IN NDIS_HANDLE WrapperConfigurationContext, IN ULONG SharedMemoryAddress, @@ -2259,7 +2235,7 @@ NdisImmediateReadSharedMemory( ); VOID -EXPIMP +DDKAPI NdisImmediateWriteSharedMemory( IN NDIS_HANDLE WrapperConfigurationContext, IN ULONG SharedMemoryAddress, @@ -2268,7 +2244,7 @@ NdisImmediateWriteSharedMemory( ); ULONG -EXPIMP +DDKAPI NdisImmediateReadPciSlotInformation( IN NDIS_HANDLE WrapperConfigurationContext, IN ULONG SlotNumber, @@ -2278,7 +2254,7 @@ NdisImmediateReadPciSlotInformation( ); ULONG -EXPIMP +DDKAPI NdisImmediateWritePciSlotInformation( IN NDIS_HANDLE WrapperConfigurationContext, IN ULONG SlotNumber, @@ -2288,7 +2264,7 @@ NdisImmediateWritePciSlotInformation( ); ULONG -EXPIMP +DDKAPI NdisReadPciSlotInformation( IN NDIS_HANDLE NdisAdapterHandle, IN ULONG SlotNumber, @@ -2297,7 +2273,7 @@ NdisReadPciSlotInformation( IN ULONG Length); ULONG -EXPIMP +DDKAPI NdisWritePciSlotInformation( IN NDIS_HANDLE NdisAdapterHandle, IN ULONG SlotNumber, @@ -2313,7 +2289,7 @@ NdisWritePciSlotInformation( * IN PNDIS_ANSI_STRING SourceString); */ NDIS_STATUS -EXPIMP +DDKAPI NdisAnsiStringToUnicodeString( IN OUT PNDIS_STRING DestinationString, IN PANSI_STRING SourceString); @@ -2325,7 +2301,7 @@ NdisAnsiStringToUnicodeString( * IN BOOLEAN CaseInsensitive) */ BOOLEAN -EXPIMP +DDKAPI NdisEqualString( IN PNDIS_STRING String1, IN PNDIS_STRING String2, @@ -2337,7 +2313,7 @@ NdisEqualString( * IN PCSTR SourceString) */ VOID -EXPIMP +DDKAPI NdisInitAnsiString( IN OUT PANSI_STRING DestinationString, IN PCSTR SourceString); @@ -2348,7 +2324,7 @@ NdisInitAnsiString( * IN PCWSTR SourceString) */ VOID -EXPIMP +DDKAPI NdisInitUnicodeString( IN OUT PNDIS_STRING DestinationString, IN PCWSTR SourceString); @@ -2359,7 +2335,7 @@ NdisInitUnicodeString( * IN PNDIS_STRING SourceString) */ NDIS_STATUS -EXPIMP +DDKAPI NdisUnicodeStringToAnsiString( IN OUT PANSI_STRING DestinationString, IN PNDIS_STRING SourceString); @@ -2372,7 +2348,8 @@ NdisUnicodeStringToAnsiString( /* I/O routines */ /* - * VOID NdisRawReadPortBufferUchar( + * VOID + * NdisRawReadPortBufferUchar( * IN ULONG Port, * OUT PUCHAR Buffer, * IN ULONG Length); @@ -2381,7 +2358,8 @@ NdisUnicodeStringToAnsiString( READ_PORT_BUFFER_UCHAR((PUCHAR)(Port), (PUCHAR)(Buffer), (Length)) /* - * VOID NdisRawReadPortBufferUlong( + * VOID + * NdisRawReadPortBufferUlong( * IN ULONG Port, * OUT PULONG Buffer, * IN ULONG Length); @@ -2390,7 +2368,8 @@ NdisUnicodeStringToAnsiString( READ_PORT_BUFFER_ULONG((PULONG)(Port), (PULONG)(Buffer), (Length)) /* - * VOID NdisRawReadPortBufferUshort( + * VOID + * NdisRawReadPortBufferUshort( * IN ULONG Port, * OUT PUSHORT Buffer, * IN ULONG Length); @@ -2400,7 +2379,8 @@ NdisUnicodeStringToAnsiString( /* - * VOID NdisRawReadPortUchar( + * VOID + * NdisRawReadPortUchar( * IN ULONG Port, * OUT PUCHAR Data); */ @@ -2408,7 +2388,8 @@ NdisUnicodeStringToAnsiString( *(Data) = READ_PORT_UCHAR((PUCHAR)(Port)) /* - * VOID NdisRawReadPortUlong( + * VOID + * NdisRawReadPortUlong( * IN ULONG Port, * OUT PULONG Data); */ @@ -2416,7 +2397,8 @@ NdisUnicodeStringToAnsiString( *(Data) = READ_PORT_ULONG((PULONG)(Port)) /* - * VOID NdisRawReadPortUshort( + * VOID + * NdisRawReadPortUshort( * IN ULONG Port, * OUT PUSHORT Data); */ @@ -2425,7 +2407,8 @@ NdisUnicodeStringToAnsiString( /* - * VOID NdisRawWritePortBufferUchar( + * VOID + * NdisRawWritePortBufferUchar( * IN ULONG Port, * IN PUCHAR Buffer, * IN ULONG Length); @@ -2434,7 +2417,8 @@ NdisUnicodeStringToAnsiString( WRITE_PORT_BUFFER_UCHAR((PUCHAR)(Port), (PUCHAR)(Buffer), (Length)) /* - * VOID NdisRawWritePortBufferUlong( + * VOID + * NdisRawWritePortBufferUlong( * IN ULONG Port, * IN PULONG Buffer, * IN ULONG Length); @@ -2443,7 +2427,8 @@ NdisUnicodeStringToAnsiString( WRITE_PORT_BUFFER_ULONG((PULONG)(Port), (PULONG)(Buffer), (Length)) /* - * VOID NdisRawWritePortBufferUshort( + * VOID + * NdisRawWritePortBufferUshort( * IN ULONG Port, * IN PUSHORT Buffer, * IN ULONG Length); @@ -2453,7 +2438,8 @@ NdisUnicodeStringToAnsiString( /* - * VOID NdisRawWritePortUchar( + * VOID + * NdisRawWritePortUchar( * IN ULONG Port, * IN UCHAR Data); */ @@ -2461,7 +2447,8 @@ NdisUnicodeStringToAnsiString( WRITE_PORT_UCHAR((PUCHAR)(Port), (UCHAR)(Data)) /* - * VOID NdisRawWritePortUlong( + * VOID + * NdisRawWritePortUlong( * IN ULONG Port, * IN ULONG Data); */ @@ -2469,7 +2456,8 @@ NdisUnicodeStringToAnsiString( WRITE_PORT_ULONG((PULONG)(Port), (ULONG)(Data)) /* - * VOID NdisRawWritePortUshort( + * VOID + * NdisRawWritePortUshort( * IN ULONG Port, * IN USHORT Data); */ @@ -2478,7 +2466,8 @@ NdisUnicodeStringToAnsiString( /* - * VOID NdisReadRegisterUchar( + * VOID + * NdisReadRegisterUchar( * IN PUCHAR Register, * OUT PUCHAR Data); */ @@ -2486,7 +2475,8 @@ NdisUnicodeStringToAnsiString( *((PUCHAR)(Data)) = *(Register) /* - * VOID NdisReadRegisterUlong( + * VOID + * NdisReadRegisterUlong( * IN PULONG Register, * OUT PULONG Data); */ @@ -2494,16 +2484,17 @@ NdisUnicodeStringToAnsiString( *((PULONG)(Data)) = *(Register) /* - * VOID NdisReadRegisterUshort( + * VOID + * NdisReadRegisterUshort( * IN PUSHORT Register, * OUT PUSHORT Data); */ #define NdisReadRegisterUshort(Register, Data) \ *((PUSHORT)(Data)) = *(Register) - /* - * VOID NdisReadRegisterUchar( + * VOID + * NdisReadRegisterUchar( * IN PUCHAR Register, * IN UCHAR Data); */ @@ -2511,7 +2502,8 @@ NdisUnicodeStringToAnsiString( WRITE_REGISTER_UCHAR((Register), (Data)) /* - * VOID NdisReadRegisterUlong( + * VOID + * NdisReadRegisterUlong( * IN PULONG Register, * IN ULONG Data); */ @@ -2519,7 +2511,8 @@ NdisUnicodeStringToAnsiString( WRITE_REGISTER_ULONG((Register), (Data)) /* - * VOID NdisReadRegisterUshort( + * VOID + * NdisReadRegisterUshort( * IN PUSHORT Register, * IN USHORT Data); */ @@ -2530,45 +2523,45 @@ NdisUnicodeStringToAnsiString( /* Linked lists */ VOID -EXPIMP +DDKAPI NdisInitializeListHead( IN PLIST_ENTRY ListHead); VOID -EXPIMP +DDKAPI NdisInterlockedAddUlong( IN PULONG Addend, IN ULONG Increment, IN PNDIS_SPIN_LOCK SpinLock); PLIST_ENTRY -EXPIMP +DDKAPI NdisInterlockedInsertHeadList( IN PLIST_ENTRY ListHead, IN PLIST_ENTRY ListEntry, IN PNDIS_SPIN_LOCK SpinLock); PLIST_ENTRY -EXPIMP +DDKAPI NdisInterlockedInsertTailList( IN PLIST_ENTRY ListHead, IN PLIST_ENTRY ListEntry, IN PNDIS_SPIN_LOCK SpinLock); PLIST_ENTRY -EXPIMP +DDKAPI NdisInterlockedRemoveHeadList( IN PLIST_ENTRY ListHead, IN PNDIS_SPIN_LOCK SpinLock); VOID -EXPIMP +DDKAPI NdisCloseConfiguration( IN NDIS_HANDLE ConfigurationHandle); VOID -EXPIMP +DDKAPI NdisReadConfiguration( OUT PNDIS_STATUS Status, OUT PNDIS_CONFIGURATION_PARAMETER *ParameterValue, @@ -2577,7 +2570,7 @@ NdisReadConfiguration( IN NDIS_PARAMETER_TYPE ParameterType); VOID -EXPIMP +DDKAPI NdisReadNetworkAddress( OUT PNDIS_STATUS Status, OUT PVOID *NetworkAddress, @@ -2585,7 +2578,7 @@ NdisReadNetworkAddress( IN NDIS_HANDLE ConfigurationHandle); VOID -EXPIMP +DDKAPI NdisWriteConfiguration( OUT PNDIS_STATUS Status, IN NDIS_HANDLE ConfigurationHandle, @@ -2593,14 +2586,14 @@ NdisWriteConfiguration( IN PNDIS_CONFIGURATION_PARAMETER ParameterValue); VOID -EXPIMP +DDKAPI NdisOpenConfiguration( OUT PNDIS_STATUS Status, OUT PNDIS_HANDLE ConfigurationHandle, IN NDIS_HANDLE WrapperConfigurationContext); VOID -EXPIMP +DDKAPI NdisOpenConfigurationKeyByIndex( OUT PNDIS_STATUS Status, IN NDIS_HANDLE ConfigurationHandle, @@ -2609,7 +2602,7 @@ NdisOpenConfigurationKeyByIndex( OUT PNDIS_HANDLE KeyHandle); VOID -EXPIMP +DDKAPI NdisOpenConfigurationKeyByName( OUT PNDIS_STATUS Status, IN NDIS_HANDLE ConfigurationHandle, @@ -2618,7 +2611,7 @@ NdisOpenConfigurationKeyByName( VOID -/*EXPIMP*/ +/*DDKAPI*/ NdisWriteErrorLogEntry( IN NDIS_HANDLE NdisAdapterHandle, IN NDIS_ERROR_CODE ErrorCode, @@ -2629,7 +2622,8 @@ NdisWriteErrorLogEntry( */ /* - * VOID NdisStallExecution( + * VOID + * NdisStallExecution( * IN UINT MicrosecondsToStall) */ #define NdisStallExecution(MicroSecondsToStall) \ @@ -2648,25 +2642,25 @@ NdisWriteErrorLogEntry( } */ VOID -EXPIMP +DDKAPI NdisInitializeEvent( IN PNDIS_EVENT Event ); VOID -EXPIMP +DDKAPI NdisSetEvent( IN PNDIS_EVENT Event ); VOID -EXPIMP +DDKAPI NdisResetEvent( IN PNDIS_EVENT Event ); BOOLEAN -EXPIMP +DDKAPI NdisWaitEvent( IN PNDIS_EVENT Event, IN UINT msToWait @@ -2694,7 +2688,7 @@ NdisWaitEvent( #ifdef NDIS40 VOID -EXPIMP +DDKAPI NdisMFreeSharedMemory( IN NDIS_HANDLE MiniportAdapterHandle, IN ULONG Length, @@ -2703,7 +2697,7 @@ NdisMFreeSharedMemory( IN NDIS_PHYSICAL_ADDRESS PhysicalAddress); VOID -EXPIMP +DDKAPI NdisMWanIndicateReceive( OUT PNDIS_STATUS Status, IN NDIS_HANDLE MiniportAdapterHandle, @@ -2712,19 +2706,19 @@ NdisMWanIndicateReceive( IN UINT PacketSize); VOID -EXPIMP +DDKAPI NdisMWanIndicateReceiveComplete( IN NDIS_HANDLE MiniportAdapterHandle); VOID -EXPIMP +DDKAPI NdisMWanSendComplete( IN NDIS_HANDLE MiniportAdapterHandle, IN PNDIS_WAN_PACKET Packet, IN NDIS_STATUS Status); NDIS_STATUS -EXPIMP +DDKAPI NdisPciAssignResources( IN NDIS_HANDLE NdisMacHandle, IN NDIS_HANDLE NdisWrapperHandle, @@ -2733,7 +2727,7 @@ NdisPciAssignResources( OUT PNDIS_RESOURCE_LIST *AssignedResources); VOID -EXPIMP +DDKAPI NdisReadEisaSlotInformationEx( OUT PNDIS_STATUS Status, IN NDIS_HANDLE WrapperConfigurationContext, @@ -2742,7 +2736,7 @@ NdisReadEisaSlotInformationEx( OUT PUINT NumberOfFunctions); VOID -EXPIMP +DDKAPI NdisReadMcaPosInformation( OUT PNDIS_STATUS Status, IN NDIS_HANDLE WrapperConfigurationContext, @@ -2779,42 +2773,42 @@ NdisReadMcaPosInformation( // VOID -EXPIMP +DDKAPI NdisAllocateSpinLock( IN PNDIS_SPIN_LOCK SpinLock ); VOID -EXPIMP +DDKAPI NdisFreeSpinLock( IN PNDIS_SPIN_LOCK SpinLock ); VOID -EXPIMP +DDKAPI NdisAcquireSpinLock( IN PNDIS_SPIN_LOCK SpinLock ); VOID -EXPIMP +DDKAPI NdisReleaseSpinLock( IN PNDIS_SPIN_LOCK SpinLock ); VOID -EXPIMP +DDKAPI NdisDprAcquireSpinLock( IN PNDIS_SPIN_LOCK SpinLock ); VOID -EXPIMP +DDKAPI NdisDprReleaseSpinLock( IN PNDIS_SPIN_LOCK SpinLock ); @@ -2822,28 +2816,28 @@ NdisDprReleaseSpinLock( #endif VOID -EXPIMP +DDKAPI NdisGetCurrentSystemTime( PLARGE_INTEGER pSystemTime ); VOID -EXPIMP +DDKAPI NdisAcquireReadWriteLock( IN PNDIS_RW_LOCK Lock, IN BOOLEAN fWrite, IN PLOCK_STATE LockState); NDIS_STATUS -EXPIMP +DDKAPI NdisAllocateMemoryWithTag( OUT PVOID *VirtualAddress, IN UINT Length, IN ULONG Tag); VOID -EXPIMP +DDKAPI NdisAllocatePacketPoolEx( OUT PNDIS_STATUS Status, OUT PNDIS_HANDLE PoolHandle, @@ -2852,76 +2846,76 @@ NdisAllocatePacketPoolEx( IN UINT ProtocolReservedLength); ULONG -EXPIMP +DDKAPI NdisBufferLength( IN PNDIS_BUFFER Buffer); PVOID -EXPIMP +DDKAPI NdisBufferVirtualAddress( IN PNDIS_BUFFER Buffer); VOID -EXPIMP +DDKAPI NdisCompletePnPEvent( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisBindingHandle, IN PNET_PNP_EVENT NetPnPEvent); VOID -EXPIMP +DDKAPI NdisConvertStringToAtmAddress( OUT PNDIS_STATUS Status, IN PNDIS_STRING String, OUT PATM_ADDRESS AtmAddress); VOID -EXPIMP +DDKAPI NdisGetCurrentProcessorCounts( OUT PULONG pIdleCount, OUT PULONG pKernelAndUser, OUT PULONG pIndex); VOID -EXPIMP +DDKAPI NdisGetDriverHandle( IN PNDIS_HANDLE NdisBindingHandle, OUT PNDIS_HANDLE NdisDriverHandle); PNDIS_PACKET -EXPIMP +DDKAPI NdisGetReceivedPacket( IN PNDIS_HANDLE NdisBindingHandle, IN PNDIS_HANDLE MacContext); VOID -EXPIMP +DDKAPI NdisGetSystemUptime( OUT PULONG pSystemUpTime); VOID -EXPIMP +DDKAPI NdisInitializeReadWriteLock( IN PNDIS_RW_LOCK Lock); LONG -EXPIMP +DDKAPI NdisInterlockedDecrement( IN PLONG Addend); LONG -EXPIMP +DDKAPI NdisInterlockedIncrement( IN PLONG Addend); PSINGLE_LIST_ENTRY -EXPIMP +DDKAPI NdisInterlockedPopEntrySList( IN PSLIST_HEADER ListHead, IN PKSPIN_LOCK Lock); PSINGLE_LIST_ENTRY -EXPIMP +DDKAPI NdisInterlockedPushEntrySList( IN PSLIST_HEADER ListHead, IN PSINGLE_LIST_ENTRY ListEntry, @@ -2929,12 +2923,12 @@ NdisInterlockedPushEntrySList( NDIS_STATUS -EXPIMP +DDKAPI NdisMDeregisterDevice( IN NDIS_HANDLE NdisDeviceHandle); VOID -EXPIMP +DDKAPI NdisMGetDeviceProperty( IN NDIS_HANDLE MiniportAdapterHandle, IN OUT PDEVICE_OBJECT *PhysicalDeviceObject OPTIONAL, @@ -2944,25 +2938,25 @@ NdisMGetDeviceProperty( IN OUT PCM_RESOURCE_LIST *AllocatedResourcesTranslated OPTIONAL); NDIS_STATUS -EXPIMP +DDKAPI NdisMInitializeScatterGatherDma( IN NDIS_HANDLE MiniportAdapterHandle, IN BOOLEAN Dma64BitAddresses, IN ULONG MaximumPhysicalMapping); NDIS_STATUS -EXPIMP +DDKAPI NdisMPromoteMiniport( IN NDIS_HANDLE MiniportAdapterHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisMQueryAdapterInstanceName( OUT PNDIS_STRING AdapterInstanceName, IN NDIS_HANDLE MiniportAdapterHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisMRegisterDevice( IN NDIS_HANDLE NdisWrapperHandle, IN PNDIS_STRING DeviceName, @@ -2972,35 +2966,35 @@ NdisMRegisterDevice( OUT NDIS_HANDLE *NdisDeviceHandle); VOID -EXPIMP +DDKAPI NdisMRegisterUnloadHandler( IN NDIS_HANDLE NdisWrapperHandle, IN PDRIVER_UNLOAD UnloadHandler); NDIS_STATUS -EXPIMP +DDKAPI NdisMRemoveMiniport( IN NDIS_HANDLE MiniportAdapterHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisMSetMiniportSecondary( IN NDIS_HANDLE MiniportAdapterHandle, IN NDIS_HANDLE PrimaryMiniportAdapterHandle); UINT -EXPIMP +DDKAPI NdisPacketPoolUsage( IN NDIS_HANDLE PoolHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisQueryAdapterInstanceName( OUT PNDIS_STRING AdapterInstanceName, IN NDIS_HANDLE NdisBindingHandle); VOID -EXPIMP +DDKAPI NdisQueryBufferSafe( IN PNDIS_BUFFER Buffer, OUT PVOID *VirtualAddress OPTIONAL, @@ -3008,7 +3002,7 @@ NdisQueryBufferSafe( IN UINT Priority); ULONG -EXPIMP +DDKAPI NdisReadPcmciaAttributeMemory( IN NDIS_HANDLE NdisAdapterHandle, IN ULONG Offset, @@ -3016,14 +3010,14 @@ NdisReadPcmciaAttributeMemory( IN ULONG Length); VOID -EXPIMP +DDKAPI NdisReleaseReadWriteLock( IN PNDIS_RW_LOCK Lock, IN PLOCK_STATE LockState); NDIS_STATUS -EXPIMP +DDKAPI NdisWriteEventLogEntry( IN PVOID LogHandle, IN NDIS_STATUS EventCode, @@ -3034,7 +3028,7 @@ NdisWriteEventLogEntry( IN PVOID Data OPTIONAL); ULONG -EXPIMP +DDKAPI NdisWritePcmciaAttributeMemory( IN NDIS_HANDLE NdisAdapterHandle, IN ULONG Offset, @@ -3045,7 +3039,7 @@ NdisWritePcmciaAttributeMemory( /* Connectionless services */ NDIS_STATUS -EXPIMP +DDKAPI NdisClAddParty( IN NDIS_HANDLE NdisVcHandle, IN NDIS_HANDLE ProtocolPartyContext, @@ -3053,12 +3047,12 @@ NdisClAddParty( OUT PNDIS_HANDLE NdisPartyHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisClCloseAddressFamily( IN NDIS_HANDLE NdisAfHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisClCloseCall( IN NDIS_HANDLE NdisVcHandle, IN NDIS_HANDLE NdisPartyHandle OPTIONAL, @@ -3066,26 +3060,26 @@ NdisClCloseCall( IN UINT Size); NDIS_STATUS -EXPIMP +DDKAPI NdisClDeregisterSap( IN NDIS_HANDLE NdisSapHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisClDropParty( IN NDIS_HANDLE NdisPartyHandle, IN PVOID Buffer OPTIONAL, IN UINT Size); VOID -EXPIMP +DDKAPI NdisClIncomingCallComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisVcHandle, IN PCO_CALL_PARAMETERS CallParameters); NDIS_STATUS -EXPIMP +DDKAPI NdisClMakeCall( IN NDIS_HANDLE NdisVcHandle, IN OUT PCO_CALL_PARAMETERS CallParameters, @@ -3093,14 +3087,14 @@ NdisClMakeCall( OUT PNDIS_HANDLE NdisPartyHandle OPTIONAL); NDIS_STATUS -EXPIMP +DDKAPI NdisClModifyCallQoS( IN NDIS_HANDLE NdisVcHandle, IN PCO_CALL_PARAMETERS CallParameters); NDIS_STATUS -EXPIMP +DDKAPI NdisClOpenAddressFamily( IN NDIS_HANDLE NdisBindingHandle, IN PCO_ADDRESS_FAMILY AddressFamily, @@ -3110,7 +3104,7 @@ NdisClOpenAddressFamily( OUT PNDIS_HANDLE NdisAfHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisClRegisterSap( IN NDIS_HANDLE NdisAfHandle, IN NDIS_HANDLE ProtocolSapContext, @@ -3121,13 +3115,13 @@ NdisClRegisterSap( /* Call Manager services */ NDIS_STATUS -EXPIMP +DDKAPI NdisCmActivateVc( IN NDIS_HANDLE NdisVcHandle, IN OUT PCO_CALL_PARAMETERS CallParameters); VOID -EXPIMP +DDKAPI NdisCmAddPartyComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisPartyHandle, @@ -3135,49 +3129,49 @@ NdisCmAddPartyComplete( IN PCO_CALL_PARAMETERS CallParameters); VOID -EXPIMP +DDKAPI NdisCmCloseAddressFamilyComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisAfHandle); VOID -EXPIMP +DDKAPI NdisCmCloseCallComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisVcHandle, IN NDIS_HANDLE NdisPartyHandle OPTIONAL); NDIS_STATUS -EXPIMP +DDKAPI NdisCmDeactivateVc( IN NDIS_HANDLE NdisVcHandle); VOID -EXPIMP +DDKAPI NdisCmDeregisterSapComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisSapHandle); VOID -EXPIMP +DDKAPI NdisCmDispatchCallConnected( IN NDIS_HANDLE NdisVcHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisCmDispatchIncomingCall( IN NDIS_HANDLE NdisSapHandle, IN NDIS_HANDLE NdisVcHandle, IN PCO_CALL_PARAMETERS CallParameters); VOID -EXPIMP +DDKAPI NdisCmDispatchIncomingCallQoSChange( IN NDIS_HANDLE NdisVcHandle, IN PCO_CALL_PARAMETERS CallParameters); VOID -EXPIMP +DDKAPI NdisCmDispatchIncomingCloseCall( IN NDIS_STATUS CloseStatus, IN NDIS_HANDLE NdisVcHandle, @@ -3185,7 +3179,7 @@ NdisCmDispatchIncomingCloseCall( IN UINT Size); VOID -EXPIMP +DDKAPI NdisCmDispatchIncomingDropParty( IN NDIS_STATUS DropStatus, IN NDIS_HANDLE NdisPartyHandle, @@ -3193,13 +3187,13 @@ NdisCmDispatchIncomingDropParty( IN UINT Size); VOID -EXPIMP +DDKAPI NdisCmDropPartyComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisPartyHandle); VOID -EXPIMP +DDKAPI NdisCmMakeCallComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisVcHandle, @@ -3208,21 +3202,21 @@ NdisCmMakeCallComplete( IN PCO_CALL_PARAMETERS CallParameters); VOID -EXPIMP +DDKAPI NdisCmModifyCallQoSComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisVcHandle, IN PCO_CALL_PARAMETERS CallParameters); VOID -EXPIMP +DDKAPI NdisCmOpenAddressFamilyComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisAfHandle, IN NDIS_HANDLE CallMgrAfContext); NDIS_STATUS -EXPIMP +DDKAPI NdisCmRegisterAddressFamily( IN NDIS_HANDLE NdisBindingHandle, IN PCO_ADDRESS_FAMILY AddressFamily, @@ -3230,7 +3224,7 @@ NdisCmRegisterAddressFamily( IN UINT SizeOfCmCharacteristics); VOID -EXPIMP +DDKAPI NdisCmRegisterSapComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisSapHandle, @@ -3238,13 +3232,13 @@ NdisCmRegisterSapComplete( NDIS_STATUS -EXPIMP +DDKAPI NdisMCmActivateVc( IN NDIS_HANDLE NdisVcHandle, IN PCO_CALL_PARAMETERS CallParameters); NDIS_STATUS -EXPIMP +DDKAPI NdisMCmCreateVc( IN NDIS_HANDLE MiniportAdapterHandle, IN NDIS_HANDLE NdisAfHandle, @@ -3252,17 +3246,17 @@ NdisMCmCreateVc( OUT PNDIS_HANDLE NdisVcHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisMCmDeactivateVc( IN NDIS_HANDLE NdisVcHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisMCmDeleteVc( IN NDIS_HANDLE NdisVcHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisMCmRegisterAddressFamily( IN NDIS_HANDLE MiniportAdapterHandle, IN PCO_ADDRESS_FAMILY AddressFamily, @@ -3270,7 +3264,7 @@ NdisMCmRegisterAddressFamily( IN UINT SizeOfCmCharacteristics); NDIS_STATUS -EXPIMP +DDKAPI NdisMCmRequest( IN NDIS_HANDLE NdisAfHandle, IN NDIS_HANDLE NdisVcHandle OPTIONAL, @@ -3281,7 +3275,7 @@ NdisMCmRequest( /* Connection-oriented services */ NDIS_STATUS -EXPIMP +DDKAPI NdisCoCreateVc( IN NDIS_HANDLE NdisBindingHandle, IN NDIS_HANDLE NdisAfHandle OPTIONAL, @@ -3289,12 +3283,12 @@ NdisCoCreateVc( IN OUT PNDIS_HANDLE NdisVcHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisCoDeleteVc( IN NDIS_HANDLE NdisVcHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisCoRequest( IN NDIS_HANDLE NdisBindingHandle, IN NDIS_HANDLE NdisAfHandle OPTIONAL, @@ -3303,7 +3297,7 @@ NdisCoRequest( IN OUT PNDIS_REQUEST NdisRequest); VOID -EXPIMP +DDKAPI NdisCoRequestComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisAfHandle, @@ -3312,7 +3306,7 @@ NdisCoRequestComplete( IN PNDIS_REQUEST NdisRequest); VOID -EXPIMP +DDKAPI NdisCoSendPackets( IN NDIS_HANDLE NdisVcHandle, IN PPNDIS_PACKET PacketArray, @@ -3320,27 +3314,27 @@ NdisCoSendPackets( VOID -EXPIMP +DDKAPI NdisMCoActivateVcComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisVcHandle, IN PCO_CALL_PARAMETERS CallParameters); VOID -EXPIMP +DDKAPI NdisMCoDeactivateVcComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisVcHandle); VOID -EXPIMP +DDKAPI NdisMCoIndicateReceivePacket( IN NDIS_HANDLE NdisVcHandle, IN PPNDIS_PACKET PacketArray, IN UINT NumberOfPackets); VOID -EXPIMP +DDKAPI NdisMCoIndicateStatus( IN NDIS_HANDLE MiniportAdapterHandle, IN NDIS_HANDLE NdisVcHandle OPTIONAL, @@ -3349,19 +3343,19 @@ NdisMCoIndicateStatus( IN ULONG StatusBufferSize); VOID -EXPIMP +DDKAPI NdisMCoReceiveComplete( IN NDIS_HANDLE MiniportAdapterHandle); VOID -EXPIMP +DDKAPI NdisMCoRequestComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE MiniportAdapterHandle, IN PNDIS_REQUEST Request); VOID -EXPIMP +DDKAPI NdisMCoSendComplete( IN NDIS_STATUS Status, IN NDIS_HANDLE NdisVcHandle, @@ -3371,46 +3365,46 @@ NdisMCoSendComplete( /* NDIS 5.0 extensions for intermediate drivers */ VOID -EXPIMP +DDKAPI NdisIMAssociateMiniport( IN NDIS_HANDLE DriverHandle, IN NDIS_HANDLE ProtocolHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisIMCancelInitializeDeviceInstance( IN NDIS_HANDLE DriverHandle, IN PNDIS_STRING DeviceInstance); VOID -EXPIMP +DDKAPI NdisIMCopySendCompletePerPacketInfo( IN PNDIS_PACKET DstPacket, IN PNDIS_PACKET SrcPacket); VOID -EXPIMP +DDKAPI NdisIMCopySendPerPacketInfo( IN PNDIS_PACKET DstPacket, IN PNDIS_PACKET SrcPacket); VOID -EXPIMP +DDKAPI NdisIMDeregisterLayeredMiniport( IN NDIS_HANDLE DriverHandle); NDIS_HANDLE -EXPIMP +DDKAPI NdisIMGetBindingContext( IN NDIS_HANDLE NdisBindingHandle); NDIS_HANDLE -EXPIMP +DDKAPI NdisIMGetDeviceContext( IN NDIS_HANDLE MiniportAdapterHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisIMInitializeDeviceInstanceEx( IN NDIS_HANDLE DriverHandle, IN PNDIS_STRING DriverInstance, @@ -3520,7 +3514,7 @@ DECLARE_UNKNOWN_STRUCT(ARC_FILTER) VOID -EXPIMP +DDKAPI ArcFilterDprIndicateReceive( IN PARC_FILTER Filter, IN PUCHAR pRawHeader, @@ -3528,7 +3522,7 @@ ArcFilterDprIndicateReceive( IN UINT Length); VOID -EXPIMP +DDKAPI ArcFilterDprIndicateReceiveComplete( IN PARC_FILTER Filter); @@ -3572,7 +3566,7 @@ typedef struct _ETH_FILTER NDIS_STATUS -EXPIMP +DDKAPI EthChangeFilterAddresses( IN PETH_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle, @@ -3582,7 +3576,7 @@ EthChangeFilterAddresses( IN BOOLEAN Set); BOOLEAN -EXPIMP +DDKAPI EthCreateFilter( IN UINT MaximumMulticastAddresses, IN ETH_ADDRESS_CHANGE AddressChangeAction, @@ -3593,19 +3587,19 @@ EthCreateFilter( OUT PETH_FILTER *Filter); VOID -EXPIMP +DDKAPI EthDeleteFilter( IN PETH_FILTER Filter); NDIS_STATUS -EXPIMP +DDKAPI EthDeleteFilterOpenAdapter( IN PETH_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle, IN PNDIS_REQUEST NdisRequest); NDIS_STATUS -EXPIMP +DDKAPI EthFilterAdjust( IN PETH_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle, @@ -3614,7 +3608,7 @@ EthFilterAdjust( IN BOOLEAN Set); VOID -EXPIMP +DDKAPI EthFilterIndicateReceive( IN PETH_FILTER Filter, IN NDIS_HANDLE MacReceiveContext, @@ -3626,12 +3620,12 @@ EthFilterIndicateReceive( IN UINT PacketSize); VOID -EXPIMP +DDKAPI EthFilterIndicateReceiveComplete( IN PETH_FILTER Filter); BOOLEAN -EXPIMP +DDKAPI EthNoteFilterOpenAdapter( IN PETH_FILTER Filter, IN NDIS_HANDLE MacBindingHandle, @@ -3639,13 +3633,13 @@ EthNoteFilterOpenAdapter( OUT PNDIS_HANDLE NdisFilterHandle); UINT -EXPIMP +DDKAPI EthNumberOfOpenFilterAddresses( IN PETH_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle); VOID -EXPIMP +DDKAPI EthQueryGlobalFilterAddresses ( OUT PNDIS_STATUS Status, IN PETH_FILTER Filter, @@ -3654,7 +3648,7 @@ EthQueryGlobalFilterAddresses ( IN OUT CHAR AddressArray[] [ETH_LENGTH_OF_ADDRESS]); VOID -EXPIMP +DDKAPI EthQueryOpenFilterAddresses( OUT PNDIS_STATUS Status, IN PETH_FILTER Filter, @@ -3664,7 +3658,7 @@ EthQueryOpenFilterAddresses( IN OUT CHAR AddressArray[] [ETH_LENGTH_OF_ADDRESS]); BOOLEAN -EXPIMP +DDKAPI EthShouldAddressLoopBack( IN PETH_FILTER Filter, IN CHAR Address[ETH_LENGTH_OF_ADDRESS]); @@ -3683,7 +3677,7 @@ typedef VOID (*FDDI_DEFERRED_CLOSE)(VOID); NDIS_STATUS -EXPIMP +DDKAPI FddiChangeFilterLongAddresses( IN PFDDI_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle, @@ -3693,7 +3687,7 @@ FddiChangeFilterLongAddresses( IN BOOLEAN Set); NDIS_STATUS -EXPIMP +DDKAPI FddiChangeFilterShortAddresses( IN PFDDI_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle, @@ -3703,7 +3697,7 @@ FddiChangeFilterShortAddresses( IN BOOLEAN Set); BOOLEAN -EXPIMP +DDKAPI FddiCreateFilter( IN UINT MaximumMulticastLongAddresses, IN UINT MaximumMulticastShortAddresses, @@ -3716,19 +3710,19 @@ FddiCreateFilter( OUT PFDDI_FILTER *Filter); VOID -EXPIMP +DDKAPI FddiDeleteFilter( IN PFDDI_FILTER Filter); NDIS_STATUS -EXPIMP +DDKAPI FddiDeleteFilterOpenAdapter( IN PFDDI_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle, IN PNDIS_REQUEST NdisRequest); NDIS_STATUS -EXPIMP +DDKAPI FddiFilterAdjust( IN PFDDI_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle, @@ -3737,7 +3731,7 @@ FddiFilterAdjust( IN BOOLEAN Set); VOID -EXPIMP +DDKAPI FddiFilterIndicateReceive( IN PFDDI_FILTER Filter, IN NDIS_HANDLE MacReceiveContext, @@ -3750,12 +3744,12 @@ FddiFilterIndicateReceive( IN UINT PacketSize); VOID -EXPIMP +DDKAPI FddiFilterIndicateReceiveComplete( IN PFDDI_FILTER Filter); BOOLEAN -EXPIMP +DDKAPI FddiNoteFilterOpenAdapter( IN PFDDI_FILTER Filter, IN NDIS_HANDLE MacBindingHandle, @@ -3763,19 +3757,19 @@ FddiNoteFilterOpenAdapter( OUT PNDIS_HANDLE NdisFilterHandle); UINT -EXPIMP +DDKAPI FddiNumberOfOpenFilterLongAddresses( IN PFDDI_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle); UINT -EXPIMP +DDKAPI FddiNumberOfOpenFilterShortAddresses( IN PFDDI_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle); VOID -EXPIMP +DDKAPI FddiQueryGlobalFilterLongAddresses( OUT PNDIS_STATUS Status, IN PFDDI_FILTER Filter, @@ -3784,7 +3778,7 @@ FddiQueryGlobalFilterLongAddresses( IN OUT CHAR AddressArray[] [FDDI_LENGTH_OF_LONG_ADDRESS]); VOID -EXPIMP +DDKAPI FddiQueryGlobalFilterShortAddresses( OUT PNDIS_STATUS Status, IN PFDDI_FILTER Filter, @@ -3793,7 +3787,7 @@ FddiQueryGlobalFilterShortAddresses( IN OUT CHAR AddressArray[] [FDDI_LENGTH_OF_SHORT_ADDRESS]); VOID -EXPIMP +DDKAPI FddiQueryOpenFilterLongAddresses( OUT PNDIS_STATUS Status, IN PFDDI_FILTER Filter, @@ -3803,7 +3797,7 @@ FddiQueryOpenFilterLongAddresses( IN OUT CHAR AddressArray[] [FDDI_LENGTH_OF_LONG_ADDRESS]); VOID -EXPIMP +DDKAPI FddiQueryOpenFilterShortAddresses( OUT PNDIS_STATUS Status, IN PFDDI_FILTER Filter, @@ -3813,7 +3807,7 @@ FddiQueryOpenFilterShortAddresses( IN OUT CHAR AddressArray[] [FDDI_LENGTH_OF_SHORT_ADDRESS]); BOOLEAN -EXPIMP +DDKAPI FddiShouldAddressLoopBack( IN PFDDI_FILTER Filter, IN CHAR Address[], @@ -3834,7 +3828,7 @@ typedef VOID (*TR_DEFERRED_CLOSE)(VOID); NDIS_STATUS -EXPIMP +DDKAPI TrChangeFunctionalAddress( IN PTR_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle, @@ -3843,7 +3837,7 @@ TrChangeFunctionalAddress( IN BOOLEAN Set); NDIS_STATUS -EXPIMP +DDKAPI TrChangeGroupAddress( IN PTR_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle, @@ -3852,7 +3846,7 @@ TrChangeGroupAddress( IN BOOLEAN Set); BOOLEAN -EXPIMP +DDKAPI TrCreateFilter( IN TR_ADDRESS_CHANGE AddressChangeAction, IN TR_GROUP_CHANGE GroupChangeAction, @@ -3863,19 +3857,19 @@ TrCreateFilter( OUT PTR_FILTER *Filter); VOID -EXPIMP +DDKAPI TrDeleteFilter( IN PTR_FILTER Filter); NDIS_STATUS -EXPIMP +DDKAPI TrDeleteFilterOpenAdapter ( IN PTR_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle, IN PNDIS_REQUEST NdisRequest); NDIS_STATUS -EXPIMP +DDKAPI TrFilterAdjust( IN PTR_FILTER Filter, IN NDIS_HANDLE NdisFilterHandle, @@ -3884,7 +3878,7 @@ TrFilterAdjust( IN BOOLEAN Set); VOID -EXPIMP +DDKAPI TrFilterIndicateReceive( IN PTR_FILTER Filter, IN NDIS_HANDLE MacReceiveContext, @@ -3895,12 +3889,12 @@ TrFilterIndicateReceive( IN UINT PacketSize); VOID -EXPIMP +DDKAPI TrFilterIndicateReceiveComplete( IN PTR_FILTER Filter); BOOLEAN -EXPIMP +DDKAPI TrNoteFilterOpenAdapter( IN PTR_FILTER Filter, IN NDIS_HANDLE MacBindingHandle, @@ -3908,7 +3902,7 @@ TrNoteFilterOpenAdapter( OUT PNDIS_HANDLE NdisFilterHandle); BOOLEAN -EXPIMP +DDKAPI TrShouldAddressLoopBack( IN PTR_FILTER Filter, IN CHAR DestinationAddress[TR_LENGTH_OF_ADDRESS], @@ -4238,7 +4232,7 @@ typedef NDIS_WAN_MAC_CHARACTERISTICS *PNDIS_WAN_MAC_CHARACTERISTICS; VOID -EXPIMP +DDKAPI NdisAllocateSharedMemory( IN NDIS_HANDLE NdisAdapterHandle, IN ULONG Length, @@ -4247,30 +4241,30 @@ NdisAllocateSharedMemory( OUT PNDIS_PHYSICAL_ADDRESS PhysicalAddress); VOID -EXPIMP +DDKAPI NdisCompleteCloseAdapter( IN NDIS_HANDLE NdisBindingContext, IN NDIS_STATUS Status); VOID -EXPIMP +DDKAPI NdisCompleteOpenAdapter( IN NDIS_HANDLE NdisBindingContext, IN NDIS_STATUS Status, IN NDIS_STATUS OpenErrorStatus); NDIS_STATUS -EXPIMP +DDKAPI NdisDeregisterAdapter( IN NDIS_HANDLE NdisAdapterHandle); VOID -EXPIMP +DDKAPI NdisDeregisterAdapterShutdownHandler( IN NDIS_HANDLE NdisAdapterHandle); VOID -EXPIMP +DDKAPI NdisFreeSharedMemory( IN NDIS_HANDLE NdisAdapterHandle, IN ULONG Length, @@ -4279,7 +4273,7 @@ NdisFreeSharedMemory( IN NDIS_PHYSICAL_ADDRESS PhysicalAddress); VOID -EXPIMP +DDKAPI NdisInitializeInterrupt( OUT PNDIS_STATUS Status, IN OUT PNDIS_INTERRUPT Interrupt, @@ -4293,7 +4287,7 @@ NdisInitializeInterrupt( IN NDIS_INTERRUPT_MODE InterruptMode); VOID -EXPIMP +DDKAPI NdisMapIoSpace( OUT PNDIS_STATUS Status, OUT PVOID *VirtualAddress, @@ -4302,7 +4296,7 @@ NdisMapIoSpace( IN UINT Length); NDIS_STATUS -EXPIMP +DDKAPI NdisRegisterAdapter( OUT PNDIS_HANDLE NdisAdapterHandle, IN NDIS_HANDLE NdisMacHandle, @@ -4312,14 +4306,14 @@ NdisRegisterAdapter( IN PVOID AdapterInformation); VOID -EXPIMP +DDKAPI NdisRegisterAdapterShutdownHandler( IN NDIS_HANDLE NdisAdapterHandle, IN PVOID ShutdownContext, IN ADAPTER_SHUTDOWN_HANDLER ShutdownHandler); VOID -EXPIMP +DDKAPI NdisRegisterMac( OUT PNDIS_STATUS Status, OUT PNDIS_HANDLE NdisMacHandle, @@ -4329,12 +4323,12 @@ NdisRegisterMac( IN UINT CharacteristicsLength); VOID -EXPIMP +DDKAPI NdisReleaseAdapterResources( IN NDIS_HANDLE NdisAdapterHandle); VOID -EXPIMP +DDKAPI NdisRemoveInterrupt( IN PNDIS_INTERRUPT Interrupt); @@ -4902,7 +4896,7 @@ struct _NDIS_OPEN_BLOCK (SystemSpecific3)) VOID -EXPIMP +DDKAPI NdisInitializeWrapper( OUT PNDIS_HANDLE NdisWrapperHandle, IN PVOID SystemSpecific1, @@ -4910,7 +4904,7 @@ NdisInitializeWrapper( IN PVOID SystemSpecific3); NDIS_STATUS -EXPIMP +DDKAPI NdisMAllocateMapRegisters( IN NDIS_HANDLE MiniportAdapterHandle, IN UINT DmaChannel, @@ -4948,29 +4942,29 @@ NdisMAllocateMapRegisters( } VOID -EXPIMP +DDKAPI NdisMCloseLog( IN NDIS_HANDLE LogHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisMCreateLog( IN NDIS_HANDLE MiniportAdapterHandle, IN UINT Size, OUT PNDIS_HANDLE LogHandle); VOID -EXPIMP +DDKAPI NdisMDeregisterAdapterShutdownHandler( IN NDIS_HANDLE MiniportHandle); VOID -EXPIMP +DDKAPI NdisMDeregisterInterrupt( IN PNDIS_MINIPORT_INTERRUPT Interrupt); VOID -EXPIMP +DDKAPI NdisMDeregisterIoPortRange( IN NDIS_HANDLE MiniportAdapterHandle, IN UINT InitialPort, @@ -5059,17 +5053,17 @@ NdisMDeregisterIoPortRange( } VOID -EXPIMP +DDKAPI NdisMFlushLog( IN NDIS_HANDLE LogHandle); VOID -EXPIMP +DDKAPI NdisMFreeMapRegisters( IN NDIS_HANDLE MiniportAdapterHandle); VOID -EXPIMP +DDKAPI NdisMIndicateStatus( IN NDIS_HANDLE MiniportAdapterHandle, IN NDIS_STATUS GeneralStatus, @@ -5077,12 +5071,12 @@ NdisMIndicateStatus( IN UINT StatusBufferSize); VOID -EXPIMP +DDKAPI NdisMIndicateStatusComplete( IN NDIS_HANDLE MiniportAdapterHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisMMapIoSpace( OUT PVOID * VirtualAddress, IN NDIS_HANDLE MiniportAdapterHandle, @@ -5090,20 +5084,20 @@ NdisMMapIoSpace( IN UINT Length); VOID -EXPIMP +DDKAPI NdisMQueryInformationComplete( IN NDIS_HANDLE MiniportAdapterHandle, IN NDIS_STATUS Status); VOID -EXPIMP +DDKAPI NdisMRegisterAdapterShutdownHandler( IN NDIS_HANDLE MiniportHandle, IN PVOID ShutdownContext, IN ADAPTER_SHUTDOWN_HANDLER ShutdownHandler); NDIS_STATUS -EXPIMP +DDKAPI NdisMRegisterInterrupt( OUT PNDIS_MINIPORT_INTERRUPT Interrupt, IN NDIS_HANDLE MiniportAdapterHandle, @@ -5114,7 +5108,7 @@ NdisMRegisterInterrupt( IN NDIS_INTERRUPT_MODE InterruptMode); NDIS_STATUS -EXPIMP +DDKAPI NdisMRegisterIoPortRange( OUT PVOID * PortOffset, IN NDIS_HANDLE MiniportAdapterHandle, @@ -5122,20 +5116,20 @@ NdisMRegisterIoPortRange( IN UINT NumberOfPorts); NDIS_STATUS -EXPIMP +DDKAPI NdisMRegisterMiniport( IN NDIS_HANDLE NdisWrapperHandle, IN PNDIS_MINIPORT_CHARACTERISTICS MiniportCharacteristics, IN UINT CharacteristicsLength); VOID -EXPIMP +DDKAPI NdisMSetTimer( IN PNDIS_MINIPORT_TIMER Timer, IN UINT MillisecondsToDelay); VOID -EXPIMP +DDKAPI NdisMInitializeTimer( IN OUT PNDIS_MINIPORT_TIMER Timer, IN NDIS_HANDLE MiniportAdapterHandle, @@ -5143,13 +5137,13 @@ NdisMInitializeTimer( IN PVOID FunctionContext); VOID -EXPIMP +DDKAPI NdisMSetPeriodicTimer( IN PNDIS_MINIPORT_TIMER Timer, IN UINT MillisecondPeriod); VOID -EXPIMP +DDKAPI NdisMCancelTimer( IN PNDIS_MINIPORT_TIMER Timer, OUT PBOOLEAN TimerCancelled); @@ -5215,7 +5209,7 @@ NdisMCancelTimer( VOID -EXPIMP +DDKAPI NdisMSetAttributes( IN NDIS_HANDLE MiniportAdapterHandle, IN NDIS_HANDLE MiniportAdapterContext, @@ -5223,7 +5217,7 @@ NdisMSetAttributes( IN NDIS_INTERFACE_TYPE AdapterType); VOID -EXPIMP +DDKAPI NdisMSetAttributesEx( IN NDIS_HANDLE MiniportAdapterHandle, IN NDIS_HANDLE MiniportAdapterContext, @@ -5232,18 +5226,18 @@ NdisMSetAttributesEx( IN NDIS_INTERFACE_TYPE AdapterType); VOID -EXPIMP +DDKAPI NdisMSetInformationComplete( IN NDIS_HANDLE MiniportAdapterHandle, IN NDIS_STATUS Status); VOID -EXPIMP +DDKAPI NdisMSleep( IN ULONG MicrosecondsToSleep); BOOLEAN -EXPIMP +DDKAPI NdisMSynchronizeWithInterrupt( IN PNDIS_MINIPORT_INTERRUPT Interrupt, IN PVOID SynchronizeFunction, @@ -5289,14 +5283,14 @@ NdisMSynchronizeWithInterrupt( } NDIS_STATUS -EXPIMP +DDKAPI NdisMWriteLogData( IN NDIS_HANDLE LogHandle, IN PVOID LogBuffer, IN UINT LogBufferSize); VOID -EXPIMP +DDKAPI NdisMQueryAdapterResources( OUT PNDIS_STATUS Status, IN NDIS_HANDLE WrapperConfigurationContext, @@ -5304,13 +5298,13 @@ NdisMQueryAdapterResources( IN OUT PUINT BufferSize); VOID -EXPIMP +DDKAPI NdisTerminateWrapper( IN NDIS_HANDLE NdisWrapperHandle, IN PVOID SystemSpecific); VOID -EXPIMP +DDKAPI NdisMUnmapIoSpace( IN NDIS_HANDLE MiniportAdapterHandle, IN PVOID VirtualAddress, @@ -5329,25 +5323,25 @@ typedef VOID (*W_MINIPORT_CALLBACK)( /* Routines for intermediate miniport drivers */ NDIS_STATUS -EXPIMP +DDKAPI NdisIMDeInitializeDeviceInstance( IN NDIS_HANDLE NdisMiniportHandle); NDIS_STATUS -EXPIMP +DDKAPI NdisIMInitializeDeviceInstance( IN NDIS_HANDLE DriverHandle, IN PNDIS_STRING DeviceInstance); NDIS_STATUS -EXPIMP +DDKAPI NdisIMQueueMiniportCallback( IN NDIS_HANDLE MiniportAdapterHandle, IN W_MINIPORT_CALLBACK CallbackRoutine, IN PVOID CallbackContext); NDIS_STATUS -EXPIMP +DDKAPI NdisIMRegisterLayeredMiniport( IN NDIS_HANDLE NdisWrapperHandle, IN PNDIS_MINIPORT_CHARACTERISTICS MiniportCharacteristics, @@ -5355,13 +5349,13 @@ NdisIMRegisterLayeredMiniport( OUT PNDIS_HANDLE DriverHandle); VOID -EXPIMP +DDKAPI NdisIMRevertBack( IN NDIS_HANDLE MiniportAdapterHandle, IN NDIS_HANDLE SwitchHandle); BOOLEAN -EXPIMP +DDKAPI NdisIMSwitchToMiniport( IN NDIS_HANDLE MiniportAdapterHandle, OUT PNDIS_HANDLE SwitchHandle); @@ -5370,12 +5364,12 @@ NdisIMSwitchToMiniport( /* Functions obsoleted by NDIS 5.0 */ VOID -EXPIMP +DDKAPI NdisFreeDmaChannel( IN PNDIS_HANDLE NdisDmaHandle); VOID -EXPIMP +DDKAPI NdisFreeSharedMemory( IN NDIS_HANDLE NdisAdapterHandle, IN ULONG Length, @@ -5384,26 +5378,26 @@ NdisFreeSharedMemory( IN NDIS_PHYSICAL_ADDRESS PhysicalAddress); NDIS_STATUS -EXPIMP +DDKAPI NdisIMQueueMiniportCallback( IN NDIS_HANDLE MiniportAdapterHandle, IN W_MINIPORT_CALLBACK CallbackRoutine, IN PVOID CallbackContext); VOID -EXPIMP +DDKAPI NdisIMRevertBack( IN NDIS_HANDLE MiniportAdapterHandle, IN NDIS_HANDLE SwitchHandle); BOOLEAN -EXPIMP +DDKAPI NdisIMSwitchToMiniport( IN NDIS_HANDLE MiniportAdapterHandle, OUT PNDIS_HANDLE SwitchHandle); VOID -EXPIMP +DDKAPI NdisSetupDmaTransfer( OUT PNDIS_STATUS Status, IN PNDIS_HANDLE NdisDmaHandle, @@ -5413,13 +5407,13 @@ NdisSetupDmaTransfer( IN BOOLEAN WriteToDevice); NTSTATUS -EXPIMP +DDKAPI NdisUpcaseUnicodeString( OUT PUNICODE_STRING DestinationString, IN PUNICODE_STRING SourceString); VOID -EXPIMP +DDKAPI NdisUpdateSharedMemory( IN NDIS_HANDLE NdisAdapterHandle, IN ULONG Length, @@ -5430,34 +5424,34 @@ NdisUpdateSharedMemory( /* Routines for NDIS protocol drivers */ VOID -EXPIMP +DDKAPI NdisRequest( OUT PNDIS_STATUS Status, IN NDIS_HANDLE NdisBindingHandle, IN PNDIS_REQUEST NdisRequest); VOID -EXPIMP +DDKAPI NdisReset( OUT PNDIS_STATUS Status, IN NDIS_HANDLE NdisBindingHandle); VOID -EXPIMP +DDKAPI NdisSend( OUT PNDIS_STATUS Status, IN NDIS_HANDLE NdisBindingHandle, IN PNDIS_PACKET Packet); VOID -EXPIMP +DDKAPI NdisSendPackets( IN NDIS_HANDLE NdisBindingHandle, IN PPNDIS_PACKET PacketArray, IN UINT NumberOfPackets); VOID -EXPIMP +DDKAPI NdisTransferData( OUT PNDIS_STATUS Status, IN NDIS_HANDLE NdisBindingHandle, @@ -5487,32 +5481,32 @@ NdisTransferData( VOID -EXPIMP +DDKAPI NdisCloseAdapter( OUT PNDIS_STATUS Status, IN NDIS_HANDLE NdisBindingHandle); VOID -EXPIMP +DDKAPI NdisCompleteBindAdapter( IN NDIS_HANDLE BindAdapterContext, IN NDIS_STATUS Status, IN NDIS_STATUS OpenStatus); VOID -EXPIMP +DDKAPI NdisCompleteUnbindAdapter( IN NDIS_HANDLE UnbindAdapterContext, IN NDIS_STATUS Status); VOID -EXPIMP +DDKAPI NdisDeregisterProtocol( OUT PNDIS_STATUS Status, IN NDIS_HANDLE NdisProtocolHandle); VOID -EXPIMP +DDKAPI NdisOpenAdapter( OUT PNDIS_STATUS Status, OUT PNDIS_STATUS OpenErrorStatus, @@ -5527,14 +5521,14 @@ NdisOpenAdapter( IN PSTRING AddressingInformation); VOID -EXPIMP +DDKAPI NdisOpenProtocolConfiguration( OUT PNDIS_STATUS Status, OUT PNDIS_HANDLE ConfigurationHandle, IN PNDIS_STRING ProtocolSection); NDIS_STATUS -EXPIMP +DDKAPI NdisQueryReceiveInformation( IN NDIS_HANDLE NdisBindingHandle, IN NDIS_HANDLE MacContext, @@ -5545,7 +5539,7 @@ NdisQueryReceiveInformation( OUT PUINT SizeNeeded); VOID -EXPIMP +DDKAPI NdisRegisterProtocol( OUT PNDIS_STATUS Status, OUT PNDIS_HANDLE NdisProtocolHandle, @@ -5553,7 +5547,7 @@ NdisRegisterProtocol( IN UINT CharacteristicsLength); VOID -EXPIMP +DDKAPI NdisReturnPackets( IN PNDIS_PACKET *PacketsToReturn, IN UINT NumberOfPackets); @@ -5688,4 +5682,11 @@ NdisReturnPackets( (((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->SendPacketsHandler)( \ (PNDIS_OPEN_BLOCK)(NdisBindingHandle), (PacketArray), (NumberOfPackets)); \ } + +#ifdef __cplusplus +} #endif + +#endif /* __NDIS_H */ + +/* EOF */ diff --git a/reactos/include/net/ndisoid.h b/reactos/include/net/ndisoid.h index 6166b2544a1..20b285cdda1 100644 --- a/reactos/include/net/ndisoid.h +++ b/reactos/include/net/ndisoid.h @@ -36,96 +36,41 @@ typedef struct _NET_PNP_TRANSLATE_LIST NET_PNP_ID IdArray[ANYSIZE_ARRAY]; } NET_PNP_TRANSLATE_LIST, *PNET_PNP_TRANSLATE_LIST; - - -/* Generel objects */ - -/* General operational characteristics */ +/* Connection-oriented operational characteristics */ /* Mandatory */ -#define OID_GEN_SUPPORTED_LIST 0x00010101 -#define OID_GEN_HARDWARE_STATUS 0x00010102 -#define OID_GEN_MEDIA_SUPPORTED 0x00010103 -#define OID_GEN_MEDIA_IN_USE 0x00010104 -#define OID_GEN_MAXIMUM_LOOKAHEAD 0x00010105 -#define OID_GEN_MAXIMUM_FRAME_SIZE 0x00010106 -#define OID_GEN_LINK_SPEED 0x00010107 -#define OID_GEN_TRANSMIT_BUFFER_SPACE 0x00010108 -#define OID_GEN_RECEIVE_BUFFER_SPACE 0x00010109 -#define OID_GEN_TRANSMIT_BLOCK_SIZE 0x0001010A -#define OID_GEN_RECEIVE_BLOCK_SIZE 0x0001010B -#define OID_GEN_VENDOR_ID 0x0001010C -#define OID_GEN_VENDOR_DESCRIPTION 0x0001010D -#define OID_GEN_CURRENT_PACKET_FILTER 0x0001010E -#define OID_GEN_CURRENT_LOOKAHEAD 0x0001010F -#define OID_GEN_DRIVER_VERSION 0x00010110 -#define OID_GEN_MAXIMUM_TOTAL_SIZE 0x00010111 -#define OID_GEN_PROTOCOL_OPTIONS 0x00010112 -#define OID_GEN_MAC_OPTIONS 0x00010113 -#define OID_GEN_MEDIA_CONNECT_STATUS 0x00010114 -#define OID_GEN_MAXIMUM_SEND_PACKETS 0x00010115 -#define OID_GEN_VENDOR_DRIVER_VERSION 0x00010116 +#define OID_GEN_CO_SUPPORTED_LIST OID_GEN_SUPPORTED_LIST +#define OID_GEN_CO_HARDWARE_STATUS OID_GEN_HARDWARE_STATUS +#define OID_GEN_CO_MEDIA_SUPPORTED OID_GEN_MEDIA_SUPPORTED +#define OID_GEN_CO_MEDIA_IN_USE OID_GEN_MEDIA_IN_USE +#define OID_GEN_CO_LINK_SPEED OID_GEN_LINK_SPEED +#define OID_GEN_CO_VENDOR_ID OID_GEN_VENDOR_ID +#define OID_GEN_CO_VENDOR_DESCRIPTION OID_GEN_VENDOR_DESCRIPTION +#define OID_GEN_CO_DRIVER_VERSION OID_GEN_DRIVER_VERSION +#define OID_GEN_CO_PROTOCOL_OPTIONS OID_GEN_PROTOCOL_OPTIONS +#define OID_GEN_CO_MAC_OPTIONS OID_GEN_MAC_OPTIONS +#define OID_GEN_CO_MEDIA_CONNECT_STATUS OID_GEN_MEDIA_CONNECT_STATUS +#define OID_GEN_CO_VENDOR_DRIVER_VERSION OID_GEN_VENDOR_DRIVER_VERSION /* Optional */ -#define OID_GEN_SUPPORTED_GUIDS 0x00010117 -#define OID_GEN_NETWORK_LAYER_ADDRESSES 0x00010118 -#define OID_GEN_TRANSPORT_HEADER_OFFSET 0x00010119 +#define OID_GEN_CO_SUPPORTED_GUIDS OID_GEN_SUPPORTED_GUIDS +#define OID_GEN_CO_GET_TIME_CAPS OID_GEN_GET_TIME_CAPS +#define OID_GEN_CO_GET_NETCARD_TIME OID_GEN_GET_NETCARD_TIME +#define OID_GEN_CO_MINIMUM_LINK_SPEED 0x00020120 -/* General statistics */ - -/* Mandatory */ -#define OID_GEN_XMIT_OK 0x00020101 -#define OID_GEN_RCV_OK 0x00020102 -#define OID_GEN_XMIT_ERROR 0x00020103 -#define OID_GEN_RCV_ERROR 0x00020104 -#define OID_GEN_RCV_NO_BUFFER 0x00020105 - -/* Optional */ -#define OID_GEN_DIRECTED_BYTES_XMIT 0x00020201 -#define OID_GEN_DIRECTED_FRAMES_XMIT 0x00020202 -#define OID_GEN_MULTICAST_BYTES_XMIT 0x00020203 -#define OID_GEN_MULTICAST_FRAMES_XMIT 0x00020204 -#define OID_GEN_BROADCAST_BYTES_XMIT 0x00020205 -#define OID_GEN_BROADCAST_FRAMES_XMIT 0x00020206 -#define OID_GEN_DIRECTED_BYTES_RCV 0x00020207 -#define OID_GEN_DIRECTED_FRAMES_RCV 0x00020208 -#define OID_GEN_MULTICAST_BYTES_RCV 0x00020209 -#define OID_GEN_MULTICAST_FRAMES_RCV 0x0002020A -#define OID_GEN_BROADCAST_BYTES_RCV 0x0002020B -#define OID_GEN_BROADCAST_FRAMES_RCV 0x0002020C -#define OID_GEN_RCV_CRC_ERROR 0x0002020D -#define OID_GEN_TRANSMIT_QUEUE_LENGTH 0x0002020E - - -/* Ethernet objects */ - -/* Ethernet operational characteristics */ - -/* Mandatory */ -#define OID_802_3_PERMANENT_ADDRESS 0x01010101 -#define OID_802_3_CURRENT_ADDRESS 0x01010102 -#define OID_802_3_MULTICAST_LIST 0x01010103 -#define OID_802_3_MAXIMUM_LIST_SIZE 0x01010104 - -/* Optional */ -#define OID_802_3_MAC_OPTIONS 0x01010105 - -/* Ethernet statistics */ - -/* Mandatory */ -#define OID_802_3_RCV_ERROR_ALIGNMENT 0x01020101 -#define OID_802_3_XMIT_ONE_COLLISION 0x01020102 -#define OID_802_3_XMIT_MORE_COLLISIONS 0x01020103 - -/* Optional */ -#define OID_802_3_XMIT_DEFERRED 0x01020201 -#define OID_802_3_XMIT_MAX_COLLISIONS 0x01020202 -#define OID_802_3_RCV_OVERRUN 0x01020203 -#define OID_802_3_XMIT_UNDERRUN 0x01020204 -#define OID_802_3_XMIT_HEARTBEAT_FAILURE 0x01020205 -#define OID_802_3_XMIT_TIMES_CRS_LOST 0x01020206 -#define OID_802_3_XMIT_LATE_COLLISIONS 0x01020207 +/* Connection-oriented statistics */ +#define OID_GEN_CO_XMIT_PDUS_OK OID_GEN_XMIT_OK +#define OID_GEN_CO_RCV_PDUS_OK OID_GEN_RCV_OK +#define OID_GEN_CO_XMIT_PDUS_ERROR OID_GEN_XMIT_ERROR +#define OID_GEN_CO_RCV_PDUS_ERROR OID_GEN_RCV_ERROR +#define OID_GEN_CO_RCV_PDUS_NO_BUFFER OID_GEN_RCV_NO_BUFFER +#define OID_GEN_CO_RCV_CRC_ERROR OID_GEN_RCV_CRC_ERROR +#define OID_GEN_CO_TRANSMIT_QUEUE_LENGTH OID_GEN_TRANSMIT_QUEUE_LENGTH +#define OID_GEN_CO_BYTES_XMIT OID_GEN_DIRECTED_BYTES_XMIT +#define OID_GEN_CO_BYTES_RCV OID_GEN_DIRECTED_BYTES_RCV +#define OID_GEN_CO_NETCARD_LOAD OID_GEN_NETCARD_LOAD +#define OID_GEN_CO_DEVICE_PROFILE OID_GEN_DEVICE_PROFILE /* Token Ring objects */ @@ -366,43 +311,6 @@ typedef struct _NET_PNP_TRANSLATE_LIST #define OID_WW_MBX_TEMP_DEFAULTLIST 0x09050107 -/* Connection-oriented objects */ - -/* Connection-oriented operational characteristics */ - -/* Mandatory */ -#define OID_GEN_CO_SUPPORTED_LIST OID_GEN_SUPPORTED_LIST -#define OID_GEN_CO_HARDWARE_STATUS OID_GEN_HARDWARE_STATUS -#define OID_GEN_CO_MEDIA_SUPPORTED OID_GEN_MEDIA_SUPPORTED -#define OID_GEN_CO_MEDIA_IN_USE OID_GEN_MEDIA_IN_USE -#define OID_GEN_CO_LINK_SPEED OID_GEN_LINK_SPEED -#define OID_GEN_CO_VENDOR_ID OID_GEN_VENDOR_ID -#define OID_GEN_CO_VENDOR_DESCRIPTION OID_GEN_VENDOR_DESCRIPTION -#define OID_GEN_CO_DRIVER_VERSION OID_GEN_DRIVER_VERSION -#define OID_GEN_CO_PROTOCOL_OPTIONS OID_GEN_PROTOCOL_OPTIONS -#define OID_GEN_CO_MAC_OPTIONS OID_GEN_MAC_OPTIONS -#define OID_GEN_CO_MEDIA_CONNECT_STATUS OID_GEN_MEDIA_CONNECT_STATUS -#define OID_GEN_CO_VENDOR_DRIVER_VERSION OID_GEN_VENDOR_DRIVER_VERSION - -/* Optional */ -#define OID_GEN_CO_SUPPORTED_GUIDS OID_GEN_SUPPORTED_GUIDS -#define OID_GEN_CO_GET_TIME_CAPS OID_GEN_GET_TIME_CAPS -#define OID_GEN_CO_GET_NETCARD_TIME OID_GEN_GET_NETCARD_TIME -#define OID_GEN_CO_MINIMUM_LINK_SPEED 0x00020120 - -/* Connection-oriented statistics */ - -#define OID_GEN_CO_XMIT_PDUS_OK OID_GEN_XMIT_OK -#define OID_GEN_CO_RCV_PDUS_OK OID_GEN_RCV_OK -#define OID_GEN_CO_XMIT_PDUS_ERROR OID_GEN_XMIT_ERROR -#define OID_GEN_CO_RCV_PDUS_ERROR OID_GEN_RCV_ERROR -#define OID_GEN_CO_RCV_PDUS_NO_BUFFER OID_GEN_RCV_NO_BUFFER -#define OID_GEN_CO_RCV_CRC_ERROR OID_GEN_RCV_CRC_ERROR -#define OID_GEN_CO_TRANSMIT_QUEUE_LENGTH OID_GEN_TRANSMIT_QUEUE_LENGTH -#define OID_GEN_CO_BYTES_XMIT OID_GEN_DIRECTED_BYTES_XMIT -#define OID_GEN_CO_BYTES_RCV OID_GEN_DIRECTED_BYTES_RCV -#define OID_GEN_CO_NETCARD_LOAD OID_GEN_NETCARD_LOAD -#define OID_GEN_CO_DEVICE_PROFILE OID_GEN_DEVICE_PROFILE #define OID_GEN_CO_BYTES_XMIT_OUTSTANDING 0x00020221 #endif /* __NDISOID_H */ diff --git a/reactos/include/net/netevent.h b/reactos/include/net/netevent.h index 922d429f2a7..0cf66e03217 100644 --- a/reactos/include/net/netevent.h +++ b/reactos/include/net/netevent.h @@ -1,16 +1,42 @@ /* - * COPYRIGHT: See COPYING in the top level directory - * PROJECT: ReactOS NDIS library - * FILE: include/net/netevent.h - * PURPOSE: Network event constants + * netevent.h + * + * Network events + * + * This file is part of the w32api package. + * + * Contributors: + * Created by Casper S. Hornstrup + * + * THIS SOFTWARE IS NOT COPYRIGHTED + * + * This source code is offered for use in the public domain. You may + * use, modify or distribute it freely. + * + * This code is distributed in the hope that it will be useful but + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY + * DISCLAIMED. This includes but is not limited to warranties of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * */ + #ifndef __NETEVENT_H #define __NETEVENT_H +#if __GNUC__ >=3 +#pragma GCC system_header +#endif + #define EVENT_TRANSPORT_REGISTER_FAILED 0xC000232CL #define EVENT_TRANSPORT_ADAPTER_NOT_FOUND 0xC000232EL -#endif /* __NETEVENT_H */ +#ifdef __cplusplus +extern "C" { +#endif -/* EOF */ +#ifdef __cplusplus +} +#endif + +#endif /* __NETEVENT_H */ diff --git a/reactos/include/net/ntddndis.h b/reactos/include/net/ntddndis.h index 591679280b4..61196da3926 100644 --- a/reactos/include/net/ntddndis.h +++ b/reactos/include/net/ntddndis.h @@ -1,16 +1,49 @@ /* - * COPYRIGHT: See COPYING in the top level directory - * PROJECT: ReactOS NDIS library - * FILE: include/net/ntddndis.h - * PURPOSE: Structures for accessing NDIS devices + * ntddndis.h + * + * NDIS device driver interface + * + * This file is part of the w32api package. + * + * Contributors: + * Created by Casper S. Hornstrup + * + * THIS SOFTWARE IS NOT COPYRIGHTED + * + * This source code is offered for use in the public domain. You may + * use, modify or distribute it freely. + * + * This code is distributed in the hope that it will be useful but + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY + * DISCLAIMED. This includes but is not limited to warranties of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * */ + #ifndef __NTDDNDIS_H -#define __NIDDNDIS_H +#define __NTDDNDIS_H + +#if __GNUC__ >=3 +#pragma GCC system_header +#endif + +#pragma pack(push,4) + +#include "ntddk.h" #include -typedef enum _NDIS_DEVICE_POWER_STATE -{ +#ifdef __cplusplus +extern "C" { +#endif + +typedef enum _NDIS_WAN_QUALITY { + NdisWanRaw, + NdisWanErrorControl, + NdisWanReliable +} NDIS_WAN_QUALITY, *PNDIS_WAN_QUALITY; + +typedef enum _NDIS_DEVICE_POWER_STATE { NdisDeviceStateUnspecified = 0, NdisDeviceStateD0, NdisDeviceStateD1, @@ -19,19 +52,152 @@ typedef enum _NDIS_DEVICE_POWER_STATE NdisDeviceStateMaximum } NDIS_DEVICE_POWER_STATE, *PNDIS_DEVICE_POWER_STATE; -typedef struct _NDIS_PM_WAKE_UP_CAPABILITIES -{ +typedef struct _NDIS_PM_WAKE_UP_CAPABILITIES { NDIS_DEVICE_POWER_STATE MinMagicPacketWakeUp; NDIS_DEVICE_POWER_STATE MinPatternWakeUp; NDIS_DEVICE_POWER_STATE MinLinkChangeWakeUp; } NDIS_PM_WAKE_UP_CAPABILITIES, *PNDIS_PM_WAKE_UP_CAPABILITIES; -typedef struct _NDIS_PNP_CAPABILITIES -{ +/* NDIS_PNP_CAPABILITIES.Flags constants */ +#define NDIS_DEVICE_WAKE_UP_ENABLE 0x00000001 +#define NDIS_DEVICE_WAKE_ON_PATTERN_MATCH_ENABLE 0x00000002 +#define NDIS_DEVICE_WAKE_ON_MAGIC_PACKET_ENABLE 0x00000004 + +typedef struct _NDIS_PNP_CAPABILITIES { ULONG Flags; NDIS_PM_WAKE_UP_CAPABILITIES WakeUpCapabilities; } NDIS_PNP_CAPABILITIES, *PNDIS_PNP_CAPABILITIES; -#endif /* __NTDDNDIS_H */ +/* Required Object IDs (OIDs) */ +#define OID_GEN_SUPPORTED_LIST 0x00010101 +#define OID_GEN_HARDWARE_STATUS 0x00010102 +#define OID_GEN_MEDIA_SUPPORTED 0x00010103 +#define OID_GEN_MEDIA_IN_USE 0x00010104 +#define OID_GEN_MAXIMUM_LOOKAHEAD 0x00010105 +#define OID_GEN_MAXIMUM_FRAME_SIZE 0x00010106 +#define OID_GEN_LINK_SPEED 0x00010107 +#define OID_GEN_TRANSMIT_BUFFER_SPACE 0x00010108 +#define OID_GEN_RECEIVE_BUFFER_SPACE 0x00010109 +#define OID_GEN_TRANSMIT_BLOCK_SIZE 0x0001010A +#define OID_GEN_RECEIVE_BLOCK_SIZE 0x0001010B +#define OID_GEN_VENDOR_ID 0x0001010C +#define OID_GEN_VENDOR_DESCRIPTION 0x0001010D +#define OID_GEN_CURRENT_PACKET_FILTER 0x0001010E +#define OID_GEN_CURRENT_LOOKAHEAD 0x0001010F +#define OID_GEN_DRIVER_VERSION 0x00010110 +#define OID_GEN_MAXIMUM_TOTAL_SIZE 0x00010111 +#define OID_GEN_PROTOCOL_OPTIONS 0x00010112 +#define OID_GEN_MAC_OPTIONS 0x00010113 +#define OID_GEN_MEDIA_CONNECT_STATUS 0x00010114 +#define OID_GEN_MAXIMUM_SEND_PACKETS 0x00010115 +#define OID_GEN_VENDOR_DRIVER_VERSION 0x00010116 -/* EOF */ +/* Optional */ +#define OID_GEN_SUPPORTED_GUIDS 0x00010117 +#define OID_GEN_NETWORK_LAYER_ADDRESSES 0x00010118 +#define OID_GEN_TRANSPORT_HEADER_OFFSET 0x00010119 + +/* General statistics */ +/* Optional OIDs */ +#define OID_GEN_MEDIA_CAPABILITIES 0x00010201 +#define OID_GEN_PHYSICAL_MEDIUM 0x00010202 + +/* Required statistics OIDs */ +#define OID_GEN_XMIT_OK 0x00020101 +#define OID_GEN_RCV_OK 0x00020102 +#define OID_GEN_XMIT_ERROR 0x00020103 +#define OID_GEN_RCV_ERROR 0x00020104 +#define OID_GEN_RCV_NO_BUFFER 0x00020105 + +/* Optional statistics OIDs */ +#define OID_GEN_DIRECTED_BYTES_XMIT 0x00020201 +#define OID_GEN_DIRECTED_FRAMES_XMIT 0x00020202 +#define OID_GEN_MULTICAST_BYTES_XMIT 0x00020203 +#define OID_GEN_MULTICAST_FRAMES_XMIT 0x00020204 +#define OID_GEN_BROADCAST_BYTES_XMIT 0x00020205 +#define OID_GEN_BROADCAST_FRAMES_XMIT 0x00020206 +#define OID_GEN_DIRECTED_BYTES_RCV 0x00020207 +#define OID_GEN_DIRECTED_FRAMES_RCV 0x00020208 +#define OID_GEN_MULTICAST_BYTES_RCV 0x00020209 +#define OID_GEN_MULTICAST_FRAMES_RCV 0x0002020A +#define OID_GEN_BROADCAST_BYTES_RCV 0x0002020B +#define OID_GEN_BROADCAST_FRAMES_RCV 0x0002020C +#define OID_GEN_RCV_CRC_ERROR 0x0002020D +#define OID_GEN_TRANSMIT_QUEUE_LENGTH 0x0002020E +#define OID_GEN_GET_TIME_CAPS 0x0002020F +#define OID_GEN_GET_NETCARD_TIME 0x00020210 +#define OID_GEN_NETCARD_LOAD 0x00020211 +#define OID_GEN_DEVICE_PROFILE 0x00020212 +#define OID_GEN_INIT_TIME_MS 0x00020213 +#define OID_GEN_RESET_COUNTS 0x00020214 +#define OID_GEN_MEDIA_SENSE_COUNTS 0x00020215 +#define OID_GEN_FRIENDLY_NAME 0x00020216 +#define OID_GEN_MINIPORT_INFO 0x00020217 +#define OID_GEN_RESET_VERIFY_PARAMETERS 0x00020218 + +/* Connection-oriented objects */ + + +/* Ethernet objects */ + +/* Ethernet operational characteristics */ + +/* Mandatory */ +#define OID_802_3_PERMANENT_ADDRESS 0x01010101 +#define OID_802_3_CURRENT_ADDRESS 0x01010102 +#define OID_802_3_MULTICAST_LIST 0x01010103 +#define OID_802_3_MAXIMUM_LIST_SIZE 0x01010104 + +/* Optional */ +#define OID_802_3_MAC_OPTIONS 0x01010105 + +/* Ethernet statistics */ + +/* Mandatory */ +#define OID_802_3_RCV_ERROR_ALIGNMENT 0x01020101 +#define OID_802_3_XMIT_ONE_COLLISION 0x01020102 +#define OID_802_3_XMIT_MORE_COLLISIONS 0x01020103 + +/* Optional */ +#define OID_802_3_XMIT_DEFERRED 0x01020201 +#define OID_802_3_XMIT_MAX_COLLISIONS 0x01020202 +#define OID_802_3_RCV_OVERRUN 0x01020203 +#define OID_802_3_XMIT_UNDERRUN 0x01020204 +#define OID_802_3_XMIT_HEARTBEAT_FAILURE 0x01020205 +#define OID_802_3_XMIT_TIMES_CRS_LOST 0x01020206 +#define OID_802_3_XMIT_LATE_COLLISIONS 0x01020207 + +/* OID_GEN_MINIPORT_INFO constants */ +#define NDIS_MINIPORT_BUS_MASTER 0x00000001 +#define NDIS_MINIPORT_WDM_DRIVER 0x00000002 +#define NDIS_MINIPORT_SG_LIST 0x00000004 +#define NDIS_MINIPORT_SUPPORTS_MEDIA_QUERY 0x00000008 +#define NDIS_MINIPORT_INDICATES_PACKETS 0x00000010 +#define NDIS_MINIPORT_IGNORE_PACKET_QUEUE 0x00000020 +#define NDIS_MINIPORT_IGNORE_REQUEST_QUEUE 0x00000040 +#define NDIS_MINIPORT_IGNORE_TOKEN_RING_ERRORS 0x00000080 +#define NDIS_MINIPORT_INTERMEDIATE_DRIVER 0x00000100 +#define NDIS_MINIPORT_IS_NDIS_5 0x00000200 +#define NDIS_MINIPORT_IS_CO 0x00000400 +#define NDIS_MINIPORT_DESERIALIZE 0x00000800 +#define NDIS_MINIPORT_REQUIRES_MEDIA_POLLING 0x00001000 +#define NDIS_MINIPORT_SUPPORTS_MEDIA_SENSE 0x00002000 +#define NDIS_MINIPORT_NETBOOT_CARD 0x00004000 +#define NDIS_MINIPORT_PM_SUPPORTED 0x00008000 +#define NDIS_MINIPORT_SUPPORTS_MAC_ADDRESS_OVERWRITE 0x00010000 +#define NDIS_MINIPORT_USES_SAFE_BUFFER_APIS 0x00020000 +#define NDIS_MINIPORT_HIDDEN 0x00040000 +#define NDIS_MINIPORT_SWENUM 0x00080000 +#define NDIS_MINIPORT_SURPRISE_REMOVE_OK 0x00100000 +#define NDIS_MINIPORT_NO_HALT_ON_SUSPEND 0x00200000 +#define NDIS_MINIPORT_HARDWARE_DEVICE 0x00400000 +#define NDIS_MINIPORT_SUPPORTS_CANCEL_SEND_PACKETS 0x00800000 +#define NDIS_MINIPORT_64BITS_DMA 0x01000000 + +#pragma pack(pop) + +#ifdef __cplusplus +} +#endif + +#endif /* __NTDDNDIS_H */ diff --git a/reactos/include/net/tdi.h b/reactos/include/net/tdi.h index a3b8c16686f..d8a87e574bf 100644 --- a/reactos/include/net/tdi.h +++ b/reactos/include/net/tdi.h @@ -1,12 +1,41 @@ /* - * COPYRIGHT: See COPYING in the top level directory - * PROJECT: ReactOS TDI library - * FILE: include/net/tdi.h - * PURPOSE: TDI definitions for user mode clients + * tdi.h + * + * TDI user mode definitions + * + * This file is part of the w32api package. + * + * Contributors: + * Created by Casper S. Hornstrup + * + * THIS SOFTWARE IS NOT COPYRIGHTED + * + * This source code is offered for use in the public domain. You may + * use, modify or distribute it freely. + * + * This code is distributed in the hope that it will be useful but + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY + * DISCLAIMED. This includes but is not limited to warranties of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * */ + #ifndef __TDI_H #define __TDI_H +#if __GNUC__ >=3 +#pragma GCC system_header +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#pragma pack(push,4) + +#include "ntddk.h" +#include "tdistat.h" + /* FIXME: Missed some definitions in ntddk.h */ /* Could be defined elsewhere @@ -22,9 +51,8 @@ typedef LONG TDI_STATUS; typedef PVOID CONNECTION_CONTEXT; - /* TDI status codes */ - +///* #define TDI_SUCCESS STATUS_SUCCESS #define TDI_NO_RESOURCES STATUS_INSUFFICIENT_RESOURCES #define TDI_ADDR_IN_USE STATUS_ADDRESS_ALREADY_EXISTS @@ -65,7 +93,7 @@ typedef PVOID CONNECTION_CONTEXT; #define TDI_OPTION_EOL 0 #define TDI_ADDRESS_OPTION_REUSE 1 #define TDI_ADDRESS_OPTION_DHCP 2 - +// */ /* TDI IOCTL codes */ @@ -127,8 +155,7 @@ NTSTATUS TdiDispatchInternalDeviceControl( /* TDI structures */ -typedef struct _TDI_CONNECTION_INFORMATION -{ +typedef struct _TDI_CONNECTION_INFORMATION { LONG UserDataLength; PVOID UserData; LONG OptionsLength; @@ -137,8 +164,7 @@ typedef struct _TDI_CONNECTION_INFORMATION PVOID RemoteAddress; } TDI_CONNECTION_INFORMATION, *PTDI_CONNECTION_INFORMATION; -typedef struct _TDI_REQUEST -{ +typedef struct _TDI_REQUEST { union { HANDLE AddressHandle; CONNECTION_CONTEXT ConnectionContext; @@ -149,16 +175,13 @@ typedef struct _TDI_REQUEST TDI_STATUS TdiStatus; } TDI_REQUEST, *PTDI_REQUEST; -typedef struct _TDI_REQUEST_STATUS -{ +typedef struct _TDI_REQUEST_STATUS { TDI_STATUS Status; PVOID RequestContext; ULONG BytesTransferred; } TDI_REQUEST_STATUS, *PTDI_REQUEST_STATUS; - -typedef struct _TA_ADDRESS -{ +typedef struct _TA_ADDRESS { USHORT AddressLength; USHORT AddressType; UCHAR Address[1]; @@ -188,40 +211,37 @@ typedef struct _TA_ADDRESS #define TDI_ADDRESS_TYPE_NETONE 20 #define TDI_ADDRESS_TYPE_VNS 21 #define TDI_ADDRESS_TYPE_NETBIOS_EX 22 - +#define TDI_ADDRESS_TYPE_IP6 23 +#define TDI_ADDRESS_TYPE_NETBIOS_UNICODE_EX 24 #define TdiTransportAddress "TransportAddress" #define TdiConnectionContext "ConnectionContext" #define TDI_TRANSPORT_ADDRESS_LENGTH (sizeof(TdiTransportAddress) - 1) #define TDI_CONNECTION_CONTEXT_LENGTH (sizeof(TdiConnectionContext) - 1) - -typedef struct _TRANSPORT_ADDRESS -{ +typedef struct _TRANSPORT_ADDRESS { LONG TAAddressCount; TA_ADDRESS Address[1]; } TRANSPORT_ADDRESS, *PTRANSPORT_ADDRESS; -typedef struct _TDI_ADDRESS_INFO -{ +typedef struct _TDI_ADDRESS_INFO { ULONG ActivityCount; TRANSPORT_ADDRESS Address; } TDI_ADDRESS_INFO, *PTDI_ADDRESS_INFO; -typedef struct _TDI_ACTION_HEADER -{ +typedef struct _TDI_ACTION_HEADER { ULONG TransportId; USHORT ActionCode; USHORT Reserved; } TDI_ACTION_HEADER, *PTDI_ACTION_HEADER; -typedef struct _TDI_ADDRESS_8022 -{ +typedef struct _TDI_ADDRESS_8022 { UCHAR MACAddress[6]; } TDI_ADDRESS_8022, *PTDI_ADDRESS_8022; -typedef struct _TDI_ADDRESS_APPLETALK -{ +#define TDI_ADDRESS_LENGTH_8022 sizeof(TDI_ADDRESS_8022); + +typedef struct _TDI_ADDRESS_APPLETALK { USHORT Network; UCHAR Node; UCHAR Socket; @@ -229,8 +249,7 @@ typedef struct _TDI_ADDRESS_APPLETALK #define TDI_ADDRESS_LENGTH_APPLETALK sizeof(TDI_ADDRESS_APPLETALK) -typedef struct _TDI_ADDRESS_IP -{ +typedef struct _TDI_ADDRESS_IP { USHORT sin_port; ULONG in_addr; UCHAR sin_zero[8]; @@ -238,8 +257,7 @@ typedef struct _TDI_ADDRESS_IP #define TDI_ADDRESS_LENGTH_IP sizeof(TDI_ADDRESS_IP) -typedef struct _TDI_ADDRESS_IPX -{ +typedef struct _TDI_ADDRESS_IPX { ULONG NetworkAddress; UCHAR NodeAddress[6]; USHORT Socket; @@ -247,36 +265,35 @@ typedef struct _TDI_ADDRESS_IPX #define TDI_ADDRESS_LENGTH_IPX sizeof(TDI_ADDRESS_IPX) -typedef struct _TDI_ADDRESS_NETBIOS -{ - USHORT NetbiosNameType; - UCHAR NetbiosName[16]; -} TDI_ADDRESS_NETBIOS, *PTDI_ADDRESS_NETBIOS; - +/* TDI_ADDRESS_NETBIOS.NetbiosNameType constants */ #define TDI_ADDRESS_NETBIOS_TYPE_UNIQUE 0x0000 #define TDI_ADDRESS_NETBIOS_TYPE_GROUP 0x0001 #define TDI_ADDRESS_NETBIOS_TYPE_QUICK_UNIQUE 0x0002 #define TDI_ADDRESS_NETBIOS_TYPE_QUICK_GROUP 0x0003 +typedef struct _TDI_ADDRESS_NETBIOS { + USHORT NetbiosNameType; + UCHAR NetbiosName[16]; +} TDI_ADDRESS_NETBIOS, *PTDI_ADDRESS_NETBIOS; + #define TDI_ADDRESS_LENGTH_NETBIOS sizeof(TDI_ADDRESS_NETBIOS) -typedef struct _TDI_ADDRESS_NETBIOS_EX -{ +typedef struct _TDI_ADDRESS_NETBIOS_EX { UCHAR EndpointName[16]; TDI_ADDRESS_NETBIOS NetbiosAddress; } TDI_ADDRESS_NETBIOS_EX, *PTDI_ADDRESS_NETBIOS_EX; #define TDI_ADDRESS_LENGTH_NETBIOS_EX sizeof(TDI_ADDRESS_NETBIOS_EX) -typedef struct _TDI_ADDRESS_NETONE -{ +/* TDI_ADDRESS_NETONE.NetoneNameType constants */ +#define TDI_ADDRESS_NETONE_TYPE_UNIQUE 0x0000 +#define TDI_ADDRESS_NETONE_TYPE_ROTORED 0x0001 + +typedef struct _TDI_ADDRESS_NETONE { USHORT NetoneNameType; UCHAR NetoneName[20]; } TDI_ADDRESS_NETONE, *PTDI_ADDRESS_NETONE; -#define TDI_ADDRESS_NETONE_TYPE_UNIQUE 0x0000 -#define TDI_ADDRESS_NETONE_TYPE_ROTORED 0x0001 - #define TDI_ADDRESS_LENGTH_NETONE sizeof(TDI_ADDRESS_NETONE) typedef struct _TDI_ADDRESS_NS @@ -290,11 +307,11 @@ typedef struct _TDI_ADDRESS_NS #define ISO_MAX_ADDR_LENGTH 64 +/* TDI_ADDRESS_OSI_TSAP.tp_addr_type constants */ #define ISO_HIERARCHICAL 0 #define ISO_NON_HIERARCHICAL 1 -typedef struct _TDI_ADDRESS_OSI_TSAP -{ +typedef struct _TDI_ADDRESS_OSI_TSAP { USHORT tp_addr_type; USHORT tp_taddr_len; USHORT tp_tsel_len; @@ -303,8 +320,7 @@ typedef struct _TDI_ADDRESS_OSI_TSAP #define TDI_ADDRESS_LENGTH_OSI_TSAP sizeof(TDI_ADDRESS_OSI_TSAP) -typedef struct _TDI_ADDRESS_VNS -{ +typedef struct _TDI_ADDRESS_VNS { UCHAR net_address[4]; UCHAR subnet_addr[2]; UCHAR port[2]; @@ -314,66 +330,80 @@ typedef struct _TDI_ADDRESS_VNS #define TDI_ADDRESS_LENGTH_VNS sizeof(TDI_ADDRESS_VNS) +typedef struct _TDI_ADDRESS_IP6 { + USHORT sin6_port; + ULONG sin6_flowinfo; + USHORT sin6_addr[8]; + ULONG sin6_scope_id; +} TDI_ADDRESS_IP6, *PTDI_ADDRESS_IP6; -/* TDI request structures */ +#define TDI_ADDRESS_LENGTH_IP6 sizeof(TDI_ADDRESS_IP6) -typedef struct _TDI_CONNECT_REQUEST -{ +enum eNameBufferType { + NBT_READONLY = 0, + NBT_WRITEONLY, + NBT_READWRITE, + NBT_WRITTEN +}; + +typedef struct _TDI_ADDRESS_NETBIOS_UNICODE_EX { + USHORT NetbiosNameType; + enum eNameBufferType NameBufferType; + UNICODE_STRING EndpointName; + UNICODE_STRING RemoteName; + WCHAR EndpointBuffer[17]; + WCHAR RemoteNameBuffer[1]; +} TDI_ADDRESS_NETBIOS_UNICODE_EX, *PTDI_ADDRESS_NETBIOS_UNICODE_EX; + + +typedef struct _TDI_CONNECT_REQUEST { TDI_REQUEST Request; PTDI_CONNECTION_INFORMATION RequestConnectionInformation; PTDI_CONNECTION_INFORMATION ReturnConnectionInformation; LARGE_INTEGER Timeout; } TDI_REQUEST_CONNECT, *PTDI_REQUEST_CONNECT; -typedef struct _TDI_REQUEST_ACCEPT -{ +typedef struct _TDI_REQUEST_ACCEPT { TDI_REQUEST Request; PTDI_CONNECTION_INFORMATION RequestConnectionInformation; PTDI_CONNECTION_INFORMATION ReturnConnectionInformation; } TDI_REQUEST_ACCEPT, *PTDI_REQUEST_ACCEPT; -typedef struct _TDI_REQUEST_LISTEN -{ +typedef struct _TDI_REQUEST_LISTEN { TDI_REQUEST Request; PTDI_CONNECTION_INFORMATION RequestConnectionInformation; PTDI_CONNECTION_INFORMATION ReturnConnectionInformation; USHORT ListenFlags; } TDI_REQUEST_LISTEN, *PTDI_REQUEST_LISTEN; -typedef struct _TDI_DISCONNECT_REQUEST -{ +typedef struct _TDI_DISCONNECT_REQUEST { TDI_REQUEST Request; LARGE_INTEGER Timeout; } TDI_REQUEST_DISCONNECT, *PTDI_REQUEST_DISCONNECT; -typedef struct _TDI_REQUEST_SEND -{ +typedef struct _TDI_REQUEST_SEND { TDI_REQUEST Request; USHORT SendFlags; } TDI_REQUEST_SEND, *PTDI_REQUEST_SEND; -typedef struct _TDI_REQUEST_RECEIVE -{ +typedef struct _TDI_REQUEST_RECEIVE { TDI_REQUEST Request; USHORT ReceiveFlags; } TDI_REQUEST_RECEIVE, *PTDI_REQUEST_RECEIVE; -typedef struct _TDI_REQUEST_SEND_DATAGRAM -{ +typedef struct _TDI_REQUEST_SEND_DATAGRAM { TDI_REQUEST Request; PTDI_CONNECTION_INFORMATION SendDatagramInformation; } TDI_REQUEST_SEND_DATAGRAM, *PTDI_REQUEST_SEND_DATAGRAM; -typedef struct _TDI_REQUEST_RECEIVE_DATAGRAM -{ +typedef struct _TDI_REQUEST_RECEIVE_DATAGRAM { TDI_REQUEST Request; PTDI_CONNECTION_INFORMATION ReceiveDatagramInformation; PTDI_CONNECTION_INFORMATION ReturnInformation; USHORT ReceiveFlags; } TDI_REQUEST_RECEIVE_DATAGRAM, *PTDI_REQUEST_RECEIVE_DATAGRAM; -typedef struct _TDI_REQUEST_SET_EVENT -{ +typedef struct _TDI_REQUEST_SET_EVENT { TDI_REQUEST Request; LONG EventType; PVOID EventHandler; @@ -390,6 +420,7 @@ typedef struct _TDI_REQUEST_SET_EVENT #define TDI_RECEIVE_COPY_LOOKAHEAD 0x00000200 #define TDI_RECEIVE_ENTIRE_MESSAGE 0x00000400 #define TDI_RECEIVE_AT_DISPATCH_LEVEL 0x00000800 +#define TDI_RECEIVE_CONTROL_INFO 0x00001000 /* Listen flags */ #define TDI_QUERY_ACCEPT 0x00000001 @@ -399,6 +430,7 @@ typedef struct _TDI_REQUEST_SET_EVENT #define TDI_SEND_PARTIAL 0x0040 #define TDI_SEND_NO_RESPONSE_EXPECTED 0x0080 #define TDI_SEND_NON_BLOCKING 0x0100 +#define TDI_SEND_AND_DISCONNECT 0x0200 /* Disconnect Flags */ #define TDI_DISCONNECT_WAIT 0x0001 @@ -406,23 +438,22 @@ typedef struct _TDI_REQUEST_SET_EVENT #define TDI_DISCONNECT_RELEASE 0x0004 /* TdiRequest structure for TdiQueryInformation request */ -typedef struct _TDI_REQUEST_QUERY_INFORMATION -{ +typedef struct _TDI_REQUEST_QUERY_INFORMATION { TDI_REQUEST Request; ULONG QueryType; PTDI_CONNECTION_INFORMATION RequestConnectionInformation; } TDI_REQUEST_QUERY_INFORMATION, *PTDI_REQUEST_QUERY_INFORMATION; /* TdiRequest structure for TdiSetInformation request */ -typedef struct _TDI_REQUEST_SET_INFORMATION -{ +typedef struct _TDI_REQUEST_SET_INFORMATION { TDI_REQUEST Request; ULONG SetType; PTDI_CONNECTION_INFORMATION RequestConnectionInformation; } TDI_REQUEST_SET_INFORMATION, *PTDI_REQUEST_SET_INFORMATION; -typedef union _TDI_REQUEST_TYPE -{ +typedef TDI_REQUEST_SET_INFORMATION TDI_REQ_SET_INFORMATION, *PTDI_REQ_SET_INFORMATION; + +typedef union _TDI_REQUEST_TYPE { TDI_REQUEST_ACCEPT TdiAccept; TDI_REQUEST_CONNECT TdiConnect; TDI_REQUEST_DISCONNECT TdiDisconnect; @@ -437,7 +468,6 @@ typedef union _TDI_REQUEST_TYPE } TDI_REQUEST_TYPE, *PTDI_REQUEST_TYPE; - /* Query information types */ /* Generic query info types that must be supported by all transports */ @@ -456,8 +486,7 @@ typedef union _TDI_REQUEST_TYPE #define TDI_QUERY_SESSION_STATUS 0x00000200 #define TDI_QUERY_FIND_NAME 0x00000300 -typedef struct _TA_APPLETALK_ADDR -{ +typedef struct _TA_APPLETALK_ADDR { LONG TAAddressCount; struct _AddrAtalk { USHORT AddressLength; @@ -466,8 +495,7 @@ typedef struct _TA_APPLETALK_ADDR } Address[1]; } TA_APPLETALK_ADDRESS, *PTA_APPLETALK_ADDRESS; -typedef struct _TA_ADDRESS_IP -{ +typedef struct _TA_ADDRESS_IP { LONG TAAddressCount; struct _AddrIp { USHORT AddressLength; @@ -476,8 +504,7 @@ typedef struct _TA_ADDRESS_IP } Address[1]; } TA_ADDRESS_IP, *PTA_ADDRESS_IP; -typedef struct _TA_ADDRESS_IPX -{ +typedef struct _TA_ADDRESS_IPX { LONG TAAddressCount; struct _AddrIpx { USHORT AddressLength; @@ -486,8 +513,7 @@ typedef struct _TA_ADDRESS_IPX } Address[1]; } TA_IPX_ADDRESS, *PTA_IPX_ADDRESS; -typedef struct _TA_NETBIOS_ADDRESS -{ +typedef struct _TA_NETBIOS_ADDRESS { LONG TAAddressCount; struct _Addr{ USHORT AddressLength; @@ -496,8 +522,7 @@ typedef struct _TA_NETBIOS_ADDRESS } Address[1]; } TA_NETBIOS_ADDRESS, *PTA_NETBIOS_ADDRESS; -typedef struct _TA_ADDRESS_NS -{ +typedef struct _TA_ADDRESS_NS { LONG TAAddressCount; struct _AddrNs { USHORT AddressLength; @@ -506,8 +531,7 @@ typedef struct _TA_ADDRESS_NS } Address[1]; } TA_NS_ADDRESS, *PTA_NS_ADDRESS; -typedef struct _TA_ADDRESS_VNS -{ +typedef struct _TA_ADDRESS_VNS { LONG TAAddressCount; struct _AddrVns { USHORT AddressLength; @@ -516,11 +540,28 @@ typedef struct _TA_ADDRESS_VNS } Address[1]; } TA_VNS_ADDRESS, *PTA_VNS_ADDRESS; +typedef struct _TA_ADDRESS_IP6 { + LONG TAAddressCount; + struct _AddrIp6 { + USHORT AddressLength; + USHORT AddressType; + TDI_ADDRESS_IP6 Address[1]; + } Address [1]; +} TA_IP6_ADDRESS, *PTA_IP6_ADDRESS; + +typedef struct _TA_ADDRESS_NETBIOS_UNICODE_EX { + LONG TAAddressCount; + struct _AddrNetbiosWCharEx { + USHORT AddressLength; + USHORT AddressType; + TDI_ADDRESS_NETBIOS_UNICODE_EX Address[1]; + } Address [1]; +} TA_NETBIOS_UNICODE_EX_ADDRESS, *PTA_NETBIOS_UNICODE_EX_ADDRESS; + /* Structures used for TdiQueryInformation and TdiSetInformation */ -typedef struct _TDI_ENDPOINT_INFO -{ +typedef struct _TDI_ENDPOINT_INFO { ULONG State; ULONG Event; ULONG TransmittedTsdus; @@ -534,8 +575,7 @@ typedef struct _TDI_ENDPOINT_INFO ULONG SecurityCompartment; } TDI_ENDPOINT_INFO, *PTDI_ENDPOINT_INFO; -typedef struct _TDI_CONNECTION_INFO -{ +typedef struct _TDI_CONNECTION_INFO { ULONG State; ULONG Event; ULONG TransmittedTsdus; @@ -549,19 +589,16 @@ typedef struct _TDI_CONNECTION_INFO BOOLEAN Unreliable; } TDI_CONNECTION_INFO, *PTDI_CONNECTION_INFO; -typedef struct _TDI_DATAGRAM_INFO -{ +typedef struct _TDI_DATAGRAM_INFO { ULONG MaximumDatagramBytes; ULONG MaximumDatagramCount; } TDI_DATAGRAM_INFO, *PTDI_DATAGRAM_INFO; -typedef struct _TDI_MAX_DATAGRAM_INFO -{ +typedef struct _TDI_MAX_DATAGRAM_INFO { ULONG MaxDatagramSize; } TDI_MAX_DATAGRAM_INFO, *PTDI_MAX_DATAGRAM_INFO; -typedef struct _TDI_PROVIDER_INFO -{ +typedef struct _TDI_PROVIDER_INFO { ULONG Version; ULONG MaxSendSize; ULONG MaxConnectionUserData; @@ -588,17 +625,20 @@ typedef struct _TDI_PROVIDER_INFO #define TDI_SERVICE_POINT_TO_POINT 0x00001000 #define TDI_SERVICE_MESSAGE_MODE 0x00002000 #define TDI_SERVICE_HALF_DUPLEX 0x00004000 +#define TDI_SERVICE_DGRAM_CONNECTION 0x00008000 +#define TDI_SERVICE_FORCE_ACCESS_CHECK 0x00010000 +#define TDI_SERVICE_SEND_AND_DISCONNECT 0x00020000 +#define TDI_SERVICE_DIRECT_ACCEPT 0x00040000 +#define TDI_SERVICE_ACCEPT_LOCAL_ADDR 0x00080000 -typedef struct _TDI_PROVIDER_RESOURCE_STATS -{ +typedef struct _TDI_PROVIDER_RESOURCE_STATS { ULONG ResourceId; ULONG MaximumResourceUsed; ULONG AverageResourceUsed; ULONG ResourceExhausted; } TDI_PROVIDER_RESOURCE_STATS, *PTDI_PROVIDER_RESOURCE_STATS; -typedef struct _TDI_PROVIDER_STATISTICS -{ +typedef struct _TDI_PROVIDER_STATISTICS { ULONG Version; ULONG OpenConnections; ULONG ConnectionsAfterNoRetry; @@ -639,6 +679,30 @@ typedef struct _TDI_PROVIDER_STATISTICS TDI_PROVIDER_RESOURCE_STATS Resources[1]; } TDI_PROVIDER_STATISTICS, *PTDI_PROVIDER_STATISTICS; -#endif /* __TDI_H */ +#define TDI_EVENT_CONNECT 0 +#define TDI_EVENT_DISCONNECT 1 +#define TDI_EVENT_ERROR 2 +#define TDI_EVENT_RECEIVE 3 +#define TDI_EVENT_RECEIVE_DATAGRAM 4 +#define TDI_EVENT_RECEIVE_EXPEDITED 5 +#define TDI_EVENT_SEND_POSSIBLE 6 -/* EOF */ +typedef struct _TDI_REQUEST_ASSOCIATE { + TDI_REQUEST Request; + HANDLE AddressHandle; +} TDI_REQUEST_ASSOCIATE_ADDRESS, *PTDI_REQUEST_ASSOCIATE_ADDRESS; + +#define NDIS_PACKET_POOL_TAG_FOR_NWLNKIPX 'iPDN' +#define NDIS_PACKET_POOL_TAG_FOR_NWLNKSPX 'sPDN' +#define NDIS_PACKET_POOL_TAG_FOR_NWLNKNB 'nPDN' +#define NDIS_PACKET_POOL_TAG_FOR_TCPIP 'tPDN' +#define NDIS_PACKET_POOL_TAG_FOR_NBF 'bPDN' +#define NDIS_PACKET_POOL_TAG_FOR_APPLETALK 'aPDN' + +#pragma pack(pop) + +#ifdef __cplusplus +} +#endif + +#endif /* __TDI_H */ diff --git a/reactos/include/net/tdiinfo.h b/reactos/include/net/tdiinfo.h index c734daac9e6..415c66de48d 100644 --- a/reactos/include/net/tdiinfo.h +++ b/reactos/include/net/tdiinfo.h @@ -1,20 +1,85 @@ /* - * COPYRIGHT: See COPYING in the top level directory - * PROJECT: ReactOS TDI library - * FILE: include/net/tdiinfo.h - * PURPOSE: TDI definitions for Tdi(Query/Set)InformationEx + * tdiinfo.h + * + * TDI set and query information interface + * + * This file is part of the w32api package. + * + * Contributors: + * Created by Casper S. Hornstrup + * + * THIS SOFTWARE IS NOT COPYRIGHTED + * + * This source code is offered for use in the public domain. You may + * use, modify or distribute it freely. + * + * This code is distributed in the hope that it will be useful but + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY + * DISCLAIMED. This includes but is not limited to warranties of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * */ + #ifndef __TDIINFO_H #define __TDIINFO_H -typedef struct TDIEntityID -{ +#if __GNUC__ >=3 +#pragma GCC system_header +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#pragma pack(push,4) + +#include "ntddk.h" + + +typedef struct TDIEntityID { ULONG tei_entity; ULONG tei_instance; } TDIEntityID; -typedef struct TDIObjectID -{ +#define MAX_TDI_ENTITIES 512 +#define INVALID_ENTITY_INSTANCE -1 +#define GENERIC_ENTITY 0 +#define ENTITY_LIST_ID 0 +#define ENTITY_TYPE_ID 1 + +#define AT_ENTITY 0x280 +#define CL_NL_ENTITY 0x301 +#define CL_TL_ENTITY 0x401 +#define CO_NL_ENTITY 0x300 +#define CO_TL_ENTITY 0x400 +#define ER_ENTITY 0x380 +#define IF_ENTITY 0x200 + +#define AT_ARP 0x280 +#define AT_NULL 0x282 +#define CL_TL_NBF 0x401 +#define CL_TL_UDP 0x403 +#define CL_NL_IPX 0x301 +#define CL_NL_IP 0x303 +#define CO_TL_NBF 0x400 +#define CO_TL_SPX 0x402 +#define CO_TL_TCP 0x404 +#define CO_TL_SPP 0x406 +#define ER_ICMP 0x380 +#define IF_GENERIC 0x200 +#define IF_MIB 0x202 + +/* TDIObjectID.toi_class constants */ +#define INFO_CLASS_GENERIC 0x100 +#define INFO_CLASS_PROTOCOL 0x200 +#define INFO_CLASS_IMPLEMENTATION 0x300 + +/* TDIObjectID.toi_type constants */ +#define INFO_TYPE_PROVIDER 0x100 +#define INFO_TYPE_ADDRESS_OBJECT 0x200 +#define INFO_TYPE_CONNECTION 0x300 + +typedef struct _TDIObjectID { TDIEntityID toi_entity; ULONG toi_class; ULONG toi_type; @@ -23,74 +88,28 @@ typedef struct TDIObjectID #define CONTEXT_SIZE 16 -#define MAX_TDI_ENTITIES 512 - -#define INFO_CLASS_GENERIC 0x100 -#define INFO_CLASS_PROTOCOL 0x200 -#define INFO_CLASS_IMPLEMENTATION 0x300 - -#define INFO_TYPE_PROVIDER 0x100 -#define INFO_TYPE_ADDRESS_OBJECT 0x200 -#define INFO_TYPE_CONNECTION 0x300 - - -#define ENTITY_LIST_ID 0 - -#define GENERIC_ENTITY 0 - - -#define IF_ENTITY 0x200 - -#define AT_ENTITY 0x280 - -#define CO_NL_ENTITY 0x300 -#define CL_NL_ENTITY 0x301 - -#define ER_ENTITY 0x380 - -#define CO_TL_ENTITY 0x400 -#define CL_TL_ENTITY 0x401 - - -/* IDs supported by all entities */ - -#define ENTITY_TYPE_ID 1 - - -#define IF_GENERIC 0x200 -#define IF_MIB 0x202 - -#define AT_ARP 0x280 -#define AT_NULL 0x282 - -#define CL_NL_IPX 0x301 -#define CL_NL_IP 0x303 - -#define ER_ICMP 0x380 - -#define CO_TL_NBF 0x400 -#define CO_TL_SPX 0x402 -#define CO_TL_TCP 0x404 -#define CO_TL_SPP 0x406 - -#define CL_TL_NBF 0x401 -#define CL_TL_UDP 0x403 - -/* TCP specific structures */ - -typedef struct _TCP_REQUEST_QUERY_INFORMATION_EX -{ +typedef struct _TCP_REQUEST_QUERY_INFORMATION_EX { TDIObjectID ID; UCHAR Context[CONTEXT_SIZE]; } TCP_REQUEST_QUERY_INFORMATION_EX, *PTCP_REQUEST_QUERY_INFORMATION_EX; -typedef struct _TCP_REQUEST_SET_INFORMATION_EX -{ +#if defined(_WIN64) +typedef struct _TCP_REQUEST_QUERY_INFORMATION_EX32 { + TDIObjectID ID; + ULONG32 Context[CONTEXT_SIZE / sizeof(ULONG32)]; +} TCP_REQUEST_QUERY_INFORMATION_EX32, *PTCP_REQUEST_QUERY_INFORMATION_EX32; +#endif /* _WIN64 */ + +typedef struct _TCP_REQUEST_SET_INFORMATION_EX { TDIObjectID ID; UINT BufferSize; UCHAR Buffer[1]; } TCP_REQUEST_SET_INFORMATION_EX, *PTCP_REQUEST_SET_INFORMATION_EX; -#endif /* __TDIINFO_H */ +#pragma pack(pop) -/* EOF */ +#ifdef __cplusplus +} +#endif + +#endif /* __TDIINFO_H */ diff --git a/reactos/include/net/tdikrnl.h b/reactos/include/net/tdikrnl.h index abfc4cbb76b..b22123151d9 100644 --- a/reactos/include/net/tdikrnl.h +++ b/reactos/include/net/tdikrnl.h @@ -1,20 +1,56 @@ /* - * COPYRIGHT: See COPYING in the top level directory - * PROJECT: ReactOS TDI library - * FILE: include/net/tdikrnl.h - * PURPOSE: TDI definitions for kernel mode drivers + * tdikrnl.h + * + * TDI kernel mode definitions + * + * This file is part of the w32api package. + * + * Contributors: + * Created by Casper S. Hornstrup + * + * THIS SOFTWARE IS NOT COPYRIGHTED + * + * This source code is offered for use in the public domain. You may + * use, modify or distribute it freely. + * + * This code is distributed in the hope that it will be useful but + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY + * DISCLAIMED. This includes but is not limited to warranties of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * */ + #ifndef __TDIKRNL_H #define __TDIKRNL_H +#if __GNUC__ >=3 +#pragma GCC system_header +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#pragma pack(push,4) + +#include "ntddk.h" #include "tdi.h" #ifndef STDCALL #define STDCALL #endif +#define DDKAPI STDCALL -typedef struct _TDI_REQUEST_KERNEL -{ +#if defined(_TDI_) +// #define TDIKRNLAPI DECLSPEC_EXPORT + #define TDIKRNLAPI +#else +// #define TDIKRNLAPI DECLSPEC_IMPORT + #define TDIKRNLAPI +#endif + + +typedef struct _TDI_REQUEST_KERNEL { ULONG RequestFlags; PTDI_CONNECTION_INFORMATION RequestConnectionInformation; PTDI_CONNECTION_INFORMATION ReturnConnectionInformation; @@ -40,7 +76,6 @@ typedef struct _TDI_REQUEST_KERNEL #define TDI_DIRECT_SEND 0x27 #define TDI_DIRECT_SEND_DATAGRAM 0x29 - #define TDI_TRANSPORT_ADDRESS_FILE 1 #define TDI_CONNECTION_FILE 2 #define TDI_CONTROL_CHANNEL_FILE 3 @@ -50,8 +85,7 @@ typedef struct _TDI_REQUEST_KERNEL #define IOCTL_TDI_QUERY_DIRECT_SENDDG_HANDLER TDI_CONTROL_CODE(0x81, METHOD_NEITHER) /* TdiAssociateAddress */ -typedef struct _TDI_REQUEST_KERNEL_ASSOCIATE -{ +typedef struct _TDI_REQUEST_KERNEL_ASSOCIATE { HANDLE AddressHandle; } TDI_REQUEST_KERNEL_ASSOCIATE, *PTDI_REQUEST_KERNEL_ASSOCIATE; @@ -60,22 +94,31 @@ typedef TDI_REQUEST_KERNEL TDI_REQUEST_KERNEL_DISASSOCIATE, *PTDI_REQUEST_KERNEL_DISASSOCIATE; /* TdiAccept */ -typedef struct _TDI_REQUEST_KERNEL_ACCEPT -{ +typedef struct _TDI_REQUEST_KERNEL_ACCEPT { PTDI_CONNECTION_INFORMATION RequestConnectionInformation; PTDI_CONNECTION_INFORMATION ReturnConnectionInformation; } TDI_REQUEST_KERNEL_ACCEPT, *PTDI_REQUEST_KERNEL_ACCEPT; +/* TdiConnect */ +typedef TDI_REQUEST_KERNEL TDI_REQUEST_KERNEL_CONNECT, + *PTDI_REQUEST_KERNEL_CONNECT; + +/* TdiDisconnect */ +typedef TDI_REQUEST_KERNEL TDI_REQUEST_KERNEL_DISCONNECT, + *PTDI_REQUEST_KERNEL_DISCONNECT; + +/* TdiListen */ +typedef TDI_REQUEST_KERNEL TDI_REQUEST_KERNEL_LISTEN, + *PTDI_REQUEST_KERNEL_LISTEN; + /* TdiReceive */ -typedef struct _TDI_REQUEST_KERNEL_RECEIVE -{ +typedef struct _TDI_REQUEST_KERNEL_RECEIVE { ULONG ReceiveLength; ULONG ReceiveFlags; } TDI_REQUEST_KERNEL_RECEIVE, *PTDI_REQUEST_KERNEL_RECEIVE; /* TdiReceiveDatagram */ -typedef struct _TDI_REQUEST_KERNEL_RECEIVEDG -{ +typedef struct _TDI_REQUEST_KERNEL_RECEIVEDG { ULONG ReceiveLength; PTDI_CONNECTION_INFORMATION ReceiveDatagramInformation; PTDI_CONNECTION_INFORMATION ReturnDatagramInformation; @@ -83,37 +126,32 @@ typedef struct _TDI_REQUEST_KERNEL_RECEIVEDG } TDI_REQUEST_KERNEL_RECEIVEDG, *PTDI_REQUEST_KERNEL_RECEIVEDG; /* TdiSend */ -typedef struct _TDI_REQUEST_KERNEL_SEND -{ +typedef struct _TDI_REQUEST_KERNEL_SEND { ULONG SendLength; ULONG SendFlags; } TDI_REQUEST_KERNEL_SEND, *PTDI_REQUEST_KERNEL_SEND; /* TdiSendDatagram */ -typedef struct _TDI_REQUEST_KERNEL_SENDDG -{ +typedef struct _TDI_REQUEST_KERNEL_SENDDG { ULONG SendLength; PTDI_CONNECTION_INFORMATION SendDatagramInformation; } TDI_REQUEST_KERNEL_SENDDG, *PTDI_REQUEST_KERNEL_SENDDG; /* TdiSetEventHandler */ -typedef struct _TDI_REQUEST_KERNEL_SET_EVENT -{ +typedef struct _TDI_REQUEST_KERNEL_SET_EVENT { LONG EventType; PVOID EventHandler; PVOID EventContext; } TDI_REQUEST_KERNEL_SET_EVENT, *PTDI_REQUEST_KERNEL_SET_EVENT; /* TdiQueryInformation */ -typedef struct _TDI_REQUEST_KERNEL_QUERY_INFO -{ +typedef struct _TDI_REQUEST_KERNEL_QUERY_INFO { LONG QueryType; PTDI_CONNECTION_INFORMATION RequestConnectionInformation; } TDI_REQUEST_KERNEL_QUERY_INFORMATION, *PTDI_REQUEST_KERNEL_QUERY_INFORMATION; /* TdiSetInformation */ -typedef struct _TDI_REQUEST_KERNEL_SET_INFO -{ +typedef struct _TDI_REQUEST_KERNEL_SET_INFO { LONG SetType; PTDI_CONNECTION_INFORMATION RequestConnectionInformation; } TDI_REQUEST_KERNEL_SET_INFORMATION, *PTDI_REQUEST_KERNEL_SET_INFORMATION; @@ -130,8 +168,10 @@ typedef struct _TDI_REQUEST_KERNEL_SET_INFO #define TDI_EVENT_CHAINED_RECEIVE 7 #define TDI_EVENT_CHAINED_RECEIVE_DATAGRAM 8 #define TDI_EVENT_CHAINED_RECEIVE_EXPEDITED 9 +#define TDI_EVENT_ERROR_EX 10 -typedef NTSTATUS (*PTDI_IND_CONNECT)( +typedef NTSTATUS +(*PTDI_IND_CONNECT)( IN PVOID TdiEventContext, IN LONG RemoteAddressLength, IN PVOID RemoteAddress, @@ -142,7 +182,10 @@ typedef NTSTATUS (*PTDI_IND_CONNECT)( OUT CONNECTION_CONTEXT *ConnectionContext, OUT PIRP *AcceptIrp); -NTSTATUS STDCALL TdiDefaultConnectHandler( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDefaultConnectHandler( IN PVOID TdiEventContext, IN LONG RemoteAddressLength, IN PVOID RemoteAddress, @@ -153,7 +196,8 @@ NTSTATUS STDCALL TdiDefaultConnectHandler( OUT CONNECTION_CONTEXT *ConnectionContext, OUT PIRP *AcceptIrp); -typedef NTSTATUS (*PTDI_IND_DISCONNECT)( +typedef NTSTATUS +(*PTDI_IND_DISCONNECT)( IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN LONG DisconnectDataLength, @@ -162,7 +206,10 @@ typedef NTSTATUS (*PTDI_IND_DISCONNECT)( IN PVOID DisconnectInformation, IN ULONG DisconnectFlags); -NTSTATUS STDCALL TdiDefaultDisconnectHandler( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDefaultDisconnectHandler( IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN LONG DisconnectDataLength, @@ -171,15 +218,26 @@ NTSTATUS STDCALL TdiDefaultDisconnectHandler( IN PVOID DisconnectInformation, IN ULONG DisconnectFlags); -typedef NTSTATUS (*PTDI_IND_ERROR)( +typedef NTSTATUS +(*PTDI_IND_ERROR)( IN PVOID TdiEventContext, IN NTSTATUS Status); -NTSTATUS STDCALL TdiDefaultErrorHandler( +typedef NTSTATUS DDKAPI +(*PTDI_IND_ERROR_EX)( + IN PVOID TdiEventContext, + IN NTSTATUS Status, + IN PVOID Buffer); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDefaultErrorHandler( IN PVOID TdiEventContext, IN NTSTATUS Status); -typedef NTSTATUS (*PTDI_IND_RECEIVE)( +typedef NTSTATUS +(*PTDI_IND_RECEIVE)( IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN ULONG ReceiveFlags, @@ -189,7 +247,10 @@ typedef NTSTATUS (*PTDI_IND_RECEIVE)( IN PVOID Tsdu, OUT PIRP *IoRequestPacket); -NTSTATUS STDCALL TdiDefaultReceiveHandler( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDefaultReceiveHandler( IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN ULONG ReceiveFlags, @@ -199,7 +260,8 @@ NTSTATUS STDCALL TdiDefaultReceiveHandler( IN PVOID Tsdu, OUT PIRP *IoRequestPacket); -typedef NTSTATUS (*PTDI_IND_RECEIVE_DATAGRAM)( +typedef NTSTATUS +(*PTDI_IND_RECEIVE_DATAGRAM)( IN PVOID TdiEventContext, IN LONG SourceAddressLength, IN PVOID SourceAddress, @@ -212,7 +274,9 @@ typedef NTSTATUS (*PTDI_IND_RECEIVE_DATAGRAM)( IN PVOID Tsdu, OUT PIRP *IoRequestPacket); -NTSTATUS STDCALL TdiDefaultRcvDatagramHandler( +TDIKRNLAPI +NTSTATUS DDKAPI +TdiDefaultRcvDatagramHandler( IN PVOID TdiEventContext, IN LONG SourceAddressLength, IN PVOID SourceAddress, @@ -225,7 +289,8 @@ NTSTATUS STDCALL TdiDefaultRcvDatagramHandler( IN PVOID Tsdu, OUT PIRP *IoRequestPacket); -typedef NTSTATUS (*PTDI_IND_RECEIVE_EXPEDITED)( +typedef NTSTATUS +(*PTDI_IND_RECEIVE_EXPEDITED)( IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN ULONG ReceiveFlags, @@ -235,7 +300,10 @@ typedef NTSTATUS (*PTDI_IND_RECEIVE_EXPEDITED)( IN PVOID Tsdu, OUT PIRP *IoRequestPacket); -NTSTATUS STDCALL TdiDefaultRcvExpeditedHandler( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDefaultRcvExpeditedHandler( IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN ULONG ReceiveFlags, @@ -245,7 +313,8 @@ NTSTATUS STDCALL TdiDefaultRcvExpeditedHandler( IN PVOID Tsdu, OUT PIRP *IoRequestPacket); -typedef NTSTATUS (*PTDI_IND_CHAINED_RECEIVE)( +typedef NTSTATUS +(*PTDI_IND_CHAINED_RECEIVE)( IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN ULONG ReceiveFlags, @@ -254,7 +323,10 @@ typedef NTSTATUS (*PTDI_IND_CHAINED_RECEIVE)( IN PMDL Tsdu, IN PVOID TsduDescriptor); -NTSTATUS STDCALL TdiDefaultChainedReceiveHandler( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDefaultChainedReceiveHandler( IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN ULONG ReceiveFlags, @@ -263,7 +335,8 @@ NTSTATUS STDCALL TdiDefaultChainedReceiveHandler( IN PMDL Tsdu, IN PVOID TsduDescriptor); -typedef NTSTATUS (*PTDI_IND_CHAINED_RECEIVE_DATAGRAM)( +typedef NTSTATUS +(*PTDI_IND_CHAINED_RECEIVE_DATAGRAM)( IN PVOID TdiEventContext, IN LONG SourceAddressLength, IN PVOID SourceAddress, @@ -275,7 +348,10 @@ typedef NTSTATUS (*PTDI_IND_CHAINED_RECEIVE_DATAGRAM)( IN PMDL Tsdu, IN PVOID TsduDescriptor); -NTSTATUS STDCALL TdiDefaultChainedRcvDatagramHandler( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDefaultChainedRcvDatagramHandler( IN PVOID TdiEventContext, IN LONG SourceAddressLength, IN PVOID SourceAddress, @@ -287,7 +363,8 @@ NTSTATUS STDCALL TdiDefaultChainedRcvDatagramHandler( IN PMDL Tsdu, IN PVOID TsduDescriptor); -typedef NTSTATUS (*PTDI_IND_CHAINED_RECEIVE_EXPEDITED)( +typedef NTSTATUS +(*PTDI_IND_CHAINED_RECEIVE_EXPEDITED)( IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN ULONG ReceiveFlags, @@ -296,7 +373,10 @@ typedef NTSTATUS (*PTDI_IND_CHAINED_RECEIVE_EXPEDITED)( IN PMDL Tsdu, IN PVOID TsduDescriptor); -NTSTATUS STDCALL TdiDefaultChainedRcvExpeditedHandler( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDefaultChainedRcvExpeditedHandler( IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN ULONG ReceiveFlags, @@ -305,12 +385,16 @@ NTSTATUS STDCALL TdiDefaultChainedRcvExpeditedHandler( IN PMDL Tsdu, IN PVOID TsduDescriptor); -typedef NTSTATUS (*PTDI_IND_SEND_POSSIBLE)( +typedef NTSTATUS +(*PTDI_IND_SEND_POSSIBLE)( IN PVOID TdiEventContext, IN PVOID ConnectionContext, IN ULONG BytesAvailable); -NTSTATUS STDCALL TdiDefaultSendPossibleHandler( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDefaultSendPossibleHandler( IN PVOID TdiEventContext, IN PVOID ConnectionContext, IN ULONG BytesAvailable); @@ -320,21 +404,21 @@ NTSTATUS STDCALL TdiDefaultSendPossibleHandler( /* Macros and functions to build IRPs */ #define TdiBuildBaseIrp( \ - Irp, DevObj, FileObj, CompRoutine, Contxt, IrpSp, Minor) \ + bIrp, bDevObj, bFileObj, bCompRoutine, bContxt, bIrpSp, bMinor) \ { \ - IrpSp->MajorFunction = IRP_MJ_INTERNAL_DEVICE_CONTROL; \ - IrpSp->MinorFunction = (Minor); \ - IrpSp->DeviceObject = (DevObj); \ - IrpSp->FileObject = (FileObj); \ - \ - if (CompRoutine) \ - IoSetCompletionRoutine(Irp, CompRoutine, Contxt, TRUE, TRUE, TRUE) \ + bIrpSp->MajorFunction = IRP_MJ_INTERNAL_DEVICE_CONTROL; \ + bIrpSp->MinorFunction = (bMinor); \ + bIrpSp->DeviceObject = (bDevObj); \ + bIrpSp->FileObject = (bFileObj); \ + if (bCompRoutine) \ + IoSetCompletionRoutine(bIrp, bCompRoutine, bContxt, TRUE, TRUE, TRUE) \ else \ - IoSetCompletionRoutine(Irp, NULL, NULL, FALSE, FALSE, FALSE); \ + IoSetCompletionRoutine(bIrp, NULL, NULL, FALSE, FALSE, FALSE); \ } /* - * VOID TdiBuildAccept( + * VOID + * TdiBuildAccept( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -361,7 +445,8 @@ NTSTATUS STDCALL TdiDefaultSendPossibleHandler( } /* - * VOID TdiBuildAction( + * VOID + * TdiBuildAction( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -383,7 +468,8 @@ NTSTATUS STDCALL TdiDefaultSendPossibleHandler( } /* - * VOID TdiBuildAssociateAddress( + * VOID + * TdiBuildAssociateAddress( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -407,7 +493,8 @@ NTSTATUS STDCALL TdiDefaultSendPossibleHandler( } /* - * VOID TdiBuildConnect( + * VOID + * TdiBuildConnect( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -436,7 +523,8 @@ NTSTATUS STDCALL TdiDefaultSendPossibleHandler( } /* - * VOID TdiBuildDisassociateAddress( + * VOID + * TdiBuildDisassociateAddress( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -455,7 +543,8 @@ NTSTATUS STDCALL TdiDefaultSendPossibleHandler( } /* - * VOID TdiBuildDisconnect( + * VOID + * TdiBuildDisconnect( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -486,7 +575,8 @@ NTSTATUS STDCALL TdiDefaultSendPossibleHandler( } /* - * PIRP TdiBuildInternalDeviceControlIrp( + * PIRP + * TdiBuildInternalDeviceControlIrp( * IN CCHAR IrpSubFunction, * IN PDEVICE_OBJECT DeviceObject, * IN PFILE_OBJECT FileObject, @@ -502,7 +592,8 @@ NTSTATUS STDCALL TdiDefaultSendPossibleHandler( TRUE, Event, IoStatusBlock) /* - * VOID TdiBuildListen( + * VOID + * TdiBuildListen( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -530,18 +621,25 @@ NTSTATUS STDCALL TdiDefaultSendPossibleHandler( _Request->RequestFlags = (Flags); \ } -VOID STDCALL TdiBuildNetbiosAddress( +TDIKRNLAPI +VOID +DDKAPI +TdiBuildNetbiosAddress( IN PUCHAR NetbiosName, IN BOOLEAN IsGroupName, IN OUT PTA_NETBIOS_ADDRESS NetworkName); -NTSTATUS STDCALL TdiBuildNetbiosAddressEa( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiBuildNetbiosAddressEa( IN PUCHAR Buffer, IN BOOLEAN IsGroupName, IN PUCHAR NetbiosName); /* - * VOID TdiBuildQueryInformation( + * VOID + * TdiBuildQueryInformation( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -568,7 +666,8 @@ NTSTATUS STDCALL TdiBuildNetbiosAddressEa( } /* - * VOID TdiBuildReceive( + * VOID + * TdiBuildReceive( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -597,7 +696,8 @@ NTSTATUS STDCALL TdiBuildNetbiosAddressEa( } /* - * VOID TdiBuildReceiveDatagram( + * VOID + * TdiBuildReceiveDatagram( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -630,7 +730,8 @@ NTSTATUS STDCALL TdiBuildNetbiosAddressEa( } /* - * VOID TdiBuildSend( + * VOID + * TdiBuildSend( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -659,7 +760,8 @@ NTSTATUS STDCALL TdiBuildNetbiosAddressEa( } /* - * VOID TdiBuildSendDatagram( + * VOID + * TdiBuildSendDatagram( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -688,7 +790,8 @@ NTSTATUS STDCALL TdiBuildNetbiosAddressEa( } /* - * VOID TdiBuildSetEventHandler( + * VOID + * TdiBuildSetEventHandler( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -717,7 +820,8 @@ NTSTATUS STDCALL TdiBuildNetbiosAddressEa( } /* - * VOID TdiBuildSetInformation( + * VOID + * TdiBuildSetInformation( * IN PIRP Irp, * IN PDEVICE_OBJECT DevObj, * IN PFILE_OBJECT FileObj, @@ -743,12 +847,93 @@ NTSTATUS STDCALL TdiBuildNetbiosAddressEa( (Irp)->MdlAddress = (MdlAddr); \ } +/* TDI20_CLIENT_INTERFACE_INFO.TdiVersion constants */ +#define TDI_CURRENT_MAJOR_VERSION 2 +#define TDI_CURRENT_MINOR_VERSION 0 + +#define TDI_CURRENT_VERSION ((TDI_CURRENT_MINOR_VERSION) << 8 \ + | (TDI_CURRENT_MAJOR_VERSION)) + +#define TDI_VERSION_ONE 0x0001 + +typedef enum _TDI_PNP_OPCODE { + TDI_PNP_OP_MIN, + TDI_PNP_OP_ADD, + TDI_PNP_OP_DEL, + TDI_PNP_OP_UPDATE, + TDI_PNP_OP_PROVIDERREADY, + TDI_PNP_OP_NETREADY, + TDI_PNP_OP_ADD_IGNORE_BINDING, + TDI_PNP_OP_DELETE_IGNORE_BINDING, + TDI_PNP_OP_MAX +} TDI_PNP_OPCODE; + +/* TDI_PNP_CONTEXT.ContextType */ +#define TDI_PNP_CONTEXT_TYPE_IF_NAME 0x1 +#define TDI_PNP_CONTEXT_TYPE_IF_ADDR 0x2 +#define TDI_PNP_CONTEXT_TYPE_PDO 0x3 +#define TDI_PNP_CONTEXT_TYPE_FIRST_OR_LAST_IF 0x4 + +typedef struct _TDI_PNP_CONTEXT { + USHORT ContextSize; + USHORT ContextType; + UCHAR ContextData[1]; +} TDI_PNP_CONTEXT, *PTDI_PNP_CONTEXT; + +typedef VOID DDKAPI +(*TDI_ADD_ADDRESS_HANDLER)( + IN PTA_ADDRESS Address); + +typedef VOID DDKAPI +(*TDI_ADD_ADDRESS_HANDLER_V2)( + IN PTA_ADDRESS Address, + IN PUNICODE_STRING DeviceName, + IN PTDI_PNP_CONTEXT Context); + +typedef VOID DDKAPI +(*TDI_BINDING_HANDLER)( + IN TDI_PNP_OPCODE PnPOpcode, + IN PUNICODE_STRING DeviceName, + IN PWSTR MultiSZBindList); + +typedef VOID DDKAPI +(*TDI_BIND_HANDLER)( + IN PUNICODE_STRING DeviceName); + +typedef VOID DDKAPI +(*TDI_DEL_ADDRESS_HANDLER)( + IN PTA_ADDRESS Address); + +typedef VOID DDKAPI +(*TDI_DEL_ADDRESS_HANDLER_V2)( + IN PTA_ADDRESS Address, + IN PUNICODE_STRING DeviceName, + IN PTDI_PNP_CONTEXT Context); + +typedef NTSTATUS DDKAPI +(*TDI_PNP_POWER_HANDLER)( + IN PUNICODE_STRING DeviceName, + IN PNET_PNP_EVENT PowerEvent, + IN PTDI_PNP_CONTEXT Context1, + IN PTDI_PNP_CONTEXT Context2); + +typedef VOID DDKAPI +(*TDI_UNBIND_HANDLER)( + IN PUNICODE_STRING DeviceName); + +typedef VOID DDKAPI +(*ProviderPnPPowerComplete)( + IN PNET_PNP_EVENT NetEvent, + IN NTSTATUS ProviderStatus); + + /* TDI functions */ /* - * VOID TdiCompleteRequest( + * VOID + * TdiCompleteRequest( * IN PIRP Irp, * IN NTSTATUS Status); */ @@ -758,7 +943,10 @@ NTSTATUS STDCALL TdiBuildNetbiosAddressEa( IoCompleteRequest((Irp), IO_NETWORK_INCREMENT); \ } -NTSTATUS STDCALL TdiCopyBufferToMdl( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiCopyBufferToMdl( IN PVOID SourceBuffer, IN ULONG SourceOffset, IN ULONG SourceBytesToCopy, @@ -767,7 +955,8 @@ NTSTATUS STDCALL TdiCopyBufferToMdl( IN PULONG BytesCopied); /* - * VOID TdiCopyLookaheadData( + * VOID + * TdiCopyLookaheadData( * IN PVOID Destination, * IN PVOID Source, * IN ULONG Length, @@ -776,7 +965,20 @@ NTSTATUS STDCALL TdiCopyBufferToMdl( #define TdiCopyLookaheadData(Destination, Source, Length, ReceiveFlags) \ RtlCopyMemory(Destination, Source, Length) -NTSTATUS STDCALL TdiCopyMdlToBuffer( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiCopyMdlChainToMdlChain ( + IN PMDL SourceMdlChain, + IN ULONG SourceOffset, + IN PMDL DestinationMdlChain, + IN ULONG DestinationOffset, + OUT PULONG BytesCopied); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiCopyMdlToBuffer( IN PMDL SourceMdlChain, IN ULONG SourceOffset, IN PVOID DestinationBuffer, @@ -784,21 +986,157 @@ NTSTATUS STDCALL TdiCopyMdlToBuffer( IN ULONG DestinationBufferSize, OUT PULONG BytesCopied); -VOID STDCALL TdiMapBuffer( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDeregisterAddressChangeHandler( + IN HANDLE BindingHandle); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDeregisterDeviceObject( + IN HANDLE DevRegistrationHandle); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDeregisterNetAddress( + IN HANDLE AddrRegistrationHandle); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDeregisterPnPHandlers( + IN HANDLE BindingHandle); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiDeregisterProvider( + IN HANDLE ProviderHandle); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiEnumerateAddresses( + IN HANDLE BindingHandle); + +TDIKRNLAPI +VOID +DDKAPI +TdiInitialize( + VOID); + +TDIKRNLAPI +VOID +DDKAPI +TdiMapBuffer( IN PMDL MdlChain); -NTSTATUS STDCALL TdiMapUserRequest( +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiMapUserRequest( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp, IN PIO_STACK_LOCATION IrpSp); -VOID STDCALL TdiReturnChainedReceives( +TDIKRNLAPI +BOOLEAN +DDKAPI +TdiMatchPdoWithChainedReceiveContext( + IN PVOID TsduDescriptor, + IN PVOID PDO); + +TDIKRNLAPI +VOID +DDKAPI +TdiPnPPowerComplete( + IN HANDLE BindingHandle, + IN PNET_PNP_EVENT PowerEvent, + IN NTSTATUS Status); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiPnPPowerRequest( + IN PUNICODE_STRING DeviceName, + IN PNET_PNP_EVENT PowerEvent, + IN PTDI_PNP_CONTEXT Context1, + IN PTDI_PNP_CONTEXT Context2, + IN ProviderPnPPowerComplete ProtocolCompletionHandler); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiProviderReady( + IN HANDLE ProviderHandle); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiRegisterAddressChangeHandler( + IN TDI_ADD_ADDRESS_HANDLER AddHandler, + IN TDI_DEL_ADDRESS_HANDLER DeleteHandler, + OUT HANDLE *BindingHandle); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiRegisterDeviceObject( + IN PUNICODE_STRING DeviceName, + OUT HANDLE *DevRegistrationHandle); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiRegisterNetAddress( + IN PTA_ADDRESS Address, + IN PUNICODE_STRING DeviceName, + IN PTDI_PNP_CONTEXT Context, + OUT HANDLE *AddrRegistrationHandle); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiRegisterNotificationHandler( + IN TDI_BIND_HANDLER BindHandler, + IN TDI_UNBIND_HANDLER UnbindHandler, + OUT HANDLE *BindingHandle); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiRegisterPnPHandlers( + IN PTDI_CLIENT_INTERFACE_INFO ClientInterfaceInfo, + IN ULONG InterfaceInfoSize, + OUT HANDLE *BindingHandle); + +TDIKRNLAPI +NTSTATUS +DDKAPI +TdiRegisterProvider( + IN PUNICODE_STRING ProviderName, + OUT HANDLE *ProviderHandle); + +TDIKRNLAPI +VOID +DDKAPI +TdiReturnChainedReceives( IN PVOID *TsduDescriptors, IN ULONG NumberOfTsdus); -VOID STDCALL TdiUnmapBuffer( +TDIKRNLAPI +VOID +DDKAPI +TdiUnmapBuffer( IN PMDL MdlChain); -#endif /* __TDIKRNL_H */ +#pragma pack(pop) -/* EOF */ +#ifdef __cplusplus +} +#endif + +#endif /* __TDIKRNL_H */ diff --git a/reactos/include/net/tdistat.h b/reactos/include/net/tdistat.h new file mode 100644 index 00000000000..f0588d2579a --- /dev/null +++ b/reactos/include/net/tdistat.h @@ -0,0 +1,83 @@ +/* + * tdistat.h + * + * TDI status codes + * + * This file is part of the w32api package. + * + * Contributors: + * Created by Casper S. Hornstrup + * + * THIS SOFTWARE IS NOT COPYRIGHTED + * + * This source code is offered for use in the public domain. You may + * use, modify or distribute it freely. + * + * This code is distributed in the hope that it will be useful but + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY + * DISCLAIMED. This includes but is not limited to warranties of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + */ + +#ifndef __TDISTAT_H +#define __TDISTAT_H + +#if __GNUC__ >=3 +#pragma GCC system_header +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#define TDI_SUCCESS STATUS_SUCCESS +#define TDI_NO_RESOURCES STATUS_INSUFFICIENT_RESOURCES +#define TDI_ADDR_IN_USE STATUS_ADDRESS_ALREADY_EXISTS +#define TDI_BAD_ADDR STATUS_INVALID_ADDRESS_COMPONENT +#define TDI_NO_FREE_ADDR STATUS_TOO_MANY_ADDRESSES +#define TDI_ADDR_INVALID STATUS_INVALID_ADDRESS +#define TDI_ADDR_DELETED STATUS_ADDRESS_CLOSED +#define TDI_BUFFER_OVERFLOW STATUS_BUFFER_OVERFLOW +#define TDI_BAD_EVENT_TYPE STATUS_INVALID_PARAMETER +#define TDI_BAD_OPTION STATUS_INVALID_PARAMETER +#define TDI_CONN_REFUSED STATUS_CONNECTION_REFUSED +#define TDI_INVALID_CONNECTION STATUS_CONNECTION_INVALID +#define TDI_ALREADY_ASSOCIATED STATUS_ADDRESS_ALREADY_ASSOCIATED +#define TDI_NOT_ASSOCIATED STATUS_ADDRESS_NOT_ASSOCIATED +#define TDI_CONNECTION_ACTIVE STATUS_CONNECTION_ACTIVE +#define TDI_CONNECTION_ABORTED STATUS_CONNECTION_ABORTED +#define TDI_CONNECTION_RESET STATUS_CONNECTION_RESET +#define TDI_TIMED_OUT STATUS_IO_TIMEOUT +#define TDI_GRACEFUL_DISC STATUS_GRACEFUL_DISCONNECT +#define TDI_NOT_ACCEPTED STATUS_DATA_NOT_ACCEPTED +#define TDI_MORE_PROCESSING STATUS_MORE_PROCESSING_REQUIRED +#define TDI_INVALID_STATE STATUS_INVALID_DEVICE_STATE +#define TDI_INVALID_PARAMETER STATUS_INVALID_PARAMETER +#define TDI_DEST_NET_UNREACH STATUS_NETWORK_UNREACHABLE +#define TDI_DEST_HOST_UNREACH STATUS_HOST_UNREACHABLE +#define TDI_DEST_UNREACHABLE TDI_DEST_HOST_UNREACH +#define TDI_DEST_PROT_UNREACH STATUS_PROTOCOL_UNREACHABLE +#define TDI_DEST_PORT_UNREACH STATUS_PORT_UNREACHABLE +#define TDI_INVALID_QUERY STATUS_INVALID_DEVICE_REQUEST +#define TDI_REQ_ABORTED STATUS_REQUEST_ABORTED +#define TDI_BUFFER_TOO_SMALL STATUS_BUFFER_TOO_SMALL +#define TDI_CANCELLED STATUS_CANCELLED +#define TDI_BUFFER_TOO_BIG STATUS_INVALID_BUFFER_SIZE +#define TDI_INVALID_REQUEST STATUS_INVALID_DEVICE_REQUEST +#define TDI_PENDING STATUS_PENDING +#define TDI_ITEM_NOT_FOUND STATUS_OBJECT_NAME_NOT_FOUND + +#define TDI_STATUS_BAD_VERSION 0xC0010004L +#define TDI_STATUS_BAD_CHARACTERISTICS 0xC0010005L + +#define TDI_OPTION_EOL 0 + +#define TDI_ADDRESS_OPTION_REUSE 1 +#define TDI_ADDRESS_OPTION_DHCP 2 + +#ifdef __cplusplus +} +#endif + +#endif /* __TDISTAT_H */