diff options
author | Jake McGinty <me@jake.su> | 2018-05-08 23:23:28 -0700 |
---|---|---|
committer | Jake McGinty <me@jake.su> | 2018-05-08 23:23:28 -0700 |
commit | 1a22671046a79685f72a1e47b082abbf2aa2811a (patch) | |
tree | 2996b36f6d092ea45a407fd238451c0c2a274501 /src/interface/mod.rs | |
parent | tests: simulate stale session recovery (dropped keepalive packet) (diff) | |
download | wireguard-rs-1a22671046a79685f72a1e47b082abbf2aa2811a.tar.xz wireguard-rs-1a22671046a79685f72a1e47b082abbf2aa2811a.zip |
timers: hold weak references to peer in timer messages
Diffstat (limited to 'src/interface/mod.rs')
-rw-r--r-- | src/interface/mod.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/interface/mod.rs b/src/interface/mod.rs index 8d939f6..21984ce 100644 --- a/src/interface/mod.rs +++ b/src/interface/mod.rs @@ -9,7 +9,7 @@ use router::Router; use failure::{Error, err_msg}; use peer::Peer; use std::io; -use std::rc::Rc; +use std::rc::{Rc, Weak}; use std::cell::RefCell; use std::collections::HashMap; use types::{InterfaceInfo}; @@ -27,6 +27,7 @@ pub fn trace_packet(header: &str, packet: &[u8]) { } pub type SharedPeer = Rc<RefCell<Peer>>; +pub type WeakSharedPeer = Weak<RefCell<Peer>>; pub type SharedState = Rc<RefCell<State>>; #[derive(Default)] |