Data Structures |
| struct | PSTORAGE_SET_READ_AHEAD |
| struct | PDVD_READ_STRUCTURE |
| struct | PDVD_DESCRIPTOR_HEADER |
| struct | PDVD_LAYER_DESCRIPTOR |
| struct | PDVD_COPYRIGHT_DESCRIPTOR |
| struct | PDVD_DISK_KEY_DESCRIPTOR |
| struct | PDVD_COPY_PROTECT_KEY |
| struct | PDVD_BCA_DESCRIPTOR |
| struct | PDVD_MANUFACTURER_DESCRIPTOR |
| struct | PDVD_RPC_KEY |
| struct | PDVD_SET_RPC_KEY |
| struct | PDVD_ASF |
| struct | PDVD_REGION |
Defines |
| #define | IOCTL_DVD_BASE FILE_DEVICE_DVD |
| #define | IOCTL_STORAGE_SET_READ_AHEAD CTL_CODE(IOCTL_STORAGE_BASE, 0x0100, METHOD_BUFFERED, FILE_READ_ACCESS) |
| #define | IOCTL_DVD_END_SESSION CTL_CODE(IOCTL_DVD_BASE, 0x0403, METHOD_BUFFERED, FILE_READ_ACCESS) |
| #define | IOCTL_DVD_GET_REGION CTL_CODE(IOCTL_DVD_BASE, 0x0405, METHOD_BUFFERED, FILE_READ_ACCESS) |
| #define | IOCTL_DVD_SEND_KEY2 CTL_CODE(IOCTL_DVD_BASE, 0x0406, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) |
| #define | IOCTL_DVD_READ_KEY CTL_CODE(IOCTL_DVD_BASE, 0x0401, METHOD_BUFFERED, FILE_READ_ACCESS) |
| #define | IOCTL_DVD_READ_STRUCTURE CTL_CODE(IOCTL_DVD_BASE, 0x0450, METHOD_BUFFERED, FILE_READ_ACCESS) |
| #define | IOCTL_DVD_SEND_KEY CTL_CODE(IOCTL_DVD_BASE, 0x0402, METHOD_BUFFERED, FILE_READ_ACCESS) |
| #define | IOCTL_DVD_START_SESSION CTL_CODE(IOCTL_DVD_BASE, 0x0400, METHOD_BUFFERED, FILE_READ_ACCESS) |
| #define | IOCTL_DVD_SET_READ_AHEAD CTL_CODE(IOCTL_DVD_BASE, 0x0404, METHOD_BUFFERED, FILE_READ_ACCESS) |
| #define | DVD_CHALLENGE_KEY_LENGTH (12 + sizeof(DVD_COPY_PROTECT_KEY)) |
| #define | DVD_BUS_KEY_LENGTH (8 + sizeof(DVD_COPY_PROTECT_KEY)) |
| #define | DVD_TITLE_KEY_LENGTH (8 + sizeof(DVD_COPY_PROTECT_KEY)) |
| #define | DVD_DISK_KEY_LENGTH (2048 + sizeof(DVD_COPY_PROTECT_KEY)) |
| #define | DVD_RPC_KEY_LENGTH (sizeof(DVD_RPC_KEY) + sizeof(DVD_COPY_PROTECT_KEY)) |
| #define | DVD_SET_RPC_KEY_LENGTH (sizeof(DVD_SET_RPC_KEY) + sizeof(DVD_COPY_PROTECT_KEY)) |
| #define | DVD_ASF_LENGTH (sizeof(DVD_ASF) + sizeof(DVD_COPY_PROTECT_KEY)) |
| #define | DVD_END_ALL_SESSIONS ((DVD_SESSION_ID) 0xffffffff) |
| #define | DVD_CGMS_RESERVED_MASK 0x00000078 |
| #define | DVD_CGMS_COPY_PROTECT_MASK 0x00000018 |
| #define | DVD_CGMS_COPY_PERMITTED 0x00000000 |
| #define | DVD_CGMS_COPY_ONCE 0x00000010 |
| #define | DVD_CGMS_NO_COPY 0x00000018 |
| #define | DVD_COPYRIGHT_MASK 0x00000040 |
| #define | DVD_NOT_COPYRIGHTED 0x00000000 |
| #define | DVD_COPYRIGHTED 0x00000040 |
| #define | DVD_SECTOR_PROTECT_MASK 0x00000020 |
| #define | DVD_SECTOR_NOT_PROTECTED 0x00000000 |
| #define | DVD_SECTOR_PROTECTED 0x00000020 |
Typedefs |
| typedef ULONG | DVD_SESSION_ID |
| typedef ULONG * | PDVD_SESSION_ID |
| typedef enum DVD_STRUCTURE_FORMAT * | PDVD_STRUCTURE_FORMAT |
Enumerations |
| enum | DVD_STRUCTURE_FORMAT {
DvdPhysicalDescriptor,
DvdCopyrightDescriptor,
DvdDiskKeyDescriptor,
DvdBCADescriptor,
DvdManufacturerDescriptor,
DvdMaxDescriptor
} |
| enum | DVD_KEY_TYPE {
DvdChallengeKey = 0x01,
DvdBusKey1,
DvdBusKey2,
DvdTitleKey,
DvdAsf,
DvdSetRpcKey = 0x6,
DvdGetRpcKey = 0x8,
DvdDiskKey = 0x80,
DvdInvalidateAGID = 0x3f
} |