FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0 función de devolución de llamada (fwpsk.h)
El motor de filtro llama a la función de llamada vSwitchRuntimeStateSaveNotifyFn (FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0) para notificar a un controlador de llamada sobre los eventos de guardado de estado en tiempo de ejecución del conmutador virtual.
Nota
FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0 es una versión específica de FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK. Para obtener más información, vea NOMBRES DE Version-Independent DE PMA y versiones específicas de Windows dirigidas a destinatarios.
Sintaxis
FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0 FwpsVswitchRuntimeStateSaveCallback0;
NTSTATUS FwpsVswitchRuntimeStateSaveCallback0(
[in, optional] void *notifyContext,
[in] void *completionContext,
[in] FWPS_VSWITCH_EVENT_TYPE eventType,
[in] const NDIS_SWITCH_PARAMETERS *vSwitch,
[in] NDIS_SWITCH_PORT_ID portId,
void **runtimeState,
[out] SIZE_T *runtimeStateLength
)
{...}
Parámetros
[in, optional] notifyContext
Puntero a un contexto proporcionado por el controlador de llamada. El controlador pasó este puntero al parámetro notifyContext de la función FwpsvSwitchEventsSubscribe0 . Este parámetro es opcional y puede ser NULL.
[in] completionContext
Puntero a un contexto de finalización proporcionado por el controlador de llamada. Este parámetro es opcional y puede ser NULL.
[in] eventType
Tipo de evento de conmutador virtual especificado como uno de los valores de enumeración de FWPS_VSWITCH_EVENT_TYPE . Para obtener más información, vea la sección Comentarios.
[in] vSwitch
Puntero a una estructura NDIS_SWITCH_PARAMETERS que contiene información sobre un conmutador virtual.
Nota
La información de la estructura NDIS_SWITCH_PARAMETERS refleja el estado inicial del conmutador virtual, no necesariamente su estado actual. En concreto, es posible que los miembros NumSwitchPorts e IsActive sigan teniendo su valor inicial de cero, a menos que se desencadene un evento PnP de conmutador virtual. La información de estado actual se puede encontrar en los demás parámetros de esta función de devolución de llamada.
[in] portId
Identificador de puerto del conmutador de origen.
runtimeState
Ubicación del búfer de resultados de salida de estado en tiempo de ejecución.
[out] runtimeStateLength
Longitud, en bytes, de la información de estado en tiempo de ejecución en el búfer de estado en tiempo de ejecución.
Valor devuelto
La función FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0 de una llamada devuelve uno de los siguientes códigos NTSTATUS.
Código devuelto | Descripción |
---|---|
STATUS_SUCCESS | El controlador de llamada acepta la notificación del motor de filtro. |
STATUS_PENDING | La operación está pendiente y se completará más adelante. El controlador de llamada llamará a la función FwpsvSwitchNotifyComplete0 para completar la operación pendiente. |
Otros códigos de estado | Se produjo un error. |
Comentarios
Un controlador de llamada registra una función vSwitchRuntimeStateSaveNotifyFn llamando a la función FwpsvSwitchEventsSubscribe0 .
Si la devolución de llamada vSwitchRuntimeStateSaveNotifyFn está registrada, se notificará a la llamada para recuperar el estado en tiempo de ejecución de una máquina virtual de origen y para restaurar el estado en tiempo de ejecución de una máquina virtual de destino durante la migración en vivo o una operación local de guardado y restauración. En el caso de guardado, el parámetro eventType de vSwitchRuntimeStateSaveNotifyFn se establece en FWPS_VSWITCH_EVENT_RUNTIME_STATE_SAVE.
El controlador del protocolo de extensión de conmutador virtual emite una solicitud de método de identificador de objeto (OID) de OID_SWITCH_NIC_SAVE durante una operación para ahorrar datos en tiempo de ejecución para un puerto de conmutador virtual. El controlador de filtro devuelve estos datos para que los datos en tiempo de ejecución de un puerto de conmutador virtual se puedan guardar y restaurar más adelante.
Después de recopilar el blob de datos en tiempo de ejecución de todas las llamadas, EL PMA rellena la estructura NDIS_SWITCH_NIC_SAVE_STATE con los datos recopilados y completa la solicitud de estado de guardado.
Una llamada puede devolver STATUS_PENDING desde vSwitchRuntimeStateSaveNotifyFn. En este caso, EL PMA devolverá STATUS_PENDING en el controlador FilterOidRequest y lo completará más adelante. El controlador de llamada llamará a la función FwpsvSwitchNotifyComplete0 para completar la operación pendiente.
Consulte la función vSwitchRuntimeStateRestoreNotifyFn (FWPS_VSWITCH_RUNTIME_STATE_RESTORE_CALLBACK0) para obtener información sobre cómo restaurar el estado en tiempo de ejecución.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible a partir de Windows 8. |
Plataforma de destino | Windows |
Encabezado | fwpsk.h (incluya Fwpsk.h) |
IRQL | <= DISPATCH_LEVEL |
Consulte también
Funciones de llamada del controlador de llamada