commit 48e69cebab29585684be4bf22282ff1dd4697d24
parent 798a3b6a437fca9b20bdc6fd8d883c978eecd59f
Author: Daniel García <dani-garcia@users.noreply.github.com>
Date: Wed, 18 Jul 2018 14:07:28 +0200
Merge pull request #92 from mprasil/not_found
Return 404 in case the path doesn't match instead of 500
Diffstat:
2 files changed, 14 insertions(+), 9 deletions(-)
diff --git a/Cargo.toml b/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "bitwarden_rs"
-version = "0.10.0"
+version = "0.11.0"
authors = ["Daniel García <dani-garcia@users.noreply.github.com>"]
[dependencies]
diff --git a/src/api/web.rs b/src/api/web.rs
@@ -4,7 +4,7 @@ use std::path::{Path, PathBuf};
use rocket::request::Request;
use rocket::response::{self, NamedFile, Responder};
use rocket::response::content::Content;
-use rocket::http::ContentType;
+use rocket::http::{ContentType, Status};
use rocket::Route;
use rocket_contrib::{Json, Value};
@@ -49,14 +49,19 @@ struct WebHeaders<R>(R);
impl<'r, R: Responder<'r>> Responder<'r> for WebHeaders<R> {
fn respond_to(self, req: &Request) -> response::Result<'r> {
- let mut res = self.0.respond_to(req)?;
+ match self.0.respond_to(req) {
+ Ok(mut res) => {
+ res.set_raw_header("Referrer-Policy", "same-origin");
+ res.set_raw_header("X-Frame-Options", "SAMEORIGIN");
+ res.set_raw_header("X-Content-Type-Options", "nosniff");
+ res.set_raw_header("X-XSS-Protection", "1; mode=block");
- res.set_raw_header("Referrer-Policy", "same-origin");
- res.set_raw_header("X-Frame-Options", "SAMEORIGIN");
- res.set_raw_header("X-Content-Type-Options", "nosniff");
- res.set_raw_header("X-XSS-Protection", "1; mode=block");
-
- Ok(res)
+ Ok(res)
+ },
+ Err(_) => {
+ Err(Status::NotFound)
+ }
+ }
}
}