use crate::{DEFAULT_QUIC_PORT, DEFAULT_TCP_PORT};
#[derive(Clone, Debug)]
pub enum Protocol {
Quic,
Tcp,
}
#[derive(Debug, Clone)]
pub enum Role {
Worker,
Manager,
}
#[derive(Clone, Debug)]
pub struct WorkerConfig {
pub host: String,
pub quic_port: u16,
pub tcp_port: u16,
pub protocol: Option<Protocol>,
pub token: String,
pub fingerprint: String,
pub cert: Vec<u8>,
pub role: Role,
}
impl Default for WorkerConfig {
fn default() -> Self {
Self {
host: "127.0.0.1".into(),
quic_port: DEFAULT_QUIC_PORT,
tcp_port: DEFAULT_TCP_PORT,
protocol: None,
token: String::new(),
fingerprint: String::new(),
cert: Vec::new(),
role: Role::Worker,
}
}
}