diff options
author | Mike Perry <mikeperry-git@fscked.org> | 2012-12-08 12:07:58 -0800 |
---|---|---|
committer | Mike Perry <mikeperry-git@fscked.org> | 2012-12-08 12:07:58 -0800 |
commit | 5f733ccd7382e8bb8289e4f8adf07f8ac001c28a (patch) | |
tree | 0b64d654fe91909e1b15f79008b267001cee8bf4 /src/or/rendclient.c | |
parent | 26fa47226cab49b260ba764aa050880f71927ea0 (diff) | |
download | tor-5f733ccd7382e8bb8289e4f8adf07f8ac001c28a.tar.gz tor-5f733ccd7382e8bb8289e4f8adf07f8ac001c28a.zip |
Fix some hidden service edge cases.
Diffstat (limited to 'src/or/rendclient.c')
-rw-r--r-- | src/or/rendclient.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/or/rendclient.c b/src/or/rendclient.c index 3393e0f628..88241a4b2c 100644 --- a/src/or/rendclient.c +++ b/src/or/rendclient.c @@ -862,6 +862,13 @@ rend_client_rendezvous_acked(origin_circuit_t *circ, const uint8_t *request, /* Set timestamp_dirty, because circuit_expire_building expects it * to specify when a circuit entered the _C_REND_READY state. */ circ->base_.timestamp_dirty = time(NULL); + + /* From a path bias point of view, this circuit is now successfully used. + * Waiting any longer opens us up to attacks from Bob. He could induce + * Alice to attempt to connect to his hidden service and never reply + * to her rend requests */ + circ->path_state = PATH_STATE_USE_SUCCEEDED; + /* XXXX This is a pretty brute-force approach. It'd be better to * attach only the connections that are waiting on this circuit, rather * than trying to attach them all. See comments bug 743. */ |