- OSMetaClassDeclareReservedUnused(IOPolledInterface, 0);
+ virtual IOReturn setEncryptionKey(const uint8_t * key, size_t keySize);
+
+ OSMetaClassDeclareReservedUsed(IOPolledInterface, 0);
OSMetaClassDeclareReservedUnused(IOPolledInterface, 1);
OSMetaClassDeclareReservedUnused(IOPolledInterface, 2);
OSMetaClassDeclareReservedUnused(IOPolledInterface, 3);
OSMetaClassDeclareReservedUnused(IOPolledInterface, 1);
OSMetaClassDeclareReservedUnused(IOPolledInterface, 2);
OSMetaClassDeclareReservedUnused(IOPolledInterface, 3);
- kIOPolledFileSSD = 0x00000001
+ kIOPolledFileCreate = 0x00000001,
+ kIOPolledFileHibernate = 0x00000002,
+};
+
+// kern_open_file_for_direct_io() oflags
+enum
+{
+ kIOPolledFileSSD = 0x00000001
uint64_t setFileSize, uint64_t fsFreeSize,
void * write_file_addr, size_t write_file_len,
IOPolledFileIOVars ** fileVars,
OSData ** imagePath,
uint64_t setFileSize, uint64_t fsFreeSize,
void * write_file_addr, size_t write_file_len,
IOPolledFileIOVars ** fileVars,
OSData ** imagePath,
IOReturn IOPolledFileClose(IOPolledFileIOVars ** pVars,
off_t write_offset, void * addr, size_t write_length,
IOReturn IOPolledFileClose(IOPolledFileIOVars ** pVars,
off_t write_offset, void * addr, size_t write_length,
uint8_t * bytes, IOByteCount size,
IOPolledFileCryptVars * cryptvars);
uint8_t * bytes, IOByteCount size,
IOPolledFileCryptVars * cryptvars);
extern __C IOReturn IOPolledFilePollersOpen(IOPolledFileIOVars * vars, uint32_t state, bool abortable);
extern __C IOReturn IOPolledFilePollersClose(IOPolledFileIOVars * vars, uint32_t state);
extern __C IOReturn IOPolledFilePollersOpen(IOPolledFileIOVars * vars, uint32_t state, bool abortable);
extern __C IOReturn IOPolledFilePollersClose(IOPolledFileIOVars * vars, uint32_t state);
typedef void (*kern_get_file_extents_callback_t)(void * ref, uint64_t start, uint64_t size);
struct kern_direct_file_io_ref_t *
typedef void (*kern_get_file_extents_callback_t)(void * ref, uint64_t start, uint64_t size);
struct kern_direct_file_io_ref_t *