mirror of
https://github.com/slackhq/nebula.git
synced 2026-10-06 20:16:38 +02:00
handshake: move lane fields to 9 and 10
Fields 6 and 7 are reserved for work in progress, so the multiport lane adverts move up to 9 and 10. Both are still single-byte tags, so the encoded payload size does not change. Also emit the lane fields after CertVersion so MarshalPayload stays in ascending field-number order, matching what protoc-gen-go would produce and keeping the hand-built expectations in payload_test.go straightforward. Field numbers are the only thing that identifies a lane advert, so a node on this build and one on the previous numbering will each skip the other's adverts as unknown fields and fall back to a single vanilla tunnel.
This commit is contained in:
@@ -23,11 +23,13 @@ message NebulaHandshakeDetails {
|
||||
// hand-written parser silently skips it on read.
|
||||
uint64 Cookie = 4 [deprecated = true];
|
||||
uint64 Time = 5;
|
||||
// Multiport lane negotiation. Absent on hosts without multiport enabled;
|
||||
// vanilla nebula treats 6 and 7 as unknown fields and skips them.
|
||||
LaneDetails InitiatorLanes = 6;
|
||||
LaneDetails ResponderLanes = 7;
|
||||
uint32 CertVersion = 8;
|
||||
// reserved for WIP multiport
|
||||
reserved 6, 7;
|
||||
// Multiport lane negotiation. Absent on hosts without multiport enabled;
|
||||
// vanilla nebula treats 9 and 10 as unknown fields and skips them.
|
||||
LaneDetails InitiatorLanes = 9;
|
||||
LaneDetails ResponderLanes = 10;
|
||||
}
|
||||
|
||||
// LaneDetails advertises a host's multiport lane capability. On a base
|
||||
|
||||
Reference in New Issue
Block a user