structure NDIS_NDK_LOCAL_ENDPOINTS (ntddndis.h)

La structure NDIS_NDK_LOCAL_ENDPOINTS décrit les points de terminaison locaux NDK qui se trouvent sur un adaptateur miniport.

Syntaxe

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;

Membres

Header

Structure NDIS_OBJECT_HEADER qui décrit cette structure NDIS_NDK_LOCAL_ENDPOINTS . Définissez les membres de la structure NDIS_OBJECT_HEADER comme suit :

  • Définissez le membre Typesur NDIS_OBJECT_TYPE_DEFAULT.
  • Définissez le membre Revision sur NDIS_NDK_LOCAL_ENDPOINTS_REVISION_1.
  • Définissez le membre Size sur (USHORT)min(MAXUSHORT, NDIS_SIZEOF_NDK_ENDPOINTS_REVISION_1(n)).

Flags

Count

Nombre d’éléments dans le tableau de points de terminaison transmis dans le membre LocalEndpoints . Chaque élément du tableau est une structure NDIS_NDK_LOCAL_ENDPOINT_ENTRY .

NDLocalEndpointsMappedtoTCPLocalEndpoints

Valeur BOOLEAN qui spécifie la façon dont les points de terminaison sont mappés. Si la technologie RDMA du fournisseur NDK nécessite que le fournisseur mappe les points de terminaison locaux ND aux points de terminaison locaux TCP, le fournisseur NDK doit définir le membre NDLocalEndpointsMappedtoTCPLocalEndpoints sur TRUE. Sinon, NDLocalEndpointsMappedtoTCPLocalEndpoints est FALSE.

LocalEndpoints[1]

Tableau de taille variable de structures NDIS_NDK_LOCAL_ENDPOINT_ENTRY où la taille du tableau est déterminée par le nombre de points de terminaison locaux retournés. Le membre Count spécifie le nombre d’éléments dans le tableau de points de terminaison local.

Remarques

La structure NDIS_NDK_LOCAL_ENDPOINTS est retournée avec l’OID OID_NDK_LOCAL_ENDPOINTS . Le membre InformationBuffer de la structure NDIS_OID_REQUEST contient un pointeur vers cette structure.

Cette structure est de taille variable et contient des éléments en nombre égal au nombre de points de terminaison locaux retournés. La taille réelle du tableau de points de terminaison local en tant que nombre d’éléments est indiquée par le membre Count .

Si la technologie RDMA pour le fournisseur NDK nécessite que le fournisseur mappe les points de terminaison locaux ND aux points de terminaison locaux TCP, le fournisseur NDK doit également signaler le point de terminaison local TCP sous-jacent pour chaque point de terminaison local ND comme suit :

  • Définissez le membre NDLocalEndpointsMappedtoTCPLocalEndpoints sur TRUE.
  • Utilisez deux entrées consécutives pour chaque point de terminaison local ND. La première entrée contient les informations d’adressage ND (adresse IP locale et numéro de port ND) et l’entrée suivante immédiate contient les informations d’adressage du point de terminaison local TCP correspondant (adresse IP locale et numéro de port TCP).
  • Les membres autres que les informations d’adressage (par exemple, UserModeOwner, Listener et OwnerPid) doivent être définis uniquement dans la première entrée et laissés intacts dans l’entrée suivante. Par conséquent, les entrées à l’index 0, 2, 4, etc., contiennent des informations d’adressage ND (ainsi que d’autres membres correctement renseignés) et les entrées à l’index 1, 3, 5 et ainsi de suite, contiennent des informations d’adressage TCP (où les autres membres sont laissés intacts).

Configuration requise

Condition requise Valeur
Client minimal pris en charge Aucun pris en charge, pris en charge dans NDIS 6.30 et versions ultérieures.
Serveur minimal pris en charge Windows Server 2012
En-tête ntddndis.h (inclure Ndis.h)

Voir aussi

NDIS_NDK_LOCAL_ENDPOINT_ENTRY

NDIS_OBJECT_HEADER

NDIS_OID_REQUEST

OID_NDK_LOCAL_ENDPOINTS