Loading src/or/circuituse.c +36 −23 Original line number Diff line number Diff line Loading @@ -2695,9 +2695,10 @@ connection_ap_handshake_attach_circuit(entry_connection_t *conn) tor_assert(rendcirc); /* one is already established, attach */ log_info(LD_REND, "rend joined circ %u already here. attaching. " "(stream %d sec old)", (unsigned)rendcirc->base_.n_circ_id, conn_age); "rend joined circ %u (id: %" PRIu32 ") already here. " "Attaching. (stream %d sec old)", (unsigned) TO_CIRCUIT(rendcirc)->n_circ_id, rendcirc->global_identifier, conn_age); /* Mark rendezvous circuits as 'newly dirty' every time you use * them, since the process of rebuilding a rendezvous circ is so * expensive. There is a tradeoff between linkability and Loading Loading @@ -2730,9 +2731,10 @@ connection_ap_handshake_attach_circuit(entry_connection_t *conn) if (rendcirc && (rendcirc->base_.purpose == CIRCUIT_PURPOSE_C_REND_READY_INTRO_ACKED)) { log_info(LD_REND, "pending-join circ %u already here, with intro ack. " "Stalling. (stream %d sec old)", (unsigned)rendcirc->base_.n_circ_id, conn_age); "pending-join circ %u (id: %" PRIu32 ") already here, with " "intro ack. Stalling. (stream %d sec old)", (unsigned) TO_CIRCUIT(rendcirc)->n_circ_id, rendcirc->global_identifier, conn_age); return 0; } Loading @@ -2744,10 +2746,13 @@ connection_ap_handshake_attach_circuit(entry_connection_t *conn) if (retval > 0) { /* one has already sent the intro. keep waiting. */ tor_assert(introcirc); log_info(LD_REND, "Intro circ %u present and awaiting ack (rend %u). " log_info(LD_REND, "Intro circ %u (id: %" PRIu32 ") present and " "awaiting ACK. Rend circuit %u (id: %" PRIu32 "). " "Stalling. (stream %d sec old)", (unsigned)introcirc->base_.n_circ_id, rendcirc ? (unsigned)rendcirc->base_.n_circ_id : 0, (unsigned) TO_CIRCUIT(introcirc)->n_circ_id, introcirc->global_identifier, rendcirc ? (unsigned) TO_CIRCUIT(rendcirc)->n_circ_id : 0, rendcirc ? rendcirc->global_identifier : 0, conn_age); return 0; } Loading @@ -2757,19 +2762,24 @@ connection_ap_handshake_attach_circuit(entry_connection_t *conn) if (rendcirc && introcirc && rendcirc->base_.purpose == CIRCUIT_PURPOSE_C_REND_READY) { log_info(LD_REND, "ready rend circ %u already here (no intro-ack yet on " "intro %u). (stream %d sec old)", (unsigned)rendcirc->base_.n_circ_id, (unsigned)introcirc->base_.n_circ_id, conn_age); "ready rend circ %u (id: %" PRIu32 ") already here. No" "intro-ack yet on intro %u (id: %" PRIu32 "). " "(stream %d sec old)", (unsigned) TO_CIRCUIT(rendcirc)->n_circ_id, rendcirc->global_identifier, (unsigned) TO_CIRCUIT(introcirc)->n_circ_id, introcirc->global_identifier, conn_age); tor_assert(introcirc->base_.purpose == CIRCUIT_PURPOSE_C_INTRODUCING); if (introcirc->base_.state == CIRCUIT_STATE_OPEN) { int ret; log_info(LD_REND,"found open intro circ %u (rend %u); sending " log_info(LD_REND, "Found open intro circ %u (id: %" PRIu32 "). " "Rend circuit %u (id: %" PRIu32 "); Sending " "introduction. (stream %d sec old)", (unsigned)introcirc->base_.n_circ_id, (unsigned)rendcirc->base_.n_circ_id, conn_age); (unsigned) TO_CIRCUIT(introcirc)->n_circ_id, introcirc->global_identifier, (unsigned) TO_CIRCUIT(rendcirc)->n_circ_id, rendcirc->global_identifier, conn_age); ret = hs_client_send_introduce1(introcirc, rendcirc); switch (ret) { case 0: /* success */ Loading @@ -2793,10 +2803,13 @@ connection_ap_handshake_attach_circuit(entry_connection_t *conn) } } log_info(LD_REND, "Intro (%u) and rend (%u) circs are not both ready. " log_info(LD_REND, "Intro %u (id: %" PRIu32 ") and rend circuit %u " "(id: %" PRIu32 ") circuits are not both ready. " "Stalling conn. (%d sec old)", introcirc ? (unsigned)introcirc->base_.n_circ_id : 0, rendcirc ? (unsigned)rendcirc->base_.n_circ_id : 0, conn_age); introcirc ? (unsigned) TO_CIRCUIT(introcirc)->n_circ_id : 0, introcirc ? introcirc->global_identifier : 0, rendcirc ? (unsigned) TO_CIRCUIT(rendcirc)->n_circ_id : 0, rendcirc ? rendcirc->global_identifier : 0, conn_age); return 0; } } Loading Loading
src/or/circuituse.c +36 −23 Original line number Diff line number Diff line Loading @@ -2695,9 +2695,10 @@ connection_ap_handshake_attach_circuit(entry_connection_t *conn) tor_assert(rendcirc); /* one is already established, attach */ log_info(LD_REND, "rend joined circ %u already here. attaching. " "(stream %d sec old)", (unsigned)rendcirc->base_.n_circ_id, conn_age); "rend joined circ %u (id: %" PRIu32 ") already here. " "Attaching. (stream %d sec old)", (unsigned) TO_CIRCUIT(rendcirc)->n_circ_id, rendcirc->global_identifier, conn_age); /* Mark rendezvous circuits as 'newly dirty' every time you use * them, since the process of rebuilding a rendezvous circ is so * expensive. There is a tradeoff between linkability and Loading Loading @@ -2730,9 +2731,10 @@ connection_ap_handshake_attach_circuit(entry_connection_t *conn) if (rendcirc && (rendcirc->base_.purpose == CIRCUIT_PURPOSE_C_REND_READY_INTRO_ACKED)) { log_info(LD_REND, "pending-join circ %u already here, with intro ack. " "Stalling. (stream %d sec old)", (unsigned)rendcirc->base_.n_circ_id, conn_age); "pending-join circ %u (id: %" PRIu32 ") already here, with " "intro ack. Stalling. (stream %d sec old)", (unsigned) TO_CIRCUIT(rendcirc)->n_circ_id, rendcirc->global_identifier, conn_age); return 0; } Loading @@ -2744,10 +2746,13 @@ connection_ap_handshake_attach_circuit(entry_connection_t *conn) if (retval > 0) { /* one has already sent the intro. keep waiting. */ tor_assert(introcirc); log_info(LD_REND, "Intro circ %u present and awaiting ack (rend %u). " log_info(LD_REND, "Intro circ %u (id: %" PRIu32 ") present and " "awaiting ACK. Rend circuit %u (id: %" PRIu32 "). " "Stalling. (stream %d sec old)", (unsigned)introcirc->base_.n_circ_id, rendcirc ? (unsigned)rendcirc->base_.n_circ_id : 0, (unsigned) TO_CIRCUIT(introcirc)->n_circ_id, introcirc->global_identifier, rendcirc ? (unsigned) TO_CIRCUIT(rendcirc)->n_circ_id : 0, rendcirc ? rendcirc->global_identifier : 0, conn_age); return 0; } Loading @@ -2757,19 +2762,24 @@ connection_ap_handshake_attach_circuit(entry_connection_t *conn) if (rendcirc && introcirc && rendcirc->base_.purpose == CIRCUIT_PURPOSE_C_REND_READY) { log_info(LD_REND, "ready rend circ %u already here (no intro-ack yet on " "intro %u). (stream %d sec old)", (unsigned)rendcirc->base_.n_circ_id, (unsigned)introcirc->base_.n_circ_id, conn_age); "ready rend circ %u (id: %" PRIu32 ") already here. No" "intro-ack yet on intro %u (id: %" PRIu32 "). " "(stream %d sec old)", (unsigned) TO_CIRCUIT(rendcirc)->n_circ_id, rendcirc->global_identifier, (unsigned) TO_CIRCUIT(introcirc)->n_circ_id, introcirc->global_identifier, conn_age); tor_assert(introcirc->base_.purpose == CIRCUIT_PURPOSE_C_INTRODUCING); if (introcirc->base_.state == CIRCUIT_STATE_OPEN) { int ret; log_info(LD_REND,"found open intro circ %u (rend %u); sending " log_info(LD_REND, "Found open intro circ %u (id: %" PRIu32 "). " "Rend circuit %u (id: %" PRIu32 "); Sending " "introduction. (stream %d sec old)", (unsigned)introcirc->base_.n_circ_id, (unsigned)rendcirc->base_.n_circ_id, conn_age); (unsigned) TO_CIRCUIT(introcirc)->n_circ_id, introcirc->global_identifier, (unsigned) TO_CIRCUIT(rendcirc)->n_circ_id, rendcirc->global_identifier, conn_age); ret = hs_client_send_introduce1(introcirc, rendcirc); switch (ret) { case 0: /* success */ Loading @@ -2793,10 +2803,13 @@ connection_ap_handshake_attach_circuit(entry_connection_t *conn) } } log_info(LD_REND, "Intro (%u) and rend (%u) circs are not both ready. " log_info(LD_REND, "Intro %u (id: %" PRIu32 ") and rend circuit %u " "(id: %" PRIu32 ") circuits are not both ready. " "Stalling conn. (%d sec old)", introcirc ? (unsigned)introcirc->base_.n_circ_id : 0, rendcirc ? (unsigned)rendcirc->base_.n_circ_id : 0, conn_age); introcirc ? (unsigned) TO_CIRCUIT(introcirc)->n_circ_id : 0, introcirc ? introcirc->global_identifier : 0, rendcirc ? (unsigned) TO_CIRCUIT(rendcirc)->n_circ_id : 0, rendcirc ? rendcirc->global_identifier : 0, conn_age); return 0; } } Loading