[tor-commits] [torspec/master] make proposal 229 a little more terse; add a meta-MUST

nickm at torproject.org nickm at torproject.org
Fri Feb 28 17:04:56 UTC 2014


commit 6fdf4273d1b51bd2dceaf6225497b43d47521580
Author: Nick Mathewson <nickm at torproject.org>
Date:   Fri Feb 28 12:01:53 2014 -0500

    make proposal 229 a little more terse; add a meta-MUST
---
 proposals/229-further-socks5-extensions.txt |   44 +++++++++------------------
 1 file changed, 14 insertions(+), 30 deletions(-)

diff --git a/proposals/229-further-socks5-extensions.txt b/proposals/229-further-socks5-extensions.txt
index 8090528..400712c 100644
--- a/proposals/229-further-socks5-extensions.txt
+++ b/proposals/229-further-socks5-extensions.txt
@@ -44,6 +44,13 @@ Status: Draft
    After the authentication method has been negotiated following the
    standard SOCKS5 protocol, the actual authentication phase begins.
 
+   If any requirement labeled with a "MUST" below in this protocol
+   is violated, the party receiving the violation MUST close the
+   connection.
+
+   All multibyte numeric values in this protocol MUST be transmitted
+   in network (big-endian) byte order.
+
    The initiator will send an Extended Authentication request:
 
     +----+----------+-------+-------------+-------+-------------+---
@@ -60,24 +67,21 @@ Status: Draft
     NR PAIRS: 16 bits (unsigned integer)
 
        This field specifies the number of key/value pairs to follow.
-       The NR PAIRS field MUST be transmitted in network byte order.
 
     KLEN: 16 bits (unsigned integer)
 
        This field specifies the length of the key in bytes.  It MUST
-       be transmitted in network byte order, and MUST be greater
-       than 0.
+       be greater than 0.
 
     KEY: variable length
 
        This field contains the key associated with the subsequent
-       VALUE field as an ASCII string, without a NULL terminator.
+       VALUE field as an ASCII string, without a NUL terminator.
 
     VLEN: 16 bits (unsigned integer)
 
-       This field specifies the length of the value in bytes.  It
-       MUST be transmitted in network byte order.  It MAY be
-       X'0000', in which case the corresponding VALUE field is
+       This field specifies the length of the value in bytes. It MAY
+       be X'0000', in which case the corresponding VALUE field is
        omitted.
 
     VALUE: variable length, optional
@@ -110,31 +114,11 @@ Status: Draft
        If a server sends a response indicating failure (STATUS value
        other than X'00') it MUST close the connection.
 
-    NR PAIRS: 16 bits (unsigned integer)
-
-       This field specifies the number of key/value pairs to follow.
-       The NR PAIRS field MUST be transmitted in network byte order.
-
-    KLEN: 16 bits (unsigned integer)
-
-       This field specifies the length of the key in bytes.  It MUST be
-       transmitted in network byte order, and MUST be greater than 0.
-
-    KEY: variable length
+    NR PAIRS, KLEN, KEY, VLEN, VALUE:
 
-       This field contains the key associated with the subsequent
-       VALUE field as an ASCII string, without a NULL terminator.
+       These fields have the same format as they do in Extended
+       Authentication requests.
 
-    VLEN: 16 bits (unsigned integer)
-
-       This field specifies the length of the value in bytes.  It
-       MUST be transmitted in network byte order.  It MAY be
-       X'0000', in which case the corresponding VALUE field is
-       omitted.
-
-    VALUE: variable length, optional
-
-       The value corresponding to the KEY.
 
    The currently defined KEYs are:
 





More information about the tor-commits mailing list