функция обратного вызова FWPS_VSWITCH_RUNTIME_STATE_RESTORE_CALLBACK0 (fwpsk.h)
Обработчик фильтров вызывает функцию выноски vSwitchRuntimeStateRestoreNotifyFn (FWPS_VSWITCH_RUNTIME_STATE_RESTORE_CALLBACK0), чтобы уведомить драйвер выноски о событиях восстановления состояния выполнения виртуального коммутатора.
Синтаксис
FWPS_VSWITCH_RUNTIME_STATE_RESTORE_CALLBACK0 FwpsVswitchRuntimeStateRestoreCallback0;
NTSTATUS FwpsVswitchRuntimeStateRestoreCallback0(
[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,
[in] SIZE_T runtimeStateLength
)
{...}
Параметры
[in, optional] notifyContext
Указатель на контекст, предоставляемый драйвером выноски. Драйвер передал этот указатель в параметр notifyContext функции FwpsvSwitchEventsSubscribe0 . Этот параметр является необязательным и может иметь значение NULL.
[in] completionContext
Указатель на контекст завершения, предоставляемый драйвером выноски. Этот параметр является необязательным и может иметь значение NULL.
[in] eventType
Тип события виртуального коммутатора, указанного в качестве одного из значений перечисления FWPS_VSWITCH_EVENT_TYPE . Дополнительные сведения см. в подразделе "Примечания".
[in] vSwitch
Указатель на структуру NDIS_SWITCH_PARAMETERS , содержащую сведения о виртуальном коммутаторе.
[in] portId
Идентификатор порта переключения источника.
runtimeState
Расположение буфера выходных результатов состояния выполнения.
[in] runtimeStateLength
Длина (в байтах) сведений о состоянии времени выполнения в буфере состояния времени выполнения.
Возвращаемое значение
Выноска
FWPS_VSWITCH_RUNTIME_STATE_RESTORE_CALLBACK0 функция возвращает один из следующих кодов NTSTATUS.
Код возврата | Описание |
---|---|
|
Драйвер выноски принимает уведомление от обработчика фильтров. |
|
Операция находится в состоянии ожидания и будет завершена позже. Драйвер выноски вызовет функцию FwpsvSwitchNotifyComplete0 для завершения ожидающей операции. |
|
Произошла ошибка. |
Комментарии
Драйвер выноски регистрирует функцию vSwitchRuntimeStateRestoreNotifyFn , вызывая функцию FwpsvSwitchEventsSubscribe0 .
Сведения о сохранении состояния выполнения см. в функции vSwitchRuntimeStateSaveNotifyFn (FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0).
Каждый сохраненный сегмент данных будет восстановлен с помощью OID_SWITCH_NIC_RESTORE OID, отправляемого через стеки расширений виртуального коммутатора в целевой системе или в локальной системе во время операции восстановления. МПП отправляет данные в правильную выноску через vSwitchRuntimeStateRestoreNotifyFn после сопоставления с guid зарегистрированного поставщика. В этом случае параметру eventTypevSwitchRuntimeStateRestoreNotifyFn присвоено значение FWPS_VSWITCH_EVENT_RUNTIME_STATE_RESTORE.
Выноска может возвращать STATUS_PENDING из vSwitchRuntimeStateRestoreNotifyFn. В этом случае ВПП вернет STATUS_PENDING в обработчике FilterOidRequest и завершит его позже. Драйвер выноски вызовет функцию FwpsvSwitchNotifyComplete0 для завершения ожидающей операции.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно начиная с Windows 8. |
Целевая платформа | Windows |
Header | fwpsk.h (включая Fwpsk.h) |
IRQL | <= DISPATCH_LEVEL |
См. также раздел
Функции выноски драйвера выноски