NDIS_NDK_LOCAL_ENDPOINTS-Struktur (ntddndis.h)

Die NDIS_NDK_LOCAL_ENDPOINTS-Struktur beschreibt die lokalen NDK-Endpunkte, die sich auf einem Miniportadapter befinden.

Syntax

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;

Member

Header

Eine NDIS_OBJECT_HEADER-Struktur , die diese NDIS_NDK_LOCAL_ENDPOINTS-Struktur beschreibt. Legen Sie die Elemente der NDIS_OBJECT_HEADER-Struktur wie folgt fest:

  • Legen Sie das Element Typ auf NDIS_OBJECT_TYPE_DEFAULT fest.
  • Legen Sie den Revisionsmember auf NDIS_NDK_LOCAL_ENDPOINTS_REVISION_1 fest.
  • Legen Sie das Size-Element auf (USHORT)min(MAXUSHORT, NDIS_SIZEOF_NDK_ENDPOINTS_REVISION_1(n)) fest.

Flags

Count

Die Anzahl der Elemente im Endpunktarray, die im LocalEndpoints-Element übergeben wird. Jedes Element im Array ist eine NDIS_NDK_LOCAL_ENDPOINT_ENTRY Struktur.

NDLocalEndpointsMappedtoTCPLocalEndpoints

Ein BOOLEAN-Wert , der angibt, wie die Endpunkte zugeordnet werden. Wenn die RDMA-Technologie für den NDK-Anbieter erfordert, dass der Anbieter lokale ND-Endpunkte lokalen TCP-Endpunkten zuordnen muss, muss der NDK-Anbieter den NDLocalEndpointsMappedtoTCPLocalEndpoints-Member auf TRUE festlegen. Andernfalls ist NDLocalEndpointsMappedtoTCPLocalEndpoints FALSE.

LocalEndpoints[1]

Ein Array mit variabler Größe NDIS_NDK_LOCAL_ENDPOINT_ENTRY Strukturen, bei denen die Größe des Arrays durch die Anzahl der zurückgegebenen lokalen Endpunkte bestimmt wird. Das Count-Element gibt die Anzahl der Elemente im lokalen Endpunktarray an.

Hinweise

Die NDIS_NDK_LOCAL_ENDPOINTS-Struktur wird mit der OID_NDK_LOCAL_ENDPOINTS OID zurückgegeben. Das InformationBuffer-Element der NDIS_OID_REQUEST-Struktur enthält einen Zeiger auf diese Struktur.

Diese Struktur ist variabel und enthält Elemente, die der Anzahl der zurückgegebenen lokalen Endpunkte entsprechen. Die tatsächliche Größe des lokalen Endpunktarrays als Elementanzahl wird durch das Count-Element angegeben.

Wenn die RDMA-Technologie für den NDK-Anbieter erfordert, dass der Anbieter lokale ND-Endpunkte lokalen TCP-Endpunkten zuordnen muss, muss der NDK-Anbieter auch den zugrunde liegenden lokalen TCP-Endpunkt für jeden lokalen ND-Endpunkt wie folgt melden:

  • Legen Sie das Element NDLocalEndpointsMappedtoTCPLocalEndpoints auf TRUE fest.
  • Verwenden Sie zwei aufeinanderfolgende Einträge für jeden lokalen ND-Endpunkt. Der erste Eintrag enthält die ND-Adressinformationen (lokale IP-Adresse und ND-Portnummer), und der unmittelbare nächste Eintrag enthält die Adressinformationen des entsprechenden lokalen TCP-Endpunkts (lokale IP-Adresse und TCP-Portnummer).
  • Andere Elemente als Adressinformationen (z. B . UserModeOwner, Listener und OwnerPid) müssen nur im ersten Eintrag festgelegt und im nächsten Eintrag unverändert bleiben. Daher enthalten Einträge am Index 0, 2, 4 usw. ND-Adressinformationen (plus ordnungsgemäß ausgefüllte andere Member) und Einträge bei Index 1, 3, 5 usw. TCP-Adressinformationen (wobei andere Member unangetastet bleiben).

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Keine unterstützt, wird in NDIS 6.30 und höher unterstützt.
Unterstützte Mindestversion (Server) Windows Server 2012
Kopfzeile ntddndis.h (include Ndis.h)

Weitere Informationen

NDIS_NDK_LOCAL_ENDPOINT_ENTRY

NDIS_OBJECT_HEADER

NDIS_OID_REQUEST

OID_NDK_LOCAL_ENDPOINTS