Partager via


PFND3D11_1DDI_CONFIGUREAUTHENTICATEDCHANNEL fonction de rappel (d3d10umddi.h)

Traite une demande d’une application pour configurer un canal authentifié pour la protection du contenu. Implémenté par un pilote d’affichage en mode utilisateur Windows (WDDM) 1.2 ou version ultérieure.

Syntaxe

PFND3D11_1DDI_CONFIGUREAUTHENTICATEDCHANNEL Pfnd3d111DdiConfigureauthenticatedchannel;

HRESULT Pfnd3d111DdiConfigureauthenticatedchannel(
  D3D10DDI_HDEVICE hDevice,
  D3D11_1DDI_HAUTHCHANNEL hCAuthChannel,
  UINT InputDataSize,
  const VOID *pInputData,
  D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT *pOutputData
)
{...}

Paramètres

hDevice

Handle de l’appareil d’affichage (contexte graphique).

hCAuthChannel

Handle de l’objet de canal authentifié qui a été créé via un appel à la fonction CreateAuthenticatedChannel(D3D11_1).

InputDataSize

Taille, en octets, du tableau spécifié par le paramètre pInputData .

pInputData

Pointeur vers un tableau d’octets qui contient des données d’entrée pour la commande. Pour plus d'informations, consultez la section Notes.

pOutputData

Pointeur vers une structure D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT . Pour plus d'informations, consultez la section Notes.

Valeur retournée

Renvoie l'une des valeurs suivantes :

Code de retour Description
S_OK Le canal authentifié a été configuré avec succès.
E_FAIL Le pilote miniport d’affichage ne prend pas en charge la commande spécifiée
E_INVALIDARG Les paramètres ont été validés et déterminés comme incorrects.
E_OUTOFMEMORY La mémoire n’était pas disponible pour terminer l’opération.

Remarques

Le tableau d’octets référencé par le paramètre pInputData est mis en forme de la manière suivante :

La liste suivante décrit le format de ces données en fonction du membre ConfigureType .

  • D3D11_1DDI_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_GUIDD3D11_1DDI_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION

  • D3D11_1DDI_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION D3D11_1DDI_AUTHENTICATED_CONFIGURE_ENCRYPTION_WHEN_ACCESSIBLE_GUID

  • D3D11_1DDI_AUTHENTICATED_CONFIGURE_INITIALIZE D3D11_1DDI_AUTHENTICATED_CONFIGURE_INITIALIZE_GUID

  • D3D11_1DDI_AUTHENTICATED_CONFIGURE_PROTECTION_GUIDD3D11_1DDI_AUTHENTICATED_CONFIGURE_PROTECTION

  • D3D11_1DDI_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE D3D11_1DDI_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_GUID

La structure D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT contient un code D’authentification de message CBC (OMAC) basé sur AES. Le pilote miniport d’affichage doit calculer son propre OMAC sur les données pour authentifier les données. Cette structure d’entrée contient également un handle de pilote pour le canal authentifié, un numéro de séquence et un GUID qui indique le type de configuration.

Le pilote miniport d’affichage suit les étapes suivantes lorsqu’il initialise la structure D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT :

  1. Le pilote doit copier les données d’entrée dans la structure D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT .

  2. Le pilote doit définir le membre ReturnCode sur le même code de retour qu’il retournera pour l’appel ConfigureAuthenticatedChannel(D3D11_1). Cela fournit à l’application un mécanisme sécurisé d’accès au code de retour.

  3. Le pilote définit le membre omac sur zéro, puis calcule un OMAC pour les données de la structure. Le pilote définit ensuite le membre omac sur l’OMAC qu’il a calculé

Le pilote miniport d’affichage doit retourner E_INVALIDARG pour l’appel ConfigureAuthenticatedChannel dans les conditions suivantes :

  • Le membre omac de la structureD3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT ne correspond pas à l’OMAC calculé par le pilote.

  • Le numéro de séquence n’est pas supérieur à un numéro de séquence spécifié dans un appel de configuration précédent.

  • Le numéro de séquence n’a pas encore été initialisé par un appel à la fonction ConfigureAuthenticatedChannel(D3D11_1).

  • Le paramètre InputDataSize est inférieur à la taille de la structure D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT plus la taille de la structure spécifiée par le D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT. ConfigureTypemember.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8
Serveur minimal pris en charge Windows Server 2012
Plateforme cible Desktop (Expérience utilisateur)
En-tête d3d10umddi.h (include D3d10umddi.h)

Voir aussi

CreateAuthenticatedChannel(D3D11_1)

D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT

D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT