Subject: CVS commit: pkgsrc/mail/exim
To: None <pkgsrc-changes@NetBSD.org>
From: David Brownlee <abs@netbsd.org>
List: pkgsrc-changes
Date: 10/09/2005 10:43:50
Module Name:	pkgsrc
Committed By:	abs
Date:		Sun Oct  9 10:43:50 UTC 2005

Modified Files:
	pkgsrc/mail/exim: Makefile distinfo

Log Message:
Update exim to 4.54. Changes since 4.52

Exim version 4.54
-----------------

PH/01 The ${base62: operator adjusted itself to base 36 when BASE_62 was
      set to 36 (for Darwin and Cygwin), but the ${base62d: operator did not.
      It now does.

PH/02 Two minor problems detected in Cygwin: the os.{c,h} files had lost */ on
      the CVS lines, and there was a missing #if HAVE_IPV6 in host.c.

PH/03 Typo: missing ".o" in src/pcre/Makefile.

PH/04 Tighten up "personal" tests: Instead of testing for any "List-"
      header line, restrict the check to what is listed in RFCs 2369 and 2929.
      Also, for "Auto-Submitted", treat anything other than "no" as
      non-personal, in accordance with RFC 3834. (Previously it treated
      anything starting "auto-" as non-personal.)

TF/01 The control=submission/name=... option had a problem with syntax
      errors if the name included a slash character. The /name= option
      now slurps the rest of the string, so it can include any characters
      but it must come last in the list of options (after /sender_retain
      or /domain=).

PH/05 Some modifications to the interface to the fake nameserver for the new
      testing suite.

Exim version 4.53
-----------------

TK/01 Added the "success_on_redirect" address verification option. See
      NewStuff for rationale and an example.

PH/01 Added support for SQLite, basic code supplied by David Woodhouse.

PH/02 Patch to exigrep to allow it to work on syslog lines.

PH/03 When creating an mbox file for a virus/spam scan, use fseek() instead of
      fread() to skip over the body file's header line, because in Cygwin the
      header line is locked and is inaccessible.

PH/04 Added $message_exim_id, ultimately to replace $message_id (they will both
      co-exist for some time) to make it clear that it is the Exim ID that is
      referenced, not the Message-ID: header line.

PH/05 Replaced all Tom's calls to snprintf() with calls to the internal
      string_format() function, because snprintf() does not exist on all
      operating systems.

PH/06 The use of forbid_filter_existstest now also locks out the use of the
      ${stat: expansion item.

PH/07 Changed "SMTP protocol violation: synchronization error" into "SMTP
      protocol synchronization error", to keep the pedants happy.

PH/08 Arrange for USE_INET_NTOA_FIX to be set in config.h for AIX systems as
      well as for IRIX systems, when gcc is being used. See the host.c source
      file for comments.

PH/09 Installed latest Cygwin configuration files from the Cygwin maintainer.

PH/10 Named domain lists were not working if used in a queue_smtp_domains
      setting.

PH/11 Added support for the IGNOREQUOTA extension to LMTP, both to the lmtp
      transport and to the smtp transport in LMTP mode.

TK/02 Remove one case of BASE64 error detection FTTB (undocumented anyway).

PH/12 There was a missing call to search_tidyup() before the fork() in rda.c to
      run a filter in a subprocess. This could lead to confusion in subsequent
      lookups in the parent process. There should also be a search_tidyup() at
      the end of the subprocess.

PH/13 Previously, if "verify = helo" was set in an ACL, the condition was true
      only if the host matched helo_try_verify_hosts, which caused the
      verification to occur when the EHLO/HELO command was issued. The ACL just
      tested the remembered result. Now, if a previous verification attempt has
      not happened, "verify = helo" does it there and then.

JJ/01 exipick: added $message_exim_id variable (see 4.53-PH/04)

TK/03 Fix log output including CR from clamd.

PH/14 A reference to $reply_address when Reply-to: was empty and From: did not
      exist provoked a memory error which could cause a segfault.

PH/15 Installed PCRE 6.2

PH/17 Defined BIND_8_COMPAT in the Darwin os.h file.

PH/18 Reversed 4.52/PH/17 because the HP-UX user found it wasn't the cause
      of the problem. Specifically, suggested +O2 rather than +O1 for the
      HP-UX compiler.

PH/19 Added sqlite_lock_timeout option (David Woodhouse's patch).

PH/20 If a delivery was routed to a non-standard port by means of an SRV
      record, the port was not correctly logged when the outgoing_port log
      selector was set (it logged the transort's default port).

PH/21 Added support for host-specific ports to manualroute, queryprogram,
      fallback_hosts, and "hosts" in the smtp transport.

PH/22 If the log selector "outgoing_port" is set, the port is now also given on
      host errors such as "Connection refused".

PH/23 Applied a patch to fix problems with exim-4.52 while doing radius
      authentication with radiusclient 0.4.9:

      - Error returned from rc_read_config was caught wrongly
      - Username/password not passed on to radius server due to wrong length.

      The presumption is that some radiusclient API changes for 4.51/PH/17
      were not taken care of correctly. The code is still untested by me (my
      Linux distribution still has 0.3.2 of radiusclient), but it was
      contributed by a Radius user.

PH/24 When doing a callout, the value of $domain wasn't set correctly when
      expanding the "port" option of the smtp transport.

TK/04 MIME ACL: Fix buffer underrun that occurs when EOF condition is met
      while reading a MIME header. Thanks to Tom Hughes for a patch.

PH/24 Include config.h inside local_scan.h so that configuration settings are
      available.

PH/25 Make $smtp_command_argument available after all SMTP commands. This means
      that in an ACL for RCPT (for example), you can examine exactly what was
      received.

PH/26 Exim was recognizing IPv6 addresses of the form [IPv6:....] in EHLO
      commands, but it was not correctly comparing the address with the actual
      client host address. Thus, it would show the EHLO address in Received:
      header lines when this was not necessary.

PH/27 Added the % operator to ${eval:}.

PH/28 Exim tries to create and chdir to its spool directory when it starts;
      it should be ignoring failures (because with -C, for example, it has lost
      privilege). It wasn't ignoring creation failures other than "already
      exists".

PH/29 Added "crypteq" to the list of supported features that Exim outputs when
      -bV or -d is used.

PH/30 Fixed (presumably very longstanding) bug in exim_dbmbuild: if it failed
      because an input line was too long, either on its own, or by virtue of
      too many continuations, the temporary file was not being removed, and the
      return code was incorrect.

PH/31 Missing "BOOL" in function definition in filtertest.c.

PH/32 Applied Sieve patches from the maintainer.

TK/05 Domainkeys: Accomodate for a minor API change in libdomainkeys 0.67.

PH/33 Added "verify = not_blind".

PH/34 There are settings for CHOWN_COMMAND and MV_COMMAND that can be used in
      Local/Makefile (with some defaults set). These are used in built scripts
      such as exicyclog, but they have never been used in the exim_install
      script (though there are many overriding facilities there). I have
      arranged that the exim_install script now takes note of these two
      settings.

PH/35 Installed configuration files for Dragonfly.

PH/36 When a locally submitted message by a trusted user did not contain a
      From: header, and the sender address was obtained from -f or from an SMTP
      MAIL command, and the trusted user did not use -F to supply a sender
      name, $originator_name was incorrectly used when constructing a From:
      header. Furthermore, $originator_name was used for submission mode
      messages from external hosts without From: headers in a similar way,
      which is clearly wrong.

PH/37 Added control=suppress_local_fixups.

PH/38 When log_selector = +received_sender was set, and the addition of the
      sender made the log line's construction buffer exactly full, or one byte
      less than full, an overflow happened when the terminating "\n" was
      subsequently added.

PH/39 Added a new log selector, "unknown_in_list", which provokes a log entry
      when the result of a list match is failure because a DNS lookup failed.

PH/40 RM_COMMAND is now used in the building process.

PH/41 Added a "distclean" target to the top-level Makefile; it deletes all
      the "build-* directories that it finds.

PH/42 (But a TF fix): In a domain list, Exim incorrectly matched @[] if the IP
      address in a domain literal was a prefix of an interface address.

PH/43 (Again a TF fix): In the dnslookup router, do not apply widen_domains
      when verifying a sender address, unless rewrite_headers is false.

PH/44 Wrote a long comment about why errors_to addresses are verified as
      recipients, not senders.

TF/01 Add missing LIBS=-lm to OS/Makefile-OpenBSD which was overlooked when
      the ratelimit ACL was added.

PH/45 Added $smtp_command for the full command (cf $smtp_command_argument).

PH/46 Added extra information about PostgreSQL errors to the error string.

PH/47 Added an interface to a fake DNS resolver for use by the new test suite,
      avoiding the need to install special zones in a real server. This is
      backwards compatible; if it can't find the fake resolver, it drops back.
      Thus, both old and new test suites can be run.

TF/02 Added util/ratelimit.pl

TF/03 Minor fix to the ratelimit code to improve its behaviour in case the
      clock is set back in time.

TF/04 Fix the ratelimit support in exim_fixdb. Patch provided by Brian
      Candler <B.Candler@pobox.com>.

TF/05 The fix for PH/43 was not completely correct; widen_domains is always
      OK for addresses that are the result of redirections.

PH/48 A number of further additions for the benefit of the new test suite,
      including a fake gethostbyname() that interfaces to the fake DNS resolver
      (see PH/47 above).

TF/06 The fix for widen_domains has also been applied to qualify_single and
      search_parents which are the other dnslookup options that can cause
      header rewrites.

PH/49 Michael Haardt's randomized retrying, but as a separate retry parameter
      type ("H").

PH/50 Make never_users, trusted_users, admin_groups, trusted_groups expandable.

TF/07 Exim produced the error message "an SRV record indicated no SMTP
      service" if it encountered an MX record with an empty target hostname.
      The message is now "an MX or SRV record indicated no SMTP service".

TF/08 Change PH/13 introduced the possibility that verify=helo may defer,
      if the DNS of the sending site is misconfigured. This is quite a
      common situation. This change restores the behaviour of treating a
      helo verification defer as a failure.

PH/51 If self=fail was set on a router, the bounce message did not include the
      actual error message.


To generate a diff of this commit:
cvs rdiff -r1.68 -r1.69 pkgsrc/mail/exim/Makefile
cvs rdiff -r1.29 -r1.30 pkgsrc/mail/exim/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.