PFLT_CONNECT_NOTIFY función de devolución de llamada (fltkernel.h)
FltMgr llama al ConnectNotifyCallback de un minifiltro función de devolución de llamada para notificar al minifiltro cuando se solicita una nueva conexión a un puerto de comunicación.
Sintaxis
PFLT_CONNECT_NOTIFY PfltConnectNotify;
NTSTATUS PfltConnectNotify(
PFLT_PORT ClientPort,
PVOID ServerPortCookie,
PVOID ConnectionContext,
ULONG SizeOfContext,
PVOID *ConnectionPortCookie
)
{...}
Parámetros
ClientPort
[in] Opaco, FltMgridentificador generado para el nuevo puerto de cliente que se establece entre la aplicación en modo de usuario y el minifiltro en modo kernel.
El minifiltro debe pasar este identificador como el parámetro ClientPort a fltSendMessage al enviar y responder a mensajes en este puerto de cliente.
El minifiltro debe llamar finalmente a FltCloseClientPort para cerrar este puerto de cliente, normalmente desde su rutina de DisconnectNotifyCallback.
ServerPortCookie
[in] Puntero a la información de contexto definida por el minifiltro. El minifiltro puede usar esta información para distinguir entre varios puertos del servidor de comunicación que puede crear. Cuando se creó el puerto del servidor, el controlador de minifiltro pasó este puntero de contexto como parámetro ServerPortCookie a FltCreateCommunicationPort.
ConnectionContext
[in] Puntero de información de contexto que la aplicación en modo de usuario pasó en el parámetro lpContext a FilterConnectCommunicationPort.
SizeOfContext
[in] Tamaño, en bytes, del búfer al que ConnectionContext.
ConnectionPortCookie
[out] Puntero a la información del miniporte que identifica de forma única este puerto de cliente. El minifiltro puede usar esta cookie para identificar la conexión cuando FltMgr la pasa en llamadas posteriores a messageNotifyCallback y DisconnectNotifyCallback.
Valor devuelto
connectNotifyCallback devuelve STATUS_SUCCESS si la operación se realiza correctamente y se ha aceptado la conexión. De lo contrario, devuelve un valor NTSTATUS adecuado, como:
Código devuelto | Significado |
---|---|
STATUS_INSUFFICIENT_RESOURCES | No hay suficientes recursos para completar la operación. |
STATUS_INVALID_PARAMETER | Uno o varios de los parámetros de entrada no son válidos. |
Observaciones
FltMgr llama a esta rutina cada vez que una aplicación en modo de usuario llama a FilterConnectCommunicationPort para enviar una solicitud de conexión al controlador de minifiltro.
El minifiltro debe realizar cualquier validación necesaria del intento de conexión.
Para obtener más información, vea Comunicación entre el modo de usuario y los minifiltros.
Requisitos
Requisito | Valor |
---|---|
encabezado de |
fltkernel.h |
biblioteca de |
FltMgr.lib |
DLL de |
FltMgr.sys |
irQL | PASSIVE_LEVEL |