svn commit: samba r25434 - in branches/SAMBA_3_2/source: include
lib param
obnox at samba.org
obnox at samba.org
Sun Sep 30 08:07:08 GMT 2007
Author: obnox
Date: 2007-09-30 08:07:06 +0000 (Sun, 30 Sep 2007)
New Revision: 25434
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=25434
Log:
Add the option to print the debug class (DBGC_CLASS) in the debug header.
Control this by a new boolean smb.conf option "debug class" which is
by default set to "no" to keep the default debug header unchanged.
Michael
Note: You need to make clean for this patch.
Modified:
branches/SAMBA_3_2/source/include/debug.h
branches/SAMBA_3_2/source/lib/debug.c
branches/SAMBA_3_2/source/param/loadparm.c
Changeset:
Modified: branches/SAMBA_3_2/source/include/debug.h
===================================================================
--- branches/SAMBA_3_2/source/include/debug.h 2007-09-30 07:12:10 UTC (rev 25433)
+++ branches/SAMBA_3_2/source/include/debug.h 2007-09-30 08:07:06 UTC (rev 25434)
@@ -40,7 +40,7 @@
int Debug1( const char *, ... ) PRINTF_ATTRIBUTE(1,2);
/* PRINTFLIKE1 */
BOOL dbgtext( const char *, ... ) PRINTF_ATTRIBUTE(1,2);
-BOOL dbghdr( int level, const char *file, const char *func, int line );
+BOOL dbghdr( int level, int cls, const char *file, const char *func, int line );
#if defined(sgi) && (_COMPILER_VERSION >= 730)
#pragma mips_frequency_hint NEVER Debug1
@@ -167,7 +167,7 @@
((DEBUGLEVEL_CLASS[ DBGC_CLASS ] >= (level))|| \
(!DEBUGLEVEL_CLASS_ISSET[ DBGC_CLASS ] && \
DEBUGLEVEL_CLASS[ DBGC_ALL ] >= (level)) ) \
- && dbghdr( level, __FILE__, FUNCTION_MACRO, (__LINE__) ) )
+ && dbghdr( level, DBGC_CLASS, __FILE__, FUNCTION_MACRO, (__LINE__) ) )
#define DEBUGLVLC( dbgc_class, level ) \
@@ -175,7 +175,7 @@
((DEBUGLEVEL_CLASS[ dbgc_class ] >= (level))|| \
(!DEBUGLEVEL_CLASS_ISSET[ dbgc_class ] && \
DEBUGLEVEL_CLASS[ DBGC_ALL ] >= (level)) ) \
- && dbghdr( level, __FILE__, FUNCTION_MACRO, (__LINE__) ) )
+ && dbghdr( level, DBGC_CLASS, __FILE__, FUNCTION_MACRO, (__LINE__) ) )
#define DEBUG( level, body ) \
@@ -183,7 +183,7 @@
((DEBUGLEVEL_CLASS[ DBGC_CLASS ] >= (level))|| \
(!DEBUGLEVEL_CLASS_ISSET[ DBGC_CLASS ] && \
DEBUGLEVEL_CLASS[ DBGC_ALL ] >= (level)) ) \
- && (dbghdr( level, __FILE__, FUNCTION_MACRO, (__LINE__) )) \
+ && (dbghdr( level, DBGC_CLASS, __FILE__, FUNCTION_MACRO, (__LINE__) )) \
&& (dbgtext body) )
#define DEBUGC( dbgc_class, level, body ) \
@@ -191,7 +191,7 @@
((DEBUGLEVEL_CLASS[ dbgc_class ] >= (level))|| \
(!DEBUGLEVEL_CLASS_ISSET[ dbgc_class ] && \
DEBUGLEVEL_CLASS[ DBGC_ALL ] >= (level)) ) \
- && (dbghdr( level, __FILE__, FUNCTION_MACRO, (__LINE__) )) \
+ && (dbghdr( level, DBGC_CLASS, __FILE__, FUNCTION_MACRO, (__LINE__) )) \
&& (dbgtext body) )
#define DEBUGADD( level, body ) \
Modified: branches/SAMBA_3_2/source/lib/debug.c
===================================================================
--- branches/SAMBA_3_2/source/lib/debug.c 2007-09-30 07:12:10 UTC (rev 25433)
+++ branches/SAMBA_3_2/source/lib/debug.c 2007-09-30 08:07:06 UTC (rev 25434)
@@ -913,6 +913,7 @@
Input: level - Debug level of the message (not the system-wide debug
level. )
+ cls - Debuglevel class of the calling module.
file - Pointer to a string containing the name of the file
from which this function was called, or an empty string
if the __FILE__ macro is not implemented.
@@ -930,7 +931,7 @@
****************************************************************************/
-BOOL dbghdr( int level, const char *file, const char *func, int line )
+BOOL dbghdr(int level, int cls, const char *file, const char *func, int line)
{
/* Ensure we don't lose any real errno value. */
int old_errno = errno;
@@ -976,6 +977,14 @@
(unsigned int)geteuid(), (unsigned int)getegid(),
(unsigned int)getuid(), (unsigned int)getgid());
}
+
+ if (lp_debug_class() && (cls != DBGC_ALL)) {
+ size_t hs_len = strlen(header_str);
+ slprintf(header_str + hs_len,
+ sizeof(header_str) -1 - hs_len,
+ ", class=%s",
+ default_classname_table[cls]);
+ }
/* Print it all out at once to prevent split syslog output. */
if( lp_debug_prefix_timestamp() ) {
Modified: branches/SAMBA_3_2/source/param/loadparm.c
===================================================================
--- branches/SAMBA_3_2/source/param/loadparm.c 2007-09-30 07:12:10 UTC (rev 25433)
+++ branches/SAMBA_3_2/source/param/loadparm.c 2007-09-30 08:07:06 UTC (rev 25434)
@@ -306,6 +306,7 @@
BOOL bDebugHiresTimestamp;
BOOL bDebugPid;
BOOL bDebugUid;
+ BOOL bDebugClass;
BOOL bEnableCoreFiles;
BOOL bHostMSDfs;
BOOL bUseMmap;
@@ -981,6 +982,7 @@
{"debug hires timestamp", P_BOOL, P_GLOBAL, &Globals.bDebugHiresTimestamp, NULL, NULL, FLAG_ADVANCED},
{"debug pid", P_BOOL, P_GLOBAL, &Globals.bDebugPid, NULL, NULL, FLAG_ADVANCED},
{"debug uid", P_BOOL, P_GLOBAL, &Globals.bDebugUid, NULL, NULL, FLAG_ADVANCED},
+ {"debug class", P_BOOL, P_GLOBAL, &Globals.bDebugClass, NULL, NULL, FLAG_ADVANCED},
{"enable core files", P_BOOL, P_GLOBAL, &Globals.bEnableCoreFiles, NULL, NULL, FLAG_ADVANCED},
{N_("Protocol Options"), P_SEP, P_SEPARATOR},
@@ -1547,6 +1549,7 @@
Globals.bDebugHiresTimestamp = False;
Globals.bDebugPid = False;
Globals.bDebugUid = False;
+ Globals.bDebugClass = False;
Globals.bEnableCoreFiles = True;
Globals.max_ttl = 60 * 60 * 24 * 3; /* 3 days default. */
Globals.max_wins_ttl = 60 * 60 * 24 * 6; /* 6 days default. */
@@ -1958,6 +1961,7 @@
FN_GLOBAL_BOOL(lp_debug_hires_timestamp, &Globals.bDebugHiresTimestamp)
FN_GLOBAL_BOOL(lp_debug_pid, &Globals.bDebugPid)
FN_GLOBAL_BOOL(lp_debug_uid, &Globals.bDebugUid)
+FN_GLOBAL_BOOL(lp_debug_class, &Globals.bDebugClass)
FN_GLOBAL_BOOL(lp_enable_core_files, &Globals.bEnableCoreFiles)
FN_GLOBAL_BOOL(lp_browse_list, &Globals.bBrowseList)
FN_GLOBAL_BOOL(lp_nis_home_map, &Globals.bNISHomeMap)
More information about the samba-cvs
mailing list