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
圖說文字驅動程式所提供內容的指標。 驅動程式會將此指標傳遞至 FwpsvSwitchEventsSubscribe0 函式的 notifyContext 參數。 此參數是選擇性的,可以是 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代碼。
傳回碼 | Description |
---|---|
|
圖說文字驅動程式會接受來自篩選引擎的通知。 |
|
作業擱置中,稍後將會完成。 圖說文字驅動程式會呼叫 FwpsvSwitchNotifyComplete0 函式,以完成擱置的作業。 |
|
發生錯誤。 |
備註
圖說文字驅動程式會藉由呼叫 FwpsvSwitchEventsSubscribe0 函式來註冊 vSwitchRuntimeStateRestoreNotifyFn 函式。
如需儲存運行時間狀態的相關信息,請參閱 vSwitchRuntimeStateSaveNotifyFn (FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0) 函式。
每個儲存的數據區段都會透過目標系統上的虛擬交換器擴充功能堆疊或在還原作業期間本機系統上傳送 OID_SWITCH_NIC_RESTORE OID 來還原。 在與已註冊的提供者 GUID 比對之後,其會透過 vSwitchRuntimeStateRestoreNotifyFn 將數據分派至正確的圖說文字。 在此情況下,vSwitchRuntimeStateRestoreNotifyFn 的 eventType 參數會設定為 FWPS_VSWITCH_EVENT_RUNTIME_STATE_RESTORE。
圖說文字可以從 vSwitchRuntimeStateRestoreNotifyFn 傳回STATUS_PENDING。 在此情況下,在 FilterOidRequest 處理程式中,其會傳回STATUS_PENDING,並在稍後完成。 圖說文字驅動程式會呼叫 FwpsvSwitchNotifyComplete0 函式,以完成擱置的作業。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 8 開始提供。 |
目標平台 | Windows |
標頭 | fwpsk.h (包含 Fwpsk.h) |
IRQL | <= DISPATCH_LEVEL |