1Exim DSN Patch (4.82) 2--------------------- 3 4This patch is free software; you can redistribute it and/or modify 5it under the terms of the GNU General Public License as published by 6the Free Software Foundation; either version 2 of the License, or 7(at your option) any later version. 8 9This patch is distributed in the hope that it will be useful, 10but WITHOUT ANY WARRANTY; without even the implied warranty of 11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12GNU General Public License for more details. 13 14You should have received a copy of the GNU General Public License 15along with this patch; if not, write to the Free Software 16Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA. 17 18Installation & Usage 19-------------------- 20See docs/experimental-spec.txt 21 22Credits 23------- 24 25The original work for the patch was done by Philip Hazel in Exim 3 26 27The extract was taken and re-applied to Exim 4 by the following :- 28Phil Bingham (phil.bingham@cwipapps.net) 29Steve Falla (steve.falla@cwipapps.net) 30Ray Edah (ray.edah@cwipapps.net) 31Andrew Johnson (andrew.johnson@cwippaps.net) 32Adrian Hungate (adrian.hungate@cwipapps.net) 33 34Now Primarily maintained by :- 35Andrew Johnson (andrew.johnson@cwippaps.net) 36 37Updated for 4.82, improved and submitted to 38http://bugs.exim.org/show_bug.cgi?id=118 39by :- 40Wolfgang Breyha (wbreyha@gmx.net) 41 42Contributions 43------------- 44Andrey J. Melnikoff (TEMHOTA) (temnota@kmv.ru) 45 46 47ChangeLog 48--------- 4914-Apr-2006 : Changed subject to "Delivery Status Notification" 50 5117-May-2006 : debug_printf in spool-in.c were not wrapped with #ifndef COMPILE_UTILITY 52 thanks to Andrey J. Melnikoff for this information 53 5412-Sep-2006 : Now supports Exim 4.63 55 5612-Sep-2006 : src/EDITME did not include the #define SUPPORT_DSN as stated 57 in the documentation, this has now been corrected 58 thanks to Robert Kehl for this information 59 6028-Jul-2008 : New version for exim 4.69 released. 61 6202-Jul-2010 : New version for exim 4.72 released. 63 6425-Apr-2014 : Version 1.4 65 *) fix ENVID and ORCPT addition in SMTP transport 66 *) p was not moved to the end of the string. new content 67 added afterwards overwrites ENVID and/or ORCPT 68 *) change spool file format to be compatible with the 69 extensible format of exim 4 by prepending new values and 70 setting the extended bitmask accordingly 71 *) use SUPPORT_DSN_LEGACY=yes in Makefile to be able to read 72 the legacy format of older patches until all messages are out of queue. 73 *) change "dsn" boolean toggle to "dsn_advertise_hosts" to 74 be able to select who actually can use the extension 75 *) Add all RFC 3461 MUST fields to delivery-status section 76 *) convert xtext in ENVID 77 *) add all successful rcpts to ONE message instead of sending several messages 78 7926-Apr-2014 : Version 1.5 80 fixes: 81 *) fixed wrong order for ENVID 82 *) fixed wrong Final-Recipient value 83 *) af_ignore_failure is ignored for success reports 84 *) fixed DSN_LEGACY switch 85 improvements: 86 *) added MIME "failure" reports 87 *) bounce_return_message is ignored (required by RFC) 88 *) in case RET= is defined we honor these values 89 otherwise bounce_return_body is honored. 90 *) bounce_return_size_limit is always honored. 91 *) message body intro and final text is ignored 92 *) do not send report if DSN flags say NO 93 *) added MIME "delay" reports 94 *) do not send report if DSN flags say NO 95 *) changed from SUPPORT_DSN to EXPERIMENTAL_DSN 96 *) updated documentation 97 9801-May-2014 : Version 1.6 99 fixes: 100 *) code cleanup 101 *) use text/rfc822-headers were applicable 102 *) fix NOTIFY=FAILURE 103 104 improvements: 105 *) do not truncated MIME messages 106 *) if bounce_return_size_limit is smaller then the actual message 107 only the header is returned 108 *) if bounce_return_body or bounce_return_size_limit prevents Exim 109 from returning the requested (RET=FULL) body this fact is added 110 as X-Exim-DSN-Information Header 111 *) this also means that all of the last three parts of the "failure" 112 template are not used anymore 113 114 *) dsn_process switch removed 115 *) every router "processes" DSN by default 116 *) there is no possibility to "gag" DSN anymore since this violates RFC 117 *) dsn_lasthop switch added for routers 118 *) if dsn_lasthop is set by a router it is handled as relaying to a 119 non DSN aware relay. success mails are sent if Exim successfully 120 delivers the message. 121 *) redirect routers always "act" as if dsn_lasthop is set 122 123 *) address_item.dsn_aware changed from uschar to int for easier handling. 124 12502-May-2014 : fixes: 126 *) Reporting-MTA: use smtp_active_hostname instead of qualify_domain from 127 original patch. 128 12920-May-2014 : fixes: 130 *) removed support for EXPERIMENTAL_DSN_LEGACY for codebase inclusion 131 *) fixed build of exim_monitor tree 132 *) fixed late declaration of dsn_all_lasthop 133 134----------------- 135 136Support for this patch up to 1.3 (limited though it is) will only be provided through the SourceForge 137project page (http://sourceforge.net/projects/eximdsn/) 138 139From 1.4 onward feel free to ask on the exim-users mailinglist or add comments to 140http://bugs.exim.org/show_bug.cgi?id=118 141 142