Add dirserv_has_measured_bw() predicate wrapper for dirserv_query_measured_bw_cache()

This commit is contained in:
Andrea Shepard 2013-03-18 11:56:42 -07:00
parent f93f7e331b
commit d64e5969f4
2 changed files with 10 additions and 4 deletions

View 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);

View 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,