FltVetoBypassIo 関数 (fltkernel.h)
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 |
Header | fltkernel.h |
IRQL | <= APC_LEVEL |