101 lines
2.2 KiB
C
101 lines
2.2 KiB
C
|
/*++
|
|||
|
|
|||
|
Copyright (c) 1989 Microsoft Corporation
|
|||
|
|
|||
|
Module Name:
|
|||
|
|
|||
|
DfsAssert.h
|
|||
|
|
|||
|
Abstract:
|
|||
|
|
|||
|
This module declares the prototypes and global data used by the special RDBSS assert facilties.
|
|||
|
|
|||
|
Author:
|
|||
|
|
|||
|
Rohan Phillips [Rohanp] 18-Jan-2001
|
|||
|
|
|||
|
Revision History:
|
|||
|
|
|||
|
|
|||
|
Notes:
|
|||
|
|
|||
|
|
|||
|
--*/
|
|||
|
|
|||
|
#ifndef _DFSASSERT_INCLUDED_
|
|||
|
#define _DFSASSERT_INCLUDED_
|
|||
|
|
|||
|
VOID DfsDbgBreakPoint(PCHAR FileName, ULONG LineNumber);
|
|||
|
|
|||
|
//only do this is my routine is the one of interest.......
|
|||
|
|
|||
|
#ifdef DFS_ASSERTS
|
|||
|
|
|||
|
#if !DBG
|
|||
|
|
|||
|
//here, ntifs will have already defined the asserts away..........
|
|||
|
// so, we just put them back.....this code is duplicated from ntifs.h
|
|||
|
|
|||
|
|
|||
|
#undef ASSERT
|
|||
|
#define ASSERT( exp ) \
|
|||
|
if (!(exp)) \
|
|||
|
DfsDbgBreakPoint(__FILE__,__LINE__)
|
|||
|
|
|||
|
#undef ASSERTMSG
|
|||
|
#define ASSERTMSG( msg, exp ) \
|
|||
|
if (!(exp)) \
|
|||
|
DfsDbgBreakPoint(__FILE__,__LINE__)
|
|||
|
|
|||
|
#endif //!DBG
|
|||
|
|
|||
|
|
|||
|
//this will make asserts go to our routine
|
|||
|
|
|||
|
#define RtlAssert DfsAssert
|
|||
|
VOID
|
|||
|
DfsAssert(
|
|||
|
IN PVOID FailedAssertion,
|
|||
|
IN PVOID FileName,
|
|||
|
IN ULONG LineNumber,
|
|||
|
IN PCHAR Message OPTIONAL
|
|||
|
);
|
|||
|
|
|||
|
#endif //ifdef DFS_ASSERTS
|
|||
|
|
|||
|
|
|||
|
#if DBG
|
|||
|
ULONG DfsDebugVector = 0;
|
|||
|
#define DFS_TRACE_ERROR 0x00000001
|
|||
|
#define DFS_TRACE_DEBUG 0x00000002
|
|||
|
#define DFS_TRACE_CONTEXT 0x00000004
|
|||
|
#define DFS_TRACE_DETAIL 0x00000008
|
|||
|
#define DFS_TRACE_ENTRYEXIT 0x00000010
|
|||
|
#define DFS_TRACE_WARNING 0x00000020
|
|||
|
#define DFS_TRACE_ALL 0xffffffff
|
|||
|
#define DfsDbgTrace(_x_, _y_) { \
|
|||
|
if (_x_ & DfsDebugVector) { \
|
|||
|
DbgPrint _y_; \
|
|||
|
} \
|
|||
|
}
|
|||
|
#else
|
|||
|
#define DfsDbgTrace(_x_, _y_)
|
|||
|
#endif
|
|||
|
|
|||
|
#define DfsTraceEnter(func) \
|
|||
|
PCHAR __pszFunction = func; \
|
|||
|
DfsDbgTrace(DFS_TRACE_ENTRYEXIT,("Entering %s\n",__pszFunction));
|
|||
|
|
|||
|
#define DfsTraceLeave(status) \
|
|||
|
DfsDbgTrace(DFS_TRACE_ENTRYEXIT,("Leaving %s Status -> %08lx\n",__pszFunction,status))
|
|||
|
|
|||
|
|
|||
|
|
|||
|
#define RxDbgTrace(x, y, z)
|
|||
|
#define CHECK_STATUS( status ) if( (status) == g_CheckStatus) \
|
|||
|
{ DbgBreakPoint() ; }
|
|||
|
|
|||
|
#endif // _DFSASSERT_INCLUDED_
|
|||
|
|
|||
|
|