SMTP-Client: add per facility debug logging 'smtpeventclient'
[citadel.git] / citadel / modules / smtp / smtp_clienthandlers.h
index 38a7f58f4490795fc987ee98b8baeeb0b59e31b7..46532c03286a698c14b1239438e4a4a4f9234b19 100644 (file)
@@ -87,26 +87,28 @@ const double SMTP_C_ConnTimeout;
 #define F_HAVE_MX        (1<<3) /* we have a list of mx records to go through.*/
 #define F_DIRECT         (1<<4) /* no mx record found, trying direct connect. */
 
 #define F_HAVE_MX        (1<<3) /* we have a list of mx records to go through.*/
 #define F_DIRECT         (1<<4) /* no mx record found, trying direct connect. */
 
+extern int SMTPClientDebugEnabled;
 
 int smtp_resolve_recipients(SmtpOutMsg *SendMsg);
 
 #define QID ((SmtpOutMsg*)IO->Data)->MyQItem->MessageID
 #define N ((SmtpOutMsg*)IO->Data)->n
 
 int smtp_resolve_recipients(SmtpOutMsg *SendMsg);
 
 #define QID ((SmtpOutMsg*)IO->Data)->MyQItem->MessageID
 #define N ((SmtpOutMsg*)IO->Data)->n
+#define DBGLOG(LEVEL) if ((LEVEL != LOG_DEBUG) || (SMTPClientDebugEnabled != 0))
 
 #define EVS_syslog(LEVEL, FORMAT, ...) \
 
 #define EVS_syslog(LEVEL, FORMAT, ...) \
-       syslog(LEVEL, \
+       DBGLOG(LEVEL) syslog(LEVEL,               \
               "IO[%ld]CC[%d]S[%ld][%ld]" FORMAT, \
               IO->ID, CCID, QID, N, __VA_ARGS__)
 
 #define EVSM_syslog(LEVEL, FORMAT) \
               "IO[%ld]CC[%d]S[%ld][%ld]" FORMAT, \
               IO->ID, CCID, QID, N, __VA_ARGS__)
 
 #define EVSM_syslog(LEVEL, FORMAT) \
-       syslog(LEVEL, \
+       DBGLOG(LEVEL) syslog(LEVEL, \
               "IO[%ld]CC[%d]S[%ld][%ld]" FORMAT, \
               IO->ID, CCID, QID, N)
 
 #define EVNCS_syslog(LEVEL, FORMAT, ...) \
               "IO[%ld]CC[%d]S[%ld][%ld]" FORMAT, \
               IO->ID, CCID, QID, N)
 
 #define EVNCS_syslog(LEVEL, FORMAT, ...) \
-       syslog(LEVEL, "IO[%ld]S[%ld][%ld]" FORMAT, \
+       DBGLOG(LEVEL) syslog(LEVEL, "IO[%ld]S[%ld][%ld]" FORMAT, \
               IO->ID, QID, N, __VA_ARGS__)
 
 #define EVNCSM_syslog(LEVEL, FORMAT) \
               IO->ID, QID, N, __VA_ARGS__)
 
 #define EVNCSM_syslog(LEVEL, FORMAT) \
-       syslog(LEVEL, "IO[%ld]S[%ld][%ld]" FORMAT, \
+       DBGLOG(LEVEL) syslog(LEVEL, "IO[%ld]S[%ld][%ld]" FORMAT, \
               IO->ID, QID, N)
               IO->ID, QID, N)