diff --git a/src/iface/interface/mod.rs b/src/iface/interface/mod.rs index 8b6fce4a7..1c0fcae85 100644 --- a/src/iface/interface/mod.rs +++ b/src/iface/interface/mod.rs @@ -460,9 +460,11 @@ impl Interface { } // Process egress. - match self.poll_egress(timestamp, device, sockets) { - PollResult::None => {} - PollResult::SocketStateChanged => res = PollResult::SocketStateChanged, + loop { + match self.poll_egress(timestamp, device, sockets) { + PollResult::None => break, + PollResult::SocketStateChanged => res = PollResult::SocketStateChanged, + } } res