IOCTL_AACS_READ_BINDING_NONCE IOCTL (ntddcdvd.h)

保護されたデータ領域を読み取るためのプロトコルの一部として、ディスク上の指定されたバイト オフセットから始まる Advanced Access Content System (AACS) バインディング nonce を読み取ります。

メジャー コード

IRP_MJ_DEVICE_CONTROL

[入力バッファー]

Irp-AssociatedIrp.SystemBuffer> のバッファーには、DVD_SESSION_ID、開始論理ブロック アドレス、および論理ユニットがバインド nonce を生成する必要があるセクターの数を指定するAACS_READ_BINDING_NONCE型の構造体が含まれています。

入力バッファーの長さ

AACS_READ_BINDING_NONCE構造体の長さ。

出力バッファー

Irp-AssociatedIrp.SystemBuffer> のバッファーには、バインディング nonce を指定するAACS_BINDING_NONCE型の値が含まれています。

出力バッファーの長さ

AACS_READ_BINDING_NONCE構造体の長さ。

ステータス ブロック

[ 情報 ] フィールドは、転送されたバイト数に設定されます。 [状態] フィールドは、STATUS_SUCCESSに設定されているか、場合によってはSTATUS_INSUFFICIENT_RESOURCES。

注釈

IOCTL_AACS_READ_BINDING_NONCE要求は、保護されたデータ領域の読み取りを担当する AACS 認証プロトコルの部分に対応します。 このプロトコルの詳細については、「 Advanced Access Content System」、「Introduction and Common Cryptographic Elements 」の仕様を参照してください。詳細アクセス コンテンツ システム ライセンス管理者 (AACS LA) によって公開されています。

AGID は、IOCTL_AACS_READ_BINDING_NONCE要求の完了後に自動的に解放されます。

ファイル システムのサポートを使用しないクライアントでは、AACS_READ_BINDING_NONCEHandle メンバーをINVALID_HANDLE_VALUEに設定し、StartLBA メンバーと NumberOfSectors メンバーの明示的な値を指定する必要があります。

CDROM ドライバーが IOCTL を受信すると、 StartLBA フィールドが MAXULONGLONG に設定されているか、 NumberOfSectors フィールドが MAXULONG に設定されている場合、IOCTL はSTATUS_INVALID_PARAMETERですぐに失敗します。 この場合、呼び出し元は AGID を手動で解放する必要があります。

要件

要件
Header ntddcdvd.h (Ntddcdvd.h を含む)