diff options
author | Philip Hazel <ph10@hermes.cam.ac.uk> | 2005-11-21 12:04:23 +0000 |
---|---|---|
committer | Philip Hazel <ph10@hermes.cam.ac.uk> | 2005-11-21 12:04:23 +0000 |
commit | d27f1df3feb4ff58a8e3948b91797111d62f73e2 (patch) | |
tree | 4784eb1f7b28fbd3e2f69d86f0e417b456bea67a /src | |
parent | df199fec8faee495664d153096dff38faf3ba3ad (diff) |
Mend comparison bug for canonical vs non-canonical IPv6 addresses.
Diffstat (limited to 'src')
-rw-r--r-- | src/src/host.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/src/src/host.c b/src/src/host.c index f3652c309..a5b850007 100644 --- a/src/src/host.c +++ b/src/src/host.c @@ -1,4 +1,4 @@ -/* $Cambridge: exim/src/src/host.c,v 1.17 2005/11/11 10:02:04 ph10 Exp $ */ +/* $Cambridge: exim/src/src/host.c,v 1.18 2005/11/21 12:04:23 ph10 Exp $ */ /************************************************* * Exim - an Internet mail transport agent * @@ -1836,13 +1836,10 @@ for (hname = sender_host_name; hname != NULL; hname = *aliases++) if ((rc = host_find_byname(&h, NULL, NULL, FALSE)) == HOST_FOUND) { host_item *hh; - uschar *address_ipv4 = (Ustrncmp(sender_host_address, "::ffff:", 7) == 0)? - sender_host_address + 7 : sender_host_address; HDEBUG(D_host_lookup) debug_printf("checking addresses for %s\n", hname); for (hh = &h; hh != NULL; hh = hh->next) { - if ((Ustrcmp(hh->address, (Ustrchr(hh->address, ':') == NULL)? - address_ipv4 : sender_host_address)) == 0) + if (host_is_in_net(hh->address, sender_host_address, 0)) { HDEBUG(D_host_lookup) debug_printf(" %s OK\n", hh->address); ok = TRUE; |