wip
[users/jgh/exim.git] / src / src / transports / lmtp.c
index 969e45d607bb3334b1fa743d3372c03756e2d01e..5b8472b80dfef26b969c447ea8f5dd30b7328bcb 100644 (file)
@@ -1,10 +1,10 @@
-/* $Cambridge: exim/src/src/transports/lmtp.c,v 1.8 2006/03/09 15:10:16 ph10 Exp $ */
+/* $Cambridge: exim/src/src/transports/lmtp.c,v 1.10 2007/01/08 10:50:20 ph10 Exp $ */
 
 /*************************************************
 *     Exim - an Internet mail transport agent    *
 *************************************************/
 
-/* Copyright (c) University of Cambridge 1995 - 2006 */
+/* Copyright (c) University of Cambridge 1995 - 2007 */
 /* See the file NOTICE for conditions of use and distribution. */
 
 
@@ -606,6 +606,7 @@ for (addr = addrlist; addr != NULL; addr = addr->next)
     if (errno != 0 || buffer[0] == 0) goto RESPONSE_FAILED;
     addr->message = string_sprintf("LMTP error after %s: %s", big_buffer,
       string_printing(buffer));
+    setflag(addr, af_pass_message);   /* Allow message to go to user */
     if (buffer[0] == '5') addr->transport_return = FAIL; else
       {
       addr->basic_errno = ERRNO_RCPT4XX;
@@ -697,6 +698,7 @@ if (send_data)
       addr->message = string_sprintf("LMTP error after %s: %s", big_buffer,
         string_printing(buffer));
       addr->transport_return = (buffer[0] == '5')? FAIL : DEFER;
+      setflag(addr, af_pass_message);   /* Allow message to go to user */
       }
     }
   }