diff options
author | Quentin <quentin@dufour.io> | 2020-07-04 17:16:21 +0200 |
---|---|---|
committer | Quentin <quentin@dufour.io> | 2020-07-04 17:16:21 +0200 |
commit | 7ec74a21d4b90a2ee9c8f4a7ce90babbebef824a (patch) | |
tree | 1e4284195676f4586cd15cb4d3e1da03a9cd11b6 /src/consul_actor.rs | |
parent | 5dd4544360906de246de9e33abbfd741681d2fea (diff) | |
parent | 4f4b6b048d53f3c4c9cc2437ba6bc6a9e70cb8c7 (diff) | |
download | diplonat-7ec74a21d4b90a2ee9c8f4a7ce90babbebef824a.tar.gz diplonat-7ec74a21d4b90a2ee9c8f4a7ce90babbebef824a.zip |
Merge pull request 'Automatically manage firewall rules (iptables) for services' (#1) from add-firewall-rules into master
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/diplonat/pulls/1
Diffstat (limited to 'src/consul_actor.rs')
-rw-r--r-- | src/consul_actor.rs | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/consul_actor.rs b/src/consul_actor.rs index 1cbb1b8..ba5d704 100644 --- a/src/consul_actor.rs +++ b/src/consul_actor.rs @@ -8,11 +8,12 @@ use serde::{Serialize, Deserialize}; use serde_lexpr::{from_str,error}; use crate::messages; use crate::consul; +use std::collections::HashSet; #[derive(Serialize, Deserialize, Debug)] pub enum DiplonatParameter { - tcp_port(Vec<u16>), - udp_port(Vec<u16>) + tcp_port(HashSet<u16>), + udp_port(HashSet<u16>) } #[derive(Serialize, Deserialize, Debug)] @@ -53,8 +54,8 @@ fn to_parameters(catalog: &consul::CatalogNode) -> Vec<DiplonatConsul> { fn to_open_ports(params: &Vec<DiplonatConsul>) -> messages::PublicExposedPorts { let mut op = messages::PublicExposedPorts { - tcp_ports: Vec::new(), - udp_ports: Vec::new() + tcp_ports: HashSet::new(), + udp_ports: HashSet::new() }; for conf in params { @@ -73,8 +74,8 @@ fn to_open_ports(params: &Vec<DiplonatConsul>) -> messages::PublicExposedPorts { impl ConsulActor { pub fn new(url: &str, node: &str) -> Self { let (tx, rx) = watch::channel(messages::PublicExposedPorts{ - tcp_ports: Vec::new(), - udp_ports: Vec::new() + tcp_ports: HashSet::new(), + udp_ports: HashSet::new() }); return Self { |