From 938b29d418a9df2f93ee273a394f34adc99ea25d Mon Sep 17 00:00:00 2001 From: hozan23 Date: Sat, 18 Nov 2023 13:36:19 +0300 Subject: net: improve Conn API --- net/src/transports/unix.rs | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'net/src/transports/unix.rs') diff --git a/net/src/transports/unix.rs b/net/src/transports/unix.rs index c89832e..1a32311 100644 --- a/net/src/transports/unix.rs +++ b/net/src/transports/unix.rs @@ -6,7 +6,7 @@ use smol::{ net::unix::{UnixListener, UnixStream}, }; -use crate::{connection::Connection, endpoint::Endpoint, listener::Listener, Result}; +use crate::{connection::Connection, endpoint::Endpoint, listener::Listener, Error, Result}; /// Unix domain socket implementations of the `Connection` trait. pub struct UnixConn { @@ -37,14 +37,17 @@ impl Connection for UnixConn { Ok(Endpoint::new_unix_addr(&self.inner.local_addr()?)) } - async fn recv(&self, buf: &mut [u8]) -> Result { - self.read.lock().await.read_exact(buf).await?; - Ok(buf.len()) + async fn read(&self, buf: &mut [u8]) -> Result { + self.read.lock().await.read(buf).await.map_err(Error::from) } - async fn send(&self, buf: &[u8]) -> Result { - self.write.lock().await.write_all(buf).await?; - Ok(buf.len()) + async fn write(&self, buf: &[u8]) -> Result { + self.write + .lock() + .await + .write(buf) + .await + .map_err(Error::from) } } -- cgit v1.2.3