Version 4.32
------------

 1. The exinext utility calls Exim to find out information such as the location
    of the spool directory. This utility now has -C and -D options, which
    are passed on to the exim commands. The first specifies an alternate Exim
    configuration file, and the second sets macros for use within the
    configuration file. These features are mainly to help in testing, but might
    also be useful in environment where more than one configuration file is in
    use.

 2. Exim caches the result of checking a named list if it is sure that the
    list is the same each time. In practice, this means that the cache
    operates only if the list contains no $ characters, which guarantees that
    it will not change when it is expanded. Sometimes, however, you may have an
    expanded list that you know will be the same each time within a given
    message. For example:

      domainlist special_domains = ${lookup{$sender_host_address}cdb{/some/file}}

    This provides a list of domains that depends only on the sending host's IP
    address. If this domain list is referenced a number of times (for example,
    in several ACL lines, or in several routers) the result of the check is not
    cached by default, because Exim does not know that it is going to be the
    same list each time.

    By appending "_cache" to "domainlist" you can now tell Exim to go ahead and
    cache the result anyway. For example:

      domainlist_cache special_domains = ${lookup{....

    If you do this, you should be absolutely sure that caching is going to do
    the right thing in all cases. When in doubt, leave it out.

 3. For compatibility with Sendmail, the command line option

      -prval:sval

    is equivalent to

      -oMr rval -oMs sval

    and sets the incoming protocol and host name (for trusted callers). The
    host name and its colon can be omitted when only the protocol is to be set.
    Note the Exim already has two private options, -pd and -ps, that refer to
    embedded Perl. It is therefore impossible to set a protocol value of "p" or
    "s", but I don't think that's a major issue.

 4. There is a new expansion operator:

      ${time_interval:xxxxx}

    The argument (after sub-expansion) must be a sequence of digits that
    represents an interval of time as a number of seconds. It is converted into
    a number of larger units and output in Exim's normal time format, for
    example, "1w3d4h2m6s".

 5. There are two new log selectors that cause additional items to be added
    to each successful delivery log line:

      "queue_time" records the amount of time the message has been in the queue
      on the local host. It is logged as QT=<time>, for example, QT=3m45s. The
      clock starts when Exim starts to receive the message, so it includes
      reception time as well as the delivery time of the current address.

      "deliver_time" records the amount of time it has taken to perform the
      actual delivery for the current address. It is logged as DT=<time>,
      for example, DT=1s.

 6. There is a new callout option for use when verifying recipients. It causes
    the actual sender address to be used in the MAIL command when performing
    the callout, instead of <>. (Exim 4.31 did this by default, but it proved
    contentious.) The new option is called "use_sender" and is used like this:

      require  verify = recipient/callout=use_sender

****
