Compartir a través de


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:

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 :

  1. El controlador debe copiar los datos de entrada en la estructura D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT .

  2. 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.

  3. 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)

D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT

D3D11_1DDI_AUTHENTICATED_CONFIGURE_OUTPUT