-
Notifications
You must be signed in to change notification settings - Fork 742
Tighten up decoding of empty messages #2430
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
Conversation
Unfortunately attaching the emptiness or not to `Vec<DistinguishedName>` doesn't work here, because the requirement changes based on context.
Benchmark resultsInstruction countsSignificant differencesClick to expand
Other differencesClick to expand
Wall-timeSignificant differencesClick to expand
Other differencesClick to expand
Additional informationCheckout details:
|
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #2430 +/- ##
==========================================
- Coverage 96.03% 95.94% -0.09%
==========================================
Files 94 94
Lines 22571 22597 +26
==========================================
+ Hits 21675 21680 +5
- Misses 896 917 +21 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!
b05e224
to
cc93662
Compare
cc93662
to
e0138f0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
rad. This is the kind of diff that makes me <3 Rust
This allows `PayloadU8` to be specialised for non-emptiness.
This is a minor refactor of the existing emptiness check. It does not change the underlying type of tickets as this is shared with TLS1.2.
e0138f0
to
d469428
Compare
This PR makes us more correct when parsing messages with defined lower length bounds, like:
This notation says
DistinguishedName
must be a non-empty string. Our decoding now enforces this.There's some risk that this introduces new interop failures, but I think it is quite low.
There are quite a lot of commits, but they are all quite small.