функция обратного вызова FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0 (fwpsk.h)

Подсистема фильтрации вызывает функцию выноски vSwitchRuntimeStateSaveNotifyFn (FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0), чтобы уведомить драйвер выноски о событиях сохранения состояния во время выполнения виртуального коммутатора.

Примечание

FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0 — это конкретная версия FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK. Дополнительные сведения см. в разделе "Имена Version-Independent МПП" и "Назначение конкретных версий Windows ".

Синтаксис

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
)
{...}

Параметры

[in, optional] notifyContext

Указатель на контекст, предоставленный драйвером выноски. Драйвер передал этот указатель на параметр notifyContext функции FwpsvSwitchEventsSubscribe0 . Этот параметр является необязательным и может иметь значение NULL.

[in] completionContext

Указатель на контекст завершения, предоставленный драйвером выноски. Этот параметр является необязательным и может иметь значение NULL.

[in] eventType

Тип события виртуального коммутатора, указанного в качестве одного из значений перечисления FWPS_VSWITCH_EVENT_TYPE . Дополнительные сведения см. в подразделе "Примечания".

[in] vSwitch

Указатель на структуру NDIS_SWITCH_PARAMETERS , содержащую сведения о виртуальном коммутаторе.

Примечание

Сведения в структуре NDIS_SWITCH_PARAMETERS отражают начальное состояние виртуального коммутатора, а не обязательно его текущее состояние. В частности, члены NumSwitchPorts и IsActive могут по-прежнему иметь начальное значение нуля, если событие PnP виртуального коммутатора не было активировано. Сведения о текущем состоянии можно найти в других параметрах этой функции обратного вызова.

[in] portId

Идентификатор порта коммутатора источника.

runtimeState

Расположение выходного буфера результатов состояния выполнения.

[out] runtimeStateLength

Длина (в байтах) сведений о состоянии времени выполнения в буфере состояния времени выполнения.

Возвращаемое значение

Функция FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0 выноски возвращает один из следующих кодов NTSTATUS.

Код возврата Описание
STATUS_SUCCESS Драйвер выноски принимает уведомление от модуля фильтрации.
STATUS_PENDING Операция ожидается и будет завершена позже. Драйвер выноски вызовет функцию FwpsvSwitchNotifyComplete0 для завершения ожидающей операции.
Другие коды состояния Произошла ошибка.

Примечания

Драйвер выноски регистрирует функцию vSwitchRuntimeStateSaveNotifyFn путем вызова функции FwpsvSwitchEventsSubscribe0 .

Если обратный вызов vSwitchRuntimeStateSaveNotifyFn зарегистрирован, выноска будет уведомлена о получении состояния времени выполнения исходной виртуальной машины и восстановления состояния среды выполнения целевой виртуальной машины во время динамической миграции или локальной операции сохранения и восстановления. В случае сохранения параметр eventTypevSwitchRuntimeStateSaveNotifyFn имеет значение FWPS_VSWITCH_EVENT_RUNTIME_STATE_SAVE.

Драйвер протокола расширения виртуального коммутатора выдает запрос метода идентификатора объекта (OID) OID_SWITCH_NIC_SAVE во время операции для сохранения данных во время выполнения для порта виртуального коммутатора. Драйвер фильтра возвращает эти данные, чтобы данные времени выполнения для порта виртуального коммутатора могли быть сохранены и восстановлены позже.

После сбора большого двоичного объекта данных во время выполнения из всех выносок МПП заполняет структуру NDIS_SWITCH_NIC_SAVE_STATE собранными данными и завершает запрос состояния сохранения.

Выноска может возвращать STATUS_PENDING из vSwitchRuntimeStateSaveNotifyFn. В этом случае МПП вернет STATUS_PENDING в обработчике FilterOidRequest и завершит его позже. Драйвер выноски вызовет функцию FwpsvSwitchNotifyComplete0 для завершения ожидающей операции.

Сведения о восстановлении состояния среды выполнения см. в функции vSwitchRuntimeStateRestoreNotifyFn (FWPS_VSWITCH_RUNTIME_STATE_RESTORE_CALLBACK0).

Требования

   
Минимальная версия клиента Доступно начиная с Windows 8.
Целевая платформа Windows
Header fwpsk.h (include Fwpsk.h)
IRQL <= DISPATCH_LEVEL

См. также

Функции выноски драйвера выносок

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