-$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.333 2006/03/17 09:39:00 ph10 Exp $
+$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.334 2006/03/17 16:51:45 ph10 Exp $
Change log file for Exim from version 4.21
-------------------------------------------
PH/66 Updated OS/Makefile-HP-UX for gcc 4.1.0 with HP-UX 11.
+PH/67 Fixed minor infelicity in the sorting of addresses to ensure that IPv6
+ is preferred over IPv4.
+
Exim version 4.60
-----------------
-/* $Cambridge: exim/src/src/host.c,v 1.22 2006/02/16 10:05:33 ph10 Exp $ */
+/* $Cambridge: exim/src/src/host.c,v 1.23 2006/03/17 16:51:45 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
addresses of a multihomed host, but that should not matter. */
#if HAVE_IPV6
-if (h != last)
+if (h != last && !disable_ipv6)
{
for (h = host; h != last; h = h->next)
{
host_item temp;
host_item *next = h->next;
- if (h->mx != next->mx || /* If next is different MX value */
- (h->sort_key % 1000) < 500 || /* OR this one is IPv6 */
- (next->sort_key % 1000) >= 500) /* OR next is IPv4 */
- continue; /* move on to next */
- temp = *h;
+ if (h->mx != next->mx || /* If next is different MX */
+ h->address == NULL || /* OR this one is unset */
+ Ustrchr(h->address, ':') != NULL || /* OR this one is IPv6 */
+ (next->address != NULL &&
+ Ustrchr(next->address, ':') == NULL)) /* OR next is IPv4 */
+ continue; /* move on to next */
+ temp = *h; /* otherwise, swap */
temp.next = next->next;
*h = *next;
h->next = next;
ignore_bounce_errors_after = 0s
qualify_domain = test.ex
+disable_ipv6
# ----- Routers -----
ignore_bounce_errors_after = 0s
qualify_domain = test.ex
+disable_ipv6
# ----- ACLs -----
# ----- Main settings -----
domainlist anymx = @mx_any
+disable_ipv6
# ----- Routers -----
#! /usr/bin/perl -w
-# $Cambridge: exim/test/runtest,v 1.5 2006/02/16 14:34:42 ph10 Exp $
+# $Cambridge: exim/test/runtest,v 1.6 2006/03/17 16:51:45 ph10 Exp $
###############################################################################
# This is the controlling script for the "new" test suite for Exim. It should #
if ($is_stdout)
{
- # Skip translate_ip_address in -bP output because it ain't always there
+ # Skip translate_ip_address and use_classresources in -bP output because
+ # they aren't always there.
next if /translate_ip_address =/;
+ next if /use_classresources/;
# In certain filter tests, remove initial filter lines because they just
# clog up by repetition.
checking "condition"
DNS lookup of mxt1.test.ex (MX) using fakens
DNS lookup of mxt1.test.ex (MX) succeeded
-DNS lookup of eximtesthost.test.ex-AAAA: using cached value DNS_NODATA
DNS lookup of eximtesthost.test.ex (A) using fakens
DNS lookup of eximtesthost.test.ex (A) succeeded
local host has lowest MX
host ten-1.test.ex [V4NET.0.0.1] MX=0 port=25
x@mx246.test.ex
router = r1, transport = t1
- host v6.test.ex [unknown] MX=10 ** unusable **
host ten-1.test.ex [V4NET.0.0.1] MX=10
+ host v6.test.ex [unknown] MX=10 ** unusable **
x@srv02.test.ex
router = r1, transport = t1
host ten-1.test.ex [V4NET.0.0.1] MX=1 port=99