Re-exportsยง
use std::cell::Cell;๐use std::cell::RefCell;๐use std::cell::RefMut;๐use std::io::Read;๐use std::io::Write;๐use std::net::Ipv4Addr;๐use std::net::Ipv6Addr;๐use std::net::Shutdown;๐use std::net::SocketAddr;๐use std::net::SocketAddrV4;๐use std::net::SocketAddrV6;๐use std::sync::atomic::AtomicBool;๐use std::time::Duration;๐use std::io;๐use std::mem;๐use mio::event::Source;๐use mio::net::TcpListener;๐use mio::net::TcpStream;๐use rustc_const_eval::interpret::InterpResult;๐use rustc_const_eval::interpret::interp_ok;๐use rustc_middle::throw_unsup_format;๐use rustc_target::spec::Os;๐use crate::shims::files::EvalContextExt as _;๐use crate::shims::files::FdNum;๐use crate::shims::files::FileDescription;๐use crate::shims::files::FileDescriptionRef;๐use crate::shims::unix::UnixFileDescription;๐use crate::shims::unix::socket::EvalContextExt;๐use crate::shims::unix::socket::UnixSocketFileDescription;๐use crate::*;๐
Structsยง
- TcpSocket ๐
Enumsยง
- Socket
State ๐
Constantsยง
- INITIAL_
TCP_ ๐SOCKET_ READINESS - On Linux a TCP socket is initally in the TCP_CLOSE state: See https://github.com/torvalds/linux/blob/cee9395/net/core/sock.c#L3753 For a socket in this state, (E)POLLHUP is reported: See https://github.com/torvalds/linux/blob/980a813/net/ipv4/tcp.c#L581-L582 Additionally, because the write buffer is initially empty and the socket is not shut down, (E)POLLOUT is also reported for freshly created TCP sockets: See https://github.com/torvalds/linux/blob/980a813/net/ipv4/tcp.c#L602
Traitsยง
- Eval
Context ๐Priv Ext