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 :
Ce tableau commence par une structure D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT .
Les données qui suivent cette structure sont dans un format spécifié par le membre ConfigureType de la structure.
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 :
Le pilote doit copier les données d’entrée dans la structure D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT .
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.
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)