NDK_FN_CREATE_SHARED_ENDPOINT fonction de rappel (ndkpi.h)
La fonction NdkCreateSharedEndpoint (NDK_FN_CREATE_SHARED_ENDPOINT) crée un point de terminaison partagé NDK.
Syntaxe
NDK_FN_CREATE_SHARED_ENDPOINT NdkFnCreateSharedEndpoint;
NTSTATUS NdkFnCreateSharedEndpoint(
[in] NDK_ADAPTER *pNdkAdapter,
const PSOCKADDR pAddress,
[in] ULONG AddressLength,
[in] NDK_FN_CREATE_COMPLETION CreateCompletion,
[in, optional] PVOID RequestContext,
NDK_SHARED_ENDPOINT **ppNdkSharedEndpoint
)
{...}
Paramètres
[in] pNdkAdapter
Pointeur vers un objet adaptateur NDK (NDK_ADAPTER).
pAddress
Adresse locale à utiliser pour lancer des connexions sortantes. Pour AF_INET ou AF_INET6 pAddress contient l’adresse IP locale et le port ND local.
[in] AddressLength
Taille, en octets, des données d’adresse locale au niveau du paramètre pAddress .
[in] CreateCompletion
Pointeur vers une fonction NdkCreateCompletion (NDK_FN_CREATE_COMPLETION) qui termine la création d’un objet NDK.
[in, optional] RequestContext
Valeur de contexte que le fournisseur NDK transmet à la fonction NdkCreateCompletion spécifiée dans le paramètre CreateCompletion .
ppNdkSharedEndpoint
Un pointeur vers un objet de point de terminaison partagé (NDK_SHARED_ENDPOINT) créé est retourné à cet emplacement si la requête réussit sans retourner STATUS_PENDING. Si la requête retourne STATUS_PENDING ce paramètre est ignoré et l’objet créé est retourné avec le rappel spécifié dans le paramètre CreateCompletion .
Valeur retournée
La fonction NdkCreateSharedEndpoint retourne l’un des codes NTSTATUS suivants.
Code de retour | Description |
---|---|
|
L’objet de point de terminaison partagé a été créé et retourné avec le paramètre *ppNdkSharedEndpoint . |
|
L’opération est en attente et sera terminée ultérieurement. Le fournisseur appelle la fonction spécifiée dans le paramètre CreateCompletion (NDK_FN_CREATE_COMPLETION) pour terminer l’opération en attente. |
|
La demande a échoué en raison de ressources insuffisantes.
Important La requête peut échouer en ligne et de manière asynchrone avec ce code status.
|
|
La demande a échoué, car l’adresse locale spécifiée est déjà en cours d’utilisation.
Important La requête peut échouer en ligne et de manière asynchrone avec ce code status.
|
|
La demande a échoué, car le consommateur a spécifié un numéro de port local égal à zéro et le fournisseur Network Direct n’a pas pu allouer un port à partir de l’espace de port éphémère (ports 49152-65535.) |
|
La demande a échoué, car l’adresse locale spécifiée n’est pas une adresse valide pour l’adaptateur.
Important La requête peut échouer en ligne et de manière asynchrone avec ce code status.
|
|
Une erreur est survenue. |
Remarques
La fonction NdkCreateSharedEndpoint crée un point de terminaison partagé NDK à utiliser comme adresse locale pour plusieurs connexions sortantes destinées à différentes adresses distantes. Cela est analogue au fait d’avoir plusieurs connexions entrantes à la même adresse locale qui sont représentées par un objet écouteur.
Si la fonction retourne STATUS_SUCCESS, l’objet créé est retourné dans le paramètre ppNdkSharedEndpoint . Si NdkCreateSharedEndpoint retourne STATUS_PENDING, l’objet créé est retourné par la fonction NdkCreateCompletion (NDK_FN_CREATE_COMPLETION) spécifiée dans le paramètre CreateCompletion .
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Aucune prise en charge, prise en charge dans NDIS 6.30 et versions ultérieures. |
Serveur minimal pris en charge | Windows Server 2012 |
Plateforme cible | Windows |
En-tête | ndkpi.h (incluez Ndkpi.h) |
IRQL | <=DISPATCH_LEVEL |