NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES-Struktur (ndis.h)
Ein NDIS-Miniporttreiber richtet eine NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES-Struktur ein, um die allgemeinen Miniporttreiberattribute zu definieren, die einem Miniportadapter zugeordnet sind.
Syntax
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;
Member
Header
Die NDIS_OBJECT_HEADER-Struktur für die NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES-Struktur . Legen Sie das Type-Element der Struktur, die Header angibt, auf NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES fest.
Um die Version der NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES-Struktur anzugeben, legen Sie den Revisionsmember auf einen der folgenden Werte fest:
NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES_REVISION_2
Das PowerManagementCapabilitiesEx-Member für NDIS 6.2 wurde hinzugefügt.
Legen Sie das Element Größe auf NDIS_SIZEOF_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES_REVISION_2 fest.
NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES_REVISION_1
Ursprüngliche Version für NDIS 6.0 und NDIS 6,1.
Legen Sie das Element Größe auf NDIS_SIZEOF_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES_REVISION_1 fest.
Flags
Reserviert für NDIS.
MediaType
Der NdisMediumXxx-Typ , den der Miniportadapter unterstützt. Weitere Informationen finden Sie unter NDIS_MEDIUM.
PhysicalMediumType
Der physische Mediumtyp für den Miniportadapter. Weitere Informationen finden Sie unter OID_GEN_PHYSICAL_MEDIUM
MtuSize
Die maximale MTU-Größe (Transfer Unit). Weitere Informationen finden Sie unter OID_GEN_MAXIMUM_FRAME_SIZE.
MaxXmitLinkSpeed
Die maximale Übertragungslinkgeschwindigkeit des Adapters in Bits pro Sekunde. Weitere Informationen finden Sie unter OID_GEN_MAX_LINK_SPEED.
XmitLinkSpeed
Die aktuelle Übertragungslinkgeschwindigkeit des Adapters in Bits pro Sekunde. Weitere Informationen finden Sie unter OID_GEN_LINK_SPEED_EX.
MaxRcvLinkSpeed
Die maximale Empfangslinkgeschwindigkeit des Adapters in Bits pro Sekunde. Weitere Informationen finden Sie unter OID_GEN_MAX_LINK_SPEED.
RcvLinkSpeed
Die aktuelle Empfangslinkgeschwindigkeit des Adapters in Bits pro Sekunde. Weitere Informationen finden Sie unter OID_GEN_LINK_SPEED_EX.
MediaConnectState
Der Medienverbindungsstatus für den Miniportadapter. Weitere Informationen finden Sie unter OID_GEN_MEDIA_CONNECT_STATUS_EX.
MediaDuplexState
Der Medienduplexzustand für den Miniportadapter. Weitere Informationen finden Sie unter OID_GEN_MEDIA_DUPLEX_STATE.
LookaheadSize
Die Lookahead-Größe für den Miniportadapter. Weitere Informationen finden Sie unter OID_GEN_CURRENT_LOOKAHEAD.
PowerManagementCapabilities
Die Plug & Play (PnP)-Funktionen des Miniportadapters. Weitere Informationen zu PnP-Funktionen finden Sie unter OID_PNP_CAPABILITIES. Wenn der Miniportadapter die Energieverwaltung nicht unterstützt, sollte der Miniporttreiber PowerManagementCapabilities auf NULL festlegen. Treiber für NDIS 6.20 und höher müssen stattdessen das PowerManagementCapabilitiesEx-Element verwenden.
MacOptions
Die MAC-Optionen für den Miniportadapter. Weitere Informationen finden Sie unter OID_GEN_MAC_OPTIONS.
SupportedPacketFilters
Die Paketfilterflags für den Miniportadapter.
MaxMulticastListSize
Die Größe der Multicastadressenliste für den Miniportadapter. Weitere Informationen finden Sie unter OID_802_3_MAXIMUM_LIST_SIZE.
MacAddressLength
Die MAC-Adresslänge in Bytes. Die MAC-Adresslänge ist spezifisch für den Medientyp.
PermanentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]
Die permanente MAC-Adresse. Beispielsweise gibt die OID_802_3_PERMANENT_ADDRESS OID die permanente MAC-Adresse für IEEE 802.3-Treiber an.
CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]
Die aktuelle MAC-Adresse. Beispielsweise gibt die OID_802_3_CURRENT_ADDRESS OID die aktuelle MAC-Adresse für IEEE 802.3-Treiber an.
RecvScaleCapabilities
Die RSS-Funktionen (Receive Side Scaling) der NIC. Wenn der Miniportadapter das RSS-Feature nicht unterstützt, legen Sie RecvScaleCapabilities auf NULL fest. Weitere Informationen zu RSS finden Sie unter OID_GEN_RECEIVE_SCALE_CAPABILITIES.
AccessType
Ein NET_IF_ACCESS_TYPE NDIS-Netzwerkschnittstellenzugriffstyp.
DirectionType
Ein NET_IF_DIRECTION_TYPE NDIS-Netzwerkschnittstellenrichtungstyp.
ConnectionType
Ein NET_IF_CONNECTION_TYPE NDIS-Netzwerkschnittstellenverbindungstyp.
IfType
Der IANA-Schnittstellentyp (Internet Assigned Numbers Authority). Beispielsweise ist IF_TYPE_ETHERNET_CSMACD (6) der Wert für IfType , der jeder Ethernet-ähnlichen Schnittstelle zugewiesen ist. Eine Liste von Schnittstellentypen finden Sie unter NDIS-Schnittstellentypen.
IfConnectorPresent
Ein boolescher Wert, der angibt, ob ein Connector vorhanden ist. Legen Sie diesen Wert auf TRUE fest, wenn ein physischer Adapter vorhanden ist.
SupportedStatistics
Die unterstützten Statistiken.
NDIS_STATISTICS_DIRECTED_FRAMES_RCV_SUPPORTED
Die Daten im ifHCInUcastPkts-Member sind gültig.
NDIS_STATISTICS_MULTICAST_FRAMES_RCV_SUPPORTED
Die Daten im ifHCInMulticastPkts-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_BROADCAST_FRAMES_RCV_SUPPORTED
Die Daten im ifHCInBroadcastPkts-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_BYTES_RCV_SUPPORTED
Die Daten im ifHCInOctets-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_RCV_DISCARDS_SUPPORTED
Die Daten im ifInDiscards-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_RCV_ERROR_SUPPORTED
Die Daten im ifInErrors-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_DIRECTED_FRAMES_XMIT_SUPPORTED
Die Daten im ifHCOutUcastPkts-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_MULTICAST_FRAMES_XMIT_SUPPORTED
Die Daten im ifHCOutMulticastPkts-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_BROADCAST_FRAMES_XMIT_SUPPORTED
Die Daten im ifHCOutBroadcastPkts-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_BYTES_XMIT_SUPPORTED
Die Daten im ifHCOutOctets-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_XMIT_ERROR_SUPPORTED
Die Daten im ifOutErrors-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_XMIT_DISCARDS_SUPPORTED
Die Daten im ifOutDiscards-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_DIRECTED_BYTES_RCV_SUPPORTED
Die Daten im ifHCInUcastOctets-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_MULTICAST_BYTES_RCV_SUPPORTED
Die Daten im ifHCInMulticastOctets-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_BROADCAST_BYTES_RCV_SUPPORTED
Die Daten im ifHCInBroadcastOctets-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_DIRECTED_BYTES_XMIT_SUPPORTED
Die Daten im ifHCOutUcastOctets-Member von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_MULTICAST_BYTES_XMIT_SUPPORTED
Die Daten im ifHCOutMulticastOctets-Element von NDIS_STATISTICS_INFO sind gültig.
NDIS_STATISTICS_BROADCAST_BYTES_XMIT_SUPPORTED
Die Daten im ifHCOutBroadcastOctets-Member von NDIS_STATISTICS_INFO sind gültig.
SupportedPauseFunctions
Unterstützung für die IEEE 802.3-Pauseframes als eine der folgenden Pausenfunktionen:
NdisPauseFunctionsUnsupported
Gibt an, dass der Adapter oder Linkpartner keine Pausenframes unterstützt.
NdisPauseFunctionsSendOnly
Gibt an, dass der Adapter und der Linkpartner nur das Senden von Pauseframes vom Adapter an den Linkpartner unterstützen.
NdisPauseFunctionsReceiveOnly
Gibt an, dass der Adapter und der Linkpartner nur das Senden von Pauseframes vom Linkpartner an den Adapter unterstützen.
NdisPauseFunctionsSendAndReceive
Gibt an, dass der Adapter und der Linkpartner das Senden und Empfangen von Pauseframes sowohl in Transint- als auch in Empfangsanweisungen unterstützen.
NdisPauseFunctionsUnknown
Gibt an, dass die Aushandlung des Pauseframes ausgeführt wird. Die Unterstützung des Pauseframes, die der Linkpartner bereitstellt, ist unbekannt.
DataBackFillSize
Die erforderliche Datenbackfillgröße des Treibers in Bytes.
ContextBackFillSize
Die erforderliche Kontextbackfillgröße des Treibers in Byte.
SupportedOidList
Eine Liste der vom Miniporttreiber unterstützten OIDs. Weitere Informationen finden Sie unter OID_GEN_SUPPORTED_LIST.
SupportedOidListLength
Die Größe der OID-Liste in Bytes unter SupportedOidList .
AutoNegotiationFlags
Die Einstellungen für die automatische Aushandlung für den Miniportadapter. Dieser Member wird aus einem bitweisen OR der folgenden Flags erstellt:
NDIS_LINK_STATE_XMIT_LINK_SPEED_AUTO_NEGOTIATED
Der Adapter hat die Übertragungsverbindungsgeschwindigkeit automatisch mit dem Linkpartner ausgehandelt.
NDIS_LINK_STATE_RCV_LINK_SPEED_AUTO_NEGOTIATED
Der Adapter hat die Geschwindigkeit des Empfangslinks mit dem Linkpartner automatisch ausgehandelt.
NDIS_LINK_STATE_DUPLEX_AUTO_NEGOTIATED
Der Adapter hat den Duplexzustand automatisch mit dem Linkpartner ausgehandelt.
NDIS_LINK_STATE_PAUSE_FUNCTIONS_AUTO_NEGOTIATED
Der Adapter hat die Pausenfunktionen automatisch mit dem Linkpartner ausgehandelt.
PowerManagementCapabilitiesEx
Ein Zeiger auf eine NDIS_PM_CAPABILITIES-Struktur . Diese Struktur gibt die Energieverwaltungsfunktionen des Miniportadapters an. Dieses Mitglied ist für Treiber von NDIS 6.20 und höher obligatorisch.
Hinweise
Ein Miniporttreiber übergibt einen Zeiger auf eine NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES-Struktur im MiniportAttributes-Parameter des NdisMSetMiniportAttributes-Funktion . Ein Miniporttreiber ruft während der Initialisierung NdisMSetMiniportAttributes aus seiner MiniportInitializeEx-Funktion auf. Miniport-Treiber sollten diese Attribute festlegen, nachdem sie die Registrierungsattribute im NDIS_MINIPORT_ADAPTER_REGISTRATION_ATTRIBUTES Struktur und vor dem Festlegen anderer Attribute. Das Festlegen dieses Attributs ist obligatorisch.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt in NDIS 6.0 und höher. |
Kopfzeile | ndis.h (include Ndis.h) |