Compartilhar via


PFND3D11_1DDI_QUERYAUTHENTICATEDCHANNEL função de retorno de chamada (d3d10umddi.h)

Consulta um canal autenticado para obter informações de capacidade e estado. Implementado por um driver de exibição WDDM (Modelo de Driver de Exibição do Windows) 1.2 ou posterior.

Sintaxe

PFND3D11_1DDI_QUERYAUTHENTICATEDCHANNEL Pfnd3d111DdiQueryauthenticatedchannel;

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

Parâmetros

hDevice

Um identificador para o dispositivo de exibição (contexto gráfico).

hCAuthChannel

Um identificador para um objeto de canal autenticado que foi criado por meio de uma chamada para a função CreateAuthenticatedChannel(D3D11_1).

InputDataSize

O tamanho, em bytes, dos dados na matriz pInputData .

pInputData

Um ponteiro para um buffer que descreve as informações a serem consultadas. Os dados nesse buffer são formatados como uma estrutura D3D11_1DDI_AUTHENTICATED_QUERY_INPUT .

OutputDataSize

O tamanho, em bytes, dos dados na matriz pOutputData .

pOutputData

Um ponteiro para um buffer que contém as informações consultadas. Para obter mais informações, consulte a seção Comentários.

Retornar valor

Retorna um dos seguintes valores:

Código de retorno Descrição
S_OK O canal autenticado foi consultado com êxito.
E_FAIL O driver de miniporta de exibição não dá suporte ao comando especificado
E_INVALIDARG Os parâmetros foram validados e determinados como incorretos.
E_OUTOFMEMORY A memória não estava disponível para concluir a operação.

Comentários

O parâmetro pInputData faz referência a um buffer que contém uma estrutura D3D11_1DDI_AUTHENTICATED_QUERY_INPUT . Essa estrutura contém o identificador do driver para o canal autenticado, um número de sequência e um GUID que indica o tipo de consulta a ser executada. O driver deverá retornar E_INVALIDARG se o número de sequência não tiver sido inicializado anteriormente usando a função ConfigureAuthenticatedChannel(D3D11_1). O driver também deverá retornar E_INVALIDARG se o número de sequência não for maior que o número de sequência da chamada de consulta anterior.

A matriz de bytes referenciada pelo parâmetro pOutputData está em um formato especificado pelo membro QueryType da estrutura D3D11_1DDI_AUTHENTICATED_QUERY_INPUT . A lista a seguir descreve o formato desses dados com base no membro QueryType .

O driver prepara o buffer de saída referenciado pelo parâmetro pOutputData seguindo estas etapas:

  1. Cada estrutura retornada com base no membro QueryType começa com uma estrutura D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT . O driver deve copiar os membros do D3D11_1DDI_AUTHENTICATED_QUERY_INPUT para a estrutura D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT .
  2. O driver deve definir o membro ReturnCode para o mesmo código de retorno que retornará para a chamada QueryAuthenticatedChannel(D3D11_1). Isso fornece ao aplicativo um mecanismo seguro de acesso ao código de retorno.
  3. Com base no valor do membro QueryType , o driver deve inicializar a estrutura correspondente que segue a estrutura D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT no buffer pOutputData .
  4. O driver deve assinar o buffer pOutputData de uma maneira idêntica à maneira como lida com consultas do OPM (Output Protection Manager).

    A estrutura D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT contém um código de autenticação de mensagem CBC de uma chave (OMAC) baseado em AES dos dados. O driver de miniporta de exibição deve calcular um OMAC sobre os dados no buffer de saída para autenticar os dados. O driver faz isso definindo primeiro o membro omac como zero e, em seguida, calculando um OMAC para os dados no buffer. Em seguida, o driver define o membro omac como o OMAC que ele calculou.

O driver de miniporto de exibição deve retornar E_INVALIDARG para a chamada QueryAuthenticatedChannel(D3D11_1) nas seguintes condições:
  • O número de sequência não é maior que um número de sequência especificado em uma chamada de configuração anterior.
  • O número de sequência ainda não foi inicializado por uma chamada para a função ConfigureAuthenticatedChannel(D3D11_1).
  • O parâmetro OutputDataSize é menor que o tamanho da estrutura especificada pelo D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT. Membro QueryType .

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8
Servidor mínimo com suporte Windows Server 2012
Plataforma de Destino Área de Trabalho
Cabeçalho d3d10umddi.h (inclua D3d10umddi.h)

Confira também

ConfigureAuthenticatedChannel(D3D11_1)

CreateAuthenticatedChannel(D3D11_1)

D3D11_1DDI_AUTHENTICATED_QUERY_INPUT

D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT