mirror of
https://github.com/QB64Official/qb64.git
synced 2024-08-22 04:25:08 +00:00
4575 lines
172 KiB
C
4575 lines
172 KiB
C
/**
|
|
* This file is part of the mingw-w64 runtime package.
|
|
* No warranty is given; refer to the file DISCLAIMER within this package.
|
|
*/
|
|
|
|
#ifndef _NTDDNDIS_
|
|
#define _NTDDNDIS_
|
|
|
|
#include <winapifamily.h>
|
|
|
|
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#ifndef NDIS_SUPPORT_NDIS6
|
|
#if defined (UM_NDIS60) || defined (UM_NDIS61) || defined (UM_NDIS620) || defined (UM_NDIS630)
|
|
#define NDIS_SUPPORT_NDIS6 1
|
|
#else
|
|
#define NDIS_SUPPORT_NDIS6 0
|
|
#endif
|
|
#endif
|
|
|
|
#if NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6
|
|
#include <ifdef.h>
|
|
#include <devpkey.h>
|
|
#include <pciprop.h>
|
|
#endif
|
|
|
|
#ifndef NDIS_SUPPORT_NDIS61
|
|
#if defined (UM_NDIS61) || defined (UM_NDIS620) || defined (UM_NDIS630)
|
|
#define NDIS_SUPPORT_NDIS61 1
|
|
#else
|
|
#define NDIS_SUPPORT_NDIS61 0
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef NDIS_SUPPORT_NDIS620
|
|
#if defined (UM_NDIS620) || defined (UM_NDIS630)
|
|
#define NDIS_SUPPORT_NDIS620 1
|
|
#else
|
|
#define NDIS_SUPPORT_NDIS620 0
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef NDIS_SUPPORT_NDIS630
|
|
#ifdef UM_NDIS630
|
|
#define NDIS_SUPPORT_NDIS630 1
|
|
#else
|
|
#define NDIS_SUPPORT_NDIS630 0
|
|
#endif
|
|
#endif
|
|
|
|
#define DD_NDIS_DEVICE_NAME "\\Device\\UNKNOWN"
|
|
|
|
#define _NDIS_CONTROL_CODE(request, method) CTL_CODE (FILE_DEVICE_PHYSICAL_NETCARD, request, method, FILE_ANY_ACCESS)
|
|
|
|
#define IOCTL_NDIS_QUERY_GLOBAL_STATS _NDIS_CONTROL_CODE (0, METHOD_OUT_DIRECT)
|
|
#define IOCTL_NDIS_QUERY_ALL_STATS _NDIS_CONTROL_CODE (1, METHOD_OUT_DIRECT)
|
|
#define IOCTL_NDIS_DO_PNP_OPERATION _NDIS_CONTROL_CODE (2, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_QUERY_SELECTED_STATS _NDIS_CONTROL_CODE (3, METHOD_OUT_DIRECT)
|
|
#define IOCTL_NDIS_ENUMERATE_INTERFACES _NDIS_CONTROL_CODE (4, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_ADD_TDI_DEVICE _NDIS_CONTROL_CODE (5, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_GET_LOG_DATA _NDIS_CONTROL_CODE (7, METHOD_OUT_DIRECT)
|
|
#define IOCTL_NDIS_GET_VERSION _NDIS_CONTROL_CODE (8, METHOD_BUFFERED)
|
|
|
|
#define IOCTL_NDIS_RESERVED1 _NDIS_CONTROL_CODE (9, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED2 _NDIS_CONTROL_CODE (0xa, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED3 _NDIS_CONTROL_CODE (0xb, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED4 _NDIS_CONTROL_CODE (0xc, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED5 CTL_CODE (FILE_DEVICE_PHYSICAL_NETCARD, 0xd, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
|
#define IOCTL_NDIS_RESERVED6 CTL_CODE (FILE_DEVICE_PHYSICAL_NETCARD, 0xe, METHOD_BUFFERED, FILE_WRITE_ACCESS)
|
|
#define IOCTL_NDIS_RESERVED7 _NDIS_CONTROL_CODE (0xf, METHOD_OUT_DIRECT)
|
|
#define IOCTL_NDIS_RESERVED8 _NDIS_CONTROL_CODE (0x10, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED9 _NDIS_CONTROL_CODE (0x11, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED10 _NDIS_CONTROL_CODE (0x12, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED11 _NDIS_CONTROL_CODE (0x13, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED12 _NDIS_CONTROL_CODE (0x14, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED13 _NDIS_CONTROL_CODE (0x15, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED14 _NDIS_CONTROL_CODE (0x16, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED15 _NDIS_CONTROL_CODE (0x17, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED16 _NDIS_CONTROL_CODE (0x18, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED17 _NDIS_CONTROL_CODE (0x19, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED18 _NDIS_CONTROL_CODE (0x1a, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED19 _NDIS_CONTROL_CODE (0x1b, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED20 _NDIS_CONTROL_CODE (0x1c, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED21 _NDIS_CONTROL_CODE (0x1d, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED22 _NDIS_CONTROL_CODE (0x1e, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED23 _NDIS_CONTROL_CODE (0x1f, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED24 _NDIS_CONTROL_CODE (0x20, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED25 _NDIS_CONTROL_CODE (0x21, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED26 _NDIS_CONTROL_CODE (0x22, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED27 _NDIS_CONTROL_CODE (0x23, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED28 _NDIS_CONTROL_CODE (0x24, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED29 _NDIS_CONTROL_CODE (0x25, METHOD_BUFFERED)
|
|
#define IOCTL_NDIS_RESERVED30 _NDIS_CONTROL_CODE (0x26, METHOD_BUFFERED)
|
|
|
|
typedef ULONG NDIS_OID, *PNDIS_OID;
|
|
typedef struct _NDIS_STATISTICS_VALUE {
|
|
NDIS_OID Oid;
|
|
ULONG DataLength;
|
|
UCHAR Data[1];
|
|
} NDIS_STATISTICS_VALUE;
|
|
|
|
typedef NDIS_STATISTICS_VALUE UNALIGNED *PNDIS_STATISTICS_VALUE;
|
|
|
|
#if NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6
|
|
typedef struct _NDIS_STATISTICS_VALUE_EX {
|
|
NDIS_OID Oid;
|
|
ULONG DataLength;
|
|
ULONG Length;
|
|
UCHAR Data[1];
|
|
} NDIS_STATISTICS_VALUE_EX;
|
|
|
|
typedef NDIS_STATISTICS_VALUE_EX UNALIGNED *PNDIS_STATISTICS_VALUE_EX;
|
|
#endif
|
|
|
|
typedef struct _NDIS_VAR_DATA_DESC {
|
|
USHORT Length;
|
|
USHORT MaximumLength;
|
|
ULONG_PTR Offset;
|
|
} NDIS_VAR_DATA_DESC, *PNDIS_VAR_DATA_DESC;
|
|
|
|
#ifndef GUID_DEFINED
|
|
#include <guiddef.h>
|
|
#endif
|
|
|
|
#define NDIS_OBJECT_TYPE_DEFAULT 0x80
|
|
#define NDIS_OBJECT_TYPE_MINIPORT_INIT_PARAMETERS 0x81
|
|
#define NDIS_OBJECT_TYPE_SG_DMA_DESCRIPTION 0x83
|
|
#define NDIS_OBJECT_TYPE_MINIPORT_INTERRUPT 0x84
|
|
#define NDIS_OBJECT_TYPE_DEVICE_OBJECT_ATTRIBUTES 0x85
|
|
#define NDIS_OBJECT_TYPE_BIND_PARAMETERS 0x86
|
|
#define NDIS_OBJECT_TYPE_OPEN_PARAMETERS 0x87
|
|
#define NDIS_OBJECT_TYPE_RSS_CAPABILITIES 0x88
|
|
#define NDIS_OBJECT_TYPE_RSS_PARAMETERS 0x89
|
|
#define NDIS_OBJECT_TYPE_MINIPORT_DRIVER_CHARACTERISTICS 0x8a
|
|
#define NDIS_OBJECT_TYPE_FILTER_DRIVER_CHARACTERISTICS 0x8b
|
|
#define NDIS_OBJECT_TYPE_FILTER_PARTIAL_CHARACTERISTICS 0x8c
|
|
#define NDIS_OBJECT_TYPE_FILTER_ATTRIBUTES 0x8d
|
|
#define NDIS_OBJECT_TYPE_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS 0x8e
|
|
#define NDIS_OBJECT_TYPE_PROVIDER_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS 0x8f
|
|
#define NDIS_OBJECT_TYPE_CO_PROTOCOL_CHARACTERISTICS 0x90
|
|
#define NDIS_OBJECT_TYPE_CO_MINIPORT_CHARACTERISTICS 0x91
|
|
#define NDIS_OBJECT_TYPE_MINIPORT_PNP_CHARACTERISTICS 0x92
|
|
#define NDIS_OBJECT_TYPE_CLIENT_CHIMNEY_OFFLOAD_CHARACTERISTICS 0x93
|
|
#define NDIS_OBJECT_TYPE_PROVIDER_CHIMNEY_OFFLOAD_CHARACTERISTICS 0x94
|
|
#define NDIS_OBJECT_TYPE_PROTOCOL_DRIVER_CHARACTERISTICS 0x95
|
|
#define NDIS_OBJECT_TYPE_REQUEST_EX 0x96
|
|
#define NDIS_OBJECT_TYPE_OID_REQUEST 0x96
|
|
#define NDIS_OBJECT_TYPE_TIMER_CHARACTERISTICS 0x97
|
|
#define NDIS_OBJECT_TYPE_STATUS_INDICATION 0x98
|
|
#define NDIS_OBJECT_TYPE_FILTER_ATTACH_PARAMETERS 0x99
|
|
#define NDIS_OBJECT_TYPE_FILTER_PAUSE_PARAMETERS 0x9a
|
|
#define NDIS_OBJECT_TYPE_FILTER_RESTART_PARAMETERS 0x9b
|
|
#define NDIS_OBJECT_TYPE_PORT_CHARACTERISTICS 0x9c
|
|
#define NDIS_OBJECT_TYPE_PORT_STATE 0x9d
|
|
#define NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_REGISTRATION_ATTRIBUTES 0x9e
|
|
#define NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 0x9f
|
|
#define NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES 0xa0
|
|
#define NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES 0xa1
|
|
#define NDIS_OBJECT_TYPE_RESTART_GENERAL_ATTRIBUTES 0xa2
|
|
#define NDIS_OBJECT_TYPE_PROTOCOL_RESTART_PARAMETERS 0xa3
|
|
#define NDIS_OBJECT_TYPE_MINIPORT_ADD_DEVICE_REGISTRATION_ATTRIBUTES 0xa4
|
|
#define NDIS_OBJECT_TYPE_CO_CALL_MANAGER_OPTIONAL_HANDLERS 0xa5
|
|
#define NDIS_OBJECT_TYPE_CO_CLIENT_OPTIONAL_HANDLERS 0xa6
|
|
#define NDIS_OBJECT_TYPE_OFFLOAD 0xa7
|
|
#define NDIS_OBJECT_TYPE_OFFLOAD_ENCAPSULATION 0xa8
|
|
#define NDIS_OBJECT_TYPE_CONFIGURATION_OBJECT 0xa9
|
|
#define NDIS_OBJECT_TYPE_DRIVER_WRAPPER_OBJECT 0xaa
|
|
#if NDIS_SUPPORT_NDIS61
|
|
#define NDIS_OBJECT_TYPE_HD_SPLIT_ATTRIBUTES 0xab
|
|
#endif
|
|
#define NDIS_OBJECT_TYPE_NSI_NETWORK_RW_STRUCT 0xac
|
|
#define NDIS_OBJECT_TYPE_NSI_COMPARTMENT_RW_STRUCT 0xad
|
|
#define NDIS_OBJECT_TYPE_NSI_INTERFACE_PERSIST_RW_STRUCT 0xae
|
|
#if NDIS_SUPPORT_NDIS61
|
|
#define NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES 0xaf
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS620
|
|
#define NDIS_OBJECT_TYPE_SHARED_MEMORY_PROVIDER_CHARACTERISTICS 0xb0
|
|
#define NDIS_OBJECT_TYPE_RSS_PROCESSOR_INFO 0xb1
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_OBJECT_TYPE_NDK_PROVIDER_CHARACTERISTICS 0xb2
|
|
#define NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_NDK_ATTRIBUTES 0xb3
|
|
#define NDIS_OBJECT_TYPE_MINIPORT_SS_CHARACTERISTICS 0xb4
|
|
#define NDIS_OBJECT_TYPE_QOS_CAPABILITIES 0xb5
|
|
#define NDIS_OBJECT_TYPE_QOS_PARAMETERS 0xb6
|
|
#define NDIS_OBJECT_TYPE_QOS_CLASSIFICATION_ELEMENT 0xb7
|
|
#define NDIS_OBJECT_TYPE_SWITCH_OPTIONAL_HANDLERS 0xb8
|
|
#define NDIS_OBJECT_TYPE_IOCTL_OID_INFO 0xb9
|
|
#define NDIS_OBJECT_TYPE_LBFO_DIAGNOSTIC_OID 0xba
|
|
#endif
|
|
|
|
typedef struct _NDIS_OBJECT_HEADER {
|
|
UCHAR Type;
|
|
UCHAR Revision;
|
|
USHORT Size;
|
|
} NDIS_OBJECT_HEADER, *PNDIS_OBJECT_HEADER;
|
|
|
|
typedef enum _NDIS_REQUEST_TYPE {
|
|
NdisRequestQueryInformation,
|
|
NdisRequestSetInformation,
|
|
NdisRequestQueryStatistics,
|
|
NdisRequestOpen,
|
|
NdisRequestClose,
|
|
NdisRequestSend,
|
|
NdisRequestTransferData,
|
|
NdisRequestReset,
|
|
NdisRequestGeneric1,
|
|
NdisRequestGeneric2,
|
|
NdisRequestGeneric3,
|
|
NdisRequestGeneric4
|
|
#if NDIS_SUPPORT_NDIS6
|
|
, NdisRequestMethod
|
|
#endif
|
|
} NDIS_REQUEST_TYPE, *PNDIS_REQUEST_TYPE;
|
|
|
|
#define NDIS_OBJECT_REVISION_1 1
|
|
|
|
#if NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6
|
|
#define NDIS_STATISTICS_FLAGS_VALID_DIRECTED_FRAMES_RCV 0x00000001
|
|
#define NDIS_STATISTICS_FLAGS_VALID_MULTICAST_FRAMES_RCV 0x00000002
|
|
#define NDIS_STATISTICS_FLAGS_VALID_BROADCAST_FRAMES_RCV 0x00000004
|
|
#define NDIS_STATISTICS_FLAGS_VALID_BYTES_RCV 0x00000008
|
|
#define NDIS_STATISTICS_FLAGS_VALID_RCV_DISCARDS 0x00000010
|
|
#define NDIS_STATISTICS_FLAGS_VALID_RCV_ERROR 0x00000020
|
|
#define NDIS_STATISTICS_FLAGS_VALID_DIRECTED_FRAMES_XMIT 0x00000040
|
|
#define NDIS_STATISTICS_FLAGS_VALID_MULTICAST_FRAMES_XMIT 0x00000080
|
|
#define NDIS_STATISTICS_FLAGS_VALID_BROADCAST_FRAMES_XMIT 0x00000100
|
|
#define NDIS_STATISTICS_FLAGS_VALID_BYTES_XMIT 0x00000200
|
|
#define NDIS_STATISTICS_FLAGS_VALID_XMIT_ERROR 0x00000400
|
|
#define NDIS_STATISTICS_FLAGS_VALID_XMIT_DISCARDS 0x00008000
|
|
#define NDIS_STATISTICS_FLAGS_VALID_DIRECTED_BYTES_RCV 0x00010000
|
|
#define NDIS_STATISTICS_FLAGS_VALID_MULTICAST_BYTES_RCV 0x00020000
|
|
#define NDIS_STATISTICS_FLAGS_VALID_BROADCAST_BYTES_RCV 0x00040000
|
|
#define NDIS_STATISTICS_FLAGS_VALID_DIRECTED_BYTES_XMIT 0x00080000
|
|
#define NDIS_STATISTICS_FLAGS_VALID_MULTICAST_BYTES_XMIT 0x00100000
|
|
#define NDIS_STATISTICS_FLAGS_VALID_BROADCAST_BYTES_XMIT 0x00200000
|
|
|
|
#define NDIS_INTERRUPT_MODERATION_CHANGE_NEEDS_RESET 0x00000001
|
|
#define NDIS_INTERRUPT_MODERATION_CHANGE_NEEDS_REINITIALIZE 0x00000002
|
|
|
|
#define NDIS_STATISTICS_INFO_REVISION_1 1
|
|
#define NDIS_INTERRUPT_MODERATION_PARAMETERS_REVISION_1 1
|
|
#define NDIS_TIMEOUT_DPC_REQUEST_CAPABILITIES_REVISION_1 1
|
|
#define NDIS_OBJECT_TYPE_PCI_DEVICE_CUSTOM_PROPERTIES_REVISION_1 1
|
|
#if NTDDI_VERSION >= 0x06010000 || NDIS_SUPPORT_NDIS620
|
|
#define NDIS_OBJECT_TYPE_PCI_DEVICE_CUSTOM_PROPERTIES_REVISION_2 2
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_RSC_STATISTICS_REVISION_1 1
|
|
#endif
|
|
|
|
#define NDIS_SIZEOF_STATISTICS_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_STATISTICS_INFO, ifHCOutBroadcastOctets)
|
|
#define NDIS_SIZEOF_INTERRUPT_MODERATION_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_INTERRUPT_MODERATION_PARAMETERS, InterruptModeration)
|
|
#define NDIS_SIZEOF_TIMEOUT_DPC_REQUEST_CAPABILITIES_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_TIMEOUT_DPC_REQUEST_CAPABILITIES, TimeoutArray)
|
|
#define NDIS_SIZEOF_PCI_DEVICE_CUSTOM_PROPERTIES_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_PCI_DEVICE_CUSTOM_PROPERTIES, MaxLinkWidth)
|
|
#if NTDDI_VERSION >= 0x06010000 || NDIS_SUPPORT_NDIS620
|
|
#define NDIS_SIZEOF_PCI_DEVICE_CUSTOM_PROPERTIES_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_PCI_DEVICE_CUSTOM_PROPERTIES, MaxInterruptMessages)
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_SIZEOF_RSC_STATISTICS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RSC_STATISTICS_INFO, Aborts)
|
|
#endif
|
|
|
|
typedef struct _NDIS_STATISTICS_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG SupportedStatistics;
|
|
ULONG64 ifInDiscards;
|
|
ULONG64 ifInErrors;
|
|
ULONG64 ifHCInOctets;
|
|
ULONG64 ifHCInUcastPkts;
|
|
ULONG64 ifHCInMulticastPkts;
|
|
ULONG64 ifHCInBroadcastPkts;
|
|
ULONG64 ifHCOutOctets;
|
|
ULONG64 ifHCOutUcastPkts;
|
|
ULONG64 ifHCOutMulticastPkts;
|
|
ULONG64 ifHCOutBroadcastPkts;
|
|
ULONG64 ifOutErrors;
|
|
ULONG64 ifOutDiscards;
|
|
ULONG64 ifHCInUcastOctets;
|
|
ULONG64 ifHCInMulticastOctets;
|
|
ULONG64 ifHCInBroadcastOctets;
|
|
ULONG64 ifHCOutUcastOctets;
|
|
ULONG64 ifHCOutMulticastOctets;
|
|
ULONG64 ifHCOutBroadcastOctets;
|
|
} NDIS_STATISTICS_INFO, *PNDIS_STATISTICS_INFO;
|
|
|
|
#if NDIS_SUPPORT_NDIS630
|
|
typedef struct _NDIS_RSC_STATISTICS_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG64 CoalescedPkts;
|
|
ULONG64 CoalescedOctets;
|
|
ULONG64 CoalesceEvents;
|
|
ULONG64 Aborts;
|
|
} NDIS_RSC_STATISTICS_INFO, *PNDIS_RSC_STATISTICS_INFO;
|
|
#endif
|
|
|
|
typedef enum _NDIS_INTERRUPT_MODERATION {
|
|
NdisInterruptModerationUnknown,
|
|
NdisInterruptModerationNotSupported,
|
|
NdisInterruptModerationEnabled,
|
|
NdisInterruptModerationDisabled
|
|
} NDIS_INTERRUPT_MODERATION, *PNDIS_INTERRUPT_MODERATION;
|
|
|
|
typedef struct _NDIS_INTERRUPT_MODERATION_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_INTERRUPT_MODERATION InterruptModeration;
|
|
} NDIS_INTERRUPT_MODERATION_PARAMETERS, *PNDIS_INTERRUPT_MODERATION_PARAMETERS;
|
|
|
|
typedef struct _NDIS_TIMEOUT_DPC_REQUEST_CAPABILITIES {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG TimeoutArrayLength;
|
|
ULONG TimeoutArray[1];
|
|
} NDIS_TIMEOUT_DPC_REQUEST_CAPABILITIES, *PNDIS_TIMEOUT_DPC_REQUEST_CAPABILITIES;
|
|
|
|
typedef struct _NDIS_PCI_DEVICE_CUSTOM_PROPERTIES {
|
|
NDIS_OBJECT_HEADER Header;
|
|
UINT32 DeviceType;
|
|
UINT32 CurrentSpeedAndMode;
|
|
UINT32 CurrentPayloadSize;
|
|
UINT32 MaxPayloadSize;
|
|
UINT32 MaxReadRequestSize;
|
|
UINT32 CurrentLinkSpeed;
|
|
UINT32 CurrentLinkWidth;
|
|
UINT32 MaxLinkSpeed;
|
|
UINT32 MaxLinkWidth;
|
|
#if (NTDDI_VERSION >= 0x06010000 || NDIS_SUPPORT_NDIS620)
|
|
UINT32 PciExpressVersion;
|
|
UINT32 InterruptType;
|
|
UINT32 MaxInterruptMessages;
|
|
#endif
|
|
} NDIS_PCI_DEVICE_CUSTOM_PROPERTIES, *PNDIS_PCI_DEVICE_CUSTOM_PROPERTIES;
|
|
#endif
|
|
|
|
#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_SUPPORTED_GUIDS 0x00010117
|
|
#define OID_GEN_NETWORK_LAYER_ADDRESSES 0x00010118
|
|
#define OID_GEN_TRANSPORT_HEADER_OFFSET 0x00010119
|
|
#define OID_GEN_MEDIA_CAPABILITIES 0x00010201
|
|
#define OID_GEN_PHYSICAL_MEDIUM 0x00010202
|
|
#if NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6
|
|
#define OID_GEN_RECEIVE_SCALE_CAPABILITIES 0x00010203
|
|
#define OID_GEN_RECEIVE_SCALE_PARAMETERS 0x00010204
|
|
#define OID_GEN_MAC_ADDRESS 0x00010205
|
|
#define OID_GEN_MAX_LINK_SPEED 0x00010206
|
|
#define OID_GEN_LINK_STATE 0x00010207
|
|
#define OID_GEN_LINK_PARAMETERS 0x00010208
|
|
#define OID_GEN_INTERRUPT_MODERATION 0x00010209
|
|
#define OID_GEN_NDIS_RESERVED_3 0x0001020a
|
|
#define OID_GEN_NDIS_RESERVED_4 0x0001020b
|
|
#define OID_GEN_NDIS_RESERVED_5 0x0001020c
|
|
#define OID_GEN_ENUMERATE_PORTS 0x0001020d
|
|
#define OID_GEN_PORT_STATE 0x0001020e
|
|
#define OID_GEN_PORT_AUTHENTICATION_PARAMETERS 0x0001020f
|
|
#define OID_GEN_TIMEOUT_DPC_REQUEST_CAPABILITIES 0x00010210
|
|
#define OID_GEN_PCI_DEVICE_CUSTOM_PROPERTIES 0x00010211
|
|
#define OID_GEN_NDIS_RESERVED_6 0x00010212
|
|
#define OID_GEN_PHYSICAL_MEDIUM_EX 0x00010213
|
|
#endif
|
|
|
|
#define OID_GEN_MACHINE_NAME 0x0001021a
|
|
#define OID_GEN_RNDIS_CONFIG_PARAMETER 0x0001021b
|
|
#define OID_GEN_VLAN_ID 0x0001021c
|
|
#if NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6
|
|
#define OID_GEN_RECEIVE_HASH 0x0001021f
|
|
#define OID_GEN_MINIPORT_RESTART_ATTRIBUTES 0x0001021d
|
|
|
|
#if NDIS_SUPPORT_NDIS61
|
|
#define OID_GEN_HD_SPLIT_PARAMETERS 0x0001021e
|
|
#define OID_GEN_HD_SPLIT_CURRENT_CONFIG 0x00010220
|
|
#endif
|
|
|
|
#define OID_GEN_PROMISCUOUS_MODE 0x00010280
|
|
#define OID_GEN_LAST_CHANGE 0x00010281
|
|
#define OID_GEN_DISCONTINUITY_TIME 0x00010282
|
|
#define OID_GEN_OPERATIONAL_STATUS 0x00010283
|
|
#define OID_GEN_XMIT_LINK_SPEED 0x00010284
|
|
#define OID_GEN_RCV_LINK_SPEED 0x00010285
|
|
#define OID_GEN_UNKNOWN_PROTOS 0x00010286
|
|
#define OID_GEN_INTERFACE_INFO 0x00010287
|
|
#define OID_GEN_ADMIN_STATUS 0x00010288
|
|
#define OID_GEN_ALIAS 0x00010289
|
|
#define OID_GEN_MEDIA_CONNECT_STATUS_EX 0x0001028a
|
|
#define OID_GEN_LINK_SPEED_EX 0x0001028b
|
|
#define OID_GEN_MEDIA_DUPLEX_STATE 0x0001028c
|
|
#define OID_GEN_IP_OPER_STATUS 0x0001028d
|
|
|
|
#define OID_WWAN_DRIVER_CAPS 0x0e010100
|
|
#define OID_WWAN_DEVICE_CAPS 0x0e010101
|
|
#define OID_WWAN_READY_INFO 0x0e010102
|
|
#define OID_WWAN_RADIO_STATE 0x0e010103
|
|
#define OID_WWAN_PIN 0x0e010104
|
|
#define OID_WWAN_PIN_LIST 0x0e010105
|
|
#define OID_WWAN_HOME_PROVIDER 0x0e010106
|
|
#define OID_WWAN_PREFERRED_PROVIDERS 0x0e010107
|
|
#define OID_WWAN_VISIBLE_PROVIDERS 0x0e010108
|
|
#define OID_WWAN_REGISTER_STATE 0x0e010109
|
|
#define OID_WWAN_PACKET_SERVICE 0x0e01010a
|
|
#define OID_WWAN_SIGNAL_STATE 0x0e01010b
|
|
#define OID_WWAN_CONNECT 0x0e01010c
|
|
#define OID_WWAN_PROVISIONED_CONTEXTS 0x0e01010d
|
|
#define OID_WWAN_SERVICE_ACTIVATION 0x0e01010e
|
|
#define OID_WWAN_SMS_CONFIGURATION 0x0e01010f
|
|
#define OID_WWAN_SMS_READ 0x0e010110
|
|
#define OID_WWAN_SMS_SEND 0x0e010111
|
|
#define OID_WWAN_SMS_DELETE 0x0e010112
|
|
#define OID_WWAN_SMS_STATUS 0x0e010113
|
|
#define OID_WWAN_VENDOR_SPECIFIC 0x0e010114
|
|
#endif
|
|
|
|
#if NTDDI_VERSION >= 0x06020000 || NDIS_SUPPORT_NDIS630
|
|
#define OID_WWAN_AUTH_CHALLENGE 0x0e010115
|
|
#define OID_WWAN_ENUMERATE_DEVICE_SERVICES 0x0e010116
|
|
#define OID_WWAN_SUBSCRIBE_DEVICE_SERVICE_EVENTS 0x0e010117
|
|
#define OID_WWAN_DEVICE_SERVICE_COMMAND 0x0e010118
|
|
#define OID_WWAN_USSD 0x0e010119
|
|
#define OID_WWAN_PIN_EX 0x0e010121
|
|
#define OID_WWAN_ENUMERATE_DEVICE_SERVICE_COMMANDS 0x0e010122
|
|
#define OID_WWAN_DEVICE_SERVICE_SESSION 0x0e010123
|
|
#define OID_WWAN_DEVICE_SERVICE_SESSION_WRITE 0x0e010124
|
|
#define OID_WWAN_PREFERRED_MULTICARRIER_PROVIDERS 0x0e010125
|
|
#endif
|
|
|
|
#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
|
|
#if NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6
|
|
#define OID_GEN_STATISTICS 0x00020106
|
|
#endif
|
|
|
|
#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_NDIS_RESERVED_1 0x00020217
|
|
#define OID_GEN_NDIS_RESERVED_2 0x00020218
|
|
#define OID_GEN_NDIS_RESERVED_5 0x0001020c
|
|
#if NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6
|
|
#define OID_GEN_BYTES_RCV 0x00020219
|
|
#define OID_GEN_BYTES_XMIT 0x0002021a
|
|
#define OID_GEN_RCV_DISCARDS 0x0002021b
|
|
#define OID_GEN_XMIT_DISCARDS 0x0002021c
|
|
#endif
|
|
#if NTDDI_VERSION >= 0x06020000 || NDIS_SUPPORT_NDIS630
|
|
#define OID_TCP_RSC_STATISTICS 0x0002021d
|
|
#define OID_GEN_NDIS_RESERVED_7 0x0002021e
|
|
#endif
|
|
|
|
#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
|
|
#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
|
|
|
|
#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
|
|
|
|
#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
|
|
|
|
#define OID_802_3_MAC_OPTIONS 0x01010105
|
|
|
|
#define NDIS_802_3_MAC_OPTION_PRIORITY 0x00000001
|
|
|
|
#define OID_802_3_RCV_ERROR_ALIGNMENT 0x01020101
|
|
#define OID_802_3_XMIT_ONE_COLLISION 0x01020102
|
|
#define OID_802_3_XMIT_MORE_COLLISIONS 0x01020103
|
|
|
|
#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
|
|
|
|
#if (NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6)
|
|
#define OID_802_3_ADD_MULTICAST_ADDRESS 0x01010208
|
|
#define OID_802_3_DELETE_MULTICAST_ADDRESS 0x01010209
|
|
#endif
|
|
|
|
#define OID_802_5_PERMANENT_ADDRESS 0x02010101
|
|
#define OID_802_5_CURRENT_ADDRESS 0x02010102
|
|
#define OID_802_5_CURRENT_FUNCTIONAL 0x02010103
|
|
#define OID_802_5_CURRENT_GROUP 0x02010104
|
|
#define OID_802_5_LAST_OPEN_STATUS 0x02010105
|
|
#define OID_802_5_CURRENT_RING_STATUS 0x02010106
|
|
#define OID_802_5_CURRENT_RING_STATE 0x02010107
|
|
|
|
#define OID_802_5_LINE_ERRORS 0x02020101
|
|
#define OID_802_5_LOST_FRAMES 0x02020102
|
|
|
|
#define OID_802_5_BURST_ERRORS 0x02020201
|
|
#define OID_802_5_AC_ERRORS 0x02020202
|
|
#define OID_802_5_ABORT_DELIMETERS 0x02020203
|
|
#define OID_802_5_FRAME_COPIED_ERRORS 0x02020204
|
|
#define OID_802_5_FREQUENCY_ERRORS 0x02020205
|
|
#define OID_802_5_TOKEN_ERRORS 0x02020206
|
|
#define OID_802_5_INTERNAL_ERRORS 0x02020207
|
|
|
|
#define OID_FDDI_LONG_PERMANENT_ADDR 0x03010101
|
|
#define OID_FDDI_LONG_CURRENT_ADDR 0x03010102
|
|
#define OID_FDDI_LONG_MULTICAST_LIST 0x03010103
|
|
#define OID_FDDI_LONG_MAX_LIST_SIZE 0x03010104
|
|
#define OID_FDDI_SHORT_PERMANENT_ADDR 0x03010105
|
|
#define OID_FDDI_SHORT_CURRENT_ADDR 0x03010106
|
|
#define OID_FDDI_SHORT_MULTICAST_LIST 0x03010107
|
|
#define OID_FDDI_SHORT_MAX_LIST_SIZE 0x03010108
|
|
|
|
#define OID_FDDI_ATTACHMENT_TYPE 0x03020101
|
|
#define OID_FDDI_UPSTREAM_NODE_LONG 0x03020102
|
|
#define OID_FDDI_DOWNSTREAM_NODE_LONG 0x03020103
|
|
#define OID_FDDI_FRAME_ERRORS 0x03020104
|
|
#define OID_FDDI_FRAMES_LOST 0x03020105
|
|
#define OID_FDDI_RING_MGT_STATE 0x03020106
|
|
#define OID_FDDI_LCT_FAILURES 0x03020107
|
|
#define OID_FDDI_LEM_REJECTS 0x03020108
|
|
#define OID_FDDI_LCONNECTION_STATE 0x03020109
|
|
|
|
#define OID_FDDI_SMT_STATION_ID 0x03030201
|
|
#define OID_FDDI_SMT_OP_VERSION_ID 0x03030202
|
|
#define OID_FDDI_SMT_HI_VERSION_ID 0x03030203
|
|
#define OID_FDDI_SMT_LO_VERSION_ID 0x03030204
|
|
#define OID_FDDI_SMT_MANUFACTURER_DATA 0x03030205
|
|
#define OID_FDDI_SMT_USER_DATA 0x03030206
|
|
#define OID_FDDI_SMT_MIB_VERSION_ID 0x03030207
|
|
#define OID_FDDI_SMT_MAC_CT 0x03030208
|
|
#define OID_FDDI_SMT_NON_MASTER_CT 0x03030209
|
|
#define OID_FDDI_SMT_MASTER_CT 0x0303020a
|
|
#define OID_FDDI_SMT_AVAILABLE_PATHS 0x0303020b
|
|
#define OID_FDDI_SMT_CONFIG_CAPABILITIES 0x0303020c
|
|
#define OID_FDDI_SMT_CONFIG_POLICY 0x0303020d
|
|
#define OID_FDDI_SMT_CONNECTION_POLICY 0x0303020e
|
|
#define OID_FDDI_SMT_T_NOTIFY 0x0303020f
|
|
#define OID_FDDI_SMT_STAT_RPT_POLICY 0x03030210
|
|
#define OID_FDDI_SMT_TRACE_MAX_EXPIRATION 0x03030211
|
|
#define OID_FDDI_SMT_PORT_INDEXES 0x03030212
|
|
#define OID_FDDI_SMT_MAC_INDEXES 0x03030213
|
|
#define OID_FDDI_SMT_BYPASS_PRESENT 0x03030214
|
|
#define OID_FDDI_SMT_ECM_STATE 0x03030215
|
|
#define OID_FDDI_SMT_CF_STATE 0x03030216
|
|
#define OID_FDDI_SMT_HOLD_STATE 0x03030217
|
|
#define OID_FDDI_SMT_REMOTE_DISCONNECT_FLAG 0x03030218
|
|
#define OID_FDDI_SMT_STATION_STATUS 0x03030219
|
|
#define OID_FDDI_SMT_PEER_WRAP_FLAG 0x0303021a
|
|
#define OID_FDDI_SMT_MSG_TIME_STAMP 0x0303021b
|
|
#define OID_FDDI_SMT_TRANSITION_TIME_STAMP 0x0303021c
|
|
#define OID_FDDI_SMT_SET_COUNT 0x0303021d
|
|
#define OID_FDDI_SMT_LAST_SET_STATION_ID 0x0303021e
|
|
#define OID_FDDI_MAC_FRAME_STATUS_FUNCTIONS 0x0303021f
|
|
#define OID_FDDI_MAC_BRIDGE_FUNCTIONS 0x03030220
|
|
#define OID_FDDI_MAC_T_MAX_CAPABILITY 0x03030221
|
|
#define OID_FDDI_MAC_TVX_CAPABILITY 0x03030222
|
|
#define OID_FDDI_MAC_AVAILABLE_PATHS 0x03030223
|
|
#define OID_FDDI_MAC_CURRENT_PATH 0x03030224
|
|
#define OID_FDDI_MAC_UPSTREAM_NBR 0x03030225
|
|
#define OID_FDDI_MAC_DOWNSTREAM_NBR 0x03030226
|
|
#define OID_FDDI_MAC_OLD_UPSTREAM_NBR 0x03030227
|
|
#define OID_FDDI_MAC_OLD_DOWNSTREAM_NBR 0x03030228
|
|
#define OID_FDDI_MAC_DUP_ADDRESS_TEST 0x03030229
|
|
#define OID_FDDI_MAC_REQUESTED_PATHS 0x0303022a
|
|
#define OID_FDDI_MAC_DOWNSTREAM_PORT_TYPE 0x0303022b
|
|
#define OID_FDDI_MAC_INDEX 0x0303022c
|
|
#define OID_FDDI_MAC_SMT_ADDRESS 0x0303022d
|
|
#define OID_FDDI_MAC_LONG_GRP_ADDRESS 0x0303022e
|
|
#define OID_FDDI_MAC_SHORT_GRP_ADDRESS 0x0303022f
|
|
#define OID_FDDI_MAC_T_REQ 0x03030230
|
|
#define OID_FDDI_MAC_T_NEG 0x03030231
|
|
#define OID_FDDI_MAC_T_MAX 0x03030232
|
|
#define OID_FDDI_MAC_TVX_VALUE 0x03030233
|
|
#define OID_FDDI_MAC_T_PRI0 0x03030234
|
|
#define OID_FDDI_MAC_T_PRI1 0x03030235
|
|
#define OID_FDDI_MAC_T_PRI2 0x03030236
|
|
#define OID_FDDI_MAC_T_PRI3 0x03030237
|
|
#define OID_FDDI_MAC_T_PRI4 0x03030238
|
|
#define OID_FDDI_MAC_T_PRI5 0x03030239
|
|
#define OID_FDDI_MAC_T_PRI6 0x0303023a
|
|
#define OID_FDDI_MAC_FRAME_CT 0x0303023b
|
|
#define OID_FDDI_MAC_COPIED_CT 0x0303023c
|
|
#define OID_FDDI_MAC_TRANSMIT_CT 0x0303023d
|
|
#define OID_FDDI_MAC_TOKEN_CT 0x0303023e
|
|
#define OID_FDDI_MAC_ERROR_CT 0x0303023f
|
|
#define OID_FDDI_MAC_LOST_CT 0x03030240
|
|
#define OID_FDDI_MAC_TVX_EXPIRED_CT 0x03030241
|
|
#define OID_FDDI_MAC_NOT_COPIED_CT 0x03030242
|
|
#define OID_FDDI_MAC_LATE_CT 0x03030243
|
|
#define OID_FDDI_MAC_RING_OP_CT 0x03030244
|
|
#define OID_FDDI_MAC_FRAME_ERROR_THRESHOLD 0x03030245
|
|
#define OID_FDDI_MAC_FRAME_ERROR_RATIO 0x03030246
|
|
#define OID_FDDI_MAC_NOT_COPIED_THRESHOLD 0x03030247
|
|
#define OID_FDDI_MAC_NOT_COPIED_RATIO 0x03030248
|
|
#define OID_FDDI_MAC_RMT_STATE 0x03030249
|
|
#define OID_FDDI_MAC_DA_FLAG 0x0303024a
|
|
#define OID_FDDI_MAC_UNDA_FLAG 0x0303024b
|
|
#define OID_FDDI_MAC_FRAME_ERROR_FLAG 0x0303024c
|
|
#define OID_FDDI_MAC_NOT_COPIED_FLAG 0x0303024d
|
|
#define OID_FDDI_MAC_MA_UNITDATA_AVAILABLE 0x0303024e
|
|
#define OID_FDDI_MAC_HARDWARE_PRESENT 0x0303024f
|
|
#define OID_FDDI_MAC_MA_UNITDATA_ENABLE 0x03030250
|
|
#define OID_FDDI_PATH_INDEX 0x03030251
|
|
#define OID_FDDI_PATH_RING_LATENCY 0x03030252
|
|
#define OID_FDDI_PATH_TRACE_STATUS 0x03030253
|
|
#define OID_FDDI_PATH_SBA_PAYLOAD 0x03030254
|
|
#define OID_FDDI_PATH_SBA_OVERHEAD 0x03030255
|
|
#define OID_FDDI_PATH_CONFIGURATION 0x03030256
|
|
#define OID_FDDI_PATH_T_R_MODE 0x03030257
|
|
#define OID_FDDI_PATH_SBA_AVAILABLE 0x03030258
|
|
#define OID_FDDI_PATH_TVX_LOWER_BOUND 0x03030259
|
|
#define OID_FDDI_PATH_T_MAX_LOWER_BOUND 0x0303025a
|
|
#define OID_FDDI_PATH_MAX_T_REQ 0x0303025b
|
|
#define OID_FDDI_PORT_MY_TYPE 0x0303025c
|
|
#define OID_FDDI_PORT_NEIGHBOR_TYPE 0x0303025d
|
|
#define OID_FDDI_PORT_CONNECTION_POLICIES 0x0303025e
|
|
#define OID_FDDI_PORT_MAC_INDICATED 0x0303025f
|
|
#define OID_FDDI_PORT_CURRENT_PATH 0x03030260
|
|
#define OID_FDDI_PORT_REQUESTED_PATHS 0x03030261
|
|
#define OID_FDDI_PORT_MAC_PLACEMENT 0x03030262
|
|
#define OID_FDDI_PORT_AVAILABLE_PATHS 0x03030263
|
|
#define OID_FDDI_PORT_MAC_LOOP_TIME 0x03030264
|
|
#define OID_FDDI_PORT_PMD_CLASS 0x03030265
|
|
#define OID_FDDI_PORT_CONNECTION_CAPABILITIES 0x03030266
|
|
#define OID_FDDI_PORT_INDEX 0x03030267
|
|
#define OID_FDDI_PORT_MAINT_LS 0x03030268
|
|
#define OID_FDDI_PORT_BS_FLAG 0x03030269
|
|
#define OID_FDDI_PORT_PC_LS 0x0303026a
|
|
#define OID_FDDI_PORT_EB_ERROR_CT 0x0303026b
|
|
#define OID_FDDI_PORT_LCT_FAIL_CT 0x0303026c
|
|
#define OID_FDDI_PORT_LER_ESTIMATE 0x0303026d
|
|
#define OID_FDDI_PORT_LEM_REJECT_CT 0x0303026e
|
|
#define OID_FDDI_PORT_LEM_CT 0x0303026f
|
|
#define OID_FDDI_PORT_LER_CUTOFF 0x03030270
|
|
#define OID_FDDI_PORT_LER_ALARM 0x03030271
|
|
#define OID_FDDI_PORT_CONNNECT_STATE 0x03030272
|
|
#define OID_FDDI_PORT_PCM_STATE 0x03030273
|
|
#define OID_FDDI_PORT_PC_WITHHOLD 0x03030274
|
|
#define OID_FDDI_PORT_LER_FLAG 0x03030275
|
|
#define OID_FDDI_PORT_HARDWARE_PRESENT 0x03030276
|
|
#define OID_FDDI_SMT_STATION_ACTION 0x03030277
|
|
#define OID_FDDI_PORT_ACTION 0x03030278
|
|
#define OID_FDDI_IF_DESCR 0x03030279
|
|
#define OID_FDDI_IF_TYPE 0x0303027a
|
|
#define OID_FDDI_IF_MTU 0x0303027b
|
|
#define OID_FDDI_IF_SPEED 0x0303027c
|
|
#define OID_FDDI_IF_PHYS_ADDRESS 0x0303027d
|
|
#define OID_FDDI_IF_ADMIN_STATUS 0x0303027e
|
|
#define OID_FDDI_IF_OPER_STATUS 0x0303027f
|
|
#define OID_FDDI_IF_LAST_CHANGE 0x03030280
|
|
#define OID_FDDI_IF_IN_OCTETS 0x03030281
|
|
#define OID_FDDI_IF_IN_UCAST_PKTS 0x03030282
|
|
#define OID_FDDI_IF_IN_NUCAST_PKTS 0x03030283
|
|
#define OID_FDDI_IF_IN_DISCARDS 0x03030284
|
|
#define OID_FDDI_IF_IN_ERRORS 0x03030285
|
|
#define OID_FDDI_IF_IN_UNKNOWN_PROTOS 0x03030286
|
|
#define OID_FDDI_IF_OUT_OCTETS 0x03030287
|
|
#define OID_FDDI_IF_OUT_UCAST_PKTS 0x03030288
|
|
#define OID_FDDI_IF_OUT_NUCAST_PKTS 0x03030289
|
|
#define OID_FDDI_IF_OUT_DISCARDS 0x0303028a
|
|
#define OID_FDDI_IF_OUT_ERRORS 0x0303028b
|
|
#define OID_FDDI_IF_OUT_QLEN 0x0303028c
|
|
#define OID_FDDI_IF_SPECIFIC 0x0303028d
|
|
|
|
#define OID_WAN_PERMANENT_ADDRESS 0x04010101
|
|
#define OID_WAN_CURRENT_ADDRESS 0x04010102
|
|
#define OID_WAN_QUALITY_OF_SERVICE 0x04010103
|
|
#define OID_WAN_PROTOCOL_TYPE 0x04010104
|
|
#define OID_WAN_MEDIUM_SUBTYPE 0x04010105
|
|
#define OID_WAN_HEADER_FORMAT 0x04010106
|
|
|
|
#define OID_WAN_GET_INFO 0x04010107
|
|
#define OID_WAN_SET_LINK_INFO 0x04010108
|
|
#define OID_WAN_GET_LINK_INFO 0x04010109
|
|
#define OID_WAN_LINE_COUNT 0x0401010a
|
|
#define OID_WAN_PROTOCOL_CAPS 0x0401010b
|
|
|
|
#define OID_WAN_GET_BRIDGE_INFO 0x0401020a
|
|
#define OID_WAN_SET_BRIDGE_INFO 0x0401020b
|
|
#define OID_WAN_GET_COMP_INFO 0x0401020c
|
|
#define OID_WAN_SET_COMP_INFO 0x0401020d
|
|
#define OID_WAN_GET_STATS_INFO 0x0401020e
|
|
|
|
#define OID_WAN_CO_GET_INFO 0x04010180
|
|
#define OID_WAN_CO_SET_LINK_INFO 0x04010181
|
|
#define OID_WAN_CO_GET_LINK_INFO 0x04010182
|
|
#define OID_WAN_CO_GET_COMP_INFO 0x04010280
|
|
#define OID_WAN_CO_SET_COMP_INFO 0x04010281
|
|
#define OID_WAN_CO_GET_STATS_INFO 0x04010282
|
|
|
|
#define OID_LTALK_CURRENT_NODE_ID 0x05010102
|
|
|
|
#define OID_LTALK_IN_BROADCASTS 0x05020101
|
|
#define OID_LTALK_IN_LENGTH_ERRORS 0x05020102
|
|
|
|
#define OID_LTALK_OUT_NO_HANDLERS 0x05020201
|
|
#define OID_LTALK_COLLISIONS 0x05020202
|
|
#define OID_LTALK_DEFERS 0x05020203
|
|
#define OID_LTALK_NO_DATA_ERRORS 0x05020204
|
|
#define OID_LTALK_RANDOM_CTS_ERRORS 0x05020205
|
|
#define OID_LTALK_FCS_ERRORS 0x05020206
|
|
|
|
#define OID_ARCNET_PERMANENT_ADDRESS 0x06010101
|
|
#define OID_ARCNET_CURRENT_ADDRESS 0x06010102
|
|
|
|
#define OID_ARCNET_RECONFIGURATIONS 0x06020201
|
|
|
|
#define OID_TAPI_ACCEPT 0x07030101
|
|
#define OID_TAPI_ANSWER 0x07030102
|
|
#define OID_TAPI_CLOSE 0x07030103
|
|
#define OID_TAPI_CLOSE_CALL 0x07030104
|
|
#define OID_TAPI_CONDITIONAL_MEDIA_DETECTION 0x07030105
|
|
#define OID_TAPI_CONFIG_DIALOG 0x07030106
|
|
#define OID_TAPI_DEV_SPECIFIC 0x07030107
|
|
#define OID_TAPI_DIAL 0x07030108
|
|
#define OID_TAPI_DROP 0x07030109
|
|
#define OID_TAPI_GET_ADDRESS_CAPS 0x0703010a
|
|
#define OID_TAPI_GET_ADDRESS_ID 0x0703010b
|
|
#define OID_TAPI_GET_ADDRESS_STATUS 0x0703010c
|
|
#define OID_TAPI_GET_CALL_ADDRESS_ID 0x0703010d
|
|
#define OID_TAPI_GET_CALL_INFO 0x0703010e
|
|
#define OID_TAPI_GET_CALL_STATUS 0x0703010f
|
|
#define OID_TAPI_GET_DEV_CAPS 0x07030110
|
|
#define OID_TAPI_GET_DEV_CONFIG 0x07030111
|
|
#define OID_TAPI_GET_EXTENSION_ID 0x07030112
|
|
#define OID_TAPI_GET_ID 0x07030113
|
|
#define OID_TAPI_GET_LINE_DEV_STATUS 0x07030114
|
|
#define OID_TAPI_MAKE_CALL 0x07030115
|
|
#define OID_TAPI_NEGOTIATE_EXT_VERSION 0x07030116
|
|
#define OID_TAPI_OPEN 0x07030117
|
|
#define OID_TAPI_PROVIDER_INITIALIZE 0x07030118
|
|
#define OID_TAPI_PROVIDER_SHUTDOWN 0x07030119
|
|
#define OID_TAPI_SECURE_CALL 0x0703011a
|
|
#define OID_TAPI_SELECT_EXT_VERSION 0x0703011b
|
|
#define OID_TAPI_SEND_USER_USER_INFO 0x0703011c
|
|
#define OID_TAPI_SET_APP_SPECIFIC 0x0703011d
|
|
#define OID_TAPI_SET_CALL_PARAMS 0x0703011e
|
|
#define OID_TAPI_SET_DEFAULT_MEDIA_DETECTION 0x0703011f
|
|
#define OID_TAPI_SET_DEV_CONFIG 0x07030120
|
|
#define OID_TAPI_SET_MEDIA_MODE 0x07030121
|
|
#define OID_TAPI_SET_STATUS_MESSAGES 0x07030122
|
|
#define OID_TAPI_GATHER_DIGITS 0x07030123
|
|
#define OID_TAPI_MONITOR_DIGITS 0x07030124
|
|
|
|
#define OID_ATM_SUPPORTED_VC_RATES 0x08010101
|
|
#define OID_ATM_SUPPORTED_SERVICE_CATEGORY 0x08010102
|
|
#define OID_ATM_SUPPORTED_AAL_TYPES 0x08010103
|
|
#define OID_ATM_HW_CURRENT_ADDRESS 0x08010104
|
|
#define OID_ATM_MAX_ACTIVE_VCS 0x08010105
|
|
#define OID_ATM_MAX_ACTIVE_VCI_BITS 0x08010106
|
|
#define OID_ATM_MAX_ACTIVE_VPI_BITS 0x08010107
|
|
#define OID_ATM_MAX_AAL0_PACKET_SIZE 0x08010108
|
|
#define OID_ATM_MAX_AAL1_PACKET_SIZE 0x08010109
|
|
#define OID_ATM_MAX_AAL34_PACKET_SIZE 0x0801010a
|
|
#define OID_ATM_MAX_AAL5_PACKET_SIZE 0x0801010b
|
|
|
|
#define OID_ATM_SIGNALING_VPIVCI 0x08010201
|
|
#define OID_ATM_ASSIGNED_VPI 0x08010202
|
|
#define OID_ATM_ACQUIRE_ACCESS_NET_RESOURCES 0x08010203
|
|
#define OID_ATM_RELEASE_ACCESS_NET_RESOURCES 0x08010204
|
|
#define OID_ATM_ILMI_VPIVCI 0x08010205
|
|
#define OID_ATM_DIGITAL_BROADCAST_VPIVCI 0x08010206
|
|
#define OID_ATM_GET_NEAREST_FLOW 0x08010207
|
|
#define OID_ATM_ALIGNMENT_REQUIRED 0x08010208
|
|
#define OID_ATM_LECS_ADDRESS 0x08010209
|
|
#define OID_ATM_SERVICE_ADDRESS 0x0801020a
|
|
|
|
#define OID_ATM_CALL_PROCEEDING 0x0801020b
|
|
#define OID_ATM_CALL_ALERTING 0x0801020c
|
|
#define OID_ATM_PARTY_ALERTING 0x0801020d
|
|
#define OID_ATM_CALL_NOTIFY 0x0801020e
|
|
|
|
#define OID_ATM_MY_IP_NM_ADDRESS 0x0801020f
|
|
|
|
#define OID_ATM_RCV_CELLS_OK 0x08020101
|
|
#define OID_ATM_XMIT_CELLS_OK 0x08020102
|
|
#define OID_ATM_RCV_CELLS_DROPPED 0x08020103
|
|
|
|
#define OID_ATM_RCV_INVALID_VPI_VCI 0x08020201
|
|
#define OID_ATM_CELLS_HEC_ERROR 0x08020202
|
|
#define OID_ATM_RCV_REASSEMBLY_ERROR 0x08020203
|
|
|
|
#define OID_802_11_BSSID 0x0d010101
|
|
#define OID_802_11_SSID 0x0d010102
|
|
#define OID_802_11_NETWORK_TYPES_SUPPORTED 0x0d010203
|
|
#define OID_802_11_NETWORK_TYPE_IN_USE 0x0d010204
|
|
#define OID_802_11_TX_POWER_LEVEL 0x0d010205
|
|
#define OID_802_11_RSSI 0x0d010206
|
|
#define OID_802_11_RSSI_TRIGGER 0x0d010207
|
|
#define OID_802_11_INFRASTRUCTURE_MODE 0x0d010108
|
|
#define OID_802_11_FRAGMENTATION_THRESHOLD 0x0d010209
|
|
#define OID_802_11_RTS_THRESHOLD 0x0d01020a
|
|
#define OID_802_11_NUMBER_OF_ANTENNAS 0x0d01020b
|
|
#define OID_802_11_RX_ANTENNA_SELECTED 0x0d01020c
|
|
#define OID_802_11_TX_ANTENNA_SELECTED 0x0d01020d
|
|
#define OID_802_11_SUPPORTED_RATES 0x0d01020e
|
|
#define OID_802_11_DESIRED_RATES 0x0d010210
|
|
#define OID_802_11_CONFIGURATION 0x0d010211
|
|
#define OID_802_11_STATISTICS 0x0d020212
|
|
#define OID_802_11_ADD_WEP 0x0d010113
|
|
#define OID_802_11_REMOVE_WEP 0x0d010114
|
|
#define OID_802_11_DISASSOCIATE 0x0d010115
|
|
#define OID_802_11_POWER_MODE 0x0d010216
|
|
#define OID_802_11_BSSID_LIST 0x0d010217
|
|
#define OID_802_11_AUTHENTICATION_MODE 0x0d010118
|
|
#define OID_802_11_PRIVACY_FILTER 0x0d010119
|
|
#define OID_802_11_BSSID_LIST_SCAN 0x0d01011a
|
|
#define OID_802_11_WEP_STATUS 0x0d01011b
|
|
|
|
#define OID_802_11_ENCRYPTION_STATUS OID_802_11_WEP_STATUS
|
|
#define OID_802_11_RELOAD_DEFAULTS 0x0d01011c
|
|
|
|
#define OID_802_11_ADD_KEY 0x0d01011d
|
|
#define OID_802_11_REMOVE_KEY 0x0d01011e
|
|
#define OID_802_11_ASSOCIATION_INFORMATION 0x0d01011f
|
|
#define OID_802_11_TEST 0x0d010120
|
|
#define OID_802_11_MEDIA_STREAM_MODE 0x0d010121
|
|
#define OID_802_11_CAPABILITY 0x0d010122
|
|
#define OID_802_11_PMKID 0x0d010123
|
|
#define OID_802_11_NON_BCAST_SSID_LIST 0x0d010124
|
|
#define OID_802_11_RADIO_STATUS 0x0d010125
|
|
|
|
#define NDIS_ETH_TYPE_IPV4 0x0800
|
|
#define NDIS_ETH_TYPE_ARP 0x0806
|
|
#define NDIS_ETH_TYPE_IPV6 0x86dd
|
|
#define NDIS_ETH_TYPE_802_1X 0x888e
|
|
#define NDIS_ETH_TYPE_802_1Q 0x8100
|
|
#define NDIS_ETH_TYPE_SLOW_PROTOCOL 0x8809
|
|
|
|
#define NDIS_802_11_LENGTH_SSID 32
|
|
#define NDIS_802_11_LENGTH_RATES 8
|
|
#define NDIS_802_11_LENGTH_RATES_EX 16
|
|
|
|
#define NDIS_802_11_AUTH_REQUEST_REAUTH 0x01
|
|
#define NDIS_802_11_AUTH_REQUEST_KEYUPDATE 0x02
|
|
#define NDIS_802_11_AUTH_REQUEST_PAIRWISE_ERROR 0x06
|
|
#define NDIS_802_11_AUTH_REQUEST_GROUP_ERROR 0x0e
|
|
#define NDIS_802_11_AUTH_REQUEST_AUTH_FIELDS 0x0f
|
|
|
|
#define NDIS_802_11_PMKID_CANDIDATE_PREAUTH_ENABLED 0x01
|
|
|
|
#define NDIS_802_11_AI_REQFI_CAPABILITIES 1
|
|
#define NDIS_802_11_AI_REQFI_LISTENINTERVAL 2
|
|
#define NDIS_802_11_AI_REQFI_CURRENTAPADDRESS 4
|
|
|
|
#define NDIS_802_11_AI_RESFI_CAPABILITIES 1
|
|
#define NDIS_802_11_AI_RESFI_STATUSCODE 2
|
|
#define NDIS_802_11_AI_RESFI_ASSOCIATIONID 4
|
|
|
|
typedef enum _NDIS_802_11_STATUS_TYPE {
|
|
Ndis802_11StatusType_Authentication,
|
|
Ndis802_11StatusType_MediaStreamMode,
|
|
Ndis802_11StatusType_PMKID_CandidateList,
|
|
Ndis802_11StatusTypeMax
|
|
} NDIS_802_11_STATUS_TYPE, *PNDIS_802_11_STATUS_TYPE;
|
|
|
|
typedef UCHAR NDIS_802_11_MAC_ADDRESS[6];
|
|
|
|
typedef struct _NDIS_802_11_STATUS_INDICATION {
|
|
NDIS_802_11_STATUS_TYPE StatusType;
|
|
} NDIS_802_11_STATUS_INDICATION, *PNDIS_802_11_STATUS_INDICATION;
|
|
|
|
typedef struct _NDIS_802_11_AUTHENTICATION_REQUEST {
|
|
ULONG Length;
|
|
NDIS_802_11_MAC_ADDRESS Bssid;
|
|
ULONG Flags;
|
|
} NDIS_802_11_AUTHENTICATION_REQUEST, *PNDIS_802_11_AUTHENTICATION_REQUEST;
|
|
|
|
typedef struct _PMKID_CANDIDATE {
|
|
NDIS_802_11_MAC_ADDRESS BSSID;
|
|
ULONG Flags;
|
|
} PMKID_CANDIDATE, *PPMKID_CANDIDATE;
|
|
|
|
typedef struct _NDIS_802_11_PMKID_CANDIDATE_LIST {
|
|
ULONG Version;
|
|
ULONG NumCandidates;
|
|
PMKID_CANDIDATE CandidateList[1];
|
|
} NDIS_802_11_PMKID_CANDIDATE_LIST, *PNDIS_802_11_PMKID_CANDIDATE_LIST;
|
|
|
|
typedef enum _NDIS_802_11_NETWORK_TYPE {
|
|
Ndis802_11FH,
|
|
Ndis802_11DS,
|
|
Ndis802_11OFDM5,
|
|
Ndis802_11OFDM24,
|
|
Ndis802_11Automode,
|
|
Ndis802_11NetworkTypeMax
|
|
} NDIS_802_11_NETWORK_TYPE, *PNDIS_802_11_NETWORK_TYPE;
|
|
|
|
typedef struct _NDIS_802_11_NETWORK_TYPE_LIST {
|
|
ULONG NumberOfItems;
|
|
NDIS_802_11_NETWORK_TYPE NetworkType [1];
|
|
} NDIS_802_11_NETWORK_TYPE_LIST, *PNDIS_802_11_NETWORK_TYPE_LIST;
|
|
|
|
typedef enum _NDIS_802_11_POWER_MODE {
|
|
Ndis802_11PowerModeCAM,
|
|
Ndis802_11PowerModeMAX_PSP,
|
|
Ndis802_11PowerModeFast_PSP,
|
|
Ndis802_11PowerModeMax
|
|
} NDIS_802_11_POWER_MODE, *PNDIS_802_11_POWER_MODE;
|
|
|
|
typedef ULONG NDIS_802_11_TX_POWER_LEVEL;
|
|
typedef LONG NDIS_802_11_RSSI;
|
|
|
|
typedef struct _NDIS_802_11_CONFIGURATION_FH {
|
|
ULONG Length;
|
|
ULONG HopPattern;
|
|
ULONG HopSet;
|
|
ULONG DwellTime;
|
|
} NDIS_802_11_CONFIGURATION_FH, *PNDIS_802_11_CONFIGURATION_FH;
|
|
|
|
typedef struct _NDIS_802_11_CONFIGURATION {
|
|
ULONG Length;
|
|
ULONG BeaconPeriod;
|
|
ULONG ATIMWindow;
|
|
ULONG DSConfig;
|
|
NDIS_802_11_CONFIGURATION_FH FHConfig;
|
|
} NDIS_802_11_CONFIGURATION, *PNDIS_802_11_CONFIGURATION;
|
|
|
|
typedef struct _NDIS_802_11_STATISTICS {
|
|
ULONG Length;
|
|
LARGE_INTEGER TransmittedFragmentCount;
|
|
LARGE_INTEGER MulticastTransmittedFrameCount;
|
|
LARGE_INTEGER FailedCount;
|
|
LARGE_INTEGER RetryCount;
|
|
LARGE_INTEGER MultipleRetryCount;
|
|
LARGE_INTEGER RTSSuccessCount;
|
|
LARGE_INTEGER RTSFailureCount;
|
|
LARGE_INTEGER ACKFailureCount;
|
|
LARGE_INTEGER FrameDuplicateCount;
|
|
LARGE_INTEGER ReceivedFragmentCount;
|
|
LARGE_INTEGER MulticastReceivedFrameCount;
|
|
LARGE_INTEGER FCSErrorCount;
|
|
LARGE_INTEGER TKIPLocalMICFailures;
|
|
LARGE_INTEGER TKIPICVErrorCount;
|
|
LARGE_INTEGER TKIPCounterMeasuresInvoked;
|
|
LARGE_INTEGER TKIPReplays;
|
|
LARGE_INTEGER CCMPFormatErrors;
|
|
LARGE_INTEGER CCMPReplays;
|
|
LARGE_INTEGER CCMPDecryptErrors;
|
|
LARGE_INTEGER FourWayHandshakeFailures;
|
|
LARGE_INTEGER WEPUndecryptableCount;
|
|
LARGE_INTEGER WEPICVErrorCount;
|
|
LARGE_INTEGER DecryptSuccessCount;
|
|
LARGE_INTEGER DecryptFailureCount;
|
|
} NDIS_802_11_STATISTICS, *PNDIS_802_11_STATISTICS;
|
|
|
|
typedef ULONG NDIS_802_11_KEY_INDEX;
|
|
typedef ULONGLONG NDIS_802_11_KEY_RSC;
|
|
|
|
typedef struct _NDIS_802_11_KEY {
|
|
ULONG Length;
|
|
ULONG KeyIndex;
|
|
ULONG KeyLength;
|
|
NDIS_802_11_MAC_ADDRESS BSSID;
|
|
NDIS_802_11_KEY_RSC KeyRSC;
|
|
UCHAR KeyMaterial[1];
|
|
} NDIS_802_11_KEY, *PNDIS_802_11_KEY;
|
|
|
|
typedef struct _NDIS_802_11_REMOVE_KEY {
|
|
ULONG Length;
|
|
ULONG KeyIndex;
|
|
NDIS_802_11_MAC_ADDRESS BSSID;
|
|
} NDIS_802_11_REMOVE_KEY, *PNDIS_802_11_REMOVE_KEY;
|
|
typedef struct _NDIS_802_11_WEP {
|
|
ULONG Length;
|
|
ULONG KeyIndex;
|
|
ULONG KeyLength;
|
|
UCHAR KeyMaterial[1];
|
|
} NDIS_802_11_WEP, *PNDIS_802_11_WEP;
|
|
|
|
typedef enum _NDIS_802_11_NETWORK_INFRASTRUCTURE {
|
|
Ndis802_11IBSS,
|
|
Ndis802_11Infrastructure,
|
|
Ndis802_11AutoUnknown,
|
|
Ndis802_11InfrastructureMax
|
|
} NDIS_802_11_NETWORK_INFRASTRUCTURE, *PNDIS_802_11_NETWORK_INFRASTRUCTURE;
|
|
|
|
typedef enum _NDIS_802_11_AUTHENTICATION_MODE {
|
|
Ndis802_11AuthModeOpen,
|
|
Ndis802_11AuthModeShared,
|
|
Ndis802_11AuthModeAutoSwitch,
|
|
Ndis802_11AuthModeWPA,
|
|
Ndis802_11AuthModeWPAPSK,
|
|
Ndis802_11AuthModeWPANone,
|
|
Ndis802_11AuthModeWPA2,
|
|
Ndis802_11AuthModeWPA2PSK,
|
|
Ndis802_11AuthModeMax
|
|
} NDIS_802_11_AUTHENTICATION_MODE, *PNDIS_802_11_AUTHENTICATION_MODE;
|
|
|
|
typedef UCHAR NDIS_802_11_RATES[NDIS_802_11_LENGTH_RATES];
|
|
typedef UCHAR NDIS_802_11_RATES_EX[NDIS_802_11_LENGTH_RATES_EX];
|
|
|
|
typedef struct _NDIS_802_11_SSID {
|
|
ULONG SsidLength;
|
|
UCHAR Ssid[NDIS_802_11_LENGTH_SSID];
|
|
} NDIS_802_11_SSID, *PNDIS_802_11_SSID;
|
|
|
|
typedef struct _NDIS_WLAN_BSSID {
|
|
ULONG Length;
|
|
NDIS_802_11_MAC_ADDRESS MacAddress;
|
|
UCHAR Reserved[2];
|
|
NDIS_802_11_SSID Ssid;
|
|
ULONG Privacy;
|
|
NDIS_802_11_RSSI Rssi;
|
|
NDIS_802_11_NETWORK_TYPE NetworkTypeInUse;
|
|
NDIS_802_11_CONFIGURATION Configuration;
|
|
NDIS_802_11_NETWORK_INFRASTRUCTURE InfrastructureMode;
|
|
NDIS_802_11_RATES SupportedRates;
|
|
} NDIS_WLAN_BSSID, *PNDIS_WLAN_BSSID;
|
|
|
|
typedef struct _NDIS_802_11_BSSID_LIST {
|
|
ULONG NumberOfItems;
|
|
NDIS_WLAN_BSSID Bssid[1];
|
|
} NDIS_802_11_BSSID_LIST, *PNDIS_802_11_BSSID_LIST;
|
|
|
|
typedef struct _NDIS_WLAN_BSSID_EX {
|
|
ULONG Length;
|
|
NDIS_802_11_MAC_ADDRESS MacAddress;
|
|
UCHAR Reserved[2];
|
|
NDIS_802_11_SSID Ssid;
|
|
ULONG Privacy;
|
|
NDIS_802_11_RSSI Rssi;
|
|
NDIS_802_11_NETWORK_TYPE NetworkTypeInUse;
|
|
NDIS_802_11_CONFIGURATION Configuration;
|
|
NDIS_802_11_NETWORK_INFRASTRUCTURE InfrastructureMode;
|
|
NDIS_802_11_RATES_EX SupportedRates;
|
|
ULONG IELength;
|
|
UCHAR IEs[1];
|
|
} NDIS_WLAN_BSSID_EX, *PNDIS_WLAN_BSSID_EX;
|
|
|
|
typedef struct _NDIS_802_11_BSSID_LIST_EX {
|
|
ULONG NumberOfItems;
|
|
NDIS_WLAN_BSSID_EX Bssid[1];
|
|
} NDIS_802_11_BSSID_LIST_EX, *PNDIS_802_11_BSSID_LIST_EX;
|
|
|
|
typedef struct _NDIS_802_11_FIXED_IEs {
|
|
UCHAR Timestamp[8];
|
|
USHORT BeaconInterval;
|
|
USHORT Capabilities;
|
|
} NDIS_802_11_FIXED_IEs, *PNDIS_802_11_FIXED_IEs;
|
|
|
|
typedef struct _NDIS_802_11_VARIABLE_IEs {
|
|
UCHAR ElementID;
|
|
UCHAR Length;
|
|
UCHAR data[1];
|
|
} NDIS_802_11_VARIABLE_IEs, *PNDIS_802_11_VARIABLE_IEs;
|
|
|
|
typedef ULONG NDIS_802_11_FRAGMENTATION_THRESHOLD;
|
|
typedef ULONG NDIS_802_11_RTS_THRESHOLD;
|
|
typedef ULONG NDIS_802_11_ANTENNA;
|
|
|
|
typedef enum _NDIS_802_11_PRIVACY_FILTER {
|
|
Ndis802_11PrivFilterAcceptAll,
|
|
Ndis802_11PrivFilter8021xWEP
|
|
} NDIS_802_11_PRIVACY_FILTER, *PNDIS_802_11_PRIVACY_FILTER;
|
|
|
|
typedef enum _NDIS_802_11_WEP_STATUS {
|
|
Ndis802_11WEPEnabled,
|
|
Ndis802_11Encryption1Enabled = Ndis802_11WEPEnabled,
|
|
Ndis802_11WEPDisabled,
|
|
Ndis802_11EncryptionDisabled = Ndis802_11WEPDisabled,
|
|
Ndis802_11WEPKeyAbsent,
|
|
Ndis802_11Encryption1KeyAbsent = Ndis802_11WEPKeyAbsent,
|
|
Ndis802_11WEPNotSupported,
|
|
Ndis802_11EncryptionNotSupported = Ndis802_11WEPNotSupported,
|
|
Ndis802_11Encryption2Enabled,
|
|
Ndis802_11Encryption2KeyAbsent,
|
|
Ndis802_11Encryption3Enabled,
|
|
Ndis802_11Encryption3KeyAbsent
|
|
} NDIS_802_11_WEP_STATUS, *PNDIS_802_11_WEP_STATUS, NDIS_802_11_ENCRYPTION_STATUS, *PNDIS_802_11_ENCRYPTION_STATUS;
|
|
|
|
typedef enum _NDIS_802_11_RELOAD_DEFAULTS {
|
|
Ndis802_11ReloadWEPKeys
|
|
} NDIS_802_11_RELOAD_DEFAULTS, *PNDIS_802_11_RELOAD_DEFAULTS;
|
|
|
|
typedef struct _NDIS_802_11_AI_REQFI {
|
|
USHORT Capabilities;
|
|
USHORT ListenInterval;
|
|
NDIS_802_11_MAC_ADDRESS CurrentAPAddress;
|
|
} NDIS_802_11_AI_REQFI, *PNDIS_802_11_AI_REQFI;
|
|
|
|
typedef struct _NDIS_802_11_AI_RESFI {
|
|
USHORT Capabilities;
|
|
USHORT StatusCode;
|
|
USHORT AssociationId;
|
|
} NDIS_802_11_AI_RESFI, *PNDIS_802_11_AI_RESFI;
|
|
|
|
typedef struct _NDIS_802_11_ASSOCIATION_INFORMATION {
|
|
ULONG Length;
|
|
USHORT AvailableRequestFixedIEs;
|
|
NDIS_802_11_AI_REQFI RequestFixedIEs;
|
|
ULONG RequestIELength;
|
|
ULONG OffsetRequestIEs;
|
|
USHORT AvailableResponseFixedIEs;
|
|
NDIS_802_11_AI_RESFI ResponseFixedIEs;
|
|
ULONG ResponseIELength;
|
|
ULONG OffsetResponseIEs;
|
|
} NDIS_802_11_ASSOCIATION_INFORMATION, *PNDIS_802_11_ASSOCIATION_INFORMATION;
|
|
|
|
typedef struct _NDIS_802_11_AUTHENTICATION_EVENT {
|
|
NDIS_802_11_STATUS_INDICATION Status;
|
|
NDIS_802_11_AUTHENTICATION_REQUEST Request[1];
|
|
} NDIS_802_11_AUTHENTICATION_EVENT, *PNDIS_802_11_AUTHENTICATION_EVENT;
|
|
|
|
typedef struct _NDIS_802_11_TEST {
|
|
ULONG Length;
|
|
ULONG Type;
|
|
__C89_NAMELESS union {
|
|
NDIS_802_11_AUTHENTICATION_EVENT AuthenticationEvent;
|
|
NDIS_802_11_RSSI RssiTrigger;
|
|
};
|
|
} NDIS_802_11_TEST, *PNDIS_802_11_TEST;
|
|
|
|
typedef enum _NDIS_802_11_MEDIA_STREAM_MODE {
|
|
Ndis802_11MediaStreamOff,
|
|
Ndis802_11MediaStreamOn,
|
|
} NDIS_802_11_MEDIA_STREAM_MODE, *PNDIS_802_11_MEDIA_STREAM_MODE;
|
|
|
|
typedef UCHAR NDIS_802_11_PMKID_VALUE[16];
|
|
|
|
typedef struct _BSSID_INFO {
|
|
NDIS_802_11_MAC_ADDRESS BSSID;
|
|
NDIS_802_11_PMKID_VALUE PMKID;
|
|
} BSSID_INFO, *PBSSID_INFO;
|
|
|
|
typedef struct _NDIS_802_11_PMKID {
|
|
ULONG Length;
|
|
ULONG BSSIDInfoCount;
|
|
BSSID_INFO BSSIDInfo[1];
|
|
} NDIS_802_11_PMKID, *PNDIS_802_11_PMKID;
|
|
|
|
typedef struct _NDIS_802_11_AUTHENTICATION_ENCRYPTION {
|
|
NDIS_802_11_AUTHENTICATION_MODE AuthModeSupported;
|
|
NDIS_802_11_ENCRYPTION_STATUS EncryptStatusSupported;
|
|
} NDIS_802_11_AUTHENTICATION_ENCRYPTION, *PNDIS_802_11_AUTHENTICATION_ENCRYPTION;
|
|
|
|
typedef struct _NDIS_802_11_CAPABILITY {
|
|
ULONG Length;
|
|
ULONG Version;
|
|
ULONG NoOfPMKIDs;
|
|
ULONG NoOfAuthEncryptPairsSupported;
|
|
NDIS_802_11_AUTHENTICATION_ENCRYPTION AuthenticationEncryptionSupported[1];
|
|
} NDIS_802_11_CAPABILITY, *PNDIS_802_11_CAPABILITY;
|
|
|
|
typedef struct _NDIS_802_11_NON_BCAST_SSID_LIST {
|
|
ULONG NumberOfItems;
|
|
NDIS_802_11_SSID Non_Bcast_Ssid[1];
|
|
} NDIS_802_11_NON_BCAST_SSID_LIST, *PNDIS_802_11_NON_BCAST_SSID_LIST;
|
|
|
|
typedef enum _NDIS_802_11_RADIO_STATUS {
|
|
Ndis802_11RadioStatusOn,
|
|
Ndis802_11RadioStatusHardwareOff,
|
|
Ndis802_11RadioStatusSoftwareOff,
|
|
Ndis802_11RadioStatusHardwareSoftwareOff,
|
|
Ndis802_11RadioStatusMax
|
|
} NDIS_802_11_RADIO_STATUS, *PNDIS_802_11_RADIO_STATUS;
|
|
|
|
#define OID_IRDA_RECEIVING 0x0a010100
|
|
#define OID_IRDA_TURNAROUND_TIME 0x0a010101
|
|
#define OID_IRDA_SUPPORTED_SPEEDS 0x0a010102
|
|
#define OID_IRDA_LINK_SPEED 0x0a010103
|
|
#define OID_IRDA_MEDIA_BUSY 0x0a010104
|
|
|
|
#define OID_IRDA_EXTRA_RCV_BOFS 0x0a010200
|
|
#define OID_IRDA_RATE_SNIFF 0x0a010201
|
|
#define OID_IRDA_UNICAST_LIST 0x0a010202
|
|
#define OID_IRDA_MAX_UNICAST_LIST_SIZE 0x0a010203
|
|
#define OID_IRDA_MAX_RECEIVE_WINDOW_SIZE 0x0a010204
|
|
#define OID_IRDA_MAX_SEND_WINDOW_SIZE 0x0a010205
|
|
#define OID_IRDA_RESERVED1 0x0a01020a
|
|
#define OID_IRDA_RESERVED2 0x0a01020f
|
|
|
|
#define OID_1394_LOCAL_NODE_INFO 0x0c010101
|
|
#define OID_1394_VC_INFO 0x0c010102
|
|
|
|
#define OID_CO_ADD_PVC 0xfe000001
|
|
#define OID_CO_DELETE_PVC 0xfe000002
|
|
#define OID_CO_GET_CALL_INFORMATION 0xfe000003
|
|
#define OID_CO_ADD_ADDRESS 0xfe000004
|
|
#define OID_CO_DELETE_ADDRESS 0xfe000005
|
|
#define OID_CO_GET_ADDRESSES 0xfe000006
|
|
#define OID_CO_ADDRESS_CHANGE 0xfe000007
|
|
#define OID_CO_SIGNALING_ENABLED 0xfe000008
|
|
#define OID_CO_SIGNALING_DISABLED 0xfe000009
|
|
#define OID_CO_AF_CLOSE 0xfe00000a
|
|
|
|
#define OID_CO_TAPI_CM_CAPS 0xfe001001
|
|
#define OID_CO_TAPI_LINE_CAPS 0xfe001002
|
|
#define OID_CO_TAPI_ADDRESS_CAPS 0xfe001003
|
|
#define OID_CO_TAPI_TRANSLATE_TAPI_CALLPARAMS 0xfe001004
|
|
#define OID_CO_TAPI_TRANSLATE_NDIS_CALLPARAMS 0xfe001005
|
|
#define OID_CO_TAPI_TRANSLATE_TAPI_SAP 0xfe001006
|
|
#define OID_CO_TAPI_GET_CALL_DIAGNOSTICS 0xfe001007
|
|
#define OID_CO_TAPI_REPORT_DIGITS 0xfe001008
|
|
#define OID_CO_TAPI_DONT_REPORT_DIGITS 0xfe001009
|
|
|
|
#define OID_PNP_CAPABILITIES 0xfd010100
|
|
#define OID_PNP_SET_POWER 0xfd010101
|
|
#define OID_PNP_QUERY_POWER 0xfd010102
|
|
#define OID_PNP_ADD_WAKE_UP_PATTERN 0xfd010103
|
|
#define OID_PNP_REMOVE_WAKE_UP_PATTERN 0xfd010104
|
|
#define OID_PNP_WAKE_UP_PATTERN_LIST 0xfd010105
|
|
#define OID_PNP_ENABLE_WAKE_UP 0xfd010106
|
|
|
|
#define OID_PNP_WAKE_UP_OK 0xfd020200
|
|
#define OID_PNP_WAKE_UP_ERROR 0xfd020201
|
|
|
|
#if (NTDDI_VERSION >= 0x06010000 || NDIS_SUPPORT_NDIS620)
|
|
#define OID_PM_CURRENT_CAPABILITIES 0xfd010107
|
|
#define OID_PM_HARDWARE_CAPABILITIES 0xfd010108
|
|
#define OID_PM_PARAMETERS 0xfd010109
|
|
#define OID_PM_ADD_WOL_PATTERN 0xfd01010a
|
|
#define OID_PM_REMOVE_WOL_PATTERN 0xfd01010b
|
|
#define OID_PM_WOL_PATTERN_LIST 0xfd01010c
|
|
#define OID_PM_ADD_PROTOCOL_OFFLOAD 0xfd01010d
|
|
#define OID_PM_GET_PROTOCOL_OFFLOAD 0xfd01010e
|
|
#define OID_PM_REMOVE_PROTOCOL_OFFLOAD 0xfd01010f
|
|
#define OID_PM_PROTOCOL_OFFLOAD_LIST 0xfd010110
|
|
#define OID_PM_RESERVED_1 0xfd010111
|
|
|
|
#define OID_RECEIVE_FILTER_HARDWARE_CAPABILITIES 0x00010221
|
|
#define OID_RECEIVE_FILTER_GLOBAL_PARAMETERS 0x00010222
|
|
#define OID_RECEIVE_FILTER_ALLOCATE_QUEUE 0x00010223
|
|
#define OID_RECEIVE_FILTER_FREE_QUEUE 0x00010224
|
|
#define OID_RECEIVE_FILTER_ENUM_QUEUES 0x00010225
|
|
#define OID_RECEIVE_FILTER_QUEUE_PARAMETERS 0x00010226
|
|
#define OID_RECEIVE_FILTER_SET_FILTER 0x00010227
|
|
#define OID_RECEIVE_FILTER_CLEAR_FILTER 0x00010228
|
|
#define OID_RECEIVE_FILTER_ENUM_FILTERS 0x00010229
|
|
#define OID_RECEIVE_FILTER_PARAMETERS 0x0001022a
|
|
#define OID_RECEIVE_FILTER_QUEUE_ALLOCATION_COMPLETE 0x0001022b
|
|
#define OID_RECEIVE_FILTER_CURRENT_CAPABILITIES 0x0001022d
|
|
#define OID_NIC_SWITCH_HARDWARE_CAPABILITIES 0x0001022e
|
|
#define OID_NIC_SWITCH_CURRENT_CAPABILITIES 0x0001022f
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define OID_RECEIVE_FILTER_MOVE_FILTER 0x00010230
|
|
#endif
|
|
#define OID_VLAN_RESERVED1 0x00010231
|
|
#define OID_VLAN_RESERVED2 0x00010232
|
|
#define OID_VLAN_RESERVED3 0x00010233
|
|
#define OID_VLAN_RESERVED4 0x00010234
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define OID_PACKET_COALESCING_FILTER_MATCH_COUNT 0x00010235
|
|
#endif
|
|
#endif
|
|
|
|
#if NTDDI_VERSION >= 0x06020000 || NDIS_SUPPORT_NDIS630
|
|
#define OID_NIC_SWITCH_CREATE_SWITCH 0x00010237
|
|
#define OID_NIC_SWITCH_PARAMETERS 0x00010238
|
|
#define OID_NIC_SWITCH_DELETE_SWITCH 0x00010239
|
|
#define OID_NIC_SWITCH_ENUM_SWITCHES 0x00010240
|
|
#define OID_NIC_SWITCH_CREATE_VPORT 0x00010241
|
|
#define OID_NIC_SWITCH_VPORT_PARAMETERS 0x00010242
|
|
#define OID_NIC_SWITCH_ENUM_VPORTS 0x00010243
|
|
#define OID_NIC_SWITCH_DELETE_VPORT 0x00010244
|
|
#define OID_NIC_SWITCH_ALLOCATE_VF 0x00010245
|
|
#define OID_NIC_SWITCH_FREE_VF 0x00010246
|
|
#define OID_NIC_SWITCH_VF_PARAMETERS 0x00010247
|
|
#define OID_NIC_SWITCH_ENUM_VFS 0x00010248
|
|
|
|
#define OID_SRIOV_HARDWARE_CAPABILITIES 0x00010249
|
|
#define OID_SRIOV_CURRENT_CAPABILITIES 0x00010250
|
|
#define OID_SRIOV_READ_VF_CONFIG_SPACE 0x00010251
|
|
#define OID_SRIOV_WRITE_VF_CONFIG_SPACE 0x00010252
|
|
#define OID_SRIOV_READ_VF_CONFIG_BLOCK 0x00010253
|
|
#define OID_SRIOV_WRITE_VF_CONFIG_BLOCK 0x00010254
|
|
#define OID_SRIOV_RESET_VF 0x00010255
|
|
#define OID_SRIOV_SET_VF_POWER_STATE 0x00010256
|
|
#define OID_SRIOV_VF_VENDOR_DEVICE_ID 0x00010257
|
|
#define OID_SRIOV_PROBED_BARS 0x00010258
|
|
#define OID_SRIOV_BAR_RESOURCES 0x00010259
|
|
#define OID_SRIOV_PF_LUID 0x00010260
|
|
|
|
#define OID_SRIOV_CONFIG_STATE 0x00010261
|
|
#define OID_SRIOV_VF_SERIAL_NUMBER 0x00010262
|
|
#define OID_SRIOV_VF_INVALIDATE_CONFIG_BLOCK 0x00010269
|
|
|
|
#define OID_SWITCH_PROPERTY_ADD 0x00010263
|
|
#define OID_SWITCH_PROPERTY_UPDATE 0x00010264
|
|
#define OID_SWITCH_PROPERTY_DELETE 0x00010265
|
|
#define OID_SWITCH_PROPERTY_ENUM 0x00010266
|
|
#define OID_SWITCH_FEATURE_STATUS_QUERY 0x00010267
|
|
|
|
#define OID_SWITCH_NIC_REQUEST 0x00010270
|
|
#define OID_SWITCH_PORT_PROPERTY_ADD 0x00010271
|
|
#define OID_SWITCH_PORT_PROPERTY_UPDATE 0x00010272
|
|
#define OID_SWITCH_PORT_PROPERTY_DELETE 0x00010273
|
|
#define OID_SWITCH_PORT_PROPERTY_ENUM 0x00010274
|
|
#define OID_SWITCH_PARAMETERS 0x00010275
|
|
#define OID_SWITCH_PORT_ARRAY 0x00010276
|
|
#define OID_SWITCH_NIC_ARRAY 0x00010277
|
|
#define OID_SWITCH_PORT_CREATE 0x00010278
|
|
#define OID_SWITCH_PORT_DELETE 0x00010279
|
|
#define OID_SWITCH_NIC_CREATE 0x0001027a
|
|
#define OID_SWITCH_NIC_CONNECT 0x0001027b
|
|
#define OID_SWITCH_NIC_DISCONNECT 0x0001027c
|
|
#define OID_SWITCH_NIC_DELETE 0x0001027d
|
|
#define OID_SWITCH_PORT_FEATURE_STATUS_QUERY 0x0001027e
|
|
#define OID_SWITCH_PORT_TEARDOWN 0x0001027f
|
|
#define OID_SWITCH_NIC_SAVE 0x00010290
|
|
#define OID_SWITCH_NIC_SAVE_COMPLETE 0x00010291
|
|
#define OID_SWITCH_NIC_RESTORE 0x00010292
|
|
#define OID_SWITCH_NIC_RESTORE_COMPLETE 0x00010293
|
|
#define OID_SWITCH_NIC_UPDATED 0x00010294
|
|
#define OID_SWITCH_PORT_UPDATED 0x00010295
|
|
#endif
|
|
|
|
#define NDIS_PNP_WAKE_UP_MAGIC_PACKET 0x00000001
|
|
#define NDIS_PNP_WAKE_UP_PATTERN_MATCH 0x00000002
|
|
#define NDIS_PNP_WAKE_UP_LINK_CHANGE 0x00000004
|
|
|
|
#define OID_TCP_TASK_OFFLOAD 0xfc010201
|
|
#define OID_TCP_TASK_IPSEC_ADD_SA 0xfc010202
|
|
#define OID_TCP_TASK_IPSEC_DELETE_SA 0xfc010203
|
|
#define OID_TCP_SAN_SUPPORT 0xfc010204
|
|
#define OID_TCP_TASK_IPSEC_ADD_UDPESP_SA 0xfc010205
|
|
#define OID_TCP_TASK_IPSEC_DELETE_UDPESP_SA 0xfc010206
|
|
#define OID_TCP4_OFFLOAD_STATS 0xfc010207
|
|
#define OID_TCP6_OFFLOAD_STATS 0xfc010208
|
|
#define OID_IP4_OFFLOAD_STATS 0xfc010209
|
|
#define OID_IP6_OFFLOAD_STATS 0xfc01020a
|
|
|
|
#define OID_TCP_OFFLOAD_CURRENT_CONFIG 0xfc01020b
|
|
#define OID_TCP_OFFLOAD_PARAMETERS 0xfc01020c
|
|
#define OID_TCP_OFFLOAD_HARDWARE_CAPABILITIES 0xfc01020d
|
|
#define OID_TCP_CONNECTION_OFFLOAD_CURRENT_CONFIG 0xfc01020e
|
|
#define OID_TCP_CONNECTION_OFFLOAD_HARDWARE_CAPABILITIES 0xfc01020f
|
|
#define OID_OFFLOAD_ENCAPSULATION 0x0101010a
|
|
|
|
#if NDIS_SUPPORT_NDIS61
|
|
#define OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA 0xfc030202
|
|
#define OID_TCP_TASK_IPSEC_OFFLOAD_V2_DELETE_SA 0xfc030203
|
|
#define OID_TCP_TASK_IPSEC_OFFLOAD_V2_UPDATE_SA 0xfc030204
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA_EX 0xfc030205
|
|
#endif
|
|
|
|
#define OID_FFP_SUPPORT 0xfc010210
|
|
#define OID_FFP_FLUSH 0xfc010211
|
|
#define OID_FFP_CONTROL 0xfc010212
|
|
#define OID_FFP_PARAMS 0xfc010213
|
|
#define OID_FFP_DATA 0xfc010214
|
|
|
|
#define OID_FFP_DRIVER_STATS 0xfc020210
|
|
#define OID_FFP_ADAPTER_STATS 0xfc020211
|
|
|
|
#define OID_TCP_CONNECTION_OFFLOAD_PARAMETERS 0xfc030201
|
|
|
|
#if NTDDI_VERSION >= 0x06010000 || NDIS_SUPPORT_NDIS620
|
|
#define OID_TUNNEL_INTERFACE_SET_OID 0x0f010106
|
|
#define OID_TUNNEL_INTERFACE_RELEASE_OID 0x0f010107
|
|
#endif
|
|
|
|
#define OID_QOS_RESERVED1 0xfb010100
|
|
#define OID_QOS_RESERVED2 0xfb010101
|
|
#define OID_QOS_RESERVED3 0xfb010102
|
|
#define OID_QOS_RESERVED4 0xfb010103
|
|
#define OID_QOS_RESERVED5 0xfb010104
|
|
#define OID_QOS_RESERVED6 0xfb010105
|
|
#define OID_QOS_RESERVED7 0xfb010106
|
|
#define OID_QOS_RESERVED8 0xfb010107
|
|
#define OID_QOS_RESERVED9 0xfb010108
|
|
#define OID_QOS_RESERVED10 0xfb010109
|
|
#define OID_QOS_RESERVED11 0xfb01010a
|
|
#define OID_QOS_RESERVED12 0xfb01010b
|
|
#define OID_QOS_RESERVED13 0xfb01010c
|
|
#define OID_QOS_RESERVED14 0xfb01010d
|
|
#define OID_QOS_RESERVED15 0xfb01010e
|
|
#define OID_QOS_RESERVED16 0xfb01010f
|
|
#define OID_QOS_RESERVED17 0xfb010110
|
|
#define OID_QOS_RESERVED18 0xfb010111
|
|
#define OID_QOS_RESERVED19 0xfb010112
|
|
#define OID_QOS_RESERVED20 0xfb010113
|
|
|
|
#define OFFLOAD_MAX_SAS 3
|
|
|
|
#define OFFLOAD_INBOUND_SA 0x0001
|
|
#define OFFLOAD_OUTBOUND_SA 0x0002
|
|
|
|
typedef struct NDIS_CO_DEVICE_PROFILE {
|
|
NDIS_VAR_DATA_DESC DeviceDescription;
|
|
NDIS_VAR_DATA_DESC DevSpecificInfo;
|
|
ULONG ulTAPISupplementaryPassThru;
|
|
ULONG ulAddressModes;
|
|
ULONG ulNumAddresses;
|
|
ULONG ulBearerModes;
|
|
ULONG ulMaxTxRate;
|
|
ULONG ulMinTxRate;
|
|
ULONG ulMaxRxRate;
|
|
ULONG ulMinRxRate;
|
|
ULONG ulMediaModes;
|
|
ULONG ulGenerateToneModes;
|
|
ULONG ulGenerateToneMaxNumFreq;
|
|
ULONG ulGenerateDigitModes;
|
|
ULONG ulMonitorToneMaxNumFreq;
|
|
ULONG ulMonitorToneMaxNumEntries;
|
|
ULONG ulMonitorDigitModes;
|
|
ULONG ulGatherDigitsMinTimeout;
|
|
ULONG ulGatherDigitsMaxTimeout;
|
|
ULONG ulDevCapFlags;
|
|
ULONG ulMaxNumActiveCalls;
|
|
ULONG ulAnswerMode;
|
|
ULONG ulUUIAcceptSize;
|
|
ULONG ulUUIAnswerSize;
|
|
ULONG ulUUIMakeCallSize;
|
|
ULONG ulUUIDropSize;
|
|
ULONG ulUUISendUserUserInfoSize;
|
|
ULONG ulUUICallInfoSize;
|
|
} NDIS_CO_DEVICE_PROFILE, *PNDIS_CO_DEVICE_PROFILE;
|
|
|
|
#ifndef IP_EXPORT_INCLUDED
|
|
typedef ULONG IPAddr, IPMask;
|
|
#endif
|
|
typedef ULONG SPI_TYPE;
|
|
|
|
typedef enum _OFFLOAD_OPERATION_E {
|
|
AUTHENTICATE = 1,
|
|
ENCRYPT
|
|
} OFFLOAD_OPERATION_E;
|
|
|
|
typedef struct _OFFLOAD_ALGO_INFO {
|
|
ULONG algoIdentifier;
|
|
ULONG algoKeylen;
|
|
ULONG algoRounds;
|
|
} OFFLOAD_ALGO_INFO, *POFFLOAD_ALGO_INFO;
|
|
|
|
typedef enum _OFFLOAD_CONF_ALGO {
|
|
OFFLOAD_IPSEC_CONF_NONE,
|
|
OFFLOAD_IPSEC_CONF_DES,
|
|
OFFLOAD_IPSEC_CONF_RESERVED,
|
|
OFFLOAD_IPSEC_CONF_3_DES,
|
|
OFFLOAD_IPSEC_CONF_MAX
|
|
} OFFLOAD_CONF_ALGO;
|
|
|
|
typedef enum _OFFLOAD_INTEGRITY_ALGO {
|
|
OFFLOAD_IPSEC_INTEGRITY_NONE,
|
|
OFFLOAD_IPSEC_INTEGRITY_MD5,
|
|
OFFLOAD_IPSEC_INTEGRITY_SHA,
|
|
OFFLOAD_IPSEC_INTEGRITY_MAX
|
|
} OFFLOAD_INTEGRITY_ALGO;
|
|
|
|
typedef struct _OFFLOAD_SECURITY_ASSOCIATION {
|
|
OFFLOAD_OPERATION_E Operation;
|
|
SPI_TYPE SPI;
|
|
OFFLOAD_ALGO_INFO IntegrityAlgo;
|
|
OFFLOAD_ALGO_INFO ConfAlgo;
|
|
OFFLOAD_ALGO_INFO Reserved;
|
|
} OFFLOAD_SECURITY_ASSOCIATION, *POFFLOAD_SECURITY_ASSOCIATION;
|
|
|
|
typedef struct _OFFLOAD_IPSEC_ADD_SA {
|
|
IPAddr SrcAddr;
|
|
IPMask SrcMask;
|
|
IPAddr DestAddr;
|
|
IPMask DestMask;
|
|
ULONG Protocol;
|
|
USHORT SrcPort;
|
|
USHORT DestPort;
|
|
IPAddr SrcTunnelAddr;
|
|
IPAddr DestTunnelAddr;
|
|
USHORT Flags;
|
|
SHORT NumSAs;
|
|
OFFLOAD_SECURITY_ASSOCIATION SecAssoc[OFFLOAD_MAX_SAS];
|
|
HANDLE OffloadHandle;
|
|
ULONG KeyLen;
|
|
UCHAR KeyMat[1];
|
|
} OFFLOAD_IPSEC_ADD_SA, *POFFLOAD_IPSEC_ADD_SA;
|
|
|
|
typedef struct _OFFLOAD_IPSEC_DELETE_SA {
|
|
HANDLE OffloadHandle;
|
|
} OFFLOAD_IPSEC_DELETE_SA, *POFFLOAD_IPSEC_DELETE_SA;
|
|
|
|
typedef enum _UDP_ENCAP_TYPE {
|
|
OFFLOAD_IPSEC_UDPESP_ENCAPTYPE_IKE,
|
|
OFFLOAD_IPSEC_UDPESP_ENCAPTYPE_OTHER
|
|
} UDP_ENCAP_TYPE, *PUDP_ENCAP_TYPE;
|
|
|
|
typedef struct _OFFLOAD_IPSEC_UDPESP_ENCAPTYPE_ENTRY {
|
|
UDP_ENCAP_TYPE UdpEncapType;
|
|
USHORT DstEncapPort;
|
|
} OFFLOAD_IPSEC_UDPESP_ENCAPTYPE_ENTRY, *POFFLOAD_IPSEC_UDPESP_ENCAPTYPE_ENTRY;
|
|
|
|
typedef struct _OFFLOAD_IPSEC_ADD_UDPESP_SA {
|
|
IPAddr SrcAddr;
|
|
IPMask SrcMask;
|
|
IPAddr DstAddr;
|
|
IPMask DstMask;
|
|
ULONG Protocol;
|
|
USHORT SrcPort;
|
|
USHORT DstPort;
|
|
IPAddr SrcTunnelAddr;
|
|
IPAddr DstTunnelAddr;
|
|
USHORT Flags;
|
|
SHORT NumSAs;
|
|
OFFLOAD_SECURITY_ASSOCIATION SecAssoc[OFFLOAD_MAX_SAS];
|
|
HANDLE OffloadHandle;
|
|
OFFLOAD_IPSEC_UDPESP_ENCAPTYPE_ENTRY EncapTypeEntry;
|
|
HANDLE EncapTypeEntryOffldHandle;
|
|
ULONG KeyLen;
|
|
UCHAR KeyMat[1];
|
|
} OFFLOAD_IPSEC_ADD_UDPESP_SA, *POFFLOAD_IPSEC_ADD_UDPESP_SA;
|
|
|
|
typedef struct _OFFLOAD_IPSEC_DELETE_UDPESP_SA {
|
|
HANDLE OffloadHandle;
|
|
HANDLE EncapTypeEntryOffldHandle;
|
|
} OFFLOAD_IPSEC_DELETE_UDPESP_SA, *POFFLOAD_IPSEC_DELETE_UDPESP_SA;
|
|
|
|
typedef ULONG NDIS_VLAN_ID;
|
|
|
|
typedef enum _NDIS_MEDIUM {
|
|
NdisMedium802_3,
|
|
NdisMedium802_5,
|
|
NdisMediumFddi,
|
|
NdisMediumWan,
|
|
NdisMediumLocalTalk,
|
|
NdisMediumDix,
|
|
NdisMediumArcnetRaw,
|
|
NdisMediumArcnet878_2,
|
|
NdisMediumAtm,
|
|
NdisMediumWirelessWan,
|
|
NdisMediumIrda,
|
|
NdisMediumBpc,
|
|
NdisMediumCoWan,
|
|
NdisMedium1394,
|
|
NdisMediumInfiniBand,
|
|
#if NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6
|
|
NdisMediumTunnel,
|
|
NdisMediumNative802_11,
|
|
NdisMediumLoopback,
|
|
#endif
|
|
#if NTDDI_VERSION >= 0x06010000
|
|
NdisMediumWiMAX,
|
|
NdisMediumIP,
|
|
#endif
|
|
NdisMediumMax
|
|
} NDIS_MEDIUM, *PNDIS_MEDIUM;
|
|
|
|
typedef enum _NDIS_PHYSICAL_MEDIUM {
|
|
NdisPhysicalMediumUnspecified,
|
|
NdisPhysicalMediumWirelessLan,
|
|
NdisPhysicalMediumCableModem,
|
|
NdisPhysicalMediumPhoneLine,
|
|
NdisPhysicalMediumPowerLine,
|
|
NdisPhysicalMediumDSL,
|
|
NdisPhysicalMediumFibreChannel,
|
|
NdisPhysicalMedium1394,
|
|
NdisPhysicalMediumWirelessWan,
|
|
NdisPhysicalMediumNative802_11,
|
|
NdisPhysicalMediumBluetooth,
|
|
NdisPhysicalMediumInfiniband,
|
|
NdisPhysicalMediumWiMax,
|
|
NdisPhysicalMediumUWB,
|
|
NdisPhysicalMedium802_3,
|
|
NdisPhysicalMedium802_5,
|
|
NdisPhysicalMediumIrda,
|
|
NdisPhysicalMediumWiredWAN,
|
|
NdisPhysicalMediumWiredCoWan,
|
|
NdisPhysicalMediumOther,
|
|
NdisPhysicalMediumMax
|
|
} NDIS_PHYSICAL_MEDIUM, *PNDIS_PHYSICAL_MEDIUM;
|
|
|
|
typedef struct _TRANSPORT_HEADER_OFFSET {
|
|
USHORT ProtocolType;
|
|
USHORT HeaderOffset;
|
|
} TRANSPORT_HEADER_OFFSET, *PTRANSPORT_HEADER_OFFSET;
|
|
|
|
typedef struct _NETWORK_ADDRESS {
|
|
USHORT AddressLength;
|
|
USHORT AddressType;
|
|
UCHAR Address[1];
|
|
} NETWORK_ADDRESS, *PNETWORK_ADDRESS;
|
|
|
|
typedef struct _NETWORK_ADDRESS_LIST {
|
|
LONG AddressCount;
|
|
USHORT AddressType;
|
|
NETWORK_ADDRESS Address[1];
|
|
} NETWORK_ADDRESS_LIST, *PNETWORK_ADDRESS_LIST;
|
|
|
|
typedef struct _NETWORK_ADDRESS_IP {
|
|
USHORT sin_port;
|
|
ULONG in_addr;
|
|
UCHAR sin_zero[8];
|
|
} NETWORK_ADDRESS_IP, *PNETWORK_ADDRESS_IP;
|
|
|
|
#define NDIS_PROTOCOL_ID_DEFAULT 0x00
|
|
#define NDIS_PROTOCOL_ID_TCP_IP 0x02
|
|
#define NDIS_PROTOCOL_ID_IPX 0x06
|
|
#define NDIS_PROTOCOL_ID_NBF 0x07
|
|
#define NDIS_PROTOCOL_ID_MAX 0x0f
|
|
#define NDIS_PROTOCOL_ID_MASK 0x0f
|
|
|
|
#define READABLE_LOCAL_CLOCK 0x00000001
|
|
#define CLOCK_NETWORK_DERIVED 0x00000002
|
|
#define CLOCK_PRECISION 0x00000004
|
|
#define RECEIVE_TIME_INDICATION_CAPABLE 0x00000008
|
|
#define TIMED_SEND_CAPABLE 0x00000010
|
|
#define TIME_STAMP_CAPABLE 0x00000020
|
|
|
|
#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
|
|
|
|
#define WAN_PROTOCOL_KEEPS_STATS 0x00000001
|
|
|
|
#define NETWORK_ADDRESS_LENGTH_IP sizeof (NETWORK_ADDRESS_IP)
|
|
#define NETWORK_ADDRESS_LENGTH_IPX sizeof (NETWORK_ADDRESS_IPX)
|
|
|
|
typedef struct _NETWORK_ADDRESS_IPX {
|
|
ULONG NetworkAddress;
|
|
UCHAR NodeAddress[6];
|
|
USHORT Socket;
|
|
} NETWORK_ADDRESS_IPX, *PNETWORK_ADDRESS_IPX;
|
|
|
|
typedef enum _NDIS_HARDWARE_STATUS {
|
|
NdisHardwareStatusReady,
|
|
NdisHardwareStatusInitializing,
|
|
NdisHardwareStatusReset,
|
|
NdisHardwareStatusClosing,
|
|
NdisHardwareStatusNotReady
|
|
} NDIS_HARDWARE_STATUS, *PNDIS_HARDWARE_STATUS;
|
|
|
|
typedef struct _GEN_GET_TIME_CAPS {
|
|
ULONG Flags;
|
|
ULONG ClockPrecision;
|
|
} GEN_GET_TIME_CAPS, *PGEN_GET_TIME_CAPS;
|
|
|
|
typedef struct _GEN_GET_NETCARD_TIME {
|
|
ULONGLONG ReadTime;
|
|
} GEN_GET_NETCARD_TIME, *PGEN_GET_NETCARD_TIME;
|
|
|
|
typedef struct _NDIS_PM_PACKET_PATTERN {
|
|
ULONG Priority;
|
|
ULONG Reserved;
|
|
ULONG MaskSize;
|
|
ULONG PatternOffset;
|
|
ULONG PatternSize;
|
|
ULONG PatternFlags;
|
|
} NDIS_PM_PACKET_PATTERN, *PNDIS_PM_PACKET_PATTERN;
|
|
|
|
typedef enum _NDIS_DEVICE_POWER_STATE {
|
|
NdisDeviceStateUnspecified = 0,
|
|
NdisDeviceStateD0,
|
|
NdisDeviceStateD1,
|
|
NdisDeviceStateD2,
|
|
NdisDeviceStateD3,
|
|
NdisDeviceStateMaximum
|
|
} NDIS_DEVICE_POWER_STATE, *PNDIS_DEVICE_POWER_STATE;
|
|
|
|
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 {
|
|
ULONG Flags;
|
|
NDIS_PM_WAKE_UP_CAPABILITIES WakeUpCapabilities;
|
|
} NDIS_PNP_CAPABILITIES, *PNDIS_PNP_CAPABILITIES;
|
|
|
|
typedef enum _NDIS_FDDI_ATTACHMENT_TYPE {
|
|
NdisFddiTypeIsolated = 1,
|
|
NdisFddiTypeLocalA,
|
|
NdisFddiTypeLocalB,
|
|
NdisFddiTypeLocalAB,
|
|
NdisFddiTypeLocalS,
|
|
NdisFddiTypeWrapA,
|
|
NdisFddiTypeWrapB,
|
|
NdisFddiTypeWrapAB,
|
|
NdisFddiTypeWrapS,
|
|
NdisFddiTypeCWrapA,
|
|
NdisFddiTypeCWrapB,
|
|
NdisFddiTypeCWrapS,
|
|
NdisFddiTypeThrough
|
|
} NDIS_FDDI_ATTACHMENT_TYPE, *PNDIS_FDDI_ATTACHMENT_TYPE;
|
|
|
|
typedef enum _NDIS_FDDI_RING_MGT_STATE {
|
|
NdisFddiRingIsolated = 1,
|
|
NdisFddiRingNonOperational,
|
|
NdisFddiRingOperational,
|
|
NdisFddiRingDetect,
|
|
NdisFddiRingNonOperationalDup,
|
|
NdisFddiRingOperationalDup,
|
|
NdisFddiRingDirected,
|
|
NdisFddiRingTrace
|
|
} NDIS_FDDI_RING_MGT_STATE, *PNDIS_FDDI_RING_MGT_STATE;
|
|
|
|
typedef enum _NDIS_FDDI_LCONNECTION_STATE {
|
|
NdisFddiStateOff = 1,
|
|
NdisFddiStateBreak,
|
|
NdisFddiStateTrace,
|
|
NdisFddiStateConnect,
|
|
NdisFddiStateNext,
|
|
NdisFddiStateSignal,
|
|
NdisFddiStateJoin,
|
|
NdisFddiStateVerify,
|
|
NdisFddiStateActive,
|
|
NdisFddiStateMaintenance
|
|
} NDIS_FDDI_LCONNECTION_STATE, *PNDIS_FDDI_LCONNECTION_STATE;
|
|
|
|
typedef enum _NDIS_WAN_MEDIUM_SUBTYPE {
|
|
NdisWanMediumHub,
|
|
NdisWanMediumX_25,
|
|
NdisWanMediumIsdn,
|
|
NdisWanMediumSerial,
|
|
NdisWanMediumFrameRelay,
|
|
NdisWanMediumAtm,
|
|
NdisWanMediumSonet,
|
|
NdisWanMediumSW56K,
|
|
NdisWanMediumPPTP,
|
|
NdisWanMediumL2TP,
|
|
NdisWanMediumIrda,
|
|
NdisWanMediumParallel,
|
|
NdisWanMediumPppoe,
|
|
#if NTDDI_VERSION >= 0x06000000
|
|
NdisWanMediumSSTP,
|
|
NdisWanMediumAgileVPN,
|
|
#endif
|
|
} NDIS_WAN_MEDIUM_SUBTYPE, *PNDIS_WAN_MEDIUM_SUBTYPE;
|
|
|
|
typedef enum _NDIS_WAN_HEADER_FORMAT {
|
|
NdisWanHeaderNative,
|
|
NdisWanHeaderEthernet
|
|
} NDIS_WAN_HEADER_FORMAT, *PNDIS_WAN_HEADER_FORMAT;
|
|
|
|
typedef enum _NDIS_WAN_QUALITY {
|
|
NdisWanRaw,
|
|
NdisWanErrorControl,
|
|
NdisWanReliable
|
|
} NDIS_WAN_QUALITY, *PNDIS_WAN_QUALITY;
|
|
|
|
typedef struct _NDIS_WAN_PROTOCOL_CAPS {
|
|
ULONG Flags;
|
|
ULONG Reserved;
|
|
} NDIS_WAN_PROTOCOL_CAPS, *PNDIS_WAN_PROTOCOL_CAPS;
|
|
|
|
typedef enum _NDIS_802_5_RING_STATE {
|
|
NdisRingStateOpened = 1,
|
|
NdisRingStateClosed,
|
|
NdisRingStateOpening,
|
|
NdisRingStateClosing,
|
|
NdisRingStateOpenFailure,
|
|
NdisRingStateRingFailure
|
|
} NDIS_802_5_RING_STATE, *PNDIS_802_5_RING_STATE;
|
|
|
|
typedef enum _NDIS_MEDIA_STATE {
|
|
NdisMediaStateConnected,
|
|
NdisMediaStateDisconnected
|
|
} NDIS_MEDIA_STATE, *PNDIS_MEDIA_STATE;
|
|
|
|
typedef ULONG Priority_802_3;
|
|
|
|
typedef struct _NDIS_CO_LINK_SPEED {
|
|
ULONG Outbound;
|
|
ULONG Inbound;
|
|
} NDIS_CO_LINK_SPEED, *PNDIS_CO_LINK_SPEED;
|
|
|
|
#if NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6
|
|
#define NDIS_LINK_SPEED_UNKNOWN NET_IF_LINK_SPEED_UNKNOWN
|
|
|
|
typedef struct _NDIS_LINK_SPEED {
|
|
ULONG64 XmitLinkSpeed;
|
|
ULONG64 RcvLinkSpeed;
|
|
} NDIS_LINK_SPEED, *PNDIS_LINK_SPEED;
|
|
#endif
|
|
|
|
#ifndef _NDIS_
|
|
typedef int NDIS_STATUS, *PNDIS_STATUS;
|
|
#endif
|
|
|
|
#if NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6
|
|
#ifndef __WINDOT11_H__
|
|
#include <windot11.h>
|
|
#endif
|
|
#endif
|
|
|
|
#define fNDIS_GUID_TO_OID 0x00000001
|
|
#define fNDIS_GUID_TO_STATUS 0x00000002
|
|
#define fNDIS_GUID_ANSI_STRING 0x00000004
|
|
#define fNDIS_GUID_UNICODE_STRING 0x00000008
|
|
#define fNDIS_GUID_ARRAY 0x00000010
|
|
#define fNDIS_GUID_ALLOW_READ 0x00000020
|
|
#define fNDIS_GUID_ALLOW_WRITE 0x00000040
|
|
#define fNDIS_GUID_METHOD 0x00000080
|
|
#define fNDIS_GUID_NDIS_RESERVED 0x00000100
|
|
#define fNDIS_GUID_SUPPORT_COMMON_HEADER 0x00000200
|
|
|
|
#define NDIS_PACKET_TYPE_DIRECTED 0x00000001
|
|
#define NDIS_PACKET_TYPE_MULTICAST 0x00000002
|
|
#define NDIS_PACKET_TYPE_ALL_MULTICAST 0x00000004
|
|
#define NDIS_PACKET_TYPE_BROADCAST 0x00000008
|
|
#define NDIS_PACKET_TYPE_SOURCE_ROUTING 0x00000010
|
|
#define NDIS_PACKET_TYPE_PROMISCUOUS 0x00000020
|
|
#define NDIS_PACKET_TYPE_SMT 0x00000040
|
|
#define NDIS_PACKET_TYPE_ALL_LOCAL 0x00000080
|
|
#define NDIS_PACKET_TYPE_GROUP 0x00001000
|
|
#define NDIS_PACKET_TYPE_ALL_FUNCTIONAL 0x00002000
|
|
#define NDIS_PACKET_TYPE_FUNCTIONAL 0x00004000
|
|
#define NDIS_PACKET_TYPE_MAC_FRAME 0x00008000
|
|
#define NDIS_PACKET_TYPE_NO_LOCAL 0x00010000
|
|
|
|
#define NDIS_RING_SIGNAL_LOSS 0x00008000
|
|
#define NDIS_RING_HARD_ERROR 0x00004000
|
|
#define NDIS_RING_SOFT_ERROR 0x00002000
|
|
#define NDIS_RING_TRANSMIT_BEACON 0x00001000
|
|
#define NDIS_RING_LOBE_WIRE_FAULT 0x00000800
|
|
#define NDIS_RING_AUTO_REMOVAL_ERROR 0x00000400
|
|
#define NDIS_RING_REMOVE_RECEIVED 0x00000200
|
|
#define NDIS_RING_COUNTER_OVERFLOW 0x00000100
|
|
#define NDIS_RING_SINGLE_STATION 0x00000080
|
|
#define NDIS_RING_RING_RECOVERY 0x00000040
|
|
|
|
#define NDIS_PROT_OPTION_ESTIMATED_LENGTH 0x00000001
|
|
#define NDIS_PROT_OPTION_NO_LOOPBACK 0x00000002
|
|
#define NDIS_PROT_OPTION_NO_RSVD_ON_RCVPKT 0x00000004
|
|
#define NDIS_PROT_OPTION_SEND_RESTRICTED 0x00000008
|
|
|
|
#define NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA 0x00000001
|
|
#define NDIS_MAC_OPTION_RECEIVE_SERIALIZED 0x00000002
|
|
#define NDIS_MAC_OPTION_TRANSFERS_NOT_PEND 0x00000004
|
|
#define NDIS_MAC_OPTION_NO_LOOPBACK 0x00000008
|
|
|
|
#define NDIS_MAC_OPTION_FULL_DUPLEX 0x00000010
|
|
|
|
#define NDIS_MAC_OPTION_EOTX_INDICATION 0x00000020
|
|
#define NDIS_MAC_OPTION_8021P_PRIORITY 0x00000040
|
|
#define NDIS_MAC_OPTION_SUPPORTS_MAC_ADDRESS_OVERWRITE 0x00000080
|
|
#define NDIS_MAC_OPTION_RECEIVE_AT_DPC 0x00000100
|
|
#define NDIS_MAC_OPTION_8021Q_VLAN 0x00000200
|
|
#define NDIS_MAC_OPTION_RESERVED 0x80000000
|
|
|
|
#define NDIS_MEDIA_CAP_TRANSMIT 0x00000001
|
|
#define NDIS_MEDIA_CAP_RECEIVE 0x00000002
|
|
|
|
#define NDIS_CO_MAC_OPTION_DYNAMIC_LINK_SPEED 0x00000001
|
|
|
|
typedef struct _NDIS_GUID {
|
|
GUID Guid;
|
|
__C89_NAMELESS union {
|
|
NDIS_OID Oid;
|
|
NDIS_STATUS Status;
|
|
};
|
|
ULONG Size;
|
|
ULONG Flags;
|
|
} NDIS_GUID, *PNDIS_GUID;
|
|
|
|
typedef struct _NDIS_IRDA_PACKET_INFO {
|
|
ULONG ExtraBOFs;
|
|
ULONG MinTurnAroundTime;
|
|
} NDIS_IRDA_PACKET_INFO, *PNDIS_IRDA_PACKET_INFO;
|
|
|
|
#if NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6
|
|
#define NDIS_MAKE_NET_LUID(PNLUID, IFTYPE, NLUIDIDX) { (PNLUID)->Info.IfType = IFTYPE; (PNLUID)->Info.NetLuidIndex = NLUIDIDX; (PNLUID)->Info.Reserved = 0; }
|
|
|
|
#define MAXIMUM_IP_OPER_STATUS_ADDRESS_FAMILIES_SUPPORTED 32
|
|
|
|
#define NDIS_IF_MAX_STRING_SIZE IF_MAX_STRING_SIZE
|
|
#define NDIS_MAX_PHYS_ADDRESS_LENGTH IF_MAX_PHYS_ADDRESS_LENGTH
|
|
|
|
#define NDIS_LINK_STATE_XMIT_LINK_SPEED_AUTO_NEGOTIATED 0x00000001
|
|
#define NDIS_LINK_STATE_RCV_LINK_SPEED_AUTO_NEGOTIATED 0x00000002
|
|
#define NDIS_LINK_STATE_DUPLEX_AUTO_NEGOTIATED 0x00000004
|
|
#define NDIS_LINK_STATE_PAUSE_FUNCTIONS_AUTO_NEGOTIATED 0x00000008
|
|
|
|
#define NDIS_LINK_STATE_REVISION_1 1
|
|
#define NDIS_LINK_PARAMETERS_REVISION_1 1
|
|
#define NDIS_OPER_STATE_REVISION_1 1
|
|
#define NDIS_IP_OPER_STATUS_INFO_REVISION_1 1
|
|
#define NDIS_IP_OPER_STATE_REVISION_1 1
|
|
|
|
#define NDIS_SIZEOF_LINK_STATE_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_LINK_STATE, AutoNegotiationFlags)
|
|
#define NDIS_SIZEOF_LINK_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_LINK_PARAMETERS, AutoNegotiationFlags)
|
|
#define NDIS_SIZEOF_OPER_STATE_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_OPER_STATE, OperationalStatusFlags)
|
|
#define NDIS_SIZEOF_IP_OPER_STATUS_INFO_REVISION_1 FIELD_OFFSET (NDIS_IP_OPER_STATUS_INFO, IpOperationalStatus) + MAXIMUM_IP_OPER_STATUS_ADDRESS_FAMILIES_SUPPORTED *sizeof (NDIS_IP_OPER_STATUS)
|
|
#define NDIS_SIZEOF_IP_OPER_STATE_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_IP_OPER_STATE, IpOperationalStatus)
|
|
|
|
typedef IF_COUNTED_STRING NDIS_IF_COUNTED_STRING, *PNDIS_IF_COUNTED_STRING;
|
|
typedef IF_PHYSICAL_ADDRESS NDIS_IF_PHYSICAL_ADDRESS, *PNDIS_IF_PHYSICAL_ADDRESS;
|
|
typedef NET_IF_MEDIA_CONNECT_STATE NDIS_MEDIA_CONNECT_STATE, *PNDIS_MEDIA_CONNECT_STATE;
|
|
typedef NET_IF_MEDIA_DUPLEX_STATE NDIS_MEDIA_DUPLEX_STATE, *PNDIS_MEDIA_DUPLEX_STATE;
|
|
|
|
typedef enum _NDIS_SUPPORTED_PAUSE_FUNCTIONS {
|
|
NdisPauseFunctionsUnsupported,
|
|
NdisPauseFunctionsSendOnly,
|
|
NdisPauseFunctionsReceiveOnly,
|
|
NdisPauseFunctionsSendAndReceive,
|
|
NdisPauseFunctionsUnknown
|
|
} NDIS_SUPPORTED_PAUSE_FUNCTIONS, *PNDIS_SUPPORTED_PAUSE_FUNCTIONS;
|
|
|
|
typedef struct _NDIS_LINK_STATE {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_MEDIA_CONNECT_STATE MediaConnectState;
|
|
NDIS_MEDIA_DUPLEX_STATE MediaDuplexState;
|
|
ULONG64 XmitLinkSpeed;
|
|
ULONG64 RcvLinkSpeed;
|
|
NDIS_SUPPORTED_PAUSE_FUNCTIONS PauseFunctions;
|
|
ULONG AutoNegotiationFlags;
|
|
} NDIS_LINK_STATE, *PNDIS_LINK_STATE;
|
|
|
|
typedef struct _NDIS_LINK_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_MEDIA_DUPLEX_STATE MediaDuplexState;
|
|
ULONG64 XmitLinkSpeed;
|
|
ULONG64 RcvLinkSpeed;
|
|
NDIS_SUPPORTED_PAUSE_FUNCTIONS PauseFunctions;
|
|
ULONG AutoNegotiationFlags;
|
|
} NDIS_LINK_PARAMETERS, *PNDIS_LINK_PARAMETERS;
|
|
|
|
typedef struct _NDIS_OPER_STATE {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NET_IF_OPER_STATUS OperationalStatus;
|
|
ULONG OperationalStatusFlags;
|
|
} NDIS_OPER_STATE, *PNDIS_OPER_STATE;
|
|
|
|
typedef struct _NDIS_IP_OPER_STATUS {
|
|
ULONG AddressFamily;
|
|
NET_IF_OPER_STATUS OperationalStatus;
|
|
ULONG OperationalStatusFlags;
|
|
} NDIS_IP_OPER_STATUS, *PNDIS_IP_OPER_STATUS;
|
|
|
|
typedef struct _NDIS_IP_OPER_STATUS_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG NumberofAddressFamiliesReturned;
|
|
NDIS_IP_OPER_STATUS IpOperationalStatus[MAXIMUM_IP_OPER_STATUS_ADDRESS_FAMILIES_SUPPORTED];
|
|
} NDIS_IP_OPER_STATUS_INFO, *PNDIS_IP_OPER_STATUS_INFO;
|
|
|
|
typedef struct _NDIS_IP_OPER_STATE {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_IP_OPER_STATUS IpOperationalStatus;
|
|
} NDIS_IP_OPER_STATE, *PNDIS_IP_OPER_STATE;
|
|
|
|
#define NDIS_OFFLOAD_PARAMETERS_NO_CHANGE 0
|
|
#define NDIS_OFFLOAD_PARAMETERS_TX_RX_DISABLED 1
|
|
#define NDIS_OFFLOAD_PARAMETERS_TX_ENABLED_RX_DISABLED 2
|
|
#define NDIS_OFFLOAD_PARAMETERS_RX_ENABLED_TX_DISABLED 3
|
|
#define NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED 4
|
|
|
|
#define NDIS_OFFLOAD_PARAMETERS_LSOV1_DISABLED 1
|
|
#define NDIS_OFFLOAD_PARAMETERS_LSOV1_ENABLED 2
|
|
|
|
#define NDIS_OFFLOAD_PARAMETERS_IPSECV1_DISABLED 1
|
|
#define NDIS_OFFLOAD_PARAMETERS_IPSECV1_AH_ENABLED 2
|
|
#define NDIS_OFFLOAD_PARAMETERS_IPSECV1_ESP_ENABLED 3
|
|
#define NDIS_OFFLOAD_PARAMETERS_IPSECV1_AH_AND_ESP_ENABLED 4
|
|
|
|
#define NDIS_OFFLOAD_PARAMETERS_LSOV2_DISABLED 1
|
|
#define NDIS_OFFLOAD_PARAMETERS_LSOV2_ENABLED 2
|
|
|
|
#if NDIS_SUPPORT_NDIS61
|
|
#define NDIS_OFFLOAD_PARAMETERS_IPSECV2_DISABLED 1
|
|
#define NDIS_OFFLOAD_PARAMETERS_IPSECV2_AH_ENABLED 2
|
|
#define NDIS_OFFLOAD_PARAMETERS_IPSECV2_ESP_ENABLED 3
|
|
#define NDIS_OFFLOAD_PARAMETERS_IPSECV2_AH_AND_ESP_ENABLED 4
|
|
#endif
|
|
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_OFFLOAD_PARAMETERS_RSC_DISABLED 1
|
|
#define NDIS_OFFLOAD_PARAMETERS_RSC_ENABLED 2
|
|
|
|
#define NDIS_ENCAPSULATION_TYPE_GRE_MAC 0x00000001
|
|
#define NDIS_ENCAPSULATION_TYPE_MAX NDIS_ENCAPSULATION_TYPE_GRE_MAC
|
|
#endif
|
|
|
|
#define NDIS_OFFLOAD_PARAMETERS_CONNECTION_OFFLOAD_DISABLED 1
|
|
#define NDIS_OFFLOAD_PARAMETERS_CONNECTION_OFFLOAD_ENABLED 2
|
|
|
|
#define NDIS_OFFLOAD_PARAMETERS_REVISION_1 1
|
|
#if NDIS_SUPPORT_NDIS61
|
|
#define NDIS_OFFLOAD_PARAMETERS_REVISION_2 2
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_OFFLOAD_PARAMETERS_REVISION_3 3
|
|
#define NDIS_OFFLOAD_PARAMETERS_SKIP_REGISTRY_UPDATE 0x00000001
|
|
#endif
|
|
|
|
typedef struct _NDIS_OFFLOAD_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
UCHAR IPv4Checksum;
|
|
UCHAR TCPIPv4Checksum;
|
|
UCHAR UDPIPv4Checksum;
|
|
UCHAR TCPIPv6Checksum;
|
|
UCHAR UDPIPv6Checksum;
|
|
UCHAR LsoV1;
|
|
UCHAR IPsecV1;
|
|
UCHAR LsoV2IPv4;
|
|
UCHAR LsoV2IPv6;
|
|
UCHAR TcpConnectionIPv4;
|
|
UCHAR TcpConnectionIPv6;
|
|
ULONG Flags;
|
|
#if NDIS_SUPPORT_NDIS61
|
|
UCHAR IPsecV2;
|
|
UCHAR IPsecV2IPv4;
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
__C89_NAMELESS struct {
|
|
UCHAR RscIPv4;
|
|
UCHAR RscIPv6;
|
|
};
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
__C89_NAMELESS struct {
|
|
UCHAR EncapsulatedPacketTaskOffload;
|
|
UCHAR EncapsulationTypes;
|
|
};
|
|
#endif
|
|
} NDIS_OFFLOAD_PARAMETERS, *PNDIS_OFFLOAD_PARAMETERS;
|
|
|
|
#define NDIS_SIZEOF_OFFLOAD_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_OFFLOAD_PARAMETERS, Flags)
|
|
#if NDIS_SUPPORT_NDIS61
|
|
#define NDIS_SIZEOF_OFFLOAD_PARAMETERS_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_OFFLOAD_PARAMETERS, IPsecV2IPv4)
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_SIZEOF_OFFLOAD_PARAMETERS_REVISION_3 RTL_SIZEOF_THROUGH_FIELD (NDIS_OFFLOAD_PARAMETERS, EncapsulationTypes)
|
|
#endif
|
|
|
|
#define NDIS_OFFLOAD_NOT_SUPPORTED 0
|
|
#define NDIS_OFFLOAD_SUPPORTED 1
|
|
|
|
#define NDIS_OFFLOAD_SET_NO_CHANGE 0
|
|
#define NDIS_OFFLOAD_SET_ON 1
|
|
#define NDIS_OFFLOAD_SET_OFF 2
|
|
|
|
#define NDIS_ENCAPSULATION_NOT_SUPPORTED 0x00000000
|
|
#define NDIS_ENCAPSULATION_NULL 0x00000001
|
|
#define NDIS_ENCAPSULATION_IEEE_802_3 0x00000002
|
|
#define NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q 0x00000004
|
|
#define NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB 0x00000008
|
|
#define NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED 0x00000010
|
|
|
|
typedef struct _NDIS_TCP_LARGE_SEND_OFFLOAD_V1 {
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG MaxOffLoadSize;
|
|
ULONG MinSegmentCount;
|
|
ULONG TcpOptions:2;
|
|
ULONG IpOptions:2;
|
|
} IPv4;
|
|
} NDIS_TCP_LARGE_SEND_OFFLOAD_V1, *PNDIS_TCP_LARGE_SEND_OFFLOAD_V1;
|
|
|
|
typedef struct _NDIS_TCP_IP_CHECKSUM_OFFLOAD {
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG IpOptionsSupported:2;
|
|
ULONG TcpOptionsSupported:2;
|
|
ULONG TcpChecksum:2;
|
|
ULONG UdpChecksum:2;
|
|
ULONG IpChecksum:2;
|
|
} IPv4Transmit;
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG IpOptionsSupported:2;
|
|
ULONG TcpOptionsSupported:2;
|
|
ULONG TcpChecksum:2;
|
|
ULONG UdpChecksum:2;
|
|
ULONG IpChecksum:2;
|
|
} IPv4Receive;
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG IpExtensionHeadersSupported:2;
|
|
ULONG TcpOptionsSupported:2;
|
|
ULONG TcpChecksum:2;
|
|
ULONG UdpChecksum:2;
|
|
} IPv6Transmit;
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG IpExtensionHeadersSupported:2;
|
|
ULONG TcpOptionsSupported:2;
|
|
ULONG TcpChecksum:2;
|
|
ULONG UdpChecksum:2;
|
|
} IPv6Receive;
|
|
} NDIS_TCP_IP_CHECKSUM_OFFLOAD, *PNDIS_TCP_IP_CHECKSUM_OFFLOAD;
|
|
typedef struct _NDIS_IPSEC_OFFLOAD_V1 {
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG AhEspCombined;
|
|
ULONG TransportTunnelCombined;
|
|
ULONG IPv4Options;
|
|
ULONG Flags;
|
|
} Supported;
|
|
struct {
|
|
ULONG Md5 : 2;
|
|
ULONG Sha_1 : 2;
|
|
ULONG Transport : 2;
|
|
ULONG Tunnel : 2;
|
|
ULONG Send : 2;
|
|
ULONG Receive : 2;
|
|
} IPv4AH;
|
|
struct {
|
|
ULONG Des : 2;
|
|
ULONG Reserved : 2;
|
|
ULONG TripleDes : 2;
|
|
ULONG NullEsp : 2;
|
|
ULONG Transport : 2;
|
|
ULONG Tunnel : 2;
|
|
ULONG Send : 2;
|
|
ULONG Receive : 2;
|
|
} IPv4ESP;
|
|
} NDIS_IPSEC_OFFLOAD_V1, *PNDIS_IPSEC_OFFLOAD_V1;
|
|
|
|
typedef struct _NDIS_TCP_LARGE_SEND_OFFLOAD_V2 {
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG MaxOffLoadSize;
|
|
ULONG MinSegmentCount;
|
|
}IPv4;
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG MaxOffLoadSize;
|
|
ULONG MinSegmentCount;
|
|
ULONG IpExtensionHeadersSupported:2;
|
|
ULONG TcpOptionsSupported:2;
|
|
} IPv6;
|
|
} NDIS_TCP_LARGE_SEND_OFFLOAD_V2, *PNDIS_TCP_LARGE_SEND_OFFLOAD_V2;
|
|
|
|
#if NDIS_SUPPORT_NDIS61
|
|
#define IPSEC_OFFLOAD_V2_AUTHENTICATION_MD5 0x00000001
|
|
#define IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_1 0x00000002
|
|
#define IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_256 0x00000004
|
|
#define IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_128 0x00000008
|
|
#define IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_192 0x00000010
|
|
#define IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_256 0x00000020
|
|
|
|
#define IPSEC_OFFLOAD_V2_ENCRYPTION_NONE 0x00000001
|
|
#define IPSEC_OFFLOAD_V2_ENCRYPTION_DES_CBC 0x00000002
|
|
#define IPSEC_OFFLOAD_V2_ENCRYPTION_3_DES_CBC 0x00000004
|
|
#define IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_128 0x00000008
|
|
#define IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_192 0x00000010
|
|
#define IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_256 0x00000020
|
|
#define IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_128 0x00000040
|
|
#define IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_192 0x00000080
|
|
#define IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_256 0x00000100
|
|
|
|
typedef struct _NDIS_IPSEC_OFFLOAD_V2 {
|
|
ULONG Encapsulation;
|
|
BOOLEAN IPv6Supported;
|
|
BOOLEAN IPv4Options;
|
|
BOOLEAN IPv6NonIPsecExtensionHeaders;
|
|
BOOLEAN Ah;
|
|
BOOLEAN Esp;
|
|
BOOLEAN AhEspCombined;
|
|
BOOLEAN Transport;
|
|
BOOLEAN Tunnel;
|
|
BOOLEAN TransportTunnelCombined;
|
|
BOOLEAN LsoSupported;
|
|
BOOLEAN ExtendedSequenceNumbers;
|
|
ULONG UdpEsp;
|
|
ULONG AuthenticationAlgorithms;
|
|
ULONG EncryptionAlgorithms;
|
|
ULONG SaOffloadCapacity;
|
|
} NDIS_IPSEC_OFFLOAD_V2, *PNDIS_IPSEC_OFFLOAD_V2;
|
|
#endif
|
|
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_NOT_SUPPORTED 0x00000000
|
|
#define NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_INNER_IPV4 0x00000001
|
|
#define NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_OUTER_IPV4 0x00000002
|
|
#define NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_INNER_IPV6 0x00000004
|
|
#define NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_OUTER_IPV6 0x00000008
|
|
#endif
|
|
|
|
#define NDIS_OFFLOAD_FLAGS_GROUP_CHECKSUM_CAPABILITIES 0x1
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define IPSEC_OFFLOAD_V2_AND_TCP_CHECKSUM_COEXISTENCE 0x2
|
|
#define IPSEC_OFFLOAD_V2_AND_UDP_CHECKSUM_COEXISTENCE 0x4
|
|
#endif
|
|
|
|
#define NDIS_MAXIMUM_PORTS 0x1000000
|
|
|
|
#define NDIS_DEFAULT_PORT_NUMBER ((NDIS_PORT_NUMBER) 0)
|
|
|
|
#define NDIS_WMI_DEFAULT_METHOD_ID 1
|
|
|
|
#define NDIS_WMI_OBJECT_TYPE_SET 0x01
|
|
#define NDIS_WMI_OBJECT_TYPE_METHOD 0x02
|
|
#define NDIS_WMI_OBJECT_TYPE_EVENT 0x03
|
|
#define NDIS_WMI_OBJECT_TYPE_ENUM_ADAPTER 0x04
|
|
#define NDIS_WMI_OBJECT_TYPE_OUTPUT_INFO 0x05
|
|
|
|
#define NDIS_DEVICE_TYPE_ENDPOINT 0x00000001
|
|
|
|
#define NDIS_OFFLOAD_REVISION_1 1
|
|
#define NDIS_TCP_CONNECTION_OFFLOAD_REVISION_1 1
|
|
#define NDIS_PORT_AUTHENTICATION_PARAMETERS_REVISION_1 1
|
|
#define NDIS_WMI_METHOD_HEADER_REVISION_1 1
|
|
#define NDIS_WMI_SET_HEADER_REVISION_1 1
|
|
#define NDIS_WMI_EVENT_HEADER_REVISION_1 1
|
|
#define NDIS_WMI_ENUM_ADAPTER_REVISION_1 1
|
|
#if NDIS_SUPPORT_NDIS61
|
|
#define NDIS_TCP_CONNECTION_OFFLOAD_REVISION_2 2
|
|
#define NDIS_OFFLOAD_REVISION_2 2
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_OFFLOAD_REVISION_3 3
|
|
#define NDIS_TCP_RECV_SEG_COALESC_OFFLOAD_REVISION_1 1
|
|
#endif
|
|
|
|
#define NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_OFFLOAD, Flags)
|
|
#define NDIS_SIZEOF_NDIS_WMI_OFFLOAD_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_OFFLOAD, Flags)
|
|
#define NDIS_SIZEOF_TCP_CONNECTION_OFFLOAD_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_TCP_CONNECTION_OFFLOAD, Flags)
|
|
#define NDIS_SIZEOF_WMI_TCP_CONNECTION_OFFLOAD_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_TCP_CONNECTION_OFFLOAD, Flags)
|
|
#define NDIS_SIZEOF_PORT_AUTHENTICATION_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_PORT_AUTHENTICATION_PARAMETERS, RcvAuthorizationState)
|
|
#define NDIS_SIZEOF_WMI_METHOD_HEADER_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_METHOD_HEADER, Padding)
|
|
#define NDIS_SIZEOF_WMI_SET_HEADER_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_SET_HEADER, Padding)
|
|
#define NDIS_SIZEOF_WMI_EVENT_HEADER_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_EVENT_HEADER, Padding)
|
|
#define NDIS_SIZEOF_WMI_ENUM_ADAPTER_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_ENUM_ADAPTER, DeviceName)
|
|
#if NDIS_SUPPORT_NDIS61
|
|
#define NDIS_SIZEOF_TCP_CONNECTION_OFFLOAD_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_TCP_CONNECTION_OFFLOAD, Flags)
|
|
#define NDIS_SIZEOF_NDIS_WMI_OFFLOAD_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_OFFLOAD, IPsecV2)
|
|
#define NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_OFFLOAD, IPsecV2)
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_SIZEOF_NDIS_WMI_OFFLOAD_REVISION_3 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_OFFLOAD, EncapsulatedPacketTaskOffloadGre)
|
|
#define NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_3 RTL_SIZEOF_THROUGH_FIELD (NDIS_OFFLOAD, EncapsulatedPacketTaskOffloadGre)
|
|
#define NDIS_SIZEOF_TCP_RECV_SEG_COALESC_OFFLOAD_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_TCP_RECV_SEG_COALESCE_OFFLOAD, IPv6.Enabled)
|
|
#define NDIS_SIZEOF_ENCAPSULATED_PACKET_TASK_OFFLOAD_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD, MaxHeaderSizeSupported)
|
|
#endif
|
|
|
|
#if NDIS_SUPPORT_NDIS630
|
|
typedef struct _NDIS_TCP_RECV_SEG_COALESCE_OFFLOAD {
|
|
struct {
|
|
BOOLEAN Enabled;
|
|
} IPv4;
|
|
struct {
|
|
BOOLEAN Enabled;
|
|
} IPv6;
|
|
} NDIS_TCP_RECV_SEG_COALESCE_OFFLOAD, *PNDIS_TCP_RECV_SEG_COALESCE_OFFLOAD;
|
|
|
|
typedef struct _NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD {
|
|
ULONG TransmitChecksumOffloadSupported:4;
|
|
ULONG ReceiveChecksumOffloadSupported:4;
|
|
ULONG LsoV2Supported:4;
|
|
ULONG RssSupported:4;
|
|
ULONG VmqSupported:4;
|
|
ULONG MaxHeaderSizeSupported;
|
|
} NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD, *PNDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD;
|
|
#endif
|
|
|
|
typedef struct _NDIS_OFFLOAD {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_TCP_IP_CHECKSUM_OFFLOAD Checksum;
|
|
NDIS_TCP_LARGE_SEND_OFFLOAD_V1 LsoV1;
|
|
NDIS_IPSEC_OFFLOAD_V1 IPsecV1;
|
|
NDIS_TCP_LARGE_SEND_OFFLOAD_V2 LsoV2;
|
|
ULONG Flags;
|
|
#if NDIS_SUPPORT_NDIS61
|
|
NDIS_IPSEC_OFFLOAD_V2 IPsecV2;
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
NDIS_TCP_RECV_SEG_COALESCE_OFFLOAD Rsc;
|
|
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD EncapsulatedPacketTaskOffloadGre;
|
|
#endif
|
|
} NDIS_OFFLOAD, *PNDIS_OFFLOAD;
|
|
|
|
typedef struct _NDIS_WMI_TCP_LARGE_SEND_OFFLOAD_V1 {
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG MaxOffLoadSize;
|
|
ULONG MinSegmentCount;
|
|
ULONG TcpOptions;
|
|
ULONG IpOptions;
|
|
} IPv4;
|
|
} NDIS_WMI_TCP_LARGE_SEND_OFFLOAD_V1, *PNDIS_WMI_TCP_LARGE_SEND_OFFLOAD_V1;
|
|
|
|
typedef struct _NDIS_WMI_TCP_IP_CHECKSUM_OFFLOAD {
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG IpOptionsSupported;
|
|
ULONG TcpOptionsSupported;
|
|
ULONG TcpChecksum;
|
|
ULONG UdpChecksum;
|
|
ULONG IpChecksum;
|
|
} IPv4Transmit;
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG IpOptionsSupported;
|
|
ULONG TcpOptionsSupported;
|
|
ULONG TcpChecksum;
|
|
ULONG UdpChecksum;
|
|
ULONG IpChecksum;
|
|
} IPv4Receive;
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG IpExtensionHeadersSupported;
|
|
ULONG TcpOptionsSupported;
|
|
ULONG TcpChecksum;
|
|
ULONG UdpChecksum;
|
|
} IPv6Transmit;
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG IpExtensionHeadersSupported;
|
|
ULONG TcpOptionsSupported;
|
|
ULONG TcpChecksum;
|
|
ULONG UdpChecksum;
|
|
} IPv6Receive;
|
|
} NDIS_WMI_TCP_IP_CHECKSUM_OFFLOAD, *PNDIS_WMI_TCP_IP_CHECKSUM_OFFLOAD;
|
|
|
|
typedef struct _NDIS_WMI_IPSEC_OFFLOAD_V1 {
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG AhEspCombined;
|
|
ULONG TransportTunnelCombined;
|
|
ULONG IPv4Options;
|
|
ULONG Flags;
|
|
} Supported;
|
|
struct {
|
|
ULONG Md5;
|
|
ULONG Sha_1;
|
|
ULONG Transport;
|
|
ULONG Tunnel;
|
|
ULONG Send;
|
|
ULONG Receive;
|
|
} IPv4AH;
|
|
struct {
|
|
ULONG Des;
|
|
ULONG Reserved;
|
|
ULONG TripleDes;
|
|
ULONG NullEsp;
|
|
ULONG Transport;
|
|
ULONG Tunnel;
|
|
ULONG Send;
|
|
ULONG Receive;
|
|
} IPv4ESP;
|
|
} NDIS_WMI_IPSEC_OFFLOAD_V1, *PNDIS_WMI_IPSEC_OFFLOAD_V1;
|
|
|
|
typedef struct _NDIS_WMI_TCP_LARGE_SEND_OFFLOAD_V2 {
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG MaxOffLoadSize;
|
|
ULONG MinSegmentCount;
|
|
} IPv4;
|
|
struct {
|
|
ULONG Encapsulation;
|
|
ULONG MaxOffLoadSize;
|
|
ULONG MinSegmentCount;
|
|
ULONG IpExtensionHeadersSupported;
|
|
ULONG TcpOptionsSupported;
|
|
} IPv6;
|
|
} NDIS_WMI_TCP_LARGE_SEND_OFFLOAD_V2, *PNDIS_WMI_TCP_LARGE_SEND_OFFLOAD_V2;
|
|
|
|
typedef struct _NDIS_WMI_OFFLOAD {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_WMI_TCP_IP_CHECKSUM_OFFLOAD Checksum;
|
|
NDIS_WMI_TCP_LARGE_SEND_OFFLOAD_V1 LsoV1;
|
|
NDIS_WMI_IPSEC_OFFLOAD_V1 IPsecV1;
|
|
NDIS_WMI_TCP_LARGE_SEND_OFFLOAD_V2 LsoV2;
|
|
ULONG Flags;
|
|
#if NDIS_SUPPORT_NDIS61
|
|
NDIS_IPSEC_OFFLOAD_V2 IPsecV2;
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
NDIS_TCP_RECV_SEG_COALESCE_OFFLOAD Rsc;
|
|
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD EncapsulatedPacketTaskOffloadGre;
|
|
#endif
|
|
} NDIS_WMI_OFFLOAD, *PNDIS_WMI_OFFLOAD;
|
|
|
|
typedef struct _NDIS_TCP_CONNECTION_OFFLOAD {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Encapsulation;
|
|
ULONG SupportIPv4:2;
|
|
ULONG SupportIPv6:2;
|
|
ULONG SupportIPv6ExtensionHeaders:2;
|
|
ULONG SupportSack:2;
|
|
#if NDIS_SUPPORT_NDIS61
|
|
ULONG CongestionAlgorithm:4;
|
|
#endif
|
|
ULONG TcpConnectionOffloadCapacity;
|
|
ULONG Flags;
|
|
} NDIS_TCP_CONNECTION_OFFLOAD, *PNDIS_TCP_CONNECTION_OFFLOAD;
|
|
|
|
typedef struct _NDIS_WMI_TCP_CONNECTION_OFFLOAD {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Encapsulation;
|
|
ULONG SupportIPv4;
|
|
ULONG SupportIPv6;
|
|
ULONG SupportIPv6ExtensionHeaders;
|
|
ULONG SupportSack;
|
|
ULONG TcpConnectionOffloadCapacity;
|
|
ULONG Flags;
|
|
} NDIS_WMI_TCP_CONNECTION_OFFLOAD, *PNDIS_WMI_TCP_CONNECTION_OFFLOAD;
|
|
|
|
typedef ULONG NDIS_PORT_NUMBER, *PNDIS_PORT_NUMBER;
|
|
|
|
typedef enum _NDIS_PORT_TYPE {
|
|
NdisPortTypeUndefined,
|
|
NdisPortTypeBridge,
|
|
NdisPortTypeRasConnection,
|
|
NdisPortType8021xSupplicant,
|
|
#if NDIS_SUPPORT_NDIS630
|
|
NdisPortTypeNdisImPlatform,
|
|
#endif
|
|
NdisPortTypeMax,
|
|
} NDIS_PORT_TYPE, *PNDIS_PORT_TYPE;
|
|
|
|
typedef enum _NDIS_PORT_AUTHORIZATION_STATE {
|
|
NdisPortAuthorizationUnknown,
|
|
NdisPortAuthorized,
|
|
NdisPortUnauthorized,
|
|
NdisPortReauthorizing
|
|
} NDIS_PORT_AUTHORIZATION_STATE, *PNDIS_PORT_AUTHORIZATION_STATE;
|
|
|
|
typedef enum _NDIS_PORT_CONTROL_STATE {
|
|
NdisPortControlStateUnknown,
|
|
NdisPortControlStateControlled,
|
|
NdisPortControlStateUncontrolled
|
|
} NDIS_PORT_CONTROL_STATE, *PNDIS_PORT_CONTROL_STATE;
|
|
|
|
typedef NDIS_PORT_CONTROL_STATE NDIS_PORT_CONTROLL_STATE;
|
|
typedef PNDIS_PORT_CONTROL_STATE PNDIS_PORT_CONTROLL_STATE;
|
|
|
|
typedef struct _NDIS_PORT_AUTHENTICATION_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_PORT_CONTROL_STATE SendControlState;
|
|
NDIS_PORT_CONTROL_STATE RcvControlState;
|
|
NDIS_PORT_AUTHORIZATION_STATE SendAuthorizationState;
|
|
NDIS_PORT_AUTHORIZATION_STATE RcvAuthorizationState;
|
|
} NDIS_PORT_AUTHENTICATION_PARAMETERS, *PNDIS_PORT_AUTHENTICATION_PARAMETERS;
|
|
|
|
typedef enum _NDIS_NETWORK_CHANGE_TYPE {
|
|
NdisPossibleNetworkChange = 1,
|
|
NdisDefinitelyNetworkChange,
|
|
NdisNetworkChangeFromMediaConnect,
|
|
NdisNetworkChangeMax
|
|
} NDIS_NETWORK_CHANGE_TYPE, *PNDIS_NETWORK_CHANGE_TYPE;
|
|
|
|
typedef struct _NDIS_WMI_METHOD_HEADER {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_PORT_NUMBER PortNumber;
|
|
NET_LUID NetLuid;
|
|
ULONG64 RequestId;
|
|
ULONG Timeout;
|
|
UCHAR Padding[4];
|
|
} NDIS_WMI_METHOD_HEADER, *PNDIS_WMI_METHOD_HEADER;
|
|
|
|
typedef struct _NDIS_WMI_SET_HEADER {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_PORT_NUMBER PortNumber;
|
|
NET_LUID NetLuid;
|
|
ULONG64 RequestId;
|
|
ULONG Timeout;
|
|
UCHAR Padding[4];
|
|
} NDIS_WMI_SET_HEADER, *PNDIS_WMI_SET_HEADER;
|
|
|
|
typedef struct _NDIS_WMI_EVENT_HEADER {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NET_IFINDEX IfIndex;
|
|
NET_LUID NetLuid;
|
|
ULONG64 RequestId;
|
|
NDIS_PORT_NUMBER PortNumber;
|
|
ULONG DeviceNameLength;
|
|
ULONG DeviceNameOffset;
|
|
UCHAR Padding[4];
|
|
} NDIS_WMI_EVENT_HEADER, *PNDIS_WMI_EVENT_HEADER;
|
|
|
|
typedef struct _NDIS_WMI_ENUM_ADAPTER {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NET_IFINDEX IfIndex;
|
|
NET_LUID NetLuid;
|
|
USHORT DeviceNameLength;
|
|
CHAR DeviceName[1];
|
|
} NDIS_WMI_ENUM_ADAPTER, *PNDIS_WMI_ENUM_ADAPTER;
|
|
|
|
#if NDIS_SUPPORT_NDIS61
|
|
#define NDIS_HD_SPLIT_COMBINE_ALL_HEADERS 0x00000001
|
|
|
|
#define NDIS_HD_SPLIT_CAPS_SUPPORTS_HEADER_DATA_SPLIT 0x00000001
|
|
#define NDIS_HD_SPLIT_CAPS_SUPPORTS_IPV4_OPTIONS 0x00000002
|
|
#define NDIS_HD_SPLIT_CAPS_SUPPORTS_IPV6_EXTENSION_HEADERS 0x00000004
|
|
#define NDIS_HD_SPLIT_CAPS_SUPPORTS_TCP_OPTIONS 0x00000008
|
|
|
|
#define NDIS_HD_SPLIT_ENABLE_HEADER_DATA_SPLIT 0x00000001
|
|
|
|
#define NDIS_HD_SPLIT_PARAMETERS_REVISION_1 1
|
|
#define NDIS_HD_SPLIT_CURRENT_CONFIG_REVISION_1 1
|
|
|
|
#define NDIS_SIZEOF_HD_SPLIT_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_HD_SPLIT_PARAMETERS, HDSplitCombineFlags)
|
|
#define NDIS_SIZEOF_HD_SPLIT_CURRENT_CONFIG_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_HD_SPLIT_CURRENT_CONFIG, MaxHeaderSize)
|
|
|
|
typedef struct _NDIS_HD_SPLIT_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG HDSplitCombineFlags;
|
|
} NDIS_HD_SPLIT_PARAMETERS, *PNDIS_HD_SPLIT_PARAMETERS;
|
|
|
|
typedef struct _NDIS_HD_SPLIT_CURRENT_CONFIG {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG HardwareCapabilities;
|
|
ULONG CurrentCapabilities;
|
|
ULONG HDSplitFlags;
|
|
ULONG HDSplitCombineFlags;
|
|
ULONG BackfillSize;
|
|
ULONG MaxHeaderSize;
|
|
} NDIS_HD_SPLIT_CURRENT_CONFIG, *PNDIS_HD_SPLIT_CURRENT_CONFIG;
|
|
#endif
|
|
|
|
#define NDIS_WMI_OUTPUT_INFO_REVISION_1 1
|
|
|
|
typedef struct NDIS_WMI_OUTPUT_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
UCHAR SupportedRevision;
|
|
ULONG DataOffset;
|
|
} NDIS_WMI_OUTPUT_INFO, *PNDIS_WMI_OUTPUT_INFO;
|
|
|
|
#if NDIS_SUPPORT_NDIS620
|
|
#define NDIS_PM_WOL_BITMAP_PATTERN_SUPPORTED 0x00000001
|
|
#define NDIS_PM_WOL_MAGIC_PACKET_SUPPORTED 0x00000002
|
|
#define NDIS_PM_WOL_IPV4_TCP_SYN_SUPPORTED 0x00000004
|
|
#define NDIS_PM_WOL_IPV6_TCP_SYN_SUPPORTED 0x00000008
|
|
#define NDIS_PM_WOL_IPV4_DEST_ADDR_WILDCARD_SUPPORTED 0x00000200
|
|
#define NDIS_PM_WOL_IPV6_DEST_ADDR_WILDCARD_SUPPORTED 0x00000800
|
|
#define NDIS_PM_WOL_EAPOL_REQUEST_ID_MESSAGE_SUPPORTED 0x00010000
|
|
|
|
#define NDIS_PM_PROTOCOL_OFFLOAD_ARP_SUPPORTED 0x00000001
|
|
#define NDIS_PM_PROTOCOL_OFFLOAD_NS_SUPPORTED 0x00000002
|
|
#define NDIS_PM_PROTOCOL_OFFLOAD_80211_RSN_REKEY_SUPPORTED 0x00000080
|
|
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_PM_WAKE_ON_MEDIA_CONNECT_SUPPORTED 0x00000001
|
|
#define NDIS_PM_WAKE_ON_MEDIA_DISCONNECT_SUPPORTED 0x00000002
|
|
|
|
#define NDIS_WLAN_WAKE_ON_NLO_DISCOVERY_SUPPORTED 0x00000001
|
|
#define NDIS_WLAN_WAKE_ON_AP_ASSOCIATION_LOST_SUPPORTED 0x00000002
|
|
#define NDIS_WLAN_WAKE_ON_GTK_HANDSHAKE_ERROR_SUPPORTED 0x00000004
|
|
#define NDIS_WLAN_WAKE_ON_4WAY_HANDSHAKE_REQUEST_SUPPORTED 0x00000008
|
|
|
|
#define NDIS_WWAN_WAKE_ON_REGISTER_STATE_SUPPORTED 0x00000001
|
|
#define NDIS_WWAN_WAKE_ON_SMS_RECEIVE_SUPPORTED 0x00000002
|
|
#define NDIS_WWAN_WAKE_ON_USSD_RECEIVE_SUPPORTED 0x00000004
|
|
|
|
#define NDIS_PM_WAKE_PACKET_INDICATION_SUPPORTED 0x00000001
|
|
#define NDIS_PM_SELECTIVE_SUSPEND_SUPPORTED 0x00000002
|
|
#endif
|
|
|
|
#define NDIS_PM_WOL_BITMAP_PATTERN_ENABLED 0x00000001
|
|
#define NDIS_PM_WOL_MAGIC_PACKET_ENABLED 0x00000002
|
|
#define NDIS_PM_WOL_IPV4_TCP_SYN_ENABLED 0x00000004
|
|
#define NDIS_PM_WOL_IPV6_TCP_SYN_ENABLED 0x00000008
|
|
#define NDIS_PM_WOL_IPV4_DEST_ADDR_WILDCARD_ENABLED 0x00000200
|
|
#define NDIS_PM_WOL_IPV6_DEST_ADDR_WILDCARD_ENABLED 0x00000800
|
|
#define NDIS_PM_WOL_EAPOL_REQUEST_ID_MESSAGE_ENABLED 0x00010000
|
|
|
|
#define NDIS_PM_PROTOCOL_OFFLOAD_ARP_ENABLED 0x00000001
|
|
#define NDIS_PM_PROTOCOL_OFFLOAD_NS_ENABLED 0x00000002
|
|
#define NDIS_PM_PROTOCOL_OFFLOAD_80211_RSN_REKEY_ENABLED 0x00000080
|
|
|
|
#define NDIS_PM_WAKE_ON_LINK_CHANGE_ENABLED 0x1
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_PM_WAKE_ON_MEDIA_DISCONNECT_ENABLED 0x2
|
|
#define NDIS_PM_SELECTIVE_SUSPEND_ENABLED 0x10
|
|
|
|
#define NDIS_WLAN_WAKE_ON_NLO_DISCOVERY_ENABLED 0x1
|
|
#define NDIS_WLAN_WAKE_ON_AP_ASSOCIATION_LOST_ENABLED 0x2
|
|
#define NDIS_WLAN_WAKE_ON_GTK_HANDSHAKE_ERROR_ENABLED 0x4
|
|
#define NDIS_WLAN_WAKE_ON_4WAY_HANDSHAKE_REQUEST_ENABLED 0x8
|
|
|
|
#define NDIS_WWAN_WAKE_ON_REGISTER_STATE_ENABLED 0x1
|
|
#define NDIS_WWAN_WAKE_ON_SMS_RECEIVE_ENABLED 0x2
|
|
#define NDIS_WWAN_WAKE_ON_USSD_RECEIVE_ENABLED 0x4
|
|
#endif
|
|
|
|
#define NDIS_PM_WOL_PRIORITY_LOWEST 0xffffffff
|
|
#define NDIS_PM_WOL_PRIORITY_NORMAL 0x10000000
|
|
#define NDIS_PM_WOL_PRIORITY_HIGHEST 0x00000001
|
|
|
|
#define NDIS_PM_PROTOCOL_OFFLOAD_PRIORITY_LOWEST 0xffffffff
|
|
#define NDIS_PM_PROTOCOL_OFFLOAD_PRIORITY_NORMAL 0x10000000
|
|
#define NDIS_PM_PROTOCOL_OFFLOAD_PRIORITY_HIGHEST 0x00000001
|
|
|
|
#define NDIS_PM_MAX_STRING_SIZE 64
|
|
|
|
#define EAPOL_REQUEST_ID_WOL_FLAG_MUST_ENCRYPT 0x00000001
|
|
|
|
#define NDIS_PM_MAX_PATTERN_ID 0x0000ffff
|
|
|
|
#define NDIS_PM_PRIVATE_PATTERN_ID 0x00000001
|
|
|
|
#define DOT11_RSN_KEK_LENGTH 16
|
|
#define DOT11_RSN_KCK_LENGTH 16
|
|
|
|
|
|
#define NDIS_RECEIVE_FILTER_MAC_HEADER_SUPPORTED 0x00000001
|
|
#define NDIS_RECEIVE_FILTER_IPV4_HEADER_SUPPORTED 0x00000002
|
|
#define NDIS_RECEIVE_FILTER_IPV6_HEADER_SUPPORTED 0x00000004
|
|
#define NDIS_RECEIVE_FILTER_ARP_HEADER_SUPPORTED 0x00000008
|
|
#define NDIS_RECEIVE_FILTER_UDP_HEADER_SUPPORTED 0x00000010
|
|
|
|
#define NDIS_RECEIVE_FILTER_MAC_HEADER_DEST_ADDR_SUPPORTED 0x00000001
|
|
#define NDIS_RECEIVE_FILTER_MAC_HEADER_SOURCE_ADDR_SUPPORTED 0x00000002
|
|
#define NDIS_RECEIVE_FILTER_MAC_HEADER_PROTOCOL_SUPPORTED 0x00000004
|
|
#define NDIS_RECEIVE_FILTER_MAC_HEADER_VLAN_ID_SUPPORTED 0x00000008
|
|
#define NDIS_RECEIVE_FILTER_MAC_HEADER_PRIORITY_SUPPORTED 0x00000010
|
|
#define NDIS_RECEIVE_FILTER_MAC_HEADER_PACKET_TYPE_SUPPORTED 0x00000020
|
|
|
|
#define NDIS_RECEIVE_FILTER_ARP_HEADER_OPERATION_SUPPORTED 0x1
|
|
#define NDIS_RECEIVE_FILTER_ARP_HEADER_SPA_SUPPORTED 0x2
|
|
#define NDIS_RECEIVE_FILTER_ARP_HEADER_TPA_SUPPORTED 0x4
|
|
|
|
#define NDIS_RECEIVE_FILTER_IPV4_HEADER_PROTOCOL_SUPPORTED 0x1
|
|
#define NDIS_RECEIVE_FILTER_IPV6_HEADER_PROTOCOL_SUPPORTED 0x1
|
|
#define NDIS_RECEIVE_FILTER_UDP_HEADER_DEST_PORT_SUPPORTED 0x1
|
|
|
|
#define NDIS_RECEIVE_FILTER_TEST_HEADER_FIELD_EQUAL_SUPPORTED 0x00000001
|
|
#define NDIS_RECEIVE_FILTER_TEST_HEADER_FIELD_MASK_EQUAL_SUPPORTED 0x00000002
|
|
#define NDIS_RECEIVE_FILTER_TEST_HEADER_FIELD_NOT_EQUAL_SUPPORTED 0x00000004
|
|
|
|
#define NDIS_RECEIVE_FILTER_MSI_X_SUPPORTED 0x00000001
|
|
#define NDIS_RECEIVE_FILTER_VM_QUEUE_SUPPORTED 0x00000002
|
|
#define NDIS_RECEIVE_FILTER_LOOKAHEAD_SPLIT_SUPPORTED 0x00000004
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_RECEIVE_FILTER_DYNAMIC_PROCESSOR_AFFINITY_CHANGE_SUPPORTED 0x00000008
|
|
#define NDIS_RECEIVE_FILTER_INTERRUPT_VECTOR_COALESCING_SUPPORTED 0x00000010
|
|
#define NDIS_RECEIVE_FILTER_ANY_VLAN_SUPPORTED 0x00000020
|
|
#define NDIS_RECEIVE_FILTER_IMPLAT_MIN_OF_QUEUES_MODE 0x00000040
|
|
#define NDIS_RECEIVE_FILTER_IMPLAT_SUM_OF_QUEUES_MODE 0x00000080
|
|
#define NDIS_RECEIVE_FILTER_PACKET_COALESCING_SUPPORTED_ON_DEFAULT_QUEUE 0x00000100
|
|
#endif
|
|
|
|
#define NDIS_RECEIVE_FILTER_VMQ_FILTERS_ENABLED 0x00000001
|
|
#define NDIS_RECEIVE_FILTER_PACKET_COALESCING_FILTERS_ENABLED 0x00000002
|
|
|
|
#define NDIS_RECEIVE_FILTER_VM_QUEUES_ENABLED 0x00000001
|
|
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_NIC_SWITCH_CAPS_VLAN_SUPPORTED 0x00000001
|
|
#define NDIS_NIC_SWITCH_CAPS_PER_VPORT_INTERRUPT_MODERATION_SUPPORTED 0x00000002
|
|
#define NDIS_NIC_SWITCH_CAPS_ASYMMETRIC_QUEUE_PAIRS_FOR_NONDEFAULT_VPORT_SUPPORTED 0x00000004
|
|
#define NDIS_NIC_SWITCH_CAPS_VF_RSS_SUPPORTED 0x00000008
|
|
#define NDIS_NIC_SWITCH_CAPS_SINGLE_VPORT_POOL 0x00000010
|
|
#endif
|
|
|
|
|
|
#define NDIS_DEFAULT_RECEIVE_QUEUE_ID 0
|
|
#define NDIS_DEFAULT_RECEIVE_QUEUE_GROUP_ID 0
|
|
#define NDIS_DEFAULT_RECEIVE_FILTER_ID 0
|
|
|
|
#define NDIS_RECEIVE_FILTER_FIELD_MAC_HEADER_VLAN_UNTAGGED_OR_ZERO 0x00000001
|
|
#define NDIS_RECEIVE_FILTER_PACKET_ENCAPSULATION_GRE 0x00000002
|
|
|
|
#define NDIS_RECEIVE_QUEUE_PARAMETERS_PER_QUEUE_RECEIVE_INDICATION 0x00000001
|
|
#define NDIS_RECEIVE_QUEUE_PARAMETERS_LOOKAHEAD_SPLIT_REQUIRED 0x00000002
|
|
#define NDIS_RECEIVE_QUEUE_PARAMETERS_FLAGS_CHANGED 0x00010000
|
|
#define NDIS_RECEIVE_QUEUE_PARAMETERS_PROCESSOR_AFFINITY_CHANGED 0x00020000
|
|
#define NDIS_RECEIVE_QUEUE_PARAMETERS_SUGGESTED_RECV_BUFFER_NUMBERS_CHANGED 0x00040000
|
|
#define NDIS_RECEIVE_QUEUE_PARAMETERS_NAME_CHANGED 0x00080000
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_RECEIVE_QUEUE_PARAMETERS_INTERRUPT_COALESCING_DOMAIN_ID_CHANGED 0x00100000
|
|
#endif
|
|
|
|
#define NDIS_RECEIVE_QUEUE_PARAMETERS_CHANGE_MASK 0xffff0000
|
|
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_RECEIVE_FILTER_INFO_ARRAY_VPORT_ID_SPECIFIED 0x00000001
|
|
#endif
|
|
|
|
#define NDIS_PM_CAPABILITIES_REVISION_1 1
|
|
#define NDIS_PM_PARAMETERS_REVISION_1 1
|
|
#define NDIS_PM_WOL_PATTERN_REVISION_1 1
|
|
#define NDIS_PM_PROTOCOL_OFFLOAD_REVISION_1 1
|
|
#define NDIS_WMI_PM_ADMIN_CONFIG_REVISION_1 1
|
|
#define NDIS_WMI_PM_ACTIVE_CAPABILITIES_REVISION_1 1
|
|
#define NDIS_RECEIVE_FILTER_CAPABILITIES_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_CAPABILITIES_REVISION_1 1
|
|
#define NDIS_RECEIVE_FILTER_GLOBAL_PARAMETERS_REVISION_1 1
|
|
#define NDIS_RECEIVE_FILTER_FIELD_PARAMETERS_REVISION_1 1
|
|
#define NDIS_RECEIVE_FILTER_PARAMETERS_REVISION_1 1
|
|
#define NDIS_RECEIVE_FILTER_CLEAR_PARAMETERS_REVISION_1 1
|
|
#define NDIS_RECEIVE_QUEUE_PARAMETERS_REVISION_1 1
|
|
#define NDIS_RECEIVE_QUEUE_FREE_PARAMETERS_REVISION_1 1
|
|
#define NDIS_RECEIVE_QUEUE_INFO_REVISION_1 1
|
|
#define NDIS_RECEIVE_QUEUE_INFO_ARRAY_REVISION_1 1
|
|
#define NDIS_RECEIVE_FILTER_INFO_REVISION_1 1
|
|
#define NDIS_RECEIVE_FILTER_INFO_ARRAY_REVISION_1 1
|
|
#define NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_PARAMETERS_REVISION_1 1
|
|
#define NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_ARRAY_REVISION_1 1
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_PM_CAPABILITIES_REVISION_2 2
|
|
#define NDIS_PM_PARAMETERS_REVISION_2 2
|
|
#define NDIS_PM_WOL_PATTERN_REVISION_2 2
|
|
#define NDIS_PM_WAKE_REASON_REVISION_1 1
|
|
#define NDIS_PM_WAKE_PACKET_REVISION_1 1
|
|
#define NDIS_RECEIVE_FILTER_CAPABILITIES_REVISION_2 2
|
|
#define NDIS_NIC_SWITCH_CAPABILITIES_REVISION_2 2
|
|
#define NDIS_RECEIVE_FILTER_FIELD_PARAMETERS_REVISION_2 2
|
|
#define NDIS_RECEIVE_FILTER_PARAMETERS_REVISION_2 2
|
|
#define NDIS_RECEIVE_QUEUE_PARAMETERS_REVISION_2 2
|
|
#define NDIS_RECEIVE_FILTER_INFO_ARRAY_REVISION_2 2
|
|
#define NDIS_RECEIVE_QUEUE_INFO_REVISION_2 2
|
|
#endif
|
|
|
|
#define NDIS_SIZEOF_WMI_OUTPUT_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_OUTPUT_INFO, DataOffset)
|
|
#define NDIS_SIZEOF_NDIS_PM_CAPABILITIES_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_PM_CAPABILITIES, MinLinkChangeWakeUp)
|
|
#define NDIS_SIZEOF_NDIS_PM_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_PM_PARAMETERS, WakeUpFlags)
|
|
#define NDIS_SIZEOF_NDIS_PM_WOL_PATTERN_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_PM_WOL_PATTERN, WoLPattern)
|
|
#define NDIS_SIZEOF_NDIS_PM_PROTOCOL_OFFLOAD_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_PM_PROTOCOL_OFFLOAD, ProtocolOffloadParameters)
|
|
#define NDIS_SIZEOF_WMI_PM_ADMIN_CONFIG_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_PM_ADMIN_CONFIG, PMWiFiRekeyOffload)
|
|
#define NDIS_SIZEOF_WMI_PM_ACTIVE_CAPABILITIES_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_PM_ACTIVE_CAPABILITIES, PMWiFiRekeyOffload)
|
|
#define NDIS_SIZEOF_RECEIVE_FILTER_CAPABILITIES_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_FILTER_CAPABILITIES, MaxLookaheadSplitSize)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_CAPABILITIES_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_CAPABILITIES, NdisReserved3)
|
|
#define NDIS_SIZEOF_RECEIVE_FILTER_GLOBAL_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_FILTER_GLOBAL_PARAMETERS, EnabledQueueTypes)
|
|
#define NDIS_SIZEOF_RECEIVE_FILTER_FIELD_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_FILTER_FIELD_PARAMETERS, ResultValue)
|
|
#define NDIS_SIZEOF_RECEIVE_FILTER_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_FILTER_PARAMETERS, RequestedFilterIdBitCount)
|
|
#define NDIS_SIZEOF_RECEIVE_FILTER_CLEAR_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_FILTER_CLEAR_PARAMETERS, FilterId)
|
|
#define NDIS_SIZEOF_RECEIVE_QUEUE_FREE_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_QUEUE_FREE_PARAMETERS, QueueId)
|
|
#define NDIS_SIZEOF_RECEIVE_QUEUE_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_QUEUE_PARAMETERS, QueueName)
|
|
#define NDIS_SIZEOF_RECEIVE_QUEUE_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_QUEUE_INFO, QueueName)
|
|
#define NDIS_SIZEOF_RECEIVE_QUEUE_INFO_ARRAY_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_QUEUE_INFO_ARRAY, ElementSize)
|
|
#define NDIS_SIZEOF_RECEIVE_FILTER_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_FILTER_INFO, FilterId)
|
|
#define NDIS_SIZEOF_RECEIVE_QUEUE_ALLOCATION_COMPLETE_ARRAY_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_ARRAY, ElementSize)
|
|
#define NDIS_SIZEOF_RECEIVE_QUEUE_ALLOCATION_COMPLETE_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_PARAMETERS, CompletionStatus)
|
|
#define NDIS_SIZEOF_RECEIVE_FILTER_INFO_ARRAY_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_FILTER_INFO_ARRAY, ElementSize)
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_SIZEOF_NDIS_PM_CAPABILITIES_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_PM_CAPABILITIES, MediaSpecificWakeUpEvents)
|
|
#define NDIS_SIZEOF_NDIS_PM_PARAMETERS_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_PM_PARAMETERS, MediaSpecificWakeUpEvents)
|
|
#define NDIS_SIZEOF_NDIS_PM_WOL_PATTERN_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_PM_WOL_PATTERN, WoLPattern)
|
|
#define NDIS_SIZEOF_PM_WAKE_REASON_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_PM_WAKE_REASON, InfoBufferSize)
|
|
#define NDIS_SIZEOF_PM_WAKE_PACKET_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_PM_WAKE_PACKET, SavedPacketOffset)
|
|
#define NDIS_SIZEOF_RECEIVE_FILTER_CAPABILITIES_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_FILTER_CAPABILITIES, NdisReserved)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_CAPABILITIES_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_CAPABILITIES, NdisReserved17)
|
|
#define NDIS_SIZEOF_RECEIVE_FILTER_FIELD_PARAMETERS_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_FILTER_FIELD_PARAMETERS, ResultValue)
|
|
#define NDIS_SIZEOF_RECEIVE_FILTER_PARAMETERS_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_FILTER_PARAMETERS, VPortId)
|
|
#define NDIS_SIZEOF_RECEIVE_FILTER_INFO_ARRAY_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_FILTER_INFO_ARRAY, VPortId)
|
|
#define NDIS_SIZEOF_RECEIVE_QUEUE_INFO_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_QUEUE_INFO, InterruptCoalescingDomainId)
|
|
#define NDIS_SIZEOF_RECEIVE_QUEUE_PARAMETERS_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_QUEUE_PARAMETERS, InterruptCoalescingDomainId)
|
|
#endif
|
|
|
|
typedef enum _NDIS_PM_WOL_PACKET {
|
|
NdisPMWoLPacketUnspecified,
|
|
NdisPMWoLPacketBitmapPattern,
|
|
NdisPMWoLPacketMagicPacket,
|
|
NdisPMWoLPacketIPv4TcpSyn,
|
|
NdisPMWoLPacketIPv6TcpSyn,
|
|
NdisPMWoLPacketEapolRequestIdMessage,
|
|
NdisPMWoLPacketMaximum
|
|
} NDIS_PM_WOL_PACKET, *PNDIS_PM_WOL_PACKET;
|
|
|
|
typedef enum _NDIS_PM_PROTOCOL_OFFLOAD_TYPE {
|
|
NdisPMProtocolOffloadIdUnspecified,
|
|
NdisPMProtocolOffloadIdIPv4ARP,
|
|
NdisPMProtocolOffloadIdIPv6NS,
|
|
NdisPMProtocolOffload80211RSNRekey,
|
|
NdisPMProtocolOffloadIdMaximum
|
|
} NDIS_PM_PROTOCOL_OFFLOAD_TYPE, *PNDIS_PM_PROTOCOL_OFFLOAD_TYPE;
|
|
|
|
typedef struct _NDIS_PM_COUNTED_STRING {
|
|
USHORT Length;
|
|
WCHAR String[NDIS_PM_MAX_STRING_SIZE + 1];
|
|
} NDIS_PM_COUNTED_STRING, *PNDIS_PM_COUNTED_STRING;
|
|
|
|
typedef struct _NDIS_PM_CAPABILITIES {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG SupportedWoLPacketPatterns;
|
|
ULONG NumTotalWoLPatterns;
|
|
ULONG MaxWoLPatternSize;
|
|
ULONG MaxWoLPatternOffset;
|
|
ULONG MaxWoLPacketSaveBuffer;
|
|
ULONG SupportedProtocolOffloads;
|
|
ULONG NumArpOffloadIPv4Addresses;
|
|
ULONG NumNSOffloadIPv6Addresses;
|
|
NDIS_DEVICE_POWER_STATE MinMagicPacketWakeUp;
|
|
NDIS_DEVICE_POWER_STATE MinPatternWakeUp;
|
|
NDIS_DEVICE_POWER_STATE MinLinkChangeWakeUp;
|
|
#if NDIS_SUPPORT_NDIS630
|
|
ULONG SupportedWakeUpEvents;
|
|
ULONG MediaSpecificWakeUpEvents;
|
|
#endif
|
|
} NDIS_PM_CAPABILITIES, *PNDIS_PM_CAPABILITIES;
|
|
|
|
typedef struct _NDIS_PM_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG EnabledWoLPacketPatterns;
|
|
ULONG EnabledProtocolOffloads;
|
|
ULONG WakeUpFlags;
|
|
#if NDIS_SUPPORT_NDIS630
|
|
ULONG MediaSpecificWakeUpEvents;
|
|
#endif
|
|
} NDIS_PM_PARAMETERS, *PNDIS_PM_PARAMETERS;
|
|
|
|
typedef struct _NDIS_PM_WOL_PATTERN {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG Priority;
|
|
NDIS_PM_WOL_PACKET WoLPacketType;
|
|
NDIS_PM_COUNTED_STRING FriendlyName;
|
|
ULONG PatternId;
|
|
ULONG NextWoLPatternOffset;
|
|
union _WOL_PATTERN {
|
|
struct _IPV4_TCP_SYN_WOL_PACKET_PARAMETERS {
|
|
ULONG Flags;
|
|
UCHAR IPv4SourceAddress[4];
|
|
UCHAR IPv4DestAddress[4];
|
|
USHORT TCPSourcePortNumber;
|
|
USHORT TCPDestPortNumber;
|
|
} IPv4TcpSynParameters;
|
|
struct _IPV6_TCP_SYN_WOL_PACKET_PARAMETERS {
|
|
ULONG Flags;
|
|
UCHAR IPv6SourceAddress[16];
|
|
UCHAR IPv6DestAddress[16];
|
|
USHORT TCPSourcePortNumber;
|
|
USHORT TCPDestPortNumber;
|
|
} IPv6TcpSynParameters;
|
|
struct _EAPOL_REQUEST_ID_MESSAGE_WOL_PACKET_PARAMETERS {
|
|
ULONG Flags;
|
|
} EapolRequestIdMessageParameters;
|
|
struct _WOL_BITMAP_PATTERN {
|
|
ULONG Flags;
|
|
ULONG MaskOffset;
|
|
ULONG MaskSize;
|
|
ULONG PatternOffset;
|
|
ULONG PatternSize;
|
|
} WoLBitMapPattern;
|
|
} WoLPattern;
|
|
} NDIS_PM_WOL_PATTERN, *PNDIS_PM_WOL_PATTERN;
|
|
|
|
typedef struct _NDIS_PM_PROTOCOL_OFFLOAD {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG Priority;
|
|
NDIS_PM_PROTOCOL_OFFLOAD_TYPE ProtocolOffloadType;
|
|
NDIS_PM_COUNTED_STRING FriendlyName;
|
|
ULONG ProtocolOffloadId;
|
|
ULONG NextProtocolOffloadOffset;
|
|
union _PROTOCOL_OFFLOAD_PARAMETERS {
|
|
struct _IPV4_ARP_PARAMETERS {
|
|
ULONG Flags;
|
|
UCHAR RemoteIPv4Address[4];
|
|
UCHAR HostIPv4Address[4];
|
|
UCHAR MacAddress[6];
|
|
} IPv4ARPParameters;
|
|
struct _IPV6_NS_PARAMETERS {
|
|
ULONG Flags;
|
|
UCHAR RemoteIPv6Address[16];
|
|
UCHAR SolicitedNodeIPv6Address[16];
|
|
UCHAR MacAddress[6];
|
|
UCHAR TargetIPv6Addresses[2][16];
|
|
} IPv6NSParameters;
|
|
struct _DOT11_RSN_REKEY_PARAMETERS {
|
|
ULONG Flags;
|
|
UCHAR KCK[DOT11_RSN_KCK_LENGTH];
|
|
UCHAR KEK[DOT11_RSN_KEK_LENGTH];
|
|
ULONGLONG KeyReplayCounter;
|
|
} Dot11RSNRekeyParameters;
|
|
} ProtocolOffloadParameters;
|
|
} NDIS_PM_PROTOCOL_OFFLOAD, *PNDIS_PM_PROTOCOL_OFFLOAD;
|
|
|
|
#if NDIS_SUPPORT_NDIS630
|
|
typedef enum _NDIS_PM_WAKE_REASON_TYPE {
|
|
NdisWakeReasonUnspecified = 0x0000,
|
|
NdisWakeReasonPacket = 0x0001,
|
|
NdisWakeReasonMediaDisconnect = 0x0002,
|
|
NdisWakeReasonMediaConnect = 0x0003,
|
|
NdisWakeReasonWlanNLODiscovery = 0x1000,
|
|
NdisWakeReasonWlanAPAssociationLost = 0x1001,
|
|
NdisWakeReasonWlanGTKHandshakeError = 0x1002,
|
|
NdisWakeReasonWlan4WayHandshakeRequest = 0x1003,
|
|
NdisWakeReasonWwanRegisterState = 0x2000,
|
|
NdisWakeReasonWwanSMSReceive = 0x2001,
|
|
NdisWakeReasonWwanUSSDReceive = 0x2002,
|
|
} NDIS_PM_WAKE_REASON_TYPE, *PNDIS_PM_WAKE_REASON_TYPE;
|
|
|
|
typedef struct _NDIS_PM_WAKE_REASON {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_PM_WAKE_REASON_TYPE WakeReason;
|
|
ULONG InfoBufferOffset;
|
|
ULONG InfoBufferSize;
|
|
} NDIS_PM_WAKE_REASON, *PNDIS_PM_WAKE_REASON;
|
|
|
|
typedef struct _NDIS_PM_WAKE_PACKET {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG PatternId;
|
|
NDIS_PM_COUNTED_STRING PatternFriendlyName;
|
|
ULONG OriginalPacketSize;
|
|
ULONG SavedPacketSize;
|
|
ULONG SavedPacketOffset;
|
|
} NDIS_PM_WAKE_PACKET, *PNDIS_PM_WAKE_PACKET;
|
|
#endif
|
|
|
|
typedef enum _NDIS_PM_ADMIN_CONFIG_STATE {
|
|
NdisPMAdminConfigUnspecified = 0,
|
|
NdisPMAdminConfigDisabled = 1,
|
|
NdisPMAdminConfigEnabled = 2
|
|
} NDIS_PM_ADMIN_CONFIG_STATE, *PNDIS_PM_ADMIN_CONFIG_STATE;
|
|
|
|
typedef struct _NDIS_WMI_PM_ADMIN_CONFIG {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_PM_ADMIN_CONFIG_STATE WakeOnPattern;
|
|
NDIS_PM_ADMIN_CONFIG_STATE WakeOnMagicPacket;
|
|
NDIS_PM_ADMIN_CONFIG_STATE DeviceSleepOnDisconnect;
|
|
NDIS_PM_ADMIN_CONFIG_STATE PMARPOffload;
|
|
NDIS_PM_ADMIN_CONFIG_STATE PMNSOffload;
|
|
NDIS_PM_ADMIN_CONFIG_STATE PMWiFiRekeyOffload;
|
|
} NDIS_WMI_PM_ADMIN_CONFIG, *PNDIS_WMI_PM_ADMIN_CONFIG;
|
|
|
|
typedef enum _NDIS_PM_CAPABILITY_STATE {
|
|
NdisPMAdminConfigUnsupported = 0,
|
|
NdisPMAdminConfigInactive = 1,
|
|
NdisPMAdminConfigActive = 2
|
|
} NDIS_PM_CAPABILITY_STATE, *PNDIS_PM_CAPABILITY_STATE;
|
|
|
|
typedef struct _NDIS_WMI_PM_ACTIVE_CAPABILITIES {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_PM_CAPABILITY_STATE WakeOnPattern;
|
|
NDIS_PM_CAPABILITY_STATE WakeOnMagicPacket;
|
|
NDIS_PM_CAPABILITY_STATE DeviceSleepOnDisconnect;
|
|
NDIS_PM_CAPABILITY_STATE PMARPOffload;
|
|
NDIS_PM_CAPABILITY_STATE PMNSOffload;
|
|
NDIS_PM_CAPABILITY_STATE PMWiFiRekeyOffload;
|
|
} NDIS_WMI_PM_ACTIVE_CAPABILITIES, *PNDIS_WMI_PM_ACTIVE_CAPABILITIES;
|
|
|
|
typedef struct _NDIS_RECEIVE_FILTER_CAPABILITIES {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG EnabledFilterTypes;
|
|
ULONG EnabledQueueTypes;
|
|
ULONG NumQueues;
|
|
ULONG SupportedQueueProperties;
|
|
ULONG SupportedFilterTests;
|
|
ULONG SupportedHeaders;
|
|
ULONG SupportedMacHeaderFields;
|
|
ULONG MaxMacHeaderFilters;
|
|
ULONG MaxQueueGroups;
|
|
ULONG MaxQueuesPerQueueGroup;
|
|
ULONG MinLookaheadSplitSize;
|
|
ULONG MaxLookaheadSplitSize;
|
|
#if NDIS_SUPPORT_NDIS630
|
|
ULONG SupportedARPHeaderFields;
|
|
ULONG SupportedIPv4HeaderFields;
|
|
ULONG SupportedIPv6HeaderFields;
|
|
ULONG SupportedUdpHeaderFields;
|
|
ULONG MaxFieldTestsPerPacketCoalescingFilter;
|
|
ULONG MaxPacketCoalescingFilters;
|
|
ULONG NdisReserved;
|
|
#endif
|
|
} NDIS_RECEIVE_FILTER_CAPABILITIES, *PNDIS_RECEIVE_FILTER_CAPABILITIES;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_CAPABILITIES {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG NdisReserved1;
|
|
ULONG NumTotalMacAddresses;
|
|
ULONG NumMacAddressesPerPort;
|
|
ULONG NumVlansPerPort;
|
|
ULONG NdisReserved2;
|
|
ULONG NdisReserved3;
|
|
#if NDIS_SUPPORT_NDIS630
|
|
ULONG NicSwitchCapabilities;
|
|
ULONG MaxNumSwitches;
|
|
ULONG MaxNumVPorts;
|
|
ULONG NdisReserved4;
|
|
ULONG MaxNumVFs;
|
|
ULONG MaxNumQueuePairs;
|
|
ULONG NdisReserved5;
|
|
ULONG NdisReserved6;
|
|
ULONG NdisReserved7;
|
|
ULONG MaxNumQueuePairsPerNonDefaultVPort;
|
|
ULONG NdisReserved8;
|
|
ULONG NdisReserved9;
|
|
ULONG NdisReserved10;
|
|
ULONG NdisReserved11;
|
|
ULONG NdisReserved12;
|
|
ULONG MaxNumMacAddresses;
|
|
ULONG NdisReserved13;
|
|
ULONG NdisReserved14;
|
|
ULONG NdisReserved15;
|
|
ULONG NdisReserved16;
|
|
ULONG NdisReserved17;
|
|
#endif
|
|
} NDIS_NIC_SWITCH_CAPABILITIES, *PNDIS_NIC_SWITCH_CAPABILITIES;
|
|
|
|
typedef struct _NDIS_RECEIVE_FILTER_GLOBAL_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG EnabledFilterTypes;
|
|
ULONG EnabledQueueTypes;
|
|
} NDIS_RECEIVE_FILTER_GLOBAL_PARAMETERS, *PNDIS_RECEIVE_FILTER_GLOBAL_PARAMETERS;
|
|
|
|
typedef ULONG NDIS_RECEIVE_QUEUE_ID, *PNDIS_RECEIVE_QUEUE_ID;
|
|
typedef ULONG NDIS_RECEIVE_QUEUE_GROUP_ID, *PNDIS_RECEIVE_QUEUE_GROUP_ID;
|
|
typedef ULONG NDIS_RECEIVE_FILTER_ID, *PNDIS_RECEIVE_FILTER_ID;
|
|
|
|
typedef enum _NDIS_RECEIVE_FILTER_TYPE {
|
|
NdisReceiveFilterTypeUndefined,
|
|
NdisReceiveFilterTypeVMQueue,
|
|
NdisReceiveFilterTypePacketCoalescing,
|
|
NdisReceiveFilterTypeMaximum
|
|
} NDIS_RECEIVE_FILTER_TYPE, *PNDIS_RECEIVE_FILTER_TYPE;
|
|
|
|
typedef enum _NDIS_FRAME_HEADER {
|
|
NdisFrameHeaderUndefined,
|
|
NdisFrameHeaderMac,
|
|
NdisFrameHeaderArp,
|
|
NdisFrameHeaderIPv4,
|
|
NdisFrameHeaderIPv6,
|
|
NdisFrameHeaderUdp,
|
|
NdisFrameHeaderMaximum
|
|
} NDIS_FRAME_HEADER, *PNDIS_FRAME_HEADER;
|
|
|
|
typedef enum _NDIS_MAC_HEADER_FIELD {
|
|
NdisMacHeaderFieldUndefined,
|
|
NdisMacHeaderFieldDestinationAddress,
|
|
NdisMacHeaderFieldSourceAddress,
|
|
NdisMacHeaderFieldProtocol,
|
|
NdisMacHeaderFieldVlanId,
|
|
NdisMacHeaderFieldPriority,
|
|
NdisMacHeaderFieldPacketType,
|
|
NdisMacHeaderFieldMaximum
|
|
} NDIS_MAC_HEADER_FIELD, *PNDIS_MAC_HEADER_FIELD;
|
|
|
|
typedef enum _NDIS_MAC_PACKET_TYPE {
|
|
NdisMacPacketTypeUndefined = 0,
|
|
NdisMacPacketTypeUnicast = 1,
|
|
NdisMacPacketTypeMulticast = 2,
|
|
NdisMacPacketTypeBroadcast = 3,
|
|
NdisMacPacketTypeMaximum
|
|
} NDIS_MAC_PACKET_TYPE, *PNDIS_MAC_PACKET_TYPE;
|
|
|
|
typedef enum _NDIS_ARP_HEADER_FIELD {
|
|
NdisARPHeaderFieldUndefined,
|
|
NdisARPHeaderFieldOperation,
|
|
NdisARPHeaderFieldSPA,
|
|
NdisARPHeaderFieldTPA,
|
|
NdisARPHeaderFieldMaximum
|
|
} NDIS_ARP_HEADER_FIELD, *PNDIS_ARP_HEADER_FIELD;
|
|
|
|
typedef enum _NDIS_IPV4_HEADER_FIELD {
|
|
NdisIPv4HeaderFieldUndefined,
|
|
NdisIPv4HeaderFieldProtocol,
|
|
NdisIPv4HeaderFieldMaximum
|
|
} NDIS_IPV4_HEADER_FIELD, *PNDIS_IPV4_HEADER_FIELD;
|
|
|
|
typedef enum _NDIS_IPV6_HEADER_FIELD {
|
|
NdisIPv6HeaderFieldUndefined,
|
|
NdisIPv6HeaderFieldProtocol,
|
|
NdisIPv6HeaderFieldMaximum
|
|
} NDIS_IPV6_HEADER_FIELD, *PNDIS_IPV6_HEADER_FIELD;
|
|
|
|
typedef enum _NDIS_UDP_HEADER_FIELD {
|
|
NdisUdpHeaderFieldUndefined,
|
|
NdisUdpHeaderFieldDestinationPort,
|
|
NdisUdpHeaderFieldMaximum
|
|
} NDIS_UDP_HEADER_FIELD, *PNDIS_UDP_HEADER_FIELD;
|
|
|
|
typedef enum _NDIS_RECEIVE_FILTER_TEST {
|
|
NdisReceiveFilterTestUndefined,
|
|
NdisReceiveFilterTestEqual,
|
|
NdisReceiveFilterTestMaskEqual,
|
|
NdisReceiveFilterTestNotEqual,
|
|
NdisReceiveFilterTestMaximum
|
|
} NDIS_RECEIVE_FILTER_TEST, *PNDIS_RECEIVE_FILTER_TEST;
|
|
|
|
typedef struct _NDIS_RECEIVE_FILTER_FIELD_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_FRAME_HEADER FrameHeader;
|
|
NDIS_RECEIVE_FILTER_TEST ReceiveFilterTest;
|
|
union _HEADER_FIELD {
|
|
NDIS_MAC_HEADER_FIELD MacHeaderField;
|
|
NDIS_ARP_HEADER_FIELD ArpHeaderField;
|
|
NDIS_IPV4_HEADER_FIELD IPv4HeaderField;
|
|
NDIS_IPV6_HEADER_FIELD IPv6HeaderField;
|
|
NDIS_UDP_HEADER_FIELD UdpHeaderField;
|
|
} HeaderField;
|
|
union _FIELD_VALUE {
|
|
UCHAR FieldByteValue;
|
|
USHORT FieldShortValue;
|
|
ULONG FieldLongValue;
|
|
ULONG64 FieldLong64Value;
|
|
UCHAR FieldByteArrayValue[16];
|
|
} FieldValue;
|
|
union _RESULT_VALUE {
|
|
UCHAR ResultByteValue;
|
|
USHORT ResultShortValue;
|
|
ULONG ResultLongValue;
|
|
ULONG64 ResultLong64Value;
|
|
UCHAR ResultByteArrayValue[16];
|
|
} ResultValue;
|
|
} NDIS_RECEIVE_FILTER_FIELD_PARAMETERS, *PNDIS_RECEIVE_FILTER_FIELD_PARAMETERS;
|
|
|
|
#if NDIS_SUPPORT_NDIS630
|
|
typedef ULONG NDIS_NIC_SWITCH_VPORT_ID, *PNDIS_NIC_SWITCH_VPORT_ID;
|
|
#endif
|
|
|
|
typedef struct _NDIS_RECEIVE_FILTER_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_RECEIVE_FILTER_TYPE FilterType;
|
|
NDIS_RECEIVE_QUEUE_ID QueueId;
|
|
NDIS_RECEIVE_FILTER_ID FilterId;
|
|
ULONG FieldParametersArrayOffset;
|
|
ULONG FieldParametersArrayNumElements;
|
|
ULONG FieldParametersArrayElementSize;
|
|
ULONG RequestedFilterIdBitCount;
|
|
#if NDIS_SUPPORT_NDIS630
|
|
ULONG MaxCoalescingDelay;
|
|
NDIS_NIC_SWITCH_VPORT_ID VPortId;
|
|
#endif
|
|
} NDIS_RECEIVE_FILTER_PARAMETERS, *PNDIS_RECEIVE_FILTER_PARAMETERS;
|
|
|
|
typedef struct _NDIS_RECEIVE_FILTER_CLEAR_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_RECEIVE_QUEUE_ID QueueId;
|
|
NDIS_RECEIVE_FILTER_ID FilterId;
|
|
} NDIS_RECEIVE_FILTER_CLEAR_PARAMETERS, *PNDIS_RECEIVE_FILTER_CLEAR_PARAMETERS;
|
|
|
|
typedef enum _NDIS_RECEIVE_QUEUE_TYPE {
|
|
NdisReceiveQueueTypeUnspecified,
|
|
NdisReceiveQueueTypeVMQueue,
|
|
NdisReceiveQueueTypeMaximum
|
|
} NDIS_RECEIVE_QUEUE_TYPE, *PNDIS_RECEIVE_QUEUE_TYPE;
|
|
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_QUEUE_NAME, *PNDIS_QUEUE_NAME;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_VM_NAME, *PNDIS_VM_NAME;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_VM_FRIENDLYNAME, *PNDIS_VM_FRIENDLYNAME;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_SWITCH_PORT_PROPERTY_PROFILE_NAME, *PNDIS_SWITCH_PORT_PROPERTY_PROFILE_NAME;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_SWITCH_PORT_PROPERTY_PROFILE_CDN_LABEL, *PNDIS_SWITCH_PORT_PROPERTY_PROFILE_CDN_LABEL;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_SWITCH_NAME, *PNDIS_SWITCH_NAME;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_SWITCH_FRIENDLYNAME, *PNDIS_SWITCH_FRIENDLYNAME;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_SWITCH_PORT_NAME, *PNDIS_SWITCH_PORT_NAME;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_SWITCH_PORT_FRIENDLYNAME, *PNDIS_SWITCH_PORT_FRIENDLYNAME;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_SWITCH_NIC_NAME, *PNDIS_SWITCH_NIC_NAME;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_SWITCH_NIC_FRIENDLYNAME, *PNDIS_SWITCH_NIC_FRIENDLYNAME;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_SWITCH_EXTENSION_FRIENDLYNAME, *PNDIS_SWITCH_EXTENSION_FRIENDLYNAME;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_VENDOR_NAME, *PNDIS_VENDOR_NAME;
|
|
|
|
typedef struct _NDIS_RECEIVE_QUEUE_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_RECEIVE_QUEUE_TYPE QueueType;
|
|
NDIS_RECEIVE_QUEUE_ID QueueId;
|
|
NDIS_RECEIVE_QUEUE_GROUP_ID QueueGroupId;
|
|
GROUP_AFFINITY ProcessorAffinity;
|
|
ULONG NumSuggestedReceiveBuffers;
|
|
ULONG MSIXTableEntry;
|
|
ULONG LookaheadSize;
|
|
NDIS_VM_NAME VmName;
|
|
NDIS_QUEUE_NAME QueueName;
|
|
#if NDIS_SUPPORT_NDIS630
|
|
ULONG PortId;
|
|
ULONG InterruptCoalescingDomainId;
|
|
#endif
|
|
} NDIS_RECEIVE_QUEUE_PARAMETERS, *PNDIS_RECEIVE_QUEUE_PARAMETERS;
|
|
|
|
typedef struct _NDIS_RECEIVE_QUEUE_FREE_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_RECEIVE_QUEUE_ID QueueId;
|
|
} NDIS_RECEIVE_QUEUE_FREE_PARAMETERS, *PNDIS_RECEIVE_QUEUE_FREE_PARAMETERS;
|
|
|
|
typedef enum _NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE {
|
|
NdisReceiveQueueOperationalStateUndefined,
|
|
NdisReceiveQueueOperationalStateRunning,
|
|
NdisReceiveQueueOperationalStatePaused,
|
|
NdisReceiveQueueOperationalStateDmaStopped,
|
|
NdisReceiveQueueOperationalStateMaximum
|
|
} NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE, *PNDIS_RECEIVE_QUEUE_OPERATIONAL_STATE;
|
|
|
|
typedef struct _NDIS_RECEIVE_QUEUE_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_RECEIVE_QUEUE_TYPE QueueType;
|
|
NDIS_RECEIVE_QUEUE_ID QueueId;
|
|
NDIS_RECEIVE_QUEUE_GROUP_ID QueueGroupId;
|
|
NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE QueueState;
|
|
GROUP_AFFINITY ProcessorAffinity;
|
|
ULONG NumSuggestedReceiveBuffers;
|
|
ULONG MSIXTableEntry;
|
|
ULONG LookaheadSize;
|
|
NDIS_VM_NAME VmName;
|
|
NDIS_QUEUE_NAME QueueName;
|
|
#if NDIS_SUPPORT_NDIS630
|
|
ULONG NumFilters;
|
|
ULONG InterruptCoalescingDomainId;
|
|
#endif
|
|
} NDIS_RECEIVE_QUEUE_INFO, *PNDIS_RECEIVE_QUEUE_INFO;
|
|
|
|
typedef struct _NDIS_RECEIVE_QUEUE_INFO_ARRAY {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG FirstElementOffset;
|
|
ULONG NumElements;
|
|
ULONG ElementSize;
|
|
} NDIS_RECEIVE_QUEUE_INFO_ARRAY, *PNDIS_RECEIVE_QUEUE_INFO_ARRAY;
|
|
|
|
typedef struct _NDIS_RECEIVE_FILTER_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_RECEIVE_FILTER_TYPE FilterType;
|
|
NDIS_RECEIVE_FILTER_ID FilterId;
|
|
} NDIS_RECEIVE_FILTER_INFO, *PNDIS_RECEIVE_FILTER_INFO;
|
|
|
|
typedef struct _NDIS_RECEIVE_FILTER_INFO_ARRAY {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_RECEIVE_QUEUE_ID QueueId;
|
|
ULONG FirstElementOffset;
|
|
ULONG NumElements;
|
|
ULONG ElementSize;
|
|
#if NDIS_SUPPORT_NDIS630
|
|
ULONG Flags;
|
|
NDIS_NIC_SWITCH_VPORT_ID VPortId;
|
|
#endif
|
|
} NDIS_RECEIVE_FILTER_INFO_ARRAY, *PNDIS_RECEIVE_FILTER_INFO_ARRAY;
|
|
|
|
typedef struct _NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_RECEIVE_QUEUE_ID QueueId;
|
|
NDIS_STATUS CompletionStatus;
|
|
} NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_PARAMETERS, *PNDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_PARAMETERS;
|
|
|
|
typedef struct _NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_ARRAY {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG FirstElementOffset;
|
|
ULONG NumElements;
|
|
ULONG ElementSize;
|
|
} NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_ARRAY, *PNDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_ARRAY;
|
|
#endif
|
|
|
|
#if NTDDI_VERSION >= 0x06000000 || NDIS_SUPPORT_NDIS6
|
|
#define NDIS_RSS_CAPS_MESSAGE_SIGNALED_INTERRUPTS 0x01000000
|
|
#define NDIS_RSS_CAPS_CLASSIFICATION_AT_ISR 0x02000000
|
|
#define NDIS_RSS_CAPS_CLASSIFICATION_AT_DPC 0x04000000
|
|
#if NDIS_SUPPORT_NDIS620
|
|
#define NDIS_RSS_CAPS_USING_MSI_X 0x08000000
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_RSS_CAPS_RSS_AVAILABLE_ON_PORTS 0x10000000
|
|
#define NDIS_RSS_CAPS_SUPPORTS_MSI_X 0x20000000
|
|
#endif
|
|
#define NDIS_RSS_CAPS_HASH_TYPE_TCP_IPV4 0x00000100
|
|
#define NDIS_RSS_CAPS_HASH_TYPE_TCP_IPV6 0x00000200
|
|
#define NDIS_RSS_CAPS_HASH_TYPE_TCP_IPV6_EX 0x00000400
|
|
|
|
#define NdisHashFunctionToeplitz 0x00000001
|
|
#define NdisHashFunctionReserved1 0x00000002
|
|
#define NdisHashFunctionReserved2 0x00000004
|
|
#define NdisHashFunctionReserved3 0x00000008
|
|
|
|
#define NDIS_HASH_FUNCTION_MASK 0x000000ff
|
|
#define NDIS_HASH_TYPE_MASK 0x00ffff00
|
|
|
|
#define NDIS_RSS_HASH_FUNC_FROM_HASH_INFO(HINFO) ((HINFO) & (NDIS_HASH_FUNCTION_MASK))
|
|
#define NDIS_RSS_HASH_TYPE_FROM_HASH_INFO(HINFO) ((HINFO) & (NDIS_HASH_TYPE_MASK))
|
|
#define NDIS_RSS_HASH_INFO_FROM_TYPE_AND_FUNC(HTYPE, HFCT) ((HTYPE) | (HFCT))
|
|
|
|
#define NDIS_HASH_IPV4 0x00000100
|
|
#define NDIS_HASH_TCP_IPV4 0x00000200
|
|
#define NDIS_HASH_IPV6 0x00000400
|
|
#define NDIS_HASH_IPV6_EX 0x00000800
|
|
#define NDIS_HASH_TCP_IPV6 0x00001000
|
|
#define NDIS_HASH_TCP_IPV6_EX 0x00002000
|
|
|
|
#define NDIS_RSS_PARAM_FLAG_BASE_CPU_UNCHANGED 0x0001
|
|
#define NDIS_RSS_PARAM_FLAG_HASH_INFO_UNCHANGED 0x0002
|
|
#define NDIS_RSS_PARAM_FLAG_ITABLE_UNCHANGED 0x0004
|
|
#define NDIS_RSS_PARAM_FLAG_HASH_KEY_UNCHANGED 0x0008
|
|
#define NDIS_RSS_PARAM_FLAG_DISABLE_RSS 0x0010
|
|
|
|
#define NDIS_RSS_INDIRECTION_TABLE_SIZE_REVISION_1 128
|
|
#define NDIS_RSS_HASH_SECRET_KEY_SIZE_REVISION_1 40
|
|
|
|
#define NDIS_RSS_INDIRECTION_TABLE_MAX_SIZE_REVISION_1 128
|
|
#define NDIS_RSS_HASH_SECRET_KEY_MAX_SIZE_REVISION_1 40
|
|
|
|
#if NDIS_SUPPORT_NDIS620
|
|
#define NDIS_RSS_INDIRECTION_TABLE_MAX_SIZE_REVISION_2 (128 * sizeof (PROCESSOR_NUMBER))
|
|
#define NDIS_RSS_HASH_SECRET_KEY_MAX_SIZE_REVISION_2 40
|
|
#endif
|
|
|
|
#define NDIS_RECEIVE_HASH_FLAG_ENABLE_HASH 0x00000001
|
|
#define NDIS_RECEIVE_HASH_FLAG_HASH_INFO_UNCHANGED 0x00000002
|
|
#define NDIS_RECEIVE_HASH_FLAG_HASH_KEY_UNCHANGED 0x00000004
|
|
|
|
#define NDIS_PORT_CHAR_USE_DEFAULT_AUTH_SETTINGS 0x00000001
|
|
|
|
#define NDIS_RECEIVE_SCALE_CAPABILITIES_REVISION_1 1
|
|
#define NDIS_RECEIVE_HASH_PARAMETERS_REVISION_1 1
|
|
#define NDIS_PORT_STATE_REVISION_1 1
|
|
#define NDIS_PORT_CHARACTERISTICS_REVISION_1 1
|
|
#define NDIS_PORT_ARRAY_REVISION_1 1
|
|
#define NDIS_RECEIVE_SCALE_PARAMETERS_REVISION_1 1
|
|
#if NDIS_SUPPORT_NDIS620
|
|
#define NDIS_RECEIVE_SCALE_PARAMETERS_REVISION_2 2
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_RECEIVE_SCALE_CAPABILITIES_REVISION_2 2
|
|
#endif
|
|
|
|
#define NDIS_SIZEOF_RECEIVE_SCALE_CAPABILITIES_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_SCALE_CAPABILITIES, NumberOfReceiveQueues)
|
|
#define NDIS_SIZEOF_RECEIVE_SCALE_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_SCALE_PARAMETERS, HashSecretKeyOffset)
|
|
#define NDIS_SIZEOF_RECEIVE_HASH_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_HASH_PARAMETERS, HashSecretKeyOffset)
|
|
#define NDIS_SIZEOF_PORT_STATE_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_PORT_STATE, Flags)
|
|
#define NDIS_SIZEOF_PORT_CHARACTERISTICS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_PORT_CHARACTERISTICS, RcvAuthorizationState)
|
|
#define NDIS_SIZEOF_PORT_ARRAY_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_PORT_ARRAY, Ports)
|
|
#if NDIS_SUPPORT_NDIS620
|
|
#define NDIS_SIZEOF_RECEIVE_SCALE_PARAMETERS_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_SCALE_PARAMETERS, ProcessorMasksEntrySize)
|
|
#endif
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_SIZEOF_RECEIVE_SCALE_CAPABILITIES_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_SCALE_CAPABILITIES, NumberOfIndirectionTableEntries)
|
|
#endif
|
|
|
|
typedef struct _NDIS_RECEIVE_SCALE_CAPABILITIES {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG CapabilitiesFlags;
|
|
ULONG NumberOfInterruptMessages;
|
|
ULONG NumberOfReceiveQueues;
|
|
#if NDIS_SUPPORT_NDIS630
|
|
USHORT NumberOfIndirectionTableEntries;
|
|
#endif
|
|
} NDIS_RECEIVE_SCALE_CAPABILITIES, *PNDIS_RECEIVE_SCALE_CAPABILITIES;
|
|
|
|
typedef struct _NDIS_RECEIVE_SCALE_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
USHORT Flags;
|
|
USHORT BaseCpuNumber;
|
|
ULONG HashInformation;
|
|
USHORT IndirectionTableSize;
|
|
ULONG IndirectionTableOffset;
|
|
USHORT HashSecretKeySize;
|
|
ULONG HashSecretKeyOffset;
|
|
#if NDIS_SUPPORT_NDIS620
|
|
ULONG ProcessorMasksOffset;
|
|
ULONG NumberOfProcessorMasks;
|
|
ULONG ProcessorMasksEntrySize;
|
|
#endif
|
|
} NDIS_RECEIVE_SCALE_PARAMETERS, *PNDIS_RECEIVE_SCALE_PARAMETERS;
|
|
|
|
typedef struct _NDIS_RECEIVE_HASH_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG HashInformation;
|
|
USHORT HashSecretKeySize;
|
|
ULONG HashSecretKeyOffset;
|
|
} NDIS_RECEIVE_HASH_PARAMETERS, *PNDIS_RECEIVE_HASH_PARAMETERS;
|
|
|
|
typedef enum _NDIS_PROCESSOR_VENDOR {
|
|
NdisProcessorVendorUnknown,
|
|
NdisProcessorVendorGenuinIntel,
|
|
NdisProcessorVendorGenuineIntel = NdisProcessorVendorGenuinIntel,
|
|
NdisProcessorVendorAuthenticAMD
|
|
} NDIS_PROCESSOR_VENDOR, *PNDIS_PROCESSOR_VENDOR;
|
|
|
|
#if NDIS_SUPPORT_NDIS620
|
|
#define NDIS_HYPERVISOR_INFO_FLAG_HYPERVISOR_PRESENT 0x00000001
|
|
|
|
#define NDIS_RSS_PROCESSOR_INFO_REVISION_1 1
|
|
#define NDIS_SYSTEM_PROCESSOR_INFO_EX_REVISION_1 1
|
|
#define NDIS_HYPERVISOR_INFO_REVISION_1 1
|
|
#define NDIS_WMI_RECEIVE_QUEUE_INFO_REVISION_1 1
|
|
#define NDIS_WMI_RECEIVE_QUEUE_PARAMETERS_REVISION_1 1
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_RSS_PROCESSOR_INFO_REVISION_2 2
|
|
#endif
|
|
|
|
#define NDIS_SIZEOF_RSS_PROCESSOR_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RSS_PROCESSOR, PreferenceIndex)
|
|
#define NDIS_SIZEOF_RSS_PROCESSOR_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RSS_PROCESSOR_INFO, RssProcessorEntrySize)
|
|
#define NDIS_SIZEOF_SYSTEM_PROCESSOR_INFO_EX_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SYSTEM_PROCESSOR_INFO_EX, ProcessorInfoEntrySize)
|
|
#define NDIS_SIZEOF_HYPERVISOR_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_HYPERVISOR_INFO, PartitionType)
|
|
#define NDIS_SIZEOF_WMI_RECEIVE_QUEUE_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_RECEIVE_QUEUE_PARAMETERS, QueueName)
|
|
#define NDIS_SIZEOF_WMI_RECEIVE_QUEUE_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_WMI_RECEIVE_QUEUE_INFO, QueueName)
|
|
#if NDIS_SUPPORT_NDIS630
|
|
#define NDIS_SIZEOF_RSS_PROCESSOR_INFO_REVISION_2 RTL_SIZEOF_THROUGH_FIELD (NDIS_RSS_PROCESSOR_INFO, RssProfile)
|
|
#endif
|
|
|
|
typedef struct _NDIS_RSS_PROCESSOR {
|
|
PROCESSOR_NUMBER ProcNum;
|
|
USHORT PreferenceIndex;
|
|
USHORT Reserved;
|
|
} NDIS_RSS_PROCESSOR, *PNDIS_RSS_PROCESSOR;
|
|
|
|
#if NDIS_SUPPORT_NDIS630
|
|
typedef enum _NDIS_RSS_PROFILE {
|
|
NdisRssProfileClosest = 1,
|
|
NdisRssProfileClosestStatic,
|
|
NdisRssProfileNuma,
|
|
NdisRssProfileNumaStatic,
|
|
NdisRssProfileConservative,
|
|
NdisRssProfileMaximum,
|
|
} NDIS_RSS_PROFILE, *PNDIS_RSS_PROFILE;
|
|
#endif
|
|
|
|
typedef struct _NDIS_RSS_PROCESSOR_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
PROCESSOR_NUMBER RssBaseProcessor;
|
|
ULONG MaxNumRssProcessors;
|
|
USHORT PreferredNumaNode;
|
|
ULONG RssProcessorArrayOffset;
|
|
ULONG RssProcessorCount;
|
|
ULONG RssProcessorEntrySize;
|
|
#if NDIS_SUPPORT_NDIS630
|
|
PROCESSOR_NUMBER RssMaxProcessor;
|
|
NDIS_RSS_PROFILE RssProfile;
|
|
#endif
|
|
} NDIS_RSS_PROCESSOR_INFO, *PNDIS_RSS_PROCESSOR_INFO;
|
|
|
|
typedef struct _NDIS_PROCESSOR_INFO_EX {
|
|
PROCESSOR_NUMBER ProcNum;
|
|
ULONG SocketId;
|
|
ULONG CoreId;
|
|
ULONG HyperThreadId;
|
|
USHORT NodeId;
|
|
USHORT NodeDistance;
|
|
} NDIS_PROCESSOR_INFO_EX, *PNDIS_PROCESSOR_INFO_EX;
|
|
|
|
typedef struct _NDIS_SYSTEM_PROCESSOR_INFO_EX {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_PROCESSOR_VENDOR ProcessorVendor;
|
|
ULONG NumSockets;
|
|
ULONG NumCores;
|
|
ULONG NumCoresPerSocket;
|
|
ULONG MaxHyperThreadingProcsPerCore;
|
|
ULONG ProcessorInfoOffset;
|
|
ULONG NumberOfProcessors;
|
|
ULONG ProcessorInfoEntrySize;
|
|
} NDIS_SYSTEM_PROCESSOR_INFO_EX, *PNDIS_SYSTEM_PROCESSOR_INFO_EX;
|
|
|
|
typedef enum _NDIS_HYPERVISOR_PARTITION_TYPE {
|
|
NdisHypervisorPartitionTypeUnknown,
|
|
NdisHypervisorPartitionTypeMsHvParent,
|
|
NdisHypervisorPartitionMsHvChild,
|
|
NdisHypervisorPartitionTypeMax
|
|
} NDIS_HYPERVISOR_PARTITION_TYPE, *PNDIS_HYPERVISOR_PARTITION_TYPE;
|
|
|
|
typedef struct _NDIS_HYPERVISOR_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_HYPERVISOR_PARTITION_TYPE PartitionType;
|
|
} NDIS_HYPERVISOR_INFO, *PNDIS_HYPERVISOR_INFO;
|
|
|
|
typedef struct _NDIS_WMI_GROUP_AFFINITY {
|
|
ULONG64 Mask;
|
|
USHORT Group;
|
|
USHORT Reserved[3];
|
|
} NDIS_WMI_GROUP_AFFINITY, *PNDIS_WMI_GROUP_AFFINITY;
|
|
|
|
typedef struct _NDIS_WMI_RECEIVE_QUEUE_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_RECEIVE_QUEUE_TYPE QueueType;
|
|
NDIS_RECEIVE_QUEUE_ID QueueId;
|
|
NDIS_RECEIVE_QUEUE_GROUP_ID QueueGroupId;
|
|
NDIS_WMI_GROUP_AFFINITY ProcessorAffinity;
|
|
ULONG NumSuggestedReceiveBuffers;
|
|
ULONG MSIXTableEntry;
|
|
ULONG LookaheadSize;
|
|
NDIS_VM_NAME VmName;
|
|
NDIS_QUEUE_NAME QueueName;
|
|
} NDIS_WMI_RECEIVE_QUEUE_PARAMETERS, *PNDIS_WMI_RECEIVE_QUEUE_PARAMETERS;
|
|
|
|
typedef struct _NDIS_WMI_RECEIVE_QUEUE_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_RECEIVE_QUEUE_TYPE QueueType;
|
|
NDIS_RECEIVE_QUEUE_ID QueueId;
|
|
NDIS_RECEIVE_QUEUE_GROUP_ID QueueGroupId;
|
|
NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE QueueState;
|
|
NDIS_WMI_GROUP_AFFINITY ProcessorAffinity;
|
|
ULONG NumSuggestedReceiveBuffers;
|
|
ULONG MSIXTableEntry;
|
|
ULONG LookaheadSize;
|
|
NDIS_VM_NAME VmName;
|
|
NDIS_QUEUE_NAME QueueName;
|
|
} NDIS_WMI_RECEIVE_QUEUE_INFO, *PNDIS_WMI_RECEIVE_QUEUE_INFO;
|
|
#endif
|
|
|
|
#if NDIS_SUPPORT_NDIS630
|
|
|
|
#define NDIS_NDK_PERFORMANCE_COUNTER_MASK(CNTFIELD) (((ULONG64) 1) << (FIELD_OFFSET (NDIS_NDK_PERFORMANCE_COUNTERS, CNTFIELD) / sizeof (ULONG64)))
|
|
|
|
#define OID_NDK_SET_STATE 0xfc040201
|
|
#define OID_NDK_STATISTICS 0xfc040202
|
|
#define OID_NDK_CONNECTIONS 0xfc040203
|
|
#define OID_NDK_LOCAL_ENDPOINTS 0xfc040204
|
|
|
|
#define OID_QOS_HARDWARE_CAPABILITIES 0xfc050001
|
|
#define OID_QOS_CURRENT_CAPABILITIES 0xfc050002
|
|
#define OID_QOS_PARAMETERS 0xfc050003
|
|
#define OID_QOS_OPERATIONAL_PARAMETERS 0xfc050004
|
|
#define OID_QOS_REMOTE_PARAMETERS 0xfc050005
|
|
|
|
#define NDIS_QOS_MAXIMUM_PRIORITIES 8
|
|
#define NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES 8
|
|
|
|
#define NDIS_QOS_CAPABILITIES_STRICT_TSA_SUPPORTED 0x00000001
|
|
#define NDIS_QOS_CAPABILITIES_MACSEC_BYPASS_SUPPORTED 0x00000002
|
|
#define NDIS_QOS_CAPABILITIES_CEE_DCBX_SUPPORTED 0x00000004
|
|
#define NDIS_QOS_CAPABILITIES_IEEE_DCBX_SUPPORTED 0x00000008
|
|
|
|
#define NDIS_QOS_CLASSIFICATION_SET_BY_MINIPORT_MASK 0xff000000
|
|
#define NDIS_QOS_CLASSIFICATION_ENFORCED_BY_MINIPORT 0x01000000
|
|
|
|
#define NDIS_QOS_CONDITION_RESERVED 0x0
|
|
#define NDIS_QOS_CONDITION_DEFAULT 0x1
|
|
#define NDIS_QOS_CONDITION_TCP_PORT 0x2
|
|
#define NDIS_QOS_CONDITION_UDP_PORT 0x3
|
|
#define NDIS_QOS_CONDITION_TCP_OR_UDP_PORT 0x4
|
|
#define NDIS_QOS_CONDITION_ETHERTYPE 0x5
|
|
#define NDIS_QOS_CONDITION_NETDIRECT_PORT 0x6
|
|
#define NDIS_QOS_CONDITION_MAXIMUM 0x7
|
|
|
|
#define NDIS_QOS_ACTION_PRIORITY 0x0
|
|
#define NDIS_QOS_ACTION_MAXIMUM 0x1
|
|
|
|
#define NDIS_QOS_PARAMETERS_ETS_CHANGED 0x00000001
|
|
#define NDIS_QOS_PARAMETERS_ETS_CONFIGURED 0x00000002
|
|
#define NDIS_QOS_PARAMETERS_PFC_CHANGED 0x00000100
|
|
#define NDIS_QOS_PARAMETERS_PFC_CONFIGURED 0x00000200
|
|
#define NDIS_QOS_PARAMETERS_CLASSIFICATION_CHANGED 0x00010000
|
|
#define NDIS_QOS_PARAMETERS_CLASSIFICATION_CONFIGURED 0x00020000
|
|
#define NDIS_QOS_PARAMETERS_WILLING 0x80000000
|
|
|
|
#define NDIS_QOS_TSA_STRICT 0x0
|
|
#define NDIS_QOS_TSA_CBS 0x1
|
|
#define NDIS_QOS_TSA_ETS 0x2
|
|
#define NDIS_QOS_TSA_MAXIMUM 0x3
|
|
|
|
#define NDIS_PF_FUNCTION_ID (USHORT) -1
|
|
#define NDIS_INVALID_VF_FUNCTION_ID (USHORT) -1
|
|
#define NDIS_INVALID_RID (ULONG) -1
|
|
#define NDIS_DEFAULT_VPORT_ID 0
|
|
#define NDIS_DEFAULT_SWITCH_ID 0
|
|
#define NDIS_INVALID_SWITCH_ID (ULONG) -1
|
|
|
|
#define NDIS_NIC_SWITCH_PARAMETERS_CHANGE_MASK 0xffff0000
|
|
#define NDIS_NIC_SWITCH_PARAMETERS_SWITCH_NAME_CHANGED 0x00010000
|
|
|
|
#define NDIS_SRIOV_CAPS_SRIOV_SUPPORTED 0x00000001
|
|
#define NDIS_SRIOV_CAPS_PF_MINIPORT 0x00000002
|
|
#define NDIS_SRIOV_CAPS_VF_MINIPORT 0x00000004
|
|
|
|
#define NDIS_NIC_SWITCH_VF_INFO_ARRAY_ENUM_ON_SPECIFIC_SWITCH 0x00000001
|
|
|
|
#define NDIS_NIC_SWITCH_VPORT_PARAMS_LOOKAHEAD_SPLIT_ENABLED 0x00000001
|
|
#define NDIS_NIC_SWITCH_VPORT_PARAMS_CHANGE_MASK 0xffff0000
|
|
#define NDIS_NIC_SWITCH_VPORT_PARAMS_FLAGS_CHANGED 0x00010000
|
|
#define NDIS_NIC_SWITCH_VPORT_PARAMS_NAME_CHANGED 0x00020000
|
|
#define NDIS_NIC_SWITCH_VPORT_PARAMS_INT_MOD_CHANGED 0x00040000
|
|
#define NDIS_NIC_SWITCH_VPORT_PARAMS_STATE_CHANGED 0x00080000
|
|
#define NDIS_NIC_SWITCH_VPORT_PARAMS_PROCESSOR_AFFINITY_CHANGED 0x00100000
|
|
|
|
#define NDIS_NIC_SWITCH_VPORT_INFO_ARRAY_ENUM_ON_SPECIFIC_FUNCTION 0x00000001
|
|
#define NDIS_NIC_SWITCH_VPORT_INFO_ARRAY_ENUM_ON_SPECIFIC_SWITCH 0x00000002
|
|
|
|
#define NDIS_NIC_SWITCH_VPORT_INFO_LOOKAHEAD_SPLIT_ENABLED 0x00000001
|
|
|
|
DEFINE_GUID (GUID_NDIS_NDK_CAPABILITIES, 0x7969ba4d, 0xdd80, 0x4bc7, 0xb3, 0xe6, 0x68, 0x04, 0x39, 0x97, 0xe5, 0x19);
|
|
DEFINE_GUID (GUID_NDIS_NDK_STATE, 0x530c69c9, 0x2f51, 0x49de, 0xa1, 0xaf, 0x08, 0x8d, 0x54, 0xff, 0xa4, 0x74);
|
|
|
|
#define NDIS_NDK_CAPABILITIES_REVISION_1 1
|
|
#define NDIS_NDK_STATISTICS_INFO_REVISION_1 1
|
|
#define NDIS_NDK_CONNECTIONS_REVISION_1 1
|
|
#define NDIS_NDK_LOCAL_ENDPOINTS_REVISION_1 1
|
|
#define NDIS_QOS_CAPABILITIES_REVISION_1 1
|
|
#define NDIS_QOS_CLASSIFICATION_ELEMENT_REVISION_1 1
|
|
#define NDIS_QOS_PARAMETERS_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_PARAMETERS_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_DELETE_SWITCH_PARAMETERS_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_INFO_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_INFO_ARRAY_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_VPORT_PARAMETERS_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_DELETE_VPORT_PARAMETERS_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_VPORT_INFO_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_VPORT_INFO_ARRAY_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_VF_PARAMETERS_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_FREE_VF_PARAMETERS_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_VF_INFO_REVISION_1 1
|
|
#define NDIS_NIC_SWITCH_VF_INFO_ARRAY_REVISION_1 1
|
|
#define NDIS_SRIOV_CAPABILITIES_REVISION_1 1
|
|
#define NDIS_SRIOV_READ_VF_CONFIG_SPACE_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SRIOV_WRITE_VF_CONFIG_SPACE_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SRIOV_READ_VF_CONFIG_BLOCK_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SRIOV_RESET_VF_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SRIOV_SET_VF_POWER_STATE_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SRIOV_CONFIG_STATE_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SRIOV_VF_VENDOR_DEVICE_ID_INFO_REVISION_1 1
|
|
#define NDIS_SRIOV_PROBED_BARS_INFO_REVISION_1 1
|
|
#define NDIS_RECEIVE_FILTER_MOVE_FILTER_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SRIOV_BAR_RESOURCES_INFO_REVISION_1 1
|
|
#define NDIS_SRIOV_PF_LUID_INFO_REVISION_1 1
|
|
#define NDIS_SRIOV_VF_SERIAL_NUMBER_INFO_REVISION_1 1
|
|
#define NDIS_SRIOV_VF_INVALIDATE_CONFIG_BLOCK_INFO_REVISION_1 1
|
|
#define NDIS_SWITCH_OBJECT_SERIALIZATION_VERSION_1 1
|
|
#define NDIS_SWITCH_PORT_PROPERTY_SECURITY_REVISION_1 1
|
|
#define NDIS_SWITCH_PORT_PROPERTY_VLAN_REVISION_1 1
|
|
#define NDIS_SWITCH_PORT_PROPERTY_PROFILE_REVISION_1 1
|
|
#define NDIS_SWITCH_PORT_PROPERTY_CUSTOM_REVISION_1 1
|
|
#define NDIS_SWITCH_PORT_PROPERTY_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SWITCH_PORT_PROPERTY_ENUM_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SWITCH_PORT_PROPERTY_ENUM_INFO_REVISION_1 1
|
|
#define NDIS_SWITCH_PROPERTY_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SWITCH_PROPERTY_CUSTOM_REVISION_1 1
|
|
#define NDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SWITCH_PORT_FEATURE_STATUS_CUSTOM_REVISION_1 1
|
|
#define NDIS_SWITCH_PROPERTY_DELETE_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SWITCH_PROPERTY_ENUM_INFO_REVISION_1 1
|
|
#define NDIS_SWITCH_PROPERTY_ENUM_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SWITCH_FEATURE_STATUS_CUSTOM_REVISION_1 1
|
|
#define NDIS_SWITCH_PORT_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SWITCH_PORT_ARRAY_REVISION_1 1
|
|
#define NDIS_SWITCH_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SWITCH_NIC_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SWITCH_NIC_ARRAY_REVISION_1 1
|
|
#define NDIS_SWITCH_NIC_OID_REQUEST_REVISION_1 1
|
|
#define NDIS_SWITCH_FEATURE_STATUS_PARAMETERS_REVISION_1 1
|
|
#define NDIS_SWITCH_NIC_SAVE_STATE_REVISION_1 1
|
|
|
|
#define NDIS_SIZEOF_NDK_CAPABILITIES_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NDK_CAPABILITIES, NdkInfo)
|
|
#define NDIS_SIZEOF_NDK_STATISTICS_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NDK_STATISTICS_INFO, CounterSet)
|
|
#define NDIS_SIZEOF_NDK_CONNECTIONS_REVISION_1(n) FIELD_OFFSET (NDIS_NDK_CONNECTIONS, Connections[n])
|
|
#define NDIS_SIZEOF_NDK_LOCAL_ENDPOINTS_REVISION_1(n) FIELD_OFFSET (NDIS_NDK_LOCAL_ENDPOINTS, LocalEndpoints[n])
|
|
#define NDIS_SIZEOF_QOS_CAPABILITIES_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_QOS_CAPABILITIES, MaxNumPfcEnabledTrafficClasses)
|
|
#define NDIS_SIZEOF_QOS_CLASSIFICATION_ELEMENT_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_QOS_CLASSIFICATION_ELEMENT, ActionField)
|
|
#define NDIS_SIZEOF_QOS_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_QOS_PARAMETERS, FirstClassificationElementOffset)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_PARAMETERS, NdisReserved3)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_DELETE_SWITCH_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_DELETE_SWITCH_PARAMETERS, SwitchId)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_INFO, NumActiveNonDefaultVPortVlanIds)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_INFO_ARRAY_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_INFO_ARRAY, ElementSize)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_VPORT_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_VPORT_PARAMETERS, LookaheadSize)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_DELETE_VPORT_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_DELETE_VPORT_PARAMETERS, VPortId)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_VPORT_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_VPORT_INFO, NumFilters)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_VPORT_INFO_ARRAY_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_VPORT_INFO_ARRAY, ElementSize)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_VF_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_VF_PARAMETERS, RequestorId)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_FREE_VF_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_FREE_VF_PARAMETERS, VFId)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_VF_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_VF_INFO, RequestorId)
|
|
#define NDIS_SIZEOF_NIC_SWITCH_VF_INFO_ARRAY_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_NIC_SWITCH_VF_INFO_ARRAY, ElementSize)
|
|
#define NDIS_SIZEOF_SRIOV_CAPABILITIES_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_CAPABILITIES, SriovCapabilities)
|
|
#define NDIS_SIZEOF_SRIOV_READ_VF_CONFIG_SPACE_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_READ_VF_CONFIG_SPACE_PARAMETERS, BufferOffset)
|
|
#define NDIS_SIZEOF_SRIOV_WRITE_VF_CONFIG_SPACE_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_WRITE_VF_CONFIG_SPACE_PARAMETERS, BufferOffset)
|
|
#define NDIS_SIZEOF_SRIOV_READ_VF_CONFIG_BLOCK_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_READ_VF_CONFIG_BLOCK_PARAMETERS, BufferOffset)
|
|
#define NDIS_SIZEOF_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS, BufferOffset)
|
|
#define NDIS_SIZEOF_SRIOV_RESET_VF_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_RESET_VF_PARAMETERS, VFId)
|
|
#define NDIS_SIZEOF_SRIOV_SET_VF_POWER_STATE_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_SET_VF_POWER_STATE_PARAMETERS, WakeEnable)
|
|
#define NDIS_SIZEOF_SRIOV_CONFIG_STATE_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_CONFIG_STATE_PARAMETERS, Length)
|
|
#define NDIS_SIZEOF_SRIOV_VF_VENDOR_DEVICE_ID_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_VF_VENDOR_DEVICE_ID_INFO, DeviceId)
|
|
#define NDIS_SIZEOF_SRIOV_PROBED_BARS_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_PROBED_BARS_INFO, BaseRegisterValuesOffset)
|
|
#define NDIS_SIZEOF_RECEIVE_FILTER_MOVE_FILTER_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_RECEIVE_FILTER_MOVE_FILTER_PARAMETERS, DestVPortId)
|
|
#define NDIS_SIZEOF_SRIOV_BAR_RESOURCES_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_BAR_RESOURCES_INFO, BarResourcesOffset)
|
|
#define NDIS_SIZEOF_SRIOV_PF_LUID_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_PF_LUID_INFO, Luid)
|
|
#define NDIS_SIZEOF_SRIOV_VF_SERIAL_NUMBER_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_VF_SERIAL_NUMBER_INFO, SerialNumber)
|
|
#define NDIS_SIZEOF_SRIOV_VF_INVALIDATE_CONFIG_BLOCK_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SRIOV_VF_INVALIDATE_CONFIG_BLOCK_INFO, BlockMask)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PORT_PROPERTY_SECURITY_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PORT_PROPERTY_SECURITY, AllowTeaming)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PORT_PROPERTY_VLAN_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PORT_PROPERTY_VLAN, VlanProperties)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PORT_PROPERTY_PROFILE_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PORT_PROPERTY_PROFILE, CdnLabel)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PORT_PROPERTY_CUSTOM_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PORT_PROPERTY_CUSTOM, PropertyBufferOffset)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PORT_PROPERTY_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PORT_PROPERTY_PARAMETERS, Reserved)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PORT_PROPERTY_ENUM_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PORT_PROPERTY_ENUM_PARAMETERS, Reserved)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PORT_PROPERTY_ENUM_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PORT_PROPERTY_ENUM_INFO, PropertyBufferOffset)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS, Reserved)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PORT_FEATURE_STATUS_CUSTOM_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PORT_FEATURE_STATUS_CUSTOM, FeatureStatusBufferOffset)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PROPERTY_CUSTOM_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PROPERTY_CUSTOM, PropertyBufferOffset)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS, PropertyInstanceId)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PROPERTY_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PROPERTY_PARAMETERS, PropertyBufferOffset)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PROPERTY_ENUM_INFO_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PROPERTY_ENUM_INFO, PropertyBufferOffset)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PROPERTY_ENUM_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PROPERTY_ENUM_PARAMETERS, NumProperties)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_FEATURE_STATUS_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_FEATURE_STATUS_PARAMETERS, FeatureStatusBufferLength)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PROPERTY_DELETE_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PROPERTY_DELETE_PARAMETERS, PropertyInstanceId)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PARAMETERS, IsActive)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_FEATURE_STATUS_CUSTOM_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_FEATURE_STATUS_CUSTOM, FeatureStatusCustomBufferOffset)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PORT_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PORT_PARAMETERS, PortState)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_PORT_ARRAY_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_PORT_ARRAY, ElementSize)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_NIC_OID_REQUEST_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_NIC_OID_REQUEST, OidRequest)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_NIC_SAVE_STATE_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_NIC_SAVE_STATE, SaveDataOffset)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_NIC_PARAMETERS_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_NIC_PARAMETERS, VFAssigned)
|
|
#define NDIS_SIZEOF_NDIS_SWITCH_NIC_ARRAY_REVISION_1 RTL_SIZEOF_THROUGH_FIELD (NDIS_SWITCH_NIC_ARRAY, ElementSize)
|
|
|
|
#define NDIS_SWITCH_PORT_PROPERTY_CUSTOM_GET_BUFFER(PPROPC) ((PVOID) ((PUCHAR) (PPROPC) + (PPROPC)->PropertyBufferOffset))
|
|
#define NDIS_SWITCH_PORT_PROPERTY_PARAMETERS_GET_PROPERTY(PPARM) ((PVOID) ((PUCHAR) (PPARM) + (PPARM)->PropertyBufferOffset))
|
|
#define NDIS_SWITCH_CREATE_PROPERTY_VERSION(VMAJOR, VMINOR) (((VMAJOR) << 8) + (VMINOR))
|
|
#define NDIS_SWITCH_PORT_PROPERTY_ENUM_PARAMETERS_GET_FIRST_INFO(PEPARM) ((PNDIS_SWITCH_PORT_PROPERTY_ENUM_INFO) ((PUCHAR) (PEPARM) + (PEPARM)->FirstPropertyOffset))
|
|
#define NDIS_SWITCH_PORT_PROPERTY_ENUM_INFO_GET_NEXT(PEINFO) ((PNDIS_SWITCH_PORT_PROPERTY_ENUM_INFO) ((ULONG_PTR) (PEINFO) + (PEINFO)->QwordAlignedPropertyBufferLength + sizeof (NDIS_SWITCH_PORT_PROPERTY_ENUM_INFO)))
|
|
#define NDIS_SWITCH_PORT_PROPERTY_ENUM_INFO_GET_PROPERTY(PEINFO) ((PVOID) ((PUCHAR) (PEINFO) + (PEINFO)->PropertyBufferOffset))
|
|
#define NDIS_SWITCH_CREATE_FEATURE_STATUS_VERSION(VMAJOR, VMINOR) (((VMAJOR) << 8) + (VMINOR))
|
|
#define NDIS_SWITCH_PROPERTY_CUSTOM_GET_BUFFER(SWPROPC) ((PVOID) ((PUCHAR) (SWPROPC) + (SWPROPC)->PropertyBufferOffset))
|
|
#define NDIS_SWITCH_PROPERTY_PARAMETERS_GET_PROPERTY(SWPARA) ((PVOID) ((PUCHAR) (SWPARA) + (SWPARA)->PropertyBufferOffset))
|
|
#define NDIS_SWITCH_PROPERTY_ENUM_INFO_GET_NEXT(SWEINFO) ((PNDIS_SWITCH_PROPERTY_ENUM_INFO) ((ULONG_PTR) (SWEINFO) + (SWEINFO)->QwordAlignedPropertyBufferLength + sizeof (NDIS_SWITCH_PROPERTY_ENUM_INFO)))
|
|
#define NDIS_SWITCH_PROPERTY_ENUM_INFO_GET_PROPERTY(SWEINFO) ((PVOID) ((PUCHAR) (SWEINFO) + (SWEINFO)->PropertyBufferOffset))
|
|
#define NDIS_SWITCH_PROPERTY_ENUM_PARAMETERS_GET_FIRST_INFO(SWEPARM) ((PNDIS_SWITCH_PROPERTY_ENUM_INFO) ((PUCHAR) (SWEPARM) + (SWEPARM)->FirstPropertyOffset))
|
|
#define NDIS_SWITCH_PORT_AT_ARRAY_INDEX(PA, IDX) ((PNDIS_SWITCH_PORT_PARAMETERS) ((PUCHAR) (PA) + (PA)->FirstElementOffset + ((PA)->ElementSize * (IDX))))
|
|
#define NDIS_SWITCH_NIC_AT_ARRAY_INDEX(NA, IDX) ((PNDIS_SWITCH_NIC_PARAMETERS) ((PUCHAR) (NA) + (NA)->FirstElementOffset + ((NA)->ElementSize * (IDX))))
|
|
|
|
#include <ndkinfo.h>
|
|
#include <ws2def.h>
|
|
#ifndef __CYGWIN__
|
|
#include <ws2ipdef.h>
|
|
#endif
|
|
|
|
typedef struct _NDIS_NDK_PERFORMANCE_COUNTERS {
|
|
ULONG64 Connect;
|
|
ULONG64 Accept;
|
|
ULONG64 ConnectFailure;
|
|
ULONG64 ConnectionError;
|
|
ULONG64 ActiveConnection;
|
|
ULONG64 Reserved01;
|
|
ULONG64 Reserved02;
|
|
ULONG64 Reserved03;
|
|
ULONG64 Reserved04;
|
|
ULONG64 Reserved05;
|
|
ULONG64 Reserved06;
|
|
ULONG64 Reserved07;
|
|
ULONG64 Reserved08;
|
|
ULONG64 Reserved09;
|
|
ULONG64 Reserved10;
|
|
ULONG64 Reserved11;
|
|
ULONG64 Reserved12;
|
|
ULONG64 Reserved13;
|
|
ULONG64 Reserved14;
|
|
ULONG64 Reserved15;
|
|
ULONG64 Reserved16;
|
|
ULONG64 Reserved17;
|
|
ULONG64 Reserved18;
|
|
ULONG64 Reserved19;
|
|
ULONG64 Reserved20;
|
|
ULONG64 CQError;
|
|
ULONG64 RDMAInOctets;
|
|
ULONG64 RDMAOutOctets;
|
|
ULONG64 RDMAInFrames;
|
|
ULONG64 RDMAOutFrames;
|
|
} NDIS_NDK_PERFORMANCE_COUNTERS, *PNDIS_NDK_PERFORMANCE_COUNTERS;
|
|
|
|
typedef struct _NDIS_NDK_CAPABILITIES {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG MaxQpCount;
|
|
ULONG MaxCqCount;
|
|
ULONG MaxMrCount;
|
|
ULONG MaxPdCount;
|
|
ULONG MaxInboundReadLimit;
|
|
ULONG MaxOutboundReadLimit;
|
|
ULONG MaxMwCount;
|
|
ULONG MaxSrqCount;
|
|
ULONG64 MissingCounterMask;
|
|
NDK_ADAPTER_INFO *NdkInfo;
|
|
} NDIS_NDK_CAPABILITIES, *PNDIS_NDK_CAPABILITIES;
|
|
|
|
typedef struct _NDK_WMI_ADAPTER_INFO {
|
|
NDK_VERSION Version;
|
|
UINT32 VendorId;
|
|
UINT32 DeviceId;
|
|
ULONGLONG MaxRegistrationSize;
|
|
ULONGLONG MaxWindowSize;
|
|
ULONG FRMRPageCount;
|
|
ULONG MaxInitiatorRequestSge;
|
|
ULONG MaxReceiveRequestSge;
|
|
ULONG MaxReadRequestSge;
|
|
ULONG MaxTransferLength;
|
|
ULONG MaxInlineDataSize;
|
|
ULONG MaxInboundReadLimit;
|
|
ULONG MaxOutboundReadLimit;
|
|
ULONG MaxReceiveQueueDepth;
|
|
ULONG MaxInitiatorQueueDepth;
|
|
ULONG MaxSrqDepth;
|
|
ULONG MaxCqDepth;
|
|
ULONG LargeRequestThreshold;
|
|
ULONG MaxCallerData;
|
|
ULONG MaxCalleeData;
|
|
ULONG AdapterFlags;
|
|
} NDK_WMI_ADAPTER_INFO, *PNDK_WMI_ADAPTER_INFO;
|
|
|
|
typedef struct _NDIS_WMI_NDK_CAPABILITIES {
|
|
ULONG MaxQpCount;
|
|
ULONG MaxCqCount;
|
|
ULONG MaxMrCount;
|
|
ULONG MaxPdCount;
|
|
ULONG MaxInboundReadLimit;
|
|
ULONG MaxOutboundReadLimit;
|
|
ULONG MaxMwCount;
|
|
ULONG MaxSrqCount;
|
|
ULONG64 MissingCounterMask;
|
|
NDK_WMI_ADAPTER_INFO NdkInfo;
|
|
} NDIS_WMI_NDK_CAPABILITIES, *PNDIS_WMI_NDK_CAPABILITIES;
|
|
|
|
typedef struct _NDIS_NDK_STATISTICS_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_NDK_PERFORMANCE_COUNTERS CounterSet;
|
|
} NDIS_NDK_STATISTICS_INFO;
|
|
|
|
typedef struct _NDIS_NDK_CONNECTION_ENTRY {
|
|
SOCKADDR_INET Local;
|
|
SOCKADDR_INET Remote;
|
|
BOOLEAN UserModeOwner;
|
|
ULONG OwnerPid;
|
|
} NDIS_NDK_CONNECTION_ENTRY;
|
|
|
|
typedef struct _NDIS_NDK_CONNECTIONS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG Count;
|
|
BOOLEAN NDConnectionsMappedtoTCPConnections;
|
|
NDIS_NDK_CONNECTION_ENTRY Connections[1];
|
|
} NDIS_NDK_CONNECTIONS;
|
|
|
|
typedef struct _NDIS_NDK_LOCAL_ENDPOINT_ENTRY {
|
|
SOCKADDR_INET Local;
|
|
BOOLEAN UserModeOwner;
|
|
BOOLEAN Listener;
|
|
ULONG OwnerPid;
|
|
} NDIS_NDK_LOCAL_ENDPOINT_ENTRY;
|
|
|
|
typedef struct _NDIS_NDK_LOCAL_ENDPOINTS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG Count;
|
|
BOOLEAN NDLocalEndpointsMappedtoTCPLocalEndpoints;
|
|
NDIS_NDK_LOCAL_ENDPOINT_ENTRY LocalEndpoints[1];
|
|
} NDIS_NDK_LOCAL_ENDPOINTS;
|
|
|
|
typedef struct _NDIS_QOS_CAPABILITIES {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG MaxNumTrafficClasses;
|
|
ULONG MaxNumEtsCapableTrafficClasses;
|
|
ULONG MaxNumPfcEnabledTrafficClasses;
|
|
} NDIS_QOS_CAPABILITIES, *PNDIS_QOS_CAPABILITIES;
|
|
|
|
typedef struct _NDIS_QOS_CLASSIFICATION_ELEMENT {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
USHORT ConditionSelector;
|
|
USHORT ConditionField;
|
|
USHORT ActionSelector;
|
|
USHORT ActionField;
|
|
} NDIS_QOS_CLASSIFICATION_ELEMENT, *PNDIS_QOS_CLASSIFICATION_ELEMENT;
|
|
|
|
typedef struct _NDIS_QOS_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG NumTrafficClasses;
|
|
UCHAR PriorityAssignmentTable[NDIS_QOS_MAXIMUM_PRIORITIES];
|
|
UCHAR TcBandwidthAssignmentTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
|
|
UCHAR TsaAssignmentTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
|
|
ULONG PfcEnable;
|
|
ULONG NumClassificationElements;
|
|
ULONG ClassificationElementSize;
|
|
ULONG FirstClassificationElementOffset;
|
|
} NDIS_QOS_PARAMETERS, *PNDIS_QOS_PARAMETERS;
|
|
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_NIC_SWITCH_FRIENDLYNAME, *PNDIS_NIC_SWITCH_FRIENDLYNAME;
|
|
typedef NDIS_IF_COUNTED_STRING NDIS_VPORT_NAME, *PNDIS_VPORT_NAME;
|
|
typedef ULONG NDIS_NIC_SWITCH_ID, *PNDIS_NIC_SWITCH_ID;
|
|
typedef USHORT NDIS_SRIOV_FUNCTION_ID, *PNDIS_SRIOV_FUNCTION_ID;
|
|
typedef ULONG NDIS_VF_RID, *PNDIS_VF_RID;
|
|
|
|
typedef enum _NDIS_NIC_SWITCH_TYPE {
|
|
NdisNicSwitchTypeUnspecified,
|
|
NdisNicSwitchTypeExternal,
|
|
NdisNicSwitchTypeMax
|
|
} NDIS_NIC_SWITCH_TYPE, *PNDIS_NIC_SWITCH_TYPE;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_NIC_SWITCH_TYPE SwitchType;
|
|
NDIS_NIC_SWITCH_ID SwitchId;
|
|
NDIS_NIC_SWITCH_FRIENDLYNAME SwitchFriendlyName;
|
|
ULONG NumVFs;
|
|
ULONG NdisReserved1;
|
|
ULONG NdisReserved2;
|
|
ULONG NdisReserved3;
|
|
} NDIS_NIC_SWITCH_PARAMETERS, *PNDIS_NIC_SWITCH_PARAMETERS;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_DELETE_SWITCH_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_NIC_SWITCH_ID SwitchId;
|
|
} NDIS_NIC_SWITCH_DELETE_SWITCH_PARAMETERS, *PNDIS_NIC_SWITCH_DELETE_SWITCH_PARAMETERS;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_NIC_SWITCH_TYPE SwitchType;
|
|
NDIS_NIC_SWITCH_ID SwitchId;
|
|
NDIS_NIC_SWITCH_FRIENDLYNAME SwitchFriendlyName;
|
|
ULONG NumVFs;
|
|
ULONG NumAllocatedVFs;
|
|
ULONG NumVPorts;
|
|
ULONG NumActiveVPorts;
|
|
ULONG NumQueuePairsForDefaultVPort;
|
|
ULONG NumQueuePairsForNonDefaultVPorts;
|
|
ULONG NumActiveDefaultVPortMacAddresses;
|
|
ULONG NumActiveNonDefaultVPortMacAddresses;
|
|
ULONG NumActiveDefaultVPortVlanIds;
|
|
ULONG NumActiveNonDefaultVPortVlanIds;
|
|
} NDIS_NIC_SWITCH_INFO, *PNDIS_NIC_SWITCH_INFO;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_INFO_ARRAY {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG FirstElementOffset;
|
|
ULONG NumElements;
|
|
ULONG ElementSize;
|
|
} NDIS_NIC_SWITCH_INFO_ARRAY, *PNDIS_NIC_SWITCH_INFO_ARRAY;
|
|
|
|
typedef enum _NDIS_NIC_SWITCH_VPORT_STATE {
|
|
NdisNicSwitchVPortStateUndefined,
|
|
NdisNicSwitchVPortStateActivated,
|
|
NdisNicSwitchVPortStateDeactivated,
|
|
NdisNicSwitchVPortStateMaximum
|
|
} NDIS_NIC_SWITCH_VPORT_STATE, *PNDIS_NIC_SWITCH_VPORT_STATE;
|
|
|
|
typedef enum _NDIS_NIC_SWITCH_VPORT_INTERRUPT_MODERATION {
|
|
NdisNicSwitchVPortInterruptModerationUndefined = 0,
|
|
NdisNicSwitchVPortInterruptModerationAdaptive = 1,
|
|
NdisNicSwitchVPortInterruptModerationOff = 2,
|
|
NdisNicSwitchVPortInterruptModerationLow = 100,
|
|
NdisNicSwitchVPortInterruptModerationMedium = 200,
|
|
NdisNicSwitchVPortInterruptModerationHigh = 300,
|
|
} NDIS_NIC_SWITCH_VPORT_INTERRUPT_MODERATION, *PNDIS_NIC_SWITCH_VPORT_INTERRUPT_MODERATION;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_VPORT_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_NIC_SWITCH_ID SwitchId;
|
|
NDIS_NIC_SWITCH_VPORT_ID VPortId;
|
|
NDIS_VPORT_NAME VPortName;
|
|
NDIS_SRIOV_FUNCTION_ID AttachedFunctionId;
|
|
ULONG NumQueuePairs;
|
|
NDIS_NIC_SWITCH_VPORT_INTERRUPT_MODERATION InterruptModeration;
|
|
NDIS_NIC_SWITCH_VPORT_STATE VPortState;
|
|
GROUP_AFFINITY ProcessorAffinity;
|
|
ULONG LookaheadSize;
|
|
} NDIS_NIC_SWITCH_VPORT_PARAMETERS, *PNDIS_NIC_SWITCH_VPORT_PARAMETERS;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_DELETE_VPORT_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_NIC_SWITCH_VPORT_ID VPortId;
|
|
} NDIS_NIC_SWITCH_DELETE_VPORT_PARAMETERS, *PNDIS_NIC_SWITCH_DELETE_VPORT_PARAMETERS;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_VPORT_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_NIC_SWITCH_VPORT_ID VPortId;
|
|
ULONG Flags;
|
|
NDIS_NIC_SWITCH_ID SwitchId;
|
|
NDIS_VPORT_NAME VPortName;
|
|
NDIS_SRIOV_FUNCTION_ID AttachedFunctionId;
|
|
ULONG NumQueuePairs;
|
|
NDIS_NIC_SWITCH_VPORT_INTERRUPT_MODERATION InterruptModeration;
|
|
NDIS_NIC_SWITCH_VPORT_STATE VPortState;
|
|
GROUP_AFFINITY ProcessorAffinity;
|
|
ULONG LookaheadSize;
|
|
ULONG NumFilters;
|
|
} NDIS_NIC_SWITCH_VPORT_INFO, *PNDIS_NIC_SWITCH_VPORT_INFO;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_VPORT_INFO_ARRAY {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_NIC_SWITCH_ID SwitchId;
|
|
NDIS_SRIOV_FUNCTION_ID AttachedFunctionId;
|
|
ULONG FirstElementOffset;
|
|
ULONG NumElements;
|
|
ULONG ElementSize;
|
|
} NDIS_NIC_SWITCH_VPORT_INFO_ARRAY, *PNDIS_NIC_SWITCH_VPORT_INFO_ARRAY;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_VF_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_NIC_SWITCH_ID SwitchId;
|
|
NDIS_VM_NAME VMName;
|
|
NDIS_VM_FRIENDLYNAME VMFriendlyName;
|
|
NDIS_SWITCH_NIC_NAME NicName;
|
|
USHORT MacAddressLength;
|
|
UCHAR PermanentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
|
|
UCHAR CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
|
|
NDIS_SRIOV_FUNCTION_ID VFId;
|
|
NDIS_VF_RID RequestorId;
|
|
} NDIS_NIC_SWITCH_VF_PARAMETERS, *PNDIS_NIC_SWITCH_VF_PARAMETERS;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_FREE_VF_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SRIOV_FUNCTION_ID VFId;
|
|
} NDIS_NIC_SWITCH_FREE_VF_PARAMETERS, *PNDIS_NIC_SWITCH_FREE_VF_PARAMETERS;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_VF_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_NIC_SWITCH_ID SwitchId;
|
|
NDIS_VM_NAME VMName;
|
|
NDIS_VM_FRIENDLYNAME VMFriendlyName;
|
|
NDIS_SWITCH_NIC_NAME NicName;
|
|
USHORT MacAddressLength;
|
|
UCHAR PermanentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
|
|
UCHAR CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
|
|
NDIS_SRIOV_FUNCTION_ID VFId;
|
|
NDIS_VF_RID RequestorId;
|
|
} NDIS_NIC_SWITCH_VF_INFO, *PNDIS_NIC_SWITCH_VF_INFO;
|
|
|
|
typedef struct _NDIS_NIC_SWITCH_VF_INFO_ARRAY {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_NIC_SWITCH_ID SwitchId;
|
|
ULONG FirstElementOffset;
|
|
ULONG NumElements;
|
|
ULONG ElementSize;
|
|
} NDIS_NIC_SWITCH_VF_INFO_ARRAY, *PNDIS_NIC_SWITCH_VF_INFO_ARRAY;
|
|
|
|
typedef struct _NDIS_SRIOV_CAPABILITIES {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG SriovCapabilities;
|
|
} NDIS_SRIOV_CAPABILITIES, *PNDIS_SRIOV_CAPABILITIES;
|
|
|
|
typedef struct _NDIS_SRIOV_READ_VF_CONFIG_SPACE_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_SRIOV_FUNCTION_ID VFId;
|
|
ULONG Offset;
|
|
ULONG Length;
|
|
ULONG BufferOffset;
|
|
} NDIS_SRIOV_READ_VF_CONFIG_SPACE_PARAMETERS, *PNDIS_SRIOV_READ_VF_CONFIG_SPACE_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SRIOV_WRITE_VF_CONFIG_SPACE_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_SRIOV_FUNCTION_ID VFId;
|
|
ULONG Offset;
|
|
ULONG Length;
|
|
ULONG BufferOffset;
|
|
} NDIS_SRIOV_WRITE_VF_CONFIG_SPACE_PARAMETERS, *PNDIS_SRIOV_WRITE_VF_CONFIG_SPACE_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SRIOV_READ_VF_CONFIG_BLOCK_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_SRIOV_FUNCTION_ID VFId;
|
|
ULONG BlockId;
|
|
ULONG Length;
|
|
ULONG BufferOffset;
|
|
} NDIS_SRIOV_READ_VF_CONFIG_BLOCK_PARAMETERS, *PNDIS_SRIOV_READ_VF_CONFIG_BLOCK_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_SRIOV_FUNCTION_ID VFId;
|
|
ULONG BlockId;
|
|
ULONG Length;
|
|
ULONG BufferOffset;
|
|
} NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS, *PNDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SRIOV_RESET_VF_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_SRIOV_FUNCTION_ID VFId;
|
|
} NDIS_SRIOV_RESET_VF_PARAMETERS, *PNDIS_SRIOV_RESET_VF_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SRIOV_SET_VF_POWER_STATE_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_SRIOV_FUNCTION_ID VFId;
|
|
NDIS_DEVICE_POWER_STATE PowerState;
|
|
BOOLEAN WakeEnable;
|
|
} NDIS_SRIOV_SET_VF_POWER_STATE_PARAMETERS, *PNDIS_SRIOV_SET_VF_POWER_STATE_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SRIOV_CONFIG_STATE_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG BlockId;
|
|
ULONG Length;
|
|
} NDIS_SRIOV_CONFIG_STATE_PARAMETERS, *PNDIS_SRIOV_CONFIG_STATE_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SRIOV_VF_VENDOR_DEVICE_ID_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_SRIOV_FUNCTION_ID VFId;
|
|
USHORT VendorId;
|
|
USHORT DeviceId;
|
|
} NDIS_SRIOV_VF_VENDOR_DEVICE_ID_INFO, *PNDIS_SRIOV_VF_VENDOR_DEVICE_ID_INFO;
|
|
|
|
typedef struct _NDIS_SRIOV_PROBED_BARS_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG BaseRegisterValuesOffset;
|
|
} NDIS_SRIOV_PROBED_BARS_INFO, *PNDIS_SRIOV_PROBED_BARS_INFO;
|
|
|
|
typedef struct _NDIS_RECEIVE_FILTER_MOVE_FILTER_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_RECEIVE_FILTER_ID FilterId;
|
|
NDIS_RECEIVE_QUEUE_ID SourceQueueId;
|
|
NDIS_NIC_SWITCH_VPORT_ID SourceVPortId;
|
|
NDIS_RECEIVE_QUEUE_ID DestQueueId;
|
|
NDIS_NIC_SWITCH_VPORT_ID DestVPortId;
|
|
} NDIS_RECEIVE_FILTER_MOVE_FILTER_PARAMETERS, *PNDIS_RECEIVE_FILTER_MOVE_FILTER_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SRIOV_BAR_RESOURCES_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_SRIOV_FUNCTION_ID VFId;
|
|
USHORT BarIndex;
|
|
ULONG BarResourcesOffset;
|
|
} NDIS_SRIOV_BAR_RESOURCES_INFO, *PNDIS_SRIOV_BAR_RESOURCES_INFO;
|
|
|
|
typedef struct _NDIS_SRIOV_PF_LUID_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
LUID Luid;
|
|
} NDIS_SRIOV_PF_LUID_INFO, *PNDIS_SRIOV_PF_LUID_INFO;
|
|
|
|
typedef struct _NDIS_SRIOV_VF_SERIAL_NUMBER_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG SerialNumber;
|
|
} NDIS_SRIOV_VF_SERIAL_NUMBER_INFO, *PNDIS_SRIOV_VF_SERIAL_NUMBER_INFO;
|
|
|
|
typedef struct _NDIS_SRIOV_VF_INVALIDATE_CONFIG_BLOCK_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG64 BlockMask;
|
|
} NDIS_SRIOV_VF_INVALIDATE_CONFIG_BLOCK_INFO, *PNDIS_SRIOV_VF_INVALIDATE_CONFIG_BLOCK_INFO;
|
|
|
|
typedef GUID NDIS_SWITCH_OBJECT_INSTANCE_ID, *PNDIS_SWITCH_OBJECT_INSTANCE_ID;
|
|
typedef GUID NDIS_SWITCH_OBJECT_ID, *PNDIS_SWITCH_OBJECT_ID;
|
|
typedef USHORT NDIS_SWITCH_OBJECT_VERSION, *PNDIS_SWITCH_OBJECT_VERSION;
|
|
typedef USHORT NDIS_SWITCH_OBJECT_SERIALIZATION_VERSION, *PNDIS_SWITCH_OBJECT_SERIALIZATION_VERSION;
|
|
#ifndef _NDIS_SWITCH_PORT_ID
|
|
#define _NDIS_SWITCH_PORT_ID NDIS_SWITCH_PORT_ID
|
|
typedef UINT32 NDIS_SWITCH_PORT_ID, *PNDIS_SWITCH_PORT_ID;
|
|
typedef USHORT NDIS_SWITCH_NIC_INDEX, *PNDIS_SWITCH_NIC_INDEX;
|
|
#endif
|
|
|
|
typedef enum _NDIS_SWITCH_PORT_PROPERTY_TYPE {
|
|
NdisSwitchPortPropertyTypeUndefined,
|
|
NdisSwitchPortPropertyTypeCustom,
|
|
NdisSwitchPortPropertyTypeSecurity,
|
|
NdisSwitchPortPropertyTypeVlan,
|
|
NdisSwitchPortPropertyTypeProfile,
|
|
NdisSwitchPortPropertyTypeMaximum
|
|
} NDIS_SWITCH_PORT_PROPERTY_TYPE, *PNDIS_SWITCH_PORT_PROPERTY_TYPE;
|
|
|
|
typedef struct _NDIS_SWITCH_PORT_PROPERTY_SECURITY {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
BOOLEAN AllowMacSpoofing;
|
|
BOOLEAN AllowIeeePriorityTag;
|
|
UINT32 VirtualSubnetId;
|
|
BOOLEAN AllowTeaming;
|
|
} NDIS_SWITCH_PORT_PROPERTY_SECURITY, *PNDIS_SWITCH_PORT_PROPERTY_SECURITY;
|
|
|
|
typedef enum _NDIS_SWITCH_PORT_VLAN_MODE {
|
|
NdisSwitchPortVlanModeUnknown = 0,
|
|
NdisSwitchPortVlanModeAccess = 1,
|
|
NdisSwitchPortVlanModeTrunk = 2,
|
|
NdisSwitchPortVlanModePrivate = 3,
|
|
NdisSwitchPortVlanModeMax = 4
|
|
} NDIS_SWITCH_PORT_VLAN_MODE, *PNDIS_SWITCH_PORT_VLAN_MODE;
|
|
|
|
typedef enum _NDIS_SWITCH_PORT_PVLAN_MODE {
|
|
NdisSwitchPortPvlanModeUndefined = 0,
|
|
NdisSwitchPortPvlanModeIsolated,
|
|
NdisSwitchPortPvlanModeCommunity,
|
|
NdisSwitchPortPvlanModePromiscuous
|
|
} NDIS_SWITCH_PORT_PVLAN_MODE, *PNDIS_SWITCH_PORT_PVLAN_MODE;
|
|
|
|
typedef struct _NDIS_SWITCH_PORT_PROPERTY_VLAN {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_PORT_VLAN_MODE OperationMode;
|
|
__C89_NAMELESS union {
|
|
struct {
|
|
UINT16 AccessVlanId;
|
|
UINT16 NativeVlanId;
|
|
UINT64 PruneVlanIdArray[64];
|
|
UINT64 TrunkVlanIdArray[64];
|
|
} VlanProperties;
|
|
struct {
|
|
NDIS_SWITCH_PORT_PVLAN_MODE PvlanMode;
|
|
UINT16 PrimaryVlanId;
|
|
__C89_NAMELESS union {
|
|
UINT16 SecondaryVlanId;
|
|
UINT64 SecondaryVlanIdArray[64];
|
|
};
|
|
} PvlanProperties;
|
|
};
|
|
} NDIS_SWITCH_PORT_PROPERTY_VLAN, *PNDIS_SWITCH_PORT_PROPERTY_VLAN;
|
|
|
|
typedef struct _NDIS_SWITCH_PORT_PROPERTY_PROFILE {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_PORT_PROPERTY_PROFILE_NAME ProfileName;
|
|
GUID ProfileId;
|
|
NDIS_VENDOR_NAME VendorName;
|
|
GUID VendorId;
|
|
UINT32 ProfileData;
|
|
GUID NetCfgInstanceId;
|
|
struct {
|
|
UINT32 PciSegmentNumber:16;
|
|
UINT32 PciBusNumber:8;
|
|
UINT32 PciDeviceNumber:5;
|
|
UINT32 PciFunctionNumber:3;
|
|
} PciLocation;
|
|
UINT32 CdnLabelId;
|
|
NDIS_SWITCH_PORT_PROPERTY_PROFILE_CDN_LABEL CdnLabel;
|
|
} NDIS_SWITCH_PORT_PROPERTY_PROFILE, *PNDIS_SWITCH_PORT_PROPERTY_PROFILE;
|
|
|
|
typedef struct _NDIS_SWITCH_PORT_PROPERTY_CUSTOM {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG PropertyBufferLength;
|
|
ULONG PropertyBufferOffset;
|
|
} NDIS_SWITCH_PORT_PROPERTY_CUSTOM, *PNDIS_SWITCH_PORT_PROPERTY_CUSTOM;
|
|
|
|
typedef struct _NDIS_SWITCH_PORT_PROPERTY_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_PORT_ID PortId;
|
|
NDIS_SWITCH_PORT_PROPERTY_TYPE PropertyType;
|
|
NDIS_SWITCH_OBJECT_ID PropertyId;
|
|
NDIS_SWITCH_OBJECT_VERSION PropertyVersion;
|
|
NDIS_SWITCH_OBJECT_SERIALIZATION_VERSION SerializationVersion;
|
|
NDIS_SWITCH_OBJECT_INSTANCE_ID PropertyInstanceId;
|
|
ULONG PropertyBufferLength;
|
|
ULONG PropertyBufferOffset;
|
|
ULONG Reserved;
|
|
} NDIS_SWITCH_PORT_PROPERTY_PARAMETERS, *PNDIS_SWITCH_PORT_PROPERTY_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_PORT_ID PortId;
|
|
NDIS_SWITCH_PORT_PROPERTY_TYPE PropertyType;
|
|
NDIS_SWITCH_OBJECT_ID PropertyId;
|
|
NDIS_SWITCH_OBJECT_INSTANCE_ID PropertyInstanceId;
|
|
} NDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS, *PNDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SWITCH_PORT_PROPERTY_ENUM_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_PORT_ID PortId;
|
|
NDIS_SWITCH_PORT_PROPERTY_TYPE PropertyType;
|
|
NDIS_SWITCH_OBJECT_ID PropertyId;
|
|
NDIS_SWITCH_OBJECT_SERIALIZATION_VERSION SerializationVersion;
|
|
ULONG FirstPropertyOffset;
|
|
ULONG NumProperties;
|
|
USHORT Reserved;
|
|
} NDIS_SWITCH_PORT_PROPERTY_ENUM_PARAMETERS, *PNDIS_SWITCH_PORT_PROPERTY_ENUM_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SWITCH_PORT_PROPERTY_ENUM_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_OBJECT_VERSION PropertyVersion;
|
|
NDIS_SWITCH_OBJECT_INSTANCE_ID PropertyInstanceId;
|
|
ULONG QwordAlignedPropertyBufferLength;
|
|
ULONG PropertyBufferLength;
|
|
ULONG PropertyBufferOffset;
|
|
} NDIS_SWITCH_PORT_PROPERTY_ENUM_INFO, *PNDIS_SWITCH_PORT_PROPERTY_ENUM_INFO;
|
|
|
|
typedef enum _NDIS_SWITCH_PORT_FEATURE_STATUS_TYPE {
|
|
NdisSwitchPortFeatureStatusTypeUndefined,
|
|
NdisSwitchPortFeatureStatusTypeCustom,
|
|
NdisSwitchPortFeatureStatusTypeMaximum
|
|
} NDIS_SWITCH_PORT_FEATURE_STATUS_TYPE, *PNDIS_SWITCH_PORT_FEATURE_STATUS_TYPE;
|
|
|
|
typedef struct _NDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_PORT_ID PortId;
|
|
NDIS_SWITCH_PORT_FEATURE_STATUS_TYPE FeatureStatusType;
|
|
NDIS_SWITCH_OBJECT_ID FeatureStatusId;
|
|
NDIS_SWITCH_OBJECT_VERSION FeatureStatusVersion;
|
|
NDIS_SWITCH_OBJECT_SERIALIZATION_VERSION SerializationVersion;
|
|
NDIS_SWITCH_OBJECT_INSTANCE_ID FeatureStatusInstanceId;
|
|
ULONG FeatureStatusBufferLength;
|
|
ULONG FeatureStatusBufferOffset;
|
|
ULONG Reserved;
|
|
} NDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS, *PNDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SWITCH_PORT_FEATURE_STATUS_CUSTOM {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG FeatureStatusBufferLength;
|
|
ULONG FeatureStatusBufferOffset;
|
|
} NDIS_SWITCH_PORT_FEATURE_STATUS_CUSTOM, *PNDIS_SWITCH_PORT_FEATURE_STATUS_CUSTOM;
|
|
|
|
typedef enum _NDIS_SWITCH_PROPERTY_TYPE {
|
|
NdisSwitchPropertyTypeUndefined,
|
|
NdisSwitchPropertyTypeCustom,
|
|
NdisSwitchPropertyTypeMaximum
|
|
} NDIS_SWITCH_PROPERTY_TYPE, *PNDIS_SWITCH_PROPERTY_TYPE;
|
|
|
|
typedef struct _NDIS_SWITCH_PROPERTY_CUSTOM {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG PropertyBufferLength;
|
|
ULONG PropertyBufferOffset;
|
|
} NDIS_SWITCH_PROPERTY_CUSTOM, *PNDIS_SWITCH_PROPERTY_CUSTOM;
|
|
|
|
typedef struct _NDIS_SWITCH_PROPERTY_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_PROPERTY_TYPE PropertyType;
|
|
NDIS_SWITCH_OBJECT_ID PropertyId;
|
|
NDIS_SWITCH_OBJECT_VERSION PropertyVersion;
|
|
NDIS_SWITCH_OBJECT_SERIALIZATION_VERSION SerializationVersion;
|
|
NDIS_SWITCH_OBJECT_INSTANCE_ID PropertyInstanceId;
|
|
ULONG PropertyBufferLength;
|
|
ULONG PropertyBufferOffset;
|
|
} NDIS_SWITCH_PROPERTY_PARAMETERS, *PNDIS_SWITCH_PROPERTY_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SWITCH_PROPERTY_DELETE_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_PROPERTY_TYPE PropertyType;
|
|
NDIS_SWITCH_OBJECT_ID PropertyId;
|
|
NDIS_SWITCH_OBJECT_INSTANCE_ID PropertyInstanceId;
|
|
} NDIS_SWITCH_PROPERTY_DELETE_PARAMETERS, *PNDIS_SWITCH_PROPERTY_DELETE_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SWITCH_PROPERTY_ENUM_INFO {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_OBJECT_INSTANCE_ID PropertyInstanceId;
|
|
NDIS_SWITCH_OBJECT_VERSION PropertyVersion;
|
|
ULONG QwordAlignedPropertyBufferLength;
|
|
ULONG PropertyBufferLength;
|
|
ULONG PropertyBufferOffset;
|
|
} NDIS_SWITCH_PROPERTY_ENUM_INFO, *PNDIS_SWITCH_PROPERTY_ENUM_INFO;
|
|
|
|
typedef struct _NDIS_SWITCH_PROPERTY_ENUM_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_PROPERTY_TYPE PropertyType;
|
|
NDIS_SWITCH_OBJECT_ID PropertyId;
|
|
NDIS_SWITCH_OBJECT_SERIALIZATION_VERSION SerializationVersion;
|
|
ULONG FirstPropertyOffset;
|
|
ULONG NumProperties;
|
|
} NDIS_SWITCH_PROPERTY_ENUM_PARAMETERS, *PNDIS_SWITCH_PROPERTY_ENUM_PARAMETERS;
|
|
|
|
typedef enum _NDIS_SWITCH_FEATURE_STATUS_TYPE {
|
|
NdisSwitchFeatureStatusTypeUndefined,
|
|
NdisSwitchFeatureStatusTypeCustom,
|
|
NdisSwitchFeatureStatusTypeMaximum
|
|
} NDIS_SWITCH_FEATURE_STATUS_TYPE, *PNDIS_SWITCH_FEATURE_STATUS_TYPE;
|
|
|
|
typedef struct _NDIS_SWITCH_FEATURE_STATUS_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_FEATURE_STATUS_TYPE FeatureStatusType;
|
|
NDIS_SWITCH_OBJECT_ID FeatureStatusId;
|
|
NDIS_SWITCH_OBJECT_INSTANCE_ID FeatureStatusInstanceId;
|
|
NDIS_SWITCH_OBJECT_VERSION FeatureStatusVersion;
|
|
NDIS_SWITCH_OBJECT_SERIALIZATION_VERSION SerializationVersion;
|
|
ULONG FeatureStatusBufferOffset;
|
|
ULONG FeatureStatusBufferLength;
|
|
} NDIS_SWITCH_FEATURE_STATUS_PARAMETERS, *PNDIS_SWITCH_FEATURE_STATUS_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SWITCH_FEATURE_STATUS_CUSTOM {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
ULONG FeatureStatusCustomBufferLength;
|
|
ULONG FeatureStatusCustomBufferOffset;
|
|
} NDIS_SWITCH_FEATURE_STATUS_CUSTOM, *PNDIS_SWITCH_FEATURE_STATUS_CUSTOM;
|
|
|
|
typedef struct _NDIS_SWITCH_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_NAME SwitchName;
|
|
NDIS_SWITCH_FRIENDLYNAME SwitchFriendlyName;
|
|
UINT32 NumSwitchPorts;
|
|
BOOLEAN IsActive;
|
|
} NDIS_SWITCH_PARAMETERS, *PNDIS_SWITCH_PARAMETERS;
|
|
|
|
typedef enum _NDIS_SWITCH_PORT_TYPE {
|
|
NdisSwitchPortTypeGeneric = 0,
|
|
NdisSwitchPortTypeExternal = 1,
|
|
NdisSwitchPortTypeSynthetic = 2,
|
|
NdisSwitchPortTypeEmulated = 3,
|
|
NdisSwitchPortTypeInternal = 4
|
|
} NDIS_SWITCH_PORT_TYPE;
|
|
|
|
typedef enum _NDIS_SWITCH_PORT_STATE {
|
|
NdisSwitchPortStateUnknown = 0,
|
|
NdisSwitchPortStateCreated = 1,
|
|
NdisSwitchPortStateTeardown = 2,
|
|
NdisSwitchPortStateDeleted = 3
|
|
} NDIS_SWITCH_PORT_STATE;
|
|
|
|
typedef struct _NDIS_SWITCH_PORT_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_PORT_ID PortId;
|
|
NDIS_SWITCH_PORT_NAME PortName;
|
|
NDIS_SWITCH_PORT_FRIENDLYNAME PortFriendlyName;
|
|
NDIS_SWITCH_PORT_TYPE PortType;
|
|
BOOLEAN IsValidationPort;
|
|
NDIS_SWITCH_PORT_STATE PortState;
|
|
} NDIS_SWITCH_PORT_PARAMETERS, *PNDIS_SWITCH_PORT_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SWITCH_PORT_ARRAY {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
USHORT FirstElementOffset;
|
|
ULONG NumElements;
|
|
ULONG ElementSize;
|
|
} NDIS_SWITCH_PORT_ARRAY, *PNDIS_SWITCH_PORT_ARRAY;
|
|
|
|
typedef enum _NDIS_SWITCH_NIC_TYPE {
|
|
NdisSwitchNicTypeExternal = 0,
|
|
NdisSwitchNicTypeSynthetic = 1,
|
|
NdisSwitchNicTypeEmulated = 2,
|
|
NdisSwitchNicTypeInternal = 3
|
|
} NDIS_SWITCH_NIC_TYPE;
|
|
|
|
typedef enum _NDIS_SWITCH_NIC_STATE {
|
|
NdisSwitchNicStateUnknown = 0,
|
|
NdisSwitchNicStateCreated = 1,
|
|
NdisSwitchNicStateConnected = 2,
|
|
NdisSwitchNicStateDisconnected = 3,
|
|
NdisSwitchNicStateDeleted = 4
|
|
} NDIS_SWITCH_NIC_STATE;
|
|
|
|
typedef struct _NDIS_SWITCH_NIC_PARAMETERS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_NIC_NAME NicName;
|
|
NDIS_SWITCH_NIC_FRIENDLYNAME NicFriendlyName;
|
|
NDIS_SWITCH_PORT_ID PortId;
|
|
NDIS_SWITCH_NIC_INDEX NicIndex;
|
|
NDIS_SWITCH_NIC_TYPE NicType;
|
|
NDIS_SWITCH_NIC_STATE NicState;
|
|
NDIS_VM_NAME VmName;
|
|
NDIS_VM_FRIENDLYNAME VmFriendlyName;
|
|
GUID NetCfgInstanceId;
|
|
ULONG MTU;
|
|
USHORT NumaNodeId;
|
|
UCHAR PermanentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
|
|
UCHAR VMMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
|
|
UCHAR CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
|
|
BOOLEAN VFAssigned;
|
|
} NDIS_SWITCH_NIC_PARAMETERS, *PNDIS_SWITCH_NIC_PARAMETERS;
|
|
|
|
typedef struct _NDIS_SWITCH_NIC_ARRAY {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
USHORT FirstElementOffset;
|
|
ULONG NumElements;
|
|
ULONG ElementSize;
|
|
} NDIS_SWITCH_NIC_ARRAY, *PNDIS_SWITCH_NIC_ARRAY;
|
|
|
|
typedef struct _NDIS_OID_REQUEST NDIS_OID_REQUEST, *PNDIS_OID_REQUEST;
|
|
|
|
typedef struct _NDIS_SWITCH_NIC_OID_REQUEST {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_PORT_ID SourcePortId;
|
|
NDIS_SWITCH_NIC_INDEX SourceNicIndex;
|
|
NDIS_SWITCH_PORT_ID DestinationPortId;
|
|
NDIS_SWITCH_NIC_INDEX DestinationNicIndex;
|
|
PNDIS_OID_REQUEST OidRequest;
|
|
} NDIS_SWITCH_NIC_OID_REQUEST, *PNDIS_SWITCH_NIC_OID_REQUEST;
|
|
|
|
typedef struct _NDIS_SWITCH_NIC_SAVE_STATE {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG Flags;
|
|
NDIS_SWITCH_PORT_ID PortId;
|
|
NDIS_SWITCH_NIC_INDEX NicIndex;
|
|
GUID ExtensionId;
|
|
NDIS_SWITCH_EXTENSION_FRIENDLYNAME ExtensionFriendlyName;
|
|
GUID FeatureClassId;
|
|
USHORT SaveDataSize;
|
|
USHORT SaveDataOffset;
|
|
} NDIS_SWITCH_NIC_SAVE_STATE, *PNDIS_SWITCH_NIC_SAVE_STATE;
|
|
#endif
|
|
|
|
typedef struct _NDIS_PORT_STATE {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_MEDIA_CONNECT_STATE MediaConnectState;
|
|
ULONG64 XmitLinkSpeed;
|
|
ULONG64 RcvLinkSpeed;
|
|
NET_IF_DIRECTION_TYPE Direction;
|
|
NDIS_PORT_CONTROL_STATE SendControlState;
|
|
NDIS_PORT_CONTROL_STATE RcvControlState;
|
|
NDIS_PORT_AUTHORIZATION_STATE SendAuthorizationState;
|
|
NDIS_PORT_AUTHORIZATION_STATE RcvAuthorizationState;
|
|
ULONG Flags;
|
|
} NDIS_PORT_STATE, *PNDIS_PORT_STATE;
|
|
|
|
typedef struct _NDIS_PORT_CHARACTERISTICS {
|
|
NDIS_OBJECT_HEADER Header;
|
|
NDIS_PORT_NUMBER PortNumber;
|
|
ULONG Flags;
|
|
NDIS_PORT_TYPE Type;
|
|
NDIS_MEDIA_CONNECT_STATE MediaConnectState;
|
|
ULONG64 XmitLinkSpeed;
|
|
ULONG64 RcvLinkSpeed;
|
|
NET_IF_DIRECTION_TYPE Direction;
|
|
NDIS_PORT_CONTROL_STATE SendControlState;
|
|
NDIS_PORT_CONTROL_STATE RcvControlState;
|
|
NDIS_PORT_AUTHORIZATION_STATE SendAuthorizationState;
|
|
NDIS_PORT_AUTHORIZATION_STATE RcvAuthorizationState;
|
|
} NDIS_PORT_CHARACTERISTICS, *PNDIS_PORT_CHARACTERISTICS;
|
|
|
|
typedef struct _NDIS_PORT NDIS_PORT, *PNDIS_PORT;
|
|
|
|
struct _NDIS_PORT {
|
|
PNDIS_PORT Next;
|
|
PVOID NdisReserved;
|
|
PVOID MiniportReserved;
|
|
PVOID ProtocolReserved;
|
|
NDIS_PORT_CHARACTERISTICS PortCharacteristics;
|
|
};
|
|
|
|
typedef struct _NDIS_PORT_ARRAY {
|
|
NDIS_OBJECT_HEADER Header;
|
|
ULONG NumberOfPorts;
|
|
ULONG OffsetFirstPort;
|
|
ULONG ElementSize;
|
|
NDIS_PORT_CHARACTERISTICS Ports[1];
|
|
} NDIS_PORT_ARRAY, *PNDIS_PORT_ARRAY;
|
|
#endif
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|
|
#endif
|