]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Prevent bridges from publishing router descriptors.
authorKarsten Loesing <karsten.loesing@gmx.net>
Wed, 13 May 2009 16:14:29 +0000 (18:14 +0200)
committerNick Mathewson <nickm@torproject.org>
Wed, 13 May 2009 20:45:59 +0000 (16:45 -0400)
Bridges are not supposed to publish router descriptors to the directory
authorities. It defeats the point of bridges when they are included in the
public relay directory.

This patch puts out a warning and exits when the node is configured as
a bridge and to publish v1, v2, or v3 descriptors at the same time.

Also fixes part of bug 932.

src/or/config.c

index 3d757c1bbb66dd00223c51806bb321b173b7248a..7c1b60dcf4db2c3c53c63e99f36b240ccd746fff 100644 (file)
@@ -3238,6 +3238,15 @@ options_validate(or_options_t *old_options, or_options_t *options,
     return -1;
   }
 
+  if ((options->BridgeRelay
+        || options->_PublishServerDescriptor & BRIDGE_AUTHORITY)
+      && options->_PublishServerDescriptor
+        & (V1_AUTHORITY + V2_AUTHORITY + V3_AUTHORITY)) {
+    REJECT("Bridges are not supposed to publish router descriptors to the "
+           "directory authorities. Please correct your "
+           "PublishServerDescriptor line.");
+  }
+
   if (options->MinUptimeHidServDirectoryV2 < 0) {
     log_warn(LD_CONFIG, "MinUptimeHidServDirectoryV2 option must be at "
                         "least 0 seconds. Changing to 0.");