aboutsummaryrefslogtreecommitdiff
path: root/tor-spec.txt
diff options
context:
space:
mode:
authorteor <teor2345@gmail.com>2017-09-20 09:28:41 +1000
committerteor <teor2345@gmail.com>2017-09-20 09:28:41 +1000
commit33d819164cbdf349cfdbe0dda6f26a5af3e2f1f9 (patch)
tree9398461bc9256e836132532da48e64f96e38058d /tor-spec.txt
parent72993063dcda1f9bcbde59c399d42777ba0d0af1 (diff)
downloadtorspec-33d819164cbdf349cfdbe0dda6f26a5af3e2f1f9.tar.gz
torspec-33d819164cbdf349cfdbe0dda6f26a5af3e2f1f9.zip
When VPADDING cells are sent early, specify their CIRC_ID_LEN
Resolves 22929.
Diffstat (limited to 'tor-spec.txt')
-rw-r--r--tor-spec.txt10
1 files changed, 6 insertions, 4 deletions
diff --git a/tor-spec.txt b/tor-spec.txt
index 3c8b6e9..aab417b 100644
--- a/tor-spec.txt
+++ b/tor-spec.txt
@@ -434,8 +434,9 @@ see tor-design.pdf.
byte equal to 7 ("VERSIONS"), or greater than or equal to 128.
CIRCID_LEN is 2 for link protocol versions 1, 2, and 3. CIRCID_LEN
- is 4 for link protocol version 4 or higher. The VERSIONS cell itself
- always has CIRCID_LEN == 2 for backward compatibility.
+ is 4 for link protocol version 4 or higher. The first VERSIONS cell,
+ and any cells sent before the first VERSIONS cell, always have
+ CIRCID_LEN == 2 for backward compatibility.
The CircID field determines which circuit, if any, the cell is
associated with.
@@ -543,8 +544,9 @@ see tor-design.pdf.
right after the renegotiation is finished, before any other cells are
sent. In "in-protocol", the initiator sends a VERSIONS cell
immediately after the initial TLS handshake, and the responder
- replies immediately with a VERSIONS cell. Parties MUST NOT send any
- other cells on a connection until they have received a VERSIONS cell.
+ replies immediately with a VERSIONS cell. (As an exception to this rule,
+ if both sides support the "in-protocol" handshake, either side may send
+ VPADDING cells at any time.)
The payload in a VERSIONS cell is a series of big-endian two-byte
integers. Both parties MUST select as the link protocol version the