[api] Replace std::vector<uint8_t> with APIBuffer to skip zero-fill

Replace std::vector<uint8_t> with a minimal APIBuffer class for the
shared protobuf write buffer, frame helper receive buffer (rx_buf_),
and noise handshake prologue buffer.

std::vector::resize() zero-fills new bytes via memset. Every byte is
immediately overwritten by the protobuf encoder or socket reads,
making the zero-fill pure waste. APIBuffer skips zero-initialization
on resize() and uses make_unique_for_overwrite where available.

Also removes a dead write_raw_ template overload from api_frame_helper.h.
This commit is contained in:
J. Nick Koston
2026-03-07 19:45:50 -10:00
parent 5e842a8b20
commit f7aeaad929
10 changed files with 99 additions and 23 deletions
@@ -0,0 +1,5 @@
<<: !include common.yaml
wifi:
ssid: MySSID
password: password1