[tor-commits] [tor/master] Switch to use should_record_bridge_info()

dgoulet at torproject.org dgoulet at torproject.org
Thu Apr 5 13:53:27 UTC 2018


commit f5f9c2554601e51157d8b563f124cea3fd3d98d4
Author: Neel Chauhan <neel at neelc.org>
Date:   Thu Apr 5 08:35:21 2018 -0400

    Switch to use should_record_bridge_info()
    
    Both in geoip_note_client_seen() and options_need_geoip_info(), switch from
    accessing the options directly to using the should_record_bridge_info() helper
    function.
    
    Fixes #25290
    
    Signed-off-by: David Goulet <dgoulet at torproject.org>
---
 changes/ticket25290 | 5 +++++
 src/or/config.c     | 3 +--
 src/or/geoip.c      | 3 +--
 3 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/changes/ticket25290 b/changes/ticket25290
new file mode 100644
index 000000000..5e44f5e05
--- /dev/null
+++ b/changes/ticket25290
@@ -0,0 +1,5 @@
+  o Code simplification and refactoring:
+    - We switch to should_record_bridge_info() in geoip_note_client_seen() and
+      options_need_geoip_info() instead of accessing the configuration values
+      directly. Fixes bug 25290; bugfix on 0.2.1.6-alpha. Patch by Neel
+      Chauhan.
diff --git a/src/or/config.c b/src/or/config.c
index 212c6c6b9..8658a1326 100644
--- a/src/or/config.c
+++ b/src/or/config.c
@@ -1682,8 +1682,7 @@ options_act_reversible(const or_options_t *old_options, char **msg)
 int
 options_need_geoip_info(const or_options_t *options, const char **reason_out)
 {
-  int bridge_usage =
-    options->BridgeRelay && options->BridgeRecordUsageByCountry;
+  int bridge_usage = should_record_bridge_info(options);
   int routerset_usage =
     routerset_needs_geoip(options->EntryNodes) ||
     routerset_needs_geoip(options->ExitNodes) ||
diff --git a/src/or/geoip.c b/src/or/geoip.c
index 572bba577..2c917c564 100644
--- a/src/or/geoip.c
+++ b/src/or/geoip.c
@@ -628,8 +628,7 @@ geoip_note_client_seen(geoip_client_action_t action,
     /* Only remember statistics if the DoS mitigation subsystem is enabled. If
      * not, only if as entry guard or as bridge. */
     if (!dos_enabled()) {
-      if (!options->EntryStatistics &&
-          (!(options->BridgeRelay && options->BridgeRecordUsageByCountry))) {
+      if (!options->EntryStatistics && !should_record_bridge_info(options)) {
         return;
       }
     }



More information about the tor-commits mailing list