85 lines
1.9 KiB
C
85 lines
1.9 KiB
C
/*++
|
|
|
|
Copyright (c) Microsoft Corporation. All rights reserved.
|
|
|
|
You may only use this code if you agree to the terms of the Windows Research Kernel Source Code License agreement (see License.txt).
|
|
If you do not agree to the terms, do not use the code.
|
|
|
|
|
|
Module Name:
|
|
|
|
vfpower.h
|
|
|
|
Abstract:
|
|
|
|
This header contains prototypes for verifying Power IRPs are handled
|
|
correctly.
|
|
|
|
--*/
|
|
|
|
VOID
|
|
VfPowerInit(
|
|
VOID
|
|
);
|
|
|
|
VOID
|
|
FASTCALL
|
|
VfPowerVerifyNewRequest(
|
|
IN PIOV_REQUEST_PACKET IovPacket,
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN PIO_STACK_LOCATION IrpLastSp OPTIONAL,
|
|
IN PIO_STACK_LOCATION IrpSp,
|
|
IN PIOV_STACK_LOCATION StackLocationData,
|
|
IN PVOID CallerAddress OPTIONAL
|
|
);
|
|
|
|
VOID
|
|
FASTCALL
|
|
VfPowerVerifyIrpStackDownward(
|
|
IN PIOV_REQUEST_PACKET IovPacket,
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN PIO_STACK_LOCATION IrpLastSp OPTIONAL,
|
|
IN PIO_STACK_LOCATION IrpSp,
|
|
IN PIOV_STACK_LOCATION RequestHeadLocationData,
|
|
IN PIOV_STACK_LOCATION StackLocationData,
|
|
IN PVOID CallerAddress OPTIONAL
|
|
);
|
|
|
|
VOID
|
|
FASTCALL
|
|
VfPowerVerifyIrpStackUpward(
|
|
IN PIOV_REQUEST_PACKET IovPacket,
|
|
IN PIO_STACK_LOCATION IrpSp,
|
|
IN PIOV_STACK_LOCATION RequestHeadLocationData,
|
|
IN PIOV_STACK_LOCATION StackLocationData,
|
|
IN BOOLEAN IsNewlyCompleted,
|
|
IN BOOLEAN RequestFinalized
|
|
);
|
|
|
|
VOID
|
|
FASTCALL
|
|
VfPowerDumpIrpStack(
|
|
IN PIO_STACK_LOCATION IrpSp
|
|
);
|
|
|
|
BOOLEAN
|
|
FASTCALL
|
|
VfPowerIsSystemRestrictedIrp(
|
|
IN PIO_STACK_LOCATION IrpSp
|
|
);
|
|
|
|
BOOLEAN
|
|
FASTCALL
|
|
VfPowerAdvanceIrpStatus(
|
|
IN PIO_STACK_LOCATION IrpSp,
|
|
IN NTSTATUS OriginalStatus,
|
|
IN OUT NTSTATUS *StatusToAdvance
|
|
);
|
|
|
|
VOID
|
|
FASTCALL
|
|
VfPowerTestStartedPdoStack(
|
|
IN PDEVICE_OBJECT PhysicalDeviceObject
|
|
);
|
|
|