*************************************************/
/* Copyright (c) University of Cambridge 1995 - 2015 */
+/* Copyright (c) The Exim Maintainers 2020 */
/* See the file NOTICE for conditions of use and distribution. */
address_item **addr_new)
{
BOOL self_send = FALSE;
-host_item *h, *next_h, *prev;
/* Look up each host address. A lookup may add additional items into the chain
if there are multiple addresses. Hence the use of next_h to start each cycle of
list of MX hosts. If the first host is the local host, act according to the
"self" option in the configuration. */
-for (prev = NULL, h = addr->host_list; h; h = next_h)
+for (host_item * prev = NULL, * h = addr->host_list, *next_h; h; h = next_h)
{
const uschar *canonical_name;
int rc, len, port, mx, sort_key;
if (lookup_type & LK_DEFAULT)
{
DEBUG(D_route|D_host_lookup)
- debug_printf("DNS lookup failed: trying getipnodebyname\n");
+ debug_printf("DNS lookup failed: trying %s\n",
+ f.running_in_test_harness
+ ? "host_fake_gethostbyname" : "getipnodebyname");
rc = host_find_byname(h, ignore_target_hosts, HOST_FIND_QUALIFY_SINGLE,
&canonical_name, TRUE);
}
port, mx and sort_key. */
if (port != PORT_NONE)
- {
- host_item *hh;
- for (hh = h; hh != next_h; hh = hh->next) hh->port = port;
- }
+ for (host_item * hh = h; hh != next_h; hh = hh->next)
+ hh->port = port;
if (mx != MX_NONE)
- {
- host_item *hh;
- for (hh = h; hh != next_h; hh = hh->next)
+ for (host_item * hh = h; hh != next_h; hh = hh->next)
{
hh->mx = mx;
hh->sort_key = sort_key;
}
- }
/* A local host gets chopped, with its successors, if there are previous
hosts. Otherwise the self option is used. If it is set to "send", any
DEBUG(D_route)
{
debug_printf("Removed from host list:\n");
- for (; h != NULL; h = h->next) debug_printf(" %s\n", h->name);
+ for (; h; h = h->next) debug_printf(" %s\n", h->name);
}
prev->next = NULL;
setflag(addr, af_local_host_removed);