Explain where bridge download statuses are initialised

And why we can't initialise them on config

Comment-only change, follow-up to 23347.
This commit is contained in:
teor 2017-09-15 13:50:29 +10:00
parent d6568bad5e
commit d60e7df2da
No known key found for this signature in database
GPG Key ID: 740D9E39025272A2

View File

@ -455,8 +455,8 @@ bridge_add_from_config(bridge_line_t *bridge_line)
b->fetch_status.schedule = DL_SCHED_BRIDGE; b->fetch_status.schedule = DL_SCHED_BRIDGE;
b->fetch_status.backoff = DL_SCHED_RANDOM_EXPONENTIAL; b->fetch_status.backoff = DL_SCHED_RANDOM_EXPONENTIAL;
b->fetch_status.increment_on = DL_SCHED_INCREMENT_ATTEMPT; b->fetch_status.increment_on = DL_SCHED_INCREMENT_ATTEMPT;
/* This will fail if UseBridges is not set -- and it does. */ /* We can't reset the bridge's download status here, because UseBridges
// download_status_reset(&b->fetch_status); * might be 0 now, and it might be changed to 1 much later. */
b->socks_args = bridge_line->socks_args; b->socks_args = bridge_line->socks_args;
if (!bridge_list) if (!bridge_list)
bridge_list = smartlist_new(); bridge_list = smartlist_new();
@ -625,6 +625,7 @@ fetch_bridge_descriptors(const or_options_t *options, time_t now)
SMARTLIST_FOREACH_BEGIN(bridge_list, bridge_info_t *, bridge) SMARTLIST_FOREACH_BEGIN(bridge_list, bridge_info_t *, bridge)
{ {
/* This resets the download status on first use */
if (!download_status_is_ready(&bridge->fetch_status, now, if (!download_status_is_ready(&bridge->fetch_status, now,
IMPOSSIBLE_TO_DOWNLOAD)) IMPOSSIBLE_TO_DOWNLOAD))
continue; /* don't bother, no need to retry yet */ continue; /* don't bother, no need to retry yet */