Condividi tramite


NDK_FN_CREATE_SHARED_ENDPOINT funzione di callback (ndkpi.h)

La funzione NdkCreateSharedEndpoint (NDK_FN_CREATE_SHARED_ENDPOINT) crea un endpoint condiviso NDK.

Sintassi

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
)
{...}

Parametri

[in] pNdkAdapter

Puntatore a un oggetto adattatore NDK (NDK_ADAPTER).

pAddress

Indirizzo locale da usare per avviare le connessioni in uscita. Per AF_INET o AF_INET6 pAddress contiene l'indirizzo IP locale e la porta ND locale.

[in] AddressLength

Dimensione, in byte, dei dati degli indirizzi locali nel parametro pAddress.

[in] CreateCompletion

Puntatore a una funzione NdkCreateCompletion (NDK_FN_CREATE_COMPLETION) che completa la creazione di un oggetto NDK.

[in, optional] RequestContext

Valore di contesto restituito dal provider NDK alla funzione NdkCreateCompletion specificata nel parametro CreateCompletion.

ppNdkSharedEndpoint

In questo percorso viene restituito un puntatore a un oggetto endpoint condiviso creato (NDK_SHARED_ENDPOINT) se la richiesta ha esito positivo senza restituire STATUS_PENDING. Se la richiesta restituisce STATUS_PENDING, questo parametro viene ignorato e l'oggetto creato viene restituito con il callback specificato nel parametro CreateCompletion.

Valore restituito

La funzione NdkCreateSharedEndpoint restituisce uno dei codici NTSTATUS seguenti.

Codice restituito Descrizione
STATUS_SUCCESS
L'oggetto endpoint condiviso è stato creato correttamente e restituito con il parametro *ppNdkSharedEndpoint.
STATUS_PENDING
L'operazione è in sospeso e verrà completata in un secondo momento. Il provider chiamerà la funzione specificata nel parametro CreateCompletion (NDK_FN_CREATE_COMPLETION) per completare l'operazione in sospeso.
STATUS_INSUFFICIENT_RESOURCES
La richiesta non è riuscita a causa di risorse insufficienti.
Importante La richiesta può non riuscire inline e in modo asincrono con questo codice di stato.
 
STATUS_SHARING_VIOLATION
La richiesta non è riuscita perché l'indirizzo locale specificato è già in uso.
Importante La richiesta può non riuscire inline e in modo asincrono con questo codice di stato.
 
STATUS_TOO_MANY_ADDRESSES
La richiesta non è riuscita perché il consumer ha specificato un numero di porta locale pari a zero e il provider Network Direct non è riuscito ad allocare una porta dallo spazio delle porte temporanee (porte 49152-65535).
STATUS_INVALID_ADDRESS
La richiesta non è riuscita perché l'indirizzo locale specificato non è un indirizzo valido per l'adapter.
Importante La richiesta può non riuscire inline e in modo asincrono con questo codice di stato.
 
Altri codici di stato
Si è verificato un errore.

Osservazioni

La funzione NdkCreateSharedEndpoint crea un endpoint condiviso NDK da usare come indirizzo locale per più connessioni in uscita destinate a indirizzi remoti diversi. Ciò è analogo alla presenza di più connessioni in ingresso allo stesso indirizzo locale rappresentato da un oggetto listener.

Se la funzione restituisce STATUS_SUCCESS, l'oggetto creato viene restituito nel parametro ppNdkSharedEndpoint. Se NdkCreateSharedEndpoint restituisce STATUS_PENDING, l'oggetto creato viene restituito dalla funzione (NDK_FN_CREATE_COMPLETION) NdkCreateCompletion specificata nel parametro CreateCompletion.

Fabbisogno

Requisito Valore
client minimo supportato Nessuna supportata, supportata in NDIS 6.30 e versioni successive.
server minimo supportato Windows Server 2012
piattaforma di destinazione Finestre
intestazione ndkpi.h (include Ndkpi.h)
IRQL <=DISPATCH_LEVEL

Vedere anche

requisiti di durata dell'oggetto NDKPI

NDK_ADAPTER

NDK_ADAPTER_DISPATCH

NDK_FN_CREATE_COMPLETION

NDK_SHARED_ENDPOINT