]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Add dirserv_has_measured_bw() predicate wrapper for dirserv_query_measured_bw_cache()
authorAndrea Shepard <andrea@torproject.org>
Mon, 18 Mar 2013 18:56:42 +0000 (11:56 -0700)
committerAndrea Shepard <andrea@torproject.org>
Mon, 18 Mar 2013 18:56:42 +0000 (11:56 -0700)
src/or/dirserv.c
src/or/dirserv.h

index c769beda88146193d87f0e54222c2d86139d11be..47a4a73053ca19ee16160f07e6538da1950ef6b4 100644 (file)
@@ -1886,8 +1886,7 @@ router_counts_toward_thresholds(const node_t *node, time_t now,
 {
   /* Have measured bw? */
   int have_mbw =
-    dirserv_query_measured_bw_cache(node->ri->cache_info.identity_digest,
-                                    NULL, NULL);
+    dirserv_has_measured_bw(node->ri->cache_info.identity_digest);
 
   return node->ri && router_is_active(node->ri, node, now) &&
     !digestmap_get(omit_as_sybil, node->ri->cache_info.identity_digest) &&
@@ -2166,6 +2165,13 @@ dirserv_query_measured_bw_cache(const char *node_id, long *bw_out,
   return rv;
 }
 
+/** Predicate wrapper for dirserv_query_measured_bw_cache() */
+int
+dirserv_has_measured_bw(const char *node_id)
+{
+  return dirserv_query_measured_bw_cache(node_id, NULL, NULL);
+}
+
 /** Get the best estimate of a router's bandwidth for dirauth purposes,
  * preferring measured to advertised values if available. */
 
@@ -2214,8 +2220,7 @@ dirserv_count_measured_bws(routerlist_t *rl)
   /* Iterate over the routerlist and count measured bandwidths */
   SMARTLIST_FOREACH_BEGIN(rl->routers, routerinfo_t *, ri) {
     /* Check if we know a measured bandwidth for this one */
-    if (dirserv_query_measured_bw_cache(ri->cache_info.identity_digest,
-                                        NULL, NULL)) {
+    if (dirserv_has_measured_bw(ri->cache_info.identity_digest)) {
       ++routers_with_measured_bw;
     }
   } SMARTLIST_FOREACH_END(ri);
index 887a4992ed6f5e6953ae4ce81aff7865cc91efb7..8728a0b700d7eb7f319f8d7b3ddced0bc1e77cf1 100644 (file)
@@ -154,6 +154,7 @@ void dirserv_expire_measured_bw_cache(time_t now);
 int dirserv_get_measured_bw_cache_size(void);
 int dirserv_query_measured_bw_cache(const char *node_id, long *bw_out,
                                     time_t *as_of_out);
+int dirserv_has_measured_bw(const char *node_id);
 #endif
 
 int dirserv_read_measured_bandwidths(const char *from_file,