upgrades quinn and rustls crates (#32499)
This commit is contained in:
parent
b1fd0e8e18
commit
868e086d75
|
@ -2433,7 +2433,7 @@ dependencies = [
|
||||||
"httpdate",
|
"httpdate",
|
||||||
"itoa",
|
"itoa",
|
||||||
"pin-project-lite",
|
"pin-project-lite",
|
||||||
"socket2",
|
"socket2 0.4.9",
|
||||||
"tokio",
|
"tokio",
|
||||||
"tower-service",
|
"tower-service",
|
||||||
"tracing",
|
"tracing",
|
||||||
|
@ -4058,52 +4058,50 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quinn"
|
name = "quinn"
|
||||||
version = "0.9.3"
|
version = "0.10.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "445cbfe2382fa023c4f2f3c7e1c95c03dcc1df2bf23cebcb2b13e1402c4394d1"
|
checksum = "21252f1c0fc131f1b69182db8f34837e8a69737b8251dff75636a9be0518c324"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytes",
|
"bytes",
|
||||||
"pin-project-lite",
|
"pin-project-lite",
|
||||||
"quinn-proto",
|
"quinn-proto",
|
||||||
"quinn-udp",
|
"quinn-udp",
|
||||||
"rustc-hash",
|
"rustc-hash",
|
||||||
"rustls 0.20.8",
|
"rustls 0.21.5",
|
||||||
"thiserror",
|
"thiserror",
|
||||||
"tokio",
|
"tokio",
|
||||||
"tracing",
|
"tracing",
|
||||||
"webpki 0.22.0",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quinn-proto"
|
name = "quinn-proto"
|
||||||
version = "0.9.3"
|
version = "0.10.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "67c10f662eee9c94ddd7135043e544f3c82fa839a1e7b865911331961b53186c"
|
checksum = "85af4ed6ee5a89f26a26086e9089a6643650544c025158449a3626ebf72884b3"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytes",
|
"bytes",
|
||||||
"rand 0.8.5",
|
"rand 0.8.5",
|
||||||
"ring",
|
"ring",
|
||||||
"rustc-hash",
|
"rustc-hash",
|
||||||
"rustls 0.20.8",
|
"rustls 0.21.5",
|
||||||
"rustls-native-certs",
|
"rustls-native-certs",
|
||||||
"slab",
|
"slab",
|
||||||
"thiserror",
|
"thiserror",
|
||||||
"tinyvec",
|
"tinyvec",
|
||||||
"tracing",
|
"tracing",
|
||||||
"webpki 0.22.0",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quinn-udp"
|
name = "quinn-udp"
|
||||||
version = "0.3.2"
|
version = "0.4.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "641538578b21f5e5c8ea733b736895576d0fe329bb883b937db6f4d163dbaaf4"
|
checksum = "6df19e284d93757a9fb91d63672f7741b129246a669db09d1c0063071debc0c0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
|
"bytes",
|
||||||
"libc",
|
"libc",
|
||||||
"quinn-proto",
|
"socket2 0.5.3",
|
||||||
"socket2",
|
|
||||||
"tracing",
|
"tracing",
|
||||||
"windows-sys 0.42.0",
|
"windows-sys 0.48.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -4568,6 +4566,17 @@ dependencies = [
|
||||||
"webpki 0.22.0",
|
"webpki 0.22.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rustls"
|
||||||
|
version = "0.21.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "79ea77c539259495ce8ca47f53e66ae0330a8819f67e23ac96ca02f50e7b7d36"
|
||||||
|
dependencies = [
|
||||||
|
"ring",
|
||||||
|
"rustls-webpki",
|
||||||
|
"sct 0.7.0",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rustls-native-certs"
|
name = "rustls-native-certs"
|
||||||
version = "0.6.1"
|
version = "0.6.1"
|
||||||
|
@ -4598,6 +4607,16 @@ dependencies = [
|
||||||
"base64 0.13.1",
|
"base64 0.13.1",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rustls-webpki"
|
||||||
|
version = "0.101.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "15f36a6828982f422756984e47912a7a51dcbc2a197aa791158f8ca61cd8204e"
|
||||||
|
dependencies = [
|
||||||
|
"ring",
|
||||||
|
"untrusted",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rustversion"
|
name = "rustversion"
|
||||||
version = "1.0.13"
|
version = "1.0.13"
|
||||||
|
@ -5060,6 +5079,16 @@ dependencies = [
|
||||||
"winapi 0.3.9",
|
"winapi 0.3.9",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "socket2"
|
||||||
|
version = "0.5.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877"
|
||||||
|
dependencies = [
|
||||||
|
"libc",
|
||||||
|
"windows-sys 0.48.0",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "soketto"
|
name = "soketto"
|
||||||
version = "0.7.1"
|
version = "0.7.1"
|
||||||
|
@ -6303,7 +6332,7 @@ dependencies = [
|
||||||
"rand 0.7.3",
|
"rand 0.7.3",
|
||||||
"serde",
|
"serde",
|
||||||
"serde_derive",
|
"serde_derive",
|
||||||
"socket2",
|
"socket2 0.4.9",
|
||||||
"solana-logger",
|
"solana-logger",
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-version",
|
"solana-version",
|
||||||
|
@ -6534,9 +6563,8 @@ dependencies = [
|
||||||
"log",
|
"log",
|
||||||
"quinn",
|
"quinn",
|
||||||
"quinn-proto",
|
"quinn-proto",
|
||||||
"quinn-udp",
|
|
||||||
"rcgen",
|
"rcgen",
|
||||||
"rustls 0.20.8",
|
"rustls 0.21.5",
|
||||||
"solana-connection-cache",
|
"solana-connection-cache",
|
||||||
"solana-logger",
|
"solana-logger",
|
||||||
"solana-measure",
|
"solana-measure",
|
||||||
|
@ -6997,10 +7025,9 @@ dependencies = [
|
||||||
"pkcs8",
|
"pkcs8",
|
||||||
"quinn",
|
"quinn",
|
||||||
"quinn-proto",
|
"quinn-proto",
|
||||||
"quinn-udp",
|
|
||||||
"rand 0.7.3",
|
"rand 0.7.3",
|
||||||
"rcgen",
|
"rcgen",
|
||||||
"rustls 0.20.8",
|
"rustls 0.21.5",
|
||||||
"solana-logger",
|
"solana-logger",
|
||||||
"solana-metrics",
|
"solana-metrics",
|
||||||
"solana-perf",
|
"solana-perf",
|
||||||
|
@ -7191,7 +7218,7 @@ dependencies = [
|
||||||
"rand_chacha 0.2.2",
|
"rand_chacha 0.2.2",
|
||||||
"rayon",
|
"rayon",
|
||||||
"rcgen",
|
"rcgen",
|
||||||
"rustls 0.20.8",
|
"rustls 0.21.5",
|
||||||
"solana-entry",
|
"solana-entry",
|
||||||
"solana-gossip",
|
"solana-gossip",
|
||||||
"solana-ledger",
|
"solana-ledger",
|
||||||
|
@ -7940,7 +7967,7 @@ dependencies = [
|
||||||
"parking_lot 0.12.1",
|
"parking_lot 0.12.1",
|
||||||
"pin-project-lite",
|
"pin-project-lite",
|
||||||
"signal-hook-registry",
|
"signal-hook-registry",
|
||||||
"socket2",
|
"socket2 0.4.9",
|
||||||
"tokio-macros",
|
"tokio-macros",
|
||||||
"windows-sys 0.48.0",
|
"windows-sys 0.48.0",
|
||||||
]
|
]
|
||||||
|
@ -8707,21 +8734,6 @@ dependencies = [
|
||||||
"windows_x86_64_msvc 0.32.0",
|
"windows_x86_64_msvc 0.32.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "windows-sys"
|
|
||||||
version = "0.42.0"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
|
|
||||||
dependencies = [
|
|
||||||
"windows_aarch64_gnullvm 0.42.2",
|
|
||||||
"windows_aarch64_msvc 0.42.2",
|
|
||||||
"windows_i686_gnu 0.42.2",
|
|
||||||
"windows_i686_msvc 0.42.2",
|
|
||||||
"windows_x86_64_gnu 0.42.2",
|
|
||||||
"windows_x86_64_gnullvm 0.42.2",
|
|
||||||
"windows_x86_64_msvc 0.42.2",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows-sys"
|
name = "windows-sys"
|
||||||
version = "0.45.0"
|
version = "0.45.0"
|
||||||
|
|
|
@ -259,9 +259,8 @@ prost = "0.11.9"
|
||||||
prost-types = "0.11.9"
|
prost-types = "0.11.9"
|
||||||
protobuf-src = "1.1.0"
|
protobuf-src = "1.1.0"
|
||||||
qstring = "0.7.2"
|
qstring = "0.7.2"
|
||||||
quinn = "0.9.3"
|
quinn = "0.10.1"
|
||||||
quinn-proto = "0.9.3"
|
quinn-proto = "0.10.1"
|
||||||
quinn-udp = "0.3.2"
|
|
||||||
quote = "1.0"
|
quote = "1.0"
|
||||||
rand = "0.7.0"
|
rand = "0.7.0"
|
||||||
rand_chacha = "0.2.2"
|
rand_chacha = "0.2.2"
|
||||||
|
@ -275,7 +274,7 @@ rolling-file = "0.2.0"
|
||||||
reqwest = { version = "0.11.17", default-features = false }
|
reqwest = { version = "0.11.17", default-features = false }
|
||||||
rpassword = "7.2"
|
rpassword = "7.2"
|
||||||
rustc_version = "0.4"
|
rustc_version = "0.4"
|
||||||
rustls = { version = "0.20.8", default-features = false }
|
rustls = { version = "0.21.5", default-features = false, features = ["quic"] }
|
||||||
rustversion = "1.0.13"
|
rustversion = "1.0.13"
|
||||||
scopeguard = "1.1.0"
|
scopeguard = "1.1.0"
|
||||||
semver = "1.0.17"
|
semver = "1.0.17"
|
||||||
|
|
|
@ -2103,7 +2103,7 @@ dependencies = [
|
||||||
"httpdate",
|
"httpdate",
|
||||||
"itoa",
|
"itoa",
|
||||||
"pin-project-lite",
|
"pin-project-lite",
|
||||||
"socket2",
|
"socket2 0.4.9",
|
||||||
"tokio",
|
"tokio",
|
||||||
"tower-service",
|
"tower-service",
|
||||||
"tracing",
|
"tracing",
|
||||||
|
@ -3657,52 +3657,50 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quinn"
|
name = "quinn"
|
||||||
version = "0.9.3"
|
version = "0.10.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "445cbfe2382fa023c4f2f3c7e1c95c03dcc1df2bf23cebcb2b13e1402c4394d1"
|
checksum = "21252f1c0fc131f1b69182db8f34837e8a69737b8251dff75636a9be0518c324"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytes",
|
"bytes",
|
||||||
"pin-project-lite",
|
"pin-project-lite",
|
||||||
"quinn-proto",
|
"quinn-proto",
|
||||||
"quinn-udp",
|
"quinn-udp",
|
||||||
"rustc-hash",
|
"rustc-hash",
|
||||||
"rustls 0.20.8",
|
"rustls 0.21.5",
|
||||||
"thiserror",
|
"thiserror",
|
||||||
"tokio",
|
"tokio",
|
||||||
"tracing",
|
"tracing",
|
||||||
"webpki 0.22.0",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quinn-proto"
|
name = "quinn-proto"
|
||||||
version = "0.9.3"
|
version = "0.10.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "67c10f662eee9c94ddd7135043e544f3c82fa839a1e7b865911331961b53186c"
|
checksum = "85af4ed6ee5a89f26a26086e9089a6643650544c025158449a3626ebf72884b3"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytes",
|
"bytes",
|
||||||
"rand 0.8.5",
|
"rand 0.8.5",
|
||||||
"ring",
|
"ring",
|
||||||
"rustc-hash",
|
"rustc-hash",
|
||||||
"rustls 0.20.8",
|
"rustls 0.21.5",
|
||||||
"rustls-native-certs",
|
"rustls-native-certs",
|
||||||
"slab",
|
"slab",
|
||||||
"thiserror",
|
"thiserror",
|
||||||
"tinyvec",
|
"tinyvec",
|
||||||
"tracing",
|
"tracing",
|
||||||
"webpki 0.22.0",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quinn-udp"
|
name = "quinn-udp"
|
||||||
version = "0.3.2"
|
version = "0.4.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "641538578b21f5e5c8ea733b736895576d0fe329bb883b937db6f4d163dbaaf4"
|
checksum = "6df19e284d93757a9fb91d63672f7741b129246a669db09d1c0063071debc0c0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
|
"bytes",
|
||||||
"libc",
|
"libc",
|
||||||
"quinn-proto",
|
"socket2 0.5.3",
|
||||||
"socket2",
|
|
||||||
"tracing",
|
"tracing",
|
||||||
"windows-sys 0.42.0",
|
"windows-sys 0.48.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -4096,6 +4094,17 @@ dependencies = [
|
||||||
"webpki 0.22.0",
|
"webpki 0.22.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rustls"
|
||||||
|
version = "0.21.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "79ea77c539259495ce8ca47f53e66ae0330a8819f67e23ac96ca02f50e7b7d36"
|
||||||
|
dependencies = [
|
||||||
|
"ring",
|
||||||
|
"rustls-webpki",
|
||||||
|
"sct 0.7.0",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rustls-native-certs"
|
name = "rustls-native-certs"
|
||||||
version = "0.6.1"
|
version = "0.6.1"
|
||||||
|
@ -4126,6 +4135,16 @@ dependencies = [
|
||||||
"base64 0.13.1",
|
"base64 0.13.1",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rustls-webpki"
|
||||||
|
version = "0.101.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "15f36a6828982f422756984e47912a7a51dcbc2a197aa791158f8ca61cd8204e"
|
||||||
|
dependencies = [
|
||||||
|
"ring",
|
||||||
|
"untrusted",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rustversion"
|
name = "rustversion"
|
||||||
version = "1.0.13"
|
version = "1.0.13"
|
||||||
|
@ -4507,6 +4526,16 @@ dependencies = [
|
||||||
"winapi 0.3.9",
|
"winapi 0.3.9",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "socket2"
|
||||||
|
version = "0.5.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877"
|
||||||
|
dependencies = [
|
||||||
|
"libc",
|
||||||
|
"windows-sys 0.48.0",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "soketto"
|
name = "soketto"
|
||||||
version = "0.7.1"
|
version = "0.7.1"
|
||||||
|
@ -5187,7 +5216,7 @@ dependencies = [
|
||||||
"rand 0.7.3",
|
"rand 0.7.3",
|
||||||
"serde",
|
"serde",
|
||||||
"serde_derive",
|
"serde_derive",
|
||||||
"socket2",
|
"socket2 0.4.9",
|
||||||
"solana-logger",
|
"solana-logger",
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-version",
|
"solana-version",
|
||||||
|
@ -5374,9 +5403,8 @@ dependencies = [
|
||||||
"log",
|
"log",
|
||||||
"quinn",
|
"quinn",
|
||||||
"quinn-proto",
|
"quinn-proto",
|
||||||
"quinn-udp",
|
|
||||||
"rcgen",
|
"rcgen",
|
||||||
"rustls 0.20.8",
|
"rustls 0.21.5",
|
||||||
"solana-connection-cache",
|
"solana-connection-cache",
|
||||||
"solana-measure",
|
"solana-measure",
|
||||||
"solana-metrics",
|
"solana-metrics",
|
||||||
|
@ -6140,10 +6168,9 @@ dependencies = [
|
||||||
"pkcs8",
|
"pkcs8",
|
||||||
"quinn",
|
"quinn",
|
||||||
"quinn-proto",
|
"quinn-proto",
|
||||||
"quinn-udp",
|
|
||||||
"rand 0.7.3",
|
"rand 0.7.3",
|
||||||
"rcgen",
|
"rcgen",
|
||||||
"rustls 0.20.8",
|
"rustls 0.21.5",
|
||||||
"solana-metrics",
|
"solana-metrics",
|
||||||
"solana-perf",
|
"solana-perf",
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
|
@ -6269,7 +6296,7 @@ dependencies = [
|
||||||
"rand_chacha 0.2.2",
|
"rand_chacha 0.2.2",
|
||||||
"rayon",
|
"rayon",
|
||||||
"rcgen",
|
"rcgen",
|
||||||
"rustls 0.20.8",
|
"rustls 0.21.5",
|
||||||
"solana-entry",
|
"solana-entry",
|
||||||
"solana-gossip",
|
"solana-gossip",
|
||||||
"solana-ledger",
|
"solana-ledger",
|
||||||
|
@ -6883,7 +6910,7 @@ dependencies = [
|
||||||
"parking_lot 0.12.1",
|
"parking_lot 0.12.1",
|
||||||
"pin-project-lite",
|
"pin-project-lite",
|
||||||
"signal-hook-registry",
|
"signal-hook-registry",
|
||||||
"socket2",
|
"socket2 0.4.9",
|
||||||
"tokio-macros",
|
"tokio-macros",
|
||||||
"windows-sys 0.48.0",
|
"windows-sys 0.48.0",
|
||||||
]
|
]
|
||||||
|
@ -7636,21 +7663,6 @@ dependencies = [
|
||||||
"windows_x86_64_msvc 0.32.0",
|
"windows_x86_64_msvc 0.32.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "windows-sys"
|
|
||||||
version = "0.42.0"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
|
|
||||||
dependencies = [
|
|
||||||
"windows_aarch64_gnullvm 0.42.2",
|
|
||||||
"windows_aarch64_msvc 0.42.2",
|
|
||||||
"windows_i686_gnu 0.42.2",
|
|
||||||
"windows_i686_msvc 0.42.2",
|
|
||||||
"windows_x86_64_gnu 0.42.2",
|
|
||||||
"windows_x86_64_gnullvm 0.42.2",
|
|
||||||
"windows_x86_64_msvc 0.42.2",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows-sys"
|
name = "windows-sys"
|
||||||
version = "0.45.0"
|
version = "0.45.0"
|
||||||
|
|
|
@ -18,7 +18,6 @@ lazy_static = { workspace = true }
|
||||||
log = { workspace = true }
|
log = { workspace = true }
|
||||||
quinn = { workspace = true }
|
quinn = { workspace = true }
|
||||||
quinn-proto = { workspace = true }
|
quinn-proto = { workspace = true }
|
||||||
quinn-udp = { workspace = true }
|
|
||||||
rcgen = { workspace = true }
|
rcgen = { workspace = true }
|
||||||
rustls = { workspace = true, features = ["dangerous_configuration"] }
|
rustls = { workspace = true, features = ["dangerous_configuration"] }
|
||||||
solana-connection-cache = { workspace = true }
|
solana-connection-cache = { workspace = true }
|
||||||
|
|
|
@ -117,7 +117,7 @@ impl QuicLazyInitializedEndpoint {
|
||||||
let mut crypto = rustls::ClientConfig::builder()
|
let mut crypto = rustls::ClientConfig::builder()
|
||||||
.with_safe_defaults()
|
.with_safe_defaults()
|
||||||
.with_custom_certificate_verifier(SkipServerVerification::new())
|
.with_custom_certificate_verifier(SkipServerVerification::new())
|
||||||
.with_single_cert(
|
.with_client_auth_cert(
|
||||||
vec![self.client_certificate.certificate.clone()],
|
vec![self.client_certificate.certificate.clone()],
|
||||||
self.client_certificate.key.clone(),
|
self.client_certificate.key.clone(),
|
||||||
)
|
)
|
||||||
|
@ -203,7 +203,7 @@ impl QuicNewConnection {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn create_endpoint(config: EndpointConfig, client_socket: UdpSocket) -> Endpoint {
|
fn create_endpoint(config: EndpointConfig, client_socket: UdpSocket) -> Endpoint {
|
||||||
quinn::Endpoint::new(config, None, client_socket, TokioRuntime)
|
quinn::Endpoint::new(config, None, client_socket, Arc::new(TokioRuntime))
|
||||||
.expect("QuicNewConnection::create_endpoint quinn::Endpoint::new")
|
.expect("QuicNewConnection::create_endpoint quinn::Endpoint::new")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,6 @@ percentage = { workspace = true }
|
||||||
pkcs8 = { workspace = true, features = ["alloc"] }
|
pkcs8 = { workspace = true, features = ["alloc"] }
|
||||||
quinn = { workspace = true }
|
quinn = { workspace = true }
|
||||||
quinn-proto = { workspace = true }
|
quinn-proto = { workspace = true }
|
||||||
quinn-udp = { workspace = true }
|
|
||||||
rand = { workspace = true }
|
rand = { workspace = true }
|
||||||
rcgen = { workspace = true }
|
rcgen = { workspace = true }
|
||||||
rustls = { workspace = true, features = ["dangerous_configuration"] }
|
rustls = { workspace = true, features = ["dangerous_configuration"] }
|
||||||
|
|
|
@ -98,8 +98,13 @@ pub fn spawn_server(
|
||||||
info!("Start {name} quic server on {sock:?}");
|
info!("Start {name} quic server on {sock:?}");
|
||||||
let (config, _cert) = configure_server(keypair, gossip_host)?;
|
let (config, _cert) = configure_server(keypair, gossip_host)?;
|
||||||
|
|
||||||
let endpoint = Endpoint::new(EndpointConfig::default(), Some(config), sock, TokioRuntime)
|
let endpoint = Endpoint::new(
|
||||||
.map_err(QuicServerError::EndpointFailed)?;
|
EndpointConfig::default(),
|
||||||
|
Some(config),
|
||||||
|
sock,
|
||||||
|
Arc::new(TokioRuntime),
|
||||||
|
)
|
||||||
|
.map_err(QuicServerError::EndpointFailed)?;
|
||||||
let stats = Arc::<StreamStats>::default();
|
let stats = Arc::<StreamStats>::default();
|
||||||
let handle = tokio::spawn(run_server(
|
let handle = tokio::spawn(run_server(
|
||||||
name,
|
name,
|
||||||
|
@ -1132,7 +1137,7 @@ pub mod test {
|
||||||
let mut crypto = rustls::ClientConfig::builder()
|
let mut crypto = rustls::ClientConfig::builder()
|
||||||
.with_safe_defaults()
|
.with_safe_defaults()
|
||||||
.with_custom_certificate_verifier(SkipServerVerification::new())
|
.with_custom_certificate_verifier(SkipServerVerification::new())
|
||||||
.with_single_cert(vec![cert], key)
|
.with_client_auth_cert(vec![cert], key)
|
||||||
.expect("Failed to use client certificate");
|
.expect("Failed to use client certificate");
|
||||||
|
|
||||||
crypto.enable_early_data = true;
|
crypto.enable_early_data = true;
|
||||||
|
@ -1189,9 +1194,13 @@ pub mod test {
|
||||||
client_keypair: Option<&Keypair>,
|
client_keypair: Option<&Keypair>,
|
||||||
) -> Connection {
|
) -> Connection {
|
||||||
let client_socket = UdpSocket::bind("127.0.0.1:0").unwrap();
|
let client_socket = UdpSocket::bind("127.0.0.1:0").unwrap();
|
||||||
let mut endpoint =
|
let mut endpoint = quinn::Endpoint::new(
|
||||||
quinn::Endpoint::new(EndpointConfig::default(), None, client_socket, TokioRuntime)
|
EndpointConfig::default(),
|
||||||
.unwrap();
|
None,
|
||||||
|
client_socket,
|
||||||
|
Arc::new(TokioRuntime),
|
||||||
|
)
|
||||||
|
.unwrap();
|
||||||
let default_keypair = Keypair::new();
|
let default_keypair = Keypair::new();
|
||||||
endpoint.set_default_client_config(get_client_config(
|
endpoint.set_default_client_config(get_client_config(
|
||||||
client_keypair.unwrap_or(&default_keypair),
|
client_keypair.unwrap_or(&default_keypair),
|
||||||
|
@ -1459,9 +1468,13 @@ pub mod test {
|
||||||
let (t, exit, _receiver, server_address, stats) = setup_quic_server(None, 2);
|
let (t, exit, _receiver, server_address, stats) = setup_quic_server(None, 2);
|
||||||
|
|
||||||
let client_socket = UdpSocket::bind("127.0.0.1:0").unwrap();
|
let client_socket = UdpSocket::bind("127.0.0.1:0").unwrap();
|
||||||
let mut endpoint =
|
let mut endpoint = quinn::Endpoint::new(
|
||||||
quinn::Endpoint::new(EndpointConfig::default(), None, client_socket, TokioRuntime)
|
EndpointConfig::default(),
|
||||||
.unwrap();
|
None,
|
||||||
|
client_socket,
|
||||||
|
Arc::new(TokioRuntime),
|
||||||
|
)
|
||||||
|
.unwrap();
|
||||||
let default_keypair = Keypair::new();
|
let default_keypair = Keypair::new();
|
||||||
endpoint.set_default_client_config(get_client_config(&default_keypair));
|
endpoint.set_default_client_config(get_client_config(&default_keypair));
|
||||||
let conn1 = endpoint
|
let conn1 = endpoint
|
||||||
|
|
|
@ -6,7 +6,7 @@ use {
|
||||||
crossbeam_channel::Sender,
|
crossbeam_channel::Sender,
|
||||||
pem::Pem,
|
pem::Pem,
|
||||||
quinn::{Endpoint, IdleTimeout, ServerConfig},
|
quinn::{Endpoint, IdleTimeout, ServerConfig},
|
||||||
rustls::{server::ClientCertVerified, Certificate, DistinguishedNames},
|
rustls::{server::ClientCertVerified, Certificate, DistinguishedName},
|
||||||
solana_perf::packet::PacketBatch,
|
solana_perf::packet::PacketBatch,
|
||||||
solana_sdk::{
|
solana_sdk::{
|
||||||
packet::PACKET_DATA_SIZE,
|
packet::PACKET_DATA_SIZE,
|
||||||
|
@ -37,8 +37,8 @@ impl SkipClientVerification {
|
||||||
}
|
}
|
||||||
|
|
||||||
impl rustls::server::ClientCertVerifier for SkipClientVerification {
|
impl rustls::server::ClientCertVerifier for SkipClientVerification {
|
||||||
fn client_auth_root_subjects(&self) -> Option<DistinguishedNames> {
|
fn client_auth_root_subjects(&self) -> &[DistinguishedName] {
|
||||||
Some(DistinguishedNames::new())
|
&[]
|
||||||
}
|
}
|
||||||
|
|
||||||
fn verify_client_cert(
|
fn verify_client_cert(
|
||||||
|
|
|
@ -32,7 +32,7 @@ use {
|
||||||
};
|
};
|
||||||
|
|
||||||
const CLIENT_CHANNEL_CAPACITY: usize = 1 << 20;
|
const CLIENT_CHANNEL_CAPACITY: usize = 1 << 20;
|
||||||
const INITIAL_MAX_UDP_PAYLOAD_SIZE: u16 = 1280;
|
const INITIAL_MAXIMUM_TRANSMISSION_UNIT: u16 = 1280;
|
||||||
const ALPN_TURBINE_PROTOCOL_ID: &[u8] = b"solana-turbine";
|
const ALPN_TURBINE_PROTOCOL_ID: &[u8] = b"solana-turbine";
|
||||||
const CONNECT_SERVER_NAME: &str = "solana-turbine";
|
const CONNECT_SERVER_NAME: &str = "solana-turbine";
|
||||||
|
|
||||||
|
@ -95,7 +95,7 @@ pub fn new_quic_endpoint(
|
||||||
EndpointConfig::default(),
|
EndpointConfig::default(),
|
||||||
Some(server_config),
|
Some(server_config),
|
||||||
socket,
|
socket,
|
||||||
TokioRuntime,
|
Arc::new(TokioRuntime),
|
||||||
)?
|
)?
|
||||||
};
|
};
|
||||||
endpoint.set_default_client_config(client_config);
|
endpoint.set_default_client_config(client_config);
|
||||||
|
@ -132,7 +132,7 @@ fn new_client_config(cert: Certificate, key: PrivateKey) -> Result<ClientConfig,
|
||||||
let mut config = rustls::ClientConfig::builder()
|
let mut config = rustls::ClientConfig::builder()
|
||||||
.with_safe_defaults()
|
.with_safe_defaults()
|
||||||
.with_custom_certificate_verifier(Arc::new(SkipServerVerification {}))
|
.with_custom_certificate_verifier(Arc::new(SkipServerVerification {}))
|
||||||
.with_single_cert(vec![cert], key)?;
|
.with_client_auth_cert(vec![cert], key)?;
|
||||||
config.enable_early_data = true;
|
config.enable_early_data = true;
|
||||||
config.alpn_protocols = vec![ALPN_TURBINE_PROTOCOL_ID.to_vec()];
|
config.alpn_protocols = vec![ALPN_TURBINE_PROTOCOL_ID.to_vec()];
|
||||||
let mut config = ClientConfig::new(Arc::new(config));
|
let mut config = ClientConfig::new(Arc::new(config));
|
||||||
|
@ -145,7 +145,7 @@ fn new_transport_config() -> TransportConfig {
|
||||||
config
|
config
|
||||||
.max_concurrent_bidi_streams(VarInt::from(0u8))
|
.max_concurrent_bidi_streams(VarInt::from(0u8))
|
||||||
.max_concurrent_uni_streams(VarInt::from(0u8))
|
.max_concurrent_uni_streams(VarInt::from(0u8))
|
||||||
.initial_max_udp_payload_size(INITIAL_MAX_UDP_PAYLOAD_SIZE);
|
.initial_mtu(INITIAL_MAXIMUM_TRANSMISSION_UNIT);
|
||||||
config
|
config
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue