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.98
+------------
+ 1. A sieve_inbox option for redirect routers
+
+ 2. A "connection_id" variable
+
+ 3. Events smtp:fail:protocol and smtp:fail:syntax
+
+ 4. JSON and LDAP lookup support, SPF, DKIM, DMARC and ARC support, all the
+ router and authenticator drivers, and all the transport drivers except
+ smtp, can now be built as loadable modules
+
+Version 4.98
+------------
+ 1. The dkim_status ACL condition may now be used in data ACLs
+
+ 2. The dkim_verbose logging control also enables logging of signing
+
+ 3. The dkim_timestamps signing option now accepts zero to include a current
+ timestamp but no expiry timestamp. Code by Simon Arlott; testsuite
+ additions by jgh
+
+ 4. The recipients_max main option is now expanded
+
+ 5. Setting variables for "exim -be" can set a tainted value
+
+ 6. A dns:fail event
+
+ 7. The dsearch lookup supports search for a sub-path
+
+ 8. Include mailtest utility for simple connection checking
+
+ 9. Add SMTP WELLKNOWN extension
+
+ 10. Sqlite3 can be used for the hints databases (vs. DBD, NDB, GBDM, TDB).
+ Add "USE_SQLITE = y" and "DBMLIB = -lsqlite3" in Local/Makefile, to
+ override the settings done in the OS/Makefile-<platform> file
+
+Version 4.97
+------------
+
+ 1. The expansion-test facility (exim -be) can set variables.
+
+ 2. An event on a failing SMTP AUTH, for both client and server operations.
+
+ 3. Variable $sender_helo_verified with the result of an ACL "verify = helo".
+
+ 4. Predefined macros for expansion items, operators, conditions and variables.
+
+ 5. The smtp transport option "max_rcpt" is now expanded before use.
+
+ 6. The tls_eccurve option for OpenSSL now takes a list of group names.
+
+ 7. Queue runners for several queues can now be started from one daemon.
+
+ 8. New utility exim_msgdate converts message-ids to human readable format.
+
+ 9. An expansion operator for wrapping long header lines.
+
+ 10. A commandline option to print just the message IDs of the queue
+
+ 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
------------
4. An event for failing TLS connects to the daemon.
- 5. Tainted data used for a query-style lookup should be quoted using the
- expansion item for the lookup type. If not, a warning will be written to
- the main and panic logs. A future release will enforce this by failing
- the lookup.
+ 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.
- 6. The ACL "debug" control gains options "stop", "pretrigger" and "trigger".
+ 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
------------
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.