IODVDMediaBSDClient.h [plain text]
#ifndef _IODVDMEDIABSDCLIENT_H
#define _IODVDMEDIABSDCLIENT_H
#include <sys/ioctl.h>
#include <IOKit/storage/IODVDTypes.h>
typedef struct
{
uint8_t format;
uint8_t reserved0008[3];
uint32_t address;
uint8_t grantID;
uint8_t layer;
#ifdef __LP64__
uint8_t reserved0080[4];
#endif
uint16_t bufferLength;
void * buffer;
} dk_dvd_read_structure_t;
typedef struct
{
uint8_t format;
uint8_t keyClass;
uint8_t reserved0016[2];
uint32_t address;
uint8_t grantID;
#ifdef __LP64__
uint8_t reserved0072[5];
#else
uint8_t reserved0072[1];
#endif
uint16_t bufferLength;
void * buffer;
} dk_dvd_report_key_t;
typedef struct
{
uint8_t format;
uint8_t keyClass;
uint8_t reserved0016[6];
uint8_t grantID;
#ifdef __LP64__
uint8_t reserved0072[5];
#else
uint8_t reserved0072[1];
#endif
uint16_t bufferLength;
void * buffer;
} dk_dvd_send_key_t;
typedef struct
{
#ifdef __LP64__
uint8_t reserved0000[14];
#else
uint8_t reserved0000[10];
#endif
uint16_t bufferLength;
void * buffer;
} dk_dvd_read_disc_info_t;
typedef struct
{
uint8_t reserved0000[4];
uint32_t address;
uint8_t addressType;
#ifdef __LP64__
uint8_t reserved0072[5];
#else
uint8_t reserved0072[1];
#endif
uint16_t bufferLength;
void * buffer;
} dk_dvd_read_rzone_info_t;
#define DKIOCDVDREADSTRUCTURE _IOW('d', 128, dk_dvd_read_structure_t)
#define DKIOCDVDREPORTKEY _IOW('d', 129, dk_dvd_report_key_t)
#define DKIOCDVDSENDKEY _IOW('d', 130, dk_dvd_send_key_t)
#define DKIOCDVDGETSPEED _IOR('d', 131, uint16_t)
#define DKIOCDVDSETSPEED _IOW('d', 131, uint16_t)
#define DKIOCDVDREADDISCINFO _IOWR('d', 132, dk_dvd_read_disc_info_t)
#define DKIOCDVDREADRZONEINFO _IOWR('d', 133, dk_dvd_read_rzone_info_t)
#ifdef KERNEL
#ifdef __cplusplus
#include <IOKit/storage/IODVDMedia.h>
#include <IOKit/storage/IOMediaBSDClient.h>
class IODVDMediaBSDClient : public IOMediaBSDClient
{
OSDeclareDefaultStructors(IODVDMediaBSDClient)
protected:
struct ExpansionData { };
ExpansionData * _expansionData;
public:
virtual IODVDMedia * getProvider() const;
virtual int ioctl(dev_t dev, u_long cmd, caddr_t data, int flags, proc_t proc);
OSMetaClassDeclareReservedUnused(IODVDMediaBSDClient, 0);
OSMetaClassDeclareReservedUnused(IODVDMediaBSDClient, 1);
OSMetaClassDeclareReservedUnused(IODVDMediaBSDClient, 2);
OSMetaClassDeclareReservedUnused(IODVDMediaBSDClient, 3);
OSMetaClassDeclareReservedUnused(IODVDMediaBSDClient, 4);
OSMetaClassDeclareReservedUnused(IODVDMediaBSDClient, 5);
OSMetaClassDeclareReservedUnused(IODVDMediaBSDClient, 6);
OSMetaClassDeclareReservedUnused(IODVDMediaBSDClient, 7);
};
#endif
#endif
#endif