78 lines
1.4 KiB
C
78 lines
1.4 KiB
C
|
/*++
|
||
|
|
||
|
Copyright (c) 2000 Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
vfdevobj.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
This header exposes function hooks that verify drivers properly manage
|
||
|
device objects.
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Adrian J. Oney (adriao) 09-May-1998
|
||
|
|
||
|
Environment:
|
||
|
|
||
|
Kernel mode
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
AdriaO 05/02/2000 - Seperated out from ntos\io\trackirp.h
|
||
|
|
||
|
--*/
|
||
|
|
||
|
typedef enum {
|
||
|
|
||
|
VF_DEVOBJ_PDO = 0,
|
||
|
VF_DEVOBJ_BUS_FILTER,
|
||
|
VF_DEVOBJ_LOWER_DEVICE_FILTER,
|
||
|
VF_DEVOBJ_LOWER_CLASS_FILTER,
|
||
|
VF_DEVOBJ_FDO,
|
||
|
VF_DEVOBJ_UPPER_DEVICE_FILTER,
|
||
|
VF_DEVOBJ_UPPER_CLASS_FILTER
|
||
|
|
||
|
} VF_DEVOBJ_TYPE, *PVF_DEVOBJ_TYPE;
|
||
|
|
||
|
VOID
|
||
|
VerifierIoAttachDeviceToDeviceStack(
|
||
|
IN PDEVICE_OBJECT NewDevice,
|
||
|
IN PDEVICE_OBJECT ExistingDevice
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
VerifierIoDetachDevice(
|
||
|
IN PDEVICE_OBJECT LowerDevice
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
VerifierIoDeleteDevice(
|
||
|
IN PDEVICE_OBJECT DeviceObject
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
VfDevObjPreAddDevice(
|
||
|
IN PDEVICE_OBJECT PhysicalDeviceObject,
|
||
|
IN PDRIVER_OBJECT DriverObject,
|
||
|
IN PDRIVER_ADD_DEVICE AddDeviceFunction,
|
||
|
IN VF_DEVOBJ_TYPE DevObjType
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
VfDevObjPostAddDevice(
|
||
|
IN PDEVICE_OBJECT PhysicalDeviceObject,
|
||
|
IN PDRIVER_OBJECT DriverObject,
|
||
|
IN PDRIVER_ADD_DEVICE AddDeviceFunction,
|
||
|
IN VF_DEVOBJ_TYPE DevObjType,
|
||
|
IN NTSTATUS Result
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
VfDevObjAdjustFdoForVerifierFilters(
|
||
|
IN OUT PDEVICE_OBJECT *FunctionalDeviceObject
|
||
|
);
|
||
|
|