Type Alias winfsp_sys::FSP_FILE_SYSTEM
source · pub type FSP_FILE_SYSTEM = _FSP_FILE_SYSTEM;
Expand description
@group File System
A user mode file system is a program that uses the WinFsp API to expose a file system to Windows. The user mode file system must implement the operations in FSP_FILE_SYSTEM_INTERFACE, create a file system object using FspFileSystemCreate and start its dispatcher using FspFileSystemStartDispatcher. At that point it will start receiving file system requests on the FSP_FILE_SYSTEM_INTERFACE operations.
Aliased Type§
struct FSP_FILE_SYSTEM {Show 21 fields
pub Version: u16,
pub UserContext: *mut c_void,
pub VolumeName: [u16; 256],
pub VolumeHandle: *mut c_void,
pub EnterOperation: Option<unsafe extern "C" fn(_: *mut _FSP_FILE_SYSTEM, _: *mut FSP_FSCTL_TRANSACT_REQ, _: *mut FSP_FSCTL_TRANSACT_RSP) -> i32>,
pub LeaveOperation: Option<unsafe extern "C" fn(_: *mut _FSP_FILE_SYSTEM, _: *mut FSP_FSCTL_TRANSACT_REQ, _: *mut FSP_FSCTL_TRANSACT_RSP) -> i32>,
pub Operations: [Option<unsafe extern "C" fn(_: *mut _FSP_FILE_SYSTEM, _: *mut FSP_FSCTL_TRANSACT_REQ, _: *mut FSP_FSCTL_TRANSACT_RSP) -> i32>; 22],
pub Interface: *const _FSP_FILE_SYSTEM_INTERFACE,
pub DispatcherThread: *mut c_void,
pub DispatcherThreadCount: u32,
pub DispatcherResult: i32,
pub MountPoint: *mut u16,
pub MountHandle: *mut c_void,
pub DebugLog: u32,
pub OpGuardStrategy: i32,
pub OpGuardLock: _RTL_SRWLOCK,
pub UmFileContextIsUserContext2: u8,
pub UmFileContextIsFullContext: u8,
pub _bitfield_align_1: [u16; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2]>,
pub __bindgen_padding_0: u32,
}
Fields§
§Version: u16
§UserContext: *mut c_void
§VolumeName: [u16; 256]
§VolumeHandle: *mut c_void
§EnterOperation: Option<unsafe extern "C" fn(_: *mut _FSP_FILE_SYSTEM, _: *mut FSP_FSCTL_TRANSACT_REQ, _: *mut FSP_FSCTL_TRANSACT_RSP) -> i32>
§LeaveOperation: Option<unsafe extern "C" fn(_: *mut _FSP_FILE_SYSTEM, _: *mut FSP_FSCTL_TRANSACT_REQ, _: *mut FSP_FSCTL_TRANSACT_RSP) -> i32>
§Operations: [Option<unsafe extern "C" fn(_: *mut _FSP_FILE_SYSTEM, _: *mut FSP_FSCTL_TRANSACT_REQ, _: *mut FSP_FSCTL_TRANSACT_RSP) -> i32>; 22]
§Interface: *const _FSP_FILE_SYSTEM_INTERFACE
§DispatcherThread: *mut c_void
§DispatcherThreadCount: u32
§DispatcherResult: i32
§MountPoint: *mut u16
§MountHandle: *mut c_void
§DebugLog: u32
§OpGuardStrategy: i32
§OpGuardLock: _RTL_SRWLOCK
§UmFileContextIsUserContext2: u8
§UmFileContextIsFullContext: u8
§_bitfield_align_1: [u16; 0]
§_bitfield_1: __BindgenBitfieldUnit<[u8; 2]>
§__bindgen_padding_0: u32
Implementations§
source§impl _FSP_FILE_SYSTEM
impl _FSP_FILE_SYSTEM
pub fn UmNoReparsePointsDirCheck(&self) -> UINT16
pub fn set_UmNoReparsePointsDirCheck(&mut self, val: UINT16)
pub fn UmReservedFlags(&self) -> UINT16
pub fn set_UmReservedFlags(&mut self, val: UINT16)
pub fn DispatcherStopping(&self) -> UINT16
pub fn set_DispatcherStopping(&mut self, val: UINT16)
pub fn new_bitfield_1( UmNoReparsePointsDirCheck: UINT16, UmReservedFlags: UINT16, DispatcherStopping: UINT16 ) -> __BindgenBitfieldUnit<[u8; 2]>
Trait Implementations§
source§impl Clone for _FSP_FILE_SYSTEM
impl Clone for _FSP_FILE_SYSTEM
source§fn clone(&self) -> _FSP_FILE_SYSTEM
fn clone(&self) -> _FSP_FILE_SYSTEM
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read more