Log and drop send errors instead of forwarding them, which tears down the connection

This commit is contained in:
Ruediger Klaehn
2026-03-05 11:18:47 +02:00
parent 87bc101847
commit e9ecada0f0
+8 -1
View File
@@ -1458,7 +1458,14 @@ impl State {
self.buffered_transmit = Some(t);
return Ok(false);
}
Poll::Ready(Err(e)) => return Err(e),
Poll::Ready(Err(e)) => {
// Treat send errors as dropped packets rather than
// killing the connection. UDP is unreliable by nature,
// and transient errors (e.g. ENOMEM on embedded lwIP)
// should not terminate a QUIC connection. If the socket
// is truly dead, QUIC idle timeout will clean up.
tracing::debug!("UDP send error (packet dropped): {e}");
}
Poll::Ready(Ok(())) => {}
}