#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct AACS_BINDING_NONCE {
pub BindingNonce: [u8; 16],
pub MAC: [u8; 16],
}
impl Default for AACS_BINDING_NONCE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct AACS_CERTIFICATE {
pub Nonce: [u8; 20],
pub Certificate: [u8; 92],
}
impl Default for AACS_CERTIFICATE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct AACS_CHALLENGE_KEY {
pub EllipticCurvePoint: [u8; 40],
pub Signature: [u8; 40],
}
impl Default for AACS_CHALLENGE_KEY {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct AACS_MEDIA_ID {
pub MediaID: [u8; 16],
pub MAC: [u8; 16],
}
impl Default for AACS_MEDIA_ID {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct AACS_READ_BINDING_NONCE {
pub SessionId: u32,
pub NumberOfSectors: u32,
pub StartLba: u64,
pub Anonymous: AACS_READ_BINDING_NONCE_0,
}
impl Default for AACS_READ_BINDING_NONCE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union AACS_READ_BINDING_NONCE_0 {
pub Handle: super::super::Foundation::HANDLE,
pub ForceStructureLengthToMatch64bit: u64,
}
impl Default for AACS_READ_BINDING_NONCE_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, Default, PartialEq)]
pub struct AACS_SEND_CERTIFICATE {
pub SessionId: u32,
pub Certificate: AACS_CERTIFICATE,
}
#[repr(C)]
#[derive(Clone, Copy, Debug, Default, PartialEq)]
pub struct AACS_SEND_CHALLENGE_KEY {
pub SessionId: u32,
pub ChallengeKey: AACS_CHALLENGE_KEY,
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct AACS_SERIAL_NUMBER {
pub PrerecordedSerialNumber: [u8; 16],
pub MAC: [u8; 16],
}
impl Default for AACS_SERIAL_NUMBER {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct AACS_VOLUME_ID {
pub VolumeID: [u8; 16],
pub MAC: [u8; 16],
}
impl Default for AACS_VOLUME_ID {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct BD_DISC_WRITE_PROTECT_PAC {
pub Header: BD_PAC_HEADER,
pub KnownPACEntireDiscFlags: u8,
pub Reserved1: [u8; 3],
pub WriteProtectControlByte: u8,
pub Reserved2: [u8; 7],
pub WriteProtectPassword: [u8; 32],
}
impl Default for BD_DISC_WRITE_PROTECT_PAC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct BD_PAC_HEADER {
pub PACId: [u8; 3],
pub PACFormatNumber: u8,
pub PACUpdateCount: [u8; 4],
pub UnknownPACRules: [u8; 4],
pub UnkownPACEntireDiscFlag: u8,
pub Reserved1: [u8; 2],
pub NumberOfSegments: u8,
pub Segments: [u8; 256],
pub Reserved2: [u8; 112],
}
impl Default for BD_PAC_HEADER {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct DISC_CONTROL_BLOCK_TYPE(pub i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_ASF {
pub Reserved0: [u8; 3],
pub _bitfield: u8,
}
impl Default for DVD_ASF {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_BCA_DESCRIPTOR {
pub BCAInformation: [u8; 1],
}
impl Default for DVD_BCA_DESCRIPTOR {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_BD_SPARE_AREA_INFORMATION {
pub Reserved1: [u8; 4],
pub NumberOfFreeSpareBlocks: [u8; 4],
pub NumberOfAllocatedSpareBlocks: [u8; 4],
}
impl Default for DVD_BD_SPARE_AREA_INFORMATION {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const DVD_CGMS_COPY_ONCE: u32 = 16u32;
pub const DVD_CGMS_COPY_PERMITTED: u32 = 0u32;
pub const DVD_CGMS_COPY_PROTECT_MASK: u32 = 24u32;
pub const DVD_CGMS_NO_COPY: u32 = 24u32;
pub const DVD_CGMS_RESERVED_MASK: u32 = 120u32;
pub const DVD_COPYRIGHTED: u32 = 64u32;
#[repr(C, packed(1))]
#[derive(Clone, Copy, Default)]
pub struct DVD_COPYRIGHT_DESCRIPTOR {
pub CopyrightProtectionType: u8,
pub RegionManagementInformation: u8,
pub Reserved: u16,
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR {
pub Anonymous: DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR_0,
pub Reserved0: [u8; 3],
}
impl Default for DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR_0 {
pub Dvdrom: DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR_0_0,
pub DvdRecordable_Version1: DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR_0_1,
pub Dvdram: DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR_0_2,
pub DvdRecordable: DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR_0_3,
pub CPR_MAI: u8,
}
impl Default for DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, Default, PartialEq)]
pub struct DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR_0_1 {
pub _bitfield: u8,
}
#[repr(C)]
#[derive(Clone, Copy, Debug, Default, PartialEq)]
pub struct DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR_0_3 {
pub _bitfield: u8,
}
#[repr(C)]
#[derive(Clone, Copy, Debug, Default, PartialEq)]
pub struct DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR_0_2 {
pub Reserved0003: u8,
}
#[repr(C)]
#[derive(Clone, Copy, Debug, Default, PartialEq)]
pub struct DVD_COPYRIGHT_MANAGEMENT_DESCRIPTOR_0_0 {
pub _bitfield: u8,
}
pub const DVD_COPYRIGHT_MASK: u32 = 64u32;
#[repr(C, packed(1))]
#[derive(Clone, Copy)]
pub struct DVD_COPY_PROTECT_KEY {
pub KeyLength: u32,
pub SessionId: u32,
pub KeyType: DVD_KEY_TYPE,
pub KeyFlags: u32,
pub Parameters: DVD_COPY_PROTECT_KEY_0,
pub KeyData: [u8; 1],
}
impl Default for DVD_COPY_PROTECT_KEY {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[derive(Clone, Copy)]
pub union DVD_COPY_PROTECT_KEY_0 {
pub FileHandle: super::super::Foundation::HANDLE,
pub TitleOffset: i64,
}
impl Default for DVD_COPY_PROTECT_KEY_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[derive(Clone, Copy)]
pub struct DVD_DESCRIPTOR_HEADER {
pub Length: u16,
pub Reserved: [u8; 2],
pub Data: [u8; 1],
}
impl Default for DVD_DESCRIPTOR_HEADER {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct DVD_DISC_CONTROL_BLOCK_HEADER {
pub ContentDescriptor: [u8; 4],
pub ProhibitedActions: DVD_DISC_CONTROL_BLOCK_HEADER_0,
pub VendorId: [u8; 32],
}
impl Default for DVD_DISC_CONTROL_BLOCK_HEADER {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union DVD_DISC_CONTROL_BLOCK_HEADER_0 {
pub Anonymous: DVD_DISC_CONTROL_BLOCK_HEADER_0_0,
pub AsByte: [u8; 4],
}
impl Default for DVD_DISC_CONTROL_BLOCK_HEADER_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_DISC_CONTROL_BLOCK_HEADER_0_0 {
pub ReservedDoNotUse_UseAsByteInstead_0: [u8; 3],
pub _bitfield: u8,
}
impl Default for DVD_DISC_CONTROL_BLOCK_HEADER_0_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct DVD_DISC_CONTROL_BLOCK_LIST {
pub header: DVD_DISC_CONTROL_BLOCK_HEADER,
pub Reserved0: u8,
pub ReadabldDCBs: u8,
pub Reserved1: u8,
pub WritableDCBs: u8,
pub Dcbs: [DVD_DISC_CONTROL_BLOCK_LIST_DCB; 1],
}
impl Default for DVD_DISC_CONTROL_BLOCK_LIST {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_DISC_CONTROL_BLOCK_LIST_DCB {
pub DcbIdentifier: [u8; 4],
}
impl Default for DVD_DISC_CONTROL_BLOCK_LIST_DCB {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct DVD_DISC_CONTROL_BLOCK_SESSION {
pub header: DVD_DISC_CONTROL_BLOCK_HEADER,
pub SessionNumber: [u8; 2],
pub Reserved0: [u8; 22],
pub DiscID: [u8; 32],
pub Reserved1: [u8; 32],
pub SessionItem: [DVD_DISC_CONTROL_BLOCK_SESSION_ITEM; 504],
pub Reserved2: [u8; 24576],
}
impl Default for DVD_DISC_CONTROL_BLOCK_SESSION {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_DISC_CONTROL_BLOCK_SESSION_ITEM {
pub AsByte: [u8; 16],
}
impl Default for DVD_DISC_CONTROL_BLOCK_SESSION_ITEM {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct DVD_DISC_CONTROL_BLOCK_WRITE_INHIBIT {
pub header: DVD_DISC_CONTROL_BLOCK_HEADER,
pub UpdateCount: [u8; 4],
pub WriteProtectActions: DVD_DISC_CONTROL_BLOCK_WRITE_INHIBIT_0,
pub Reserved0: [u8; 16],
pub UpdatePassword: [u8; 32],
pub Reserved1: [u8; 32672],
}
impl Default for DVD_DISC_CONTROL_BLOCK_WRITE_INHIBIT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union DVD_DISC_CONTROL_BLOCK_WRITE_INHIBIT_0 {
pub Anonymous: DVD_DISC_CONTROL_BLOCK_WRITE_INHIBIT_0_0,
pub AsByte: [u8; 4],
}
impl Default for DVD_DISC_CONTROL_BLOCK_WRITE_INHIBIT_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_DISC_CONTROL_BLOCK_WRITE_INHIBIT_0_0 {
pub ReservedDoNotUse_UseAsByteInstead_0: [u8; 3],
pub _bitfield: u8,
}
impl Default for DVD_DISC_CONTROL_BLOCK_WRITE_INHIBIT_0_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_DISK_KEY_DESCRIPTOR {
pub DiskKeyData: [u8; 2048],
}
impl Default for DVD_DISK_KEY_DESCRIPTOR {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_DUAL_LAYER_JUMP_INTERVAL_SIZE {
pub Reserved1: [u8; 4],
pub JumpIntervalSize: [u8; 4],
}
impl Default for DVD_DUAL_LAYER_JUMP_INTERVAL_SIZE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_DUAL_LAYER_MANUAL_LAYER_JUMP {
pub Reserved1: [u8; 4],
pub ManualJumpLayerAddress: [u8; 4],
}
impl Default for DVD_DUAL_LAYER_MANUAL_LAYER_JUMP {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_DUAL_LAYER_MIDDLE_ZONE_START_ADDRESS {
pub _bitfield: u8,
pub Reserved1: [u8; 3],
pub ShiftedMiddleAreaStartAddress: [u8; 4],
}
impl Default for DVD_DUAL_LAYER_MIDDLE_ZONE_START_ADDRESS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_DUAL_LAYER_RECORDING_INFORMATION {
pub _bitfield: u8,
pub Reserved1: [u8; 3],
pub Layer0Sectors: [u8; 4],
}
impl Default for DVD_DUAL_LAYER_RECORDING_INFORMATION {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_DUAL_LAYER_REMAPPING_INFORMATION {
pub Reserved1: [u8; 4],
pub RemappingAddress: [u8; 4],
}
impl Default for DVD_DUAL_LAYER_REMAPPING_INFORMATION {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct DVD_FULL_LAYER_DESCRIPTOR {
pub commonHeader: DVD_LAYER_DESCRIPTOR,
pub MediaSpecific: [u8; 2031],
}
impl Default for DVD_FULL_LAYER_DESCRIPTOR {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct DVD_KEY_TYPE(pub i32);
#[repr(C, packed(1))]
#[derive(Clone, Copy, Default)]
pub struct DVD_LAYER_DESCRIPTOR {
pub _bitfield1: u8,
pub _bitfield2: u8,
pub _bitfield3: u8,
pub _bitfield4: u8,
pub StartingDataSector: u32,
pub EndDataSector: u32,
pub EndLayerZeroSector: u32,
pub _bitfield5: u8,
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_LIST_OF_RECOGNIZED_FORMAT_LAYERS {
pub TypeCodeOfFormatLayer: [u8; 2],
}
impl Default for DVD_LIST_OF_RECOGNIZED_FORMAT_LAYERS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, Default, PartialEq)]
pub struct DVD_LIST_OF_RECOGNIZED_FORMAT_LAYERS_TYPE_CODE {
pub NumberOfRecognizedFormatLayers: u8,
pub _bitfield: u8,
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_MANUFACTURER_DESCRIPTOR {
pub ManufacturingInformation: [u8; 2048],
}
impl Default for DVD_MANUFACTURER_DESCRIPTOR {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const DVD_NOT_COPYRIGHTED: u32 = 0u32;
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_PRERECORDED_INFORMATION {
pub FieldID_1: u8,
pub DiscApplicationCode: u8,
pub DiscPhysicalCode: u8,
pub LastAddressOfDataRecordableArea: [u8; 3],
pub _bitfield: u8,
pub Reserved0: u8,
pub FieldID_2: u8,
pub OpcSuggestedCode: u8,
pub WavelengthCode: u8,
pub WriteStrategyCode: [u8; 4],
pub Reserved2: u8,
pub FieldID_3: u8,
pub ManufacturerId_3: [u8; 6],
pub Reserved3: u8,
pub FieldID_4: u8,
pub ManufacturerId_4: [u8; 6],
pub Reserved4: u8,
pub FieldID_5: u8,
pub ManufacturerId_5: [u8; 6],
pub Reserved5: u8,
pub Reserved99: [u8; 24],
}
impl Default for DVD_PRERECORDED_INFORMATION {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, Default, PartialEq)]
pub struct DVD_RAM_MEDIUM_STATUS {
pub _bitfield: u8,
pub DiscTypeIdentification: u8,
pub Reserved2: u8,
pub MediaSpecificWriteInhibitInformation: u8,
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_RAM_RECORDING_TYPE {
pub _bitfield: u8,
pub Reserved2: [u8; 3],
}
impl Default for DVD_RAM_RECORDING_TYPE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_RAM_SPARE_AREA_INFORMATION {
pub FreePrimarySpareSectors: [u8; 4],
pub FreeSupplementalSpareSectors: [u8; 4],
pub AllocatedSupplementalSpareSectors: [u8; 4],
}
impl Default for DVD_RAM_SPARE_AREA_INFORMATION {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C, packed(1))]
#[derive(Clone, Copy, Default)]
pub struct DVD_READ_STRUCTURE {
pub BlockByteOffset: i64,
pub Format: DVD_STRUCTURE_FORMAT,
pub SessionId: u32,
pub LayerNumber: u8,
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_RECORDING_MANAGEMENT_AREA_DATA {
pub LastRecordedRMASectorNumber: [u8; 4],
pub RMDBytes: [u8; 1],
}
impl Default for DVD_RECORDING_MANAGEMENT_AREA_DATA {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, Default, PartialEq)]
pub struct DVD_REGION {
pub CopySystem: u8,
pub RegionData: u8,
pub SystemRegion: u8,
pub ResetCount: u8,
}
#[repr(C)]
#[derive(Clone, Copy, Debug, Default, PartialEq)]
pub struct DVD_RPC_KEY {
pub _bitfield: u8,
pub RegionMask: u8,
pub RpcScheme: u8,
pub Reserved02: u8,
}
pub const DVD_SECTOR_NOT_PROTECTED: u32 = 0u32;
pub const DVD_SECTOR_PROTECTED: u32 = 32u32;
pub const DVD_SECTOR_PROTECT_MASK: u32 = 32u32;
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_SET_RPC_KEY {
pub PreferredDriveRegionCode: u8,
pub Reserved: [u8; 3],
}
impl Default for DVD_SET_RPC_KEY {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct DVD_STRUCTURE_FORMAT(pub i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_STRUCTURE_LIST_ENTRY {
pub FormatCode: u8,
pub _bitfield: u8,
pub FormatLength: [u8; 2],
}
impl Default for DVD_STRUCTURE_LIST_ENTRY {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_UNIQUE_DISC_IDENTIFIER {
pub Reserved0: [u8; 2],
pub RandomNumber: [u8; 2],
pub Year: [u8; 4],
pub Month: [u8; 2],
pub Day: [u8; 2],
pub Hour: [u8; 2],
pub Minute: [u8; 2],
pub Second: [u8; 2],
}
impl Default for DVD_UNIQUE_DISC_IDENTIFIER {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct DVD_WRITE_PROTECTION_STATUS {
pub _bitfield: u8,
pub Reserved1: [u8; 3],
}
impl Default for DVD_WRITE_PROTECTION_STATUS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const DiscControlBlockList: DISC_CONTROL_BLOCK_TYPE = DISC_CONTROL_BLOCK_TYPE(-1i32);
pub const DvdAsf: DVD_KEY_TYPE = DVD_KEY_TYPE(5i32);
pub const DvdBCADescriptor: DVD_STRUCTURE_FORMAT = DVD_STRUCTURE_FORMAT(3i32);
pub const DvdBusKey1: DVD_KEY_TYPE = DVD_KEY_TYPE(2i32);
pub const DvdBusKey2: DVD_KEY_TYPE = DVD_KEY_TYPE(3i32);
pub const DvdChallengeKey: DVD_KEY_TYPE = DVD_KEY_TYPE(1i32);
pub const DvdCopyrightDescriptor: DVD_STRUCTURE_FORMAT = DVD_STRUCTURE_FORMAT(1i32);
pub const DvdDiskKey: DVD_KEY_TYPE = DVD_KEY_TYPE(128i32);
pub const DvdDiskKeyDescriptor: DVD_STRUCTURE_FORMAT = DVD_STRUCTURE_FORMAT(2i32);
pub const DvdGetRpcKey: DVD_KEY_TYPE = DVD_KEY_TYPE(8i32);
pub const DvdInvalidateAGID: DVD_KEY_TYPE = DVD_KEY_TYPE(63i32);
pub const DvdManufacturerDescriptor: DVD_STRUCTURE_FORMAT = DVD_STRUCTURE_FORMAT(4i32);
pub const DvdMaxDescriptor: DVD_STRUCTURE_FORMAT = DVD_STRUCTURE_FORMAT(5i32);
pub const DvdPhysicalDescriptor: DVD_STRUCTURE_FORMAT = DVD_STRUCTURE_FORMAT(0i32);
pub const DvdSetRpcKey: DVD_KEY_TYPE = DVD_KEY_TYPE(6i32);
pub const DvdTitleKey: DVD_KEY_TYPE = DVD_KEY_TYPE(4i32);
pub const FormattingDiscControlBlock: DISC_CONTROL_BLOCK_TYPE = DISC_CONTROL_BLOCK_TYPE(1178878720i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct HD_DVD_R_MEDIUM_STATUS {
pub _bitfield: u8,
pub NumberOfRemainingRMDsInRDZ: u8,
pub NumberOfRemainingRMDsInCurrentRMZ: [u8; 2],
}
impl Default for HD_DVD_R_MEDIUM_STATUS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const IOCTL_AACS_END_SESSION: u32 = 3363020u32;
pub const IOCTL_AACS_GENERATE_BINDING_NONCE: u32 = 3395824u32;
pub const IOCTL_AACS_GET_CERTIFICATE: u32 = 3363028u32;
pub const IOCTL_AACS_GET_CHALLENGE_KEY: u32 = 3363032u32;
pub const IOCTL_AACS_READ_BINDING_NONCE: u32 = 3363052u32;
pub const IOCTL_AACS_READ_MEDIA_ID: u32 = 3363048u32;
pub const IOCTL_AACS_READ_MEDIA_KEY_BLOCK: u32 = 3363012u32;
pub const IOCTL_AACS_READ_MEDIA_KEY_BLOCK_SIZE: u32 = 3363008u32;
pub const IOCTL_AACS_READ_SERIAL_NUMBER: u32 = 3363044u32;
pub const IOCTL_AACS_READ_VOLUME_ID: u32 = 3363040u32;
pub const IOCTL_AACS_SEND_CERTIFICATE: u32 = 3363024u32;
pub const IOCTL_AACS_SEND_CHALLENGE_KEY: u32 = 3363036u32;
pub const IOCTL_AACS_START_SESSION: u32 = 3363016u32;
pub const IOCTL_DVD_BASE: i32 = 51i32;
pub const IOCTL_DVD_END_SESSION: u32 = 3362828u32;
pub const IOCTL_DVD_GET_REGION: u32 = 3362836u32;
pub const IOCTL_DVD_READ_KEY: u32 = 3362820u32;
pub const IOCTL_DVD_READ_STRUCTURE: u32 = 3363136u32;
pub const IOCTL_DVD_SEND_KEY: u32 = 3362824u32;
pub const IOCTL_DVD_SEND_KEY2: u32 = 3395608u32;
pub const IOCTL_DVD_SET_READ_AHEAD: u32 = 3362832u32;
pub const IOCTL_DVD_START_SESSION: u32 = 3362816u32;
pub const IOCTL_STORAGE_SET_READ_AHEAD: u32 = 2966528u32;
#[repr(C, packed(1))]
#[derive(Clone, Copy, Default)]
pub struct STORAGE_SET_READ_AHEAD {
pub TriggerAddress: i64,
pub TargetAddress: i64,
}
pub const SessionInfoDiscControlBlock: DISC_CONTROL_BLOCK_TYPE = DISC_CONTROL_BLOCK_TYPE(1396982528i32);
pub const WriteInhibitDiscControlBlock: DISC_CONTROL_BLOCK_TYPE = DISC_CONTROL_BLOCK_TYPE(1464091392i32);