ReactOS 0.4.16-dev-297-gc569aee
ntddcdvd.h File Reference
#include <pshpack1.h>
#include <poppack.h>
Include dependency graph for ntddcdvd.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _DVD_COPY_PROTECT_KEY
 
struct  _DVD_RPC_KEY
 
struct  _DVD_ASF
 
struct  _DVD_REGION
 
struct  DVD_READ_STRUCTURE
 
struct  _DVD_DESCRIPTOR_HEADER
 
struct  _DVD_LAYER_DESCRIPTOR
 
struct  _DVD_COPYRIGHT_DESCRIPTOR
 
struct  _DVD_DISK_KEY_DESCRIPTOR
 
struct  _DVD_BCA_DESCRIPTOR
 
struct  _DVD_MANUFACTURER_DESCRIPTOR
 

Macros

#define IOCTL_DVD_BASE   FILE_DEVICE_DVD
 
#define IOCTL_DVD_START_SESSION   CTL_CODE(IOCTL_DVD_BASE, 0x0400, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_DVD_READ_KEY   CTL_CODE(IOCTL_DVD_BASE, 0x0401, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_DVD_SEND_KEY   CTL_CODE(IOCTL_DVD_BASE, 0x0402, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_DVD_END_SESSION   CTL_CODE(IOCTL_DVD_BASE, 0x0403, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_DVD_SET_READ_AHEAD   CTL_CODE(IOCTL_DVD_BASE, 0x0404, 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_STRUCTURE   CTL_CODE(IOCTL_DVD_BASE, 0x0450, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define DVD_CHALLENGE_KEY_LENGTH   (12 + sizeof(DVD_COPY_PROTECT_KEY) - sizeof(UCHAR))
 
#define DVD_DISK_KEY_LENGTH   (2048 + sizeof(DVD_COPY_PROTECT_KEY) - sizeof(UCHAR))
 
#define DVD_KEY_SIZE   5
 
#define DVD_CHALLENGE_SIZE   10
 
#define DVD_DISCKEY_SIZE   2048
 
#define DVD_SECTOR_PROTECTED   0x00000020
 

Typedefs

typedef ULONG DVD_SESSION_ID
 
typedef ULONGPDVD_SESSION_ID
 
typedef struct _DVD_COPY_PROTECT_KEY DVD_COPY_PROTECT_KEY
 
typedef struct _DVD_COPY_PROTECT_KEYPDVD_COPY_PROTECT_KEY
 
typedef struct _DVD_RPC_KEY DVD_RPC_KEY
 
typedef struct _DVD_RPC_KEYPDVD_RPC_KEY
 
typedef struct _DVD_ASF DVD_ASF
 
typedef struct _DVD_ASFPDVD_ASF
 
typedef struct _DVD_REGION DVD_REGION
 
typedef struct _DVD_REGIONPDVD_REGION
 
typedef enum _DVD_STRUCTURE_FORMAT DVD_STRUCTURE_FORMAT
 
typedef enum _DVD_STRUCTURE_FORMATPDVD_STRUCTURE_FORMAT
 
typedef struct DVD_READ_STRUCTURE DVD_READ_STRUCTURE
 
typedef struct DVD_READ_STRUCTUREPDVD_READ_STRUCTURE
 
typedef struct _DVD_DESCRIPTOR_HEADER DVD_DESCRIPTOR_HEADER
 
typedef struct _DVD_DESCRIPTOR_HEADERPDVD_DESCRIPTOR_HEADER
 
typedef struct _DVD_LAYER_DESCRIPTOR DVD_LAYER_DESCRIPTOR
 
typedef struct _DVD_LAYER_DESCRIPTORPDVD_LAYER_DESCRIPTOR
 
typedef struct _DVD_COPYRIGHT_DESCRIPTOR DVD_COPYRIGHT_DESCRIPTOR
 
typedef struct _DVD_COPYRIGHT_DESCRIPTORPDVD_COPYRIGHT_DESCRIPTOR
 
typedef struct _DVD_DISK_KEY_DESCRIPTOR DVD_DISK_KEY_DESCRIPTOR
 
typedef struct _DVD_DISK_KEY_DESCRIPTORPDVD_DISK_KEY_DESCRIPTOR
 
typedef struct _DVD_BCA_DESCRIPTOR DVD_BCA_DESCRIPTOR
 
typedef struct _DVD_BCA_DESCRIPTORPDVD_BCA_DESCRIPTOR
 
typedef struct _DVD_MANUFACTURER_DESCRIPTOR DVD_MANUFACTURER_DESCRIPTOR
 
typedef struct _DVD_MANUFACTURER_DESCRIPTORPDVD_MANUFACTURER_DESCRIPTOR
 

Enumerations

enum  DVD_KEY_TYPE {
  DvdChallengeKey = 0x01 , DvdBusKey1 , DvdBusKey2 , DvdTitleKey ,
  DvdAsf , DvdSetRpcKey = 0x6 , DvdGetRpcKey = 0x8 , DvdDiskKey = 0x80 ,
  DvdInvalidateAGID = 0x3f
}
 
enum  _DVD_STRUCTURE_FORMAT {
  DvdPhysicalDescriptor , DvdCopyrightDescriptor , DvdDiskKeyDescriptor , DvdBCADescriptor ,
  DvdManufacturerDescriptor , DvdMaxDescriptor
}
 

Functions

 C_ASSERT (sizeof(DVD_DESCRIPTOR_HEADER)==4)
 
 C_ASSERT (sizeof(DVD_LAYER_DESCRIPTOR)==17)
 

Macro Definition Documentation

◆ DVD_CHALLENGE_KEY_LENGTH

#define DVD_CHALLENGE_KEY_LENGTH   (12 + sizeof(DVD_COPY_PROTECT_KEY) - sizeof(UCHAR))

Definition at line 187 of file ntddcdvd.h.

◆ DVD_CHALLENGE_SIZE

#define DVD_CHALLENGE_SIZE   10

Definition at line 192 of file ntddcdvd.h.

◆ DVD_DISCKEY_SIZE

#define DVD_DISCKEY_SIZE   2048

Definition at line 193 of file ntddcdvd.h.

◆ DVD_DISK_KEY_LENGTH

#define DVD_DISK_KEY_LENGTH   (2048 + sizeof(DVD_COPY_PROTECT_KEY) - sizeof(UCHAR))

Definition at line 189 of file ntddcdvd.h.

◆ DVD_KEY_SIZE

#define DVD_KEY_SIZE   5

Definition at line 191 of file ntddcdvd.h.

◆ DVD_SECTOR_PROTECTED

#define DVD_SECTOR_PROTECTED   0x00000020

Definition at line 194 of file ntddcdvd.h.

◆ IOCTL_DVD_BASE

#define IOCTL_DVD_BASE   FILE_DEVICE_DVD

Definition at line 26 of file ntddcdvd.h.

◆ IOCTL_DVD_END_SESSION

#define IOCTL_DVD_END_SESSION   CTL_CODE(IOCTL_DVD_BASE, 0x0403, METHOD_BUFFERED, FILE_READ_ACCESS)

Definition at line 31 of file ntddcdvd.h.

◆ IOCTL_DVD_GET_REGION

#define IOCTL_DVD_GET_REGION   CTL_CODE(IOCTL_DVD_BASE, 0x0405, METHOD_BUFFERED, FILE_READ_ACCESS)

Definition at line 33 of file ntddcdvd.h.

◆ IOCTL_DVD_READ_KEY

#define IOCTL_DVD_READ_KEY   CTL_CODE(IOCTL_DVD_BASE, 0x0401, METHOD_BUFFERED, FILE_READ_ACCESS)

Definition at line 29 of file ntddcdvd.h.

◆ IOCTL_DVD_READ_STRUCTURE

#define IOCTL_DVD_READ_STRUCTURE   CTL_CODE(IOCTL_DVD_BASE, 0x0450, METHOD_BUFFERED, FILE_READ_ACCESS)

Definition at line 36 of file ntddcdvd.h.

◆ IOCTL_DVD_SEND_KEY

#define IOCTL_DVD_SEND_KEY   CTL_CODE(IOCTL_DVD_BASE, 0x0402, METHOD_BUFFERED, FILE_READ_ACCESS)

Definition at line 30 of file ntddcdvd.h.

◆ IOCTL_DVD_SEND_KEY2

Definition at line 34 of file ntddcdvd.h.

◆ IOCTL_DVD_SET_READ_AHEAD

#define IOCTL_DVD_SET_READ_AHEAD   CTL_CODE(IOCTL_DVD_BASE, 0x0404, METHOD_BUFFERED, FILE_READ_ACCESS)

Definition at line 32 of file ntddcdvd.h.

◆ IOCTL_DVD_START_SESSION

#define IOCTL_DVD_START_SESSION   CTL_CODE(IOCTL_DVD_BASE, 0x0400, METHOD_BUFFERED, FILE_READ_ACCESS)

Definition at line 28 of file ntddcdvd.h.

Typedef Documentation

◆ DVD_ASF

◆ DVD_BCA_DESCRIPTOR

◆ DVD_COPY_PROTECT_KEY

◆ DVD_COPYRIGHT_DESCRIPTOR

◆ DVD_DESCRIPTOR_HEADER

◆ DVD_DISK_KEY_DESCRIPTOR

◆ DVD_LAYER_DESCRIPTOR

◆ DVD_MANUFACTURER_DESCRIPTOR

◆ DVD_READ_STRUCTURE

◆ DVD_REGION

◆ DVD_RPC_KEY

◆ DVD_SESSION_ID

Definition at line 50 of file ntddcdvd.h.

◆ DVD_STRUCTURE_FORMAT

◆ PDVD_ASF

◆ PDVD_BCA_DESCRIPTOR

◆ PDVD_COPY_PROTECT_KEY

◆ PDVD_COPYRIGHT_DESCRIPTOR

◆ PDVD_DESCRIPTOR_HEADER

◆ PDVD_DISK_KEY_DESCRIPTOR

◆ PDVD_LAYER_DESCRIPTOR

◆ PDVD_MANUFACTURER_DESCRIPTOR

◆ PDVD_READ_STRUCTURE

◆ PDVD_REGION

◆ PDVD_RPC_KEY

◆ PDVD_SESSION_ID

Definition at line 50 of file ntddcdvd.h.

◆ PDVD_STRUCTURE_FORMAT

Enumeration Type Documentation

◆ _DVD_STRUCTURE_FORMAT

Enumerator
DvdPhysicalDescriptor 
DvdCopyrightDescriptor 
DvdDiskKeyDescriptor 
DvdBCADescriptor 
DvdManufacturerDescriptor 
DvdMaxDescriptor 

Definition at line 92 of file ntddcdvd.h.

93{
DVD_STRUCTURE_FORMAT
Definition: ntddcdvd.h:108
@ DvdPhysicalDescriptor
Definition: ntddcdvd.h:109
@ DvdMaxDescriptor
Definition: ntddcdvd.h:114
@ DvdManufacturerDescriptor
Definition: ntddcdvd.h:113
@ DvdBCADescriptor
Definition: ntddcdvd.h:112
@ DvdCopyrightDescriptor
Definition: ntddcdvd.h:110
@ DvdDiskKeyDescriptor
Definition: ntddcdvd.h:111
enum DVD_STRUCTURE_FORMAT * PDVD_STRUCTURE_FORMAT

◆ DVD_KEY_TYPE

Enumerator
DvdChallengeKey 
DvdBusKey1 
DvdBusKey2 
DvdTitleKey 
DvdAsf 
DvdSetRpcKey 
DvdGetRpcKey 
DvdDiskKey 
DvdInvalidateAGID 

Definition at line 38 of file ntddcdvd.h.

38 {
39 DvdChallengeKey = 0x01,
43 DvdAsf,
44 DvdSetRpcKey = 0x6,
45 DvdGetRpcKey = 0x8,
46 DvdDiskKey = 0x80,
@ DvdAsf
Definition: ntddcdvd.h:168
@ DvdDiskKey
Definition: ntddcdvd.h:171
@ DvdInvalidateAGID
Definition: ntddcdvd.h:172
@ DvdTitleKey
Definition: ntddcdvd.h:167
@ DvdSetRpcKey
Definition: ntddcdvd.h:169
@ DvdBusKey1
Definition: ntddcdvd.h:165
@ DvdBusKey2
Definition: ntddcdvd.h:166
@ DvdChallengeKey
Definition: ntddcdvd.h:164
@ DvdGetRpcKey
Definition: ntddcdvd.h:170
enum _DVD_KEY_TYPE DVD_KEY_TYPE

Function Documentation

◆ C_ASSERT() [1/2]

C_ASSERT ( sizeof(DVD_DESCRIPTOR_HEADER = =4)

◆ C_ASSERT() [2/2]

C_ASSERT ( sizeof(DVD_LAYER_DESCRIPTOR = =17)