aboutsummaryrefslogtreecommitdiffstats
path: root/src/wireguard/wireguard.rs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/wireguard/wireguard.rs (renamed from src/wireguard.rs)27
1 files changed, 15 insertions, 12 deletions
diff --git a/src/wireguard.rs b/src/wireguard/wireguard.rs
index f14a053..7a22280 100644
--- a/src/wireguard.rs
+++ b/src/wireguard/wireguard.rs
@@ -1,13 +1,12 @@
-use crate::constants::*;
-use crate::handshake;
-use crate::router;
-use crate::timers::{Events, Timers};
+use super::constants::*;
+use super::handshake;
+use super::router;
+use super::timers::{Events, Timers};
-use crate::types::bind::Reader as BindReader;
-use crate::types::bind::{Bind, Writer};
-use crate::types::tun::{Reader, Tun, MTU};
-
-use crate::types::Endpoint;
+use super::types::bind::Reader as BindReader;
+use super::types::bind::{Bind, Writer};
+use super::types::tun::{Reader, Tun, MTU};
+use super::types::Endpoint;
use hjul::Runner;
@@ -372,9 +371,13 @@ impl<T: Tun, B: Bind> Wireguard<T, B> {
msg.resize(size, 0);
// read a new IP packet
- let payload = reader
- .read(&mut msg[..], router::SIZE_MESSAGE_PREFIX)
- .unwrap();
+ let payload = match reader.read(&mut msg[..], router::SIZE_MESSAGE_PREFIX) {
+ Ok(payload) => payload,
+ Err(e) => {
+ debug!("TUN worker, failed to read from tun device: {}", e);
+ return;
+ }
+ };
debug!("TUN worker, IP packet of {} bytes (MTU = {})", payload, mtu);
// truncate padding