NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 结构 (ndis.h)
NDIS 微型端口驱动程序设置 NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 结构来定义与微型端口适配器关联的常规微型端口驱动程序属性。
语法
typedef struct _NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
NDIS_MEDIUM MediaType;
NDIS_PHYSICAL_MEDIUM PhysicalMediumType;
ULONG MtuSize;
ULONG64 MaxXmitLinkSpeed;
ULONG64 XmitLinkSpeed;
ULONG64 MaxRcvLinkSpeed;
ULONG64 RcvLinkSpeed;
NDIS_MEDIA_CONNECT_STATE MediaConnectState;
NDIS_MEDIA_DUPLEX_STATE MediaDuplexState;
ULONG LookaheadSize;
PNDIS_PNP_CAPABILITIES PowerManagementCapabilities;
ULONG MacOptions;
ULONG SupportedPacketFilters;
ULONG MaxMulticastListSize;
USHORT MacAddressLength;
UCHAR PermanentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
UCHAR CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
PNDIS_RECEIVE_SCALE_CAPABILITIES RecvScaleCapabilities;
NET_IF_ACCESS_TYPE AccessType;
NET_IF_DIRECTION_TYPE DirectionType;
NET_IF_CONNECTION_TYPE ConnectionType;
NET_IFTYPE IfType;
BOOLEAN IfConnectorPresent;
ULONG SupportedStatistics;
ULONG SupportedPauseFunctions;
ULONG DataBackFillSize;
ULONG ContextBackFillSize;
PNDIS_OID SupportedOidList;
ULONG SupportedOidListLength;
ULONG AutoNegotiationFlags;
PNDIS_PM_CAPABILITIES PowerManagementCapabilitiesEx;
} NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES, *PNDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES;
成员
Header
NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES结构的NDIS_OBJECT_HEADER结构。 将 Header 指定的结构的 Type 成员设置为 NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES。
若要指示 NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 结构的版本,请将 Revision 成员设置为以下值之一:
NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES_REVISION_2
为 NDIS 6.2 添加了 PowerManagementCapabilitiesEx 成员。
将 Size 成员设置为 NDIS_SIZEOF_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES_REVISION_2。
NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES_REVISION_1
NDIS 6.0 和 NDIS 6,1 的原始版本。
将 Size 成员设置为 NDIS_SIZEOF_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES_REVISION_1。
Flags
保留给 NDIS。
MediaType
微型端口适配器支持的 NdisMediumXxx 类型。 有关详细信息,请参阅 NDIS_MEDIUM。
PhysicalMediumType
微型端口适配器的物理介质类型。 有关详细信息,请参阅 OID_GEN_PHYSICAL_MEDIUM
MtuSize
最大传输单位 (MTU) 大小。 有关详细信息,请参阅 OID_GEN_MAXIMUM_FRAME_SIZE。
MaxXmitLinkSpeed
适配器的最大传输链路速度(以位/秒为单位)。 有关详细信息,请参阅 OID_GEN_MAX_LINK_SPEED。
XmitLinkSpeed
适配器的当前传输链路速度(以位/秒为单位)。 有关详细信息,请参阅 OID_GEN_LINK_SPEED_EX。
MaxRcvLinkSpeed
适配器的最大接收链接速度(以位/秒为单位)。 有关详细信息,请参阅 OID_GEN_MAX_LINK_SPEED。
RcvLinkSpeed
适配器的当前接收链接速度(以位/秒为单位)。 有关详细信息,请参阅 OID_GEN_LINK_SPEED_EX。
MediaConnectState
微型端口适配器的媒体连接状态。 有关详细信息,请参阅 OID_GEN_MEDIA_CONNECT_STATUS_EX。
MediaDuplexState
微型端口适配器的媒体双工状态。 有关详细信息,请参阅 OID_GEN_MEDIA_DUPLEX_STATE。
LookaheadSize
微型端口适配器的头大小。 有关详细信息,请参阅 OID_GEN_CURRENT_LOOKAHEAD。
PowerManagementCapabilities
即插即用 (PnP) 微型端口适配器的功能。 有关 PnP 功能的详细信息,请参阅 OID_PNP_CAPABILITIES。 如果微型端口适配器不感知电源管理,微型端口驱动程序应将 PowerManagementCapabilities 设置为 NULL。 NDIS 6.20 及更高版本的驱动程序必须改用 PowerManagementCapabilitiesEx 成员。
MacOptions
微型端口适配器的 MAC 选项。 有关详细信息,请参阅 OID_GEN_MAC_OPTIONS。
SupportedPacketFilters
微型端口适配器的数据包筛选器标志。
MaxMulticastListSize
微型端口适配器的多播地址列表大小。 有关详细信息,请参阅 OID_802_3_MAXIMUM_LIST_SIZE。
MacAddressLength
MAC 地址长度(以字节为单位)。 MAC 地址长度特定于媒体类型。
PermanentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]
永久 MAC 地址。 例如, OID_802_3_PERMANENT_ADDRESS OID 指定 IEEE 802.3 驱动程序的永久 MAC 地址。
CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]
当前 MAC 地址。 例如, OID_802_3_CURRENT_ADDRESS OID 指定 IEEE 802.3 驱动程序的当前 MAC 地址。
RecvScaleCapabilities
接收端缩放 (RSS) NIC 的功能。 如果微型端口适配器不支持 RSS 功能,请将 RecvScaleCapabilities 设置为 NULL。 有关 RSS 的详细信息,请参阅 OID_GEN_RECEIVE_SCALE_CAPABILITIES。
AccessType
NET_IF_ACCESS_TYPE NDIS 网络接口访问类型。
DirectionType
NET_IF_DIRECTION_TYPE NDIS 网络接口方向类型。
ConnectionType
NET_IF_CONNECTION_TYPE NDIS 网络接口连接类型。
IfType
Internet 号码分配机构 (IANA) 接口类型。 例如,IF_TYPE_ETHERNET_CSMACD (6) 是分配给任何类似以太网的接口的 IfType 的值。 有关接口类型的列表,请参阅 NDIS 接口类型。
IfConnectorPresent
一个布尔值,指示是否存在连接器。 如果有物理适配器,请将此值设置为 TRUE 。
SupportedStatistics
支持的统计信息。
NDIS_STATISTICS_DIRECTED_FRAMES_RCV_SUPPORTED
ifHCInUcastPkts 成员中的数据有效。
NDIS_STATISTICS_MULTICAST_FRAMES_RCV_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCInMulticastPkts 成员中的数据有效。
NDIS_STATISTICS_BROADCAST_FRAMES_RCV_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCInBroadcastPkts 成员中的数据有效。
NDIS_STATISTICS_BYTES_RCV_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCInOctets 成员中的数据有效。
NDIS_STATISTICS_RCV_DISCARDS_SUPPORTED
NDIS_STATISTICS_INFO 的 ifInDiscards 成员中的数据有效。
NDIS_STATISTICS_RCV_ERROR_SUPPORTED
NDIS_STATISTICS_INFO 的 ifInErrors 成员中的数据有效。
NDIS_STATISTICS_DIRECTED_FRAMES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCOutUcastPkts 成员中的数据有效。
NDIS_STATISTICS_MULTICAST_FRAMES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCOutMulticastPkts 成员中的数据有效。
NDIS_STATISTICS_BROADCAST_FRAMES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCOutBroadcastPkts 成员中的数据有效。
NDIS_STATISTICS_BYTES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCOutOctets 成员中的数据有效。
NDIS_STATISTICS_XMIT_ERROR_SUPPORTED
NDIS_STATISTICS_INFO 的 ifOutErrors 成员中的数据有效。
NDIS_STATISTICS_XMIT_DISCARDS_SUPPORTED
NDIS_STATISTICS_INFO 的 ifOutDiscards 成员中的数据有效。
NDIS_STATISTICS_DIRECTED_BYTES_RCV_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCInUcastOctets 成员中的数据有效。
NDIS_STATISTICS_MULTICAST_BYTES_RCV_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCInMulticastOctets 成员中的数据有效。
NDIS_STATISTICS_BROADCAST_BYTES_RCV_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCInBroadcastOctets 成员中的数据有效。
NDIS_STATISTICS_DIRECTED_BYTES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCOutUcastOctets 成员中的数据有效。
NDIS_STATISTICS_MULTICAST_BYTES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCOutMulticastOctets 成员中的数据有效。
NDIS_STATISTICS_BROADCAST_BYTES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 的 ifHCOutBroadcastOctets 成员中的数据有效。
SupportedPauseFunctions
支持将 IEEE 802.3 暂停帧作为以下暂停函数之一:
NdisPauseFunctionsUnsupported
指示适配器或链接伙伴不支持暂停帧。
NdisPauseFunctionsSendOnly
指示适配器和链接伙伴仅支持将暂停帧从适配器发送到链接伙伴。
NdisPauseFunctionsReceiveOnly
指示适配器和链接伙伴仅支持将暂停帧从链接伙伴发送到适配器
NdisPauseFunctionsSendAndReceive
指示适配器和链接伙伴支持以 transint 和接收方向发送和接收暂停帧。
NdisPauseFunctionsUnknown
指示正在暂停帧协商。 链接伙伴提供的暂停帧支持未知。
DataBackFillSize
驱动程序的所需数据回填大小(以字节为单位)。
ContextBackFillSize
驱动程序的所需上下文回填大小(以字节为单位)。
SupportedOidList
微型端口驱动程序支持的 OID 列表。 有关详细信息,请参阅 OID_GEN_SUPPORTED_LIST。
SupportedOidListLength
SupportedOidList 中 OID 列表的大小(以字节为单位)。
AutoNegotiationFlags
微型端口适配器的自动协商设置。 此成员是从以下标志的按位 OR 创建的:
NDIS_LINK_STATE_XMIT_LINK_SPEED_AUTO_NEGOTIATED
适配器已与链接伙伴自动协商传输链路速度。
NDIS_LINK_STATE_RCV_LINK_SPEED_AUTO_NEGOTIATED
适配器已与链接伙伴自动协商接收链接速度。
NDIS_LINK_STATE_DUPLEX_AUTO_NEGOTIATED
适配器已与链接伙伴自动协商双工状态。
NDIS_LINK_STATE_PAUSE_FUNCTIONS_AUTO_NEGOTIATED
适配器已与链接伙伴自动协商暂停函数。
PowerManagementCapabilitiesEx
指向 NDIS_PM_CAPABILITIES 结构的指针。 此结构指定微型端口适配器的电源管理功能。 对于 NDIS 6.20 及更高版本的驱动程序,此成员是必需的。
注解
微型端口驱动程序在 的 MiniportAttributes 参数中传递指向 NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 结构的指针 NdisMSetMiniportAttributes 函数。 微型端口驱动程序在初始化期间从其 MiniportInitializeEx 函数调用 NdisMSetMiniportAttributes。 微型端口驱动程序应在 中设置注册属性后设置这些属性 NDIS_MINIPORT_ADAPTER_REGISTRATION_ATTRIBUTES 结构,在设置任何其他属性之前。 必须设置这些属性。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 NDIS 6.0 及更高版本中受支持。 |
标头 | ndis.h (包括 Ndis.h) |