FsctlRequest

Trait FsctlRequest 

Source
pub trait FsctlRequest: for<'a> BinWrite<Args<'a> = ()> + Into<IoctlReqData> {
    type Response: FsctlResponseContent;

    const FSCTL_CODE: FsctlCodes;
}
Expand description

This is a helper trait that defines, for a certain FSCTL request type, the response type and their matching FSCTL code.

Required Associated Constants§

Required Associated Types§

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl FsctlRequest for ReqGetDfsReferral

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::DfsGetReferrals

Source§

type Response = RespGetDfsReferral

Source§

impl FsctlRequest for ReqGetDfsReferralEx

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::DfsGetReferralsEx

Source§

type Response = RespGetDfsReferral

Source§

impl FsctlRequest for FileLevelTrimRequest

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::FileLevelTrim

Source§

type Response = FileLevelTrimResponse

Source§

impl FsctlRequest for NetworkResiliencyRequest

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::LmrRequestResiliency

Source§

type Response = LmrRequestResiliencyResponse

Source§

impl FsctlRequest for OffloadReadRequest

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::OffloadRead

Source§

type Response = OffloadReadResponse

Source§

impl FsctlRequest for PipePeekRequest

Source§

impl FsctlRequest for PipeTransceiveRequest

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::PipeTransceive

Source§

type Response = PipeTransceiveResponse

Source§

impl FsctlRequest for PipeWaitRequest

Source§

impl FsctlRequest for QueryAllocRangesItem

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::QueryAllocatedRanges

Source§

type Response = QueryAllocRangesResult

Source§

impl FsctlRequest for QueryNetworkInterfaceInfoRequest

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::QueryNetworkInterfaceInfo

Source§

type Response = ChainedItemList<NetworkInterfaceInfo>

Source§

impl FsctlRequest for SetReparsePointRequest

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::SetReparsePoint

Source§

type Response = SetReparsePointResponse

Source§

impl FsctlRequest for SrvCopyChunkCopyWrite

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::SrvCopychunkWrite

Source§

type Response = SrvCopychunkResponse

Source§

impl FsctlRequest for SrvCopychunkCopy

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::SrvCopychunk

Source§

type Response = SrvCopychunkResponse

Source§

impl FsctlRequest for SrvEnumerateSnapshotsRequest

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::SrvEnumerateSnapshots

Source§

type Response = SrvEnumerateSnapshotsResponse

Source§

impl FsctlRequest for SrvReadHashReq

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::SrvReadHash

Source§

type Response = SrvReadHashRes

Source§

impl FsctlRequest for SrvRequestResumeKeyRequest

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::SrvRequestResumeKey

Source§

type Response = SrvRequestResumeKey

Source§

impl FsctlRequest for ValidateNegotiateInfoRequest

Source§

const FSCTL_CODE: FsctlCodes = FsctlCodes::ValidateNegotiateInfo

Source§

type Response = ValidateNegotiateInfoResponse