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