-$Cambridge: exim/doc/doc-txt/NewStuff,v 1.169 2010/06/05 23:50:18 pdp Exp $
+$Cambridge: exim/doc/doc-txt/NewStuff,v 1.176 2010/06/14 18:51:10 pdp Exp $
New Features in Exim
--------------------
Version 4.73
------------
+ NOTE: this version is not guaranteed backwards-compatible, please read the
+ items below carefully
+
1. A new main configuration option, "openssl_options", is available if Exim
is built with SSL support provided by OpenSSL. The option allows
administrators to specify OpenSSL options to be used on connections;
av_scanner = clamd:192.0.2.3 1234:local
+ ClamAV's ExtendedDetectionInfo response format is now handled.
+
4. There is now a -bmalware option, restricted to admin users. This option
takes one parameter, a filename, and scans that file with Exim's
malware-scanning framework. This is intended purely as a debugging aid
to ensure that Exim's scanning is working, not to replace other tools.
+ Note that the ACL framework is not invoked, so if av_scanner references
+ ACL variables without a fallback then this will fail.
5. There is a new expansion operator, "reverse_ip", which will reverse IP
addresses; IPv4 into dotted quad, IPv6 into dotted nibble. Examples:
${reverse_ip:2001:0db8:c42:9:1:abcd:192.0.2.3}
-> 3.0.2.0.0.0.0.c.d.c.b.a.1.0.0.0.9.0.0.0.2.4.c.0.8.b.d.0.1.0.0.2
+ 6. There is a new ACL control called "debug", to enable debug logging.
+ This allows selective logging of certain incoming transactions within
+ production environments, with some care. It takes two options, "tag"
+ and "opts"; "tag" is included in the filename of the log and "opts"
+ is used as per the -d<options> command-line option. Examples, which
+ don't all make sense in all contexts:
+
+ control = debug
+ control = debug/tag=.$sender_host_address
+ control = debug/opts=+expand+acl
+ control = debug/tag=.$message_exim_id/opts=+expand
+
+ 7. It has always been implicit in the design and the documentation that
+ "the Exim user" is not root. src/EDITME said that using root was
+ "very strongly discouraged". This is not enough to keep people from
+ shooting themselves in the foot in days when many don't configure Exim
+ themselves but via package build managers. The security consequences of
+ running various bits of network code are severe if there should be bugs in
+ them. As such, the Exim user may no longer be root. If configured
+ statically, Exim will refuse to build. If configured as ref:user then Exim
+ will exit shortly after start-up. If you must shoot yourself in the foot,
+ then henceforth you will have to maintain your own local patches to strip
+ the safeties off.
+
+ 8. There is a new expansion operator, bool_lax{}. Where bool{} uses the ACL
+ condition logic to determine truth/failure and will fail to expand many
+ strings, bool_lax{} uses the router condition logic, where most strings
+ do evaluate true.
+ Note: bool{00} is false, bool_lax{00} is true.
+
+ 9. Routers now support multiple "condition" tests,
+
+10. There is now a runtime configuration option "tcp_wrappers_daemon_name".
+ Setting this allows an admin to define which entry in the tcpwrappers
+ config file will be used to control access to the daemon. This option
+ is only available when Exim is built with USE_TCP_WRAPPERS. The
+ default value is set at build time using the TCP_WRAPPERS_DAEMON_NAME
+ build option.
+
+11. [POSSIBLE CONFIG BREAKAGE] The default value for system_filter_user is now
+ the Exim run-time user, instead of root.
+
+12. [POSSIBLE CONFIG BREAKAGE] ALT_CONFIG_ROOT_ONLY is no longer optional and
+ is forced on. This is mitigated by the new build option
+ TRUSTED_CONFIG_PREFIX_LIST which defines a list of pathname prefices which
+ are trusted; if a config file is owned by root and is under that prefix,
+ then it may be used by the Exim run-time user.
+
+13. [POSSIBLE CONFIG BREAKAGE] The Exim user is no longer automatically
+ trusted to supply -D<Macro[=Value]> overrides on the command-line. Going
+ forward, we recommend using TRUSTED_CONFIG_PREFIX_LIST with shim configs
+ that include the main config. As a transition mechanism, we are
+ temporarily providing a work-around: the new build option
+ WHITELIST_D_MACROS provides a colon-separated list of macro names which
+ may be overriden by the Exim run-time user. The values of these macros
+ are constrained to the regex ^[A-Za-z0-9_/.-]*$ (which explicitly does
+ allow for empty values).
+
Version 4.72
------------
2. Experimental DCC support via dccifd (contributed by Wolfgang Breyha).
3. There is now a bool{} expansion condition which maps certain strings to
- true/false condition values (most likely of use in conjuction with the
+ true/false condition values (most likely of use in conjunction with the
and{} expansion operator).
4. The $spam_score, $spam_bar and $spam_report variables are now available
9. The transport_filter_timeout option now applies to SMTP transports too.
+Version 4.69
+------------
+
+ 1. Preliminary DKIM support in Experimental.
+
+
Version 4.68
------------