Commit 68806c7f authored by Roger Dingledine's avatar Roger Dingledine
Browse files

When a relay gets a create cell it can't decrypt (e.g. because it's

using the wrong onion key), we were dropping it and letting the
client time out. Now actually answer with a destroy cell. Bugfix
on 0.0.2pre8.


svn:r17970
parent 0955a1b9
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -67,6 +67,10 @@ Changes in version 0.2.1.10-alpha - 2009-01-0?
      unencrypted links, we also broke DirPort reachability testing for
      bridges. So bridges with a non-zero DirPort were printing spurious
      warns to their logs. Bugfix on 0.2.0.16-alpha. Fixes bug 709.
    - When a relay gets a create cell it can't decrypt (e.g. because it's
      using the wrong onion key), we were dropping it and letting the
      client time out. Now actually answer with a destroy cell. Bugfix
      on 0.0.2pre8.

  o Deprecated and removed features:
    - The old "tor --version --version" command, which would print out
+4 −1
Original line number Diff line number Diff line
@@ -274,7 +274,10 @@ cpuworker_main(void *data)
          reply_to_proxy, keys, CPATH_KEY_MATERIAL_LEN) < 0) {
        /* failure */
        log_debug(LD_OR,"onion_skin_server_handshake failed.");
        memset(buf,0,LEN_ONION_RESPONSE); /* send all zeros for failure */
        *buf = 0; /* indicate failure in first byte */
        memcpy(buf+1,tag,TAG_LEN);
        /* send all zeros as answer */
        memset(buf+1+TAG_LEN, 0, LEN_ONION_RESPONSE-(1+TAG_LEN));
      } else {
        /* success */
        log_debug(LD_OR,"onion_skin_server_handshake succeeded.");