aboutsummaryrefslogtreecommitdiff
path: root/guard-spec.txt
diff options
context:
space:
mode:
authorGeorge Kadianakis <desnacked@riseup.net>2017-02-02 13:36:58 +0200
committerGeorge Kadianakis <desnacked@riseup.net>2017-02-02 13:36:58 +0200
commit65e24ed3f1255b0b836af1a3cefbb16e414c4ab8 (patch)
tree0f34c62f4231be8d150cade793f61de3c09cebd9 /guard-spec.txt
parent7cbcbf5bcbac29d0f2acb6c65ea2c5eb12937ea0 (diff)
downloadtorspec-65e24ed3f1255b0b836af1a3cefbb16e414c4ab8.tar.gz
torspec-65e24ed3f1255b0b836af1a3cefbb16e414c4ab8.zip
guard-spec.txt: If we exhaust all guards, start from top again.
Diffstat (limited to 'guard-spec.txt')
-rw-r--r--guard-spec.txt7
1 files changed, 6 insertions, 1 deletions
diff --git a/guard-spec.txt b/guard-spec.txt
index 87e16a7..a1e8e93 100644
--- a/guard-spec.txt
+++ b/guard-spec.txt
@@ -473,7 +473,12 @@
random from {USABLE_FILTERED_GUARDS}. Set its {is_pending}
field to true. The circuit is <usable_if_no_better_guard>.
- We update the {last_tried_connect} time for the guard to 'now.'
+ If during the above algorithm we exhaust all sampled guards before finding a
+ reachable one, then we proceed by marking all guards as <maybe> reachable so
+ that we can keep on sampling.
+
+ When we finally connect to a guard, we update the {last_tried_connect} time
+ for the guard to 'now.'
In some cases (for example, when we need a certain directory feature,
or when we need to avoid using a certain exit as a guard), we need to