Bump version. linting. improved logging.

This commit is contained in:
AB
2024-07-09 02:48:50 +03:00
parent 8991a0579b
commit 86f30b90e8
5 changed files with 11 additions and 11 deletions

2
Cargo.lock generated
View File

@ -1053,7 +1053,7 @@ dependencies = [
[[package]]
name = "khm"
version = "0.1.0"
version = "0.2.0"
dependencies = [
"actix-web",
"chrono",

View File

@ -1,6 +1,6 @@
[package]
name = "khm"
version = "0.1.0"
version = "0.2.0"
edition = "2021"
authors = ["AB <ab@hexor.cy>"]

View File

@ -1,9 +1,9 @@
use log::{error, info};
use reqwest::Client;
use serde::{Deserialize, Serialize};
use std::fs::File;
use std::io::{self, BufRead, Write};
use std::path::Path;
use log::{info, error};
#[derive(Serialize, Deserialize, Clone, Debug)]
struct SshKey {
@ -26,7 +26,7 @@ fn read_known_hosts(file_path: &str) -> io::Result<Vec<SshKey>> {
let public_key = parts[1..].join(" ");
keys.push(SshKey { server, public_key });
}
},
}
Err(e) => {
error!("Error reading line from known_hosts file: {}", e);
}

View File

@ -3,7 +3,7 @@ mod server;
use clap::Parser;
use env_logger;
use log::{info, error};
use log::{error, info};
/// This application manages SSH keys and flows, either as a server or client.
/// In server mode, it stores keys and flows in a PostgreSQL database.
@ -114,7 +114,6 @@ async fn main() -> std::io::Result<()> {
let args = Args::parse();
if args.server {
info!("Running in server mode");
if let Err(e) = server::run_server(args).await {

View File

@ -1,5 +1,5 @@
use actix_web::{web, App, HttpResponse, HttpServer, Responder};
use log::{info, error};
use log::{error, info};
use regex::Regex;
use serde::{Deserialize, Serialize};
use std::collections::HashMap;
@ -23,7 +23,8 @@ pub type Flows = Arc<Mutex<Vec<Flow>>>;
pub fn is_valid_ssh_key(key: &str) -> bool {
let rsa_re = Regex::new(r"^ssh-rsa AAAA[0-9A-Za-z+/]+[=]{0,3}( .+)?$").unwrap();
let dsa_re = Regex::new(r"^ssh-dss AAAA[0-9A-Za-z+/]+[=]{0,3}( .+)?$").unwrap();
let ecdsa_re = Regex::new(r"^ecdsa-sha2-nistp(256|384|521) AAAA[0-9A-Za-z+/]+[=]{0,3}( .+)?$").unwrap();
let ecdsa_re =
Regex::new(r"^ecdsa-sha2-nistp(256|384|521) AAAA[0-9A-Za-z+/]+[=]{0,3}( .+)?$").unwrap();
let ed25519_re = Regex::new(r"^ssh-ed25519 AAAA[0-9A-Za-z+/]+[=]{0,3}( .+)?$").unwrap();
rsa_re.is_match(key)
@ -246,7 +247,7 @@ pub async fn run_server(args: crate::Args) -> std::io::Result<()> {
.route("/{flow_id}/keys", web::get().to(get_keys))
.route("/{flow_id}/keys", web::post().to(add_keys))
})
.bind((args.ip.as_str(), args.port))?
.run()
.await
.bind((args.ip.as_str(), args.port))?
.run()
.await
}