From b06338ec1d282a762440ad72c935717e404badca Mon Sep 17 00:00:00 2001 From: Hristo Venev Date: Tue, 2 Apr 2019 15:56:06 +0300 Subject: Reorg, sources have names. --- src/config.rs | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'src/config.rs') diff --git a/src/config.rs b/src/config.rs index e8dcb05..6eb3761 100644 --- a/src/config.rs +++ b/src/config.rs @@ -2,8 +2,9 @@ // // See COPYING. -use crate::ip::{Ipv4Set, Ipv6Set}; -use crate::model::Key; +use crate::model::{Ipv4Set, Ipv6Set, Key}; +use std::path::PathBuf; +use std::collections::HashMap; use serde_derive; #[serde(deny_unknown_fields)] @@ -13,6 +14,8 @@ pub struct Source { pub psk: Option, pub ipv4: Ipv4Set, pub ipv6: Ipv6Set, + #[serde(default)] + pub required: bool, } #[serde(deny_unknown_fields)] @@ -20,7 +23,7 @@ pub struct Source { pub struct PeerConfig { #[serde(default = "default_min_keepalive")] pub min_keepalive: u32, - #[serde(default = "default_max_keepalive")] + #[serde(default)] pub max_keepalive: u32, } @@ -35,6 +38,9 @@ pub struct UpdateConfig { #[serde(deny_unknown_fields)] #[derive(serde_derive::Serialize, serde_derive::Deserialize, Clone, Debug)] pub struct Config { + pub cache_directory: Option, + pub runtime_directory: Option, + #[serde(flatten)] pub peer_config: PeerConfig, @@ -42,7 +48,7 @@ pub struct Config { pub update_config: UpdateConfig, #[serde(rename = "source")] - pub sources: Vec, + pub sources: HashMap, } impl PeerConfig { @@ -62,11 +68,6 @@ fn default_min_keepalive() -> u32 { 10 } -#[inline] -fn default_max_keepalive() -> u32 { - 0 -} - #[inline] fn default_refresh_sec() -> u32 { 1200 -- cgit