summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJakob Borg <jakob@nym.se>2014-06-19 01:27:03 +0200
committerJakob Borg <jakob@nym.se>2014-06-19 01:27:03 +0200
commitde75550415694ea239f0683a6d103225263e4497 (patch)
treea06cb22999bc66494282926f54ca930cc8141e05
parent4dbce32738ac610f8cabc8db2133580f31dbadee (diff)
Clarify requirements on config messages (ref #377)
-rw-r--r--protocol/PROTOCOL.md14
1 files changed, 8 insertions, 6 deletions
diff --git a/protocol/PROTOCOL.md b/protocol/PROTOCOL.md
index ab6140f0c0..505e4bc398 100644
--- a/protocol/PROTOCOL.md
+++ b/protocol/PROTOCOL.md
@@ -59,10 +59,11 @@ or certificate pinning combined with some out of band first
verification. The reference implementation uses preshared certificate
fingerprints (SHA-256) referred to as "Node IDs".
-There is no required order or synchronization among BEP messages - any
-message type may be sent at any time and the sender need not await a
-response to one message before sending another. Responses MUST however
-be sent in the same order as the requests are received.
+There is no required order or synchronization among BEP messages (except
+for the requirements on Cluster Config messages below) - any message
+type may be sent at any time and the sender need not await a response to
+one message before sending another. Responses MUST however be sent in
+the same order as the requests are received.
The underlying transport protocol MUST be TCP.
@@ -118,8 +119,9 @@ normalization form C.
### Cluster Config (Type = 0)
This informational message provides information about the cluster
-configuration, as it pertains to the current connection. It is sent by
-both sides after connection establishment.
+configuration as it pertains to the current connection. A Cluster Config
+message MUST be the first message sent on a BEP connection. Additional
+Cluster Config messages MUST NOT be sent after the initial exchange.
#### Graphical Representation