aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2012-04-19 17:53:19 -0400
committerNick Mathewson <nickm@torproject.org>2012-04-19 17:53:19 -0400
commit2d24994d166f6d89a685b83a9021c360cd828905 (patch)
treed03223a01e22fc3d5fcc3e7553ac7509af0a664e
parentbd7724a57eeb756232f5be222c643ccb8b364966 (diff)
parent32267809b529a636e556be4b42630bfc56a61fb5 (diff)
downloadtor-2d24994d166f6d89a685b83a9021c360cd828905.tar.gz
tor-2d24994d166f6d89a685b83a9021c360cd828905.zip
Merge remote-tracking branch 'asn-mytor/bug5601'
-rw-r--r--src/or/circuitbuild.c36
1 files changed, 18 insertions, 18 deletions
diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c
index 1c7367a3fc..5481838ccb 100644
--- a/src/or/circuitbuild.c
+++ b/src/or/circuitbuild.c
@@ -4793,25 +4793,25 @@ int
validate_pluggable_transports_config(void)
{
/* Don't validate if managed proxies are not yet fully configured. */
- if (bridge_list && !pt_proxies_configuration_pending()) {
- SMARTLIST_FOREACH_BEGIN(bridge_list, bridge_info_t *, b) {
- /* Skip bridges without transports. */
- if (!b->transport_name)
- continue;
- /* See if the user has Bridges that specify nonexistent
- pluggable transports. We should warn the user in such case,
- since it's probably misconfiguration. */
- if (!transport_get_by_name(b->transport_name))
- log_warn(LD_CONFIG, "You have a Bridge line using the %s "
- "pluggable transport, but there doesn't seem to be a "
- "corresponding ClientTransportPlugin line.",
- b->transport_name);
- } SMARTLIST_FOREACH_END(b);
-
- return 0;
- } else {
+ if (!bridge_list || pt_proxies_configuration_pending())
return -1;
- }
+
+ SMARTLIST_FOREACH_BEGIN(bridge_list, const bridge_info_t *, b) {
+ /* Skip bridges without transports. */
+ if (!b->transport_name)
+ continue;
+ /* See if the user has Bridges that specify nonexistent
+ pluggable transports. We should warn the user in such case,
+ since it's probably misconfiguration. */
+ if (!transport_get_by_name(b->transport_name))
+ log_warn(LD_CONFIG, "We can't find a pluggable transport proxy "
+ "that supports '%s' for bridge '%s:%u'. This can happen "
+ "if you haven't provided a ClientTransportPlugin line, or "
+ "if your pluggable transport proxy stopped working.",
+ b->transport_name, fmt_addr(&b->addr), b->port);
+ } SMARTLIST_FOREACH_END(b);
+
+ return 0;
}
/** Return a bridge pointer if <b>ri</b> is one of our known bridges