Support certificates in base64 expansion operator. Bug 1762
[exim.git] / src / src / exicyclog.src
index 097de7eaa0fc1e0a466259607019441ee41129a9..1559a4794512b3f44e9a11613bbe530233ae95d5 100644 (file)
@@ -1,7 +1,6 @@
 #! /bin/sh
-# $Cambridge: exim/src/src/exicyclog.src,v 1.10 2009/10/30 15:14:04 nm4 Exp $
 
-# Copyright (c) 2006 University of Cambridge.
+# Copyright (c) University of Cambridge, 1995 - 2007
 # See the file NOTICE for conditions of use and distribution.
 
 # This script takes the following command line arguments:
@@ -283,28 +282,34 @@ done
 
 if [ $keep -gt 99 ]; then first=001; else first=01; fi
 
+# Grab our pid ro avoid race in file creation
+ourpid=$$
+
 if [ -f $mainlog ]; then
   $mv $mainlog $mainlog.$first
   $chown $user:$group $mainlog.$first
-  $touch $mainlog
-  $chown $user:$group $mainlog
-  $chmod 640 $mainlog
+  $touch $mainlog.$ourpid
+  $chown $user:$group $mainlog.$ourpid
+  $chmod 640 $mainlog.$ourpid
+  $mv $mainlog.$ourpid $mainlog
 fi
 
 if [ -f $rejectlog ]; then
   $mv $rejectlog $rejectlog.$first
   $chown $user:$group $rejectlog.$first
-  $touch $rejectlog
-  $chown $user:$group $rejectlog
-  $chmod 640 $rejectlog
+  $touch $rejectlog.$ourpid
+  $chown $user:$group $rejectlog.$ourpid
+  $chmod 640 $rejectlog.$ourpid
+  $mv $rejectlog.$ourpid $rejectlog
 fi
 
 if [ -f $paniclog ]; then
   $mv $paniclog $paniclog.$first
   $chown $user:$group $paniclog.$first
-  $touch $paniclog
-  $chown $user:$group $paniclog
-  $chmod 640 $paniclog
+  $touch $paniclog.$ourpid
+  $chown $user:$group $paniclog.$ourpid
+  $chmod 640 $paniclog.$ourpid
+  $mv $paniclog.$ourpid $paniclog
 fi
 
 # Now scan the (0)02 and later files, compressing where necessary, and