/*----------------------------------------------------------------------------- * Copyright (C) Microsoft Corporation, 1995 - 1996. * All rights reserved. * * This file is part of the Microsoft Private Communication Technology * reference implementation, version 1.0 * * The Private Communication Technology reference implementation, version 1.0 * ("PCTRef"), is being provided by Microsoft to encourage the development and * enhancement of an open standard for secure general-purpose business and * personal communications on open networks. Microsoft is distributing PCTRef * at no charge irrespective of whether you use PCTRef for non-commercial or * commercial use. * * Microsoft expressly disclaims any warranty for PCTRef and all derivatives of * it. PCTRef and any related documentation is provided "as is" without * warranty of any kind, either express or implied, including, without * limitation, the implied warranties or merchantability, fitness for a * particular purpose, or noninfringement. Microsoft shall have no obligation * to provide maintenance, support, upgrades or new releases to you or to anyone * receiving from you PCTRef or your modifications. The entire risk arising out * of use or performance of PCTRef remains with you. * * Please see the file LICENSE.txt, * or http://pct.microsoft.com/pct/pctlicen.txt * for more information on licensing. * * Please see http://pct.microsoft.com/pct/pct.htm for The Private * Communication Technology Specification version 1.0 ("PCT Specification") * * 1/23/96 *----------------------------------------------------------------------------*/ #ifndef __DEBUG_H__ #define __DEBUG_H__ extern DWORD g_dwEventLogging; #if DBG extern DWORD PctInfoLevel; extern DWORD PctTraceIndent; extern DWORD g_dwInfoLevel; extern DWORD g_dwDebugBreak; extern HANDLE g_hfLogFile; #define DEB_ERROR SP_LOG_ERROR #define DEB_WARN SP_LOG_WARNING #define DEB_TRACE SP_LOG_TRACE #define DEB_BUFFERS SP_LOG_BUFFERS #define DebugLog(x) SPDebugLog x #define SP_BEGIN(x) SPDebugLog(DEB_TRACE,"BEGIN:" x "\n"); PctTraceIndent++; #define SP_RETURN(x) { PctTraceIndent--; SPDebugLog(DEB_TRACE, "END Line %d\n", __LINE__); return (x); } #define SP_LOG_RESULT(x) SPLogErrorCode((x), __FILE__, __LINE__) #define SP_END() { PctTraceIndent--; SPDebugLog(DEB_TRACE, "END:Line %d\n", __LINE__); } #define SP_BREAK() { SPDebugLog(DEB_TRACE, "BREAK Line %d\n", __LINE__); } #define LogDistinguishedName(a,b,c,d) SPLogDistinguishedName(a,b,c,d) long SPLogErrorCode(long, const char *, long); void SPDebugLog(long, const char *, ...); void InitDebugSupport( HKEY hGlobalKey); void DbgDumpHexString(const unsigned char*, DWORD); #define DBG_HEX_STRING(l,p,c) if(g_dwInfoLevel & (l)) DbgDumpHexString((p), (c)) #define LOG_RESULT(x) SPLogErrorCode((x), __FILE__, __LINE__) void SPLogDistinguishedName( DWORD LogLevel, LPSTR pszLabel, PBYTE pbName, DWORD cbName); #else #define DebugLog(x) #define SP_BEGIN(x) #define SP_RETURN(x) return (x) #define SP_LOG_RESULT(x) x #define SP_END() #define SP_BREAK() #define LOG_RESULT(x) #define LogDistinguishedName(a,b,c,d) #endif #endif /* __DEBUG_H__ */