diff --git a/changes/bug23159 b/changes/bug23159 new file mode 100644 index 0000000000000000000000000000000000000000..3d35f6efa5a337c17337f63051f8310568393c0c --- /dev/null +++ b/changes/bug23159 @@ -0,0 +1,5 @@ + o Minor bugfixes (hidden service v3): + - Don't non fatal assert if we can't the introduction point extend + information when launching circuits. In rare cases, this could happened + but tor would recover gracefully. This is to avoid a non fatal assert in + the logs. Fixes ticket 23159.; bugfix on 0.3.2.1-alpha. diff --git a/src/or/hs_service.c b/src/or/hs_service.c index 8c99f0747aeaee8735e907cd79b141cb125889c8..5e575412b34c34c654d459ee752f57e78940de79 100644 --- a/src/or/hs_service.c +++ b/src/or/hs_service.c @@ -2034,13 +2034,9 @@ launch_intro_point_circuits(hs_service_t *service) ei = get_extend_info_from_intro_point(ip, direct_conn); if (ei == NULL) { - if (!direct_conn) { - /* In case of a multi-hop connection, it should never happen that we - * can't get the extend info from the node. Avoid connection and - * remove intro point from descriptor in order to recover from this - * potential bug. */ - tor_assert_nonfatal(ei); - } + /* This is possible if we can get a node_t but not the extend info out + * of it. In this case, we remove the intro point and a new one will + * be picked at the next main loop callback. */ MAP_DEL_CURRENT(key); service_intro_point_free(ip); continue;