diff --git a/Cargo.lock b/Cargo.lock index e749dfc..1ee87da 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1010,9 +1010,9 @@ dependencies = [ [[package]] name = "h3-quinn" -version = "0.0.8" +version = "0.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "690cbdc6600db8490412edf5e2bbec0c88f4d4e83f9e0800428b51e6c23372dc" +checksum = "6d482318ae94198fc8e3cbb0b7ba3099c865d744e6ec7c62039ca7b6b6c66fbf" dependencies = [ "bytes", "futures", @@ -2175,7 +2175,7 @@ dependencies = [ "rustls", "rustls-pemfile", "rustls-post-quantum", - "rustls-webpki 0.103.0", + "rustls-webpki", "thiserror 2.0.12", "tokio", "tracing", @@ -2283,16 +2283,16 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.23" +version = "0.23.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47796c98c480fce5406ef69d1c76378375492c3b0a0de587be0c1d9feb12f395" +checksum = "822ee9188ac4ec04a2f0531e55d035fb2de73f18b41a63c70c2712503b6fb13c" dependencies = [ "aws-lc-rs", "log", "once_cell", "ring", "rustls-pki-types", - "rustls-webpki 0.102.8", + "rustls-webpki", "subtle", "zeroize", ] @@ -2366,30 +2366,9 @@ dependencies = [ [[package]] name = "rustls-platform-verifier" -version = "0.4.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4c7dc240fec5517e6c4eab3310438636cfe6391dfc345ba013109909a90d136" -dependencies = [ - "core-foundation 0.9.4", - "core-foundation-sys", - "jni 0.19.0", - "log", - "once_cell", - "rustls", - "rustls-native-certs 0.7.3", - "rustls-platform-verifier-android", - "rustls-webpki 0.102.8", - "security-framework 2.11.1", - "security-framework-sys", - "webpki-root-certs", - "windows-sys 0.52.0", -] - -[[package]] -name = "rustls-platform-verifier" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e012c45844a1790332c9386ed4ca3a06def221092eda277e6f079728f8ea99da" +checksum = "4a5467026f437b4cb2a533865eaa73eb840019a0916f4b9ec563c6e617e086c9" dependencies = [ "core-foundation 0.10.0", "core-foundation-sys", @@ -2399,11 +2378,11 @@ dependencies = [ "rustls", "rustls-native-certs 0.8.1", "rustls-platform-verifier-android", - "rustls-webpki 0.102.8", + "rustls-webpki", "security-framework 3.2.0", "security-framework-sys", "webpki-root-certs", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -2421,18 +2400,6 @@ dependencies = [ "rustls", ] -[[package]] -name = "rustls-webpki" -version = "0.102.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" -dependencies = [ - "aws-lc-rs", - "ring", - "rustls-pki-types", - "untrusted 0.9.0", -] - [[package]] name = "rustls-webpki" version = "0.103.0" diff --git a/README.md b/README.md index 6a918e5..c7a1183 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,9 @@ > **WIP Project** +> [!NOTE] +> This project is an HTTP, i.e., Layer 7, reverse-proxy. If you are looking for a TCP/UDP, i.e., Layer 4, reverse-proxy, please check my another project, [`rpxy-l4`](https://github.com/junkurihara/rust-rpxy-l4). + ## Introduction `rpxy` [ahr-pik-see] is an implementation of simple and lightweight reverse-proxy with some additional features. The implementation is based on [`hyper`](https://github.com/hyperium/hyper), [`rustls`](https://github.com/rustls/rustls) and [`tokio`](https://github.com/tokio-rs/tokio), i.e., written in Rust [^pure_rust]. Our `rpxy` routes multiple host names to appropriate backend application servers while serving TLS connections. diff --git a/rpxy-acme/Cargo.toml b/rpxy-acme/Cargo.toml index 8e6f004..07c3b9f 100644 --- a/rpxy-acme/Cargo.toml +++ b/rpxy-acme/Cargo.toml @@ -24,11 +24,11 @@ aws-lc-rs = { version = "1.12.6", default-features = false, features = [ "aws-lc-sys", ] } blocking = "1.6.1" -rustls = { version = "=0.23.23", default-features = false, features = [ +rustls = { version = "0.23.25", default-features = false, features = [ "std", "aws_lc_rs", ] } -rustls-platform-verifier = { version = "0.5.0" } +rustls-platform-verifier = { version = "0.5.1" } rustls-acme = { path = "../submodules/rustls-acme/", default-features = false, features = [ "aws-lc-rs", ] } diff --git a/rpxy-certs/Cargo.toml b/rpxy-certs/Cargo.toml index e548898..06b7297 100644 --- a/rpxy-certs/Cargo.toml +++ b/rpxy-certs/Cargo.toml @@ -22,7 +22,7 @@ derive_builder = { version = "0.20.2" } thiserror = { version = "2.0.12" } hot_reload = { version = "0.1.8" } async-trait = { version = "0.1.88" } -rustls = { version = "=0.23.23", default-features = false, features = [ +rustls = { version = "0.23.25", default-features = false, features = [ "std", "aws_lc_rs", ] } diff --git a/rpxy-lib/Cargo.toml b/rpxy-lib/Cargo.toml index a4e23be..33b5dcd 100644 --- a/rpxy-lib/Cargo.toml +++ b/rpxy-lib/Cargo.toml @@ -80,7 +80,7 @@ hyper-rustls = { version = "0.27.5", default-features = false, features = [ # tls and cert management for server rpxy-certs = { path = "../rpxy-certs/", default-features = false } hot_reload = "0.1.8" -rustls = { version = "=0.23.23", default-features = false } +rustls = { version = "0.23.25", default-features = false } rustls-post-quantum = { version = "0.2.2", optional = true } tokio-rustls = { version = "0.26.2", features = ["early-data"] } @@ -91,9 +91,9 @@ rpxy-acme = { path = "../rpxy-acme/", default-features = false, optional = true tracing = { version = "0.1.41" } # http/3 -quinn = { version = "0.11.6", optional = true } +quinn = { version = "0.11.7", optional = true } h3 = { version = "0.0.7", features = ["tracing"], optional = true } -h3-quinn = { version = "0.0.8", optional = true } +h3-quinn = { version = "0.0.9", optional = true } s2n-quic = { version = "1.55.0", path = "../submodules/s2n-quic/quic/s2n-quic/", default-features = false, features = [ "provider-tls-rustls", ], optional = true }