use anyhow::Result; use log::LevelFilter; use kochab::{Request, Response, Server}; #[tokio::main] async fn main() -> Result<()> { env_logger::builder() .filter_module("kochab", LevelFilter::Debug) .init(); Server::new() .add_route("/", handle_request) .serve_ip("localhost:1965") .await } async fn handle_request(request: Request) -> Result { if let Some(fingerprint) = request.fingerprint() { let message = format!( "You connected with a certificate with a fingerprint of:\n{}", fingerprint, ); Ok(Response::success_plain(message)) } else { // The user didn't provide a certificate Ok(Response::client_certificate_required("You didn't provide a client certificate")) } }