dump resolved path info

This commit is contained in:
yggverse 2025-07-04 11:30:08 +03:00
parent 32291dd630
commit 819a522268
3 changed files with 10 additions and 7 deletions

View file

@ -1,20 +1,21 @@
/// Internal server response types /// Internal server response types
pub enum Response<'a> { pub enum Response<'a> {
AccessDenied { AccessDenied {
path: std::path::PathBuf,
query: &'a str, query: &'a str,
}, },
InternalServerError { InternalServerError {
query: Option<&'a str>,
error: String, error: String,
query: Option<&'a str>,
}, },
NotFound { NotFound {
query: &'a str,
error: String, error: String,
query: &'a str,
}, },
File(&'a [u8]), File(&'a [u8]),
Directory { Directory {
query: &'a str,
data: String, data: String,
is_root: bool, is_root: bool,
query: &'a str,
}, },
} }

View file

@ -141,10 +141,12 @@ impl Connection {
); );
self.session.template.internal_server_error() self.session.template.internal_server_error()
} }
Response::AccessDenied { query } => { Response::AccessDenied { query, path } => {
eprintln!( eprintln!(
"[{}] < [{}] access to `{query}` denied.", "[{}] < [{}] access to `{query}` denied (resolved path: `{}`).",
self.address.server, self.address.client self.address.server,
self.address.client,
path.to_string_lossy()
); );
self.session.template.access_denied() self.session.template.access_denied()
} }

View file

@ -50,7 +50,7 @@ impl Public {
match p.canonicalize() { match p.canonicalize() {
Ok(c) => { Ok(c) => {
if !c.starts_with(&self.public_dir) { if !c.starts_with(&self.public_dir) {
return callback(Response::AccessDenied { query }); return callback(Response::AccessDenied { query, path: c });
} }
c c
} }