• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

dangernoodle-io / breadboard / 27593190652
100%

Build:
DEFAULT BRANCH: main
Ran 16 Jun 2026 04:01AM UTC
Jobs 1
Files 34
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

16 Jun 2026 04:00AM UTC coverage: 100.0%. Remained the same
27593190652

push

github

web-flow
fix(bb_sink_http): heap-allocate oversized config/header buffers — main-task stack overflow on http-sink boot (hardware crash) (#451)

the 3584-byte esp_main task stack cannot hold multiple HEADERS_BUF_MAX
(~2596 bytes) allocations: bb_sink_http_init → load_from_nvs → hbuf[2596]
caused a freertos stack overflow crash-loop at pre_http init on an
esp32-wroom32 with the http telemetry sink enabled (hardware-confirmed).
the earlier 2048→2596 header-buffer growth (#447) worsened the margin.

heap-allocated buffers in bb_sink_http.c:
- parse_headers: char tmp[HEADERS_BUF_MAX] → SINK_MALLOC (line ~97)
- load_from_nvs: char hbuf[HEADERS_BUF_MAX] → SINK_MALLOC (line ~292)
- save_to_nvs:   char hbuf[HEADERS_BUF_MAX] → SINK_MALLOC (line ~316)
- http_pub_publish: char url[BASE_MAX+PATH_MAX+512] (~768 B) → SINK_MALLOC (line ~519)
all paths NULL-check and free on every exit branch.

bb_tls_creds.c was already fixed in #450 (4KB NVS read buffer).

adds BB_SINK_HTTP_TESTING malloc injection hook (mirrors bb_tls_creds
pattern) and OOM-path tests: parse_headers oom → 0 headers,
publish url oom → BB_ERR_NO_SPACE, init nvs hbuf oom → graceful (0 headers).

also fixes bb_http_client_host session record: copies url into a fixed
char[512] buffer instead of storing a dangling pointer into the caller's
freed heap buffer (caught by the new heap-url path in tests).

plaintext impact: all three HEADERS_BUF_MAX buffers are NOT gated on
CONFIG_BB_HTTP_TLS_ENABLE. a plaintext http-sink build with non-empty
headers stored in nvs would hit the same overflow on the 3584-byte main
task — this fix covers both TLS and plaintext builds.

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>

1615 of 1615 branches covered (100.0%)

Branch coverage included in aggregate %.

2702 of 2702 relevant lines covered (100.0%)

1202.6 hits per line

Jobs
ID Job ID Ran Files Coverage
1 27593190652.1 16 Jun 2026 04:01AM UTC 34
100.0
GitHub Action Run
Source Files on build 27593190652
  • Tree
  • List 34
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #27593190652
  • 4b1c2483 on github
  • Prev Build on main (#27591008068)
  • Next Build on main (#27593826565)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc