[tor-commits] [tor/release-0.2.4] Increase link_proto field to 2 bytes

arma at torproject.org arma at torproject.org
Thu Apr 11 05:29:50 UTC 2013


commit fca578d9b56d7d80fc43f21b77153d7e5cad92d6
Author: Nick Mathewson <nickm at torproject.org>
Date:   Mon Mar 11 12:34:14 2013 -0400

    Increase link_proto field to 2 bytes
    
    This should have been 2 bytes all along, since version numbers can
    be 16 bits long.  This isn't a live bug, since the call to
    is_or_protocol_version_known in channel_tls_process_versions_cell
    will reject any version number not in the range 1..4.  Still, let's
    fix this before we accidentally start supporting version 256.
    
    Reported pseudonymously. Fixes bug 8062; bugfix on 0.2.0.10-alpha --
    specifically, on commit 6fcda529, where during development I
    increased the width of a version to 16 bits without changing the
    type of link_proto.
---
 changes/bug8062 |    5 +++++
 src/or/or.h     |    4 ++--
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/changes/bug8062 b/changes/bug8062
new file mode 100644
index 0000000..805e51e
--- /dev/null
+++ b/changes/bug8062
@@ -0,0 +1,5 @@
+  o Minor bugfixes:
+    - Increase the width of the field used to remember a connection's
+      link protocol version to two bytes. Harmless for now, since the
+      only currently recognized versions are one byte long.  Reported
+      pseudynmously.  Fixes bug 8062, bugfix on 0.2.0.10-alpha.
diff --git a/src/or/or.h b/src/or/or.h
index c7d2598..2fe36ba 100644
--- a/src/or/or.h
+++ b/src/or/or.h
@@ -1417,8 +1417,8 @@ typedef struct or_connection_t {
   unsigned int is_outgoing:1;
   unsigned int proxy_type:2; /**< One of PROXY_NONE...PROXY_SOCKS5 */
   unsigned int wide_circ_ids:1;
-  uint8_t link_proto; /**< What protocol version are we using? 0 for
-                       * "none negotiated yet." */
+  uint16_t link_proto; /**< What protocol version are we using? 0 for
+                        * "none negotiated yet." */
 
   or_handshake_state_t *handshake_state; /**< If we are setting this connection
                                           * up, state information to do so. */





More information about the tor-commits mailing list