[tor-commits] [tor/master] Fix remaining case of circpathbias inspecting entryguard internals

nickm at torproject.org nickm at torproject.org
Fri Dec 16 16:26:17 UTC 2016


commit 62477906e9b5a378bcdd7b4588253ee422ccbb9f
Author: Nick Mathewson <nickm at torproject.org>
Date:   Mon Nov 14 12:48:18 2016 -0500

    Fix remaining case of circpathbias inspecting entryguard internals
---
 src/or/circpathbias.c | 2 +-
 src/or/entrynodes.c   | 7 +++++++
 src/or/entrynodes.h   | 1 +
 3 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/or/circpathbias.c b/src/or/circpathbias.c
index a2e1641..7a9af82 100644
--- a/src/or/circpathbias.c
+++ b/src/or/circpathbias.c
@@ -1175,7 +1175,7 @@ pathbias_count_circs_in_states(entry_guard_t *guard,
     if (ocirc->path_state >= from &&
         ocirc->path_state <= to &&
         pathbias_should_count(ocirc) &&
-        fast_memeq(guard->identity,
+        fast_memeq(entry_guard_get_rsa_id_digest(guard),
                    ocirc->cpath->extend_info->identity_digest,
                    DIGEST_LEN)) {
       log_debug(LD_CIRC, "Found opened circuit %d in path_state %s",
diff --git a/src/or/entrynodes.c b/src/or/entrynodes.c
index 32d198a..1324e31 100644
--- a/src/or/entrynodes.c
+++ b/src/or/entrynodes.c
@@ -177,6 +177,13 @@ entry_guard_describe(const entry_guard_t *guard)
   return buf;
 }
 
+/** Return <b>guard</b>'s 20-byte RSA identity digest */
+const char *
+entry_guard_get_rsa_id_digest(const entry_guard_t *guard)
+{
+  return guard->identity;
+}
+
 /** Check whether the entry guard <b>e</b> is usable, given the directory
  * authorities' opinion about the router (stored in <b>ri</b>) and the user's
  * configuration (in <b>options</b>). Set <b>e</b>->bad_since
diff --git a/src/or/entrynodes.h b/src/or/entrynodes.h
index 97ae3ac..ba8cd9f 100644
--- a/src/or/entrynodes.h
+++ b/src/or/entrynodes.h
@@ -104,6 +104,7 @@ int num_live_entry_guards(int for_directory);
 
 const node_t *entry_guard_find_node(const entry_guard_t *guard);
 void entry_guard_mark_bad(entry_guard_t *guard);
+const char *entry_guard_get_rsa_id_digest(const entry_guard_t *guard);
 const char *entry_guard_describe(const entry_guard_t *guard);
 
 #ifdef ENTRYNODES_PRIVATE





More information about the tor-commits mailing list