diff options
-rw-r--r-- | changes/bug23159 | 5 | ||||
-rw-r--r-- | src/or/hs_service.c | 10 |
2 files changed, 8 insertions, 7 deletions
diff --git a/changes/bug23159 b/changes/bug23159 new file mode 100644 index 0000000000..3d35f6efa5 --- /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 8c99f0747a..5e575412b3 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; |