aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTeddy Wing2020-06-27 20:07:07 +0200
committerTeddy Wing2020-06-27 20:07:07 +0200
commitb8ac72f1fb4b6e3e0575e212bf6138e20bd9bdff (patch)
tree994b99aed4651636e60c9770451d631841287ab0 /src
parent5fd74d9b6356a3feebd6c1bff134e2f411c7c1dd (diff)
downloadfastcgi-conduit-b8ac72f1fb4b6e3e0575e212bf6138e20bd9bdff.tar.bz2
FastCgiRequest: Add HTTP host
Diffstat (limited to 'src')
-rw-r--r--src/lib.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/lib.rs b/src/lib.rs
index 16cfd02..d237bab 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -30,6 +30,7 @@ pub type RequestResult<T, E = RequestError> = std::result::Result<T, E>;
struct FastCgiRequest<'a> {
request: &'a fastcgi::Request,
http_version: conduit::Version,
+ host: String,
method: conduit::Method,
headers: conduit::HeaderMap,
}
@@ -44,6 +45,7 @@ impl<'a> FastCgiRequest<'a> {
let r = Self {
request: request,
http_version: Self::version(&request),
+ host: Self::host(&request),
method: method,
headers: headers,
};
@@ -61,6 +63,10 @@ impl<'a> FastCgiRequest<'a> {
}
}
+ fn host(request: &'a fastcgi::Request) -> String {
+ request.param("HTTP_HOST").unwrap_or_default()
+ }
+
fn version(request: &'a fastcgi::Request) -> conduit::Version {
match request.param("SERVER_PROTOCOL").unwrap_or_default().as_str() {
"HTTP/0.9" => conduit::Version::HTTP_09,