Leaked source code of windows server 2003
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.
|
|
/*++
Copyright (c) 1987-1993 Microsoft Corporation
Module Name:
debug.h
Abstract:
NtLmSsp service debug support
Author:
Ported from Lan Man 2.0
Revision History:
21-May-1991 (cliffv) Ported to NT. Converted to NT style. 09-Apr-1992 JohnRo Prepare for WCHAR.H (_wcsicmp vs _wcscmpi, etc).
03-Aug-1996 ChandanS Stolen from net\svcdlls\ntlmssp\debug.h --*/
//
// init.c will #include this file with DEBUG_ALLOCATE defined.
// That will cause each of these variables to be allocated.
//
#ifdef DEBUG_ALLOCATE
#undef EXTERN
#define EXTERN
#else
#define EXTERN extern
#endif
////////////////////////////////////////////////////////////////////////
//
// Debug Definititions
//
////////////////////////////////////////////////////////////////////////
#define SSP_INIT 0x00000001 // Initialization
#define SSP_MISC 0x00000002 // Misc debug
#define SSP_API 0x00000004 // API processing
#define SSP_LPC 0x00000008 // LPC
#define SSP_LOGON_SESS 0x00000010 // tracking logon sessions
#define SSP_CRITICAL 0x00000100 // Only real important errors
#define SSP_LEAK_TRACK 0x00000200 // calling PID etc
#define SSP_WARNING 0x00000400 // not fatal warnings of interest to developer
#define SSP_UPDATES 0x00000800 // updates to globals, passwords, etc.
#define SSP_SESSION_KEYS 0x00001000 // keying material
#define SSP_NEGOTIATE_FLAGS 0x00002000 // negotiate flags.
#define SSP_CRED 0x00004000 // tracking credentials
#define SSP_VERSION 0x00008000 // tracking versioning
//
// Very verbose bits
//
#define SSP_NTLM_V2 0x01000000 // verbose NTLMv2 info
#define SSP_API_MORE 0x04000000 // verbose API
#define SSP_LPC_MORE 0x08000000 // verbose LPC
//
// Control bits.
//
#define SSP_NO_LOCAL 0x10000000 // Force client to use OEM character set
#define SSP_TIMESTAMP 0x20000000 // TimeStamp each output line
#define SSP_REQUEST_TARGET 0x40000000 // Force client to ask for target name
#define SSP_USE_OEM 0x80000000 // Force client to use OEM character set
//
// Name and directory of log file
//
#define DEBUG_DIR L"\\debug"
#define DEBUG_FILE L"\\ntlmssp.log"
#define DEBUG_BAK_FILE L"\\ntlmssp.bak"
#if DBG
EXTERN DWORD SspGlobalDbflag;
#define IF_DEBUG(Function) \
if (SspGlobalDbflag & SSP_ ## Function)
#define SspPrint(_x_) SspPrintRoutine _x_
VOID SspPrintRoutine( IN DWORD DebugFlag, IN LPSTR FORMATSTRING, // PRINTF()-STYLE FORMAT STRING.
... // OTHER ARGUMENTS ARE POSSIBLE.
);
VOID SspDumpHexData( IN DWORD DebugFlag, IN LPDWORD Buffer, IN DWORD BufferSize );
VOID SspDumpSid( IN DWORD DebugFlag, IN PSID Sid );
VOID SspDumpBuffer( IN DWORD DebugFlag, IN PVOID Buffer, IN DWORD BufferSize );
VOID SspOpenDebugFile( IN BOOL ReopenFlag );
//
// Debug log file
//
EXTERN HANDLE SspGlobalLogFile; #define DEFAULT_MAXIMUM_LOGFILE_SIZE 20000000
EXTERN DWORD SspGlobalLogFileMaxSize;
//
// To serialize access to log file.
//
EXTERN CRITICAL_SECTION SspGlobalLogFileCritSect; EXTERN LPWSTR SspGlobalDebugSharePath;
#else
#define IF_DEBUG(Function) if (FALSE)
// Nondebug version.
#define SspDumpHexData /* no output; ignore arguments */
#define SspDumpBuffer
#define SspDumpSid
#define SspPrint(_x_)
#endif // DBG
#undef EXTERN
|