[or-cvs] [tor/master] Allow clients to use relays as bridges

nickm at torproject.org nickm at torproject.org
Tue Sep 14 17:46:54 UTC 2010


Author: Sebastian Hahn <sebastian at torproject.org>
Date: Fri, 20 Aug 2010 07:39:03 +0200
Subject: Allow clients to use relays as bridges
Commit: 33ae3f4b5c5bffd8ab6fae34f90b0bd5b0fa0ce5

---
 changes/bug1776_v3  |    3 +++
 src/or/routerlist.c |    6 ++++--
 2 files changed, 7 insertions(+), 2 deletions(-)
 create mode 100644 changes/bug1776_v3

diff --git a/changes/bug1776_v3 b/changes/bug1776_v3
new file mode 100644
index 0000000..18d5185
--- /dev/null
+++ b/changes/bug1776_v3
@@ -0,0 +1,3 @@
+  o Minor bugfixes:
+    - Really allow clients to use relays as bridges. Fixes bug 1776;
+      bugfix on 0.2.2.15-alpha.
diff --git a/src/or/routerlist.c b/src/or/routerlist.c
index 8808f56..c393e07 100644
--- a/src/or/routerlist.c
+++ b/src/or/routerlist.c
@@ -3159,8 +3159,10 @@ router_add_to_routerlist(routerinfo_t *router, const char **msg,
     /* If we have this descriptor already and the new descriptor is a bridge
      * descriptor, replace it. If we had a bridge descriptor before and the
      * new one is not a bridge descriptor, don't replace it. */
-    if (old_router && (!routerinfo_is_a_configured_bridge(router) ||
-                routerinfo_is_a_configured_bridge(old_router))) {
+    tor_assert(old_router);
+    if (! (routerinfo_is_a_configured_bridge(router) &&
+            (router->purpose == ROUTER_PURPOSE_BRIDGE ||
+             old_router->purpose != ROUTER_PURPOSE_BRIDGE))) {
       log_info(LD_DIR,
                "Dropping descriptor that we already have for router '%s'",
                router->nickname);
-- 
1.7.1



More information about the tor-commits mailing list