Skip to main content

mesquitte_core/server/
config.rs

1use std::{net::SocketAddr, path::PathBuf};
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Clone, Debug, Deserialize, Serialize)]
6pub struct ServerConfig {
7    pub addr: SocketAddr,
8    pub tls: Option<TlsConfig>,
9}
10
11impl ServerConfig {
12    pub fn new(addr: SocketAddr, tls: Option<TlsConfig>) -> Self {
13        Self { addr, tls }
14    }
15}
16
17#[derive(Clone, Debug, Deserialize, Serialize)]
18pub struct TlsConfig {
19    pub ca_file: Option<PathBuf>,
20    pub cert_file: PathBuf,
21    pub key_file: PathBuf,
22    pub fail_if_no_peer_cert: bool,
23}