ProtoCore v0.0.1
Deterministic, zero-heap network stack for embedded targets
Loading...
Searching...
No Matches
server Directory Reference

Directories

 mmgr
 

Files

 auth.cpp
 HTTP authentication for PC: Basic (RFC 7617) and stateless Digest (RFC 7616, SHA-256, qop=auth).
 
 file_serving.cpp
 Filesystem-backed static file serving for PC (GET/HEAD of an fs::FS path).
 
 fs_path.h
 Shared filesystem path helpers for the file-transfer servers (SFTP / SCP, and the pattern the static file server + WebDAV also use): join a mount root with a request subpath and reject .. traversal - the single choke point that keeps a request from escaping its mount.
 
 http_range.cpp
 Shared single-range Range: bytes=... parser. See http_range.h.
 
 http_range.h
 Shared single-range Range: bytes=... parser (RFC 7233), used by static file serving and the edge cache (PC_ENABLE_RANGE).
 
 middleware.cpp
 Middleware chain + built-in fixed-window rate limiter for PC.
 
 protocore_internal.h
 Library-private declarations shared between protocore.cpp and the src/server/*.cpp request-handler translation units it is split into (WebDAV, file serving, ...).
 
 regex.cpp
 Bounded regex route matcher for PC (used by on_regex() routes).
 
 response.cpp
 Response building for PC: template rendering, chunked/streaming responses, response headers + cookies, MIME typing, and the stats / Prometheus-metrics endpoints.
 
 ssh_scp.cpp
 SCP server - fs::FS binding (SINK direction). See ssh_scp.h.
 
 ssh_scp.h
 SCP server - the fs::FS binding (PC_ENABLE_SSH_SCP).
 
 ssh_sftp.cpp
 SFTP server subsystem - fs::FS binding. See ssh_sftp.h.
 
 ssh_sftp.h
 SFTP server subsystem - the fs::FS binding (PC_ENABLE_SSH_SFTP).
 
 webdav.cpp
 WebDAV (RFC 4918) filesystem-backed request handler for PC.
 
 websocket_sse.cpp
 WebSocket (RFC 6455) and Server-Sent Events upgrade + public API for PC.