aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJake McGinty <me@jake.su>2018-04-24 22:16:06 -0700
committerJake McGinty <me@jake.su>2018-04-24 22:16:06 -0700
commit3ab45fe1e23912a8732142c14db088c7f982c279 (patch)
tree0d85b6ca1c46dfd56d39cdd3359dd77aecbfb2e3
parenttimer: use tokio-timer 0.2 and make timers cancelable (diff)
downloadwireguard-rs-3ab45fe1e23912a8732142c14db088c7f982c279.tar.xz
wireguard-rs-3ab45fe1e23912a8732142c14db088c7f982c279.zip
udp: clean up debug output
-rw-r--r--src/udp/mod.rs22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/udp/mod.rs b/src/udp/mod.rs
index e332a33..55fae54 100644
--- a/src/udp/mod.rs
+++ b/src/udp/mod.rs
@@ -169,17 +169,20 @@ impl UdpSocket {
}
let cmsgs = match *target {
- Endpoint::V4(addr, Some(ref pktinfo)) => vec![ControlMessage::Ipv4PacketInfo(pktinfo)],
- Endpoint::V6(addr, Some(ref pktinfo)) => vec![ControlMessage::Ipv6PacketInfo(pktinfo)],
- _ => vec![]
+ Endpoint::V4(addr, Some(ref pktinfo)) => {
+ trace!("sending cmsg: {:?}", pktinfo);
+ vec![ControlMessage::Ipv4PacketInfo(pktinfo)]
+ },
+ Endpoint::V6(addr, Some(ref pktinfo)) => {
+ trace!("sending cmsg: {:?}", pktinfo);
+ vec![ControlMessage::Ipv6PacketInfo(pktinfo)]
+ },
+ _ => {
+ trace!("not sending any pktinfo");
+ vec![]
+ }
};
- match *target {
- Endpoint::V4(addr, Some(ref pktinfo)) => trace!("sending cmsg: {:?}", pktinfo),
- Endpoint::V6(addr, Some(ref pktinfo)) => trace!("sending cmsg: {:?}", pktinfo),
- _ => trace!("not sending any pktinfo")
- }
-
let res = sendmsg(io.get_ref().as_raw_fd(),
&[IoVec::from_slice(buf)],
&cmsgs,
@@ -195,6 +198,7 @@ impl UdpSocket {
Err(nix::Error::Sys(Errno::EINVAL)) => {
if !is_retry {
// TODO: bubble up that the existing Endpoint pktinfo is now invalid.
+ debug!("EINVAL received after sendmsg, resending without pktinfo");
self.sendmsg(buf, &target.to_cleared_pktinfo(), true)
} else {
Err(io::Error::last_os_error())