vw_small

Hardened fork of Vaultwarden (https://github.com/dani-garcia/vaultwarden) with fewer features.
git clone https://git.philomathiclife.com/repos/vw_small
Log | Files | Refs | README

commit ebb36235a70a2c539a7656454de3478ae776aa22
parent def174a517716967b80d5ecb8407772668bfd631
Author: Daniel GarcĂ­a <dani-garcia@users.noreply.github.com>
Date:   Thu, 30 Jan 2020 22:30:57 +0100

Cache icons in the clients

Diffstat:
Msrc/api/icons.rs | 7++++---
1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/api/icons.rs b/src/api/icons.rs @@ -16,6 +16,7 @@ use soup::prelude::*; use crate::error::Error; use crate::CONFIG; +use crate::util::Cached; pub fn routes() -> Vec<Route> { routes![icon] @@ -53,15 +54,15 @@ fn is_valid_domain(domain: &str) -> bool { } #[get("/<domain>/icon.png")] -fn icon(domain: String) -> Content<Vec<u8>> { +fn icon(domain: String) -> Cached<Content<Vec<u8>>> { let icon_type = ContentType::new("image", "x-icon"); if !is_valid_domain(&domain) { warn!("Invalid domain: {:#?}", domain); - return Content(icon_type, FALLBACK_ICON.to_vec()); + return Cached::long(Content(icon_type, FALLBACK_ICON.to_vec())); } - Content(icon_type, get_icon(&domain)) + Cached::long(Content(icon_type, get_icon(&domain))) } fn check_icon_domain_is_blacklisted(domain: &str) -> bool {