Commit f89f1480 authored by Neel Chauhan's avatar Neel Chauhan
Browse files

At intro points, don't close circuits on NACKs

parent 6bd06963
Loading
Loading
Loading
Loading

changes/bug27841

0 → 100644
+7 −0
Original line number Diff line number Diff line
  o Minor bugfixes (onion services):
    - On an intro point for a version 3 onion service, we do not close
      an introduction circuit on an NACK. This lets the client decide
      whether to reuse the circuit or discard it. Previously, we closed
      intro circuits on NACKs. Fixes bug 27841; bugfix on 0.3.2.1-alpha.
      Patch by Neel Chaunan
+0 −6
Original line number Diff line number Diff line
@@ -501,12 +501,6 @@ handle_introduce1(or_circuit_t *client_circ, const uint8_t *request,
    /* Circuit has been closed on failure of transmission. */
    goto done;
  }
  if (status != HS_INTRO_ACK_STATUS_SUCCESS) {
    /* We just sent a NACK that is a non success status code so close the
     * circuit because it's not useful to keep it open. Remember, a client can
     * only send one INTRODUCE1 cell on a circuit. */
    circuit_mark_for_close(TO_CIRCUIT(client_circ), END_CIRC_REASON_INTERNAL);
  }
 done:
  trn_cell_introduce1_free(parsed_cell);
  return ret;