diff --git a/Cargo.lock b/Cargo.lock index 4a8d375..35c8481 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -369,9 +369,9 @@ dependencies = [ [[package]] name = "filetime" -version = "0.2.14" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d34cfa13a63ae058bfa601fe9e313bbdb3746427c1459185464ce0fcf62e1e8" +checksum = "975ccf83d8d9d0d84682850a38c8169027be83368805971cc4f238c2b245bc98" dependencies = [ "cfg-if 1.0.0", "libc", diff --git a/src/main.rs b/src/main.rs index c13ceca..5ebe7e0 100644 --- a/src/main.rs +++ b/src/main.rs @@ -2,15 +2,14 @@ extern crate clap; #[macro_use] extern crate rocket; -/* -#[macro_use] -extern crate rocket_dyn_templates; - */ use colored::*; use rocket::fairing::{Fairing, Info, Kind}; +use rocket::http::Status; +use rocket::response::status; use rocket::{config::TlsConfig, fs::NamedFile}; use rocket_dyn_templates::Template; +use std::collections::HashMap; use std::net::IpAddr; use std::path::Path; use std::str::FromStr; @@ -31,35 +30,20 @@ struct IndexContext<'r> { } #[catch(404)] -fn not_found() {} - -struct Index {} - -#[rocket::async_trait] -impl Fairing for Index { - fn info(&self) -> Info { - Info { - name: "Index", - kind: Kind::Response, - } - } - async fn on_response<'r>( - &self, - request: &'r rocket::Request<'_>, - response: &mut rocket::Response<'r>, - ) { - if response.status().code != 404 - || !Path::new( - &(std::env::var("ROOT").unwrap().to_string() + request.uri().path().as_str()), - ) - .is_dir() - { - return; - } - response.set_status(rocket::http::Status::Ok); - let str = "Hello,World!"; - response.set_sized_body(str.len(), std::io::Cursor::new(str)); +fn not_found(request: &rocket::Request) -> status::Custom