ph10 2007/03/01 11:17:01 GMT
Modified files:
exim-doc/doc-txt ChangeLog
exim-src/src acl.c verify.c
exim-test/stdout 0365
Log:
A :defer: message was being suppressed unless smtp_error_details was
set, unlike :fail:. This is wrong, so has been fixed.
Revision Changes Path
1.486 +4 -0 exim/exim-doc/doc-txt/ChangeLog
1.75 +4 -1 exim/exim-src/src/acl.c
1.49 +1 -1 exim/exim-src/src/verify.c
1.3 +1 -1 exim/exim-test/stdout/0365
Index: ChangeLog
===================================================================
RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
retrieving revision 1.485
retrieving revision 1.486
diff -u -r1.485 -r1.486
--- ChangeLog 26 Feb 2007 14:07:04 -0000 1.485
+++ ChangeLog 1 Mar 2007 11:17:00 -0000 1.486
@@ -1,4 +1,4 @@
-$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.485 2007/02/26 14:07:04 ph10 Exp $
+$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.486 2007/03/01 11:17:00 ph10 Exp $
Change log file for Exim from version 4.21
-------------------------------------------
@@ -132,6 +132,10 @@
pipelining has not been advertised.
PH/30 MH's patch to allow iscntrl() characters to be list separators.
+
+PH/31 Unlike :fail:, a custom message specified with :defer: was not being
+ returned in the SMTP response when smtp_return_error_details was false.
+ This has been fixed.
Exim version 4.66
Index: acl.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/acl.c,v
retrieving revision 1.74
retrieving revision 1.75
diff -u -r1.74 -r1.75
--- acl.c 14 Feb 2007 15:33:40 -0000 1.74
+++ acl.c 1 Mar 2007 11:17:00 -0000 1.75
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/acl.c,v 1.74 2007/02/14 15:33:40 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/acl.c,v 1.75 2007/03/01 11:17:00 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -1976,10 +1976,13 @@
callout_overall, callout_connect, se_mailfrom, pm_mailfrom, NULL);
HDEBUG(D_acl) debug_printf("----------- end verify ------------\n");
+ *basic_errno = addr2.basic_errno;
*log_msgptr = addr2.message;
*user_msgptr = (addr2.user_message != NULL)?
addr2.user_message : addr2.message;
- *basic_errno = addr2.basic_errno;
+
+ /* Allow details for temporary error if the address is so flagged. */
+ if (testflag((&addr2), af_pass_message)) acl_temp_details = TRUE;
/* Make $address_data visible */
deliver_address_data = addr2.p.address_data;
Index: verify.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/verify.c,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -r1.48 -r1.49
--- verify.c 6 Feb 2007 12:19:27 -0000 1.48
+++ verify.c 1 Mar 2007 11:17:00 -0000 1.49
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/verify.c,v 1.48 2007/02/06 12:19:27 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/verify.c,v 1.49 2007/03/01 11:17:00 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -855,6 +855,7 @@
vaddr->basic_errno = addr->basic_errno;
vaddr->more_errno = addr->more_errno;
vaddr->p.address_data = addr->p.address_data;
+ copyflag(vaddr, addr, af_pass_message);
}
return yield;
}
@@ -1279,7 +1280,6 @@
}
fprintf(f, "%s\n", cr);
}
-
if (!full_info) return copy_error(vaddr, addr, DEFER);
else if (yield == OK) yield = DEFER;
}
Index: 0365
===================================================================
RCS file: /home/cvs/exim/exim-test/stdout/0365,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- 0365 16 Feb 2006 10:05:34 -0000 1.2
+++ 0365 1 Mar 2007 11:17:00 -0000 1.3
@@ -25,7 +25,7 @@
550 failure message
250 Reset OK
250 OK
-451 Temporary local problem - please try later
+451 defer message
250 Reset OK
221 the.local.host.name closing connection
220 the.local.host.name ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000