wip: tested with synthetic echo response from h3

This commit is contained in:
Jun Kurihara 2023-11-24 22:23:57 +09:00
commit 1dc88ce056
No known key found for this signature in database
GPG key ID: 48ADFD173ED22B03
11 changed files with 732 additions and 37 deletions

View file

@ -1,6 +1,6 @@
[package]
name = "rpxy-lib"
version = "0.6.2"
version = "0.7.0"
authors = ["Jun Kurihara"]
homepage = "https://github.com/junkurihara/rust-rpxy"
repository = "https://github.com/junkurihara/rust-rpxy"
@ -12,17 +12,23 @@ publish = false
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[features]
default = ["http3-s2n", "sticky-cookie", "cache"]
default = ["http3-quinn", "sticky-cookie", "cache"]
http3-quinn = ["socket2", "quinn", "h3", "h3-quinn"]
http3-s2n = ["h3", "s2n-quic", "s2n-quic-rustls", "s2n-quic-h3"]
http3-s2n = [
"h3",
"s2n-quic",
"s2n-quic-core",
"s2n-quic-rustls",
"s2n-quic-h3",
]
sticky-cookie = ["base64", "sha2", "chrono"]
cache = [] #"http-cache-semantics", "lru"]
native-roots = [] #"hyper-rustls/native-tokio"]
cache = [] #"http-cache-semantics", "lru"]
native-roots = [] #"hyper-rustls/native-tokio"]
[dependencies]
rand = "0.8.5"
rustc-hash = "1.1.0"
# bytes = "1.5.0"
bytes = "1.5.0"
derive_builder = "0.12.0"
futures = { version = "0.3.29", features = ["alloc", "async-await"] }
tokio = { version = "1.34.0", default-features = false, features = [
@ -41,7 +47,7 @@ thiserror = "1.0.50"
# http
http = "1.0.0"
# http-body-util = "0.1.0"
http-body-util = "0.1.0"
hyper = { version = "1.0.1", default-features = false }
hyper-util = { version = "0.1.1", features = ["full"] }
# hyper-rustls = { version = "0.24.2", default-features = false, features = [
@ -50,11 +56,11 @@ hyper-util = { version = "0.1.1", features = ["full"] }
# "http1",
# "http2",
# ] }
# tokio-rustls = { version = "0.24.1", features = ["early-data"] }
# tls and cert management
hot_reload = "0.1.4"
rustls = { version = "0.21.9", default-features = false }
tokio-rustls = { version = "0.24.1", features = ["early-data"] }
webpki = "0.22.4"
x509-parser = "0.15.1"
@ -68,6 +74,7 @@ h3-quinn = { path = "../submodules/h3/h3-quinn/", optional = true }
s2n-quic = { version = "1.31.0", default-features = false, features = [
"provider-tls-rustls",
], optional = true }
s2n-quic-core = { version = "0.31.0", default-features = false, optional = true }
s2n-quic-h3 = { path = "../submodules/s2n-quic-h3/", optional = true }
s2n-quic-rustls = { version = "0.31.0", optional = true }
# for UDP socket wit SO_REUSEADDR when h3 with quinn