You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
100 lines
2.3 KiB
100 lines
2.3 KiB
/*++
|
|
|
|
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_
|
|
|
|
|