~int80h/gemserv

0afdf8075f0a4c42777e465037fca56de00f8478 — int 80h a month ago c7677ce v0.4.9
Changed hostname check to be case insensitive
3 files changed, 11 insertions(+), 6 deletions(-)

M Cargo.lock
M Cargo.toml
M src/main.rs
M Cargo.lock => Cargo.lock +1 -1
@@ 140,7 140,7 @@ dependencies = [

[[package]]
name = "gemserv"
version = "0.4.8"
version = "0.4.9"
dependencies = [
 "futures-util",
 "log",

M Cargo.toml => Cargo.toml +1 -1
@@ 1,6 1,6 @@
[package]
name = "gemserv"
version = "0.4.8"
version = "0.4.9"
authors = ["int 80h <int@80h.dev>"]
edition = "2018"
description = "A gemini server"

M src/main.rs => src/main.rs +9 -4
@@ 204,10 204,15 @@ async fn get_request(mut con: conn::Connection) -> Result<(conn::Connection, url
        }
    };

    if Some(con.srv.server.hostname.as_str()) != url.host_str() {
        logger::logger(con.peer_addr, Status::ProxyRequestRefused, &url.as_str());
        con.send_status(Status::ProxyRequestRefused, None).await.map_err(|e| e.to_string())?;
        return Err("Wrong host".to_string());
    match url.host_str() {
        Some(h) => {
            if con.srv.server.hostname.as_str() != h.to_lowercase() {
                logger::logger(con.peer_addr, Status::ProxyRequestRefused, &url.as_str());
                con.send_status(Status::ProxyRequestRefused, None).await.map_err(|e| e.to_string())?;
                return Err("Wrong host".to_string());
            }
        },
        None => {}
    }

    match url.port() {