Get desktop application:
View/edit binary Protocol Buffers messages
A authentication message
Used in:
The inner message type
Send the name
Send the status
Send the client status
Server's challenge to the client
Client's reply to server's challenge and client's own challenge to the server
Server's reply to the client's challenge
The server's initial challenge request
Used in:
The server's name
The node's capability flags
The challenge value
The node's incoming connection string
The server's reply to the client about their own challenge
Used in:
Another MD5 digest that the server constructed from the client's challenge value
The reply to the server's challenge.
Used in:
The client's own challenge for the server to handle
An MD5 digest that the client constructed from the server's challenge value
The client's status reply if the `ServerStatus` was ALIVE If status was alive, node A answers with another status message containing either true, which means that the connection is to continue (the old connection from this node is broken), or false, which means that the connection is to be closed (the connection attempt was a mistake.
Used in:
The status
A message containing the node's name
Used in:
, ,The node's full name Format: `node_name@hostname`
The node's capability flags
This node's connection details
Placeholder to represent a node's flags
Used in:
,The node version
Server -> Client: `SendStatus` is the server replying with the handshake status to the client
Used in:
The status
Status types
Used in:
The handshake will continue
The handshake will continue, but A is informed that B has another ongoing connection attempt that will be shut down (simultaneous connect where A's name is greater than B's name, compared literally).
The handshake will not continue, as B already has an ongoing handshake, which it itself has initiated (simultaneous connect where B's name is greater than A's).
The connection is disallowed for some (unspecified) security reason.
A connection to the node is already active, which either means that node A is confused or that the TCP connection breakdown of a previous node with this name has not yet reached node B.