hs: Don't BUG() when setting up RP congestion control
commit069b27860102990b23b58e60fb1de65347f37669
authorDavid Goulet <dgoulet@torproject.org>
Wed, 9 Mar 2022 17:15:12 +0000 (9 12:15 -0500)
committerDavid Goulet <dgoulet@torproject.org>
Wed, 9 Mar 2022 17:15:12 +0000 (9 12:15 -0500)
treed77316a89fe71f5bd76969c78f8322d20cbf1890
parent0cf82cf8cbac57d4718f13488fbb4627380cf7cb
hs: Don't BUG() when setting up RP congestion control

It is possible to not have the descriptor anymore by the time the
rendezvous circuit opens. Don't BUG() on that.

Instead, when sending the INTRODUCE1 cell, make sure the descriptor we
have (or have just fetched) matches what we setup in the rendezvous
circuit.

If not, the circuit is closed and another one is opened for a retry.

Fixes #40576

Signed-off-by: David Goulet <dgoulet@torproject.org>
changes/ticket40576 [new file with mode: 0644]
src/feature/hs/hs_client.c
src/feature/hs/hs_descriptor.c
src/feature/hs/hs_descriptor.h