Releases: aws/aws-iot-device-sdk-cpp-v2
Releases · aws/aws-iot-device-sdk-cpp-v2
Update aws-crt-cpp to v0.13.6
Update aws-crt-cpp to v0.13.6 to bring up the following:
BUGFIX
- Don't run aws-lc's codegen at build time, it just introduces complexity.
- Some characters were not correctly URI-encoded
- Fix crash when peer hangs up immediately following first non-TLS write.
- Fix issue where TLS context initialization could fail on linux due to passing in buffers that weren't properly zero-terminated at their final length.
- OpenSSL libcrypto.a detection fixes
Optimization
- Only using extra warning and werror flags on Debug build type
- Add support to store and pass SDK Name & Version as a metric to IoT cloud
Http, Windows, and LibCrypto fixes
- BUGFIX: More validation of HTTP/1.1 messages.
- BUGFIX: Non-ascii file open fix on Windows
- BUGFIX: Restored OpenSSL (libcrypto.a) detection and improved robustness.
Reliability/stability fixes
- Fix an issue on Windows where time calculations would saturate when the machine had been up longer than 21 days
- Fix a linking error against aws-lc when building with shared libs on
- Fix an issue where using the default Api constructor could lead to crashes due to allocator mismatches.
BYO_CRYPTO
Ability to compile SDK with experimental bring-your-own crypto/TLS support.
Direct mqtt through http proxy
- Adds support for establishing direct mqtt connections through an http proxy
safely MQTT publish
- Underlying lib will keep the payload alive, now, the payload of publish doesn't need to be alive until the complete callback
aws-lc
Improved proxy support
- Refactor of existing proxy systems
-
- Tunneling vs. forwarding is an explicit configuration choice, and no longer implicit based on tls properties. The behavior of existing applications should remain unchanged.
-
- Implemented a new proxy "strategy" system for authentication. Strategies exist for no authentication, basic authentication, and synchronous strategies are now in place to support kerberos and ntlm authentication. Strategies can be linked together in a chain and attempted sequentially. Existing authentication controls remain in place but are deprecated and now map to the new strategy types.
Fix esoteric build scenarios
- Fix shared-lib builds of inner submodules
- Fix building tests of inner submodules
Fix inner submodules
- Fix some inner submodules that got synced to an old commit