diff options
author | Robert Ransom <rransom.8774@gmail.com> | 2011-12-22 06:45:45 -0800 |
---|---|---|
committer | Robert Ransom <rransom.8774@gmail.com> | 2011-12-22 06:45:45 -0800 |
commit | 66f77561c0bb93bf768b2764137ab1b5e4fc04a4 (patch) | |
tree | 7a0a0b06618c899aa1a55357e978d409751c0194 /src/or/rendclient.c | |
parent | d7531b2adc6d09e33f9a4a3accc4cf3fe28284d6 (diff) | |
download | tor-66f77561c0bb93bf768b2764137ab1b5e4fc04a4.tar.gz tor-66f77561c0bb93bf768b2764137ab1b5e4fc04a4.zip |
Mark each intro circ with the rend cookie sent in its INTRODUCE1 cell
Needed by fix for #4759.
Diffstat (limited to 'src/or/rendclient.c')
-rw-r--r-- | src/or/rendclient.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/or/rendclient.c b/src/or/rendclient.c index 8aae8c5cb5..d9b210ae35 100644 --- a/src/or/rendclient.c +++ b/src/or/rendclient.c @@ -275,6 +275,12 @@ rend_client_send_introduction(origin_circuit_t *introcirc, payload_len = DIGEST_LEN + r; tor_assert(payload_len <= RELAY_PAYLOAD_SIZE); /* we overran something */ + /* Copy the rendezvous cookie from rendcirc to introcirc, so that + * when introcirc gets an ack, we can change the state of the right + * rendezvous circuit. */ + memcpy(rendcirc->rend_data->rend_cookie, introcirc->rend_data->rend_cookie, + REND_COOKIE_LEN); + log_info(LD_REND, "Sending an INTRODUCE1 cell"); if (relay_send_command_from_edge(0, TO_CIRCUIT(introcirc), RELAY_COMMAND_INTRODUCE1, |