When a listener is configured to deal with TLS upstreams, we use the SNI field of the TLS ClientHello message to decide where to send the traffic. Therefore, a buffer of 1024 bytes was used to temporarily store this message. However, a TLS ClientHello message can be larger than that, up to 16K bytes. So now the first few bytes are read and manually parsed to find out how long the message is. And then the entire ClientHello message is retrieved. So hopefully that will fix the issue causing the ClientHello determination to fail. Closes #10 Signed-off-by: Jacob Kiers <code@kiers.eu>
1.4 KiB
1.4 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
Fixed
- The ClientHello TLS header is now read in full before it is parsed, solving an error where there was not enough data to fully read it. In those cases it was not possible to determine the upstream address and therefore the proxy would go the the default action instead.
Changed
- Updated some dependencies to prevent the build from breaking.
0.1.9 - 2024-06-22
Deprecated
The ability to run l4p without arguments is now deprecated. Please use
l4p serve going forward.
Added
- Added self update functionality. Just run
l4p updateto use it. - Now keeping a change log in the
CHANGELOG.mdfile.
Changed
- Updated build pipeline to generate much smaller binaries
Previous versions
Types of changes:
Addedfor new features.Changedfor changes in existing functionality.Deprecatedfor soon-to-be removed features.Removedfor now removed features.Fixedfor any bug fixes.Securityin case of vulnerabilities.