Skip to main content

base_scheduler/
socket_type.rs

1// Released under the MIT License.
2// Copyright, 2026, by Samuel Williams.
3
4/// The transport semantics requested when opening a socket.
5#[derive(Clone, Copy, Debug, Eq, PartialEq)]
6pub enum SocketType {
7    /// A byte stream, normally TCP.
8    Stream,
9    /// Datagrams, normally UDP. Connected datagram reads and writes preserve message boundaries; message/address APIs remain separate extensions.
10    Datagram,
11    /// Raw IP packets. Opening these sockets may require privileges.
12    Raw,
13    /// A platform-native socket type, preserved by resolution and forwarded unchanged to socket creation. Native values are not portable between operating systems.
14    Other(i32),
15}