tor/src
David Goulet d67bf8b2f2 Upload descriptor when all intro points are ready
To upload a HS descriptor, this commits makes it that we wait for all
introduction point to be fully established.

Else, the HS ends up uploading a descriptor that may contain intro points
that are not yet "valid" meaning not yet established or proven to work. It
could also trigger three uploads for the *same* descriptor if every intro
points takes more than 30 seconds to establish because of desc_is_dirty
being set at each intro established.

To achieve that, n_intro_points_established varialbe is added to the
rend_service_t object that is incremented when we established introduction
point and decremented when we remove a valid intro point from our list.

The condition to upload a descriptor also changes to test if all intro
points are ready by making sure we have equal or more wanted intro points
that are ready.

The desc_id_dirty flag is kept to be able to still use the
RendInitialPostPeriod option.

This partially fixes #13483.

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-07-09 12:02:11 -04:00
..
common Fix some compilation issues. 2015-06-27 14:27:00 -04:00
config Merge remote-tracking branch 'origin/maint-0.2.5' into maint-0.2.6 2015-06-25 11:43:17 -04:00
ext Whoops; fix linux build again 2015-06-27 22:41:39 -04:00
or Upload descriptor when all intro points are ready 2015-07-09 12:02:11 -04:00
test Merge remote-tracking branch 'origin/maint-0.2.6' 2015-06-25 10:41:15 -04:00
tools Merge branch 'bug16034_no_more_openssl_098_squashed' 2015-05-20 15:33:22 -04:00
trunnel Update trunnel code. 2015-05-28 12:44:52 -04:00
win32 Bump version to 0.2.6.9 2015-06-10 15:02:04 +00:00
include.am Use trunnel for crypto_pwbox encoding/decoding. 2014-09-25 11:58:14 -04:00