#include "smtpqueue.h"
#include "smtp_clienthandlers.h"
+int SMTPClientDebugEnabled = 0;
const unsigned short DefaultMXPort = 25;
void DeleteSmtpOutMsg(void *v)
{
return Finished;
}
+void LogDebugEnableSMTPClient(void)
+{
+ SMTPClientDebugEnabled = 1;
+}
+
CTDL_MODULE_INIT(smtp_eventclient)
{
+ if (!threading)
+ CtdlRegisterDebugFlagHook(HKEY("smtpeventclient"), LogDebugEnableSMTPClient);
return "smtpeventclient";
}
#define SMTP_ERROR(WHICH_ERR, ERRSTR) do { \
Msg->MyQEntry->Status = WHICH_ERR; \
- StrBufAppendBufPlain(Msg->MyQEntry->StatusMessage, \
+ StrBufAppendBufPlain(Msg->MyQEntry->StatusMessage, \
HKEY(ERRSTR), 0); \
return eAbort; } \
while (0)
#define SMTP_VERROR(WHICH_ERR) do { \
Msg->MyQEntry->Status = WHICH_ERR; \
- StrBufPlain(Msg->MyQEntry->StatusMessage, \
- ChrPtr(Msg->IO.IOBuf) + 4, \
- StrLength(Msg->IO.IOBuf) - 4); \
+ StrBufPlain(Msg->MyQEntry->StatusMessage, \
+ ChrPtr(Msg->IO.IOBuf) + 4, \
+ StrLength(Msg->IO.IOBuf) - 4); \
return eAbort; } \
while (0)
#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
+#define DBGLOG(LEVEL) if ((LEVEL != LOG_DEBUG) || (SMTPClientDebugEnabled != 0))
#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) \
- syslog(LEVEL, \
+ DBGLOG(LEVEL) syslog(LEVEL, \
"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) \
- syslog(LEVEL, "IO[%ld]S[%ld][%ld]" FORMAT, \
+ DBGLOG(LEVEL) syslog(LEVEL, "IO[%ld]S[%ld][%ld]" FORMAT, \
IO->ID, QID, N)