функция обратного вызова PFND3D11_1DDI_QUERYAUTHENTICATEDCHANNEL (d3d10umddi.h)
Запрашивает канал, прошедший проверку подлинности, для получения сведений о возможностях и состоянии. Реализовано драйвером отображения windows Display Driver Model (WDDM) 1.2 или более поздней версии.
Синтаксис
PFND3D11_1DDI_QUERYAUTHENTICATEDCHANNEL Pfnd3d111DdiQueryauthenticatedchannel;
HRESULT Pfnd3d111DdiQueryauthenticatedchannel(
D3D10DDI_HDEVICE hDevice,
D3D11_1DDI_HAUTHCHANNEL hCAuthChannel,
UINT InputDataSize,
const VOID *pInputData,
UINT OutputDataSize,
VOID *pOutputData
)
{...}
Параметры
hDevice
Дескриптор устройства отображения (графический контекст).
hCAuthChannel
Дескриптор объекта канала, прошедшего проверку подлинности, который был создан с помощью вызова функции CreateAuthenticatedChannel(D3D11_1).
InputDataSize
Размер данных в байтах в массиве pInputData .
pInputData
Указатель на буфер, описывающий запрашиваемую информацию. Данные в этом буфере форматируются в виде структуры D3D11_1DDI_AUTHENTICATED_QUERY_INPUT .
OutputDataSize
Размер (в байтах) данных в массиве pOutputData .
pOutputData
Указатель на буфер, содержащий запрашиваемые сведения. Дополнительные сведения см. в разделе «Примечания».
Возвращаемое значение
Возвращает одно из следующих значений:
Код возврата | Описание |
---|---|
S_OK | Запрос к каналу, прошедшему проверку подлинности, выполнен успешно. |
E_FAIL | Драйвер мини-порта дисплея не поддерживает указанную команду |
E_INVALIDARG | Параметры были проверены и определены как неверные. |
E_OUTOFMEMORY | Память не была доступна для завершения операции. |
Комментарии
Параметр pInputData ссылается на буфер, содержащий структуру D3D11_1DDI_AUTHENTICATED_QUERY_INPUT . Эта структура содержит дескриптор драйвера для канала, прошедшего проверку подлинности, порядковый номер и GUID, указывающий тип выполняемого запроса. Драйвер должен возвращать E_INVALIDARG, если порядковый номер не был инициализирован с помощью функции ConfigureAuthenticatedChannel(D3D11_1). Драйвер также должен возвращать E_INVALIDARG , если порядковый номер не превышает порядковый номер предыдущего вызова запроса.
Массив байтов, на который ссылается параметр pOutputData , имеет формат, заданный элементом QueryTypeструктуры D3D11_1DDI_AUTHENTICATED_QUERY_INPUT . В следующем списке описывается формат этих данных на основе элемента QueryType .
Драйвер подготавливает выходной буфер, на который ссылается параметр pOutputData , выполнив следующие действия:
- Каждая структура, возвращаемая на основе элемента QueryType , начинается с D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT структуры. Драйвер должен скопировать элементы D3D11_1DDI_AUTHENTICATED_QUERY_INPUT в структуру D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT .
- Драйвер должен задать члену ReturnCode тот же код возврата, который будет возвращен для вызова QueryAuthenticatedChannel(D3D11_1). Это обеспечивает приложению безопасный механизм доступа к коду возврата.
- В зависимости от значения элемента QueryType драйвер должен инициализировать соответствующую структуру, соответствующую структуре D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT в буфере pOutputData .
-
Драйвер должен подписать буфер pOutputData таким же образом, как он обрабатывает запросы диспетчера защиты вывода (OPM).
Структура D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT содержит основанный на AES код проверки подлинности сообщений CBC (OMAC) данных. Драйвер мини-порта дисплея должен вычислить OMAC по данным в выходном буфере для проверки подлинности данных. Драйвер делает это, сначала задавая элемент omac равным нулю, а затем вычисляя OMAC для данных в буфере. Затем драйвер задает член omac для вычисляемого OMAC.
- Порядковый номер не больше, чем порядковый номер, указанный в предыдущем вызове конфигурации.
- Порядковый номер еще не инициализирован вызовом функции ConfigureAuthenticatedChannel(D3D11_1).
- Параметр OutputDataSize меньше размера структуры, указанной в D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT. Элемент QueryType .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 8 |
Минимальная версия сервера | Windows Server 2012 |
Целевая платформа | Персональный компьютер |
Верхняя часть | d3d10umddi.h (включая D3d10umddi.h) |
См. также раздел
ConfigureAuthenticatedChannel(D3D11_1)
CreateAuthenticatedChannel(D3D11_1)