// d3d10umddi.h
typedef struct D3DWDDM2_0DDI_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA {
UINT PrivateDataSize;
UINT MaxHWProtectionDataSize;
UINT HWProtectionDataSize;
UINT64 TransportTime;
UINT64 ExecutionTime;
BYTE pbOutput[4];
} D3DWDDM2_0DDI_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA;
View the official Windows Driver Kit DDI referenceNo description available.
D3DWDDM2_0DDI_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA is used with D3DWDDM2_0DDI_KEY_EXCHANGE_HW_PROTECTION_DATA in the implementation of Digital Rights Management (DRM).
PrivateDataSizeContains the size of the private data reserved for IHV usage. This size is determined from the pPrivateInputSize member returned by GetCryptoSessionPrivateDataSize.
MaxHWProtectionDataSizeThe maximum size of data that the driver can return in the output buffer. The last byte that it can write to is pbOuput[PrivateDataSize + MaxHWProtectionDataSize – 1].
HWProtectionDataSizeReturns the size of the output data written by the driver.
TransportTimeReturns the number of 100 nanosecond units spent transporting the data.
ExecutionTimeReturns the number of 100 nanosecond units spent executing the content protection command.
pbOutputIf PrivateDataSize is greater than 0, pbOutput[0] – pbOutput[PrivateDataSize - 1] is reserved for IHV use.
pbOutput[PrivateDataSize] – pbOutput[MaxHWProtectionDataSize + PrivateDataSize - 1] contains the region into which the driver should return the output data from the DRM command. The format and size of the DRM command is defined by the DRM specification.
D3DWDDM2_0DDI_KEY_EXCHANGE_HW_PROTECTION_DATA
GetCryptoSessionPrivateDataSize
NegotiateCryptoSessionKeyExchange