PFND3D11_1DDI_CONFIGUREAUTHENTICATEDCHANNEL función de devolución de llamada (d3d10umddi.h)
Procesa una solicitud de una aplicación para configurar un canal autenticado para la protección de contenido. Implementado por un controlador de pantalla de windows Display Driver Model (WDDM) 1.2 o posterior.
Sintaxis
PFND3D11_1DDI_CONFIGUREAUTHENTICATEDCHANNEL Pfnd3d111DdiConfigureauthenticatedchannel;
HRESULT Pfnd3d111DdiConfigureauthenticatedchannel(
D3D10DDI_HDEVICE hDevice,
D3D11_1DDI_HAUTHCHANNEL hCAuthChannel,
UINT InputDataSize,
const VOID *pInputData,
D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT *pOutputData
)
{...}
Parámetros
hDevice
Identificador del dispositivo de visualización (contexto de gráficos).
hCAuthChannel
Identificador del objeto de canal autenticado que se creó a través de una llamada a la función CreateAuthenticatedChannel(D3D11_1).
InputDataSize
Tamaño, en bytes, de la matriz especificada por el parámetro pInputData .
pInputData
Puntero a una matriz de bytes que contiene datos de entrada para el comando. Para obtener más información, vea la sección Comentarios.
pOutputData
Puntero a una estructura de D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT . Para obtener más información, vea la sección Comentarios.
Valor devuelto
Devuelve uno de los valores siguientes:
Código devuelto | Descripción |
---|---|
S_OK | El canal autenticado se configuró correctamente. |
E_FAIL | El controlador de minipuerto de pantalla no admite el comando especificado. |
E_INVALIDARG | Los parámetros se validaron y determinaron que son incorrectos. |
E_OUTOFMEMORY | La memoria no estaba disponible para completar la operación. |
Comentarios
La matriz de bytes a la que hace referencia el parámetro pInputData tiene el formato siguiente:
Esta matriz comienza con una estructura de D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT .
Los datos que siguen a esta estructura están en un formato especificado por el miembro ConfigureType de la estructura.
En la lista siguiente se describe el formato de estos datos en función del miembro ConfigureType .
D3D11_1DDI_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_GUID D3D11_1DDI_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION
D3D11_1DDI_AUTHENTICATED_CONFIGURE_ENCRYPTION_WHEN_ACCESSIBLE_GUID D3D11_1DDI_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION
D3D11_1DDI_AUTHENTICATED_CONFIGURE_INITIALIZE_GUID D3D11_1DDI_AUTHENTICATED_CONFIGURE_INITIALIZE
D3D11_1DDI_AUTHENTICATED_CONFIGURE_PROTECTION_GUID D3D11_1DDI_AUTHENTICATED_CONFIGURE_PROTECTION
D3D11_1DDI_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_GUID D3D11_1DDI_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE
La estructura de D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT contiene un código de autenticación de mensajes CBC (OMAC) basado en AES de los datos. El controlador de minipuerto de pantalla debe calcular su propio OMAC sobre los datos para autenticar los datos. Esta estructura de entrada también contiene un identificador de controlador para el canal autenticado, un número de secuencia y un GUID que indica el tipo de configuración.
El controlador de minipuerto de pantalla sigue estos pasos cuando inicializa la estructura de D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT :
El controlador debe copiar los datos de entrada en la estructura D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT .
El controlador debe establecer el miembro ReturnCode en el mismo código de retorno que devolverá para la llamada a ConfigureAuthenticatedChannel(D3D11_1). Esto proporciona a la aplicación un mecanismo seguro de acceso al código de retorno.
El controlador establece el miembro omac en cero y, a continuación, calcula un OMAC para los datos de la estructura. A continuación, el controlador establece el miembro omac en el OMAC que calculó.
El controlador de minipuerto de pantalla debe devolver E_INVALIDARG para la llamada a ConfigureAuthenticatedChannel en las condiciones siguientes:
El miembro omac de la estructuraD3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT no coincide con el OMAC calculado por el controlador.
El número de secuencia no es mayor que un número de secuencia especificado en una llamada de configuración anterior.
El número de secuencia aún no se ha inicializado mediante una llamada a la función ConfigureAuthenticatedChannel(D3D11_1).
El parámetro InputDataSize es menor que el tamaño de la estructura de D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT más el tamaño de la estructura especificada por el D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT. ConfigureTypemember.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8 |
Servidor mínimo compatible | Windows Server 2012 |
Plataforma de destino | Escritorio |
Encabezado | d3d10umddi.h (incluya D3d10umddi.h) |
Consulte también
CreateAuthenticatedChannel(D3D11_1)