Skip to main content

FAST_IO_DISPATCH

Type Alias FAST_IO_DISPATCH 

Source
pub type FAST_IO_DISPATCH = _FAST_IO_DISPATCH;

Aliased Type§

#[repr(C)]
pub struct FAST_IO_DISPATCH {
Show 28 fields pub SizeOfFastIoDispatch: u64, pub FastIoCheckIfPossible: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u8, u64, u8, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub FastIoRead: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u8, u64, *mut c_void, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub FastIoWrite: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u8, u64, *mut c_void, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub FastIoQueryBasicInfo: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, u8, *mut _FILE_BASIC_INFORMATION, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub FastIoQueryStandardInfo: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, u8, *mut _FILE_STANDARD_INFORMATION, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub FastIoLock: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, *mut _LARGE_INTEGER, *mut _EPROCESS, u64, u8, u8, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub FastIoUnlockSingle: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, *mut _LARGE_INTEGER, *mut _EPROCESS, u64, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub FastIoUnlockAll: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _EPROCESS, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub FastIoUnlockAllByKey: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut c_void, u64, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub FastIoDeviceControl: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, u8, *mut c_void, u64, *mut c_void, u64, u64, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub AcquireFileForNtCreateSection: Option<unsafe extern "C" fn(*mut _FILE_OBJECT)>, pub ReleaseFileForNtCreateSection: Option<unsafe extern "C" fn(*mut _FILE_OBJECT)>, pub FastIoDetachDevice: Option<unsafe extern "C" fn(*mut _DEVICE_OBJECT, *mut _DEVICE_OBJECT)>, pub FastIoQueryNetworkOpenInfo: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, u8, *mut _FILE_NETWORK_OPEN_INFORMATION, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub AcquireForModWrite: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, *mut *mut _ERESOURCE, *mut _DEVICE_OBJECT) -> i64>, pub MdlRead: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u64, *mut *mut _MDL, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub MdlReadComplete: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _MDL, *mut _DEVICE_OBJECT) -> u8>, pub PrepareMdlWrite: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u64, *mut *mut _MDL, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>, pub MdlWriteComplete: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, *mut _MDL, *mut _DEVICE_OBJECT) -> u8>, pub FastIoReadCompressed: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u64, *mut c_void, *mut *mut _MDL, *mut _IO_STATUS_BLOCK, *mut _COMPRESSED_DATA_INFO, u64, *mut _DEVICE_OBJECT) -> u8>, pub FastIoWriteCompressed: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u64, *mut c_void, *mut *mut _MDL, *mut _IO_STATUS_BLOCK, *mut _COMPRESSED_DATA_INFO, u64, *mut _DEVICE_OBJECT) -> u8>, pub MdlReadCompleteCompressed: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _MDL, *mut _DEVICE_OBJECT) -> u8>, pub MdlWriteCompleteCompressed: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, *mut _MDL, *mut _DEVICE_OBJECT) -> u8>, pub FastIoQueryOpen: Option<unsafe extern "C" fn(*mut _IRP, *mut _FILE_NETWORK_OPEN_INFORMATION, *mut _DEVICE_OBJECT) -> u8>, pub ReleaseForModWrite: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _ERESOURCE, *mut _DEVICE_OBJECT) -> i64>, pub AcquireForCcFlush: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _DEVICE_OBJECT) -> i64>, pub ReleaseForCcFlush: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _DEVICE_OBJECT) -> i64>,
}

Fields§

§SizeOfFastIoDispatch: u64§FastIoCheckIfPossible: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u8, u64, u8, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§FastIoRead: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u8, u64, *mut c_void, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§FastIoWrite: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u8, u64, *mut c_void, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§FastIoQueryBasicInfo: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, u8, *mut _FILE_BASIC_INFORMATION, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§FastIoQueryStandardInfo: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, u8, *mut _FILE_STANDARD_INFORMATION, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§FastIoLock: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, *mut _LARGE_INTEGER, *mut _EPROCESS, u64, u8, u8, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§FastIoUnlockSingle: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, *mut _LARGE_INTEGER, *mut _EPROCESS, u64, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§FastIoUnlockAll: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _EPROCESS, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§FastIoUnlockAllByKey: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut c_void, u64, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§FastIoDeviceControl: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, u8, *mut c_void, u64, *mut c_void, u64, u64, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§AcquireFileForNtCreateSection: Option<unsafe extern "C" fn(*mut _FILE_OBJECT)>§ReleaseFileForNtCreateSection: Option<unsafe extern "C" fn(*mut _FILE_OBJECT)>§FastIoDetachDevice: Option<unsafe extern "C" fn(*mut _DEVICE_OBJECT, *mut _DEVICE_OBJECT)>§FastIoQueryNetworkOpenInfo: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, u8, *mut _FILE_NETWORK_OPEN_INFORMATION, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§AcquireForModWrite: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, *mut *mut _ERESOURCE, *mut _DEVICE_OBJECT) -> i64>§MdlRead: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u64, *mut *mut _MDL, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§MdlReadComplete: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _MDL, *mut _DEVICE_OBJECT) -> u8>§PrepareMdlWrite: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u64, *mut *mut _MDL, *mut _IO_STATUS_BLOCK, *mut _DEVICE_OBJECT) -> u8>§MdlWriteComplete: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, *mut _MDL, *mut _DEVICE_OBJECT) -> u8>§FastIoReadCompressed: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u64, *mut c_void, *mut *mut _MDL, *mut _IO_STATUS_BLOCK, *mut _COMPRESSED_DATA_INFO, u64, *mut _DEVICE_OBJECT) -> u8>§FastIoWriteCompressed: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, u64, u64, *mut c_void, *mut *mut _MDL, *mut _IO_STATUS_BLOCK, *mut _COMPRESSED_DATA_INFO, u64, *mut _DEVICE_OBJECT) -> u8>§MdlReadCompleteCompressed: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _MDL, *mut _DEVICE_OBJECT) -> u8>§MdlWriteCompleteCompressed: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _LARGE_INTEGER, *mut _MDL, *mut _DEVICE_OBJECT) -> u8>§FastIoQueryOpen: Option<unsafe extern "C" fn(*mut _IRP, *mut _FILE_NETWORK_OPEN_INFORMATION, *mut _DEVICE_OBJECT) -> u8>§ReleaseForModWrite: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _ERESOURCE, *mut _DEVICE_OBJECT) -> i64>§AcquireForCcFlush: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _DEVICE_OBJECT) -> i64>§ReleaseForCcFlush: Option<unsafe extern "C" fn(*mut _FILE_OBJECT, *mut _DEVICE_OBJECT) -> i64>