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.
 
 
 
 
 
 

130 lines
2.2 KiB

/*++
Copyright (c) 1991 Microsoft Corporation
Module Name:
adtdebug.c
Abstract:
debugging helper functions for auditing code
Author:
06-November-2001 kumarp
--*/
#include <lsapch2.h>
#include "adtdebug.h"
#if DBG
DEFINE_DEBUG2(Adt);
//
// To add your own flag, add an entry below and define the flag value
// in adtdebug.h. The string in the flag/string pair will be used in
// the actual debug output as shown below.
//
// 468.512> Adt-PUA: LsapAdtLogAuditFailureEvent failed: 0xc0000001
//
DEBUG_KEY AdtDebugKeys[] =
{
{DEB_ERROR, "Error"},
{DEB_WARN, "Warn" },
{DEB_TRACE, "Trace"},
{DEB_PUA, "PUA" },
{DEB_AUDIT_STRS, "STRS" },
{0, NULL}
};
//
// max size of the formatted string returned by _AdtFormatMessage
//
#define MAX_ADT_DEBUG_BUFFER_SIZE 256
char *
_AdtFormatMessage(
char *Format,
...
)
/*++
Routine Description:
Allocate a buffer, put formatted string in it and return a pointer to it.
Arguments:
Format -- printf style format specifier string
... -- var args
Return Value:
Allocated & formatted buffer. This is freed using LsapFreeLsaHeap
Notes:
--*/
{
char *Buffer=NULL;
int NumCharsWritten=0;
va_list arglist;
Buffer = LsapAllocateLsaHeap( MAX_ADT_DEBUG_BUFFER_SIZE );
if ( Buffer )
{
va_start(arglist, Format);
NumCharsWritten =
_vsnprintf( Buffer, MAX_ADT_DEBUG_BUFFER_SIZE-1, Format, arglist );
//
// if _vsnprintf fails for some reason, at least copy the format string
//
if ( NumCharsWritten == 0 )
{
strncpy( Buffer, Format, MAX_ADT_DEBUG_BUFFER_SIZE-1 );
}
}
else
{
AdtDebugOut((DEB_ERROR, "_AdtFormatMessage: failed to allocate buffer"));
}
return Buffer;
}
#endif // if DBG
void
LsapAdtInitDebug()
/*++
Routine Description:
Initialize debug helper functions.
Arguments:
None.
Return Value:
None
Notes:
--*/
{
#if DBG
AdtInitDebug( AdtDebugKeys );
#endif
}