glisten/tcp

Functions

pub external fn accept(
  socket: ListenSocket,
) -> Result(Socket, SocketReason)
pub external fn accept_timeout(
  socket: ListenSocket,
  timeout: Int,
) -> Result(Socket, SocketReason)
pub external fn close(socket: a) -> Result(Nil, SocketReason)
pub external fn controlling_process(
  socket: Socket,
  pid: Pid,
) -> Result(Nil, Atom)
pub external fn do_shutdown(
  socket: Socket,
  write: Atom,
) -> Result(Nil, SocketReason)
pub fn handshake(socket: Socket) -> Result(Socket, Nil)
pub fn listen(port: Int, options: List(TcpOption)) -> Result(
  ListenSocket,
  SocketReason,
)

Start listening over TCP on a port with the given options

pub external fn negotiated_protocol(socket: Socket) -> a
pub external fn receive(
  socket: Socket,
  length: Int,
) -> Result(BitString, SocketReason)
pub external fn receive_timeout(
  socket: Socket,
  length: Int,
  timeout: Int,
) -> Result(BitString, SocketReason)
pub external fn send(
  socket: Socket,
  packet: BitBuilder,
) -> Result(Nil, SocketReason)
pub fn set_opts(socket: Socket, opts: List(TcpOption)) -> Result(
  Nil,
  Nil,
)

Update the optons for a socket (mutates the socket)

pub fn shutdown(socket: Socket) -> Result(Nil, SocketReason)
pub external fn socket_info(socket: Socket) -> Map(a, b)
Search Document