Merge remote-tracking branch 'tor-gitlab/mr/119'

This commit is contained in:
Nick Mathewson 2020-08-11 12:39:30 -04:00
commit 11961f0bc5
2 changed files with 13 additions and 4 deletions

3
changes/bug34086 Normal file
View file

@ -0,0 +1,3 @@
o Minor bugfixes (onion service v3):
- Remove a BUG() warning that could trigger in certain unlikely edge-cases.
Fixes bug 34086; bugfix on 0.3.2.1-alpha.

View file

@ -779,10 +779,16 @@ client_rendezvous_circ_has_opened(origin_circuit_t *circ)
* the v3 rendezvous protocol */ * the v3 rendezvous protocol */
if (rp_ei) { if (rp_ei) {
const node_t *rp_node = node_get_by_id(rp_ei->identity_digest); const node_t *rp_node = node_get_by_id(rp_ei->identity_digest);
if (rp_node) { if (rp_node && !node_supports_v3_rendezvous_point(rp_node)) {
if (BUG(!node_supports_v3_rendezvous_point(rp_node))) { /* Even tho we checked that this node supported v3 when we created the
return; rendezvous circuit, there is a chance that we might think it does
} not support v3 anymore. This might happen if we got a new consensus
in the meanwhile, where the relay is still listed but its listed
descriptor digest has changed and hence we can't access its 'ri' or
'md'. */
log_info(LD_REND, "Rendezvous node %s did not support v3 after circuit "
"has opened.", safe_str_client(extend_info_describe(rp_ei)));
return;
} }
} }