Skip to main content

Crate decdn_common

Crate decdn_common 

Source
Expand description

Shared types for the deCDN binaries.

The daemon (decdn-node) and the user CLI (decdn) both depend on this crate for the config schema, identity loading, and CLI argument structs they share. Wire formats and protocol-level types live in decdn_protocol; the config-vocabulary value types this schema is built from (RetryPolicy, DecompressMode, OriginUrl, OriginKind, Hash, PinnedHashes) live in the decdn_config_types leaf crate, so this crate (and the publisher CLI) never link the cache engine / iroh-blobs / AWS SDK (#578). The cache-engine types proper stay in decdn-cache, a decdn-node-only dependency. This crate holds only what both binaries need to parse, validate, or pass between processes.

Modules§

address
Shared Ethereum address parsing for the deCDN binaries.
admin
Wire types for the loopback admin JSON-RPC surface (appendix-local-admin-http.md).
cli
CLI argument parsing for the decdn binary.
config
Configuration loading and resolution.
data_dir
Which files live in a data_dir, and whose they are.
disk
Filesystem free-space probing: statvfs on Unix, GetDiskFreeSpaceExW on Windows, both through fs4.
identity
Node identity: load or generate a persistent ed25519 SecretKey.
net
Host address classification shared by the daemon and the CLI (ADR 001 § Node Discovery).
redact
Credential redaction for URL-ish strings shared across the binaries.