fix server field policy

This commit is contained in:
Jun Kurihara 2022-07-10 12:32:32 +09:00
commit 3a417886d6
No known key found for this signature in database
GPG key ID: 48ADFD173ED22B03
3 changed files with 19 additions and 8 deletions

View file

@ -16,7 +16,6 @@ pub(super) fn apply_upstream_options_to_header(
upstream: &Upstream,
) -> Result<()> {
for opt in upstream.opts.iter() {
println!("{:?}", opt);
match opt {
UpstreamOption::OverrideHost => {
// overwrite HOST value with upstream hostname (like 192.168.xx.x seen from rpxy)
@ -75,6 +74,23 @@ pub(super) fn add_header_entry_if_not_exist(
Ok(())
}
pub(super) fn overwrite_header_entry(
headers: &mut HeaderMap,
key: &str,
value: &str,
) -> Result<()> {
match headers.entry(HeaderName::from_bytes(key.as_bytes())?) {
header::Entry::Vacant(entry) => {
entry.insert(value.parse::<HeaderValue>()?);
}
header::Entry::Occupied(mut entry) => {
entry.insert(HeaderValue::from_bytes(value.as_bytes())?);
}
}
Ok(())
}
pub(super) fn add_forwarding_header(
headers: &mut HeaderMap,
client_addr: &SocketAddr,