aboutsummaryrefslogtreecommitdiffstats
path: root/src/wireguard/types/dummy.rs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/wireguard/types/dummy.rs54
1 files changed, 35 insertions, 19 deletions
diff --git a/src/wireguard/types/dummy.rs b/src/wireguard/types/dummy.rs
index 2403c9b..384f123 100644
--- a/src/wireguard/types/dummy.rs
+++ b/src/wireguard/types/dummy.rs
@@ -2,11 +2,11 @@ use std::error::Error;
use std::fmt;
use std::marker;
use std::net::SocketAddr;
+use std::sync::atomic::{AtomicUsize, Ordering};
use std::sync::mpsc::{sync_channel, Receiver, SyncSender};
use std::sync::Arc;
use std::sync::Mutex;
use std::time::Instant;
-use std::sync::atomic::{Ordering, AtomicUsize};
use super::*;
@@ -43,7 +43,7 @@ impl fmt::Display for BindError {
#[derive(Debug)]
pub enum TunError {
- Disconnected
+ Disconnected,
}
impl Error for TunError {
@@ -76,7 +76,7 @@ impl Endpoint for UnitEndpoint {
"127.0.0.1:8080".parse().unwrap()
}
- fn clear_src(&self) {}
+ fn clear_src(&mut self) {}
}
impl UnitEndpoint {
@@ -92,21 +92,21 @@ pub struct TunTest {}
pub struct TunFakeIO {
store: bool,
tx: SyncSender<Vec<u8>>,
- rx: Receiver<Vec<u8>>
+ rx: Receiver<Vec<u8>>,
}
pub struct TunReader {
- rx: Receiver<Vec<u8>>
+ rx: Receiver<Vec<u8>>,
}
pub struct TunWriter {
store: bool,
- tx: Mutex<SyncSender<Vec<u8>>>
+ tx: Mutex<SyncSender<Vec<u8>>>,
}
#[derive(Clone)]
pub struct TunMTU {
- mtu: Arc<AtomicUsize>
+ mtu: Arc<AtomicUsize>,
}
impl tun::Reader for TunReader {
@@ -118,7 +118,7 @@ impl tun::Reader for TunReader {
buf[offset..].copy_from_slice(&m[..]);
Ok(m.len())
}
- Err(_) => Err(TunError::Disconnected)
+ Err(_) => Err(TunError::Disconnected),
}
}
}
@@ -131,7 +131,7 @@ impl tun::Writer for TunWriter {
let m = src.to_owned();
match self.tx.lock().unwrap().send(m) {
Ok(_) => Ok(()),
- Err(_) => Err(TunError::Disconnected)
+ Err(_) => Err(TunError::Disconnected),
}
} else {
Ok(())
@@ -153,7 +153,7 @@ impl tun::Tun for TunTest {
}
impl TunFakeIO {
- pub fn write(&self, msg : Vec<u8>) {
+ pub fn write(&self, msg: Vec<u8>) {
if self.store {
self.tx.send(msg).unwrap();
}
@@ -165,15 +165,31 @@ impl TunFakeIO {
}
impl TunTest {
- pub fn create(mtu : usize, store: bool) -> (TunFakeIO, TunReader, TunWriter, TunMTU) {
-
- let (tx1, rx1) = if store { sync_channel(32) } else { sync_channel(1) };
- let (tx2, rx2) = if store { sync_channel(32) } else { sync_channel(1) };
-
- let fake = TunFakeIO{tx: tx1, rx: rx2, store};
- let reader = TunReader{rx : rx1};
- let writer = TunWriter{tx : Mutex::new(tx2), store};
- let mtu = TunMTU{mtu : Arc::new(AtomicUsize::new(mtu))};
+ pub fn create(mtu: usize, store: bool) -> (TunFakeIO, TunReader, TunWriter, TunMTU) {
+ let (tx1, rx1) = if store {
+ sync_channel(32)
+ } else {
+ sync_channel(1)
+ };
+ let (tx2, rx2) = if store {
+ sync_channel(32)
+ } else {
+ sync_channel(1)
+ };
+
+ let fake = TunFakeIO {
+ tx: tx1,
+ rx: rx2,
+ store,
+ };
+ let reader = TunReader { rx: rx1 };
+ let writer = TunWriter {
+ tx: Mutex::new(tx2),
+ store,
+ };
+ let mtu = TunMTU {
+ mtu: Arc::new(AtomicUsize::new(mtu)),
+ };
(fake, reader, writer, mtu)
}