Trac issueshttps://gitlab.torproject.org/legacy/trac/-/issues2020-06-13T15:30:32Zhttps://gitlab.torproject.org/legacy/trac/-/issues/27402stop reporting "internal paths" during bootstrap2020-06-13T15:30:32ZTaylor Yustop reporting "internal paths" during bootstrap`bootstrap_status_to_string()` can report "internal paths" when the consensus actually contains exits, because it's conditional on `router_have_consensus_path()` which checks descriptors. In the cold cache case, there are likely no exis...`bootstrap_status_to_string()` can report "internal paths" when the consensus actually contains exits, because it's conditional on `router_have_consensus_path()` which checks descriptors. In the cold cache case, there are likely no existing descriptors, so tor will give the misleading impression that the consensus lacks exits (when it's actually more likely that it simply hasn't gotten around to downloading enough descriptors yet).
Removing the code that handles these conditions also simplifies `bootstrap_status_to_string()`.
This probably needs a tor-spec update.Tor: 0.4.0.x-finalTaylor YuTaylor Yuhttps://gitlab.torproject.org/legacy/trac/-/issues/27239TB team feedback on jump-to-80% work2020-06-16T00:49:21ZIsabela FernandesTB team feedback on jump-to-80% workHello TB team,
we would like your feedback on this work, and let us know if there is anything we need to know regarding this on Tor Browser side.Hello TB team,
we would like your feedback on this work, and let us know if there is anything we need to know regarding this on Tor Browser side.Tor: 0.4.0.x-finalhttps://gitlab.torproject.org/legacy/trac/-/issues/27167track "first" OR_CONN2020-06-13T17:44:18ZTaylor Yutrack "first" OR_CONNRight now the first stages of the "first" OR_CONN get reported as `BOOTSTRAP_STATUS_CONN_DIR` and `BOOTSTRAP_STATUS_HANDSHAKE` (the latter is a special bootstrap phase that gets translated into `BOOTSTRAP_STATUS_HANDSHAKE_DIR` or `BOOTST...Right now the first stages of the "first" OR_CONN get reported as `BOOTSTRAP_STATUS_CONN_DIR` and `BOOTSTRAP_STATUS_HANDSHAKE` (the latter is a special bootstrap phase that gets translated into `BOOTSTRAP_STATUS_HANDSHAKE_DIR` or `BOOTSTRAP_STATUS_HANDSHAKE_OR` depending on how much progress was previously reported. The logic in functions that report these events should be moved up to a new abstraction so lower level code has to track less high-level state.
This also eliminates some logic in `control_event_bootstrap()` that tries to figure out whether a given handshake attempt corresponds to a directory connection or an application circuit connection.Tor: 0.4.0.x-finalTaylor YuTaylor Yu