Compartir a través de


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

FWPS_VSWITCH_EVENT_TYPE

FWPS_VSWITCH_RUNTIME_STATE_RESTORE_CALLBACK0

FilterOidRequest

FwpsvSwitchEventsSubscribe0

FwpsvSwitchNotifyComplete0

NDIS_SWITCH_NIC_SAVE_STATE

NDIS_SWITCH_PARAMETERS

OID_SWITCH_NIC_SAVE