mirror of
https://github.com/YGGverse/nexy.git
synced 2026-03-31 09:15:28 +00:00
dump resolved path info
This commit is contained in:
parent
32291dd630
commit
819a522268
3 changed files with 10 additions and 7 deletions
|
|
@ -1,20 +1,21 @@
|
|||
/// Internal server response types
|
||||
pub enum Response<'a> {
|
||||
AccessDenied {
|
||||
path: std::path::PathBuf,
|
||||
query: &'a str,
|
||||
},
|
||||
InternalServerError {
|
||||
query: Option<&'a str>,
|
||||
error: String,
|
||||
query: Option<&'a str>,
|
||||
},
|
||||
NotFound {
|
||||
query: &'a str,
|
||||
error: String,
|
||||
query: &'a str,
|
||||
},
|
||||
File(&'a [u8]),
|
||||
Directory {
|
||||
query: &'a str,
|
||||
data: String,
|
||||
is_root: bool,
|
||||
query: &'a str,
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -141,10 +141,12 @@ impl Connection {
|
|||
);
|
||||
self.session.template.internal_server_error()
|
||||
}
|
||||
Response::AccessDenied { query } => {
|
||||
Response::AccessDenied { query, path } => {
|
||||
eprintln!(
|
||||
"[{}] < [{}] access to `{query}` denied.",
|
||||
self.address.server, self.address.client
|
||||
"[{}] < [{}] access to `{query}` denied (resolved path: `{}`).",
|
||||
self.address.server,
|
||||
self.address.client,
|
||||
path.to_string_lossy()
|
||||
);
|
||||
self.session.template.access_denied()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ impl Public {
|
|||
match p.canonicalize() {
|
||||
Ok(c) => {
|
||||
if !c.starts_with(&self.public_dir) {
|
||||
return callback(Response::AccessDenied { query });
|
||||
return callback(Response::AccessDenied { query, path: c });
|
||||
}
|
||||
c
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue