Implement the skeleton for the ServerManager and the spawn of the connection_ids

This commit is contained in:
2024-02-19 14:22:11 +01:00
parent f8feb9db81
commit 37cc133d7f
11 changed files with 699 additions and 1618 deletions

View File

@@ -9,3 +9,4 @@ edition = "2021"
tokio-rustls = "0.25.0"
rustls-pemfile = "2.0.0"
serde = { version = "1.0", features = ["derive"] }
uuid = { version = "1.7.0", features = ["serde"] }

View File

@@ -2,6 +2,7 @@ use std::io::{BufReader, Error, ErrorKind};
use rustls_pemfile::{read_one, Item};
use serde::{Deserialize, Serialize};
use tokio_rustls::rustls::pki_types::{CertificateDer, PrivatePkcs8KeyDer};
use uuid::Uuid;
pub fn load_cert(filename: &str) -> std::io::Result<CertificateDer> {
let cert_file = std::fs::File::open(filename).unwrap();
@@ -60,7 +61,7 @@ pub enum YouAreValues {
#[derive(Debug, Serialize, Deserialize)]
pub enum ToServerMessageBody {
Required { id: String },
Request { conn_id: Uuid },
}
#[derive(Debug, Serialize, Deserialize)]
@@ -74,8 +75,8 @@ pub enum ToServerMessage {
#[derive(Debug, Serialize, Deserialize)]
pub enum FromServerReplyBody {
RequiredAccepted,
RequiredFailed,
RequestAccepted,
RequestFailed,
Pong,
}
@@ -113,3 +114,17 @@ impl ToGuestServerMessage {
}
}
}
// Client things
#[derive(Debug, Serialize, Deserialize)]
pub enum FromClientCommand {
RequestServer { name: String },
ServerList,
}
#[derive(Debug, Serialize, Deserialize)]
pub enum ToClientResponse {
OkRequest { conn_id: Uuid },
OkServerList { data: Vec<String> },
GenericError,
}