FltVetoBypassIo 、BypassIO 要求を拒否するために必要な情報を取得します。
構文
NTSTATUS FLTAPI FltVetoBypassIo(
[in] PFLT_CALLBACK_DATA CallbackData,
[in] PCFLT_RELATED_OBJECTS FltObjects,
[in] NTSTATUS OperationStatus,
[in] PCUNICODE_STRING FailureReason
);
パラメーター
[in] CallbackData
FSCTL_MANAGE_BYPASS_IOの FLT_CALLBACK_DATA へのポインター。
[in] FltObjects
BypassIO 操作の FLT_RELATED_OBJECTS 構造体へのポインター。
[in] OperationStatus
拒否のフィルターによって提供される NTSTATUS エラー コード。
[in] FailureReason
フィルターが BypassIO 有効化要求を拒否する理由の詳細を示す一意の説明文字列。
戻り値
FltVetoBypassIo は、正常に完了するとSTATUS_SUCCESSを返します。それ以外の場合は、次のいずれかの NTSTATUS 値を返します。
価値 | 意味 |
---|---|
STATUS_BUFFER_TOO_SMALL | FSCTL の 出力バッファー が小さすぎます。 |
STATUS_INVALID_BUFFER_SIZE | FSCTL の 入力バッファー が小さすぎます。 |
STATUS_INVALID_PARAMETER_3 | 適切なエラー コードが提供されませんでした。 |
STATUS_INVALID_PARAMETER_4 | 適切なエラー理由が提供されませんでした。 |
STATUS_NOT_SUPPORTED | 要求された操作はサポートされていないか、操作前のコールバックから要求されませんでした。 |
備考
ミニフィルターは、ファイル FS_BPIO_OP_ENABLE またはFS_BPIO_OP_QUERY要求 を拒否する場合に、FltVetoBypassIo を呼び出します。 ミニフィルターは、操作前のコールバックからのみこのルーチンを呼び出す必要があります。
FltVetoBypassIo 、CallbackData に関連付けられた呼び出し元によって割り当てられた FS_BPIO_OUTPUT 構造体に、BypassIO 要求を拒否するために必要な情報が入力されます。 呼び出し元は、構造体を保持するのに十分な大きさのバッファーを提供する必要があります。
FltVetoBypassIo 、状態、フィルター指定の理由、フィルターの名前を使用して ETW イベントをログに記録します。
詳細については、「BypassIO」を参照してください。フィルター ドライバーの と、BypassIO 操作 をサポートする。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 11 |
ヘッダー | fltkernel.h |
IRQL | <= APC_LEVEL |