From 6206a462224d2d25b4bdb26df37d89bd9363487d Mon Sep 17 00:00:00 2001 From: Sergio Benitez Date: Tue, 8 Jun 2021 17:51:39 -0700 Subject: [PATCH] Try to preserve header casing in HTTP/1.1. Unfortunately, this doesn't actually do anything at the moment due to what appears to be a bug in hyper. --- core/http/Cargo.toml | 2 +- core/lib/src/server.rs | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/core/http/Cargo.toml b/core/http/Cargo.toml index 35cdd9ef..080b70fb 100644 --- a/core/http/Cargo.toml +++ b/core/http/Cargo.toml @@ -43,7 +43,7 @@ cookie = { version = "0.15", features = ["percent-encode"] } state = "0.5.1" [dependencies.hyper] -version = "0.14.5" +version = "0.14.9" default-features = false features = ["http1", "http2", "runtime", "server", "stream"] diff --git a/core/lib/src/server.rs b/core/lib/src/server.rs index 3578f310..f1c8f3ef 100644 --- a/core/lib/src/server.rs +++ b/core/lib/src/server.rs @@ -421,6 +421,7 @@ impl Rocket { let listener = CancellableListener::new(shutdown.clone(), listener, grace, mercy); let server = hyper::Server::builder(Incoming::new(listener)) .http1_keepalive(http1_keepalive) + .http1_preserve_header_case(true) .http2_keep_alive_interval(http2_keep_alive) .serve(hyper::make_service_fn(service_fn)) .with_graceful_shutdown(shutdown.clone())