71 lines
1.4 KiB
C
71 lines
1.4 KiB
C
|
/*++
|
||
|
|
||
|
Copyright (c) 2000 Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
vfbugcheck.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
This header defines the prototypes and constants required for verifier
|
||
|
bugchecks.
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Adrian J. Oney (adriao) 20-Apr-1998
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
AdriaO 02/21/2000 - Moved from ntos\io\ioassert.h
|
||
|
|
||
|
--*/
|
||
|
|
||
|
#ifndef _VFBUGCHECK_H_
|
||
|
#define _VFBUGCHECK_H_
|
||
|
|
||
|
extern LONG IovpInitCalled;
|
||
|
|
||
|
#define KDASSERT(x) { if (KdDebuggerEnabled) { ASSERT(x) ; } }
|
||
|
|
||
|
#define ASSERT_SPINLOCK_HELD(x)
|
||
|
|
||
|
#define DCPARAM_ROUTINE 0x00000001
|
||
|
#define DCPARAM_IRP 0x00000008
|
||
|
#define DCPARAM_IRPSNAP 0x00000040
|
||
|
#define DCPARAM_DEVOBJ 0x00000200
|
||
|
#define DCPARAM_STATUS 0x00001000
|
||
|
#define DCPARAM_ULONG 0x00008000
|
||
|
#define DCPARAM_PVOID 0x00040000
|
||
|
|
||
|
#define WDM_FAIL_ROUTINE(ParenWrappedParamList) \
|
||
|
{ \
|
||
|
if (IovpInitCalled) { \
|
||
|
VfBugcheckThrowIoException##ParenWrappedParamList;\
|
||
|
} \
|
||
|
}
|
||
|
|
||
|
VOID
|
||
|
FASTCALL
|
||
|
VfBugcheckInit(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
VfBugcheckThrowIoException(
|
||
|
IN DCERROR_ID MessageIndex,
|
||
|
IN ULONG MessageParameterMask,
|
||
|
...
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
VfBugcheckThrowException(
|
||
|
IN PVFMESSAGE_TEMPLATE_TABLE MessageTable OPTIONAL,
|
||
|
IN VFMESSAGE_ERRORID MessageID,
|
||
|
IN PCSTR MessageParamFormat,
|
||
|
IN va_list * MessageParameters
|
||
|
);
|
||
|
|
||
|
#endif // _VFBUGCHECK_H_
|
||
|
|