функция обратного вызова 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 содержит код проверки подлинности сообщений CBC на основе AES (OMAC) данных. Чтобы проверить подлинность данных, драйвер минипорта отображения должен вычислить OMAC по данным в выходном буфере. Драйвер делает это, сначала задав элемент omac равным нулю, а затем вычисляя OMAC для данных в буфере. Затем драйвер задает элемент omac элементу OMAC, который он вычисляет.
- Порядковый номер не превышает порядковый номер, указанный в предыдущем вызове конфигурации.
- Порядковый номер еще не инициализирован вызовом функции ConfigureAuthenticatedChannel(D3D11_1).
- Параметр outputDataSize меньше размера структуры, указанной D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUT. Элемент QueryType.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 8 |
минимальный поддерживаемый сервер | Windows Server 2012 |
целевая платформа | Настольный |
заголовка | d3d10umddi.h (include D3d10umddi.h) |
См. также
ConfigureAuthenticatedChannel(D3D11_1)
CreateAuthenticatedChannel(D3D11_1)