📄 ntddndish.cs
字号:
public enum NDIS_WAN_HEADER_FORMAT
{
NdisWanHeaderNative, // src/dest based on subtype, followed by NLPID
NdisWanHeaderEthernet // emulation of ethernet header
};
//
// Defines the line quality on a WAN line (OID_WAN_QUALITY_OF_SERVICE).
//
public enum NDIS_WAN_QUALITY
{
NdisWanRaw,
NdisWanErrorControl,
NdisWanReliable
};
//
// Defines the state of a token-ring adapter (OID_802_5_CURRENT_RING_STATE).
//
public enum NDIS_802_5_RING_STATE
{
NdisRingStateOpened = 1,
NdisRingStateClosed,
NdisRingStateOpening,
NdisRingStateClosing,
NdisRingStateOpenFailure,
NdisRingStateRingFailure
};
//
// Defines the state of the LAN media
//
public enum NDIS_MEDIA_STATE
{
NdisMediaStateConnected,
NdisMediaStateDisconnected
};
public static string GetMediaStateString( int Value )
{
string Tmp = "";
switch( Value )
{
case (int) NDIS_MEDIA_STATE.NdisMediaStateConnected :
Tmp = "Media is connected";
break;
case (int) NDIS_MEDIA_STATE.NdisMediaStateDisconnected :
Tmp = "Media is disconnected";
break;
}
return Tmp;
}
// The following structure is used to query OID_GEN_CO_LINK_SPEED and
// OID_GEN_CO_MINIMUM_LINK_SPEED. The first OID will return the current
// link speed of the adapter. The second will return the minimum link speed
// the adapter is capable of.
//
public struct NDIS_CO_LINK_SPEED
{
public ulong Outbound;
public ulong Inbound;
};
//
// Ndis Packet Filter Bits (OID_GEN_CURRENT_PACKET_FILTER).
//
public static uint NDIS_PACKET_TYPE_DIRECTED = 0x0001;
public static uint NDIS_PACKET_TYPE_MULTICAST = 0x0002;
public static uint NDIS_PACKET_TYPE_ALL_MULTICAST = 0x0004;
public static uint NDIS_PACKET_TYPE_BROADCAST = 0x0008;
public static uint NDIS_PACKET_TYPE_SOURCE_ROUTING = 0x0010;
public static uint NDIS_PACKET_TYPE_PROMISCUOUS = 0x0020;
public static uint NDIS_PACKET_TYPE_SMT = 0x0040;
public static uint NDIS_PACKET_TYPE_ALL_LOCAL = 0x0080;
public static uint NDIS_PACKET_TYPE_MAC_FRAME = 0x8000;
public static uint NDIS_PACKET_TYPE_FUNCTIONAL = 0x4000;
public static uint NDIS_PACKET_TYPE_ALL_FUNCTIONAL = 0x2000;
public static uint NDIS_PACKET_TYPE_GROUP = 0x1000;
public static string GetCurrentPacketFilterString( int Value )
{
string Tmp = "";
if( ( Value & NDIS_PACKET_TYPE_DIRECTED ) == NDIS_PACKET_TYPE_DIRECTED )
Tmp += "Directed,";
if( ( Value & NDIS_PACKET_TYPE_MULTICAST ) == NDIS_PACKET_TYPE_MULTICAST )
Tmp += "Multicast,";
if( ( Value & NDIS_PACKET_TYPE_ALL_MULTICAST ) == NDIS_PACKET_TYPE_ALL_MULTICAST )
Tmp += "All multicast,";
if( ( Value & NDIS_PACKET_TYPE_BROADCAST ) == NDIS_PACKET_TYPE_BROADCAST )
Tmp += "Broadcast,";
if( ( Value & NDIS_PACKET_TYPE_SOURCE_ROUTING ) == NDIS_PACKET_TYPE_SOURCE_ROUTING )
Tmp += "Source routing,";
if( ( Value & NDIS_PACKET_TYPE_PROMISCUOUS ) == NDIS_PACKET_TYPE_PROMISCUOUS )
Tmp += "Promiscous,";
if( ( Value & NDIS_PACKET_TYPE_SMT ) == NDIS_PACKET_TYPE_SMT )
Tmp += "Smt,";
if( ( Value & NDIS_PACKET_TYPE_ALL_LOCAL ) == NDIS_PACKET_TYPE_ALL_LOCAL )
Tmp += "All local,";
if( ( Value & NDIS_PACKET_TYPE_MAC_FRAME ) == NDIS_PACKET_TYPE_MAC_FRAME )
Tmp += "Mac frame,";
if( ( Value & NDIS_PACKET_TYPE_FUNCTIONAL ) == NDIS_PACKET_TYPE_FUNCTIONAL )
Tmp += "Functional,";
if( ( Value & NDIS_PACKET_TYPE_ALL_FUNCTIONAL ) == NDIS_PACKET_TYPE_ALL_FUNCTIONAL )
Tmp += "All functional,";
if( ( Value & NDIS_PACKET_TYPE_GROUP ) == NDIS_PACKET_TYPE_GROUP )
Tmp += "Group,";
if( Tmp.Length > 0 )
Tmp = Tmp.Substring( 0 , Tmp.Length - 1 );
return Tmp;
}
//
// Ndis Token-Ring Ring Status Codes (OID_802_5_CURRENT_RING_STATUS).
//
public static uint NDIS_RING_SIGNAL_LOSS = 0x00008000;
public static uint NDIS_RING_HARD_ERROR = 0x00004000;
public static uint NDIS_RING_SOFT_ERROR = 0x00002000;
public static uint NDIS_RING_TRANSMIT_BEACON = 0x00001000;
public static uint NDIS_RING_LOBE_WIRE_FAULT = 0x00000800;
public static uint NDIS_RING_AUTO_REMOVAL_ERROR = 0x00000400;
public static uint NDIS_RING_REMOVE_RECEIVED = 0x00000200;
public static uint NDIS_RING_COUNTER_OVERFLOW = 0x00000100;
public static uint NDIS_RING_SINGLE_STATION = 0x00000080;
public static uint NDIS_RING_RING_RECOVERY = 0x00000040;
//
// Ndis protocol option bits (OID_GEN_PROTOCOL_OPTIONS).
//
public static uint NDIS_PROT_OPTION_ESTIMATED_LENGTH = 0x00000001;
public static uint NDIS_PROT_OPTION_NO_LOOPBACK = 0x00000002;
public static uint NDIS_PROT_OPTION_NO_RSVD_ON_RCVPKT = 0x00000004;
public static string GetProtocolOptionsString( int Value )
{
string Tmp = "";
if( ( Value & NDIS_PROT_OPTION_ESTIMATED_LENGTH ) == NDIS_PROT_OPTION_ESTIMATED_LENGTH )
Tmp += "Estimated length,";
if( ( Value & NDIS_PROT_OPTION_NO_LOOPBACK ) == NDIS_PROT_OPTION_NO_LOOPBACK )
Tmp += "No loopback,";
if( ( Value & NDIS_PROT_OPTION_NO_RSVD_ON_RCVPKT ) == NDIS_PROT_OPTION_NO_RSVD_ON_RCVPKT )
Tmp += "No reserved on receive packet,";
if( Tmp.Length > 0 )
Tmp = Tmp.Substring( 0 , Tmp.Length - 1 );
return Tmp;
}
//
// Ndis MAC option bits (OID_GEN_MAC_OPTIONS).
//
public static int NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA = 0x00000001;
public static int NDIS_MAC_OPTION_RECEIVE_SERIALIZED = 0x00000002;
public static int NDIS_MAC_OPTION_TRANSFERS_NOT_PEND = 0x00000004;
public static int NDIS_MAC_OPTION_NO_LOOPBACK = 0x00000008;
public static int NDIS_MAC_OPTION_FULL_DUPLEX = 0x00000010;
public static int NDIS_MAC_OPTION_EOTX_INDICATION = 0x00000020;
public static uint NDIS_MAC_OPTION_RESERVED = 0x80000000;
public static string GetMacOptionsString( int Value )
{
string Tmp = "";
if( ( Value & NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA ) == NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA )
Tmp += "Copy lookahead data,";
if( ( Value & NDIS_MAC_OPTION_RECEIVE_SERIALIZED ) == NDIS_MAC_OPTION_RECEIVE_SERIALIZED )
Tmp += "Receive serialized,";
if( ( Value & NDIS_MAC_OPTION_TRANSFERS_NOT_PEND ) == NDIS_MAC_OPTION_TRANSFERS_NOT_PEND )
Tmp += "Transfers not pend,";
if( ( Value & NDIS_MAC_OPTION_NO_LOOPBACK ) == NDIS_MAC_OPTION_NO_LOOPBACK )
Tmp += "no loopback,";
if( ( Value & NDIS_MAC_OPTION_FULL_DUPLEX ) == NDIS_MAC_OPTION_FULL_DUPLEX )
Tmp += "full duplex,";
if( ( Value & NDIS_MAC_OPTION_EOTX_INDICATION ) == NDIS_MAC_OPTION_EOTX_INDICATION )
Tmp += "End of transmit indication,";
if( ( Value & NDIS_MAC_OPTION_RESERVED ) == NDIS_MAC_OPTION_RESERVED )
Tmp += "reserved,";
if( Tmp.Length > 0 )
Tmp = Tmp.Substring( 0 , Tmp.Length - 1 );
return Tmp;
}
//
// NDIS MAC option bits for OID_GEN_CO_MAC_OPTIONS.
//
public static uint NDIS_CO_MAC_OPTION_DYNAMIC_LINK_SPEED = 0x00000001;
// The following is set on a per-packet basis as OOB data with NdisClassIrdaPacketInfo
// This is the per-packet info specified on a per-packet basis
//
public struct NDIS_IRDA_PACKET_INFO
{
public uint ExtraBOFs;
public uint MinTurnAroundTime;
}
// Wireless WAN structure definitions
// currently defined Wireless network subtypes
public enum NDIS_WW_NETWORK_TYPE
{
NdisWWGeneric,
NdisWWMobitex,
NdisWWPinpoint,
NdisWWCDPD,
NdisWWArdis,
NdisWWDataTAC,
NdisWWMetricom,
NdisWWGSM,
NdisWWCDMA,
NdisWWTDMA,
NdisWWAMPS,
NdisWWInmarsat,
NdisWWpACT
};
//
// currently defined header formats
//
public enum NDIS_WW_HEADER_FORMAT
{
NdisWWDIXEthernetFrames,
NdisWWMPAKFrames,
NdisWWRDLAPFrames,
NdisWWMDC4800Frames
};
//
// currently defined encryption types
//
public enum NDIS_WW_ENCRYPTION_TYPE
{
NdisWWUnknownEncryption = -1,
NdisWWNoEncryption,
NdisWWDefaultEncryption
};
//
// OID_WW_GEN_INDICATION_REQUEST
//
public struct NDIS_WW_INDICATION_REQUEST
{
public NDIS_OID Oid; // IN
public uint uIndicationFlag; // IN
public uint uApplicationToken; // IN OUT
public HANDLE hIndicationHandle; // IN OUT
public int iPollingInterval; // IN OUT
public NDIS_VAR_DATA_DESC InitialValue; // IN OUT
public NDIS_VAR_DATA_DESC OIDIndicationValue; // OUT - only valid after indication
public NDIS_VAR_DATA_DESC TriggerValue; // IN
};
public static uint OID_INDICATION_REQUEST_ENABLE = 0x0000;
public static uint OID_INDICATION_REQUEST_CANCEL = 0x0001;
//
// OID_WW_GEN_DEVICE_INFO
//
public struct WW_DEVICE_INFO
{
public NDIS_VAR_DATA_DESC Manufacturer;
public NDIS_VAR_DATA_DESC ModelNum;
public NDIS_VAR_DATA_DESC SWVersionNum;
public NDIS_VAR_DATA_DESC SerialNum;
};
// OID_WW_GEN_CURRENT_ADDRESS
//
public struct WW_CURRENT_ADDRESS
{
public NDIS_WW_HEADER_FORMAT Format;
public NDIS_VAR_DATA_DESC Address;
};
//
// OID_WW_TAC_SET_CONFIG
public struct WW_TAC_SETCONFIG
{
public NDIS_VAR_DATA_DESC RCV_MODE;
public NDIS_VAR_DATA_DESC TX_CONTROL;
public NDIS_VAR_DATA_DESC RX_CONTROL;
public NDIS_VAR_DATA_DESC FLOW_CONTROL;
public NDIS_VAR_DATA_DESC RESET_CNF;
public NDIS_VAR_DATA_DESC READ_CNF;
};
//
// OID_WW_TAC_GET_STATUS
public struct WW_TAC_GETSTATUS
{
public int Action; // Set = Execute command.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -