Bagikan melalui


Mengambil Informasi Tentang Output yang Dilindungi

Driver miniport tampilan dapat menerima permintaan untuk mengambil informasi tentang output terlindungi yang terkait dengan konektor output fisik adaptor grafis. Fungsi DxgkDdiOPMGetInformation driver miniport tampilan diteruskan penunjuk ke struktur DXGKMDT_OPM_GET_INFO_PARAMETERS dalam parameter Parameter yang berisi permintaan informasi. DxgkDdiOPMGetInformation menulis informasi yang diperlukan ke struktur DXGKMDT_OPM_REQUESTED_INFORMATION yang ditunjuk oleh parameter RequestedInformation . Anggota guidInformation dan abParameters DXGKMDT_OPM_GET_INFO_PARAMETERS menentukan permintaan informasi. Tergantung pada permintaan informasi, driver miniport tampilan harus mengisi anggota struktur DXGKMDT_OPM_STANDARD_INFORMATION, DXGKMDT_OPM_OUTPUT_ID, atau DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT dengan informasi yang diperlukan dan mengarahkan anggota abRequestedInformation dari DXGKMDT_OPM_REQUESTED_INFORMATION ke struktur tersebut. Setelah driver menentukan anggota cbRequestedInformationSize (misalnya, sizeof (DXGKMDT_OPM_STANDARD_INFORMATION)) dan anggota abRequestedInformation dari DXGKMDT_OPM_REQUESTED_INFORMATION, driver harus menghitung kode autentikasi pesan mode One-key Cipher Block Chaining (CBC) (OMAC) untuk data di DXGKMDT_OPM_REQUESTED_INFORMATION dan harus mengatur OMAC ini di anggota omac DXGKMDT_OPM_REQUESTED_INFORMATION. Untuk informasi selengkapnya tentang menghitung OMAC, lihat algoritma OMAC-1.

Catatan Sebelum DxgkDdiOPMGetInformation kembali, driver miniport tampilan harus memverifikasi bahwa OMAC yang ditentukan dalam anggota omacDXGKMDT_OPM_GET_INFO_PARAMETERS sudah benar. Driver juga harus memverifikasi bahwa nomor urut yang ditentukan dalam anggota ulSequenceNumber dari DXGKMDT_OPM_GET_INFO_PARAMETERS cocok dengan nomor urut yang saat ini telah disimpan driver. Driver kemudian harus menaikkan nomor urutan yang disimpan.

Catatan Driver harus mengembalikan angka acak 128-bit yang aman secara kriptografis di anggota rnRandomNumber dari DXGKMDT_OPM_STANDARD_INFORMATION, DXGKMDT_OPM_OUTPUT_ID, atau DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT. Angka acak dihasilkan oleh aplikasi pengirim dan disediakan di anggota rnRandomNumber DXGKMDT_OPM_GET_INFO_PARAMETERS.

Driver mengembalikan informasi berikut untuk permintaan yang ditunjukkan:

  • Untuk DXGKMDT_OPM_GET_SUPPORTED_PROTECTION_TYPES diatur dalam anggota guidInformation dan tidak terdefinisi dalam anggota abParameters dari struktur DXGKMDT_OPM_GET_INFO_PARAMETERS, driver menunjukkan jenis mekanisme perlindungan yang tersedia. Untuk menunjukkan jenis perlindungan yang tersedia, driver mengembalikan kombinasi nilai OR bitwise yang valid dari enumerasi DXGKMDT_OPM_PROTECTION_TYPE di anggota ulInformation DXGKMDT_OPM_STANDARD_INFORMATION. Nilai DXGKMDT_OPM_PROTECTION_TYPE_HDCP dan DXGKMDT_OPM_PROTECTION_TYPE_DPCP valid.

  • Untuk DXGKMDT_OPM_GET_CONNECTOR_TYPE diatur dalam guidInformation dan tidak terdefinisi di abParameters, driver menunjukkan jenis konektor. Untuk menunjukkan jenis konektor, driver mengembalikan kombinasi nilai OR bitwise yang valid dari enumerasi D3DKMDT_VIDEO_OUTPUT_TECHNOLOGY dalam anggota ulInformation DXGKMDT_OPM_STANDARD_INFORMATION.

  • Untuk DXGKMDT_OPM_GET_VIRTUAL_PROTECTION_LEVEL atau DXGKMDT_OPM_GET_ACTUAL_PROTECTION_LEVEL yang diatur dalam guidInformation dan jenis perlindungan yang diatur dalam abParameters, driver mengembalikan nilai tingkat perlindungan di anggota ulInformationDXGKMDT_OPM_STANDARD_INFORMATION. Jika jenis perlindungan DXGKMDT_OPM_PROTECTION_TYPE_HDCP, nilai tingkat perlindungan berasal dari enumerasi DXGKMDT_OPM_HDCP_PROTECTION_LEVEL . Jika jenis perlindungan DXGKMDT_OPM_PROTECTION_TYPE_DPCP, nilai tingkat perlindungan berasal dari enumerasi DXGKMDT_OPM_DPCP_PROTECTION_LEVEL .

    Permintaan DXGKMDT_OPM_GET_VIRTUAL_PROTECTION_LEVEL mengembalikan tingkat perlindungan yang saat ini ditetapkan untuk output yang dilindungi. Permintaan DXGKMDT_OPM_GET_ACTUAL_PROTECTION_LEVEL mengembalikan tingkat perlindungan yang saat ini ditetapkan untuk konektor fisik yang terkait dengan output yang dilindungi.

  • Untuk DXGKMDT_OPM_GET_ADAPTER_BUS_TYPE diatur dalam guidInformation dan tidak terdefinisi di abParameters, driver mengidentifikasi jenis dan implementasi bus yang menghubungkan adaptor grafis ke jembatan utara chipset papan induk. Untuk mengidentifikasi jenis dan implementasi bus, pengemudi mengembalikan kombinasi nilai bitwise OR yang valid dari enumerasi DXGKMDT_OPM_BUS_TYPE_AND_IMPLEMENTATION dalam anggota ulInformation DXGKMDT_OPM_STANDARD_INFORMATION.

  • Untuk DXGKMDT_OPM_GET_CURRENT_HDCP_SRM_VERSION yang diatur dalam guidInformation dan tidak terdefinisi di abParameters, driver mengembalikan nilai dalam anggota ulInformationDXGKMDT_OPM_STANDARD_INFORMATION yang mengidentifikasi nomor versi Pesan Perpanjangan Sistem (SRM) Perlindungan Konten Digital (HDCP) bandwidth Tinggi saat ini untuk output yang dilindungi. Bit yang paling tidak signifikan (bit 0 hingga 15) berisi nomor versi SRM dalam format little-endian. Untuk informasi selengkapnya tentang nomor versi SRM, lihat Revisi Spesifikasi HDCP 1.1.

  • Untuk DXGKMDT_OPM_GET_ACTUAL_OUTPUT_FORMAT diatur dalam guidInformation dan tidak terdefinisi di abParameters, driver mengembalikan informasi dalam anggota DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT yang menjelaskan bagaimana sinyal yang melewati konektor fisik yang terkait dengan output yang dilindungi diformat.

  • Untuk DXGKMDT_OPM_GET_OUTPUT_ID yang diatur dalam guidInformation dan tidak terdefinisi di abParameters, driver mengembalikan informasi dalam anggota DXGKMDT_OPM_OUTPUT_ID yang mengidentifikasi konektor output.

  • Untuk DXGKMDT_OPM_GET_DVI_CHARACTERISTICS diatur dalam anggota guidInformation dan tidak terdefinisi dalam anggota abParameters dari struktur DXGKMDT_OPM_GET_INFO_PARAMETERS, driver menunjukkan karakteristik listrik dari konektor output Digital Video Interface (DVI). Untuk menunjukkan karakteristik listrik DVI, driver mengembalikan salah satu nilai dari enumerasi DXGKDT_OPM_DVI_CHARACTERISTICS dalam anggota ulInformationDXGKMDT_OPM_STANDARD_INFORMATION.