summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/or/connection_edge.c2
-rw-r--r--src/or/rendclient.c5
2 files changed, 4 insertions, 3 deletions
diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c
index 77422df4b9..dc6da9fc04 100644
--- a/src/or/connection_edge.c
+++ b/src/or/connection_edge.c
@@ -905,7 +905,7 @@ int connection_ap_handshake_attach_circuit(connection_t *conn) {
if(retval > 0) {
/* one is already established, attach */
- log_fn(LOG_INFO,"rend joined circ already here. reusing.");
+ log_fn(LOG_INFO,"rend joined circ already here. attaching.");
link_apconn_to_circ(conn, rendcirc);
if(connection_ap_handshake_send_begin(conn, rendcirc) < 0)
return 0; /* already marked, let them fade away */
diff --git a/src/or/rendclient.c b/src/or/rendclient.c
index 1beca22476..d0b80a7631 100644
--- a/src/or/rendclient.c
+++ b/src/or/rendclient.c
@@ -263,8 +263,9 @@ rend_client_receive_rendezvous(circuit_t *circ, const char *request, int request
crypt_path_t *hop;
char keys[DIGEST_LEN+CPATH_KEY_MATERIAL_LEN];
- if(circ->purpose != CIRCUIT_PURPOSE_C_REND_READY ||
- !circ->build_state->pending_final_cpath) {
+ if( (circ->purpose != CIRCUIT_PURPOSE_C_REND_READY &&
+ circ->purpose != CIRCUIT_PURPOSE_C_REND_READY_INTRO_ACKED)
+ || !circ->build_state->pending_final_cpath) {
log_fn(LOG_WARN,"Got rendezvous2 cell from Bob, but not expecting it. Closing.");
circuit_mark_for_close(circ);
return -1;