1#![no_std]
10#![warn(missing_docs, unreachable_patterns, clippy::useless_conversion, clippy::redundant_clone)]
11
12extern crate fakealloc as alloc;
13
14#[path = "."]
15mod internal {
16 pub(super) mod base;
17 pub(super) mod buffer;
18 pub(super) mod congestion;
19 pub(super) mod rtt;
20 pub(super) mod socket;
21 pub(super) mod state;
22 pub(super) mod uninstantiable;
23}
24
25pub use internal::base::{
26 BufferSizes, ConnectionError, SocketOptions, TcpCounters, TcpCountersInner, TcpState,
27 DEFAULT_FIN_WAIT2_TIMEOUT,
28};
29pub use internal::buffer::{Buffer, BufferLimits, IntoBuffers, ReceiveBuffer, SendBuffer};
30pub use internal::socket::accept_queue::ListenerNotifier;
31pub use internal::socket::isn::IsnGenerator;
32pub use internal::socket::{
33 AcceptError, BindError, BoundInfo, ConnectError, ConnectionInfo, DemuxState,
34 DualStackDemuxIdConverter, DualStackIpExt, Ipv6Options, Ipv6SocketIdToIpv4DemuxIdConverter,
35 ListenError, NoConnection, OriginalDestinationError, SetDeviceError, SetReuseAddrError,
36 SocketAddr, SocketInfo, Sockets, TcpApi, TcpBindingsContext, TcpBindingsTypes, TcpContext,
37 TcpDemuxContext, TcpDualStackContext, TcpIpTransportContext, TcpSocketId, TcpSocketSet,
38 TcpSocketState, TcpTimerId, UnboundInfo, WeakTcpSocketId,
39};
40
41#[cfg(any(test, feature = "testutils"))]
43pub mod testutil {
44 pub use crate::internal::buffer::testutil::{
45 ClientBuffers, ProvidedBuffers, RingBuffer, TestSendBuffer, WriteBackClientBuffers,
46 };
47}