From 3789c8786114021df87898a380131e8aa724d59f Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Wed, 1 Nov 2023 21:07:48 -0400 Subject: prop340: Clarify "interaction with conflux" --- proposals/340-packed-and-fragmented.md | 22 +++++++++------------- 1 file 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`. -- cgit v1.2.3-54-g00ecf