aboutsummaryrefslogtreecommitdiffstats
path: root/src/interface/mod.rs
diff options
context:
space:
mode:
authorJake McGinty <me@jake.su>2018-05-29 02:15:58 -0500
committerJake McGinty <me@jake.su>2018-05-29 02:15:58 -0500
commit07522599f50003a00988ff5fd322b2a056845c7a (patch)
treeeb320c6d82e2b164e398d9b14c05a51b20008ba6 /src/interface/mod.rs
parentnoise: rebase snow on latest master, start removing wonk (diff)
downloadwireguard-rs-07522599f50003a00988ff5fd322b2a056845c7a.tar.xz
wireguard-rs-07522599f50003a00988ff5fd322b2a056845c7a.zip
config: follow WG_TUN_NAME_FILE style in wg-quick
Diffstat (limited to 'src/interface/mod.rs')
-rw-r--r--src/interface/mod.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/interface/mod.rs b/src/interface/mod.rs
index d40061a..c45e70f 100644
--- a/src/interface/mod.rs
+++ b/src/interface/mod.rs
@@ -98,9 +98,12 @@ impl Interface {
let (utun_tx, utun_rx) = unsync::mpsc::unbounded::<Vec<u8>>();
- let peer_server = PeerServer::new(core.handle(), self.state.clone(), utun_tx.clone())?;
- let config_server = ConfigurationService::new(&self.name, &self.state, peer_server.tx(), &core.handle())?.map_err(|_|());
- let utun_stream = UtunStream::connect(&self.name, &core.handle())?.framed(VecUtunCodec{});
+ let peer_server = PeerServer::new(core.handle(), self.state.clone(), utun_tx.clone())?;
+ let utun_stream = UtunStream::connect(&self.name, &core.handle())?;
+ let interface_name = utun_stream.name()?;
+ let utun_stream = utun_stream.framed(VecUtunCodec{});
+ let config_server = ConfigurationService::new(&interface_name, &self.state, peer_server.tx(), &core.handle())?.map_err(|_|());
+ self.name = interface_name;
let (utun_writer, utun_reader) = utun_stream.split();