|
DeterministicESPAsyncWebServer 1.2.0
Zero-allocation, bounded-execution async HTTP server for ESP32
|
Layer 7 (Application) — HTTP routing and request handler implementation. More...
Go to the source code of this file.
Layer 7 (Application) — HTTP routing and request handler implementation.
Dispatch pipeline (called from DetWebServer::handle())
Route table Routes are stored in a fixed-size array of Route structs. Both exact and wildcard (suffix *) routes are supported; exact routes always take priority because the loop checks them in insertion order and returns on the first match.
PCB lifecycle in send() / send_empty() Before writing to the PCB the slot is set to CONN_FREE and the pcb pointer is nulled. This mirrors the pattern in transport.cpp:
tcp_arg(pcb, nullptr)).conn->pcb and set conn->state = CONN_FREE.This means any lwIP error callback that fires mid-write sees the slot as already free and takes no action — preventing a double-free scenario.
Definition in file DeterministicESPAsyncWebServer.cpp.