-/* $Cambridge: exim/src/src/log.c,v 1.4 2005/06/22 15:44:38 ph10 Exp $ */
+/* $Cambridge: exim/src/src/log.c,v 1.7 2005/09/12 10:49:30 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
this way because it kind of fits with LOG_RECIPIENTS. */
if ((flags & LOG_SENDER) != 0 &&
- ptr < log_buffer + LOG_BUFFER_SIZE - 8 - Ustrlen(raw_sender))
+ ptr < log_buffer + LOG_BUFFER_SIZE - 10 - Ustrlen(raw_sender))
{
sprintf(CS ptr, " from <%s>", raw_sender);
while (*ptr) ptr++;
uschar *nowstamp = tod_stamp(tod_log_datestamp);
if (Ustrncmp (mainlog_datestamp, nowstamp, Ustrlen(nowstamp)) != 0)
{
- close(mainlogfd); /* Close the file */
+ (void)close(mainlogfd); /* Close the file */
mainlogfd = -1; /* Clear the file descriptor */
mainlog_inode = 0; /* Unset the inode */
mainlog_datestamp = NULL; /* Clear the datestamp */
{
if (Ustat(mainlog_name, &statbuf) < 0 || statbuf.st_ino != mainlog_inode)
{
- close(mainlogfd);
+ (void)close(mainlogfd);
mainlogfd = -1;
mainlog_inode = 0;
}
uschar *nowstamp = tod_stamp(tod_log_datestamp);
if (Ustrncmp (rejectlog_datestamp, nowstamp, Ustrlen(nowstamp)) != 0)
{
- close(rejectlogfd); /* Close the file */
+ (void)close(rejectlogfd); /* Close the file */
rejectlogfd = -1; /* Clear the file descriptor */
rejectlog_inode = 0; /* Unset the inode */
rejectlog_datestamp = NULL; /* Clear the datestamp */
if (Ustat(rejectlog_name, &statbuf) < 0 ||
statbuf.st_ino != rejectlog_inode)
{
- close(rejectlogfd);
+ (void)close(rejectlogfd);
rejectlogfd = -1;
rejectlog_inode = 0;
}
/* Handle the panic log, which is not kept open like the others. If it fails to
open, there will be a recursive call to log_write(). We detect this above and
attempt to write to the system log as a last-ditch try at telling somebody. In
-all cases, try to write to log_stderr. */
+all cases except mua_wrapper, try to write to log_stderr. */
if ((flags & LOG_PANIC) != 0)
{
- if (log_stderr != NULL && log_stderr != debug_file)
+ if (log_stderr != NULL && log_stderr != debug_file && !mua_wrapper)
fprintf(log_stderr, "%s", CS log_buffer);
if ((logging_mode & LOG_MODE_SYSLOG) != 0)
flags |= LOG_PANIC_DIE;
}
- close(paniclogfd);
+ (void)close(paniclogfd);
}
/* Give up if the DIE flag is set */
log_close_all(void)
{
if (mainlogfd >= 0)
- { close(mainlogfd); mainlogfd = -1; }
+ { (void)close(mainlogfd); mainlogfd = -1; }
if (rejectlogfd >= 0)
- { close(rejectlogfd); rejectlogfd = -1; }
+ { (void)close(rejectlogfd); rejectlogfd = -1; }
closelog();
syslog_open = FALSE;
}