aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2023-11-01 21:07:48 -0400
committerNick Mathewson <nickm@torproject.org>2023-11-01 21:07:48 -0400
commit3789c8786114021df87898a380131e8aa724d59f (patch)
treea805d314010b946e729fc0d24ed10085f17afa2b
parent77569cbf430ad686ec2c0422fae96747cbdc1d71 (diff)
downloadtorspec-3789c8786114021df87898a380131e8aa724d59f.tar.gz
torspec-3789c8786114021df87898a380131e8aa724d59f.zip
prop340: Clarify "interaction with conflux"
-rw-r--r--proposals/340-packed-and-fragmented.md22
1 files changed, 9 insertions, 13 deletions
diff --git a/proposals/340-packed-and-fragmented.md b/proposals/340-packed-and-fragmented.md
index 3f0742e..822ba05 100644
--- a/proposals/340-packed-and-fragmented.md
+++ b/proposals/340-packed-and-fragmented.md
@@ -232,19 +232,15 @@ can have a reasonable implementation.)
### Interaction with Conflux
-Fragmented messages may be used together with Conflux. Specifically,
-we allow fragments from a single message to be sent on separate
-legs of a single circuit bundle.
-
-> TODO: Mike, David, how would this actually work?
->
-> It seems to me that it would require us to send a
-> RELAY_CONFLUX_SWITCH message between two fragments of another
-> message... but our framing protocol described above in "New relay
-> mesage packing" does not provide a way to put a message between two
-> fragments of another message.
-
-
+Fragmented messages may be used together with Conflux, but we do not
+allow fragments from a single method to be sent on separate legs of
+a single circuit bundle.
+
+That is to say, it is an error to send a CONFLUX_SWITCH message if
+the SeqNum would leave any other circuit with an incomplete message
+where not all framgents have arrived. Upon receiving such an
+erroneous message, parties SHOULD destroy all circuits in the
+conflux bundle.
### An exception for `DATA`.