Unverified Commit 88489cd2 authored by David Goulet's avatar David Goulet 🆘 Committed by teor
Browse files

hs-v3: Remove BUG() that can occur normally



Fixes #28992
Signed-off-by: David Goulet's avatarDavid Goulet <dgoulet@torproject.org>
parent 41d52e9c
o Minor bugfixes (onion service v3, client):
- Remove a BUG() that is causing a stacktrace for a situation that very
rarely happens but still can. Fixes bug 28992; bugfix on 0.3.2.1-alpha.
......@@ -596,9 +596,14 @@ send_introduce1(origin_circuit_t *intro_circ,
/* We need to find which intro point in the descriptor we are connected to
* on intro_circ. */
ip = find_desc_intro_point_by_ident(intro_circ->hs_ident, desc);
if (BUG(ip == NULL)) {
/* If we can find a descriptor from this introduction circuit ident, we
* must have a valid intro point object. Permanent error. */
if (ip == NULL) {
/* The following is possible if the descriptor was changed while we had
* this introduction circuit open and waiting for the rendezvous circuit to
* be ready. Which results in this situation where we can't find the
* corresponding intro point within the descriptor of the service. */
log_info(LD_REND, "Unable to find introduction point for service %s "
"while trying to send an INTRODUCE1 cell.",
safe_str_client(onion_address));
goto perm_err;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment