aboutsummaryrefslogtreecommitdiff
path: root/src/router.rs
diff options
context:
space:
mode:
authorFuwn <[email protected]>2023-04-06 07:38:27 +0000
committerFuwn <[email protected]>2023-04-06 07:38:27 +0000
commit50601e3248865f4c4735ea44ae0ebd253be96397 (patch)
treeb3ce54c417a8996e51e6e92c7bbf2c85e4ca7c3d /src/router.rs
parentrefactor(router): simplify context creation (diff)
downloadwindmark-50601e3248865f4c4735ea44ae0ebd253be96397.tar.xz
windmark-50601e3248865f4c4735ea44ae0ebd253be96397.zip
feat(context): bring back peer address
Diffstat (limited to 'src/router.rs')
-rw-r--r--src/router.rs10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/router.rs b/src/router.rs
index 5b674a5..c865fa9 100644
--- a/src/router.rs
+++ b/src/router.rs
@@ -346,6 +346,7 @@ impl Router {
let route = &mut self.routes.at(&fixed_path);
let peer_certificate = stream.ssl().peer_certificate();
let hook_context = HookContext::new(
+ stream.get_ref().peer_addr(),
url.clone(),
route
.as_ref()
@@ -365,8 +366,12 @@ impl Router {
let mut content = if let Ok(ref route) = route {
let footers_length = (*self.footers.lock().unwrap()).len();
- let route_context =
- RouteContext::new(url.clone(), route.params.clone(), peer_certificate);
+ let route_context = RouteContext::new(
+ stream.get_ref().peer_addr(),
+ url.clone(),
+ route.params.clone(),
+ peer_certificate,
+ );
for partial_header in &mut *self.headers.lock().unwrap() {
header
@@ -394,6 +399,7 @@ impl Router {
handler.await
} else {
(*self.error_handler).lock().unwrap()(ErrorContext::new(
+ stream.get_ref().peer_addr(),
url.clone(),
peer_certificate,
))