diff options
Diffstat (limited to 'source3/include')
-rw-r--r-- | source3/include/proto.h | 14 | ||||
-rw-r--r-- | source3/include/smb.h | 68 |
2 files changed, 68 insertions, 14 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h index 56d72bd339..10f01c1b9d 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -160,6 +160,15 @@ BOOL deal_with_creds(uchar sess_key[8], DOM_CRED *sto_clnt_cred, DOM_CRED *rcv_clnt_cred, DOM_CRED *rtn_srv_cred); +/*The following definitions come from debug.c */ + +int sig_usr2( void ); +int sig_usr1( void ); +void setup_logging( char *pname, BOOL interactive ); +void reopen_logs( void ); +void force_check_log_size( void ); +BOOL dbghdr( int level, char *file, char *func, int line ); + /*The following definitions come from dfree.c */ int sys_disk_free(char *path,int *bsize,int *dfree,int *dsize); @@ -1972,11 +1981,6 @@ BOOL user_in_list(char *user,char *list); /*The following definitions come from util.c */ -int sig_usr2(void); -int sig_usr1(void); -void setup_logging(char *pname,BOOL interactive); -void reopen_logs(void); -void force_check_log_size(void); char *tmpdir(void); BOOL is_a_socket(int fd); BOOL next_token(char **ptr,char *buff,char *sep); diff --git a/source3/include/smb.h b/source3/include/smb.h index 115d8ce31b..60e214d73e 100644 --- a/source3/include/smb.h +++ b/source3/include/smb.h @@ -90,17 +90,69 @@ typedef unsigned short uint16; /* how long to wait for secondary SMB packets (milli-seconds) */ #define SMB_SECONDARY_WAIT (60*1000) -/* debugging code */ -#if !defined(WITH_SYSLOG) || defined(NO_SYSLOG) -#define DEBUG(level,body) ((DEBUGLEVEL>=(level))?(Debug1 body):0) -#define DEBUGLVL(level) (DEBUGLEVEL>=(level)) +/* -------------------------------------------------------------------------- ** + * Debugging code. See also debug.c + */ + +/* mkproto.awk has trouble with ifdef'd function definitions (it ignores + * the #ifdef directive and will read both definitions, thus creating two + * diffferent prototype declarations), so we must do these by hand. + */ +#ifdef HAVE_STDARG_H +int Debug1( char *, ... ); +BOOL dbgtext( char *, ... ); #else -extern int syslog_level; +int Debug1(); +BOOL dbgtext(); +#endif -#define DEBUG(level,body) ((DEBUGLEVEL>=(level))? (syslog_level = (level), Debug1 body):0) -#define DEBUGLVL(level) ( DEBUGLEVEL >= (syslog_level=(level)) ) +/* If we have these macros, we can add additional info to the header. */ +#ifdef HAVE_FILE_MACRO +#define FILE_MACRO (__FILE__) +#else +#define FILE_MACRO ("") #endif +#ifdef HAVE_FUNCTION_MACRO +#define FUNCTION_MACRO (__FUNCTION__) +#else +#define FUNCTION_MACRO ("") +#endif + +/* Debugging macros. + * DEBUGLVL() - If level is <= the system-wide DEBUGLEVEL then generate a + * header using the default macros for file, line, and + * function name. + * Returns True if the debug level was <= DEBUGLEVEL. + * Example usage: + * if( DEBUGLVL( 2 ) ) + * dbgtext( "Some text.\n" ); + * DEGUG() - Good old DEBUG(). Each call to DEBUG() will generate a new + * header *unless* the previous debug output was unterminated + * (i.e., no '\n'). See debug.c:dbghdr() for more info. + * Example usage: + * DEBUG( 2, ("Some text.\n") ); + * DEBUGADD() - If level <= DEBUGLEVEL, then the text is appended to the + * current message (i.e., no header). + * Usage: + * DEBUGADD( 2, ("Some additional text.\n") ); + */ +#define DEBUGLVL( level ) \ + ( (DEBUGLEVEL>=(level)) \ + && dbghdr( level, FILE_MACRO, FUNCTION_MACRO, (__LINE__) ) ) + +#define DEBUG( level, body ) \ + if( (DEBUGLEVEL>=(level)) \ + && dbghdr( level, FILE_MACRO, FUNCTION_MACRO, (__LINE__) ) ) \ + (void)dbgtext body + +#define DEBUGADD( level, body ) \ + if( DEBUGLEVEL>=(level) ) (void)dbgtext body + +/* End Debugging code section. + * -------------------------------------------------------------------------- ** + */ + /* this defines the error codes that receive_smb can put in smb_read_error */ #define READ_TIMEOUT 1 #define READ_EOF 2 @@ -1154,10 +1206,8 @@ struct parm_struct #define ERRCMD 0xFF /* Command was not in the "SMB" format. */ #ifdef HAVE_STDARG_H -int Debug1(char *, ...); int slprintf(char *str, int n, char *format, ...); #else -int Debug1(); int slprintf(); #endif |