kmc-solid: Implement `{From,Into}Inner<OwnedFd>` for `Socket`

This commit is contained in:
Tomoaki Kawada 2023-08-23 19:06:43 +09:00
parent 6d1e4ddf03
commit 46bc247bd1
1 changed files with 23 additions and 2 deletions

View File

@ -5,10 +5,10 @@ use crate::{
io::{self, BorrowedBuf, BorrowedCursor, ErrorKind, IoSlice, IoSliceMut},
mem,
net::{Shutdown, SocketAddr},
os::solid::io::{AsRawFd, FromRawFd, IntoRawFd, OwnedFd},
os::solid::io::{AsFd, AsRawFd, BorrowedFd, FromRawFd, IntoRawFd, OwnedFd},
ptr, str,
sys_common::net::{getsockopt, setsockopt, sockaddr_to_addr},
sys_common::IntoInner,
sys_common::{FromInner, IntoInner},
time::Duration,
};
@ -392,6 +392,27 @@ impl Socket {
}
}
impl FromInner<OwnedFd> for Socket {
#[inline]
fn from_inner(sock: OwnedFd) -> Socket {
Socket(sock)
}
}
impl IntoInner<OwnedFd> for Socket {
#[inline]
fn into_inner(self) -> OwnedFd {
self.0
}
}
impl AsFd for Socket {
#[inline]
fn as_fd(&self) -> BorrowedFd<'_> {
self.0.as_fd()
}
}
impl AsRawFd for Socket {
#[inline]
fn as_raw_fd(&self) -> c_int {