//! WASI-specific networking functionality #![unstable(feature = "wasi_ext", issue = "71213")] use crate::io; use crate::net; use crate::sys_common::AsInner; /// WASI-specific extensions to [`std::net::TcpListener`]. /// /// [`std::net::TcpListener`]: crate::net::TcpListener pub trait TcpListenerExt { /// Accept a socket. /// /// This corresponds to the `sock_accept` syscall. fn sock_accept(&self, flags: u16) -> io::Result; } impl TcpListenerExt for net::TcpListener { fn sock_accept(&self, flags: u16) -> io::Result { self.as_inner().as_inner().as_inner().sock_accept(flags) } }