?? ntddndis.h
字號:
{ 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;#define OFFLOAD_MAX_SAS 3#define OFFLOAD_INBOUND_SA 0x0001#define OFFLOAD_OUTBOUND_SA 0x0002typedef 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;//// Type to go with OID_GEN_VLAN_ID: the least significant 12 bits are// used as the VLAN ID (VID) per IEEE 802.1Q. Higher order bits are// reserved and must be set to 0.//typedef ULONG NDIS_VLAN_ID;//// Medium the Ndis Driver is running on (OID_GEN_MEDIA_SUPPORTED/ OID_GEN_MEDIA_IN_USE).//typedef enum _NDIS_MEDIUM{ NdisMedium802_3, NdisMedium802_5, NdisMediumFddi, NdisMediumWan, NdisMediumLocalTalk, NdisMediumDix, // defined for convenience, not a real medium NdisMediumArcnetRaw, NdisMediumArcnet878_2, NdisMediumAtm, NdisMediumWirelessWan, NdisMediumIrda, NdisMediumBpc, NdisMediumCoWan, NdisMedium1394, NdisMediumMax // Not a real medium, defined as an upper-bound} NDIS_MEDIUM, *PNDIS_MEDIUM;//// Physical Medium Type definitions. Used with OID_GEN_PHYSICAL_MEDIUM.//typedef enum _NDIS_PHYSICAL_MEDIUM{ NdisPhysicalMediumUnspecified, NdisPhysicalMediumWirelessLan, NdisPhysicalMediumCableModem, NdisPhysicalMediumPhoneLine, NdisPhysicalMediumPowerLine, NdisPhysicalMediumDSL, // includes ADSL and UADSL (G.Lite) NdisPhysicalMediumFibreChannel, NdisPhysicalMedium1394, NdisPhysicalMediumWirelessWan, NdisPhysicalMediumMax // Not a real physical type, defined as an upper-bound} NDIS_PHYSICAL_MEDIUM, *PNDIS_PHYSICAL_MEDIUM;//// Protocol types supported by ndis. These values need to be consistent with ADDRESS_TYPE_XXX defined in TDI.H//#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//// The following is used with OID_GEN_TRANSPORT_HEADER_OFFSET to indicate the length of the layer-2 header// for packets sent by a particular protocol.//typedef struct _TRANSPORT_HEADER_OFFSET{ USHORT ProtocolType; // The protocol that is sending this OID (NDIS_PROTOCOL_ID_XXX above) USHORT HeaderOffset; // The header offset} TRANSPORT_HEADER_OFFSET, *PTRANSPORT_HEADER_OFFSET;//// The structures below need to be consistent with TRANSPORT_ADDRESS structures in TDI.H//typedef struct _NETWORK_ADDRESS{ USHORT AddressLength; // length in bytes of Address[] in this USHORT AddressType; // type of this address (NDIS_PROTOCOL_ID_XXX above) UCHAR Address[1]; // actually AddressLength bytes long} NETWORK_ADDRESS, *PNETWORK_ADDRESS;//// The following is used with OID_GEN_NETWORK_LAYER_ADDRESSES to set network layer addresses on an interface//typedef struct _NETWORK_ADDRESS_LIST{ LONG AddressCount; // number of addresses following USHORT AddressType; // type of this address (NDIS_PROTOCOL_ID_XXX above) NETWORK_ADDRESS Address[1]; // actually AddressCount elements long} NETWORK_ADDRESS_LIST, *PNETWORK_ADDRESS_LIST;//// IP address - This must remain consistent with TDI_ADDRESS_IP in tdi.h//typedef struct _NETWORK_ADDRESS_IP{ USHORT sin_port; ULONG in_addr; UCHAR sin_zero[8];} NETWORK_ADDRESS_IP, *PNETWORK_ADDRESS_IP;#define NETWORK_ADDRESS_LENGTH_IP sizeof (NETWORK_ADDRESS_IP)//// IPX address - This must remain consistent with TDI_ADDRESS_IPX in tdi.h.//typedef struct _NETWORK_ADDRESS_IPX{ ULONG NetworkAddress; UCHAR NodeAddress[6]; USHORT Socket;} NETWORK_ADDRESS_IPX, *PNETWORK_ADDRESS_IPX;#define NETWORK_ADDRESS_LENGTH_IPX sizeof (NETWORK_ADDRESS_IPX)//// Hardware status codes (OID_GEN_HARDWARE_STATUS).//typedef enum _NDIS_HARDWARE_STATUS{ NdisHardwareStatusReady, NdisHardwareStatusInitializing, NdisHardwareStatusReset, NdisHardwareStatusClosing, NdisHardwareStatusNotReady} NDIS_HARDWARE_STATUS, *PNDIS_HARDWARE_STATUS;//// this is the type passed in the OID_GEN_GET_TIME_CAPS request//typedef struct _GEN_GET_TIME_CAPS{ ULONG Flags; // Bits defined below ULONG ClockPrecision;} GEN_GET_TIME_CAPS, *PGEN_GET_TIME_CAPS;#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//// this is the type passed in the OID_GEN_GET_NETCARD_TIME request//typedef struct _GEN_GET_NETCARD_TIME{ ULONGLONG ReadTime;} GEN_GET_NETCARD_TIME, *PGEN_GET_NETCARD_TIME;//// NDIS PnP routines and definitions.//typedef struct _NDIS_PM_PACKET_PATTERN{ ULONG Priority; // Importance of the given pattern. ULONG Reserved; // Context information for transports. ULONG MaskSize; // Size in bytes of the pattern mask. ULONG PatternOffset; // Offset from beginning of this // structure to the pattern bytes. ULONG PatternSize; // Size in bytes of the pattern. ULONG PatternFlags; // Flags (TBD).} NDIS_PM_PACKET_PATTERN, *PNDIS_PM_PACKET_PATTERN;//// The following structure defines the device power states.//typedef enum _NDIS_DEVICE_POWER_STATE{ NdisDeviceStateUnspecified = 0, NdisDeviceStateD0, NdisDeviceStateD1, NdisDeviceStateD2, NdisDeviceStateD3, NdisDeviceStateMaximum} NDIS_DEVICE_POWER_STATE, *PNDIS_DEVICE_POWER_STATE;//// The following structure defines the wake-up capabilities of the device.//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;//// the following flags define the -enabled- wake-up capabilities of the device// passed in the Flags field of NDIS_PNP_CAPABILITIES structure//#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//// This structure defines general PnP capabilities of the miniport driver.//typedef struct _NDIS_PNP_CAPABILITIES{ ULONG Flags; NDIS_PM_WAKE_UP_CAPABILITIES WakeUpCapabilities;} NDIS_PNP_CAPABILITIES, *PNDIS_PNP_CAPABILITIES;//// Defines the attachment types for FDDI (OID_FDDI_ATTACHMENT_TYPE).//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;//// Defines the ring management states for FDDI (OID_FDDI_RING_MGT_STATE).//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;//// Defines the Lconnection state for FDDI (OID_FDDI_LCONNECTION_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;//// Defines
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -