FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0 função de retorno de chamada (fwpsk.h)

O mecanismo de filtro chama a função de texto explicativo vSwitchRuntimeStateSaveNotifyFn (FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0) para notificar um driver de texto explicativo sobre eventos de salvamento de estado de tempo de execução do comutador virtual.

Observação

FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0 é uma versão específica do FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK. Consulte nomes de Version-Independent WFP e versões específicas de destino do Windows para obter mais informações.

Sintaxe

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

Um ponteiro para um contexto fornecido pelo driver de texto explicativo. O driver passou esse ponteiro para o parâmetro notifyContext da função FwpsvSwitchEventsSubscribe0 . Esse parâmetro é opcional e pode ser NULL.

[in] completionContext

Um ponteiro para um contexto de conclusão fornecido pelo driver de texto explicativo. Esse parâmetro é opcional e pode ser NULL.

[in] eventType

O tipo de evento de comutador virtual especificado como um dos valores de enumeração FWPS_VSWITCH_EVENT_TYPE . Para obter mais informações, consulte Comentários.

[in] vSwitch

Um ponteiro para uma estrutura NDIS_SWITCH_PARAMETERS que contém informações sobre um comutador virtual.

Observação

As informações na estrutura NDIS_SWITCH_PARAMETERS refletem o estado inicial do comutador virtual, não necessariamente seu estado atual. Em particular, os membros NumSwitchPorts e IsActive ainda podem ter seu valor inicial de zero, a menos que um evento PnP de comutador virtual tenha sido disparado. As informações de estado atuais podem ser encontradas nos outros parâmetros para essa função de retorno de chamada.

[in] portId

O identificador da porta do comutador de origem.

runtimeState

O local do buffer de resultado de saída de estado em tempo de execução.

[out] runtimeStateLength

O comprimento, em bytes, das informações de estado em tempo de execução no buffer de estado de tempo de execução.

Valor retornado

A função FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0 de um texto explicativo retorna um dos seguintes códigos NTSTATUS.

Código de retorno Descrição
STATUS_SUCCESS O driver de texto explicativo aceita a notificação do mecanismo de filtro.
STATUS_PENDING A operação está pendente e será concluída posteriormente. O driver de texto explicativo chamará a função FwpsvSwitchNotifyComplete0 para concluir a operação pendente.
Outros códigos de status Ocorreu um erro.

Comentários

Um driver de texto explicativo registra uma função vSwitchRuntimeStateSaveNotifyFn chamando a função FwpsvSwitchEventsSubscribe0 .

Se o retorno de chamada vSwitchRuntimeStateSaveNotifyFn for registrado, o texto explicativo será notificado para recuperar o estado de tempo de execução de uma VM de origem e restaurar o estado de tempo de execução de uma VM de destino durante a migração dinâmica ou uma operação local de salvamento e restauração. No caso de salvamento, o parâmetro eventType de vSwitchRuntimeStateSaveNotifyFn está definido como FWPS_VSWITCH_EVENT_RUNTIME_STATE_SAVE.

O driver de protocolo de extensão de comutador virtual emite uma solicitação de método OID (identificador de objeto) de OID_SWITCH_NIC_SAVE durante uma operação para salvar dados em tempo de execução para uma porta de comutador virtual. O driver de filtro retorna esses dados para que os dados em tempo de execução para uma porta de comutador virtual possam ser salvos e restaurados posteriormente.

Depois que o blob de dados em tempo de execução de todos os textos explicativos for coletado, o WFP preencherá a estrutura NDIS_SWITCH_NIC_SAVE_STATE com os dados coletados e concluirá a solicitação de estado de salvamento.

Um texto explicativo pode retornar STATUS_PENDING de vSwitchRuntimeStateSaveNotifyFn. Nesse caso, o WFP retornará STATUS_PENDING no manipulador FilterOidRequest e o concluirá posteriormente. O driver de texto explicativo chamará a função FwpsvSwitchNotifyComplete0 para concluir a operação pendente.

Consulte a função vSwitchRuntimeStateRestoreNotifyFn (FWPS_VSWITCH_RUNTIME_STATE_RESTORE_CALLBACK0) para obter informações sobre como restaurar o estado de tempo de execução.

Requisitos

   
Cliente mínimo com suporte Disponível a partir do Windows 8.
Plataforma de Destino Windows
Cabeçalho fwpsk.h (inclua Fwpsk.h)
IRQL <= DISPATCH_LEVEL

Confira também

Funções de texto explicativo do driver de texto explicativo

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