|
| FxRequestFromLookaside (__in CfxDevice *Device, __in MdIrp Irp) |
|
PVOID | operator new (__in size_t Size, __in CfxDevice *Device, __in_opt PWDF_OBJECT_ATTRIBUTES Attributes) |
|
__inline PLIST_ENTRY | GetListEntry (__in FxListEntryNames Index) |
|
__inline VOID | CopyCurrentIrpStackLocationToNext (VOID) |
|
_Must_inspect_result_ NTSTATUS | Reuse (__in PWDF_REQUEST_REUSE_PARAMS ReuseParams) |
|
__inline BOOLEAN | IsCancelled (VOID) |
|
__inline VOID | CopyCompletionParams (__in PWDF_REQUEST_COMPLETION_PARAMS Params) |
|
VOID __inline | SetPresented (VOID) |
|
VOID | AddIrpReference (VOID) |
|
VOID | ReleaseIrpReference (VOID) |
|
virtual ULONG | AddRefOverride (__in WDFOBJECT_OFFSET Offset, __in PVOID Tag=NULL, __in LONG Line=0, __in_opt PSTR File=NULL) |
|
virtual ULONG | ReleaseOverride (__in WDFOBJECT_OFFSET Offset, __in PVOID Tag=NULL, __in LONG Line=0, __in_opt PSTR File=NULL) |
|
__inline CfxDevice * | GetDevice (VOID) |
|
__inline BOOLEAN | IsReserved () |
|
__inline VOID | SetReserved () |
|
__inline VOID | SetForwardProgressQueue (__in FxIoQueue *Queue) |
|
_Must_inspect_result_ FxIoQueue * | GetCurrentQueue (VOID) |
|
FxRequestCompletionState | SetCompletionState (__in FxRequestCompletionState NewState) |
|
VOID __inline | SetStatus (__in NTSTATUS Status) |
|
NTSTATUS | SetInformation (__in ULONG_PTR Information) |
|
ULONG_PTR | GetInformation (VOID) |
|
KPROCESSOR_MODE | GetRequestorMode (VOID) |
|
__inline NTSTATUS | Complete (__in NTSTATUS Status) |
|
__inline NTSTATUS | CompleteWithInformation (__in NTSTATUS Status, __in ULONG_PTR Information) |
|
__inline NTSTATUS | CompleteWithPriority (__in NTSTATUS Status, __in CCHAR PriorityBoost) |
|
| FX_DECLARE_VF_FUNCTION (VOID, VerifyPreProcessSendAndForget) |
|
VOID | PreProcessSendAndForget (VOID) |
|
VOID | PostProcessSendAndForget (VOID) |
|
NTSTATUS | GetStatus (VOID) |
|
_Must_inspect_result_ NTSTATUS | GetParameters (__out PWDF_REQUEST_PARAMETERS Parameters) |
|
_Must_inspect_result_ NTSTATUS | GetMemoryObject (__deref_out IFxMemory **Memory, __out PVOID *Buffer, __out size_t *Length) |
|
_Must_inspect_result_ NTSTATUS | GetMdl (__out PMDL *pMdl) |
|
_Must_inspect_result_ NTSTATUS | GetDeviceControlOutputMemoryObject (__deref_out IFxMemory **MemoryObject, __out PVOID *Buffer, __out size_t *Length) |
|
_Must_inspect_result_ NTSTATUS | GetDeviceControlOutputMdl (__out PMDL *pMdl) |
|
| FX_DECLARE_VF_FUNCTION (NTSTATUS, VerifyProbeAndLock) |
|
_Must_inspect_result_ NTSTATUS | ProbeAndLockForRead (__in PVOID Buffer, __in ULONG Length, __deref_out FxRequestMemory **pMemoryObject) |
|
_Must_inspect_result_ NTSTATUS | ProbeAndLockForWrite (__in PVOID Buffer, __in ULONG Length, __deref_out FxRequestMemory **pMemoryObject) |
|
_Must_inspect_result_ NTSTATUS | Impersonate (_In_ SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, _In_ PFN_WDF_REQUEST_IMPERSONATE EvtRequestImpersonate, _In_opt_ PVOID Context) |
|
VOID | SetImpersonationFlags (_In_ ULONG Flags) |
|
FxIrp * | GetFxIrp (VOID) |
|
__inline FxIoQueue * | GetIoQueue (VOID) |
|
_Must_inspect_result_ NTSTATUS | GetIrp (__deref_out MdIrp *ppIrp) |
|
_Must_inspect_result_ NTSTATUS | GetFileObject (__deref_out_opt FxFileObject **pFileObject) |
|
PIO_STACK_LOCATION | GetCurrentIrpStackLocation (VOID) |
|
| FX_DECLARE_VF_FUNCTION_P1 (NTSTATUS, VerifyInsertIrpQueue, _In_ FxIrpQueue *) |
|
_Must_inspect_result_ NTSTATUS | InsertTailIrpQueue (__in FxIrpQueue *IrpQueue, __out_opt ULONG *pRequestCount) |
|
_Must_inspect_result_ NTSTATUS | InsertHeadIrpQueue (__in FxIrpQueue *IrpQueue, __out_opt ULONG *pRequestCount) |
|
_Must_inspect_result_ NTSTATUS | RemoveFromIrpQueue (__in FxIrpQueue *IrpQueue) |
|
__inline VOID | MarkRemovedFromIrpQueue (VOID) |
|
__inline PMdIoCsqIrpContext | GetCsqContext (VOID) |
|
__inline BOOLEAN | IsInIrpQueue (__in FxIrpQueue *pIrpQueue) |
|
| FX_DECLARE_VF_FUNCTION_P1 (NTSTATUS, VerifyStopAcknowledge, _In_ BOOLEAN) |
|
VOID | StopAcknowledge (__in BOOLEAN Requeue) |
|
__inline BOOLEAN | IsPowerStopAcknowledged (VOID) |
|
__inline BOOLEAN | IsPowerStopAcknowledgedWithRequeue (VOID) |
|
VOID | ClearPowerStopState (VOID) |
|
| FX_DECLARE_VF_FUNCTION (VOID, VerifierBreakpoint_RequestEarlyDisposeDeferred) |
|
| FX_DECLARE_VF_FUNCTION (NTSTATUS, VerifyRequestIsDriverOwned) |
|
| FX_DECLARE_VF_FUNCTION (NTSTATUS, VerifyRequestIsCancelable) |
|
| FX_DECLARE_VF_FUNCTION (NTSTATUS, VerifyRequestIsNotCancelable) |
|
| FX_DECLARE_VF_FUNCTION (NTSTATUS, VerifyRequestIsInCallerContext) |
|
| FX_DECLARE_VF_FUNCTION (NTSTATUS, VerifyRequestIsInEvtIoStopContext) |
|
| FX_DECLARE_VF_FUNCTION (NTSTATUS, VerifyRequestIsNotCompleted) |
|
| FX_DECLARE_VF_FUNCTION (NTSTATUS, VerifyRequestIsTagRequest) |
|
| FX_DECLARE_VF_FUNCTION (NTSTATUS, VerifyRequestIsAllocatedFromIo) |
|
| FX_DECLARE_VF_FUNCTION (NTSTATUS, VerifyRequestIsCurrentStackValid) |
|
| FX_DECLARE_VF_FUNCTION (NTSTATUS, VerifyRequestCanBeCompleted) |
|
VOID | FreeRequest (VOID) |
|
__inline VOID | ClearFieldsForReuse (VOID) |
|
virtual ULONG | Release (__in PVOID Tag, __in LONG Line, __in_opt PSTR File) |
|
__inline BOOLEAN | IsRequestForwardedToParent (VOID) |
|
__inline VOID | SetInternalContext (PVOID Context) |
|
__inline PVOID | GetInternalContext (VOID) |
|
__inline VOID | SetCompletionRoutine (__in_opt PFN_WDF_REQUEST_COMPLETION_ROUTINE CompletionRoutine=NULL, __in_opt WDFCONTEXT CompletionContext=NULL) |
|
PFN_WDF_REQUEST_COMPLETION_ROUTINE | ClearCompletionRoutine (VOID) |
|
WDFCONTEXT | ClearCompletionContext (VOID) |
|
__inline BOOLEAN | IsCompletionRoutineSet (VOID) |
|
__inline BOOLEAN | IsCancelRoutineSet (VOID) |
|
__inline FxRequestContext * | GetContext (VOID) |
|
__inline VOID | SetContext (__in FxRequestContext *RequestContext=NULL) |
|
VOID | ContextReleaseAndRestore (VOID) |
|
__inline VOID | EnableContextDisposeNotification (VOID) |
|
__inline BOOLEAN | HasContextType (__in FX_REQUEST_CONTEXT_TYPE Type) |
|
__inline BOOLEAN | HasContext (VOID) |
|
__inline MdIrp | GetSubmitIrp (VOID) |
|
__inline FxIrp * | GetSubmitFxIrp (VOID) |
|
MdIrp | SetSubmitIrp (__in_opt MdIrp NewIrp, __in BOOLEAN FreeIrp=TRUE) |
|
__inline BOOLEAN | CanComplete (VOID) |
|
VOID | CompleteSubmitted (VOID) |
|
_Must_inspect_result_ NTSTATUS | ValidateTarget (__in FxIoTarget *Target) |
|
__inline FxIoTarget * | GetTarget (VOID) |
|
VOID __inline | SetTarget (__in FxIoTarget *Target) |
|
__inline UCHAR | GetTargetFlags (VOID) |
|
__inline VOID | SetTargetFlags (__in UCHAR Flags) |
|
__inline ULONG | ClearTargetFlags (__in UCHAR Flags) |
|
__inline VOID | SetRequestBaseFlags (__in UCHAR Flags) |
|
SHORT | GetVerifierFlagsLocked (VOID) |
|
__inline SHORT | GetVerifierFlags (VOID) |
|
__inline VOID | SetVerifierFlagsLocked (__in SHORT Flags) |
|
__inline VOID | SetVerifierFlags (__in SHORT Flags) |
|
__inline VOID | ClearVerifierFlagsLocked (__in SHORT Flags) |
|
__inline VOID | ClearVerifierFlags (__in SHORT Flags) |
|
__inline VOID | VerifierSetFormatted (VOID) |
|
__inline VOID | VerifierClearFormatted (VOID) |
|
__inline BOOLEAN | VerifierIsFormatted (VOID) |
|
__inline BOOLEAN | ShouldClearContext (VOID) |
|
_Must_inspect_result_ NTSTATUS | CreateTimer (VOID) |
|
VOID | StartTimer (__in LONGLONG Timeout) |
|
_Must_inspect_result_ BOOLEAN | CancelTimer (VOID) |
|
BOOLEAN | Cancel (VOID) |
|
BOOLEAN __inline | IsAllocatedFromIo (VOID) |
|
BOOLEAN __inline | IsAllocatedDriver (VOID) |
|
BOOLEAN __inline | IsCanComplete (VOID) |
|
__inline VOID | SetCompleted (__in BOOLEAN Value) |
|
VOID __inline | SetPriorityBoost (CCHAR PriorityBoost) |
|
CCHAR __inline | GetPriorityBoost (VOID) |
|
__inline WDFREQUEST | GetHandle (VOID) |
|
__inline PVOID | GetTraceObjectHandle (VOID) |
|
VOID | FreeMdls (VOID) |
|
DECLSPEC_NORETURN VOID | FatalError (__in NTSTATUS Status) |
|
VOID | ClearFieldsForReuse (VOID) |
|
| FxNonPagedObject (__in WDFTYPE Type, __in USHORT Size, __in PFX_DRIVER_GLOBALS FxDriverGlobals) |
|
| FxNonPagedObject (__in WDFTYPE Type, __in USHORT Size, __in PFX_DRIVER_GLOBALS FxDriverGlobals, __in FxObjectType ObjectType) |
|
virtual | ~FxNonPagedObject (VOID) |
|
| _Acquires_lock_ (this->m_NPLock.m_Lock) __drv_maxIRQL(DISPATCH_LEVEL) __drv_setsIRQL(DISPATCH_LEVEL) VOID Lock(__out __drv_deref(__drv_savesIRQL) PKIRQL PreviousIrql) |
|
| _Releases_lock_ (this->m_NPLock.m_Lock) __drv_requiresIRQL(DISPATCH_LEVEL) __inline VOID Unlock(__in __drv_restoresIRQL KIRQL PreviousIrql) |
|
| _Acquires_lock_ (this->m_NPLock.m_Lock) __drv_requiresIRQL(DISPATCH_LEVEL) VOID LockAtDispatch(VOID) |
|
| _Requires_lock_held_ (this->m_NPLock.m_Lock) _Releases_lock_(this -> m_NPLock.m_Lock) __drv_requiresIRQL(DISPATCH_LEVEL) __inline VOID UnlockFromDispatch(VOID) |
|
PVOID | GetCOMWrapper () |
|
void | SetCOMWrapper (__drv_aliasesMem PVOID Wrapper) |
|
| FxObject (__in WDFTYPE Type, __in USHORT Size, __in PFX_DRIVER_GLOBALS FxDriverGlobals) |
|
virtual | ~FxObject (VOID) |
|
PVOID __inline | operator new (__in size_t Size, __in PFX_DRIVER_GLOBALS FxDriverGlobals, __in FxObjectType Type) |
|
PVOID __inline | operator new (__in size_t Size, __in PFX_DRIVER_GLOBALS FxDriverGlobals, __in_opt PWDF_OBJECT_ATTRIBUTES Attributes, __in USHORT ExtraSize=0) |
|
VOID | operator delete (__in PVOID Memory) |
|
VOID | SetNoContextHeader (VOID) |
|
PVOID __inline | GetObjectHandle (VOID) |
|
__inline FxContextHeader * | GetContextHeader (VOID) |
|
__inline PFX_DRIVER_GLOBALS | GetDriverGlobals (VOID) |
|
WDFTYPE | GetType (VOID) |
|
USHORT | GetObjectSize (VOID) |
|
LONG | GetRefCnt (VOID) |
|
FxTagTracker * | GetTagTracker (VOID) |
|
CfxDevice * | GetDevice (VOID) |
|
CfxDeviceBase * | GetDeviceBase (VOID) |
|
VOID | SetDeviceBase (__in CfxDeviceBase *DeviceBase) |
|
__inline VOID | CallCleanup (VOID) |
|
ULONG __inline | AddRef (__in_opt PVOID Tag=NULL, __in LONG Line=0, __in_opt PSTR File=NULL) |
|
virtual ULONG | Release (__in_opt PVOID Tag=NULL, __in LONG Line=0, __in_opt PSTR File=NULL) |
|
virtual ULONG | AddRefOverride (__in WDFOBJECT_OFFSET Offset, __in_opt PVOID Tag=NULL, __in LONG Line=0, __in_opt PSTR File=NULL) |
|
virtual ULONG | ReleaseOverride (__in WDFOBJECT_OFFSET Offset, __in_opt PVOID Tag=NULL, __in LONG Line=0, __in_opt PSTR File=NULL) |
|
virtual _Must_inspect_result_ NTSTATUS | QueryInterface (__in FxQueryInterfaceParams *Params) |
|
VOID | MarkTraceState (VOID) |
|
BOOLEAN __inline | IsTraceState (VOID) |
|
VOID __inline | TraceDroppedEvent (__in FxObjectDroppedEvent Event) |
|
VOID | MarkPassiveDispose (__in FxObjectLockState State=ObjectLock) |
|
VOID | MarkPassiveCallbacks (__in FxObjectLockState State=ObjectLock) |
|
VOID | MarkForceDisposeThread (__in FxObjectLockState State=ObjectLock) |
|
BOOLEAN | IsPassiveCallbacks (__in BOOLEAN AcquireLock=TRUE) |
|
BOOLEAN | IsPassiveDispose (__in BOOLEAN AcquireLock=TRUE) |
|
BOOLEAN | IsForceDisposeThread (__in BOOLEAN AcquireLock=TRUE) |
|
VOID | MarkCommitted (VOID) |
|
BOOLEAN | IsCommitted (VOID) |
|
VOID | MarkDisposeOverride (__in FxObjectLockState State=ObjectLock) |
|
VOID | MarkNoDeleteDDI (__in FxObjectLockState State=ObjectLock) |
|
BOOLEAN | IsNoDeleteDDI (VOID) |
|
_Must_inspect_result_ NTSTATUS | Commit (__in_opt PWDF_OBJECT_ATTRIBUTES Attributes, __out_opt WDFOBJECT *ObjectHandle, __in_opt FxObject *Parent=NULL, __in BOOLEAN AssignDriverAsDefaultParent=TRUE) |
|
VOID | DeleteFromFailedCreate (VOID) |
|
VOID | ClearEvtCallbacks (VOID) |
|
BOOLEAN | EarlyDispose (VOID) |
|
virtual VOID | DeleteObject (VOID) |
|
virtual BOOLEAN | Dispose (VOID) |
|
_Must_inspect_result_ NTSTATUS | AssignParentObject (__in FxObject *ParentObject) |
|
_Must_inspect_result_ NTSTATUS | AddContext (__in FxContextHeader *Header, __in PVOID *Context, __in PWDF_OBJECT_ATTRIBUTES Attributes) |
|
_Must_inspect_result_ NTSTATUS | RemoveParentAssignment (VOID) |
|
_Must_inspect_result_ FxObject * | GetParentObjectReferenced (__in PVOID Tag) |
|
BOOLEAN | IsDisposed (VOID) |
|
|
static FxRequest * | _FromOwnerListEntry (__in FxListEntryNames Index, __in PLIST_ENTRY OwnerListEntry) |
|
static _Must_inspect_result_ NTSTATUS | _CreateForPackage (__in CfxDevice *Device, __in PWDF_OBJECT_ATTRIBUTES RequestAttributes, __in MdIrp Irp, __deref_out FxRequest **Request) |
|
static _Must_inspect_result_ NTSTATUS | _Create (__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in_opt PWDF_OBJECT_ATTRIBUTES RequestAttributes, __in_opt MdIrp Irp, __in_opt FxIoTarget *Target, __in FxRequestIrpOwnership Ownership, __in FxRequestConstructorCaller Caller, __deref_out FxRequest **Request) |
|
static _Must_inspect_result_ FxRequest * | GetNextRequest (__in FxIrpQueue *IrpQueue) |
|
static _Must_inspect_result_ NTSTATUS | GetNextRequest (__in FxIrpQueue *IrpQueue, __in_opt MdFileObject FileObject, __in_opt FxRequest *TagRequest, __deref_out FxRequest **ppOutRequest) |
|
static _Must_inspect_result_ NTSTATUS | PeekRequest (__in FxIrpQueue *IrpQueue, __in_opt FxRequest *TagRequest, __in_opt MdFileObject FileObject, __out_opt PWDF_REQUEST_PARAMETERS Parameters, __deref_out FxRequest **ppOutRequest) |
|
static __inline FxRequest * | RetrieveFromCsqContext (__in PMdIoCsqIrpContext pCsqContext) |
|
static __inline FxRequestBase * | _FromListEntry (__in PLIST_ENTRY Entry) |
|
static __inline FxRequestBase * | _FromDrainEntry (__in PSINGLE_LIST_ENTRY Entry) |
|
static __inline FxRequestBase * | _FromCsqContext (__in PMdIoCsqIrpContext Context) |
|
static FxObject * | _FromDisposeEntry (__in PSINGLE_LIST_ENTRY Entry) |
|
static FxObject * | _GetObjectFromHandle (__in WDFOBJECT Handle, __inout PWDFOBJECT_OFFSET ObjectOffset) |
|
static PVOID __inline | _ToHandle (__in FxObject *Object) |
|
static VOID __inline | _ReferenceActual (__in WDFOBJECT Object, __in_opt PVOID Tag, __in LONG Line, __in PSTR File) |
|
static VOID __inline | _DereferenceActual (__in WDFOBJECT Object, __in_opt PVOID Tag, __in LONG Line, __in PSTR File) |
|
static PVOID | _GetDebugBase (__in FxObject *Object) |
|
static PFX_POOL_HEADER | _CleanupPointer (__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in FxObject *Object) |
|
static _Must_inspect_result_ NTSTATUS | _GetEffectiveLock (__in FxObject *Object, __in_opt IFxHasCallbacks *Callbacks, __in BOOLEAN AutomaticLocking, __in BOOLEAN PassiveCallbacks, __out FxCallbackLock **CallbackLock, __out_opt FxObject **CallbackLockObject) |
|
static _Must_inspect_result_ NTSTATUS | _ObjectQuery (_In_ FxObject *Object, _In_ CONST GUID *Guid, _In_ ULONG QueryBufferLength, _Out_writes_bytes_(QueryBufferLength) PVOID QueryBuffer) |
|
union { |
MdIoCsqIrpContext m_CsqContext |
|
LIST_ENTRY m_ListEntry |
|
}; | |
|
union { |
SINGLE_LIST_ENTRY m_DrainSingleEntry |
|
BOOLEAN m_NextStackLocationFormatted |
|
}; | |
|
static PVOID | _GetBase (__in FxObject *Object) |
|
FxIoQueue * | m_IoQueue |
|
FxRequestSystemBuffer | m_SystemBuffer |
|
FxRequestOutputBuffer | m_OutputBuffer |
|
LIST_ENTRY | m_OwnerListEntry |
|
LIST_ENTRY | m_OwnerListEntry2 |
|
LIST_ENTRY | m_ForwardProgressList |
|
FxIoQueue * | m_ForwardProgressQueue |
|
PVOID | m_InternalContext |
|
BOOLEAN | m_Presented |
|
BYTE | m_PowerStopState |
|
BOOLEAN | m_Reserved |
|
BOOLEAN | m_ForwardRequestToParent |
|
FxIrp | m_Irp |
|
FxIoTarget * | m_Target |
|
FxRequestContext * | m_RequestContext |
|
FxRequestTimer * | m_Timer |
|
FxRequestCancelCallback | m_CancelRoutine |
|
FxRequestCompletionCallback | m_CompletionRoutine |
|
WDFCONTEXT | m_TargetCompletionContext |
|
LONG | m_IrpCompletionReferenceCount |
|
union { |
UCHAR m_TargetFlags |
|
struct { |
UCHAR Completed: 1 |
|
UCHAR FlagsPended: 1 |
|
UCHAR TimerSet: 1 |
|
UCHAR CancelledFromTimer: 1 |
|
UCHAR IgnoreState: 1 |
|
} m_TargetFlagsByName |
|
}; | |
|
UCHAR | m_IrpAllocation |
|
BOOLEAN | m_Completed |
|
BOOLEAN | m_Canceled |
|
WDFOBJECT_OFFSET_ALIGNED | m_SystemBufferOffset |
|
union { |
SHORT m_VerifierFlags |
|
struct { |
SHORT DriverOwned: 1 |
|
SHORT TagRequest: 1 |
|
SHORT Forwarded: 1 |
|
SHORT DriverDispatch: 1 |
|
SHORT DriverCancelable: 1 |
|
SHORT DriverInprocessContext: 1 |
|
SHORT Cancelled: 1 |
|
SHORT Formatted: 1 |
|
SHORT SentToTarget: 1 |
|
SHORT DriverInEvtIoStopContext: 1 |
|
} m_VeriferFlagsByName |
|
}; | |
|
LONG | m_IrpReferenceCount |
|
FxIrpQueue * | m_IrpQueue |
|
WDFOBJECT_OFFSET_ALIGNED | m_OutputBufferOffset |
|
union { |
UCHAR m_RequestBaseFlags |
|
struct { |
UCHAR SystemMdlMapped: 1 |
|
UCHAR OutputMdlMapped: 1 |
|
UCHAR SyncCleanupContext: 1 |
|
} m_RequestBaseFlagsByName |
|
}; | |
|
union { |
UCHAR m_RequestBaseStaticFlags |
|
struct { |
UCHAR SystemBufferValid: 1 |
|
UCHAR OutputBufferValid: 1 |
|
} m_RequestBaseStaticFlagsByName |
|
}; | |
|
CCHAR | m_PriorityBoost |
|
BYTE | m_CompletionState |
|
BOOLEAN | m_CanComplete |
|
PMDL | m_AllocatedMdl |
|
union { |
CfxDeviceBase * m_DeviceBase |
|
CfxDevice * m_Device |
|
}; | |
|
static MdDeferredRoutineType | _TimerDPC |
|
Definition at line 1505 of file fxrequest.hpp.