Commit Graph

21 Commits

Author SHA1 Message Date
Alessandro Ghedini af9df3765d replace once_cell with LazyLock
We can drop the once_cell dependency since the same functionality is
implemented in std now.

Requires bumping MSRV to 1.80.
2025-01-22 17:52:35 +00:00
Paul Mabileau 49d5a61163 Refactor!: Introduce a Cargo feature for optional Hyper 0 support
Closes #294. Requires breaking changes. The default v0 is changed in
favor of v1, but v0 is still kept available, just in a forced module
path. It enables dependency de-duplication when consuming it.

Signed-off-by: Paul Mabileau <paul.mabileau@harfanglab.fr>
2024-12-07 21:07:31 +00:00
Paul Mabileau e518c2444a Refactor!: Remove strict `TokioIo` response requirement from `hyper_boring::v1::HttpsConnector`
Closes #295.

Signed-off-by: Paul Mabileau <paul.mabileau@harfanglab.fr>
2024-12-07 19:20:22 +00:00
Anthony Ramine 193bf3b9d7
Implement optional Hyper 1 support in hyper-boring (#246) 2024-09-18 13:24:35 +02:00
Eric Rosenberg 870ccd9084 builder 2024-04-07 17:03:52 -07:00
Eric Rosenberg 2cee0af3d2 HttpsLayerSettings 2024-04-07 17:03:52 -07:00
Eric Rosenberg 8db6134c75 bound session cache
When establishing new TLS sessions, servers may send multiple session
tickets (RFC8446 4.6.1). hyper-boring caches tickets without placing a
limit on how many tickets are cached. This leads to unbounded growth of
hyper-boring's cache and leaves clients vulnerable to malicious servers
who might send many session tickets to exhaust a client's available
memory.

This change bounds the cache to a default of 8 tickets.
2024-04-07 17:03:52 -07:00
Anthony Ramine 30b33991e5 Fix clippy lints 2024-03-24 10:52:05 -07:00
Anthony Ramine 3637bfed2f Introduce HttpsLayer::set_ssl_callback
This lets us customize the Ssl of each connection,
like set_callback which lets us customize the ConnectConfiguration
a step earlier.
2024-01-03 15:43:52 +01:00
Anthony Ramine 9b0e422c8d Don't use self-signed certs in hyper-boring tests 2024-01-03 15:43:52 +01:00
Anthony Ramine 602bb6d63d Fix clippy lints 2023-10-09 11:49:07 +01:00
Ivan Nikulin d1ee9bfd86 Use workspace metadata for crates 2023-07-10 11:38:18 +01:00
Anthony Ramine 6d61bf2adb Fix google test
Sometimes google replies with 302 to redirect to another Google website
with a country-specific TLD. We don't actually care which status code
is returned, just that we successfully connect to google.com with
the HTTPS connector.
2023-03-27 13:14:40 +02:00
4JX 3841e626ae Remove T: Debug bound 2022-08-09 10:04:22 -05:00
4JX 3417b41b5b hyper-boring: Impl debug for MaybeHttpsStream 2022-08-09 10:04:22 -05:00
Ivan Nikulin 10488a85f3 Sync upstream changes to support tokio 1.x
Bump major versions of hyper-boring and tokio-boring.
2021-02-18 16:12:19 +00:00
Gabriela Alexandra Moldovan 51e36d1f1a Ensure the host can be parsed as an IPv6 address. 2021-01-08 16:53:17 +00:00
Ivan Nikulin 42322f8b1e Make clippy happy 2020-12-03 14:12:46 +00:00
Ivan Nikulin 2fc44386af Add support for wss: scheme in hyper-boring 2020-12-03 01:25:18 +00:00
Ivan Nikulin fda73f4947 Fix docs 2020-11-11 20:32:53 +00:00
Ivan Nikulin f4096d8afd Add hyper-boring 2020-11-11 20:29:54 +00:00