Do not write to syslog when running in the test harness.
authorPhilip Hazel <ph10@hermes.cam.ac.uk>
Mon, 13 Feb 2006 11:28:56 +0000 (11:28 +0000)
committerPhilip Hazel <ph10@hermes.cam.ac.uk>
Mon, 13 Feb 2006 11:28:56 +0000 (11:28 +0000)
doc/doc-txt/ChangeLog
src/src/log.c

index 3e3da3bfdeba0d742785d0784d2c283bfed2587a..427f0b2a39e883089d7e435b0e79e389de0f099a 100644 (file)
@@ -1,4 +1,4 @@
-$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.292 2006/02/13 11:13:37 ph10 Exp $
+$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.293 2006/02/13 11:28:56 ph10 Exp $
 
 Change log file for Exim from version 4.21
 -------------------------------------------
@@ -137,6 +137,10 @@ PH/24 An host item such as 1.2.3.4/abc was being treated as the IP address
       1.2.3.4 without a mask. Now it is not recognized as an IP address, and
       PH/23 above applies.
 
+PH/25 Do not write to syslog when running in the test harness. The only
+      occasion when this arises is a failure to open the main or panic logs
+      (for which there is an explicit test).
+
 
 
 Exim version 4.60
index a388258c5ec11b61b39798a0f098b4cbcc4853a0..d5e89f2cfabdeeb42f714e626e9ec7921201e9a5 100644 (file)
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/src/src/log.c,v 1.8 2006/02/07 11:19:00 ph10 Exp $ */
+/* $Cambridge: exim/src/src/log.c,v 1.9 2006/02/13 11:28:56 ph10 Exp $ */
 
 /*************************************************
 *     Exim - an Internet mail transport agent    *
@@ -57,7 +57,9 @@ static uschar *file_path = US"";
 
 /* The given string is split into sections according to length, or at embedded
 newlines, and syslogged as a numbered sequence if it is overlong or if there is
-more than one line.
+more than one line. However, if we are running in the test harness, do not do
+anything. (The test harness doesn't use syslog - for obvious reasons - but we
+can get here if there is a failure to open the panic log.)
 
 Arguments:
   priority       syslog priority
@@ -72,6 +74,8 @@ write_syslog(int priority, uschar *s)
 int len, pass;
 int linecount = 0;
 
+if (running_in_test_harness) return;
+
 if (!syslog_timestamp) s += log_timezone? 26 : 20;
 
 len = Ustrlen(s);