ReactOS  0.4.12-dev-43-g63b00d8
Messaging.c File Reference
#include "fltmgr.h"
#include "fltmgrint.h"
#include <fltmgr_shared.h>
#include <debug.h>
Include dependency graph for Messaging.c:

Go to the source code of this file.

Macros

#define NDEBUG
 

Functions

static BOOLEAN FltpDisconnectPort (_In_ PFLT_PORT_OBJECT PortObject)
 
static NTSTATUS CreateClientPort (_In_ PFILE_OBJECT FileObject, _Inout_ PIRP Irp)
 
static NTSTATUS CloseClientPort (_In_ PFILE_OBJECT FileObject, _Inout_ PIRP Irp)
 
static NTSTATUS InitializeMessageWaiterQueue (_Inout_ PFLT_MESSAGE_WAITER_QUEUE MsgWaiterQueue)
 
static PPORT_CCB CreatePortCCB (_In_ PFLT_PORT_OBJECT PortObject)
 
_Must_inspect_result_ _IRQL_requires_max_ (PASSIVE_LEVEL) == 0
 
_Must_inspect_result_ _IRQL_requires_max_ (APC_LEVEL)
 
NTSTATUS FltpMsgCreate (_In_ PDEVICE_OBJECT DeviceObject, _Inout_ PIRP Irp)
 
NTSTATUS FltpMsgDispatch (_In_ PDEVICE_OBJECT DeviceObject, _Inout_ PIRP Irp)
 
VOID NTAPI FltpServerPortClose (_In_opt_ PEPROCESS Process, _In_ PVOID Object, _In_ ACCESS_MASK GrantedAccess, _In_ ULONG ProcessHandleCount, _In_ ULONG SystemHandleCount)
 
VOID NTAPI FltpServerPortDelete (PVOID Object)
 
VOID NTAPI FltpClientPortClose (_In_opt_ PEPROCESS Process, _In_ PVOID Object, _In_ ACCESS_MASK GrantedAccess, _In_ ULONG ProcessHandleCount, _In_ ULONG SystemHandleCount)
 
VOID NTAPI FltpClientPortDelete (PVOID Object)
 
NTSTATUS FltpSetupCommunicationObjects (_In_ PDRIVER_OBJECT DriverObject)
 
NTSTATUS NTAPI FltpAddMessageWaiter (_In_ PIO_CSQ Csq, _In_ PIRP Irp, _In_ PVOID InsertContext)
 
VOID NTAPI FltpRemoveMessageWaiter (_In_ PIO_CSQ Csq, _In_ PIRP Irp)
 
PIRP NTAPI FltpGetNextMessageWaiter (_In_ PIO_CSQ Csq, _In_ PIRP Irp, _In_ PVOID PeekContext)
 
 _Acquires_lock_ (((PFLT_MESSAGE_WAITER_QUEUE) CONTAINING_RECORD(Csq, FLT_MESSAGE_WAITER_QUEUE, Csq)) ->WaiterQ.mLock) _IRQL_saves_global_(Irql
 
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD (Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
 
 _Releases_lock_ (((PFLT_MESSAGE_WAITER_QUEUE) CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) ->WaiterQ.mLock) _IRQL_restores_global_(Irql
 
VOID NTAPI FltpCancelMessageWaiter (_In_ PIO_CSQ Csq, _In_ PIRP Irp)
 

Variables

UNICODE_STRING CommsDeviceName = RTL_CONSTANT_STRING(L"\\FileSystem\\Filters\\FltMgrMsg")
 
PDEVICE_OBJECT CommsDeviceObject
 
POBJECT_TYPE ServerPortObjectType
 
POBJECT_TYPE ClientPortObjectType
 

Macro Definition Documentation

◆ NDEBUG

#define NDEBUG

Definition at line 15 of file Messaging.c.

Function Documentation

◆ _Acquires_lock_()

_Acquires_lock_ ( ((PFLT_MESSAGE_WAITER_QUEUE) CONTAINING_RECORD(Csq, FLT_MESSAGE_WAITER_QUEUE, Csq)) ->WaiterQ.  mLock)

◆ _IRQL_requires_max_() [1/2]

_IRQL_requires_max_ ( PASSIVE_LEVEL  ) == 0

Definition at line 64 of file Messaging.c.

Referenced by _IRQL_requires_max_().

75 {
76  PFLT_SERVER_PORT_OBJECT PortObject;
78 
79  /* The caller must allow at least one connection */
80  if (MaxConnections == 0)
81  {
83  }
84 
85  /* The request must be for a kernel handle */
86  if (!(ObjectAttributes->Attributes & OBJ_KERNEL_HANDLE))
87  {
89  }
90 
91  /*
92  * Get rundown protection on the target to stop the owner
93  * from unloading whilst this port object is open. It gets
94  * removed in the FltpServerPortClose callback
95  */
96  Status = FltObjectReference(Filter);
97  if (!NT_SUCCESS(Status))
98  {
99  return Status;
100  }
101 
102  /* Create the server port object for this filter */
103  Status = ObCreateObject(KernelMode,
106  KernelMode,
107  NULL,
108  sizeof(FLT_SERVER_PORT_OBJECT),
109  0,
110  0,
111  (PVOID *)&PortObject);
112  if (NT_SUCCESS(Status))
113  {
114  /* Zero out the struct */
115  RtlZeroMemory(PortObject, sizeof(FLT_SERVER_PORT_OBJECT));
116 
117  /* Increment the ref count on the target filter */
119 
120  /* Setup the filter port object */
121  PortObject->Filter = Filter;
122  PortObject->ConnectNotify = ConnectNotifyCallback;
124  PortObject->MessageNotify = MessageNotifyCallback;
125  PortObject->Cookie = ServerPortCookie;
126  PortObject->MaxConnections = MaxConnections;
127 
128  /* Insert the object */
129  Status = ObInsertObject(PortObject,
130  NULL,
132  0,
133  NULL,
135  if (NT_SUCCESS(Status))
136  {
137  /* Lock the connection list */
139 
140  /* Add the new port object to the connection list and increment the count */
143 
144  /* Unlock the connection list*/
146  }
147  }
148 
149  if (!NT_SUCCESS(Status))
150  {
151  /* Allow the filter to be cleaned up */
153  }
154 
155  return Status;
156 }
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
Definition: conport.c:35
#define STATUS_INVALID_PARAMETER
Definition: udferr_usr.h:135
_Must_inspect_result_ _Outptr_ PFLT_PORT * ServerPort
Definition: fltkernel.h:1873
PFLT_CONNECT_NOTIFY ConnectNotify
Definition: fltmgrint.h:191
VOID FLTAPI FltObjectDereference(_Inout_ PVOID Object)
Definition: Object.c:53
LONG NTSTATUS
Definition: precomp.h:26
#define InsertTailList(ListHead, Entry)
VOID FASTCALL ExReleaseFastMutex(IN PFAST_MUTEX FastMutex)
Definition: fmutex.c:31
ULONG FltpObjectPointerReference(_In_ PFLT_OBJECT Object)
Definition: Object.c:322
LIST_ENTRY mList
Definition: fltmgrint.h:56
_Must_inspect_result_ _In_opt_ PFLT_FILTER Filter
Definition: fltkernel.h:1802
#define FILE_READ_DATA
Definition: nt_native.h:628
smooth NULL
Definition: ftsmooth.c:416
NTSTATUS NTAPI ObCreateObject(IN KPROCESSOR_MODE ProbeMode OPTIONAL, IN POBJECT_TYPE Type, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, IN KPROCESSOR_MODE AccessMode, IN OUT PVOID ParseContext OPTIONAL, IN ULONG ObjectSize, IN ULONG PagedPoolCharge OPTIONAL, IN ULONG NonPagedPoolCharge OPTIONAL, OUT PVOID *Object)
Definition: oblife.c:952
POBJECT_TYPE ServerPortObjectType
Definition: Messaging.c:24
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:24
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID _In_ PFLT_CONNECT_NOTIFY _In_ PFLT_DISCONNECT_NOTIFY DisconnectNotifyCallback
Definition: fltkernel.h:1873
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:414
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID _In_ PFLT_CONNECT_NOTIFY ConnectNotifyCallback
Definition: fltkernel.h:1873
Status
Definition: gdiplustypes.h:24
NTSTATUS NTAPI ObInsertObject(IN PVOID Object, IN PACCESS_STATE AccessState OPTIONAL, IN ACCESS_MASK DesiredAccess, IN ULONG ObjectPointerBias, OUT PVOID *NewObject OPTIONAL, OUT PHANDLE Handle)
Definition: obhandle.c:2926
#define STANDARD_RIGHTS_ALL
Definition: nt_native.h:69
VOID FASTCALL ExAcquireFastMutex(IN PFAST_MUTEX FastMutex)
Definition: fmutex.c:23
NTSTATUS FLTAPI FltObjectReference(_Inout_ PVOID Object)
Definition: Object.c:41
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID ServerPortCookie
Definition: fltkernel.h:1873
FAST_MUTEX mLock
Definition: fltmgrint.h:55
PFLT_MESSAGE_NOTIFY MessageNotify
Definition: fltmgrint.h:193
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:261
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID _In_ PFLT_CONNECT_NOTIFY _In_ PFLT_DISCONNECT_NOTIFY _In_opt_ PFLT_MESSAGE_NOTIFY _In_ LONG MaxConnections
Definition: fltkernel.h:1873
PFLT_DISCONNECT_NOTIFY DisconnectNotify
Definition: fltmgrint.h:192
#define OBJ_KERNEL_HANDLE
Definition: winternl.h:231
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID _In_ PFLT_CONNECT_NOTIFY _In_ PFLT_DISCONNECT_NOTIFY _In_opt_ PFLT_MESSAGE_NOTIFY MessageNotifyCallback
Definition: fltkernel.h:1873
FLT_MUTEX_LIST_HEAD ConnectionList
Definition: fltmgrint.h:121

◆ _IRQL_requires_max_() [2/2]

_Must_inspect_result_ _IRQL_requires_max_ ( APC_LEVEL  )

Definition at line 198 of file Messaging.c.

208 {
211  UNREFERENCED_PARAMETER(SenderBuffer);
216  return STATUS_NOT_IMPLEMENTED;
217 }
#define STATUS_NOT_IMPLEMENTED
Definition: ntstatus.h:225
#define UNREFERENCED_PARAMETER(P)
Definition: ntbasedef.h:323
_Outptr_ PFLT_PORT * ClientPort
Definition: fltkernel.h:1892
_Must_inspect_result_ _In_ PFLT_PORT _In_ ULONG _Out_writes_bytes_opt_ ReplyLength PVOID _Inout_opt_ PULONG ReplyLength
Definition: fltkernel.h:1903
_Must_inspect_result_ _In_opt_ PFLT_FILTER Filter
Definition: fltkernel.h:1802
_Must_inspect_result_ _In_ PFLT_PORT _In_ ULONG _Out_writes_bytes_opt_ ReplyLength PVOID ReplyBuffer
Definition: fltkernel.h:1903
static ULONG Timeout
Definition: ping.c:61
_Must_inspect_result_ _In_ PFLT_PORT _In_ ULONG SenderBufferLength
Definition: fltkernel.h:1902

◆ _Releases_lock_()

_Releases_lock_ ( ((PFLT_MESSAGE_WAITER_QUEUE) CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) ->WaiterQ.  mLock)

Referenced by CONTAINING_RECORD().

◆ CloseClientPort()

static NTSTATUS CloseClientPort ( _In_ PFILE_OBJECT  FileObject,
_Inout_ PIRP  Irp 
)
static

Definition at line 764 of file Messaging.c.

Referenced by FltpMsgDispatch().

766 {
767  PFLT_CCB Ccb;
768 
769  Ccb = (PFLT_CCB)FileObject->FsContext2;
770 
771  /* Remove the reference on the filter we added when we opened the port */
773 
774  // FIXME: Free the CCB
775 
776  return STATUS_SUCCESS;
777 }
CCB_TYPE Data
Definition: fltmgrint.h:376
VOID NTAPI ObDereferenceObject(IN PVOID Object)
Definition: obref.c:375
PFLT_PORT_OBJECT Port
Definition: fltmgrint.h:356
_Inout_ PFILE_OBJECT FileObject
Definition: cdprocs.h:593
struct _FLT_CCB * PFLT_CCB
_Inout_ PFILE_OBJECT _In_ TYPE_OF_OPEN PFCB _In_opt_ PCCB Ccb
Definition: cdprocs.h:593
return STATUS_SUCCESS
Definition: btrfs.c:2710
PORT_CCB Port
Definition: fltmgrint.h:368

◆ CONTAINING_RECORD()

PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD ( Csq  ,
DEVICE_EXTENSION  ,
IrpQueue   
) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)

Definition at line 560 of file Messaging.c.

Referenced by _CcpFlushCache(), _Dispatch_type_(), _FindPort(), _Function_class_(), _MmTryToLockAddressSpace(), _Requires_lock_held_(), _SEH2Handle(), _SEH2Return(), _SEH2UnwindHandler(), _Success_(), AboutProtocol_from_IInternetProtocol(), actctx_release(), AdapterFindByHardwareAddress(), AdapterFindIndex(), AdapterFindInfo(), AdapterFindName(), AdapterGetFirst(), AdapterGetNext(), AdapterStop(), add_block_group_items(), add_changed_extent_ref(), add_changed_extent_ref_edr(), add_changed_extent_ref_sdr(), add_children_to_move_list(), add_chunk(), add_data_reloc_extent_item(), add_delete_inode_extref(), add_device(), add_device_to_list(), add_dir_child(), add_ext_holes(), add_extent(), add_extent_to_fcb(), add_item(), add_metadata_reloc_extent_item(), add_metadata_reloc_parent(), add_orphan(), add_parents(), add_partial_stripe(), add_pending_rmdir(), add_shared_block_extent_ref(), add_shared_data_extent_ref(), add_space_entry(), add_superblock_stripe(), add_to_bootstrap(), add_tree_block_extent_ref(), add_volume_device(), AddDevice(), AddDiskToList(), AddInputEvents(), AddKnownDriverToList(), AddrFileFree(), AddrFindShared(), AddrSearchFirst(), AddrSearchNext(), AfdAccept(), AfdCancelHandler(), AfdCleanupSocket(), AfdCloseSocket(), AfdConnectedSocketReadData(), AfdDisconnect(), AfdEventReceiveDatagramHandler(), AfdPacketSocketReadData(), AfdWaitForListen(), alloc_chunk(), allocate_cache(), allocate_cache_chunk(), allocate_tree_extents(), ApphelpCacheDump(), ApphelpCacheUpdateEntry(), ApphelpCacheWrite(), arbfp_blitter_blit(), arbfp_blitter_destroy(), ArcOpen(), arguments_from_jsdisp(), array_from_jsdisp(), assign_addresses(), AssignDriveLetters(), assignment_from_node(), AVrfDllLoadNotification(), AVrfDllUnloadNotification(), AVrfInitializeVerifier(), AVrfpChainDuplicateThunks(), AvrfpFindDuplicateThunk(), AVrfpIsVerifierProviderDll(), AVrfpResnapInitialModules(), AvrfpResolveThunks(), AVrfpSnapDllImports(), BadBlockQueryRoutine(), balance_data_chunk(), balance_metadata_chunk(), BaseCleanupDefineDosDevice(), BasepIsProcessAllowed(), BaseSrvCleanupVDMResources(), BaseSrvGetConsoleRecord(), BeepCleanup(), BfLoadDeferredFontFiles(), BlHtDelete(), BlHtLookup(), BlImgStartBootApplication(), BlMmAllocateHeap(), BlMmFreeHeap(), BlpDeviceOpen(), BlpDisplayRegisterLocale(), BlpMmDeleteBlockAllocator(), BODY_TO_HEADER(), bool_from_jsdisp(), BroadcastOpen(), BRUSHOBJ_pvGetRbrush(), BRUSHOBJ_ulGetBrushColor(), bstr_from_str(), buffer_from_resource(), BuildDesktopNameList(), CUSBRequest::BuildSetupPacketFromURB(), Bus_FDO_PnP(), Bus_PlugInDevice(), bus_query_device_relations(), button_from_HTMLDOMNode(), CachedGetUserFromSid(), CacheInitializeDrive(), CacheInternalDumpBlockList(), CacheInternalFindBlock(), CacheInternalFreeBlock(), CallNotificationDlls(), CaptureAvoidPipeStarvationWorker(), CcCopyData(), CcFlushImageSection(), CcGetFileObjectFromSectionPtrs(), CcInitView(), CcIsThereDirtyData(), CcLazyWriteScan(), CcpFindBcb(), CcpFindMatchingMap(), CcpFindOtherStreamFileObject(), CcPostDeferredWrites(), CcPostWorkQueue(), CcpPinMappedData(), CcpReadAhead(), CcPurgeCacheSection(), CcRosCreateVacb(), CcRosDeleteFileCache(), CcRosFlushDirtyPages(), CcRosFreeUnusedVacb(), CcRosLookupVacb(), CcRosTraceCacheMap(), CcRosTrimCache(), CcSetFileSizes(), CcUninitializeCacheMap(), CcWorkerThread(), CcZeroData(), CdAddToWorkque(), CdAllowExtendedDasdIo(), CdDeleteVcb(), CdFindNameLink(), CdFspDispatch(), CdInsertNameLink(), CDirectSoundCapture_fnAddRef(), CDirectSoundCapture_fnCreateCaptureBuffer(), CDirectSoundCapture_fnGetCaps(), CDirectSoundCapture_fnInitialize(), CDirectSoundCapture_fnQueryInterface(), CDirectSoundCapture_fnRelease(), CdIsPathnameValid(), CdRemoveClose(), CdRomTickHandler(), cert_from_ptr(), check_actctx(), CheckActiveSystemPartition(), chunk_lock_range(), chunk_unlock_range(), ClassDeviceControl(), ClassFactory_from_IClassFactory(), ClasspRetryRequestDpc(), ClassRemoveCScanList(), clean_space_cache(), clean_space_cache_chunk(), CleanupNotifications(), CleanupSidCacheMgr(), clear_batch_list(), clear_free_space_cache(), clear_rollback(), ClockUpdate(), CloseAllDialogWindows(), CM_First_Range(), CM_Free_Range_List(), CmGetSystemDriverList(), CmiCallRegisteredCallbacks(), CmpAllocateDelayItem(), CmpAllocateKeyControlBlock(), CmpDestroyHiveViewList(), CmpDoFlushAll(), CmpDoFlushNextHive(), CmpDoSort(), CmpEnumerateOpenSubKeys(), CmpFindDrivers(), CmpFlushNotifiesOnKeyBodyList(), CmpFreeDriverList(), CmpGetNameControlBlock(), CmpInitializeDelayedCloseTable(), CmpInsertKeyHash(), CmpIsHiveAlreadyLoaded(), CmpOrderGroup(), CmpResolveDriverDependencies(), CmShutdownSystem(), CmUnRegisterCallback(), co_HOOK_CallHooks(), co_MsqDispatchOneSentMessage(), co_MsqPeekHardwareMessage(), co_MsqSendMessage(), codeview_add_type_struct(), COMMAND_PROTOTYPE(), commit_batch_list(), commit_batch_list_root(), CompBattDisableStatusNotify(), CompBattGetBatteryGranularity(), CompBattGetBatteryInformation(), CompBattRecalculateTag(), ConDrvConsoleProcessCtrlEvent(), ConDrvDeleteScreenBuffer(), ConDrvFlushConsoleInputBuffer(), ConDrvGetConsoleInput(), ConDrvGetConsoleProcessList(), ConDrvReadConsole(), ConioDeleteScreenBuffer(), ConSrvConsoleProcessCtrlEvent(), ConSrvGetConsoleLeaderProcess(), ConSrvGetConsoleProcessList(), ConSrvSetConsoleProcessFocus(), ConSrvTermReadStream(), constant_from_node(), construct_extent_item(), constructor_from_node(), ConvertNtPathToWin32Path(), CopyFIBs(), CountFIBs(), create_snapshot(), CreateFileSystemList(), CreateNTOSInstallationsList(), CreatePartitionList(), CreateRedirectedFile(), crl_from_ptr(), CRYPT_AsnDecodeInhibitMapping(), CRYPT_AsnDecodeMaximum(), CRYPT_AsnDecodeRequireExplicit(), CServiceGroup::CServiceGroup(), CsqPeekNextIrp(), CSR_API(), CsrApiPortInitialize(), CsrDereferenceWait(), CsrDestroyProcess(), CsrLocateThreadByClientId(), CsrLocateThreadInProcess(), CsrLockProcessByClientId(), CsrLockThreadByClientId(), CsrMoveSatisfiedWait(), CsrNotifyWait(), CsrShutdownProcesses(), ctl_from_ptr(), data_reloc_add_tree_edr(), date_from_jsdisp(), DbgDrvBitBlt(), DbgDrvCopyBits(), DbgDrvStretchBlt(), DbgkClearProcessDebugObject(), DbgkpCloseObject(), DbgkpPostFakeModuleMessages(), DbgkpSetProcessDebugObject(), DceEmptyCache(), DceFreeClassDCE(), DceFreeThreadDCE(), DceFreeWindowDCE(), DceGetDceFromDC(), DceReleaseDC(), DceResetActiveDCEs(), ddraw_from_device_parent(), delete_fileref(), DeleteCurrentPartition(), DeleteSymbolicLinkNameFromMemory(), DequeueDeferredClientIrp(), DequeueFreeTransferPacket(), DequeueSidLookup(), deref_from_node(), DestroyDeviceInfo(), DestroyDeviceInfoSet(), DestroyFIBEs(), DestroyFileSystemList(), DestroyGenericList(), DestroyPartitionList(), DestroyTimersForThread(), DestroyTimersForWindow(), device_from_device_parent(), DeviceInstallThread(), DeviceInterruptBop(), DGDeliverData(), DGRemoveIRP(), DIB_16BPP_AlphaBlend(), DIB_XXBPP_AlphaBlend(), DisconnectComplete(), DisconnectTimeoutDpc(), do_create_snapshot(), do_rollback(), do_splits(), do_tree_writes(), do_write2(), do_write_file(), DOMFactory_from_IClassFactory(), DoNotifyPositionEvents(), DosGetDriverNode(), DPLAYX_PrivHeapFree(), DrawFileSystemList(), DrawListEntries(), DrawPartitionList(), DriverIoControl(), drop_chunk(), drop_roots(), DumpEventSourceList(), CUSBRequest::DumpQueueHead(), DumpStartList(), duplicate_extents(), duplicate_fcb(), EfiVmCloseProtocol(), EfiVmOpenProtocol(), EHCI_PollAsyncEndpoint(), elem_from_HTMLDOMNode(), ElfGetLogHandleEntryByHandle(), EmsFree(), enable_caching(), EngCopyBits(), EngLoadImageEx(), EngRealizeBrush(), EngSetPointerShape(), EngUnlockSurface(), EnqueueFreeTransferPacket(), enum_components_Next(), enum_groups_Next(), EnumMonitorsW(), EnumPortsW(), EnumPrintersW(), EnumPrintProcessorDatatypesW(), EnumPrintProcessorsW(), EnumProcessModules(), EthFilterDprIndicateReceiveComplete(), ExBurnMemory(), excise_extents(), ExitThreadCallback(), ExNotifyCallback(), ExpCopyLookasideInformation(), ExpInitializeExecutive(), ExpInitializeKeyedEvent(), ExpInitNls(), ExpLoadBootSymbols(), ExpQueryModuleInformation(), expr_from_node(), ExpTimerApcKernelRoutine(), ExpWorkerThreadEntryPoint(), ExQueryPoolUsage(), Ext2bhReaperThread(), Ext2DeviceControlNormal(), Ext2DropBH(), Ext2FcbReaperThread(), Ext2FirstUnusedMcb(), Ext2FlushFiles(), Ext2InvalidateVolumes(), Ext2IsHandleCountZero(), Ext2McbReaperThread(), Ext2MountVolume(), Ext2PurgeVolume(), Ext2QueryUnusedBH(), Ext2QueryUnusedFcb(), Ext2ShutDown(), ext3_append(), ext3_bread(), extend_file(), ExTimerRundown(), FatAddToWorkque(), FatBufferDirectory(), FatCloseWorker(), FatComputeLfnChecksum(), FatDeferredCleanVolume(), FatFindFcb(), FatFspDispatch(), FatInsertName(), FatQueryBpb(), FatQuickVerifyVcb(), FatSetPositionInfo(), FatSetRenameInfo(), FatSwapVpb(), FatVerifyLookupFatEntry(), Fbt_Dispatch(), fcb_is_inline(), fcb_load_csums(), fcbopen_main(), FDO_HandleResetCyclePort(), FdoLocateChildDevice(), FdoQueryBusRelations(), FFSAllocateMcb(), FFSDeviceControlNormal(), FFSFlushFiles(), FFSInvalidateVolumes(), FFSIsHandleCountZero(), FFSPurgeVolume(), FFSSearchMcbTree(), FFSShutDown(), FileIoOpen(), fill_in_file_stream_information(), fill_in_hard_link_information(), find_chunk_usage(), find_default_subvol(), find_device_from_uuid(), find_file_in_dir(), find_metadata_address_in_chunk(), find_name(), find_new_chunk_address(), find_new_dup_stripes(), find_new_stripe(), find_process(), find_send_dir(), find_thread(), find_tree_end(), FindAdapterByIndex(), FindAdapterContextByName(), FindBestFontFromList(), FindBitmapResource(), FindComSpecInfoByPsp(), FindDeviceInfo(), FindDll(), FindDriverObjectDirectory(), FindFaceNameInList(), FindMatchingCreateItem(), FindModule(), FindPort(), FindPrintMonitor(), FindPrintProcessor(), FindProcessForShutdown(), FindRemoveEventMsg(), FindSidInCache(), FindSystemTimer(), FindTimer(), finish_inode(), finish_removing_device(), first_item(), FlsFree(), FltEnumerateVolumes(), FltpAddMessageWaiter(), FltpGetNextMessageWaiter(), FltUnregisterFilter(), flush_changed_extent(), flush_disk_caches(), flush_extents(), flush_fcb(), flush_fcb_caches(), flush_partial_stripe(), flush_refs(), flush_subvol_fcbs(), FlushConnectQueue(), FlushListenQueue(), FlushReceiveQueue(), FlushSendQueue(), FlushShutdownQueue(), frame_from_IWICMetadataBlockReader(), free_chunks(), free_extent_refs(), free_fcb(), free_roots(), free_tree2(), free_trees(), free_trees_root(), free_write_data_stripes(), FreeBT_DispatchClean(), FreeDictionaryEntry(), FreeFilterInstance(), FreeIPDR(), FreeLogFilterList(), FreeLogList(), FreeNtToWin32PathMappingList(), fsctl_get_xattrs(), fsctl_set_xattr(), FsRtlAcknowledgeOplockBreak(), FsRtlCancelExclusiveIrp(), FsRtlCancelNotify(), FsRtlCancelOplockIIIrp(), FsRtlCancelWaitIrp(), FsRtlCheckNotifyForDelete(), FsRtlDeleteKeyFromTunnelCache(), FsRtlDeleteTunnelCache(), FsRtlEmptyFreePoolList(), FsRtlFastUnlockAll(), FsRtlFastUnlockAllByKey(), FsRtlFastUnlockSingle(), FsRtlIsNotifyOnList(), FsRtlLookupPerFileObjectContext(), FsRtlLookupPerStreamContextInternal(), FsRtlNotifyCompleteIrpList(), FsRtlNotifyFilterReportChange(), FsRtlOpBatchBreakClosePending(), FsRtlOplockBreakToII(), FsRtlOplockBreakToNone(), FsRtlOplockCleanup(), FsRtlPruneTunnelCache(), FsRtlRemovePerFileObjectContext(), FsRtlRemovePerStreamContext(), FsRtlRequestExclusiveOplock(), FsRtlTeardownPerStreamContexts(), FsRtlUninitializeFileLock(), FsRtlUninitializeOplock(), FsRtlWorkerThread(), ftGdiGlyphCacheGet(), ftGdiGlyphCacheSet(), function_from_jsdisp(), GdiPoolAllocate(), GdiPoolDestroy(), GdiPoolFree(), CPortPinWaveCyclic::GeneratePositionEvents(), get_changed_extent_item(), get_chunk_from_address(), get_devices(), get_emf_physdev(), get_emfdev(), get_first_item(), get_inode_info(), get_nulldrv_dc(), get_path_physdev(), get_subvol_path(), get_superblock_size(), get_tree_new_address(), get_usage(), GetConsoleRecordBySessionId(), GetDialogListEntry(), GetDiskByBiosNumber(), GetDiskByNumber(), GetDiskBySCSI(), GetDiskBySignature(), GetEventSourceByName(), GetFileSystemByName(), GetFilterInstanceEntry(), GetFirstListEntry(), GetFontFamilyInfoForList(), GetFontFamilyInfoForSubstitutes(), GetListEntry(), GetLogicalPage(), GetLogicalPartitionCount(), GetModuleFileNameW(), GetNextDosSesId(), GetNextJobTimeout(), GetNextListEntry(), GetNextPartition(), GetNextUncheckedPartition(), GetNextUnformattedPartition(), GetNextUnpartitionedEntry(), GetPartition(), GetPrevPartition(), GetPrevUnpartitionedEntry(), GetPrimaryPartitionCount(), GetPrintProcessorDirectoryW(), GetProvider(), GetReassemblyInfo(), GetVersionSendHandler(), glsl_blitter_blit(), glsl_blitter_destroy(), GspQuery(), GuiApplyUserSettings(), GuiConsoleShowConsoleProperties(), HaliDereferenceBusHandler(), HaliFindBusAddressTranslation(), HalInitializeBios(), HaliReferenceBusHandler(), HalpAcpiCacheTable(), HalpAcpiGetCachedTable(), HalpAllocPhysicalMemory(), HalpContextToBusHandler(), HalpInitPhase0(), HalpSetupAcpiPhase0(), handle_batch_collision(), handle_gdb_query(), HandlePageFault(), HandlePhysicalConnection(), has_open_children(), HasDriveLetter(), HidClass_Close(), HidClass_GetIrp(), HistoryCurrentBuffer(), HistoryDeleteBuffers(), HistoryFindBuffer(), HTMLAttributeCollection_from_DispatchEx(), HTMLTitleElement_from_HTMLDOMNode(), IDirectSound8_fnAddRef(), IDirectSound8_fnCompact(), IDirectSound8_fnCreateSoundBuffer(), IDirectSound8_fnGetCaps(), IDirectSound8_fnGetSpeakerConfig(), IDirectSound8_fnInitialize(), IDirectSound8_fnQueryInterface(), IDirectSound8_fnRelease(), IDirectSound8_fnSetCooperativeLevel(), IDirectSound8_fnVerifyCertification(), IDirectSoundCaptureBufferImpl_AddRef(), IDirectSoundCaptureBufferImpl_GetCaps(), IDirectSoundCaptureBufferImpl_GetCurrentPosition(), IDirectSoundCaptureBufferImpl_GetFormat(), IDirectSoundCaptureBufferImpl_GetStatus(), IDirectSoundCaptureBufferImpl_Lock(), IDirectSoundCaptureBufferImpl_QueryInterface(), IDirectSoundCaptureBufferImpl_Release(), IDirectSoundCaptureBufferImpl_Start(), IDirectSoundCaptureBufferImpl_Stop(), IDirectSoundNotify_fnAddRef(), IDirectSoundNotify_fnQueryInterface(), IDirectSoundNotify_fnRelease(), IDirectSoundNotify_fnSetNotificationPositions(), if_from_node(), IIndirectedUnknown_fnAddRef(), IIndirectedUnknown_fnQueryInterface(), IIndirectedUnknown_fnRelease(), IInterruptServiceRoutine(), IKsAllocator_fnAddRef(), IKsAllocator_fnAllocateFrame(), IKsAllocator_fnClose(), IKsAllocator_fnDeviceIoControl(), IKsAllocator_fnFreeFrame(), IKsAllocator_fnQueryInterface(), IKsAllocator_fnRelease(), IKsControl_fnAddRef(), IKsControl_fnKsEvent(), IKsControl_fnKsMethod(), IKsControl_fnKsProperty(), IKsControl_fnQueryInterface(), IKsControl_fnRelease(), IKsDevice_fnAcquireDevice(), IKsDevice_fnAddRef(), IKsDevice_fnArbitrateAdapterChannel(), IKsDevice_fnGetAdapterObject(), IKsDevice_fnGetStruct(), IKsDevice_fnInitializeObjectBag(), IKsDevice_fnQueryInterface(), IKsDevice_fnRelease(), IKsDevice_fnReleaseDevice(), IKsFilter_AddPin(), IKsFilter_DispatchClose(), IKsFilter_DispatchDeviceIoControl(), IKsFilter_fnAddProcessPin(), IKsFilter_fnAddRef(), IKsFilter_fnGetProcessDispatch(), IKsFilter_fnGetStruct(), IKsFilter_fnQueryInterface(), IKsFilter_fnRelease(), IKsFilter_fnRemoveProcessPin(), IKsFilter_RemovePin(), IKsFilterFactory_Create(), IKsFilterFactory_fnAddRef(), IKsFilterFactory_fnGetStruct(), IKsFilterFactory_fnInitialize(), IKsFilterFactory_fnQueryInterface(), IKsFilterFactory_fnRelease(), IKsFilterFactory_fnSetDeviceClassesState(), IKsFilterFactory_ItemFreeCb(), IKsPin_Close(), IKsPin_DispatchCreateClock(), IKsPin_DispatchDeviceIoControl(), IKsPin_fnAddRef(), IKsPin_fnQueryInterface(), IKsPin_fnRelease(), IKsPin_PinAllocatorFramingPropertyHandler(), IKsPin_PinDataFormatPropertyHandler(), IKsPin_PinMasterClock(), IKsPin_PinStatePropertyHandler(), IKsProcessingObject_fnAddRef(), IKsProcessingObject_fnGetAndGate(), IKsProcessingObject_fnProcess(), IKsProcessingObject_fnProcessingObjectWork(), IKsProcessingObject_fnQueryInterface(), IKsProcessingObject_fnRelease(), IKsProcessingObject_fnReset(), IKsReferenceClock_fnAddRef(), IKsReferenceClock_fnGetCorrelatedPhysicalTime(), IKsReferenceClock_fnGetCorrelatedTime(), IKsReferenceClock_fnGetPhysicalTime(), IKsReferenceClock_fnGetResolution(), IKsReferenceClock_fnGetState(), IKsReferenceClock_fnGetTime(), IKsReferenceClock_fnQueryInterface(), IKsReferenceClock_fnRelease(), ImageUnload(), impl_BaseInputPin_from_BasePin(), impl_BaseInputPin_from_IPin(), impl_BaseOutputPin_from_BasePin(), impl_BaseOutputPin_from_IPin(), impl_BasePin_from_IPin(), impl_from_AudioMediaStream_IAMMediaStream(), impl_from_AudioMediaStreamInputPin_IPin(), impl_from_BaseControlVideo(), impl_from_BaseFilter(), impl_from_BaseOutputPin(), impl_from_BasePin(), impl_from_BaseRenderer(), impl_from_BaseWindow(), impl_from_BSCallback(), impl_from_Client(), impl_from_Client_EnumVARIANT(), impl_from_Client_OleWindow(), impl_from_delegating(), impl_from_DirectDrawMediaStream_IAMMediaStream(), impl_from_DirectDrawMediaStreamInputPin_IPin(), impl_from_DispatchEx(), impl_from_DocHost(), impl_from_HTMLDOMNode(), impl_from_IACList(), impl_from_IActiveIMMApp(), impl_from_IActiveIMMMessagePumpOwner(), impl_from_IActiveScript(), impl_from_IActiveScriptDebug(), impl_from_IActiveScriptParse(), impl_from_IActiveScriptParseProcedure2(), impl_from_IActiveScriptProperty(), impl_from_IActiveScriptSite(), impl_from_IActiveScriptSiteDebug(), impl_from_IActiveScriptSiteInterruptPoll(), impl_from_IActiveScriptSiteUIControl(), impl_from_IActiveScriptSiteWindow(), impl_from_IAdviseSink(), impl_from_IAdviseSinkEx(), impl_from_IAMCertifiedOutputProtection(), impl_from_IAMDirectSound(), impl_from_IAMFilterData(), impl_from_IAMFilterMiscFlags(), impl_from_IAMMultiMediaStream(), impl_from_IAMStreamSelect(), impl_from_IAMTimeline(), impl_from_IAMTimelineGroup(), impl_from_IAMTimelineObj(), impl_from_IAssemblyCache(), impl_from_IAssemblyCacheItem(), impl_from_IAssemblyEnum(), impl_from_IAssemblyName(), impl_from_IAsyncReader(), impl_from_IAudioData(), impl_from_IAudioEndpointVolumeEx(), impl_from_IAudioMediaStream(), impl_from_IAudioStreamSample(), impl_from_IAuthenticate(), impl_from_IAutomaticUpdates(), impl_from_IAVIEditStream(), impl_from_IAVIFile(), impl_from_IAVIStream(), impl_from_IBackgroundCopyError(), impl_from_IBackgroundCopyFile2(), impl_from_IBackgroundCopyJob3(), impl_from_IBackgroundCopyJobHttpOptions(), impl_from_IBaseFilter(), impl_from_IBasicAudio(), impl_from_IBasicVideo(), impl_from_IBasicVideo2(), impl_from_IBindCtx(), impl_from_IBindHost(), impl_from_IBinding(), impl_from_IBindStatusCallback(), impl_from_IBindStatusCallbackEx(), impl_from_IBrowserService(), impl_from_ICifComponent(), impl_from_ICiffile(), impl_from_ICifGroup(), impl_from_IClassFactory(), impl_from_IClientSecurity(), impl_from_ICLRRuntimeHost(), impl_from_ICLRRuntimeInfo(), impl_from_ICommDlgBrowser(), impl_from_ICommDlgBrowser3(), impl_from_IComThreadingInfo(), impl_from_IConnectionPoint(), impl_from_IConnectionPointContainer(), impl_from_IContextCallback(), impl_from_ICorDebug(), impl_from_ICorDebugProcess(), impl_from_ICorDebugProcessEnum(), impl_from_ICorRuntimeHost(), impl_from_ICreateErrorInfo(), impl_from_ICreateTypeLib2(), impl_from_ICustomDoc(), impl_from_ID3D11ShaderReflection(), impl_from_ID3D11ShaderReflectionConstantBuffer(), impl_from_ID3D11ShaderReflectionType(), impl_from_ID3D11ShaderReflectionVariable(), impl_from_ID3DBlob(), impl_from_ID3DXAnimationController(), impl_from_ID3DXBuffer(), impl_from_ID3DXConstantTable(), impl_from_ID3DXEffect(), impl_from_ID3DXEffect25(), impl_from_ID3DXEffectCompiler(), impl_from_ID3DXEffectPool(), impl_from_ID3DXFile(), impl_from_ID3DXFileData(), impl_from_ID3DXFileEnumObject(), impl_from_ID3DXFont(), impl_from_ID3DXLine(), impl_from_ID3DXMatrixStack(), impl_from_ID3DXMesh(), impl_from_ID3DXRenderToEnvMap(), impl_from_ID3DXRenderToSurface(), impl_from_ID3DXSkinInfo(), impl_from_ID3DXSprite(), impl_from_ID3DXTextureShader(), impl_from_IDataAdviseHolder(), impl_from_IDataObject(), impl_from_IDictionary(), impl_from_IDirect3D(), impl_from_IDirect3D2(), impl_from_IDirect3D3(), impl_from_IDirect3D7(), impl_from_IDirect3D8(), impl_from_IDirect3D9Ex(), impl_from_IDirect3DCubeTexture8(), impl_from_IDirect3DCubeTexture9(), impl_from_IDirect3DDevice(), impl_from_IDirect3DDevice2(), impl_from_IDirect3DDevice3(), impl_from_IDirect3DDevice7(), impl_from_IDirect3DDevice8(), impl_from_IDirect3DDevice9Ex(), impl_from_IDirect3DExecuteBuffer(), impl_from_IDirect3DIndexBuffer8(), impl_from_IDirect3DIndexBuffer9(), impl_from_IDirect3DLight(), impl_from_IDirect3DMaterial(), impl_from_IDirect3DMaterial2(), impl_from_IDirect3DMaterial3(), impl_from_IDirect3DPixelShader9(), impl_from_IDirect3DQuery9(), impl_from_IDirect3DRM(), impl_from_IDirect3DRM2(), impl_from_IDirect3DRM3(), impl_from_IDirect3DRMAnimation(), impl_from_IDirect3DRMAnimation2(), impl_from_IDirect3DRMDevice(), impl_from_IDirect3DRMDevice2(), impl_from_IDirect3DRMDevice3(), impl_from_IDirect3DRMFace(), impl_from_IDirect3DRMFace2(), impl_from_IDirect3DRMFrame(), impl_from_IDirect3DRMFrame2(), impl_from_IDirect3DRMFrame3(), impl_from_IDirect3DRMFrameArray(), impl_from_IDirect3DRMLight(), impl_from_IDirect3DRMLightArray(), impl_from_IDirect3DRMMaterial2(), impl_from_IDirect3DRMMesh(), impl_from_IDirect3DRMMeshBuilder2(), impl_from_IDirect3DRMMeshBuilder3(), impl_from_IDirect3DRMTexture(), impl_from_IDirect3DRMTexture2(), impl_from_IDirect3DRMTexture3(), impl_from_IDirect3DRMViewport(), impl_from_IDirect3DRMViewport2(), impl_from_IDirect3DRMVisualArray(), impl_from_IDirect3DRMWinDevice(), impl_from_IDirect3DRMWrap(), impl_from_IDirect3DStateBlock9(), impl_from_IDirect3DSurface8(), impl_from_IDirect3DSurface9(), impl_from_IDirect3DSwapChain8(), impl_from_IDirect3DSwapChain9Ex(), impl_from_IDirect3DTexture(), impl_from_IDirect3DTexture2(), impl_from_IDirect3DTexture8(), impl_from_IDirect3DTexture9(), impl_from_IDirect3DVertexBuffer7(), impl_from_IDirect3DVertexBuffer8(), impl_from_IDirect3DVertexBuffer9(), impl_from_IDirect3DVertexDeclaration9(), impl_from_IDirect3DVertexShader9(), impl_from_IDirect3DViewport3(), impl_from_IDirect3DVolume8(), impl_from_IDirect3DVolume9(), impl_from_IDirect3DVolumeTexture8(), impl_from_IDirect3DVolumeTexture9(), impl_from_IDirectDraw(), impl_from_IDirectDraw2(), impl_from_IDirectDraw4(), impl_from_IDirectDraw7(), impl_from_IDirectDrawClipper(), impl_from_IDirectDrawGammaControl(), impl_from_IDirectDrawMediaStream(), impl_from_IDirectDrawPalette(), impl_from_IDirectDrawStreamSample(), impl_from_IDirectDrawSurface(), impl_from_IDirectDrawSurface2(), impl_from_IDirectDrawSurface3(), impl_from_IDirectDrawSurface4(), impl_from_IDirectDrawSurface7(), impl_from_IDirectInput7A(), impl_from_IDirectInput7W(), impl_from_IDirectInput8A(), impl_from_IDirectInput8W(), impl_from_IDirectInputDevice8A(), impl_from_IDirectInputDevice8W(), impl_from_IDirectInputJoyConfig8(), impl_from_IDirectMusic8(), impl_from_IDirectMusicBuffer(), impl_from_IDirectMusicCollection(), impl_from_IDirectMusicDownload(), impl_from_IDirectMusicDownloadedInstrument(), impl_from_IDirectMusicInstrument(), impl_from_IDirectMusicObject(), impl_from_IDirectMusicPort(), impl_from_IDirectMusicThru(), impl_from_IDirectPlay(), impl_from_IDirectPlay2(), impl_from_IDirectPlay2A(), impl_from_IDirectPlay3(), impl_from_IDirectPlay3A(), impl_from_IDirectPlay4(), impl_from_IDirectPlay4A(), impl_from_IDirectPlayLobby(), impl_from_IDirectPlayLobby2(), impl_from_IDirectPlayLobby2A(), impl_from_IDirectPlayLobby3(), impl_from_IDirectPlayLobby3A(), impl_from_IDirectPlayLobbyA(), impl_from_IDirectPlaySP(), impl_from_IDirectSoundBuffer(), impl_from_IDirectSoundBuffer8(), impl_from_IDirectWriterLock(), impl_from_IDirectXFile(), impl_from_IDirectXFileBinary(), impl_from_IDirectXFileData(), impl_from_IDirectXFileDataReference(), impl_from_IDirectXFileEnumObject(), impl_from_IDirectXFileSaveObject(), impl_from_IDispatch(), impl_from_IDispatchEx(), impl_from_IDocHostUIHandler(), impl_from_IDocHostUIHandler2(), impl_from_IDocObjectService(), impl_from_IDPLobbySP(), impl_from_IDrive(), impl_from_IDriveCollection(), impl_from_IDropTarget(), impl_from_IDsObjectPicker(), impl_from_IDxDiagContainer(), impl_from_IDxDiagProvider(), impl_from_IEnumBackgroundCopyFiles(), impl_from_IEnumBackgroundCopyJobs(), impl_from_IEnumCATEGORYINFO(), impl_from_IEnumCATID(), impl_from_IEnumCifComponents(), impl_from_IEnumCifGroups(), impl_from_IEnumCLSID(), impl_from_IEnumCodePage(), impl_from_IEnumConnectionPoints(), impl_from_IEnumConnections(), impl_from_IEnumDMO(), impl_from_IEnumFilters(), impl_from_IEnumFORMATETC(), impl_from_IEnumGUID(), impl_from_IEnumMediaTypes(), impl_from_IEnumMoniker(), impl_from_IEnumOLEVERB(), impl_from_IEnumPins(), impl_from_IEnumRegFilters(), impl_from_IEnumRfc1766(), impl_from_IEnumScript(), impl_from_IEnumSTATDATA(), impl_from_IEnumSTATSTG(), impl_from_IEnumString(), impl_from_IEnumTfContexts(), impl_from_IEnumTfDocumentMgrs(), impl_from_IEnumTfInputProcessorProfiles(), impl_from_IEnumTfLanguageProfiles(), impl_from_IEnumUnknown(), impl_from_IEnumVARIANT(), impl_from_IEnumWbemClassObject(), impl_from_IEnumWorkItems(), impl_from_IErrorInfo(), impl_from_IExplorerBrowserEvents(), impl_from_IExplorerPaneVisibility(), impl_from_IExtensionServices(), impl_from_IExternalConnection(), impl_from_IFile(), impl_from_IFileCollection(), impl_from_IFileDialog2(), impl_from_IFileDialogCustomize(), impl_from_IFileDialogEvents(), impl_from_IFileOpenDialog(), impl_from_IFileSaveDialog(), impl_from_IFileSourceFilter(), impl_from_IFileSystem3(), impl_from_IFilterGraph2(), impl_from_IFilterMapper(), impl_from_IFilterMapper3(), impl_from_IFolder(), impl_from_IFolderCollection(), impl_from_IFont(), impl_from_IGetFrame(), impl_from_IGlobalInterfaceTable(), impl_from_IGlobalOptions(), impl_from_IGraphConfig(), impl_from_IGraphVersion(), impl_from_IHlink(), impl_from_IHlinkBrowseContext(), impl_from_IHlinkFrame(), impl_from_IHlinkTarget(), impl_from_IHTMLAnchorElement(), impl_from_IHTMLAreaElement(), impl_from_IHTMLAttributeCollection(), impl_from_IHTMLAttributeCollection2(), impl_from_IHTMLAttributeCollection3(), impl_from_IHTMLBodyElement(), impl_from_IHTMLButtonElement(), impl_from_IHTMLCommentElement(), impl_from_IHTMLCurrentStyle(), impl_from_IHTMLCurrentStyle2(), impl_from_IHTMLCurrentStyle3(), impl_from_IHTMLCurrentStyle4(), impl_from_IHTMLDocument2(), impl_from_IHTMLDocument3(), impl_from_IHTMLDocument4(), impl_from_IHTMLDocument5(), impl_from_IHTMLDocument6(), impl_from_IHTMLDocument7(), impl_from_IHTMLDOMAttribute(), impl_from_IHTMLDOMAttribute2(), impl_from_IHTMLDOMChildrenCollection(), impl_from_IHTMLDOMImplementation(), impl_from_IHTMLDOMNode(), impl_from_IHTMLDOMNode2(), impl_from_IHTMLDOMTextNode(), impl_from_IHTMLDOMTextNode2(), impl_from_IHTMLEditServices(), impl_from_IHTMLElement(), impl_from_IHTMLElement2(), impl_from_IHTMLElement3(), impl_from_IHTMLElement4(), impl_from_IHTMLElementCollection(), impl_from_IHTMLEmbedElement(), impl_from_IHTMLEventObj(), impl_from_IHTMLFiltersCollection(), impl_from_IHTMLFormElement(), impl_from_IHTMLFrameBase(), impl_from_IHTMLFrameBase2(), impl_from_IHTMLFrameElement3(), impl_from_IHTMLGenericElement(), impl_from_IHTMLHeadElement(), impl_from_IHTMLIFrameElement(), impl_from_IHTMLIFrameElement2(), impl_from_IHTMLIFrameElement3(), impl_from_IHTMLImageElementFactory(), impl_from_IHTMLImgElement(), impl_from_IHTMLInputElement(), impl_from_IHTMLInputTextElement(), impl_from_IHTMLLabelElement(), impl_from_IHTMLLinkElement(), impl_from_IHtmlLoadOptions(), impl_from_IHTMLLocation(), impl_from_IHTMLMetaElement(), impl_from_IHTMLMimeTypesCollection(), impl_from_IHTMLObjectElement(), impl_from_IHTMLObjectElement2(), impl_from_IHTMLOptionElement(), impl_from_IHTMLOptionElementFactory(), impl_from_IHTMLPluginsCollection(), impl_from_IHTMLPrivateWindow(), impl_from_IHTMLRect(), impl_from_IHTMLScreen(), impl_from_IHTMLScriptElement(), impl_from_IHTMLSelectElement(), impl_from_IHTMLSelectionObject(), impl_from_IHTMLSelectionObject2(), impl_from_IHTMLStorage(), impl_from_IHTMLStyle(), impl_from_IHTMLStyle2(), impl_from_IHTMLStyle3(), impl_from_IHTMLStyle4(), impl_from_IHTMLStyle5(), impl_from_IHTMLStyle6(), impl_from_IHTMLStyleElement(), impl_from_IHTMLStyleSheet(), impl_from_IHTMLStyleSheetRulesCollection(), impl_from_IHTMLStyleSheetsCollection(), impl_from_IHTMLTable(), impl_from_IHTMLTable2(), impl_from_IHTMLTable3(), impl_from_IHTMLTableCell(), impl_from_IHTMLTableRow(), impl_from_IHTMLTextAreaElement(), impl_from_IHTMLTextContainer(), impl_from_IHTMLTitleElement(), impl_from_IHTMLTxtRange(), impl_from_IHTMLWindow2(), impl_from_IHTMLWindow3(), impl_from_IHTMLWindow4(), impl_from_IHTMLWindow5(), impl_from_IHTMLWindow6(), impl_from_IHTMLXMLHttpRequest(), impl_from_IHTMLXMLHttpRequestFactory(), impl_from_IHttpNegotiate(), impl_from_IHttpNegotiate2(), impl_from_IHttpSecurity(), impl_from_IImageList2(), impl_from_IInstallEngine2(), impl_from_IInstallEngineTiming(), impl_from_IInternetBindInfo(), impl_from_IInternetExplorerManager(), impl_from_IInternetHostSecurityManager(), impl_from_IInternetPriority(), impl_from_IInternetProtocol(), impl_from_IInternetProtocolEx(), impl_from_IInternetProtocolInfo(), impl_from_IInternetProtocolSink(), impl_from_IInternetProtocolSinkHandler(), impl_from_IInternetSecurityManagerEx2(), impl_from_IInternetZoneManagerEx2(), impl_from_IITStorage(), impl_from_IKindaEnumWidget(), impl_from_IKsControl(), impl_from_IKsPropertySet(), impl_from_ILockBytes(), impl_from_IMarshal(), impl_from_IMatch(), impl_from_IMatch2(), impl_from_IMatchCollection(), impl_from_IMatchCollection2(), impl_from_IMatchCollectionEnum(), impl_from_IMediaControl(), impl_from_IMediaDet(), impl_from_IMediaEventEx(), impl_from_IMediaEventSink(), impl_from_IMediaFilter(), impl_from_IMediaPosition(), impl_from_IMediaSample2(), impl_from_IMediaSeeking(), impl_from_IMediaStreamFilter(), impl_from_IMemAllocator(), impl_from_IMemInputPin(), impl_from_IMetaDataDispenserEx(), impl_from_IMILBitmapScaler(), impl_from_IMILBitmapSource(), impl_from_IMILUnknown1(), impl_from_IMILUnknown2(), impl_from_IMimeBody(), impl_from_IMimeInternational(), impl_from_IMimeMessage(), impl_from_IMimePropertySchema(), impl_from_IMimeSecurity(), impl_from_IMLangConvertCharset(), impl_from_IMLangFontLink(), impl_from_IMLangFontLink2(), impl_from_IMLangLineBreakConsole(), impl_from_IMMDevice(), impl_from_IMMDeviceCollection(), impl_from_IMMDeviceEnumerator(), impl_from_IMMEndpoint(), impl_from_IMoniker(), impl_from_IMonikerProp(), impl_from_IMultiLanguage(), impl_from_IMultiLanguage3(), impl_from_IMultiQI(), impl_from_IMXAttributes(), impl_from_IMXNamespaceManager(), impl_from_IMXWriter(), impl_from_INetFwAuthorizedApplication(), impl_from_INetFwAuthorizedApplications(), impl_from_INetFwMgr(), impl_from_INetFwOpenPort(), impl_from_INetFwOpenPorts(), impl_from_INetFwPolicy(), impl_from_INetFwPolicy2(), impl_from_INetFwProfile(), impl_from_INetFwRules(), impl_from_INetFwService(), impl_from_INetFwServices(), impl_from_INewWindowManager(), impl_from_inner_IUnknown(), impl_from_IObjContext(), impl_from_IObjectIdentity(), impl_from_IObjectSafety(), impl_from_IObjectWithSite(), impl_from_IOleAdviseHolder(), impl_from_IOleCache2(), impl_from_IOleCacheControl(), impl_from_IOleClientSite(), impl_from_IOleCommandTarget(), impl_from_IOleContainer(), impl_from_IOleControl(), impl_from_IOleControlSite(), impl_from_IOleDocument(), impl_from_IOleDocumentSite(), impl_from_IOleDocumentView(), impl_from_IOleInPlaceActiveObject(), impl_from_IOleInPlaceFrame(), impl_from_IOleInPlaceObject(), impl_from_IOleInPlaceObjectWindowless(), impl_from_IOleInPlaceSite(), impl_from_IOleInPlaceSiteEx(), impl_from_IOleInPlaceSiteWindowless(), impl_from_IOleInPlaceUIWindow(), impl_from_IOleObject(), impl_from_IOleUndoManager(), impl_from_IOleWindow(), impl_from_IOmHistory(), impl_from_IOmNavigator(), impl_from_IParseDisplayName(), impl_from_IPersistFile(), impl_from_IPersistHistory(), impl_from_IPersistMemory(), impl_from_IPersistMoniker(), impl_from_IPersistPropertyBag(), impl_from_IPersistStorage(), impl_from_IPersistStream(), impl_from_IPersistStreamInit(), impl_from_IPicture(), impl_from_IPin(), impl_from_IProfferService(), impl_from_IPropData(), impl_from_IPropertyBag(), impl_from_IPropertyBag2(), impl_from_IPropertyNotifySink(), impl_from_IPropertyPageSite(), impl_from_IPropertySetStorage(), impl_from_IPropertyStorage(), impl_from_IPropertyStore(), impl_from_IPropertyStoreCache(), impl_from_IProvideClassInfo(), impl_from_IProvideClassInfo2(), impl_from_IProvideMultipleClassInfo(), impl_from_IPStore(), impl_from_IQualityControl(), impl_from_IRecordInfo(), impl_from_IReferenceClock(), impl_from_IRegExp(), impl_from_IRegExp2(), impl_from_IRegistrar(), impl_from_IRemUnknown(), impl_from_IResourceManager(), impl_from_IResourceManagerFactory2(), impl_from_IRichEditOle(), impl_from_IROTData(), impl_from_IRpcChannelBuffer(), impl_from_IRpcProxyBuffer(), impl_from_IRpcStubBuffer(), impl_from_IRunnableObject(), impl_from_IRunningObjectTable(), impl_from_ISampleGrabber(), impl_from_ISAXAttributes(), impl_from_ISAXContentHandler(), impl_from_ISAXDeclHandler(), impl_from_ISAXDTDHandler(), impl_from_ISAXErrorHandler(), impl_from_ISAXLexicalHandler(), impl_from_ISeekingPassThru(), impl_from_IServiceProvider(), impl_from_IShellBrowser(), impl_from_IShellUIHelper2(), impl_from_IStillImageW(), impl_from_IStorage(), impl_from_IStream(), impl_from_ISubMatches(), impl_from_ISupportErrorInfo(), impl_from_ISWbemLocator(), impl_from_ISWbemObject(), impl_from_ISWbemObjectSet(), impl_from_ISWbemProperty(), impl_from_ISWbemPropertySet(), impl_from_ISWbemSecurity(), impl_from_ISWbemServices(), impl_from_ISynchronize(), impl_from_ISynchronizeHandle(), impl_from_ISystemInformation(), impl_from_ITargetContainer(), impl_from_ITargetFrame(), impl_from_ITargetFrame2(), impl_from_ITargetFramePriv2(), impl_from_ITask(), impl_from_ITaskScheduler(), impl_from_ITaskTrigger(), impl_from_ITextDocument(), impl_from_ITextFont(), impl_from_ITextHost(), impl_from_ITextPara(), impl_from_ITextRange(), impl_from_ITextSelection(), impl_from_ITextServices(), impl_from_ITextStoreACP(), impl_from_ITextStoreACPServices(), impl_from_ITextStoreACPSink(), impl_from_ITextStream(), impl_from_ITfCategoryMgr(), impl_from_ITfClientId(), impl_from_ITfCompartment(), impl_from_ITfCompartmentMgr(), impl_from_ITfContext(), impl_from_ITfDisplayAttributeMgr(), impl_from_ITfDocumentMgr(), impl_from_ITfEditSession(), impl_from_ITfInputProcessorProfileMgr(), impl_from_ITfInputProcessorProfiles(), impl_from_ITfInsertAtSelection(), impl_from_ITfKeyEventSink(), impl_from_ITfKeystrokeMgr(), impl_from_ITfLangBarMgr(), impl_from_ITfMessagePump(), impl_from_ITfRange(), impl_from_ITfSource(), impl_from_ITfSourceSingle(), impl_from_ITfTextEditSink(), impl_from_ITfTextInputProcessor(), impl_from_ITfThreadMgrEventSink(), impl_from_ITfThreadMgrEx(), impl_from_ITfUIElementMgr(), impl_from_ITransaction(), impl_from_ITransactionDispenser(), impl_from_ITransactionImport(), impl_from_ITransactionImportWhereabouts(), impl_from_ITransactionOptions(), impl_from_ITravelLogClient(), impl_from_ITypeComp(), impl_from_ITypeInfo2(), impl_from_ITypeLib2(), impl_from_IUniformResourceLocatorA(), impl_from_IUniformResourceLocatorW(), impl_from_IUnknown(), impl_from_IUnknown_inner(), impl_from_IUpdateDownloader(), impl_from_IUpdateInstaller(), impl_from_IUpdateSearcher(), impl_from_IUpdateSession(), impl_from_IUri(), impl_from_IUriBuilder(), impl_from_IUriBuilderFactory(), impl_from_IUriContainer(), impl_from_IVariantChangeType(), impl_from_IVBMXNamespaceManager(), impl_from_IVBSAXAttributes(), impl_from_IVBSAXContentHandler(), impl_from_IVBSAXDeclHandler(), impl_from_IVBSAXDTDHandler(), impl_from_IVBSAXErrorHandler(), impl_from_IVBSAXLexicalHandler(), impl_from_IVideoWindow(), impl_from_IViewObject2(), impl_from_IViewObjectEx(), impl_from_IVMRFilterConfig(), impl_from_IVMRFilterConfig9(), impl_from_IVMRImagePresenter9(), impl_from_IVMRMonitorConfig(), impl_from_IVMRMonitorConfig9(), impl_from_IVMRSurfaceAllocatorEx9(), impl_from_IVMRSurfaceAllocatorNotify(), impl_from_IVMRSurfaceAllocatorNotify9(), impl_from_IVMRWindowlessControl(), impl_from_IVMRWindowlessControl9(), impl_from_IWbemClassObject(), impl_from_IWbemLocator(), impl_from_IWbemPath(), impl_from_IWbemPathKeyList(), impl_from_IWbemQualifierSet(), impl_from_IWbemServices(), impl_from_IWbemStatusCodeText(), impl_from_IWebBrowser2(), impl_from_IWebBrowserPriv2IE9(), impl_from_IWICBitmap(), impl_from_IWICBitmapClipper(), impl_from_IWICBitmapDecoder(), impl_from_IWICBitmapDecoderInfo(), impl_from_IWICBitmapEncoder(), impl_from_IWICBitmapEncoderInfo(), impl_from_IWICBitmapFlipRotator(), impl_from_IWICBitmapFrameDecode(), impl_from_IWICBitmapFrameEncode(), impl_from_IWICBitmapLock(), impl_from_IWICBitmapScaler(), impl_from_IWICBitmapSource(), impl_from_IWICColorContext(), impl_from_IWICColorTransform(), impl_from_IWICComponentFactory(), impl_from_IWICEnumMetadataItem(), impl_from_IWICFormatConverter(), impl_from_IWICFormatConverterInfo(), impl_from_IWICMetadataBlockReader(), impl_from_IWICMetadataQueryReader(), impl_from_IWICMetadataReaderInfo(), impl_from_IWICMetadataWriter(), impl_from_IWICPalette(), impl_from_IWICPersistStream(), impl_from_IWICPixelFormatInfo2(), impl_from_IWICStream(), impl_from_IWidget(), impl_from_IWindowForBindingUI(), impl_from_IWineMsiRemoteCustomAction(), impl_from_IWineMsiRemoteDatabase(), impl_from_IWineMsiRemotePackage(), impl_from_IWinHttpRequest(), impl_from_IWinInetHttpInfo(), impl_from_IWMHeaderInfo3(), impl_from_IWMLanguageList(), impl_from_IWMPacketSize2(), impl_from_IWMProfile3(), impl_from_IWMProfileManager(), impl_from_IWMReader(), impl_from_IWMReaderAccelerator(), impl_from_IWMReaderAdvanced6(), impl_from_IWMReaderNetworkConfig2(), impl_from_IWMReaderPlaylistBurn(), impl_from_IWMReaderStreamClock(), impl_from_IWMReaderTimecode(), impl_from_IWMReaderTypeNegotiation(), impl_from_IWMWriter(), impl_from_IWMWriterAdvanced3(), impl_from_IWshCollection(), impl_from_IWshEnvironment(), impl_from_IWshExec(), impl_from_IWshShortcut(), impl_from_IXMLDOMParseError2(), impl_from_IXMLParser(), impl_from_IXmlReader(), impl_from_IXmlReaderInput(), impl_from_IXmlWriter(), impl_from_IXmlWriterOutput(), impl_from_IXSLProcessor(), impl_from_IXSLTemplate(), impl_from_nsIAsyncVerifyRedirectCallback(), impl_from_nsIContextMenuListener(), impl_from_nsIDocumentObserver(), impl_from_nsIDOMEventListener(), impl_from_nsIEmbeddingSiteWindow(), impl_from_nsIFactory(), impl_from_nsIFileURL(), impl_from_nsIHttpChannel(), impl_from_nsIHttpChannelInternal(), impl_from_nsIInputStream(), impl_from_nsIInterfaceRequestor(), impl_from_nsIProtocolHandler(), impl_from_nsIRunnable(), impl_from_nsISimpleEnumerator(), impl_from_nsIStandardURL(), impl_from_nsISupportsWeakReference(), impl_from_nsITooltipListener(), impl_from_nsIUploadChannel(), impl_from_nsIURIContentListener(), impl_from_nsIWeakReference(), impl_from_nsIWebBrowserChrome(), impl_from_Protocol(), impl_from_proxy_obj(), impl_from_StdMarshal(), impl_from_SynthPortImpl_IDirectMusicPort(), impl_from_SynthPortImpl_IDirectMusicPortDownload(), impl_from_SynthPortImpl_IDirectMusicThru(), impl_from_TransformFilter(), impl_from_Window(), impl_from_Window_EnumVARIANT(), impl_from_Window_OleWindow(), impl_PullPin_from_IPin(), inf_next_section(), inf_section_next_value(), info_impl_from_ICreateTypeInfo2(), info_impl_from_ITypeComp(), IniCleanup(), IniFreeSection(), IniGetSettingByNumber(), IniOpenSection(), IniReadSettingByName(), InitBadBlocks(), InitExeName(), InitGenericComboList(), InitGenericListView(), InitializePortList(), anonymous_namespace{mstscax.cpp}::CoClass::InnerToOuter(), SEALED_::InnerToOuter(), INonDelegatedUnknown_fnAddRef(), INonDelegatedUnknown_fnQueryInterface(), INonDelegatedUnknown_fnRelease(), insert_cache_extent(), insert_chunk_fragmented(), insert_dir_child_into_hash_lists(), insert_extent(), insert_prealloc_extent(), insert_tree_item(), insert_tree_item_batch(), InsertDiskRegion(), InsertInBootDriverList(), InsertJobIntoStartList(), IntCleanupThreadCallbacks(), IntDeleteAllContexts(), IntDeRegisterShellHookWindow(), IntDesktopObjectParse(), IntEngAlphaBlend(), IntEngBitBlt(), IntEngEnter(), IntEngGradientFill(), IntEngLineTo(), IntEngPaint(), IntEngStretchBlt(), IntEngTransparentBlt(), InterfacePciDevicePresent(), InterfacePciDevicePresentEx(), IntGdiCleanupMemEntry(), IntGdiCleanupPrivateFontsForProcess(), IntGdiGetFontResourceInfo(), IntGdiRemoveFontMemResource(), IntGetGlobalHookHandles(), IntGetLoadedCodePageEntry(), IntGetNextHook(), IntGetProp(), IntHookModuleUnloaded(), IntNotifyWinEvent(), IntSendSyncPaint(), IntUnhookWindowsHook(), IntVideoPortMapMemory(), IntVideoPortQueryBusRelations(), IntVideoPortUnmapMemory(), IntWindowFromDC(), invalidate_volumes(), IoCancelThreadIo(), IoDisconnectInterrupt(), IoEnumerateRegisteredFiltersList(), IoFreeAdapterChannel(), IoFreeController(), IoFreeMapRegisters(), IoGetBootDiskInformation(), IopAbortIrpKernelApc(), IopCompleteRequest(), IopCreateArcNamesCd(), IopCreateArcNamesDisk(), IopDeleteIoCompletion(), IopDeviceActionWorker(), IopDisassociateThreadIrp(), IopFreeIrpKernelApc(), IopInitializeBootDrivers(), IopInitializeBuiltinDriver(), IopLogWorker(), IopMountVolume(), IopNotifyAlreadyRegisteredFileSystems(), IopNotifyFileSystemChange(), IopNotifyPlugPlayNotification(), IopReinitializeBootDrivers(), IopReinitializeDrivers(), IopRemovePlugPlayEvent(), IopShutdownBaseFileSystems(), IopStartNextPacket(), IopStartNextPacketByKey(), IopStartRamdisk(), IopTimerDispatch(), IoRegisterFsRegistrationChange(), IoShutdownSystem(), IoUnregisterFsRegistrationChange(), IoUnregisterShutdownNotification(), IPDatagramReassemblyTimeout(), IPFreeReassemblyList(), is_device_part_of_mounted_btrfs_raid(), is_volume_mounted(), IsaFdoQueryDeviceRelations(), IsBatteryAlreadyOnList(), IsDeviceInfoInDeviceInfoSet(), IServiceGroupDpc(), IsThereAChildOpened(), IStream_To_RTL_MEMORY_STREAM(), IsUniqueIdPresent(), IUnknownImpl_from_iface(), jsstr_as_heap(), jsstr_as_inline(), jsstr_as_rope(), jump_from_node(), KdbCommand_Gdi_baseobject(), KdbInitialize(), KdbpAttachToProcess(), KdbpCmdProc(), KdbpCmdThread(), KdbpSymFindCachedFile(), KdbpSymRemoveCachedFile(), KdbpSymSearchModuleList(), KdInitSystem(), KdpCallInitRoutine(), KdpGetMemorySizeInMBs(), KdpPrintString(), KdpSysReadControlSpace(), KdRegisterDebuggerDataBlock(), KeConnectInterrupt(), KeDisconnectInterrupt(), KeDumpIrqList(), KeFlushQueueApc(), KeFreezeAllThreads(), KeInsertByKeyDeviceQueue(), KeQueryRuntimeProcess(), KeQueryValuesProcess(), KeRemoveByKeyDeviceQueue(), KeRemoveByKeyDeviceQueueIfBusy(), KeRemoveDeviceQueue(), KeRundownQueue(), KeRundownThread(), KeSetAffinityProcess(), KeSetEventBoostPriority(), KeSetPriorityAndQuantumProcess(), KeSetQuantumProcess(), KeSetSystemTime(), KeSignalGateBoostPriority(), KeStartProfile(), KeStopProfile(), KeThawAllThreads(), KiActivateWaiterQueue(), KiAttachProcess(), KiChainedDispatch(), KiCheckTimerTable(), KiDeferredReadyThread(), KiDeliverApc(), KiDoBugCheckCallbacks(), KiGetVectorDispatch(), KiInitializeBugCheck(), KiInitModuleList(), KiInsertQueue(), KiInsertQueueApc(), KiInsertTimerTable(), KiInterruptDispatch2(), KillSelectsForFCB(), KiParseProfileList(), KiPcToFileHeader(), KiPrepareUserDebugData(), KiProcessDeferredReadyList(), KiRetireDpcList(), KiRosPcToUserFileHeader(), KiScanReadyQueues(), KiSelectReadyThread(), KiSystemStartup(), KiTimerExpiration(), KiTimerListExpire(), KiWaitTest(), KmtCleanUsermodeCallbacks(), KsAcquireDevice(), KsAllocateObjectBag(), KsCancelIo(), KsCopyObjectBagItems(), KsCreateBusEnumObject(), KsDefaultDispatchPower(), KsDeviceRegisterAdapterObject(), KsFilterAcquireProcessingMutex(), KsFilterAddTopologyConnections(), KsFilterAttemptProcessing(), KsFilterCreatePinFactory(), KsFilterFactoryAddCreateItem(), KsFilterFactoryGetSymbolicLink(), KsFilterFactorySetDeviceClassesState(), KsFilterFactoryUpdateCacheData(), KsFilterGetAndGate(), KsFilterGetChildPinCount(), KsFilterGetFirstChildPin(), KsFilterRegisterPowerCallbacks(), KsFilterReleaseProcessingMutex(), KsFreeObjectBag(), KsMoveIrpsOnCancelableQueue(), KspAddObjectCreateItemToList(), KspBusWorkerRoutine(), KspCompletePendingIrps(), KspCreateDeviceAssociation(), KspCreateDeviceReference(), KspDisableEvent(), KspEnableBusDeviceInterface(), KspFindObjectBagItem(), KspFreeCreateItems(), KspFreeDeviceInterfaces(), KspFreeEventList(), KspGetObjectItemReferenceCount(), KsPinAcquireProcessingMutex(), KsPinAttachAndGate(), KsPinAttachOrGate(), KsPinGetAndGate(), KsPinGetFirstCloneStreamPointer(), KsPinGetLeadingEdgeStreamPointer(), KsPinGetParentFilter(), KsPinGetReferenceClockInterface(), KsPinRegisterFrameReturnCallback(), KsPinRegisterHandshakeCallback(), KsPinRegisterIrpCompletionCallback(), KsPinRegisterPowerCallbacks(), KsPinReleaseProcessingMutex(), KspInstallBusEnumInterface(), KspQueryBusRelations(), KspRemoveDeviceAssociations(), KSPropertySetImpl_fnAddRef(), KSPropertySetImpl_fnQueryInterface(), KSPropertySetImpl_fnRelease(), KspSetDeviceInterfacesState(), KspSetFilterFactoriesState(), KsReleaseDevice(), KsRemoveIrpFromCancelableQueue(), KsServiceBusEnumCreateRequest(), KsStreamPointerAdvanceOffsets(), KsStreamPointerCancelTimeout(), KsStreamPointerClone(), KsStreamPointerDelete(), KsStreamPointerGetNextClone(), KsStreamPointerScheduleTimeout(), KsStreamPointerUnlock(), KxUnwaitThread(), KxUnwaitThreadForEvent(), label_from_HTMLDOMNode(), LanAdapterInfo(), LanCloseProtocol(), LanEnumAdapters(), LANUnregisterProtocol(), last_item(), ldr_notify_callback1(), ldr_notify_callback_dll_main(), ldr_notify_callback_fail(), LdrEnumerateLoadedModules(), LdrFindEntryForAddress(), LdrpAllocateTls(), LdrpCheckForLoadedDll(), LdrpCheckForLoadedDllHandle(), LdrpClearLoadInProgress(), LdrpFreeTls(), LdrpGetProcedureAddress(), LdrpInitializeProcess(), LdrpInitializeThread(), LdrpInitializeTls(), LdrpMapDll(), LdrpRunInitializeRoutines(), LdrQueryProcessModuleInformationEx(), LdrShutdownProcess(), LdrShutdownThread(), LdrUnloadDll(), LibTCPDequeuePacket(), LibTCPEmptyQueue(), lie_about_fs_type(), CUSBQueue::LinkQueueHead(), CUSBQueue::LinkQueueHeadChain(), list_free(), list_invoke(), ListDisk(), ListDriverModules(), ListenComplete(), ListPartition(), ListUserModules(), load_chunk_root(), load_stored_free_space_cache(), load_stored_free_space_tree(), load_tree(), LocalEnumMonitors(), LocalEnumPorts(), LocalmonEnumPorts(), LocalmonShutdown(), LocateAdapterBindingByName(), LocateChildDevice(), LockAcquireQueueLock(), LockCompleteCanceledIrp(), LockInsertIrpEx(), LockPeekNextIrp(), LockReleaseQueueLock(), log_file_checksum_error(), LogActiveObjects(), LogfCloseAll(), LogfListItemByIndex(), LogfListItemByName(), look_for_roots(), LookupThreadProc(), loop_from_node(), LpcpDeletePort(), LpcpDestroyPortQueue(), LpcpFindDataInfoMessage(), LpcpFreeDataInfoMessage(), LsapEnumLogonSessions(), LsapGetAuthenticationPackage(), LsapGetLogonSession(), LsapGetNotificationEntry(), LsapLookupAuthenticationPackage(), LsapLookupFullyQualifiedWellKnownName(), LsapLookupIsolatedWellKnownName(), LsapLookupWellKnownSid(), LsapNotifyPolicyChange(), lzo_write_compressed_bit(), make_file_orphan(), mapping_impl_from_IUnknown(), MemCleanup(), MemInstallFastMemoryHook(), MiAllocatePoolPages(), MiBuildImportsForBootDrivers(), MiBuildPfnDatabase(), MiBuildPfnDatabaseFromLoaderBlock(), MiDbgDumpMemoryDescriptors(), MiFindInitializationCode(), MiInitializeLoadedModuleList(), MiInsertNode(), MiIsRegularMemory(), MiLoadUserSymbols(), MiLookupDataTableEntry(), MiMapPfnDatabase(), MiniIndicateData(), MiniIndicateReceivePacket(), MiniLocateDevice(), MiniResetComplete(), MiniStatus(), MiniStatusComplete(), MiReloadBootLoadedDrivers(), MiRemoveNode(), MiResolveImageReferences(), MiRosTrimCache(), MiScanMemoryDescriptors(), MiSnapThunk(), MiUpdateThunks(), MiUseLargeDriverPage(), mknod(), MmAlterRegion(), MmFindRegion(), MmFreeLoaderBlock(), MmFreeMemoryArea(), MmGetAddressSpaceOwner(), MmGetSessionById(), MmGetSystemRoutineAddress(), MmHapHeapAllocatorExtend(), MmInitializeMemoryLimits(), MMixerGetDataByDeviceId(), MMixerGetDataByDeviceName(), MMixerGetLineControls(), MMixerGetMidiInfoByIndexAndType(), MMixerGetMixerByName(), MMixerGetMixerControlById(), MMixerGetMixerDataByDeviceHandle(), MMixerGetMixerInfoByIndex(), MMixerGetMixerLineContainingNodeId(), MMixerGetSourceMixerLineByComponentType(), MMixerGetSourceMixerLineByLineId(), MMixerGetWaveInfoByIndexAndType(), MMixerInitialize(), MMixerNotifyControlChange(), MMixerPrintMixerLineControls(), MMixerRemoveEvent(), MmLoadSystemImage(), MmLockAddressSpace(), MmMdAddDescriptorToList(), MmMdCopyList(), MmMdDbgDumpList(), MmMdFindDescriptorFromMdl(), MmMdFreeList(), MmMdpCoalesceDescriptor(), MmMdpTruncateDescriptor(), MmMdRemoveRegionFromMdlEx(), MmMdTruncateDescriptors(), MmPaInitialize(), MmPapAllocateRegionFromMdl(), MmRosNotifyAvailablePage(), MmTrInitialize(), MmUnlockAddressSpace(), MmUnmapViewOfSegment(), Mmx86pMapMemoryRegions(), mount_vol(), mountmgr_process_drive(), MountMgrAssignDriveLetters(), MountMgrCheckUnprocessedVolumes(), MountMgrCleanup(), MountMgrCreatePointWorker(), MountMgrFreeMountedDeviceInfo(), MountMgrFreeSavedLink(), MountMgrMountedDeviceArrival(), MountMgrMountedDeviceRemoval(), MountMgrNextDriveLetterWorker(), MountMgrNotify(), MountMgrNotifyNameChange(), MountMgrQueryDosVolumePath(), MountMgrQueryDosVolumePaths(), MountMgrQueryVolumePaths(), MountMgrUniqueIdChangeRoutine(), MountMgrUnload(), MountMgrValidateBackPointer(), MountMgrVolumeMountPointDeleted(), move_across_subvols(), MsfsAcquireLock(), MsfsClose(), MsfsCreate(), MsfsCreateMailslot(), MsfsInsertIrp(), MsfsPeekNextIrp(), MsfsQueryMailslotInformation(), MsfsRead(), MsfsReleaseLock(), MsqCleanupMessageQueue(), MsqCleanupThreadMsgs(), MsqPeekMessage(), MsqPostMouseMove(), MsqRemoveWindowMessagesFromQueue(), MupCheckForUnregisteredProvider(), MupCleanupFcb(), MupForwardIoRequest(), MupInvalidatePrefixTable(), NBFlushPacketQueue(), NBSendPackets(), ndisBindMiniportsToProtocol(), NdisCloseConfiguration(), NdisCompletePnPEvent(), NdisIPnPStartDevice(), NdrGetUserMarshalInfo(), NduDispatchRead(), nefile_impl_from_IUnknown(), NetrJobDel(), NetrJobEnum(), NetrJobGetInfo(), next_dir_entry(), next_item(), nfs41_CreateVNetRoot(), nfs41_DevFcbXXXControlFile(), nfs41_downcall(), nfs41_remove_fcb_entry(), nfs41_upcall(), nfs41_update_fcb_list(), NlsUninit(), NotifyProcessForShutdown(), NpCancelWaiter(), NpCheckForNotify(), NpCompleteDeferredIrps(), NpCompleteStalledWrites(), NpCreateClientEnd(), NpFindPrefix(), NpGetNextRealDataQueueEntry(), NpPeek(), NpReadDataQueue(), NpRemoveDataQueueEntry(), NpSetClosingPipeState(), NpSetConnectedPipeState(), NpSetDisconnectedPipeState(), NpWaitForNamedPipe(), NpWriteDataQueue(), nsChannelBSC_from_BSCallback(), NtCancelIoFile(), NtCancelTimer(), NtDebugContinue(), NtfsGrabFCBFromTable(), NtGetPlugPlayEvent(), NtQueryInformationJobObject(), NtRemoveIoCompletion(), NtReplyWaitReceivePortEx(), NtSetInformationProcess(), NtSetTimer(), NtUserBuildPropList(), NtUserMessageCall(), NtWaitForDebugEvent(), number_from_jsdisp(), ObInitSystem(), OHCI_InsertEndpointInSchedule(), OHCI_PollAsyncEndpoint(), OHCI_RemoveEndpointFromSchedule(), open_fcb(), open_file(), open_fileref(), open_fileref_by_inode(), open_fileref_child(), OpenPrinterW(), order_space_entry(), PacketSocketRecvComplete(), PacketSocketSendComplete(), PatchNewModules(), PciFindNextSecondaryExtension(), PciIdeXGetBusData(), PciIdeXSetBusData(), PcIoTimerRoutine(), PcNewRegistryKey(), PcRegisterIoTimeout(), PcUnregisterIoTimeout(), pe_locate_with_coff_symbol_table(), pefile_impl_from_IUnknown(), PerfDataUninitialize(), pev_get_val(), pev_set_value(), Phase1InitializationDiscard(), PHEventSink_from_IDispatch(), PinCaptureProcess(), PinGetIrpFromReadyList(), PngChrmReader_CreateInstance(), PnpRootQueryDeviceRelations(), PollReeval(), PopFlushVolumes(), PopFlushVolumeWorker(), PopProcessShutDownLists(), PortDeleteDriverInitData(), PortGetDriverInitData(), PostTimerMessages(), prev_item(), PrimaryDirectSoundBuffer8Impl_fnAddRef(), PrimaryDirectSoundBuffer8Impl_fnGetCaps(), PrimaryDirectSoundBuffer8Impl_fnGetCurrentPosition(), PrimaryDirectSoundBuffer8Impl_fnGetFormat(), PrimaryDirectSoundBuffer8Impl_fnGetFrequency(), PrimaryDirectSoundBuffer8Impl_fnGetPan(), PrimaryDirectSoundBuffer8Impl_fnGetStatus(), PrimaryDirectSoundBuffer8Impl_fnGetVolume(), PrimaryDirectSoundBuffer8Impl_fnPlay(), PrimaryDirectSoundBuffer8Impl_fnQueryInterface(), PrimaryDirectSoundBuffer8Impl_fnRelease(), PrimaryDirectSoundBuffer8Impl_fnSetFormat(), PrimaryDirectSoundBuffer8Impl_fnSetFrequency(), PrimaryDirectSoundBuffer8Impl_fnSetPan(), PrimaryDirectSoundBuffer8Impl_fnSetVolume(), PrimaryDirectSoundBuffer8Impl_fnStop(), PrimaryDirectSoundBuffer_AcquireLock(), PrimaryDirectSoundBuffer_GetPosition(), PrimaryDirectSoundBuffer_ReleaseLock(), PrimaryDirectSoundBuffer_SetFormat(), PrimaryDirectSoundBuffer_SetState(), PrimaryDirectSoundBuffer_Write(), print_open_trees(), PrintDiskData(), CUSBQueue::PrintEndpointList(), CUSBQueue::ProcessAsyncList(), ProcessFragment(), CUSBQueue::ProcessPeriodicSchedule(), ProcessQueuedRequests(), ProcessSuggestedDriveLetters(), ProcessTimers(), ProSendAndFreePnPEvent(), ProtocolTransferDataComplete(), PsaEnumerateProcessModules(), PsGetNextProcess(), PsGetNextProcessThread(), PspExitThread(), PspGetOrSetContextKernelRoutine(), PspReapRoutine(), PurgeInputBuffer(), push_dc_driver_ros(), QSI_DEF(), query_dir_item(), query_directory(), query_filesystems(), query_ranges(), query_scrub(), QueryAvailableFileSystemFormat(), QueryBinding(), CIrpQueue::QueryInterface(), CUnregisterSubdevice::QueryInterface(), QueryPointsFromMemory(), QueryPointsFromSymbolicLinkName(), CUSBQueue::QueueHeadCleanup(), QueueSidLookup(), RamdiskQueryDeviceRelations(), RamdiskRemoveBusDevice(), rationalize_extents(), RawCheckForDismount(), read_data(), read_data_raid5(), read_data_raid6(), read_file(), read_group_mappings(), read_mappings(), ReassembleDatagram(), ReceiveActivity(), ReceiveComplete(), ReconcileAllDatabasesWithMaster(), ReconcileThisDatabaseWithMasterWorker(), RecycleBin5_RecycleBin5_AddRef(), RecycleBin5_RecycleBin5_Delete(), RecycleBin5_RecycleBin5_DeleteFile(), RecycleBin5_RecycleBin5_EnumObjects(), RecycleBin5_RecycleBin5_OnClosing(), RecycleBin5_RecycleBin5_QueryInterface(), RecycleBin5_RecycleBin5_Release(), RecycleBin5_RecycleBin5_Restore(), RecycleBin5Enum_RecycleBinEnumList_AddRef(), RecycleBin5Enum_RecycleBinEnumList_Next(), RecycleBin5Enum_RecycleBinEnumList_QueryInterface(), RecycleBin5Enum_RecycleBinEnumList_Release(), RecycleBin5Enum_RecycleBinEnumList_Reset(), RecycleBin5Enum_RecycleBinEnumList_Skip(), RecycleBin5File_RecycleBinFile_AddRef(), RecycleBin5File_RecycleBinFile_Delete(), RecycleBin5File_RecycleBinFile_GetAttributes(), RecycleBin5File_RecycleBinFile_GetDeletionTime(), RecycleBin5File_RecycleBinFile_GetFileName(), RecycleBin5File_RecycleBinFile_GetFileSize(), RecycleBin5File_RecycleBinFile_GetLastModificationTime(), RecycleBin5File_RecycleBinFile_GetPhysicalFileSize(), RecycleBin5File_RecycleBinFile_QueryInterface(), RecycleBin5File_RecycleBinFile_Release(), RecycleBin5File_RecycleBinFile_Restore(), RecycleBinGeneric_RecycleBin_AddRef(), RecycleBinGeneric_RecycleBin_QueryInterface(), RecycleBinGeneric_RecycleBin_Release(), RecycleBinGenericEnum_RecycleBinEnumList_AddRef(), RecycleBinGenericEnum_RecycleBinEnumList_Next(), RecycleBinGenericEnum_RecycleBinEnumList_QueryInterface(), RecycleBinGenericEnum_RecycleBinEnumList_Release(), RecycleBinGenericEnum_RecycleBinEnumList_Reset(), RecycleBinGenericEnum_RecycleBinEnumList_Skip(), RedirectSavedLink(), RegDeleteKeyValueA(), regen_bootstrap(), regenerate_space_list(), regexp_from_jsdisp(), RegisterConnection(), RegisterUncProvider(), RegpCopyTree(), RegpCreateOrOpenKey(), RegShutdownRegistry(), remove_device(), remove_dir_child_from_hash_lists(), remove_from_bootstrap(), remove_root_extents(), remove_volume_child(), RemoveBatteryFromList(), RemoveCacheEntries(), RemoveSavedLinks(), CHubController::RemoveUsbDevice(), REnumServiceGroupW(), REnumServicesStatusExW(), RequestedPowerCompletion(), reset_stats(), reset_subkeys(), resize_device(), ResProtocol_from_IInternetProtocol(), RfsdAllocateMcb(), RfsdDeviceControlNormal(), RfsdFlushFiles(), RfsdInvalidateVolumes(), RfsdIsHandleCountZero(), RfsdPurgeVolume(), RfsdSearchMcbTree(), RfsdShutDown(), RouterCreateRoute(), RouterDumpRoutes(), RouterGetRoute(), RouterRemoveRoute(), RouterRemoveRoutesForInterface(), rpcrt4_protseq_np_get_wait_array(), rpcrt4_protseq_np_signal_state_changed(), rpcrt4_protseq_sock_get_wait_array(), rpcrt4_protseq_sock_signal_state_changed(), RpcThreadRoutine(), RtlAddRange(), RtlAllocateHeap(), RtlCopyRangeList(), RtlDeleteOwnersRanges(), RtlDeleteRange(), RtlDestroyHeap(), RtlFindRange(), RtlFindUnicodePrefix(), RtlFreeHeap(), RtlFreeRangeList(), RtlGetElementGenericTable(), RtlGetNextRange(), RtlInsertUnicodePrefix(), RtlInvertRangeList(), RtlIsRangeAvailable(), RtlNextUnicodePrefix(), RtlpAllocateNonDedicated(), RtlpCallVectoredHandlers(), RtlpCreateUnCommittedRange(), RtlPcToFileHeader(), RtlpDphAllocateNodeForTable(), RtlpDphCoalesceNodeIntoAvailable(), RtlpDphFindBusyMemory(), RtlpDphFreeDelayedBlocksFromHeap(), RtlpDphRemoveFromAvailableList(), RtlpDphSearchAvailableMemoryListForBestFit(), RtlpFindAndCommitPages(), RtlpGetExtraStuffPointer(), RtlpGetSizeOfBigBlock(), RtlpInsertFreeBlockHelper(), RtlpInsertUnCommittedPages(), RtlpPageHeapDestroy(), RtlpQueryRemoteProcessModules(), RtlpQueueIoWorkerThread(), RtlpRemoveVectoredHandler(), RtlpValidateActCtx(), RtlpValidateHeap(), RtlpValidateHeapSegment(), RtlReAllocateHeap(), RtlRemoveUnicodePrefix(), RunNextJob(), RxCancelNotifyChangeDirectoryRequestsForFobx(), RxCancelNotifyChangeDirectoryRequestsForVNetRoot(), RxChangeBufferingState(), RxCloseAssociatedSrvOpen(), RxFcbTableLookupFcb(), RxFinalizeConnection(), RxFinalizeNetFcb(), RxFinalizeNetRoot(), RxFinalizeSrvOpen(), RxFindOrConstructVirtualNetRoot(), RxFinishSrvCallConstructionDispatcher(), RxGatherRequestsForSrvOpen(), RxInitializeLowIoContext(), RxIsMemberOfTopLevelIrpAllocatedContextsList(), RxIsOkToPurgeFcb(), RxMarkFobxOnCleanup(), RxOrphanSrvOpens(), RxpDiscardChangeBufferingStateRequests(), RxpDispatchChangeBufferingStateRequests(), RxpLookupSrvOpenForRequestLite(), RxpScavengeFobxs(), RxPurgeRelatedFobxs(), RxpWorkerThreadDispatcher(), RxRemoveFirstContextFromSerializationQueue(), RxRemoveOverflowEntry(), RxRemoveVirtualNetRootFromNetRoot(), RxScavengeFobxsForNetRoot(), RxScavengeRelatedFobxs(), RxSearchForCollapsibleOpen(), RxSpinUpRequestsDispatcher(), RxTableLookupName(), RxTableLookupName_ExactLengthMatch(), RxTimerDispatch(), ScanForUnpartitionedDiskSpace(), ScmAssignNewTag(), ScmAutoShutdownServices(), ScmAutoStartServices(), ScmDeleteMarkedServices(), ScmGetBootAndSystemDriverState(), ScmGetServiceEntryByDisplayName(), ScmGetServiceEntryByName(), ScmGetServiceEntryByResumeCount(), ScmGetServiceGroupByName(), ScmGetServiceImageByImagePath(), ScmSetServiceGroup(), ScriptDisp_from_IDispatchEx(), ScrollDownFileSystemList(), ScrollDownGenericList(), ScrollToPositionGenericList(), ScrollUpFileSystemList(), ScrollUpGenericList(), ScrubRegistryRoutine(), ScsiPortCompleteRequest(), ScsiPortDispatchScsi(), ScsiPortFreeDeviceBase(), ScsiPortGetDeviceBase(), ScsiPortGetLogicalUnit(), ScsiPortGetPhysicalAddress(), ScsiPortGetUncachedExtension(), ScsiPortGetVirtualAddress(), ScsiPortNotification(), search_for_gid(), SecondaryDirectSoundBuffer8Impl_fnAddRef(), SecondaryDirectSoundBuffer8Impl_fnGetCaps(), SecondaryDirectSoundBuffer8Impl_fnGetCurrentPosition(), SecondaryDirectSoundBuffer8Impl_fnGetFormat(), SecondaryDirectSoundBuffer8Impl_fnGetFrequency(), SecondaryDirectSoundBuffer8Impl_fnGetPan(), SecondaryDirectSoundBuffer8Impl_fnGetStatus(), SecondaryDirectSoundBuffer8Impl_fnGetVolume(), SecondaryDirectSoundBuffer8Impl_fnLock(), SecondaryDirectSoundBuffer8Impl_fnPlay(), SecondaryDirectSoundBuffer8Impl_fnQueryInterface(), SecondaryDirectSoundBuffer8Impl_fnRelease(), SecondaryDirectSoundBuffer8Impl_fnSetCurrentPosition(), SecondaryDirectSoundBuffer8Impl_fnSetFrequency(), SecondaryDirectSoundBuffer8Impl_fnSetPan(), SecondaryDirectSoundBuffer8Impl_fnSetVolume(), SecondaryDirectSoundBuffer8Impl_fnStop(), SecurityPageProc(), CUSBDevice::SelectConfiguration(), SelectDisk(), CUSBDevice::SelectInterface(), SelectPartition(), send_add_dir(), send_disks_pnp_message(), send_inode(), send_inode_extref(), send_inode_ref(), send_notification_fcb(), send_xattr(), SendComplete(), SendOnlineNotificationWorker(), ServiceTransferRequest(), session_invoke(), set_rename_information(), set_zero_data(), SetDiskSignature(), SetMountedDeviceValues(), SetupCloseFileQueue(), SetupCommitFileQueueW(), SetupDiCallClassInstaller(), SetupDiDestroyDriverInfoList(), SetupDiEnumDeviceInfo(), SetupDiEnumDeviceInterfaces(), SetupDiEnumDriverInfoW(), SetupDiOpenDeviceInfoW(), SetupDiOpenDeviceInterfaceW(), SetupDiSetSelectedDriverW(), shader_glsl_find_ffp_fragment_shader(), SharedFace_Release(), ShimLib_NotifyShims(), sid_to_uid(), SmpCheckDuplicateMuSessionId(), SmpCreatePagingFileDescriptor(), SmpCreatePagingFileOnAnyDrive(), SmpCreatePagingFiles(), SmpFindRegistryValue(), SmpInitializeDosDevices(), SmpInitializeKnownDlls(), SmpInitializeKnownDllsInternal(), SmpLoadDataFromRegistry(), SmpLoadSubSystemsForMuSession(), SmpLocateKnownSubSysByCid(), SmpLocateKnownSubSysByType(), SmpProcessFileRenames(), SmpSaveRegistryValue(), SmpSearchVolumeDescriptor(), SmpSessionIdToSession(), snapshot_tree_copy(), SockGetTdiName(), sort_data_reloc_refs(), sort_extent_refs(), sort_metadata_reloc_refs(), space_list_add2(), space_list_merge(), space_list_subtract2(), SpiGetNextRequestFromLun(), SpiSaveInterruptData(), split_path(), split_tree(), split_tree_at(), StartCaptureIsocTransfer(), StdMemAllocator_from_IMemAllocator(), StorPortGetBusData(), StorPortGetDeviceBase(), StorPortGetPhysicalAddress(), StorPortGetUncachedExtension(), StorPortNotification(), StorPortSetBusDataByOffset(), StreamClassReleaseResources(), StreamOnFileHandle_from_IStream(), StreamOnMemory_from_IStream(), StreamOnStreamRange_from_IStream(), StreamSocketConnectComplete(), string_from_jsdisp(), SubstituteFontByList(), sw_bb_renderbuffer_storage(), sw_fb_renderbuffer_storage(), sw_MapRenderbuffer(), swizzle_from_node(), SymEnumLines(), symt_close_func_block(), symt_enum_module(), symt_find_type_by_name(), symt_ptr2index(), sync_ext_cutoff_points(), sys_arch_mbox_fetch(), sys_shutdown(), SysAudio_Shutdown(), TCPAbortListenForSocket(), TCPAcceptEventHandler(), TCPConnectEventHandler(), TCPRecvEventHandler(), TCPRemoveIRP(), TCPSendEventHandler(), TCPWakeup(), test_CreateStub(), test_HashLinks(), test_InMemoryOrderModuleList(), test_not_full(), test_slist(), Tests_Insert_And_Delete(), texture_from_resource(), top_level_parameter_from_parameter(), trees_consistent(), trim_unalloc_space(), TrpGenerateMappingTracker(), try_consolidation(), try_extend_data(), try_tree_amalgamate(), UDFCloseAllDelayed(), UDFCommonDispatch(), UDFCommonShutdown(), UDFDelayedClose(), UDFInvalidateVolumes(), UDFRename(), UDFScanForDismountedVcb(), UDFVForget(), UDFVRead(), UDFVRelease(), UDFVVerify(), UDFVWrite(), UhciPollNonIsoEndpoint(), uid_to_sid(), UmaDescReallocate(), UmaDescRelease(), UmaDescReserve(), UmaMgrCleanup(), UnbindAdapterByContext(), uninit(), UnlinkFontMemCollection(), CUSBQueue::UnlinkQueueHead(), CUSBQueue::UnlinkQueueHeadChain(), unsafe_impl_from_IDirect3DBaseTexture8(), unsafe_impl_from_IDirect3DBaseTexture9(), unsafe_impl_from_IDirect3DDevice(), unsafe_impl_from_IDirect3DDevice2(), unsafe_impl_from_IDirect3DDevice3(), unsafe_impl_from_IDirect3DDevice7(), unsafe_impl_from_IDirect3DTexture(), unsafe_impl_from_IDirect3DTexture2(), unsafe_impl_from_IDirect3DVertexDeclaration9(), unsafe_impl_from_IDirect3DViewport(), unsafe_impl_from_IDirect3DViewport2(), unsafe_impl_from_IDirect3DViewport3(), unsafe_impl_from_IDirectDrawPalette(), unsafe_impl_from_IDirectDrawSurface(), unsafe_impl_from_IDirectDrawSurface2(), unsafe_impl_from_IDirectDrawSurface3(), unsafe_impl_from_IDirectDrawSurface4(), unsafe_impl_from_IDirectDrawSurface7(), unsafe_impl_from_IDispatch(), unsafe_impl_Parser_OutputPin_from_IPin(), update_changed_extent_ref(), update_chunk_cache(), update_chunk_cache_tree(), update_chunk_caches(), update_chunk_caches_tree(), update_chunk_usage(), update_chunks(), update_root_root(), update_tree_extents(), update_volumes(), UpdateDiskLayout(), UpdateDiskSignatures(), UpdateReplicatedUniqueIds(), USB2_Rebalance(), USB2_RebalanceEndpoint(), USBH_FdoQueryBusRelations(), USBHI_QueryDeviceInformation(), USBPORT_AbortEndpoint(), USBPORT_AbortTransfers(), USBPORT_AcquireBadRequestLock(), USBPORT_AcquireIdleLock(), USBPORT_CancelActiveTransferIrp(), USBPORT_CloseConfiguration(), USBPORT_CompleteCanceledBadRequest(), USBPORT_CompleteCanceledIdleIrp(), USBPORT_DeviceHasTransfers(), USBPORT_DmaEndpointActive(), USBPORT_DmaEndpointPaused(), USBPORT_DpcHandler(), USBPORT_EndpointHasQueuedTransfers(), USBPORT_FindCompanionControllers(), USBPORT_FindMiniPort(), USBPORT_FindUSB2Controller(), USBPORT_FlushAbortList(), USBPORT_FlushAllEndpoints(), USBPORT_FlushCancelList(), USBPORT_FlushClosedEndpointList(), USBPORT_FlushController(), USBPORT_FlushDoneTransfers(), USBPORT_FlushMapTransfers(), USBPORT_FlushPendingTransfers(), USBPORT_GetInterfaceHandle(), USBPORT_GetTt(), USBPORT_InsertBadRequest(), USBPORT_InsertIdleIrp(), USBPORT_InvalidateEndpointHandler(), USBPORT_IsrDpcHandler(), USBPORT_KillEndpointActiveTransfers(), USBPORT_MapTransfer(), USBPORT_MiniportCompleteTransfer(), USBPORT_NukeAllEndpoints(), USBPORT_PeekNextBadRequest(), USBPORT_PeekNextIdleIrp(), USBPORT_ReleaseBadRequestLock(), USBPORT_ReleaseIdleLock(), USBPORT_RemoveDevice(), USBPORT_RestoreDevice(), USBPORT_RootHubEndpointWorker(), USBPORT_SplitBulkInterruptTransfer(), USBPORT_ValidateDeviceHandle(), USBPORT_ValidatePipeHandle(), USBPORT_WorkerThreadHandler(), USBSTOR_RemoveIrp(), UserBuildShellHookHwndList(), UserDerefObjectCo(), UserGetDCEx(), UserGetKeyboardLayout(), UserpGetClientFileName(), UserReleaseDC(), UserRemoveWindowProps(), ValidateTimerCallback(), CHubController::ValidateUsbDevice(), var_from_node(), vbarray_from_jsdisp(), VDDBlockUserHook(), VDDCreateUserHook(), VDDDeInstallUserHook(), VDDInstallMemoryHook(), VDDResumeUserHook(), VDDTerminateUserHook(), verify_device(), verify_vcb(), verify_volume(), VfatCloseWorker(), VfatDismountVolume(), VfatFlushVolume(), VfatLockOrUnlockVolume(), VfatRenameChildFCB(), VfatShutdown(), VfdDeviceThread(), VGADDI_AllocSavedScreenBits(), VGADDI_FreeSavedScreenBits(), VideoPortFreeCommonBuffer(), VideoPortGetCommonBuffer(), vol_check_verify(), vol_get_device_number(), vol_get_disk_extents(), vol_get_drive_geometry(), vol_get_length(), vol_ioctl_passthrough(), vol_is_writable(), vol_read(), vol_write(), volume_arrival(), volume_removal(), WdmAudGetMixerEvent(), wined3d_event_query_from_query(), wined3d_occlusion_query_from_query(), wined3d_pipeline_statistics_query_from_query(), wined3d_so_statistics_query_from_query(), wined3d_timestamp_query_from_query(), WinLdrCheckForLoadedDll(), WinLdrInsertDescriptor(), WinLdrLoadBootDrivers(), WinLdrpDumpArcDisks(), WinLdrpDumpBootDriver(), WinLdrpDumpMemoryDescriptors(), WlanSvcGetHandleEntry(), WmipClearIrpObjectList(), WorkerThread(), WorkItemRoutine(), write_data_complete(), write_metadata_items(), write_roots(), write_superblocks(), write_trees(), WritePartitions(), WritePartitionsToDisk(), WriteUniqueIdToMaster(), WsAsyncCancelRequest(), WsAsyncThread(), WsNcDelete(), WsNcEnumerateCatalogItems(), WsNcGetCatalogFromProviderId(), WsNcRefreshFromRegistry(), WsNcUpdateNamespaceList(), WsNqDelete(), WsNqLookupServiceBegin(), WsNqLookupServiceEnd(), WsNqLookupServiceNext(), WsNqNextProvider(), WsNqPreviousProvider(), WsTcDelete(), WsTcEnumerateCatalogItems(), WsTcFindIfsProviderForSocket(), WsTcFindProvider(), WsTcGetEntryFromAf(), WsTcGetEntryFromCatalogEntryId(), WsTcGetEntryFromTriplet(), WsTcRefreshFromRegistry(), WsTcUpdateProtocolList(), XIPpFindMemoryDescriptor(), and zlib_write_compressed_bit().

566 {
567  PFLT_MESSAGE_WAITER_QUEUE MessageWaiterQueue;
568 
570 
571  /* Get the start of the waiter queue struct */
572  MessageWaiterQueue = CONTAINING_RECORD(Csq,
574  Csq);
575 
576  /* Acquire the IRP queue lock */
577  ExAcquireFastMutex(&MessageWaiterQueue->WaiterQ.mLock);
578 }
#define UNREFERENCED_PARAMETER(P)
Definition: ntbasedef.h:323
_Out_ PKIRQL Irql
Definition: csq.h:179
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
Definition: Messaging.c:560
FLT_MUTEX_LIST_HEAD WaiterQ
Definition: fltmgrint.h:206
VOID FASTCALL ExAcquireFastMutex(IN PFAST_MUTEX FastMutex)
Definition: fmutex.c:23
IO_CSQ Csq
Definition: csqrtns.c:46
FAST_MUTEX mLock
Definition: fltmgrint.h:55

◆ CreateClientPort()

static NTSTATUS CreateClientPort ( _In_ PFILE_OBJECT  FileObject,
_Inout_ PIRP  Irp 
)
static

Definition at line 617 of file Messaging.c.

Referenced by FltpMsgCreate().

619 {
620  PFLT_SERVER_PORT_OBJECT ServerPortObject = NULL;
622  PFILTER_PORT_DATA FilterPortData;
623  PFLT_PORT_OBJECT ClientPortObject = NULL;
624  PFLT_PORT PortHandle = NULL;
625  PPORT_CCB PortCCB = NULL;
626  //ULONG BufferLength;
627  LONG NumConns;
629 
630  /* We received the buffer via FilterConnectCommunicationPort, cast it back to its original form */
631  FilterPortData = Irp->AssociatedIrp.SystemBuffer;
632 
633  /* Get a reference to the server port the filter created */
634  Status = ObReferenceObjectByName(&FilterPortData->PortName,
635  0,
636  0,
640  0,
641  (PVOID *)&ServerPortObject);
642  if (!NT_SUCCESS(Status))
643  {
644  return Status;
645  }
646 
647  /* Increment the number of connections on the server port */
648  NumConns = InterlockedIncrement(&ServerPortObject->NumberOfConnections);
649  if (NumConns > ServerPortObject->MaxConnections)
650  {
652  goto Quit;
653  }
654 
655  /* Initialize a basic kernel handle request */
656  InitializeObjectAttributes(&ObjectAttributes,
657  NULL,
659  NULL,
660  NULL);
661 
662  /* Now create the new client port object */
663  Status = ObCreateObject(KernelMode,
665  &ObjectAttributes,
666  KernelMode,
667  NULL,
668  sizeof(FLT_PORT_OBJECT),
669  0,
670  0,
671  (PVOID *)&ClientPortObject);
672  if (!NT_SUCCESS(Status))
673  {
674  goto Quit;
675  }
676 
677  /* Clear out the buffer */
678  RtlZeroMemory(ClientPortObject, sizeof(FLT_PORT_OBJECT));
679 
680  /* Initialize the locks */
682  ExInitializeFastMutex(&ClientPortObject->Lock);
683 
684  /* Set the server port object this belongs to */
685  ClientPortObject->ServerPort = ServerPortObject;
686 
687  /* Setup the message queue */
688  Status = InitializeMessageWaiterQueue(&ClientPortObject->MsgQ);
689  if (!NT_SUCCESS(Status))
690  {
691  goto Quit;
692  }
693 
694  /* Create the CCB which we'll attach to the file object */
695  PortCCB = CreatePortCCB(ClientPortObject);
696  if (PortCCB == NULL)
697  {
699  goto Quit;
700  }
701 
702  /* Now insert the new client port into the object manager*/
703  Status = ObInsertObject(ClientPortObject, 0, FLT_PORT_ALL_ACCESS, 1, 0, (PHANDLE)&PortHandle);
704  if (!NT_SUCCESS(Status))
705  {
706  goto Quit;
707  }
708 
709  /* Add a reference to the filter to keep it alive while we do some work with it */
710  Status = FltObjectReference(ServerPortObject->Filter);
711  if (NT_SUCCESS(Status))
712  {
713  /* Invoke the callback to let the filter know we have a connection */
714  Status = ServerPortObject->ConnectNotify(PortHandle,
715  ServerPortObject->Cookie,
716  NULL, //ConnectionContext
717  0, //SizeOfContext
718  &ClientPortObject->Cookie);
719  if (NT_SUCCESS(Status))
720  {
721  /* Add the client port CCB to the file object */
722  FileObject->FsContext2 = PortCCB;
723 
724  /* Lock the port list on the filter and add this new port object to the list */
725  ExAcquireFastMutex(&ServerPortObject->Filter->PortList.mLock);
726  InsertTailList(&ServerPortObject->Filter->PortList.mList, &ClientPortObject->FilterLink);
727  ExReleaseFastMutex(&ServerPortObject->Filter->PortList.mLock);
728  }
729 
730  /* We're done with the filter object, decremement the count */
731  FltObjectDereference(ServerPortObject->Filter);
732  }
733 
734 
735 Quit:
736  if (!NT_SUCCESS(Status))
737  {
738  if (ClientPortObject)
739  {
740  ObfDereferenceObject(ClientPortObject);
741  }
742 
743  if (PortHandle)
744  {
745  ZwClose(PortHandle);
746  }
747  else if (ServerPortObject)
748  {
749  InterlockedDecrement(&ServerPortObject->NumberOfConnections);
750  ObfDereferenceObject(ServerPortObject);
751  }
752 
753  if (PortCCB)
754  {
755  ExFreePoolWithTag(PortCCB, FM_TAG_CCB);
756  }
757  }
758 
759  return Status;
760 }
#define STATUS_CONNECTION_COUNT_LIMIT
Definition: ntstatus.h:700
LONG_PTR FASTCALL ObfDereferenceObject(IN PVOID Object)
Definition: obref.c:320
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
Definition: conport.c:35
#define FLT_PORT_ALL_ACCESS
Definition: fltkernel.h:836
#define STATUS_INSUFFICIENT_RESOURCES
Definition: udferr_usr.h:158
static NTSTATUS InitializeMessageWaiterQueue(_Inout_ PFLT_MESSAGE_WAITER_QUEUE MsgWaiterQueue)
Definition: Messaging.c:781
LIST_ENTRY FilterLink
Definition: fltmgrint.h:216
_In_ PIRP Irp
Definition: csq.h:116
NTSYSAPI NTSTATUS NTAPI ZwClose(_In_ HANDLE Handle)
PFLT_CONNECT_NOTIFY ConnectNotify
Definition: fltmgrint.h:191
VOID FLTAPI FltObjectDereference(_Inout_ PVOID Object)
Definition: Object.c:53
LONG NTSTATUS
Definition: precomp.h:26
KPROCESSOR_MODE NTAPI ExGetPreviousMode(VOID)
Definition: sysinfo.c:2964
#define InsertTailList(ListHead, Entry)
NTKERNELAPI VOID FASTCALL ExInitializeRundownProtection(_Out_ PEX_RUNDOWN_REF RunRef)
VOID FASTCALL ExReleaseFastMutex(IN PFAST_MUTEX FastMutex)
Definition: fmutex.c:31
struct _FLT_PORT * PFLT_PORT
Definition: fltkernel.h:87
POBJECT_TYPE ClientPortObjectType
Definition: Messaging.c:25
LIST_ENTRY mList
Definition: fltmgrint.h:56
long LONG
Definition: pedump.c:60
FLT_MESSAGE_WAITER_QUEUE MsgQ
Definition: fltmgrint.h:221
smooth NULL
Definition: ftsmooth.c:416
_Inout_ PFILE_OBJECT FileObject
Definition: cdprocs.h:593
NTSTATUS NTAPI ObCreateObject(IN KPROCESSOR_MODE ProbeMode OPTIONAL, IN POBJECT_TYPE Type, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, IN KPROCESSOR_MODE AccessMode, IN OUT PVOID ParseContext OPTIONAL, IN ULONG ObjectSize, IN ULONG PagedPoolCharge OPTIONAL, IN ULONG NonPagedPoolCharge OPTIONAL, OUT PVOID *Object)
Definition: oblife.c:952
POBJECT_TYPE ServerPortObjectType
Definition: Messaging.c:24
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:24
#define FM_TAG_CCB
Definition: fltmgr.h:21
FORCEINLINE VOID ExInitializeFastMutex(_Out_ PFAST_MUTEX FastMutex)
Definition: exfuncs.h:274
#define InterlockedDecrement
Definition: armddk.h:52
static PPORT_CCB CreatePortCCB(_In_ PFLT_PORT_OBJECT PortObject)
Definition: Messaging.c:815
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:414
Status
Definition: gdiplustypes.h:24
NTSTATUS NTAPI ObInsertObject(IN PVOID Object, IN PACCESS_STATE AccessState OPTIONAL, IN ACCESS_MASK DesiredAccess, IN ULONG ObjectPointerBias, OUT PVOID *NewObject OPTIONAL, OUT PHANDLE Handle)
Definition: obhandle.c:2926
#define InterlockedIncrement
Definition: armddk.h:53
VOID FASTCALL ExAcquireFastMutex(IN PFAST_MUTEX FastMutex)
Definition: fmutex.c:23
NTSTATUS FLTAPI FltObjectReference(_Inout_ PVOID Object)
Definition: Object.c:41
EX_RUNDOWN_REF MsgNotifRundownRef
Definition: fltmgrint.h:219
FAST_MUTEX mLock
Definition: fltmgrint.h:55
UNICODE_STRING PortName
Definition: fltmgr_shared.h:28
FLT_MUTEX_LIST_HEAD PortList
Definition: fltmgrint.h:122
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:261
#define InitializeObjectAttributes(p, n, a, r, s)
Definition: reg.c:106
#define ExFreePoolWithTag(_P, _T)
Definition: module.h:1099
NTSTATUS NTAPI ObReferenceObjectByName(IN PUNICODE_STRING ObjectPath, IN ULONG Attributes, IN PACCESS_STATE PassedAccessState, IN ACCESS_MASK DesiredAccess, IN POBJECT_TYPE ObjectType, IN KPROCESSOR_MODE AccessMode, IN OUT PVOID ParseContext, OUT PVOID *ObjectPtr)
Definition: obref.c:411
#define OBJ_KERNEL_HANDLE
Definition: winternl.h:231
PFLT_SERVER_PORT_OBJECT ServerPort
Definition: fltmgrint.h:217
FAST_MUTEX Lock
Definition: fltmgrint.h:220

◆ CreatePortCCB()

static PPORT_CCB CreatePortCCB ( _In_ PFLT_PORT_OBJECT  PortObject)
static

Definition at line 815 of file Messaging.c.

Referenced by CreateClientPort().

816 {
817  PPORT_CCB PortCCB;
818 
819  /* Allocate a CCB struct to hold the client port object info */
821  if (PortCCB)
822  {
823  /* Initialize the structure */
824  PortCCB->Port = PortObject;
825  PortCCB->ReplyWaiterList.mCount = 0;
828  }
829 
830  return PortCCB;
831 }
PFLT_PORT_OBJECT Port
Definition: fltmgrint.h:356
#define FM_TAG_CCB
Definition: fltmgr.h:21
FORCEINLINE VOID ExInitializeFastMutex(_Out_ PFAST_MUTEX FastMutex)
Definition: exfuncs.h:274
#define ExAllocatePoolWithTag(hernya, size, tag)
Definition: env_spec_w32.h:350
FLT_MUTEX_LIST_HEAD ReplyWaiterList
Definition: fltmgrint.h:357
#define KeInitializeEvent(pEvt, foo, foo2)
Definition: env_spec_w32.h:477
FAST_MUTEX mLock
Definition: fltmgrint.h:55

◆ FltpAddMessageWaiter()

NTSTATUS NTAPI FltpAddMessageWaiter ( _In_ PIO_CSQ  Csq,
_In_ PIRP  Irp,
_In_ PVOID  InsertContext 
)

Definition at line 470 of file Messaging.c.

Referenced by InitializeMessageWaiterQueue().

473 {
474  PFLT_MESSAGE_WAITER_QUEUE MessageWaiterQueue;
475 
476  /* Get the start of the waiter queue struct */
477  MessageWaiterQueue = CONTAINING_RECORD(Csq,
479  Csq);
480 
481  /* Insert the IRP at the end of the queue */
482  InsertTailList(&MessageWaiterQueue->WaiterQ.mList,
483  &Irp->Tail.Overlay.ListEntry);
484 
485  /* return success */
486  return STATUS_SUCCESS;
487 }
_In_ PIRP Irp
Definition: csq.h:116
#define InsertTailList(ListHead, Entry)
LIST_ENTRY mList
Definition: fltmgrint.h:56
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
Definition: Messaging.c:560
FLT_MUTEX_LIST_HEAD WaiterQ
Definition: fltmgrint.h:206
IO_CSQ Csq
Definition: csqrtns.c:46
return STATUS_SUCCESS
Definition: btrfs.c:2710

◆ FltpCancelMessageWaiter()

VOID NTAPI FltpCancelMessageWaiter ( _In_ PIO_CSQ  Csq,
_In_ PIRP  Irp 
)

Definition at line 603 of file Messaging.c.

Referenced by InitializeMessageWaiterQueue().

605 {
606  /* Cancel the IRP */
607  Irp->IoStatus.Status = STATUS_CANCELLED;
608  Irp->IoStatus.Information = 0;
610 }
_In_ PIRP Irp
Definition: csq.h:116
#define IoCompleteRequest
Definition: irp.c:1240
#define STATUS_CANCELLED
Definition: udferr_usr.h:170
#define IO_NO_INCREMENT
Definition: iotypes.h:565

◆ FltpClientPortClose()

VOID NTAPI FltpClientPortClose ( _In_opt_ PEPROCESS  Process,
_In_ PVOID  Object,
_In_ ACCESS_MASK  GrantedAccess,
_In_ ULONG  ProcessHandleCount,
_In_ ULONG  SystemHandleCount 
)

Definition at line 327 of file Messaging.c.

Referenced by FltpSetupCommunicationObjects().

332 {
334 
335  if (FltpDisconnectPort(PortObject))
336  {
338  }
339 }
static BOOLEAN FltpDisconnectPort(_In_ PFLT_PORT_OBJECT PortObject)
Definition: Messaging.c:342
struct _FLT_PORT_OBJECT * PFLT_PORT_OBJECT
static IUnknown Object
Definition: main.c:512
#define InterlockedDecrement
Definition: armddk.h:52
PFLT_SERVER_PORT_OBJECT ServerPort
Definition: fltmgrint.h:217

◆ FltpClientPortDelete()

VOID NTAPI FltpClientPortDelete ( PVOID  Object)

Definition at line 369 of file Messaging.c.

Referenced by FltpSetupCommunicationObjects().

370 {
371  PFLT_PORT_OBJECT PortObject = (PFLT_PORT_OBJECT)Object;
372  ObfDereferenceObject(PortObject->ServerPort);
373 }
LONG_PTR FASTCALL ObfDereferenceObject(IN PVOID Object)
Definition: obref.c:320
struct _FLT_PORT_OBJECT * PFLT_PORT_OBJECT
PFLT_SERVER_PORT_OBJECT ServerPort
Definition: fltmgrint.h:217

◆ FltpDisconnectPort()

BOOLEAN FltpDisconnectPort ( _In_ PFLT_PORT_OBJECT  PortObject)
static

Definition at line 342 of file Messaging.c.

Referenced by FltpClientPortClose().

343 {
344  BOOLEAN Disconnected = FALSE;
345 
346  /* Lock the port object while we disconnect it */
347  ExAcquireFastMutex(&PortObject->Lock);
348 
349  /* Make sure we have a valid connection */
350  if (PortObject->Disconnected == FALSE)
351  {
352  /* Let any waiters know we're dusconnecing */
353  KeSetEvent(&PortObject->DisconnectEvent, 0, 0);
354 
355  // cleanup everything in the message queue (PortObject->MsgQ.Csq)
356 
357  /* Set the disconnected state to true */
358  PortObject->Disconnected = TRUE;
359  Disconnected = TRUE;
360  }
361 
362  /* Unlock and exit*/
363  ExReleaseFastMutex(&PortObject->Lock);
364  return Disconnected;
365 }
#define TRUE
Definition: types.h:120
LONG NTAPI KeSetEvent(IN PKEVENT Event, IN KPRIORITY Increment, IN BOOLEAN Wait)
Definition: eventobj.c:159
VOID FASTCALL ExReleaseFastMutex(IN PFAST_MUTEX FastMutex)
Definition: fmutex.c:31
unsigned char BOOLEAN
VOID FASTCALL ExAcquireFastMutex(IN PFAST_MUTEX FastMutex)
Definition: fmutex.c:23

◆ FltpGetNextMessageWaiter()

PIRP NTAPI FltpGetNextMessageWaiter ( _In_ PIO_CSQ  Csq,
_In_ PIRP  Irp,
_In_ PVOID  PeekContext 
)

Definition at line 500 of file Messaging.c.

Referenced by InitializeMessageWaiterQueue().

503 {
504  PFLT_MESSAGE_WAITER_QUEUE MessageWaiterQueue;
505  PIRP NextIrp = NULL;
506  PLIST_ENTRY NextEntry;
507  PIO_STACK_LOCATION IrpStack;
508 
509  /* Get the start of the waiter queue struct */
510  MessageWaiterQueue = CONTAINING_RECORD(Csq,
512  Csq);
513 
514  /* Is the IRP valid? */
515  if (Irp == NULL)
516  {
517  /* Start peeking from the listhead */
518  NextEntry = MessageWaiterQueue->WaiterQ.mList.Flink;
519  }
520  else
521  {
522  /* Start peeking from that IRP onwards */
523  NextEntry = Irp->Tail.Overlay.ListEntry.Flink;
524  }
525 
526  /* Loop through the queue */
527  while (NextEntry != &MessageWaiterQueue->WaiterQ.mList)
528  {
529  /* Store the next IRP in the list */
530  NextIrp = CONTAINING_RECORD(NextEntry, IRP, Tail.Overlay.ListEntry);
531 
532  /* Did we supply a PeekContext on insert? */
533  if (!PeekContext)
534  {
535  /* We already have the next IRP */
536  break;
537  }
538  else
539  {
540  /* Get the stack of the next IRP */
541  IrpStack = IoGetCurrentIrpStackLocation(NextIrp);
542 
543  /* Does the PeekContext match the object? */
544  if (IrpStack->FileObject == (PFILE_OBJECT)PeekContext)
545  {
546  /* We have a match */
547  break;
548  }
549 
550  /* Move to the next IRP */
551  NextIrp = NULL;
552  NextEntry = NextEntry->Flink;
553  }
554  }
555 
556  return NextIrp;
557 }
_In_ PIRP Irp
Definition: csq.h:116
IRP
Definition: iotypes.h:2462
LIST_ENTRY mList
Definition: fltmgrint.h:56
smooth NULL
Definition: ftsmooth.c:416
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
Definition: Messaging.c:560
struct _LIST_ENTRY * Flink
Definition: typedefs.h:119
* PFILE_OBJECT
Definition: iotypes.h:1954
Definition: typedefs.h:117
FLT_MUTEX_LIST_HEAD WaiterQ
Definition: fltmgrint.h:206
__drv_aliasesMem FORCEINLINE PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(_In_ PIRP Irp)
Definition: iofuncs.h:2745
PFILE_OBJECT FileObject
Definition: iotypes.h:2812
_In_opt_ PIRP _In_opt_ PVOID PeekContext
Definition: csq.h:159
IO_CSQ Csq
Definition: csqrtns.c:46

◆ FltpMsgCreate()

NTSTATUS FltpMsgCreate ( _In_ PDEVICE_OBJECT  DeviceObject,
_Inout_ PIRP  Irp 
)

Definition at line 223 of file Messaging.c.

Referenced by FltpCreate().

225 {
226  PIO_STACK_LOCATION StackPtr;
228 
229  /* Get the stack location */
230  StackPtr = IoGetCurrentIrpStackLocation(Irp);
231 
232  FLT_ASSERT(StackPtr->MajorFunction == IRP_MJ_CREATE);
233 
234  /* Check if this is a caller wanting to connect */
235  if (StackPtr->MajorFunction == IRP_MJ_CREATE)
236  {
237  /* Create the client port for this connection and exit */
238  Status = CreateClientPort(StackPtr->FileObject, Irp);
239  }
240  else
241  {
242  Status = STATUS_INVALID_PARAMETER;
243  }
244 
245  if (Status != STATUS_PENDING)
246  {
247  Irp->IoStatus.Status = Status;
248  Irp->IoStatus.Information = 0;
250  }
251 
252  return Status;
253 }
#define IRP_MJ_CREATE
Definition: rdpdr.c:44
_In_ PIRP Irp
Definition: csq.h:116
#define STATUS_INVALID_PARAMETER
Definition: udferr_usr.h:135
LONG NTSTATUS
Definition: precomp.h:26
#define IoCompleteRequest
Definition: irp.c:1240
#define STATUS_PENDING
Definition: ntstatus.h:82
Status
Definition: gdiplustypes.h:24
__drv_aliasesMem FORCEINLINE PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(_In_ PIRP Irp)
Definition: iofuncs.h:2745
PFILE_OBJECT FileObject
Definition: iotypes.h:2812
static NTSTATUS CreateClientPort(_In_ PFILE_OBJECT FileObject, _Inout_ PIRP Irp)
Definition: Messaging.c:617
#define FLT_ASSERT(_e)
Definition: fltkernel.h:49

◆ FltpMsgDispatch()

NTSTATUS FltpMsgDispatch ( _In_ PDEVICE_OBJECT  DeviceObject,
_Inout_ PIRP  Irp 
)

Definition at line 256 of file Messaging.c.

Referenced by FltpDispatch().

258 {
259  PIO_STACK_LOCATION StackPtr;
261 
262  /* Get the stack location */
263  StackPtr = IoGetCurrentIrpStackLocation(Irp);
264 
265  /* Check if this is a caller wanting to connect */
266  if (StackPtr->MajorFunction == IRP_MJ_CLOSE)
267  {
268  /* Create the client port for this connection and exit */
269  Status = CloseClientPort(StackPtr->FileObject, Irp);
270  }
271  else
272  {
273  // We don't support anything else yet
274  Status = STATUS_NOT_IMPLEMENTED;
275  }
276 
277  if (Status != STATUS_PENDING)
278  {
279  Irp->IoStatus.Status = Status;
280  Irp->IoStatus.Information = 0;
282  }
283 
284  return Status;
285 }
#define STATUS_NOT_IMPLEMENTED
Definition: ntstatus.h:225
_In_ PIRP Irp
Definition: csq.h:116
LONG NTSTATUS
Definition: precomp.h:26
#define IoCompleteRequest
Definition: irp.c:1240
#define STATUS_PENDING
Definition: ntstatus.h:82
#define IRP_MJ_CLOSE
Definition: rdpdr.c:45
Status
Definition: gdiplustypes.h:24
__drv_aliasesMem FORCEINLINE PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(_In_ PIRP Irp)
Definition: iofuncs.h:2745
PFILE_OBJECT FileObject
Definition: iotypes.h:2812
static NTSTATUS CloseClientPort(_In_ PFILE_OBJECT FileObject, _Inout_ PIRP Irp)
Definition: Messaging.c:764

◆ FltpRemoveMessageWaiter()

VOID NTAPI FltpRemoveMessageWaiter ( _In_ PIO_CSQ  Csq,
_In_ PIRP  Irp 
)

Definition at line 491 of file Messaging.c.

Referenced by InitializeMessageWaiterQueue().

493 {
494  /* Remove the IRP from the queue */
495  RemoveEntryList(&Irp->Tail.Overlay.ListEntry);
496 }
_In_ PIRP Irp
Definition: csq.h:116
FORCEINLINE BOOLEAN RemoveEntryList(_In_ PLIST_ENTRY Entry)
Definition: rtlfuncs.h:105

◆ FltpServerPortClose()

VOID NTAPI FltpServerPortClose ( _In_opt_ PEPROCESS  Process,
_In_ PVOID  Object,
_In_ ACCESS_MASK  GrantedAccess,
_In_ ULONG  ProcessHandleCount,
_In_ ULONG  SystemHandleCount 
)

Definition at line 289 of file Messaging.c.

Referenced by FltpSetupCommunicationObjects().

294 {
295  PFLT_SERVER_PORT_OBJECT PortObject;
297 
298  /* Cast the object to a server port object */
299  PortObject = (PFLT_SERVER_PORT_OBJECT)Object;
300 
301  /* Lock the connection list */
302  Lock = &PortObject->Filter->ConnectionList.mLock;
303  ExAcquireFastMutex(Lock);
304 
305  /* Remove the server port object from the list */
306  RemoveEntryList(&PortObject->FilterLink);
307 
308  /* Unlock the connection list */
309  ExReleaseFastMutex(Lock);
310 
311  /* Remove the rundown protection we added to stop the owner from tearing us down */
312  FltObjectDereference(PortObject->Filter);
313 }
VOID FLTAPI FltObjectDereference(_Inout_ PVOID Object)
Definition: Object.c:53
VOID FASTCALL ExReleaseFastMutex(IN PFAST_MUTEX FastMutex)
Definition: fmutex.c:31
FORCEINLINE BOOLEAN RemoveEntryList(_In_ PLIST_ENTRY Entry)
Definition: rtlfuncs.h:105
struct _FLT_SERVER_PORT_OBJECT * PFLT_SERVER_PORT_OBJECT
static IUnknown Object
Definition: main.c:512
IN OUT PLONG IN OUT PLONG Addend IN OUT PLONG IN LONG IN OUT PLONG IN LONG Increment IN PNDIS_RW_LOCK Lock
Definition: CrNtStubs.h:75
* PFAST_MUTEX
Definition: extypes.h:17
VOID FASTCALL ExAcquireFastMutex(IN PFAST_MUTEX FastMutex)
Definition: fmutex.c:23
FAST_MUTEX mLock
Definition: fltmgrint.h:55
FLT_MUTEX_LIST_HEAD ConnectionList
Definition: fltmgrint.h:121

◆ FltpServerPortDelete()

VOID NTAPI FltpServerPortDelete ( PVOID  Object)

Definition at line 317 of file Messaging.c.

Referenced by FltpSetupCommunicationObjects().

318 {
319  /* Decrement the filter count we added in the create routine */
322 
323 }
struct _FLT_SERVER_PORT_OBJECT * PFLT_SERVER_PORT_OBJECT
VOID FltpObjectPointerDereference(_In_ PFLT_OBJECT Object)
Definition: Object.c:335

◆ FltpSetupCommunicationObjects()

NTSTATUS FltpSetupCommunicationObjects ( _In_ PDRIVER_OBJECT  DriverObject)

Definition at line 377 of file Messaging.c.

Referenced by DriverEntry().

378 {
379  OBJECT_TYPE_INITIALIZER ObjectTypeInitializer;
380  UNICODE_STRING SymLinkName;
383 
385  {
390  };
391 
392  /* Create the server comms object type */
393  RtlZeroMemory(&ObjectTypeInitializer, sizeof(OBJECT_TYPE_INITIALIZER));
394  RtlInitUnicodeString(&Name, L"FilterConnectionPort");
395  ObjectTypeInitializer.Length = sizeof(OBJECT_TYPE_INITIALIZER);
396  ObjectTypeInitializer.InvalidAttributes = OBJ_OPENLINK;
397  ObjectTypeInitializer.GenericMapping = Mapping;
398  ObjectTypeInitializer.PoolType = NonPagedPool;
399  ObjectTypeInitializer.DefaultNonPagedPoolCharge = sizeof(FLT_SERVER_PORT_OBJECT);
400  ObjectTypeInitializer.ValidAccessMask = GENERIC_ALL;
401  ObjectTypeInitializer.CloseProcedure = FltpServerPortClose;
402  ObjectTypeInitializer.DeleteProcedure = FltpServerPortDelete;
403  Status = ObCreateObjectType(&Name, &ObjectTypeInitializer, NULL, &ServerPortObjectType);
404  if (!NT_SUCCESS(Status)) return Status;
405 
406  /* Create the client comms object type */
407  RtlZeroMemory(&ObjectTypeInitializer, sizeof(OBJECT_TYPE_INITIALIZER));
408  RtlInitUnicodeString(&Name, L"FilterCommunicationPort");
409  ObjectTypeInitializer.Length = sizeof(OBJECT_TYPE_INITIALIZER);
410  ObjectTypeInitializer.InvalidAttributes = OBJ_OPENLINK;
411  ObjectTypeInitializer.GenericMapping = Mapping;
412  ObjectTypeInitializer.PoolType = NonPagedPool;
413  ObjectTypeInitializer.DefaultNonPagedPoolCharge = sizeof(FLT_PORT_OBJECT);
414  ObjectTypeInitializer.ValidAccessMask = GENERIC_ALL;
415  ObjectTypeInitializer.CloseProcedure = FltpClientPortClose;
416  ObjectTypeInitializer.DeleteProcedure = FltpClientPortDelete;
417  Status = ObCreateObjectType(&Name, &ObjectTypeInitializer, NULL, &ClientPortObjectType);
418  if (!NT_SUCCESS(Status))
419  {
420  goto Quit;
421  }
422 
423  /* Create the device object */
424  Status = IoCreateDevice(DriverObject,
425  0,
428  0,
429  0,
431  if (NT_SUCCESS(Status))
432  {
433  /* Setup a symbolic link for the device */
434  RtlInitUnicodeString(&SymLinkName, L"\\DosDevices\\FltMgrMsg");
435  Status = IoCreateSymbolicLink(&SymLinkName, &CommsDeviceName);
436  }
437 
438 Quit:
439  if (!NT_SUCCESS(Status))
440  {
441  /* Something went wrong, undo */
442  if (CommsDeviceObject)
443  {
446  }
448  {
452  }
453 
455  {
459  }
460  }
461 
462  return Status;
463 }
LONG_PTR FASTCALL ObfDereferenceObject(IN PVOID Object)
Definition: obref.c:320
#define FLT_PORT_ALL_ACCESS
Definition: fltkernel.h:836
NTSTATUS NTAPI ObCreateObjectType(IN PUNICODE_STRING TypeName, IN POBJECT_TYPE_INITIALIZER ObjectTypeInitializer, IN PVOID Reserved, OUT POBJECT_TYPE *ObjectType)
Definition: oblife.c:1048
#define GENERIC_ALL
Definition: nt_native.h:92
#define STANDARD_RIGHTS_WRITE
Definition: nt_native.h:66
VOID NTAPI FltpClientPortDelete(PVOID Object)
Definition: Messaging.c:369
static PVOID Mapping[EMS_PHYSICAL_PAGES]
Definition: emsdrv.c:41
struct _FLT_PORT_OBJECT FLT_PORT_OBJECT
LONG NTSTATUS
Definition: precomp.h:26
VOID NTAPI FltpServerPortDelete(PVOID Object)
Definition: Messaging.c:317
PDEVICE_OBJECT CommsDeviceObject
Definition: Messaging.c:22
#define OBJ_OPENLINK
Definition: winternl.h:230
#define STANDARD_RIGHTS_EXECUTE
Definition: nt_native.h:67
struct _OBJECT_TYPE_INITIALIZER OBJECT_TYPE_INITIALIZER
UNICODE_STRING CommsDeviceName
Definition: Messaging.c:21
POBJECT_TYPE ClientPortObjectType
Definition: Messaging.c:25
struct NameRec_ * Name
Definition: cdprocs.h:464
smooth NULL
Definition: ftsmooth.c:416
static PDRIVER_OBJECT DriverObject
Definition: template.c:42
VOID NTAPI FltpServerPortClose(_In_opt_ PEPROCESS Process, _In_ PVOID Object, _In_ ACCESS_MASK GrantedAccess, _In_ ULONG ProcessHandleCount, _In_ ULONG SystemHandleCount)
Definition: Messaging.c:289
OB_CLOSE_METHOD CloseProcedure
Definition: obtypes.h:368
VOID NTAPI FltpClientPortClose(_In_opt_ PEPROCESS Process, _In_ PVOID Object, _In_ ACCESS_MASK GrantedAccess, _In_ ULONG ProcessHandleCount, _In_ ULONG SystemHandleCount)
Definition: Messaging.c:327
POBJECT_TYPE ServerPortObjectType
Definition: Messaging.c:24
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:24
static const WCHAR L[]
Definition: oid.c:1087
#define FILE_DEVICE_WPD
#define STANDARD_RIGHTS_READ
Definition: nt_native.h:65
#define SYNCHRONIZE
Definition: nt_native.h:61
Status
Definition: gdiplustypes.h:24
VOID NTAPI IoDeleteDevice(IN PDEVICE_OBJECT DeviceObject)
Definition: device.c:1250
GENERIC_MAPPING GenericMapping
Definition: obtypes.h:358
struct _FLT_SERVER_PORT_OBJECT FLT_SERVER_PORT_OBJECT
NTSTATUS NTAPI IoCreateDevice(IN PDRIVER_OBJECT DriverObject, IN ULONG DeviceExtensionSize, IN PUNICODE_STRING DeviceName, IN DEVICE_TYPE DeviceType, IN ULONG DeviceCharacteristics, IN BOOLEAN Exclusive, OUT PDEVICE_OBJECT *DeviceObject)
Definition: device.c:1031
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:261
OB_DELETE_METHOD DeleteProcedure
Definition: obtypes.h:369
ULONG DefaultNonPagedPoolCharge
Definition: obtypes.h:365
VOID NTAPI ObMakeTemporaryObject(IN PVOID ObjectBody)
Definition: oblife.c:1361

◆ InitializeMessageWaiterQueue()

static NTSTATUS InitializeMessageWaiterQueue ( _Inout_ PFLT_MESSAGE_WAITER_QUEUE  MsgWaiterQueue)
static

Definition at line 781 of file Messaging.c.

Referenced by CreateClientPort().

782 {
784 
785  /* Setup the IRP queue */
786  Status = IoCsqInitializeEx(&MsgWaiterQueue->Csq,
790  FltpAcquireMessageWaiterLock,
791  FltpReleaseMessageWaiterLock,
793  if (!NT_SUCCESS(Status))
794  {
795  return Status;
796  }
797 
798  /* Initialize the waiter queue */
799  ExInitializeFastMutex(&MsgWaiterQueue->WaiterQ.mLock);
800  InitializeListHead(&MsgWaiterQueue->WaiterQ.mList);
801  MsgWaiterQueue->WaiterQ.mCount = 0;
802 
803  /* We don't have a minimum waiter length */
804  MsgWaiterQueue->MinimumWaiterLength = (ULONG)-1;
805 
806  /* Init the semaphore and event used for counting and signaling available IRPs */
807  KeInitializeSemaphore(&MsgWaiterQueue->Semaphore, 0, MAXLONG);
808  KeInitializeEvent(&MsgWaiterQueue->Event, NotificationEvent, FALSE);
809 
810  return STATUS_SUCCESS;
811 }
PIRP NTAPI FltpGetNextMessageWaiter(_In_ PIO_CSQ Csq, _In_ PIRP Irp, _In_ PVOID PeekContext)
Definition: Messaging.c:500
#define MAXLONG
Definition: umtypes.h:116
LONG NTSTATUS
Definition: precomp.h:26
VOID NTAPI FltpRemoveMessageWaiter(_In_ PIO_CSQ Csq, _In_ PIRP Irp)
Definition: Messaging.c:491
VOID NTAPI KeInitializeSemaphore(IN PKSEMAPHORE Semaphore, IN LONG Count, IN LONG Limit)
Definition: semphobj.c:22
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:24
NTKERNELAPI NTSTATUS NTAPI IoCsqInitializeEx(_Out_ PIO_CSQ Csq, _In_ PIO_CSQ_INSERT_IRP_EX CsqInsertIrpEx, _In_ PIO_CSQ_REMOVE_IRP CsqRemoveIrp, _In_ PIO_CSQ_PEEK_NEXT_IRP CsqPeekNextIrp, _In_ PIO_CSQ_ACQUIRE_LOCK CsqAcquireLock, _In_ PIO_CSQ_RELEASE_LOCK CsqReleaseLock, _In_ PIO_CSQ_COMPLETE_CANCELED_IRP CsqCompleteCanceledIrp)
Set up a CSQ struct to initialize the queue (extended version)
Definition: csq.c:143
FORCEINLINE VOID ExInitializeFastMutex(_Out_ PFAST_MUTEX FastMutex)
Definition: exfuncs.h:274
VOID NTAPI FltpCancelMessageWaiter(_In_ PIO_CSQ Csq, _In_ PIRP Irp)
Definition: Messaging.c:603
Status
Definition: gdiplustypes.h:24
#define KeInitializeEvent(pEvt, foo, foo2)
Definition: env_spec_w32.h:477
#define InitializeListHead(ListHead)
Definition: env_spec_w32.h:944
unsigned int ULONG
Definition: retypes.h:1
return STATUS_SUCCESS
Definition: btrfs.c:2710
NTSTATUS NTAPI FltpAddMessageWaiter(_In_ PIO_CSQ Csq, _In_ PIRP Irp, _In_ PVOID InsertContext)
Definition: Messaging.c:470

Variable Documentation

◆ ClientPortObjectType

POBJECT_TYPE ClientPortObjectType

Definition at line 25 of file Messaging.c.

◆ CommsDeviceName

UNICODE_STRING CommsDeviceName = RTL_CONSTANT_STRING(L"\\FileSystem\\Filters\\FltMgrMsg")

Definition at line 21 of file Messaging.c.

◆ CommsDeviceObject

PDEVICE_OBJECT CommsDeviceObject

Definition at line 22 of file Messaging.c.

◆ ServerPortObjectType

POBJECT_TYPE ServerPortObjectType

Definition at line 24 of file Messaging.c.