summaryrefslogtreecommitdiff
path: root/src/modules
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-03-04 23:27:30 +0100
committermetamuffin <metamuffin@disroot.org>2025-03-04 23:27:30 +0100
commit10dba4e7c79e622249cf4539cff3347619e15059 (patch)
tree18851e4100b6b906d99f06b102ad0cd8cde6815f /src/modules
parent322e6b32aa313b99861bd4f03ebed68bcb2fd031 (diff)
downloadgnix-10dba4e7c79e622249cf4539cff3347619e15059.tar
gnix-10dba4e7c79e622249cf4539cff3347619e15059.tar.bz2
gnix-10dba4e7c79e622249cf4539cff3347619e15059.tar.zst
set correct port on forwarded headers
Diffstat (limited to 'src/modules')
-rw-r--r--src/modules/mod.rs1
-rw-r--r--src/modules/proxy.rs2
2 files changed, 2 insertions, 1 deletions
diff --git a/src/modules/mod.rs b/src/modules/mod.rs
index d3e0dd3..61f4b74 100644
--- a/src/modules/mod.rs
+++ b/src/modules/mod.rs
@@ -56,6 +56,7 @@ pub struct NodeContext {
pub state: Arc<State>,
pub addr: SocketAddr,
pub secure: bool,
+ pub listen_addr: SocketAddr,
}
pub trait NodeKind: Send + Sync + 'static {
diff --git a/src/modules/proxy.rs b/src/modules/proxy.rs
index e92b8fc..2fa3538 100644
--- a/src/modules/proxy.rs
+++ b/src/modules/proxy.rs
@@ -54,7 +54,7 @@ impl Node for Proxy {
);
request.headers_mut().insert(
"x-forwarded-port",
- HeaderValue::from_str(&context.addr.port().to_string()).unwrap(),
+ HeaderValue::from_str(&context.listen_addr.port().to_string()).unwrap(),
);
let scheme =
HeaderValue::from_str(if context.secure { "https" } else { "http" }).unwrap();