diff options
author | Mike Perry <mikeperry-git@fscked.org> | 2012-12-08 14:16:29 -0800 |
---|---|---|
committer | Mike Perry <mikeperry-git@fscked.org> | 2012-12-08 14:16:29 -0800 |
commit | b599a6ed07fd588500a256ef815e87729449626a (patch) | |
tree | d93df6cfcc53251b520c9bea5406194598369ced /src/or/circuituse.c | |
parent | 5f733ccd7382e8bb8289e4f8adf07f8ac001c28a (diff) | |
download | tor-b599a6ed07fd588500a256ef815e87729449626a.tar.gz tor-b599a6ed07fd588500a256ef815e87729449626a.zip |
Sadly, we can't safely count client intro circ success
Diffstat (limited to 'src/or/circuituse.c')
-rw-r--r-- | src/or/circuituse.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/or/circuituse.c b/src/or/circuituse.c index 9362e2420f..0b799b11ae 100644 --- a/src/or/circuituse.c +++ b/src/or/circuituse.c @@ -1402,11 +1402,16 @@ circuit_launch_by_extend_info(uint8_t purpose, build_state_get_exit_nickname(circ->build_state), purpose, circuit_purpose_to_string(purpose)); - if (purpose == CIRCUIT_PURPOSE_S_CONNECT_REND && + if ((purpose == CIRCUIT_PURPOSE_S_CONNECT_REND || + purpose == CIRCUIT_PURPOSE_C_INTRODUCING) && circ->path_state == PATH_STATE_BUILD_SUCCEEDED) { /* Path bias: Cannibalized rends pre-emptively count as a * successfully used circ. We don't wait until the extend, - * because the rend point could be malicious. */ + * because the rend point could be malicious. + * + * Same deal goes for client side introductions. Clients + * can be manipulated to connect repeatedly to them + * (especially web clients). */ circ->path_state = PATH_STATE_USE_SUCCEEDED; /* This must be called before the purpose change */ pathbias_check_close(circ); |