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 |
---|---|
|
L'oggetto endpoint condiviso è stato creato correttamente e restituito con il parametro *ppNdkSharedEndpoint. |
|
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. |
|
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.
|
|
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.
|
|
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). |
|
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.
|
|
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 |