diff options
| author | Luke Hoersten <[email protected]> | 2026-06-14 16:51:17 -0500 |
|---|---|---|
| committer | Luke Hoersten <[email protected]> | 2026-06-14 16:51:17 -0500 |
| commit | ba396daafb4f37a0635a448eec5a001861914884 (patch) | |
| tree | b7e90835a97a5b5d304336ac45a1d4c032713911 /main/local_screens.c | |
| parent | 2daab24dac1ed6f2c3054221d2464db7358816f6 (diff) | |
http_api: bump httpd stack to 8 KiB — POST /config was overflowing
POST /config has ~2.4 KiB of stack locals (2 KiB body buffer + the
scrypted URL + viewport name + cJSON parser frames) which overran the
default 4 KiB httpd task stack and tripped the stack-protect canary
mid-handler. The request body was applied to RAM + NVS, but the
handler crashed before sending the response, so curl saw a connection
reset and the device rebooted into "Stack protection fault".
M4 + M6 ✅ verified 2026-06-14 after the bump:
- POST /config full / partial → 204; survives reboot via NVS
- 5 validation failure modes → 400
- POST /state wake/sleep → 204; idempotent repeats → 204
- POST /frame while asleep → 409 with expected body
- idle timer fires after idle_timeout_ms; 0 correctly disables
Diffstat (limited to 'main/local_screens.c')
0 files changed, 0 insertions, 0 deletions
