Skip to main content

Module control

Module control 

Source
Expand description

The Tailscale control-plane messages, encoded without an allocator.

crate::noise gets a node as far as an authenticated channel to the server. This crate is what it says over it: registration now, and the map request as the netmap parser arrives.

Everything here is sans-io — documents in and out of caller-supplied buffers — so the same code runs on the host, on the harness, and on the device.

Re-exports§

pub use hostinfo::EXIT_NODE_ROUTES;
pub use hostinfo::Hostinfo;
pub use json::JsonError;
pub use json::Writer;
pub use map::MapRequest;
pub use register::RegisterRequest;
pub use register::RegisterResponse;

Modules§

authority
Parsing and stable hashing of a control-server authority.
hostinfo
What a node tells the control plane about itself.
json
Writing JSON into a fixed buffer.
map
MapRequest: asking the server for the network map.
register
RegisterRequest: how a node joins a tailnet.
tls
Allocation-free TLS verification for control and DERP connections.
transport
Transport-independent ts2021 Noise and HTTP/2 control sessions.

Constants§

CAPABILITY_VERSION
The capability version this client speaks, taken from crate::noise so the registration body and the Noise prologue cannot disagree.