summaryrefslogtreecommitdiffstats
path: root/src/wireguard/router/device.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/wireguard/router/device.rs')
-rw-r--r--src/wireguard/router/device.rs14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/wireguard/router/device.rs b/src/wireguard/router/device.rs
index b3f1787..04b2045 100644
--- a/src/wireguard/router/device.rs
+++ b/src/wireguard/router/device.rs
@@ -147,6 +147,12 @@ impl<E: Endpoint, C: Callbacks, T: tun::Writer, B: bind::Writer<E>> Device<E, C,
/// - msg: IP packet to crypt-key route
///
pub fn send(&self, msg: Vec<u8>) -> Result<(), RouterError> {
+ debug_assert!(msg.len() > SIZE_MESSAGE_PREFIX);
+ log::trace!(
+ "Router, outbound packet = {}",
+ hex::encode(&msg[SIZE_MESSAGE_PREFIX..])
+ );
+
// ignore header prefix (for in-place transport message construction)
let packet = &msg[SIZE_MESSAGE_PREFIX..];
@@ -182,12 +188,20 @@ impl<E: Endpoint, C: Callbacks, T: tun::Writer, B: bind::Writer<E>> Device<E, C,
return Err(RouterError::MalformedTransportMessage);
}
};
+
let header: LayoutVerified<&[u8], TransportHeader> = header;
+
debug_assert!(
header.f_type.get() == TYPE_TRANSPORT as u32,
"this should be checked by the message type multiplexer"
);
+ log::trace!(
+ "Router, handle transport message: (receiver = {}, counter = {})",
+ header.f_receiver,
+ header.f_counter
+ );
+
// lookup peer based on receiver id
let dec = self.state.recv.read();
let dec = dec