NDK_FN_CREATE_SHARED_ENDPOINT función de devolución de llamada (ndkpi.h)

La función NdkCreateSharedEndpoint (NDK_FN_CREATE_SHARED_ENDPOINT) crea un punto de conexión compartido de NDK.

Sintaxis

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

Parámetros

[in] pNdkAdapter

Puntero a un objeto de adaptador NDK (NDK_ADAPTER).

pAddress

Una dirección local que se va a usar para iniciar conexiones salientes. Para AF_INET o AF_INET6 pAddress contiene la dirección IP local y el puerto ND local.

[in] AddressLength

Tamaño, en bytes, de datos de dirección local en el parámetro pAddress .

[in] CreateCompletion

Puntero a una función NdkCreateCompletion (NDK_FN_CREATE_COMPLETION) que completa la creación de un objeto NDK.

[in, optional] RequestContext

Valor de contexto que el proveedor NDK pasa de nuevo a la función NdkCreateCompletion especificada en el parámetro CreateCompletion .

ppNdkSharedEndpoint

Se devuelve un puntero a un objeto de punto de conexión compartido creado (NDK_SHARED_ENDPOINT) en esta ubicación si la solicitud se realiza correctamente sin devolver STATUS_PENDING. Si la solicitud devuelve STATUS_PENDING, este parámetro se omite y el objeto creado se devuelve con la devolución de llamada especificada en el parámetro CreateCompletion .

Valor devuelto

La función NdkCreateSharedEndpoint devuelve uno de los siguientes códigos NTSTATUS.

Código devuelto Descripción
STATUS_SUCCESS
El objeto de punto de conexión compartido se creó correctamente y se devolvió con el parámetro *ppNdkSharedEndpoint .
STATUS_PENDING
La operación está pendiente y se completará más adelante. El proveedor llamará a la función especificada en el parámetro CreateCompletion (NDK_FN_CREATE_COMPLETION) para completar la operación pendiente.
STATUS_INSUFFICIENT_RESOURCES
Error en la solicitud debido a recursos insuficientes.
Importante La solicitud puede producir un error en línea, así como de forma asincrónica con este código de estado.
 
STATUS_SHARING_VIOLATION
Error en la solicitud porque la dirección local especificada ya está en uso.
Importante La solicitud puede producir un error en línea, así como de forma asincrónica con este código de estado.
 
STATUS_TOO_MANY_ADDRESSES
Error en la solicitud porque el consumidor especificó un número de puerto local de cero y el proveedor de Network Direct no pudo asignar un puerto desde el espacio de puertos efímeros (puertos 49152-65535).
STATUS_INVALID_ADDRESS
Error en la solicitud porque la dirección local especificada no es una dirección válida para el adaptador.
Importante La solicitud puede producir un error en línea, así como de forma asincrónica con este código de estado.
 
Otros códigos de estado
Se produjo un error.

Comentarios

La función NdkCreateSharedEndpoint crea un punto de conexión compartido de NDK para usarlo como dirección local para varias conexiones salientes destinadas a diferentes direcciones remotas. Esto es análogo a tener varias conexiones entrantes a la misma dirección local representada por un objeto de escucha.

Si la función devuelve STATUS_SUCCESS, el objeto creado se devuelve en el parámetro ppNdkSharedEndpoint . Si NdkCreateSharedEndpoint devuelve STATUS_PENDING, la función NdkCreateCompletion (NDK_FN_CREATE_COMPLETION) que se especifica en el parámetro CreateCompletion devuelve el objeto creado.

Requisitos

Requisito Value
Cliente mínimo compatible Ninguno compatible, compatible con NDIS 6.30 y versiones posteriores.
Servidor mínimo compatible Windows Server 2012
Plataforma de destino Windows
Encabezado ndkpi.h (incluya Ndkpi.h)
IRQL <=DISPATCH_LEVEL

Consulte también

Requisitos de duración del objeto NDKPI

NDK_ADAPTER

NDK_ADAPTER_DISPATCH

NDK_FN_CREATE_COMPLETION

NDK_SHARED_ENDPOINT