|
#define | _IO_DEBUG_ 0x00 |
|
#define | IO_IRP_DEBUG 0x01 |
|
#define | IO_FILE_DEBUG 0x02 |
|
#define | IO_API_DEBUG 0x04 |
|
#define | IO_CTL_DEBUG 0x08 |
|
#define | IOTRACE(x, fmt, ...) DPRINT(fmt, ##__VA_ARGS__) |
|
#define | ENUM_ROOT L"\\Registry\\Machine\\System\\CurrentControlSet\\Enum" |
|
#define | IO_METHOD_FROM_CTL_CODE(c) (c & 0x00000003) |
|
#define | RD_NO_XIPROM_DESCRIPTOR 1 |
|
#define | RD_NO_RAMDISK_DRIVER 2 |
|
#define | RD_FSCTL_FAILED 3 |
|
#define | RD_GUID_CONVERT_FAILED 4 |
|
#define | RD_SYMLINK_CREATE_FAILED 5 |
|
#define | IOP_MAX_REPARSE_TRAVERSAL 0x20 |
|
#define | IOP_USE_TOP_LEVEL_DEVICE_HINT 0x01 |
|
#define | IOP_CREATE_FILE_OBJECT_EXTENSION 0x02 |
|
#define | IopAllocateMdlFromLookaside ObpAllocateObjectCreateInfoBuffer |
|
#define | IopFreeMdlFromLookaside ObpFreeCapturedAttributes |
|
#define | IsIrpSynchronous(Irp, FileObject) |
|
#define | IoGetDevObjExtension(DeviceObject) |
|
#define | IoGetDrvObjExtension(DriverObject) |
|
#define | IopDeviceNodeSetFlag(DeviceNode, Flag) ((DeviceNode)->Flags |= (Flag)) |
|
#define | IopDeviceNodeClearFlag(DeviceNode, Flag) ((DeviceNode)->Flags &= ~(Flag)) |
|
#define | IopDeviceNodeHasFlag(DeviceNode, Flag) (((DeviceNode)->Flags & (Flag)) > 0) |
|
#define | IopDeviceNodeSetUserFlag(DeviceNode, UserFlag) ((DeviceNode)->UserFlags |= (UserFlag)) |
|
#define | IopDeviceNodeClearUserFlag(DeviceNode, UserFlag) ((DeviceNode)->UserFlags &= ~(UserFlag)) |
|
#define | IopDeviceNodeHasUserFlag(DeviceNode, UserFlag) (((DeviceNode)->UserFlags & (UserFlag)) > 0) |
|
#define | IopDeviceNodeSetProblem(DeviceNode, Problem) ((DeviceNode)->Problem |= (Problem)) |
|
#define | IopDeviceNodeClearProblem(DeviceNode, Problem) ((DeviceNode)->Problem &= ~(Problem)) |
|
#define | IopDeviceNodeHasProblem(DeviceNode, Problem) (((DeviceNode)->Problem & (Problem)) > 0) |
|
#define | IopInitDeviceTreeTraverseContext( _DeviceTreeTraverseContext, _DeviceNode, _Action, _Context) |
|
#define | IopIsValidPhysicalDeviceObject(PhysicalDeviceObject) |
|
|
ULONG NTAPI | PnpDetermineResourceListSize (IN PCM_RESOURCE_LIST ResourceList) |
|
NTSTATUS NTAPI | IopAssignDeviceResources (IN PDEVICE_NODE DeviceNode) |
|
NTSTATUS NTAPI | IopFixupResourceListWithRequirements (IN PIO_RESOURCE_REQUIREMENTS_LIST RequirementsList, OUT PCM_RESOURCE_LIST *ResourceList) |
|
NTSTATUS NTAPI | IopDetectResourceConflict (IN PCM_RESOURCE_LIST ResourceList, IN BOOLEAN Silent, OUT OPTIONAL PCM_PARTIAL_RESOURCE_DESCRIPTOR ConflictingDescriptor) |
|
NTSTATUS | PiCallDriverAddDevice (_In_ PDEVICE_NODE DeviceNode, _In_ BOOLEAN LoadDrivers) |
| Loads all drivers for a device node (actual service and filters) and calls their AddDevice routine. More...
|
|
NTSTATUS NTAPI | IopInitializePlugPlayServices (VOID) |
|
BOOLEAN NTAPI | PpInitSystem (VOID) |
|
VOID | PnpInit2 (VOID) |
|
VOID | IopInitDriverImplementation (VOID) |
|
NTSTATUS | IopGetSystemPowerDeviceObject (IN PDEVICE_OBJECT *DeviceObject) |
|
PDEVICE_NODE | PipAllocateDeviceNode (IN PDEVICE_OBJECT PhysicalDeviceObject) |
|
VOID | PiInsertDevNode (_In_ PDEVICE_NODE DeviceNode, _In_ PDEVICE_NODE ParentNode) |
|
VOID | PiSetDevNodeProblem (_In_ PDEVICE_NODE DeviceNode, _In_ UINT32 Problem) |
|
VOID | PiClearDevNodeProblem (_In_ PDEVICE_NODE DeviceNode) |
|
NTSTATUS | IopFreeDeviceNode (IN PDEVICE_NODE DeviceNode) |
|
NTSTATUS NTAPI | IopQueryDeviceCapabilities (PDEVICE_NODE DeviceNode, PDEVICE_CAPABILITIES DeviceCaps) |
|
NTSTATUS NTAPI | IopSynchronousCall (IN PDEVICE_OBJECT DeviceObject, IN PIO_STACK_LOCATION IoStackLocation, OUT PVOID *Information) |
|
NTSTATUS NTAPI | IopInitiatePnpIrp (IN PDEVICE_OBJECT DeviceObject, IN PIO_STATUS_BLOCK IoStatusBlock, IN UCHAR MinorFunction, IN PIO_STACK_LOCATION Stack) |
|
PDEVICE_NODE FASTCALL | IopGetDeviceNode (IN PDEVICE_OBJECT DeviceObject) |
|
NTSTATUS | IopActionConfigureChildServices (IN PDEVICE_NODE DeviceNode, IN PVOID Context) |
|
NTSTATUS | IopActionInitChildServices (IN PDEVICE_NODE DeviceNode, IN PVOID Context) |
|
NTSTATUS | IoCreateDriverList (VOID) |
|
NTSTATUS | IoDestroyDriverList (VOID) |
|
NTSTATUS | IopInitPlugPlayEvents (VOID) |
|
NTSTATUS | IopQueueTargetDeviceEvent (const GUID *Guid, PUNICODE_STRING DeviceIds) |
|
NTSTATUS | IopInitializePnpServices (IN PDEVICE_NODE DeviceNode) |
|
NTSTATUS NTAPI | IopOpenRegistryKeyEx (PHANDLE KeyHandle, HANDLE ParentKey, PUNICODE_STRING Name, ACCESS_MASK DesiredAccess) |
|
NTSTATUS NTAPI | IopGetRegistryValue (IN HANDLE Handle, IN PWSTR ValueName, OUT PKEY_VALUE_FULL_INFORMATION *Information) |
|
NTSTATUS NTAPI | IopCreateRegistryKeyEx (OUT PHANDLE Handle, IN HANDLE BaseHandle OPTIONAL, IN PUNICODE_STRING KeyName, IN ACCESS_MASK DesiredAccess, IN ULONG CreateOptions, OUT PULONG Disposition OPTIONAL) |
|
NTSTATUS | IopTraverseDeviceTree (PDEVICETREE_TRAVERSE_CONTEXT Context) |
|
NTSTATUS NTAPI | IopCreateDeviceKeyPath (IN PCUNICODE_STRING RegistryPath, IN ULONG CreateOptions, OUT PHANDLE Handle) |
|
NTSTATUS NTAPI | IopUpdateRootKey (VOID) |
|
NTSTATUS NTAPI | PiInitCacheGroupInformation (VOID) |
|
USHORT NTAPI | PpInitGetGroupOrderIndex (IN HANDLE ServiceHandle) |
|
USHORT NTAPI | PipGetDriverTagPriority (IN HANDLE ServiceHandle) |
|
NTSTATUS NTAPI | PnpRegMultiSzToUnicodeStrings (IN PKEY_VALUE_FULL_INFORMATION KeyValueInformation, OUT PUNICODE_STRING *UnicodeStringList, OUT PULONG UnicodeStringCount) |
|
BOOLEAN NTAPI | PnpRegSzToString (IN PWCHAR RegSzData, IN ULONG RegSzLength, OUT PUSHORT StringLength OPTIONAL) |
|
NTSTATUS NTAPI | IopCreateArcNames (IN PLOADER_PARAMETER_BLOCK LoaderBlock) |
|
NTSTATUS NTAPI | IopReassignSystemRoot (IN PLOADER_PARAMETER_BLOCK LoaderBlock, OUT PANSI_STRING NtBootPath) |
|
BOOLEAN NTAPI | IoInitSystem (IN PLOADER_PARAMETER_BLOCK LoaderBlock) |
|
BOOLEAN NTAPI | IopVerifyDiskSignature (IN PDRIVE_LAYOUT_INFORMATION_EX DriveLayout, IN PARC_DISK_SIGNATURE ArcDiskSignature, OUT PULONG Signature) |
|
BOOLEAN NTAPI | IoInitializeCrashDump (IN HANDLE PageFileHandle) |
|
VOID | PiInitializeNotifications (VOID) |
|
VOID NTAPI | IopReadyDeviceObjects (IN PDRIVER_OBJECT Driver) |
|
NTSTATUS | IopStartDevice (IN PDEVICE_NODE DeviceNode) |
|
NTSTATUS | IopStopDevice (IN PDEVICE_NODE DeviceNode) |
|
NTSTATUS | IopRemoveDevice (IN PDEVICE_NODE DeviceNode) |
|
PVPB NTAPI | IopCheckVpbMounted (IN POPEN_PACKET OpenPacket, IN PDEVICE_OBJECT DeviceObject, IN PUNICODE_STRING RemainingName, OUT PNTSTATUS Status) |
|
NTSTATUS NTAPI | IopMountVolume (IN PDEVICE_OBJECT DeviceObject, IN BOOLEAN AllowRawMount, IN BOOLEAN DeviceIsLocked, IN BOOLEAN Alertable, OUT PVPB *Vpb) |
|
PVOID | IoOpenSymlink (IN PVOID SymbolicLink) |
|
PVOID | IoOpenFileOnDevice (IN PVOID SymbolicLink, IN PWCHAR Name) |
|
NTSTATUS NTAPI | IopCreateVpb (IN PDEVICE_OBJECT DeviceObject) |
|
VOID NTAPI | IopDereferenceVpbAndFree (IN PVPB Vpb) |
|
VOID NTAPI | IoInitFileSystemImplementation (VOID) |
|
VOID NTAPI | IoInitVpbImplementation (VOID) |
|
NTSTATUS NTAPI | IopReferenceDeviceObject (IN PDEVICE_OBJECT DeviceObject) |
|
VOID NTAPI | IopDereferenceDeviceObject (IN PDEVICE_OBJECT DeviceObject, IN BOOLEAN ForceUnload) |
|
NTSTATUS NTAPI | IopGetRelatedTargetDevice (IN PFILE_OBJECT FileObject, OUT PDEVICE_NODE *DeviceNode) |
|
NTSTATUS NTAPI | IoGetRelatedTargetDevice (IN PFILE_OBJECT FileObject, OUT PDEVICE_OBJECT *DeviceObject) |
|
VOID NTAPI | IopUnloadDevice (IN PDEVICE_OBJECT DeviceObject) |
|
PDEVICE_OBJECT NTAPI | IopGetDeviceAttachmentBase (IN PDEVICE_OBJECT DeviceObject) |
|
NTSTATUS NTAPI | IopCleanupFailedIrp (IN PFILE_OBJECT FileObject, IN PKEVENT EventObject, IN PVOID Buffer OPTIONAL) |
|
VOID NTAPI | IopAbortInterruptedIrp (IN PKEVENT EventObject, IN PIRP Irp) |
|
PIRP NTAPI | IopAllocateIrpMustSucceed (IN CCHAR StackSize) |
|
BOOLEAN NTAPI | IopInitializeReserveIrp (IN PRESERVE_IRP_ALLOCATOR ReserveIrpAllocator) |
|
PIRP NTAPI | IopAllocateReserveIrp (IN CCHAR StackSize) |
|
VOID | IoInitShutdownNotification (VOID) |
|
VOID NTAPI | IoShutdownSystem (IN ULONG Phase) |
|
VOID NTAPI | IopShutdownBaseFileSystems (IN PLIST_ENTRY ListHead) |
|
VOID | IopInitBootLog (IN BOOLEAN StartBootLog) |
|
VOID | IopStartBootLog (VOID) |
|
VOID | IopStopBootLog (VOID) |
|
VOID | IopBootLog (IN PUNICODE_STRING DriverName, IN BOOLEAN Success) |
|
VOID | IopSaveBootLogToFile (VOID) |
|
VOID NTAPI | IoCancelThreadIo (IN PETHREAD Thread) |
|
VOID | IoInitCancelHandling (VOID) |
|
VOID NTAPI | IopCompleteRequest (IN PKAPC Apc, IN PKNORMAL_ROUTINE *NormalRoutine, IN PVOID *NormalContext, IN PVOID *SystemArgument1, IN PVOID *SystemArgument2) |
|
VOID NTAPI | IopInitErrorLog (VOID) |
|
VOID NTAPI | IopLogWorker (IN PVOID Parameter) |
|
BOOLEAN | RawFsIsRawFileSystemDeviceObject (IN PDEVICE_OBJECT DeviceObject) |
|
NTSTATUS NTAPI | RawFsDriverEntry (IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath) |
|
NTSTATUS NTAPI | PnpRootDriverEntry (IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath) |
|
NTSTATUS | PnpRootCreateDevice (IN PUNICODE_STRING ServiceName, IN OPTIONAL PDRIVER_OBJECT DriverObject, OUT PDEVICE_OBJECT *PhysicalDeviceObject, OUT OPTIONAL PUNICODE_STRING FullInstancePath) |
|
NTSTATUS | PnpRootRegisterDevice (IN PDEVICE_OBJECT DeviceObject) |
|
VOID FASTCALL | IopInitializeBootDrivers (VOID) |
|
VOID FASTCALL | IopInitializeSystemDrivers (VOID) |
|
VOID NTAPI | IopDeleteDriver (IN PVOID ObjectBody) |
|
NTSTATUS | IopLoadDriver (_In_ HANDLE ServiceHandle, _Out_ PDRIVER_OBJECT *DriverObject) |
|
NTSTATUS | IopGetDriverNames (_In_ HANDLE ServiceHandle, _Out_ PUNICODE_STRING DriverName, _Out_opt_ PUNICODE_STRING ServiceName) |
|
NTSTATUS | IopInitializeDriverModule (_In_ PLDR_DATA_TABLE_ENTRY ModuleObject, _In_ HANDLE ServiceHandle, _Out_ PDRIVER_OBJECT *DriverObject, _Out_ NTSTATUS *DriverEntryStatus) |
| Initialize a loaded driver. More...
|
|
NTSTATUS FASTCALL | IopAttachFilterDrivers (IN PDEVICE_NODE DeviceNode, IN HANDLE EnumSubKey, IN HANDLE ClassKey, IN BOOLEAN Lower) |
|
VOID NTAPI | IopReinitializeDrivers (VOID) |
|
VOID NTAPI | IopReinitializeBootDrivers (VOID) |
|
VOID NTAPI | IopDeleteDevice (IN PVOID ObjectBody) |
|
NTSTATUS NTAPI | IopParseDevice (IN PVOID ParseObject, IN PVOID ObjectType, IN OUT PACCESS_STATE AccessState, IN KPROCESSOR_MODE AccessMode, IN ULONG Attributes, IN OUT PUNICODE_STRING CompleteName, IN OUT PUNICODE_STRING RemainingName, IN OUT PVOID Context, IN PSECURITY_QUALITY_OF_SERVICE SecurityQos OPTIONAL, OUT PVOID *Object) |
|
NTSTATUS NTAPI | IopParseFile (IN PVOID ParseObject, IN PVOID ObjectType, IN OUT PACCESS_STATE AccessState, IN KPROCESSOR_MODE AccessMode, IN ULONG Attributes, IN OUT PUNICODE_STRING CompleteName, IN OUT PUNICODE_STRING RemainingName, IN OUT PVOID Context OPTIONAL, IN PSECURITY_QUALITY_OF_SERVICE SecurityQos OPTIONAL, OUT PVOID *Object) |
|
VOID NTAPI | IopDeleteFile (IN PVOID ObjectBody) |
|
NTSTATUS NTAPI | IopGetSetSecurityObject (IN PVOID ObjectBody, IN SECURITY_OPERATION_CODE OperationCode, IN PSECURITY_INFORMATION SecurityInformation, IN OUT PSECURITY_DESCRIPTOR SecurityDescriptor, IN OUT PULONG BufferLength, OUT PSECURITY_DESCRIPTOR *OldSecurityDescriptor, IN POOL_TYPE PoolType, IN OUT PGENERIC_MAPPING GenericMapping) |
|
NTSTATUS NTAPI | IopQueryName (IN PVOID ObjectBody, IN BOOLEAN HasName, OUT POBJECT_NAME_INFORMATION ObjectNameInfo, IN ULONG Length, OUT PULONG ReturnLength, IN KPROCESSOR_MODE PreviousMode) |
|
NTSTATUS NTAPI | IopQueryNameInternal (IN PVOID ObjectBody, IN BOOLEAN HasName, IN BOOLEAN QueryDosName, OUT POBJECT_NAME_INFORMATION ObjectNameInfo, IN ULONG Length, OUT PULONG ReturnLength, IN KPROCESSOR_MODE PreviousMode) |
|
VOID NTAPI | IopCloseFile (IN PEPROCESS Process OPTIONAL, IN PVOID Object, IN ACCESS_MASK GrantedAccess, IN ULONG ProcessHandleCount, IN ULONG SystemHandleCount) |
|
NTSTATUS NTAPI | IopAcquireFileObjectLock (_In_ PFILE_OBJECT FileObject, _In_ KPROCESSOR_MODE AccessMode, _In_ BOOLEAN Alertable, _Out_ PBOOLEAN LockFailed) |
|
PVOID NTAPI | IoGetFileObjectFilterContext (IN PFILE_OBJECT FileObject) |
|
NTSTATUS NTAPI | IoChangeFileObjectFilterContext (IN PFILE_OBJECT FileObject, IN PVOID FilterContext, IN BOOLEAN Define) |
|
VOID NTAPI | IopDoNameTransmogrify (IN PIRP Irp, IN PFILE_OBJECT FileObject, IN PREPARSE_DATA_BUFFER DataBuffer) |
|
NTSTATUS NTAPI | IoComputeDesiredAccessFileObject (IN PFILE_OBJECT FileObject, IN PACCESS_MASK DesiredAccess) |
|
NTSTATUS NTAPI | IopGetFileInformation (IN PFILE_OBJECT FileObject, IN ULONG Length, IN FILE_INFORMATION_CLASS FileInfoClass, OUT PVOID Buffer, OUT PULONG ReturnedLength) |
|
BOOLEAN NTAPI | IopVerifyDeviceObjectOnStack (IN PDEVICE_OBJECT BaseDeviceObject, IN PDEVICE_OBJECT TopDeviceObjectHint) |
|
VOID FASTCALL | IopInitTimerImplementation (VOID) |
|
VOID NTAPI | IopRemoveTimerFromTimerList (IN PIO_TIMER Timer) |
|
VOID NTAPI | IopDeleteIoCompletion (PVOID ObjectBody) |
|
NTSTATUS NTAPI | IoSetIoCompletion (IN PVOID IoCompletion, IN PVOID KeyContext, IN PVOID ApcContext, IN NTSTATUS IoStatus, IN ULONG_PTR IoStatusInformation, IN BOOLEAN Quota) |
|
NTSTATUS NTAPI | IopStartRamdisk (IN PLOADER_PARAMETER_BLOCK LoaderBlock) |
|
NTSTATUS NTAPI | IopFetchConfigurationInformation (OUT PWSTR *SymbolicLinkList, IN GUID Guid, IN ULONG ExpectedInterfaces, IN PULONG Interfaces) |
|
VOID NTAPI | IopStoreSystemPartitionInformation (IN PUNICODE_STRING NtSystemPartitionDeviceName, IN PUNICODE_STRING OsLoaderPathName) |
|
VOID | PiQueueDeviceAction (_In_ PDEVICE_OBJECT DeviceObject, _In_ DEVICE_ACTION Action, _In_opt_ PKEVENT CompletionEvent, _Out_opt_ NTSTATUS *CompletionStatus) |
| Queue a device operation to a worker thread. More...
|
|
NTSTATUS | PiPerformSyncDeviceAction (_In_ PDEVICE_OBJECT DeviceObject, _In_ DEVICE_ACTION Action) |
| Perfom a device operation synchronously via PiQueueDeviceAction. More...
|
|
VOID | PiNotifyDeviceInterfaceChange (_In_ LPCGUID Event, _In_ LPCGUID InterfaceClassGuid, _In_ PUNICODE_STRING SymbolicLinkName) |
| Delivers the event to all drivers subscribed to EventCategoryDeviceInterfaceChange. More...
|
|
VOID | PiNotifyHardwareProfileChange (_In_ LPCGUID Event) |
| Delivers the event to all drivers subscribed to EventCategoryHardwareProfileChange PnP event. More...
|
|
VOID | PiNotifyTargetDeviceChange (_In_ LPCGUID Event, _In_ PDEVICE_OBJECT DeviceObject, _In_opt_ PTARGET_DEVICE_CUSTOM_NOTIFICATION CustomNotification) |
| Delivers the event to all drivers subscribed to EventCategoryTargetDeviceChange PnP event. More...
|
|