#include "iop.h"
Go to the source code of this file.
Defines | |
#define | RELATION_FLAGS 0x00000003 |
#define | RELATION_FLAG_TAGGED 0x00000001 |
#define | RELATION_FLAG_DESCENDANT 0x00000002 |
Functions | |
NTSTATUS | IopAddRelationToList (IN PRELATION_LIST List, IN PDEVICE_OBJECT DeviceObject, IN BOOLEAN DirectDescendant, IN BOOLEAN Tagged) |
PRELATION_LIST | IopAllocateRelationList (VOID) |
NTSTATUS | IopCompressRelationList (IN OUT PRELATION_LIST *List) |
BOOLEAN | IopEnumerateRelations (IN PRELATION_LIST List, IN OUT PULONG Marker, OUT PDEVICE_OBJECT *DeviceObject, OUT BOOLEAN *DirectDescendant, OPTIONAL OUT BOOLEAN *Tagged, OPTIONAL IN BOOLEAN Reverse) |
VOID | IopFreeRelationList (IN PRELATION_LIST List) |
ULONG | IopGetRelationsCount (PRELATION_LIST List) |
ULONG | IopGetRelationsTaggedCount (PRELATION_LIST List) |
BOOLEAN | IopIsRelationInList (PRELATION_LIST List, PDEVICE_OBJECT DeviceObject) |
NTSTATUS | IopMergeRelationLists (IN OUT PRELATION_LIST TargetList, IN PRELATION_LIST SourceList, IN BOOLEAN Tagged) |
NTSTATUS | IopRemoveIndirectRelationsFromList (IN PRELATION_LIST List) |
NTSTATUS | IopRemoveRelationFromList (PRELATION_LIST List, PDEVICE_OBJECT DeviceObject) |
VOID | IopSetAllRelationsTags (PRELATION_LIST List, BOOLEAN Tagged) |
NTSTATUS | IopSetRelationsTag (IN PRELATION_LIST List, IN PDEVICE_OBJECT DeviceObject, IN BOOLEAN Tagged) |
|
Definition at line 52 of file pnprlist.c. Referenced by IopAddRelationToList(), IopEnumerateRelations(), and IopRemoveIndirectRelationsFromList(). |
|
Definition at line 51 of file pnprlist.c. Referenced by IopAddRelationToList(), IopEnumerateRelations(), IopRemoveIndirectRelationsFromList(), IopRemoveRelationFromList(), IopSetAllRelationsTags(), and IopSetRelationsTag(). |
|
Definition at line 49 of file pnprlist.c. Referenced by IopAddRelationToList(), IopEnumerateRelations(), IopFreeRelationList(), IopIsRelationInList(), IopMergeRelationLists(), IopRemoveIndirectRelationsFromList(), IopRemoveRelationFromList(), and IopSetRelationsTag(). |
|
Definition at line 55 of file pnprlist.c. References ASSERT, _RELATION_LIST_ENTRY::Count, _RELATION_LIST_ENTRY::Devices, ExAllocatePool, IopNumberDeviceNodes, _DEVICE_NODE::Level, List, _RELATION_LIST_ENTRY::MaxCount, NULL, ObReferenceObject, PAGED_CODE, PagedPool, PRELATION_LIST_ENTRY, RELATION_FLAG_DESCENDANT, RELATION_FLAG_TAGGED, RELATION_FLAGS, and RELATION_LIST_ENTRY. Referenced by IopInvalidateRelationsInList(), IopMergeRelationLists(), and IopProcessRelation().
|
|
Definition at line 239 of file pnprlist.c. References ExAllocatePool, IopMaxDeviceNodeLevel, _RELATION_LIST::MaxLevel, NULL, PAGED_CODE, PagedPool, and RELATION_LIST. Referenced by IopInvalidateRelationsInList(), and IopLockDeviceRemovalRelations().
|
|
Definition at line 286 of file pnprlist.c. References ASSERT, _RELATION_LIST_ENTRY::Count, _RELATION_LIST::Count, _RELATION_LIST_ENTRY::Devices, _RELATION_LIST::Entries, ExAllocatePool, ExFreePool(), _RELATION_LIST::FirstLevel, List, _RELATION_LIST_ENTRY::MaxCount, _RELATION_LIST::MaxLevel, NULL, PAGED_CODE, PagedPool, PDEVICE_OBJECT, PRELATION_LIST_ENTRY, and _RELATION_LIST::TagCount. Referenced by IopLockDeviceRemovalRelations().
|
|
Definition at line 441 of file pnprlist.c. References ASSERT, _RELATION_LIST_ENTRY::Count, _RELATION_LIST_ENTRY::Devices, FALSE, List, NULL, PAGED_CODE, RELATION_FLAG_DESCENDANT, RELATION_FLAG_TAGGED, RELATION_FLAGS, and TRUE.
|
|
Definition at line 709 of file pnprlist.c. References _RELATION_LIST_ENTRY::Count, _RELATION_LIST_ENTRY::Devices, ExFreePool(), List, NULL, ObDereferenceObject, PAGED_CODE, and RELATION_FLAGS. Referenced by IopDelayedRemoveWorker(), IopInvalidateRelationsInList(), IopLockDeviceRemovalRelations(), IopProcessCompletedEject(), and IopProcessRelation().
|
|
Definition at line 768 of file pnprlist.c. References List, and PAGED_CODE.
|
|
Definition at line 795 of file pnprlist.c. References List, and PAGED_CODE.
|
|
Definition at line 823 of file pnprlist.c. References _RELATION_LIST_ENTRY::Count, _DEVOBJ_EXTENSION::DeviceNode, _DEVICE_OBJECT::DeviceObjectExtension, _RELATION_LIST_ENTRY::Devices, FALSE, _DEVICE_NODE::Level, List, NULL, PAGED_CODE, RELATION_FLAGS, and TRUE.
|
|
Definition at line 900 of file pnprlist.c. References ASSERT, _RELATION_LIST_ENTRY::Count, _RELATION_LIST_ENTRY::Devices, FALSE, IopAddRelationToList(), NT_SUCCESS, NTSTATUS(), NULL, PAGED_CODE, and RELATION_FLAGS. Referenced by IopProcessRelation().
|
|
Definition at line 1013 of file pnprlist.c. References _RELATION_LIST_ENTRY::Count, _RELATION_LIST_ENTRY::Devices, ExFreePool(), List, NULL, ObDereferenceObject, PAGED_CODE, RELATION_FLAG_DESCENDANT, RELATION_FLAG_TAGGED, and RELATION_FLAGS.
|
|
Definition at line 1090 of file pnprlist.c. References ASSERT, _RELATION_LIST_ENTRY::Count, _DEVOBJ_EXTENSION::DeviceNode, _DEVICE_OBJECT::DeviceObjectExtension, _RELATION_LIST_ENTRY::Devices, ExFreePool(), _DEVICE_NODE::Level, List, NULL, ObDereferenceObject, PAGED_CODE, RELATION_FLAG_TAGGED, and RELATION_FLAGS.
|
|
Definition at line 1166 of file pnprlist.c. References _RELATION_LIST_ENTRY::Count, _RELATION_LIST_ENTRY::Devices, List, NULL, PAGED_CODE, and RELATION_FLAG_TAGGED.
|
|
Definition at line 1232 of file pnprlist.c. References _RELATION_LIST_ENTRY::Count, _RELATION_LIST_ENTRY::Devices, _DEVICE_NODE::Level, List, NULL, PAGED_CODE, RELATION_FLAG_TAGGED, and RELATION_FLAGS. Referenced by IopChainDereferenceComplete(), and IopInvalidateRelationsInList().
|