Back to Site
Loading...
Searching...
No Matches
File List
Here is a list of all files with brief descriptions:
[detail level 123]
 
docs
 
librats
 
bindings
 
rats.h
The C ABI over Node — what every language binding is built on
 
core
 
address.h
A dialable transport endpoint: a numeric IP + port
 
bytes.h
Lightweight byte container aliases and a non-owning byte view
 
event_bus.h
A tiny typed publish/subscribe hub for decoupled module notifications
 
service_registry.h
Interface-keyed service lookup for targeted, synchronous module calls
 
nat
 
port_mapping.h
Shared types for automatic NAT port forwarding (UPnP IGD + NAT-PMP)
 
node
 
circuit_service.h
Turning a relayed byte stream into a peer connection — the capability a relay module needs and PeerNetwork deliberately does not offer
 
config.h
Node construction options
 
dial_service.h
Dialing a specific endpoint over a specific wire — the capability a NAT-traversal module needs and the ordinary connect() cannot express
 
nat_status.h
What the mesh has told us about our own side of the NAT
 
node.h
The public entry point: a thin facade that wires the layers together
 
node_context.h
What a subsystem receives at attach() — the node's gift to its plugins
 
peer_network.h
The narrow contract a subsystem needs from the node — and nothing more
 
peer
 
peer.h
A lightweight handle to a connected peer
 
peer_id.h
Self-certifying peer identity
 
peer_info.h
Addressing/metadata for a peer — the shareable, persistable identity
 
storage
 
storage.h
Distributed key-value store as a pluggable Node subsystem
 
subsystems
 
bittorrent.h
BitTorrent as a node Subsystem — wraps bittorrent::Client and shares the node's DHT
 
dht_discovery.h
Peer discovery via the Kademlia DHT — a thin adapter, not a rewrite
 
dht_service.h
Capability that hands out the node-owned DhtClient to sibling modules
 
file_transfer.h
Stream a file or a whole directory tree to a peer, with integrity, backpressure, pause/resume/cancel, idle-timeout and crash-safe writes
 
hole_punch.h
UDP hole punching: two nodes behind NATs dial each other at the same instant, arranged through a peer they both already have
 
hole_punch_service.h
Capability that lets a sibling module ask for a NAT hole punch by PeerId
 
mdns_discovery.h
Local-network peer discovery via mDNS — a thin adapter, not a rewrite
 
message_json.h
Typed JSON message exchange over PeerNetwork
 
peer_exchange.h
Peer exchange (PEX): peers gossip the addresses of peers they know, so a node bootstraps the mesh from its existing links — no DHT/tracker needed
 
ping_service.h
Liveness + round-trip-time probing, built purely on PeerNetwork
 
port_mapping_service.h
Automatic NAT port forwarding (UPnP IGD + NAT-PMP) as a Subsystem
 
pubsub.h
Topic-based publish/subscribe — a GossipSub implementation over PeerNetwork
 
reconnection.h
Keeps connections to a set of peer addresses alive with backoff
 
relay.h
Reaching a peer through a node both ends can already reach
 
relay_service.h
Capability that lets a sibling module ask for a peer to be reached through a third node, by PeerId
 
util
 
json.h
A small, self-contained JSON value type for librats
 
wire
 
frame.h
Two-level wire framing: outer length-prefixed blocks, inner messages