mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 13:13:44 +01:00
Merge remote-tracking branch 'teor/bug18489'
This commit is contained in:
commit
ea9472d085
6
changes/bug18489
Normal file
6
changes/bug18489
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
o Minor bugfixes (fallback directory mirrors):
|
||||||
|
- When requesting extrainfo descriptors from a trusted directory
|
||||||
|
server, check whether it is an authority or a fallback directory
|
||||||
|
which supports extrainfo descriptors.
|
||||||
|
Fixes bug 18489; bugfix on 90f6071d8d in tor-0.2.4.7-alpha.
|
||||||
|
Reported by "atagar", patch by "teor".
|
@ -1857,11 +1857,13 @@ router_pick_trusteddirserver_impl(const smartlist_t *sourcelist,
|
|||||||
if (!d->is_running) continue;
|
if (!d->is_running) continue;
|
||||||
if ((type & d->type) == 0)
|
if ((type & d->type) == 0)
|
||||||
continue;
|
continue;
|
||||||
|
int is_trusted_extrainfo = router_digest_is_trusted_dir_type(
|
||||||
|
d->digest, EXTRAINFO_DIRINFO);
|
||||||
if ((type & EXTRAINFO_DIRINFO) &&
|
if ((type & EXTRAINFO_DIRINFO) &&
|
||||||
!router_supports_extrainfo(d->digest, 1))
|
!router_supports_extrainfo(d->digest, is_trusted_extrainfo))
|
||||||
continue;
|
continue;
|
||||||
if (requireother && me && router_digest_is_me(d->digest))
|
if (requireother && me && router_digest_is_me(d->digest))
|
||||||
continue;
|
continue;
|
||||||
if (try_excluding &&
|
if (try_excluding &&
|
||||||
routerset_contains_routerstatus(options->ExcludeNodes,
|
routerset_contains_routerstatus(options->ExcludeNodes,
|
||||||
&d->fake_status, -1)) {
|
&d->fake_status, -1)) {
|
||||||
|
Loading…
Reference in New Issue
Block a user