|
DeterministicESPAsyncWebServer v6.27.1
Zero-allocation, bounded-execution async HTTP server for ESP32
|
Layer 5 (Session) - the built-in protocol registry (policy, not mechanism). More...
Go to the source code of this file.
Functions | |
| void | proto_register_builtins (void) |
| Register every built-in protocol's handler (the policy list). | |
Layer 5 (Session) - the built-in protocol registry (policy, not mechanism).
The session dispatcher (session.cpp) is pure mechanism: it routes events to whatever ProtoHandler is registered for a connection's ConnProto and names no protocol. This file is the one place that knows which protocols the build includes. Each built-in's handler + callbacks live in its own module and are exposed by a pure *_proto_handler() accessor (no session dependency); here we install each behind the matching feature flag. Adding a protocol means writing its module and adding one guarded line here - never editing the dispatcher.
(The SSH remote-forward listener, ConnProto::PROTO_SSH_RFWD, is intentionally NOT here: it is a runtime opt-in that self-registers from ssh_forward_begin().)
Definition in file proto_builtins.cpp.
| void proto_register_builtins | ( | void | ) |
Register every built-in protocol's handler (the policy list).
Defined in proto_builtins.cpp - the one place that knows which protocols exist. Each built-in's handler lives in its own module (http in presentation, ssh in ssh_conn, ...) behind a *_proto_handler() accessor; this installs each. The session dispatcher (session.cpp) calls this once (lazily, on first lookup) so it never names a protocol itself. Optional runtime-gated handlers (e.g. the SSH remote-forward listener) self-register at their own opt-in entry point instead.
Definition at line 44 of file proto_builtins.cpp.
References http_proto_handler(), PROTO_HTTP, PROTO_MODBUS, PROTO_OPCUA, PROTO_SSH, PROTO_TELNET, and ssh_proto_handler().
Referenced by proto_get().