diff options
author | George Kadianakis <desnacked@riseup.net> | 2012-05-18 03:07:46 +0300 |
---|---|---|
committer | George Kadianakis <desnacked@riseup.net> | 2012-05-18 03:07:46 +0300 |
commit | 5dc9acb5e5d630372da991cb4c9569c593355273 (patch) | |
tree | c2e0e9047ce2322cbc6a286e6e30a3dcb0881405 /src/or/connection_or.c | |
parent | f00a8b430709aff3045fe20e3f776858e0ec79ae (diff) | |
download | tor-5dc9acb5e5d630372da991cb4c9569c593355273.tar.gz tor-5dc9acb5e5d630372da991cb4c9569c593355273.zip |
Use a more helpful log message when we can't find a proxy.
Diffstat (limited to 'src/or/connection_or.c')
-rw-r--r-- | src/or/connection_or.c | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/src/or/connection_or.c b/src/or/connection_or.c index 0d3f9d87f2..81df70eb37 100644 --- a/src/or/connection_or.c +++ b/src/or/connection_or.c @@ -1051,8 +1051,27 @@ connection_or_connect(const tor_addr_t *_addr, uint16_t port, conn->_base.proxy_state = PROXY_INFANT; } } else { - log_warn(LD_GENERAL, "Tried to connect through proxy, but proxy address " - "could not be found."); + /* get_proxy_addrport() might fail if we have a Bridge line that + references a transport, but no ClientTransportPlugin lines + defining its transport proxy. If this is the case, let's try to + output a useful log message to the user. */ + const char *transport_name = + find_transport_name_by_bridge_addrport(&TO_CONN(conn)->addr, + TO_CONN(conn)->port); + + if (transport_name) { + log_warn(LD_GENERAL, "We were supposed to connect to bridge '%s:%u' " + "using pluggable transport '%s', but it seems that we can't " + "find a pluggable transport proxy supporting '%s'. Please make " + "sure that your configuration file is valid.", + fmt_addr(&TO_CONN(conn)->addr), TO_CONN(conn)->port, + transport_name, transport_name); + } else { + log_warn(LD_GENERAL, "Tried to connect to '%s:%u' through a proxy, but " + "the proxy address could not be found.", + fmt_addr(&TO_CONN(conn)->addr), TO_CONN(conn)->port); + } + connection_free(TO_CONN(conn)); return NULL; } |