From 027d3d24d97e80af8b46c82b9de6786aa126b5b9 Mon Sep 17 00:00:00 2001 From: Mathias Hall-Andersen Date: Sat, 2 Nov 2019 21:58:04 +0100 Subject: Work on configuration interface --- src/wireguard/timers.rs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/wireguard/timers.rs') diff --git a/src/wireguard/timers.rs b/src/wireguard/timers.rs index 485f466..22a0ff1 100644 --- a/src/wireguard/timers.rs +++ b/src/wireguard/timers.rs @@ -124,14 +124,28 @@ impl PeerInner { self.timers_any_authenticated_packet_sent(); } + + pub fn set_persistent_keepalive_interval(&self, interval: usize) { + self.timers().send_persistent_keepalive.stop(); + self.keepalive.store(interval, Ordering::SeqCst); + if interval > 0 { + self.timers() + .send_persistent_keepalive + .start(Duration::from_secs(interval as u64)); + } + } + fn packet_send_queued_handshake_initiation(&self, is_retry: bool) { if !is_retry { self.timers().handshake_attempts.store(0, Ordering::SeqCst); } self.packet_send_handshake_initiation(); } + + } + impl Timers { pub fn new(runner: &Runner, peer: Peer) -> Timers where -- cgit v1.2.3-59-g8ed1b