Fix missing quota message for system quota failure with maildir.
authorPhilip Hazel <ph10@hermes.cam.ac.uk>
Wed, 22 Aug 2007 14:07:30 +0000 (14:07 +0000)
committerPhilip Hazel <ph10@hermes.cam.ac.uk>
Wed, 22 Aug 2007 14:07:30 +0000 (14:07 +0000)
doc/doc-txt/ChangeLog
src/src/transports/appendfile.c

index 94d00ccef7907bb2c4357c83628f89ecd0311d65..17e87d0dc6e98d39c3eee93978facbb41c48db24 100644 (file)
@@ -1,4 +1,4 @@
-$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.523 2007/08/22 10:10:23 ph10 Exp $
+$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.524 2007/08/22 14:07:30 ph10 Exp $
 
 Change log file for Exim from version 4.21
 -------------------------------------------
 
 Change log file for Exim from version 4.21
 -------------------------------------------
@@ -83,6 +83,10 @@ PH/16 Another patch from the Sieve maintainer.
 
 PH/17 Added the NOTQUIT ACL, based on a patch from Ted Cooper.
 
 
 PH/17 Added the NOTQUIT ACL, based on a patch from Ted Cooper.
 
+PH/18 If a system quota error occurred while trying to create the file for
+      a maildir delivery, the message "Mailbox is full" was not appended to the
+      bounce if the delivery eventually timed out. Change 4.67/27 below applied
+      only to a quota excession during the actual writing of the file.
 
 
 Exim version 4.67
 
 
 Exim version 4.67
index 16aa3927b2c9d1782e6537f244adaae656bbe04f..fbda8262dccda8cdd978050d8759bb30623c8622 100644 (file)
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/src/src/transports/appendfile.c,v 1.22 2007/02/20 09:53:41 ph10 Exp $ */
+/* $Cambridge: exim/src/src/transports/appendfile.c,v 1.23 2007/08/22 14:07:30 ph10 Exp $ */
 
 /*************************************************
 *     Exim - an Internet mail transport agent    *
 
 /*************************************************
 *     Exim - an Internet mail transport agent    *
@@ -2451,6 +2451,8 @@ else
         addr->message = string_sprintf ("failed to open %s (%d tr%s)",
           filename, i, (i == 1)? "y" : "ies");
         addr->basic_errno = errno;
         addr->message = string_sprintf ("failed to open %s (%d tr%s)",
           filename, i, (i == 1)? "y" : "ies");
         addr->basic_errno = errno;
+        if (errno == errno_quota || errno == ENOSPC)
+          addr->user_message = US"mailbox is full";
         return FALSE;
         }
 
         return FALSE;
         }