Option for taint when setting variable under -be
[exim.git] / doc / doc-txt / NewStuff
index 0ef9ab25e221644ee2e698593100dbec3a9bd834..58ab945beb113ca70a54e5a1f9a29489cd6acd6f 100644 (file)
@@ -6,55 +6,74 @@ Before a formal release, there may be quite a lot of detail so that people can
 test from the snapshots or the Git before the documentation is updated. Once
 the documentation is updated, this file is reduced to a short list.
 
-Version 4.95
+Version 4.98
 ------------
+ 1. The dkim_status ACL condition may now be used in data ACLs
 
- 1. The fast-ramp two phase queue run support, previously experimental, is
-    now supported by default.
+ 2. The dkim_verbose logging control also enables logging of signing
 
- 2. The native SRS support, previously experimental, is now supported. It is
-    not built unless specified in the Local/Makefile.
+ 3. The dkim_timestamps signing option now accepts zero to include a current
+    timestamp but no extiry timestamp.  Code by Simon Arlott; testsuite
+    additions by jgh.
 
- 3. TLS resumption support, previously experimental, is now supported and
-    included in default builds.
+ 4. The recipients_max main option is now expanded.
 
- 4. Single-key LMDB lookups, previously experimental, are now supported.
-    The support is not built unless specified in the Local/Makefile.
+ 5. Setting variables for "exim -be" can set a tainted value.
 
- 5. Option "message_linelength_limit" on the smtp transport to enforce (by
-    default) the RFC 998 character limit.
+Version 4.97
+------------
 
6. An option to ignore the cache on a lookup.
1. The expansion-test facility (exim -be) can set variables.
 
- 7. Quota checking during reception (i.e. at SMTP time) for appendfile-
-    transport-managed quotas.
+ 2. An event on a failing SMTP AUTH, for both client and server operations.
 
- 8. Sqlite lookups accept a "file=<path>" option to specify a per-operation
-    db file, replacing the previous prefix to the SQL string (which had
-    issues when the SQL used tainted values).
+ 3. Variable $sender_helo_verified with the result of an ACL "verify = helo".
 
- 9. Lsearch lookups accept a "ret=full" option, to return both the portion
-    of the line matching the key, and the remainder.
+ 4. Predefined macros for expansion items, operators, conditions and variables.
 
-10. A command-line option to have a daemon not create a notifier socket.
+ 5. The smtp transport option "max_rcpt" is now expanded before use.
 
-11. Faster TLS startup.  When various configuration options contain no
-    expandable elements, the information can be preloaded and cached rather
-    than the provious behaviour of always loading at startup time for every
-    connection.  This helps particularly for the CA bundle.
+ 6. The tls_eccurve option for OpenSSL now takes a list of group names.
 
-12. Proxy Protocol Timeout is configurable via "proxy_protocol_timeout"
-    main config option.
+ 7. Queue runners for several queues can now be started from one daemon.
 
-13. Option "smtp_accept_msx_per_connection" is now expanded.
+ 8. New utility exim_msgdate converts message-ids to human readable format.
 
-14. Log selector "queue_size_exclusive", enabled by default, to exclude the
-    time taken for reception from QT log elements.
+ 9. An expansion operator for wrapping long header lines.
 
-15. Main option "smtp_backlog_monitor", to set a level abve which listen
-    socket backlogs are logged.
+ 10. A commandline option to print just the message IDs of the queue
 
-16. Main option "hosts_require_helo", requiring HELO or EHLO before MAIL.
+ 11. An option for the ${readsocket } expansion to set an SNI for TLS.
+
+ 12. The ACL remove_header modifier can take a pattern.
+
+ 13. Variable $recipients_list, a properly-quoted exim list.
+
+ 14. A log_selector for an incoming connection ID.
+
+Version 4.96
+------------
+
+ 1. A new ACL condition: seen. Records/tests a timestamp against a key.
+
+ 2. A variant of the "mask" expansion operator to give normalised IPv6.
+
+ 3. UTC output option for exim_dumpdb, exim_fixdb.
+
+ 4. An event for failing TLS connects to the daemon.
+
+ 5. The ACL "debug" control gains options "stop", "pretrigger" and "trigger".
+
+ 6. Query-style lookups are now checked for quoting, if the query string is
+    built using untrusted data ("tainted").  For now lack of quoting is merely
+    logged; a future release will upgrade this to an error.
+
+ 7. The expansion conditions match_<list-type> and inlist now set $value for
+    the expansion of the "true" result of the ${if}.  With a static list, this
+    can be used for de-tainting.
+
+ 8. Recipient verify callouts now set $domain_data & $local_part_data, with
+    de-tainted values.
 
 Version 4.95
 ------------
@@ -90,16 +109,29 @@ Version 4.95
 
 11. Faster TLS startup.  When various configuration options contain no
     expandable elements, the information can be preloaded and cached rather
-    than the provious behaviour of always loading at startup time for every
+    than the previous behaviour of always loading at startup time for every
     connection.  This helps particularly for the CA bundle.
 
 12. Proxy Protocol Timeout is configurable via "proxy_protocol_timeout"
     main config option.
 
-13. Option "smtp_accept_msx_per_connection" is now expanded.
+13. Option "smtp_accept_max_per_connection" is now expanded.
+
+14. Log selector "queue_time_exclusive", enabled by default, to exclude the
+    time taken for reception from QT log elements.
+
+15. Main option "smtp_backlog_monitor", to set a level above which listen
+    socket backlogs are logged.
+
+16. Main option "hosts_require_helo", requiring HELO or EHLO before MAIL.
+
+17. A main config option "allow_insecure_tainted_data" allows to turn
+
+18. TLS ALPN handling.  By default, refuse TLS connections that try to specify
+    a non-smtp (eg. http) use.  Options for customising.
+
+19. Support for MacOS (darwin) has been dropped.
 
-13. A main config option "allow_insecure_tainted_data" allows to turn
-    taint errors into warnings.
 
 Version 4.94
 ------------
@@ -1172,7 +1204,7 @@ Version 4.68
 
  9. There is a new ACL, specified by acl_smtp_notquit, which is run in most
     cases when an SMTP session ends without sending QUIT. However, when Exim
-    itself is is bad trouble, such as being unable to write to its log files,
+    itself is in bad trouble, such as being unable to write to its log files,
     this ACL is not run, because it might try to do things (such as write to
     log files) that make the situation even worse.