]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
point out bug
authorRoger Dingledine <arma@torproject.org>
Tue, 11 Nov 2003 19:47:51 +0000 (19:47 +0000)
committerRoger Dingledine <arma@torproject.org>
Tue, 11 Nov 2003 19:47:51 +0000 (19:47 +0000)
svn:r791

src/or/connection_edge.c

index bf6a7b435bdd54feb2245d53f8bf7956e6149816..4f468b2487c56a3b43f1334f84282f7fee56789d 100644 (file)
@@ -483,6 +483,8 @@ void connection_ap_attach_pending(void)
       /* r<0: There was an error sending the begin cell; other pending  
        *   AP connections may succeed.
        */
+      /* XXX r is only <0 if openssl can't generate random bytes. if
+       * the begin failed, r==0 and the circ is closed. */
       connection_ap_handshake_socks_reply(conn, NULL, 0, 0);
       conn->marked_for_close = 1;
       conn->has_sent_end = 1; /* if the begin failed, don't try an end */
@@ -606,9 +608,11 @@ static int connection_ap_handshake_send_begin(connection_t *ap_conn, circuit_t *
   assert(ap_conn->socks_request);
   assert(ap_conn->socks_request->addr);
 
-  if(crypto_pseudo_rand(STREAM_ID_SIZE, ap_conn->stream_id) < 0)
+  if(crypto_pseudo_rand(STREAM_ID_SIZE, ap_conn->stream_id) < 0) {
+    /* XXX can we just make this call abort if it fails? then this func could be a void. */
+    /* FIXME check for collisions */
     return -1;
-  /* FIXME check for collisions */
+  }
 
   memcpy(payload, ap_conn->stream_id, STREAM_ID_SIZE);
   payload_len = STREAM_ID_SIZE + 1 +