Conversation
Benchmark resultsInstruction countsSignificant differencesClick to expand
Other differencesClick to expand
Wall-timeSignificant differencesThere are no significant wall-time differences Other differencesClick to expand
Memory usageKey:
Significant differencesClick to expand
Additional informationCheckout details:
|
33c9c15 to
c1b5e44
Compare
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #3090 +/- ##
==========================================
+ Coverage 93.16% 93.27% +0.11%
==========================================
Files 98 98
Lines 22369 22329 -40
Branches 641 641
==========================================
- Hits 20839 20827 -12
+ Misses 1382 1354 -28
Partials 148 148 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
2931cd2 to
d696a97
Compare
ctz
left a comment
There was a problem hiding this comment.
depub probably ought to operate on code/tokens rather than with sed-like blind textual replacement
| { | ||
| debug!( | ||
| "selected ECH config ID {:?} suite {:?} public_name {:?}", | ||
| "selected ECH config ID {:?} suite {:?} lic_name {:?}", |
| /// Convert a public key and algorithm identifier into [`SubjectPublicKeyInfoDer`]. | ||
| /// | ||
| /// In the returned encoding, `alg_id` is used as the `algorithm` field, and `public_key` is | ||
| /// In the returned encoding, `alg_id` is used as the `algorithm` field, and `lic_key` is |
| /// | ||
| /// Custom implementations should complete the key exchange by calling | ||
| /// `kx.complete(peer_pub_key)` and then using this as the input keying material to | ||
| /// `kx.complete(peer__key)` and then using this as the input keying material to |
| /// | ||
| /// ```no_compile | ||
| #[doc = concat!("pub const MyValue: ", stringify!($struct_name), " = ", stringify!($struct_name), "(123);")] | ||
| #[doc = concat!(" const MyValue: ", stringify!($struct_name), " = ", stringify!($struct_name), "(123);")] |
| /// Remove the extension identified by `typ` from `self`. | ||
| #[allow(dead_code)] | ||
| pub(crate) fn clear(&mut self, typ: ExtensionType) { | ||
| fn clear(&mut self, typ: ExtensionType) { |
|
|
||
| /// Return true if there are no certificates. | ||
| pub fn is_empty(&self) -> bool { | ||
| pub(super) fn is_empty(&self) -> bool { |
|
|
||
| /// APIs abstracting over locking primitives. | ||
| pub mod lock; | ||
| mod lock; |
| @@ -1,18 +1,17 @@ | |||
| pub use std_lock::*; | |||
| pub(super) use std_lock::*; | |||
| /// | ||
| /// This means all the constituent parts that do cryptography return `true` for `fips()`. | ||
| pub fn fips(&self) -> FipsStatus { | ||
| pub(super) fn fips(&self) -> FipsStatus { |
| TLS13(&'static Tls13Version), | ||
| } | ||
|
|
||
| impl SupportedProtocolVersion { |
Yeah -- I already reverted a bunch of these cases. In the meantime, this will hopefully help: |
The DTLS 1.3 AAD consists of the encoded unified header, which is very different from DTLS 1.2 or TLS 1.3 [1]. This requires plumbing that unified header all the way into the record layer DecryptionState, which would take some dramatic refactoring. For now, we hack around the issue by making it behave like TLS 1.3, forcing content type to ApplicationData. All this will require some beefy refactoring of the crypto providers along the lines of what I proposed in that issue, maybe rustls#3090. We should also get rid of the ContentType::Dtls13Ciphertext variant. Instead we should probably be using whatever the content type in a deprotected record is. [1]: https://datatracker.ietf.org/doc/html/draft-ietf-tls-rfc9147bis-02#section-4-16
Tried out depub on rustls.
Not sure if worth it? But seems interesting.