git://git.exim.org
/
exim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Retry: always use interface, if set, for retry DB key. Bug 1678
[exim.git]
/
src
/
src
/
smtp_out.c
diff --git
a/src/src/smtp_out.c
b/src/src/smtp_out.c
index 724339556e4f4928aa8d50c70e916c7eabf44ebf..d32ef89b5dae2e727724a6944b64444375b0b774 100644
(file)
--- a/
src/src/smtp_out.c
+++ b/
src/src/smtp_out.c
@@
-26,7
+26,6
@@
Arguments:
which case the function does nothing
host_af AF_INET or AF_INET6 for the outgoing IP address
addr the mail address being handled (for setting errors)
which case the function does nothing
host_af AF_INET or AF_INET6 for the outgoing IP address
addr the mail address being handled (for setting errors)
- changed if not NULL, set TRUE if expansion actually changed istring
interface point this to the interface
msg to add to any error message
interface point this to the interface
msg to add to any error message
@@
-36,7
+35,7
@@
Returns: TRUE on success, FALSE on failure, with error message
BOOL
smtp_get_interface(uschar *istring, int host_af, address_item *addr,
BOOL
smtp_get_interface(uschar *istring, int host_af, address_item *addr,
-
BOOL *changed,
uschar **interface, uschar *msg)
+ uschar **interface, uschar *msg)
{
const uschar * expint;
uschar *iface;
{
const uschar * expint;
uschar *iface;
@@
-54,8
+53,6
@@
if (expint == NULL)
return FALSE;
}
return FALSE;
}
-if (changed != NULL) *changed = expint != istring;
-
while (isspace(*expint)) expint++;
if (*expint == 0) return TRUE;
while (isspace(*expint)) expint++;
if (*expint == 0) return TRUE;
@@
-270,8
+267,10
@@
int
smtp_connect(host_item *host, int host_af, int port, uschar *interface,
int timeout, transport_instance * tb)
{
smtp_connect(host_item *host, int host_af, int port, uschar *interface,
int timeout, transport_instance * tb)
{
+#ifdef EXPERIMENTAL_SOCKS
smtp_transport_options_block * ob =
(smtp_transport_options_block *)tb->options_block;
smtp_transport_options_block * ob =
(smtp_transport_options_block *)tb->options_block;
+#endif
if (host->port != PORT_NONE)
{
if (host->port != PORT_NONE)
{
@@
-282,6
+281,8
@@
if (host->port != PORT_NONE)
}
else host->port = port; /* Set the port actually used */
}
else host->port = port; /* Set the port actually used */
+callout_address = string_sprintf("[%s]:%d", host->address, port);
+
HDEBUG(D_transport|D_acl|D_v)
{
uschar * s = US" ";
HDEBUG(D_transport|D_acl|D_v)
{
uschar * s = US" ";
@@
-289,8
+290,7
@@
HDEBUG(D_transport|D_acl|D_v)
#ifdef EXPERIMENTAL_SOCKS
if (ob->socks_proxy) s = string_sprintf("%svia proxy ", s);
#endif
#ifdef EXPERIMENTAL_SOCKS
if (ob->socks_proxy) s = string_sprintf("%svia proxy ", s);
#endif
- debug_printf("Connecting to %s [%s]:%d%s... ",
- host->name, host->address, port, s);
+ debug_printf("Connecting to %s %s%s... ", host->name, callout_address, s);
}
/* Create and connect the socket */
}
/* Create and connect the socket */