network: performance improvements across NAT stack

This commit is contained in:
Alex Zenla
2024-02-11 11:53:59 +00:00
parent b9dadc6f37
commit f96f9d8abf
6 changed files with 140 additions and 56 deletions

View File

@ -25,9 +25,13 @@ pub struct ProxyUdpHandler {
#[async_trait]
impl NatHandler for ProxyUdpHandler {
async fn receive(&self, data: &[u8]) -> Result<()> {
self.rx_sender.try_send(data.to_vec())?;
Ok(())
async fn receive(&self, data: &[u8]) -> Result<bool> {
if self.rx_sender.is_closed() {
Ok(true)
} else {
self.rx_sender.try_send(data.to_vec())?;
Ok(true)
}
}
}