PFND3D11_1DDI_CONFIGUREAUTHENTICATEDCHANNEL コールバック関数 (d3d10umddi.h)
アプリケーションからの要求を処理して、コンテンツ保護用に認証済みチャネルを構成します。 Windows ディスプレイ ドライバー モデル (WDDM) 1.2 以降のユーザー モード ディスプレイ ドライバーによって実装されます。
構文
PFND3D11_1DDI_CONFIGUREAUTHENTICATEDCHANNEL Pfnd3d111DdiConfigureauthenticatedchannel;
HRESULT Pfnd3d111DdiConfigureauthenticatedchannel(
D3D10DDI_HDEVICE hDevice,
D3D11_1DDI_HAUTHCHANNEL hCAuthChannel,
UINT InputDataSize,
const VOID *pInputData,
D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT *pOutputData
)
{...}
パラメーター
hDevice
ディスプレイ デバイスへのハンドル (グラフィックス コンテキスト)。
hCAuthChannel
CreateAuthenticatedChannel(D3D11_1) 関数の呼び出しによって作成された認証済みチャネル オブジェクトへのハンドル。
InputDataSize
pInputData パラメーターで指定された配列のサイズ (バイト単位)。
pInputData
コマンドの入力データを含むバイト配列へのポインター。 詳細については、「解説」セクションを参照してください。
pOutputData
D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT 構造体へのポインター。 詳細については、「解説」セクションを参照してください。
戻り値
次のいずれかの値を返します。
リターン コード | 説明 |
---|---|
S_OK | 認証されたチャネルが正常に構成されました。 |
E_FAIL | ディスプレイ ミニポート ドライバーは、指定されたコマンドをサポートしていません。 |
E_INVALIDARG | パラメーターが検証され、正しくないと判断されました。 |
E_OUTOFMEMORY | 操作を完了するためにメモリを使用できませんでした。 |
備考
pInputData パラメーターによって参照されるバイト配列は、次のように書式設定されます。
この配列は、D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT 構造体で始まります。
この構造体に続くデータは、構造体の ConfigureType メンバーによって指定された形式です。
次の一覧では、ConfigureType メンバーに基づいて、このデータの形式について説明します。
D3D11_1DDI_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_GUIDD3D11_1DDI_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION
D3D11_1DDI_AUTHENTICATED_CONFIGURE_ENCRYPTION_WHEN_ACCESSIBLE_GUIDD3D11_1DDI_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION
D3D11_1DDI_AUTHENTICATED_CONFIGURE_INITIALIZE_GUIDD3D11_1DDI_AUTHENTICATED_CONFIGURE_INITIALIZE
D3D11_1DDI_AUTHENTICATED_CONFIGURE_PROTECTION_GUIDD3D11_1DDI_AUTHENTICATED_CONFIGURE_PROTECTION
D3D11_1DDI_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_GUIDD3D11_1DDI_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE
D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT 構造体には、データの AES ベースの 1 キー CBC メッセージ認証コード (OMAC) が含まれています。 ディスプレイ ミニポート ドライバーは、データを認証するデータに対して独自の OMAC を計算する必要があります。 この入力構造体には、認証されたチャネルへのドライバー ハンドル、シーケンス番号、および構成の種類を示す GUID も含まれます。
ディスプレイ ミニポート ドライバーは、D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT 構造体を初期化するときに、次の手順に従います。
ドライバーは、入力データを D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT 構造体にコピーする必要があります。
ドライバーは、ConfigureAuthenticatedChannel(D3D11_1) 呼び出しで返されるリターン コードと同じリターン コードに ReturnCode メンバーを設定する必要があります。 これにより、リターン コードにアクセスするための安全なメカニズムがアプリケーションに提供されます。
ドライバーは、omac メンバーを 0 に設定し、構造体内のデータの OMAC を計算します。 その後、ドライバーは omac メンバーを計算した OMAC に設定します。
ディスプレイ ミニポート ドライバーは、次の条件下で、ConfigureAuthenticatedChannel 呼び出しの E_INVALIDARG を返す必要があります。
D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT 構造体の omac メンバーが、ドライバーが計算した OMAC と一致しません。
シーケンス番号が、前の構成呼び出しで指定されたシーケンス番号より大きくない。
シーケンス番号は、ConfigureAuthenticatedChannel(D3D11_1) 関数の呼び出しによってまだ初期化されていません。
InputDataSize パラメーターは、D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT 構造体のサイズと、D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUTで指定された構造体のサイズより小さいです。ConfigureTypemember。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 8 |
サポートされる最小サーバー | Windows Server 2012 |
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | d3d10umddi.h (D3d10umddi.h を含む) |
関連項目
CreateAuthenticatedChannel(D3D11_1) の