-
Notifications
You must be signed in to change notification settings - Fork 7.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HTTPClient lib - add HTTPCLIENT_NOSECURE build flag #9893
Conversation
👋 Hello vortigont, we appreciate your contribution to this project! Click to see more instructions ...
Review and merge process you can expect ...
|
@Jason2866 maybe this could be used in Tasmota's Arduino core. As I remember, it excludes mbedTLS completely, and attempt to use |
Memory usage test (comparing PR against master branch)The table below shows the summary of memory usage change (decrease - increase) in bytes and percentage for each target.
Click to expand the detailed deltas report [usage change in BYTES]
|
Test Results 56 files 56 suites 5m 16s ⏱️ Results for commit 8532b18. ♻️ This comment has been updated with latest results. |
I noticed also in my fork of ESPAsyncWebServer (https://github.com/mathieucarbou/ESPAsyncWebServer). I was able to remove the mbedtls lib on Arduino 2 by using other hash implementations (-88k), but on Arduino 3, mbedtls comes from core so cannot be skipped. Would be nice to have a way to more dynamically reduce the firmware size because libraries and code tend to use more and more space always, but our ESP32 devices are for most part still with the same flash memory. |
@vortigont Thx for heads up. Don't see an issue using http client in our fork since the client secure code parts are completly removed |
2b6427f
to
0a4a592
Compare
`HTTPCLIENT_NOSECURE` build flag disables TLS support in HTTPClient library by excluding `NetworkClientSecure.h` header. This allows linker to strip down mbedTLS lind and certificates bundle, which in turn reduces firmware image for about ~80kib.
Now it is impossible to use HTTPClient lib without bringing all mbedTLS stuff along, even when no https connections requred.
HTTPCLIENT_NOSECURE
build flag disables TLS support in HTTPClient library by excludingNetworkClientSecure.h
header.This allows linker to strip down mbedTLS lib and certificates bundle, which in turn reduces firmware image for about ~80kib.
Could be handy for the cases when no encrypted http connections required for the sake of saving firmware size.
Tested on all HTTPClient lib examples, firmware image size reduction is about 80kib, RAM reduction is about 600 bytes.
origin:
this PR: