From 82af49e593fdea92a6ff0c91474ef27cebc021d2 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Sat, 16 May 2009 22:43:25 +0000 Subject: [PATCH] - Fix NDIS 3.0 miniport characteristics based on MSDN documentation - Add NDIS 5.1 miniport characteristics also based on MSDN documentation svn path=/trunk/; revision=40944 --- reactos/include/ddk/ndis.h | 45 +++++++++++++++++++++++++++++--------- 1 file changed, 35 insertions(+), 10 deletions(-) diff --git a/reactos/include/ddk/ndis.h b/reactos/include/ddk/ndis.h index 866e618eced..28d8387a996 100644 --- a/reactos/include/ddk/ndis.h +++ b/reactos/include/ddk/ndis.h @@ -3708,7 +3708,6 @@ typedef NDIS_STATUS DDKAPI #define NDIS30_MINIPORT_CHARACTERISTICS_S \ UCHAR MajorNdisVersion; \ UCHAR MinorNdisVersion; \ - USHORT Filler; \ UINT Reserved; \ W_CHECK_FOR_HANG_HANDLER CheckForHangHandler; \ W_DISABLE_INTERRUPT_HANDLER DisableInterruptHandler; \ @@ -3720,15 +3719,9 @@ typedef NDIS_STATUS DDKAPI W_QUERY_INFORMATION_HANDLER QueryInformationHandler; \ W_RECONFIGURE_HANDLER ReconfigureHandler; \ W_RESET_HANDLER ResetHandler; \ - _ANONYMOUS_UNION union { \ - W_SEND_HANDLER SendHandler; \ - WM_SEND_HANDLER WanSendHandler; \ - } _UNION_NAME(u1); \ + W_SEND_HANDLER SendHandler; \ W_SET_INFORMATION_HANDLER SetInformationHandler; \ - _ANONYMOUS_UNION union { \ - W_TRANSFER_DATA_HANDLER TransferDataHandler; \ - WM_TRANSFER_DATA_HANDLER WanTransferDataHandler; \ - } _UNION_NAME(u2); + W_TRANSFER_DATA_HANDLER TransferDataHandler; typedef struct _NDIS30_MINIPORT_CHARACTERISTICS { NDIS30_MINIPORT_CHARACTERISTICS_S @@ -3848,10 +3841,42 @@ typedef VOID DDKAPI IN NDIS_HANDLE MiniportAdapterContext, IN PVOID CancelId); +typedef VOID DDKAPI +(*W_PNP_EVENT_NOTIFY_HANDLER)( + IN NDIS_HANDLE MiniportAdapterContext, + IN NDIS_DEVICE_PNP_EVENT PnPEvent, + IN PVOID InformationBuffer, + IN ULONG InformationBufferLength); + +typedef VOID DDKAPI +(*W_MINIPORT_SHUTDOWN_HANDLER)( + IN PVOID ShutdownContext); + +#ifdef __cplusplus + +#define NDIS51_MINIPORT_CHARACTERISTICS_S \ + NDIS50_MINIPORT_CHARACTERISTICS Ndis50Chars; \ + W_CANCEL_SEND_PACKETS_HANDLER CancelSendPacketsHandler; \ + W_PNP_EVENT_NOTIFY_HANDLER PnPEventNotifyHandler; \ + W_MINIPORT_SHUTDOWN_HANDLER AdapterShutdownHandler; + +#else + +#define NDIS51_MINIPORT_CHARACTERISTICS_S \ + NDIS50_MINIPORT_CHARACTERISTICS_S \ + W_CANCEL_SEND_PACKETS_HANDLER CancelSendPacketsHandler; \ + W_PNP_EVENT_NOTIFY_HANDLER PnPEventNotifyHandler; \ + W_MINIPORT_SHUTDOWN_HANDLER AdapterShutdownHandler; + +#endif + +typedef struct _NDIS51_MINIPORT_CHARACTERISTICS { + NDIS51_MINIPORT_CHARACTERISTICS_S +} NDIS51_MINIPORT_CHARACTERISTICS, *PSNDIS51_MINIPORT_CHARACTERISTICS; #if defined(NDIS51_MINIPORT) typedef struct _NDIS_MINIPORT_CHARACTERISTICS { - NDIS50_MINIPORT_CHARACTERISTICS_S + NDIS51_MINIPORT_CHARACTERISTICS_S } NDIS_MINIPORT_CHARACTERISTICS, *PNDIS_MINIPORT_CHARACTERISTICS; #elif defined(NDIS50_MINIPORT) typedef struct _NDIS_MINIPORT_CHARACTERISTICS {