aboutsummaryrefslogtreecommitdiffstats
path: root/src/daemon.rs
Commit message (Collapse)AuthorAgeFilesLines
* Limit stdin read in tp, bound protocol drain, document Arc leakmurilo ijanc2026-03-251-3/+7
| | | | | | | | - tp: limit stdin to 64 KiB + 1 byte to reject oversized pastes early without unbounded memory allocation - daemon: bound the oversized-line drain to MAX_LINE_SIZE so a client without newlines cannot block beyond the read timeout - tpd: document intentional Arc::into_raw leak in signal handler
* Harden identity key permissions, atomic writes, and HTTP methodmurilo ijanc2026-03-251-3/+16
| | | | | | | | | - Write identity.key with mode 0600 to prevent other users from reading the Ed25519 private seed - Use destination filename in atomic_write temp path to avoid collisions between concurrent writes to different files - Reject HTTP methods other than GET/HEAD with 405 - Return "Hello Tesseras World" on GET /
* Fix clippy warnings: needless borrow and collapsible ifmurilo ijanc2026-03-251-1/+1
|
* Log socket setup errors in Unix client handlermurilo ijanc2026-03-251-2/+8
| | | | | Warn when set_nonblocking or set_read_timeout fails instead of silently disconnecting the client.
* Handle HTTP connections in separate threads with cap of 8murilo ijanc2026-03-251-2/+26
| | | | | | A slow connection or DHT lookup (up to 30s) no longer blocks the entire HTTP accept loop. Connections beyond the limit get a 503 response.
* Fix critical data integrity and security issuesmurilo ijanc2026-03-251-6/+28
| | | | | | | | | | - Atomic writes in store (write-to-temp + rename) to prevent corruption on crash - Validate DHT results against requested content hash to reject forged data from malicious nodes - Limit protocol line size to 128 KiB on Unix socket to prevent memory exhaustion - Use saturating_add for TTL expiry to prevent u64 overflow
* Initial commit: tesseras-paste decentralized pastebinmurilo ijanc2026-03-251-0/+504
DHT-backed encrypted pastebin with two binaries (tp/tpd), XChaCha20-Poly1305 encryption, content-addressed storage, and Unix socket + HTTP interfaces.