Module safe_network::messaging[][src]

Expand description

The Safe Network messaging interface.

This modules defines the messages that can be handled by the Safe Network. In particular:

  • This module contains types that are common across the messaging API.
  • The serialisation module defines the wire format and message (de)serialization API.
  • The data module defines the data messages that clients and nodes send, and their possible responses.
  • The node module defines the messages that nodes can exchange on the network.
  • The section_info module defines the queries and responses for section information – these may be sent by both clients and nodes.

Re-exports

pub use self::serialisation::MessageType;
pub use self::serialisation::NodeMsgAuthority;

Modules

Data messages that clients and nodes can send. Data messages and their possible responses.

Messages that nodes can exchange on the network.

Queries and responses for section information.

The wire format and message (de)serialization API.

Structs

Verified authority.

Authority of a single peer that uses it’s BLS Keyshare to sign the message.

Authority of a network peer.

An EndUser is represented by the name it’s proxied through, and its socket id.

Unique ID for messages.

Authority of a single peer.

Details of section authority.

Authority of a whole section.

In order to send a message over the wire, it needs to be serialized along with a header (WireMsgHeader) which contains the information needed by the recipient to properly deserialize it. The WireMsg struct provides the utilities to serialize and deserialize messages.

Enums

Message destination location.

Errors that can occur when interacting with messaging APIs.

Source authority of a message.

Message source location.

Constants

Constant byte length of MessageId.

Traits

Verify authority.

Type Definitions

A specialised Result type for messaging APIs.

This maps to the SocketAddr at the Elders where the EndUser is proxied through.