datapath-windows/ovsext/User.c
/*
 * --------------------------------------------------------------------------
 * Handler for reading missed pacckets from the driver event queue. This
 * handler is executed when user modes issues a socket receive on a socket
 * --------------------------------------------------------------------------
 */
Handler for reading missed pacckets from the driver event queue. This
handler is executed when user modes issues a socket receive on a socket
Handler for reading missed pacckets from the driver event queue . This handler is executed when user modes issues a socket receive on a socket
NTSTATUS
OvsReadPacketCmdHandler(POVS_USER_PARAMS_CONTEXT usrParamsCtx,
                       UINT32 *replyLen)
{
#ifdef DBG
    POVS_MESSAGE msgOut = (POVS_MESSAGE)usrParamsCtx->outputBuffer;
#endif
    POVS_OPEN_INSTANCE instance =
        (POVS_OPEN_INSTANCE)usrParamsCtx->ovsInstance;
    NTSTATUS status;
    ASSERT(usrParamsCtx->devOp == OVS_READ_DEV_OP);
    ASSERT(instance->dumpState.ovsMsg == NULL);
    ASSERT(instance->packetQueue != NULL);
    ASSERT(msgOut != NULL && usrParamsCtx->outputLength >= sizeof *msgOut);
    status = OvsReadDpIoctl(instance->fileObject, usrParamsCtx->outputBuffer,
                            usrParamsCtx->outputLength, replyLen);
    return status;
}
NTSTATUS OvsReadPacketCmdHandler ( POVS_USER_PARAMS_CONTEXT usrParamsCtx , UINT32 * replyLen ) { #ifdef DBG POVS_MESSAGE msgOut = ( POVS_MESSAGE ) usrParamsCtx -> outputBuffer ; #endif POVS_OPEN_INSTANCE instance = ( POVS_OPEN_INSTANCE ) usrParamsCtx -> ovsInstance ; NTSTATUS status ; ASSERT ( usrParamsCtx -> devOp == OVS_READ_DEV_OP ) ; ASSERT ( instance -> dumpState . ovsMsg == NULL ) ; ASSERT ( instance -> packetQueue != NULL ) ; ASSERT ( msgOut != NULL && usrParamsCtx -> outputLength >= sizeof * msgOut ) ; status = OvsReadDpIoctl ( instance -> fileObject , usrParamsCtx -> outputBuffer , usrParamsCtx -> outputLength , replyLen ) ; return status ; }
Handler for reading missed pacckets from the driver event queue.
Handler for reading missed pacckets from the driver event queue .
/* Should never read events with a dump socket */ /* Must have an packet queue */ /* Output buffer has been validated while validating read dev op. */ /* Read a packet from the instance queue */