Module sys/unix

sys/unix

Unix domain socket operations.

Provides Unix domain socket wrappers around the low-level C runtime externs. Reuses the socket ops (bind/listen/accept/connect/send/recv/close) from the generic socket externs. Uses sockaddr_un helpers to build address buffers.

Types

UnixAddr struct
UnixAddr

Fields

NameTypeDescription
bufOption(*(u8))
lenu32

Functions

socket_stream function
fn() -> IOFuture

Returns: IOFuture

socket_dgram function
fn() -> IOFuture

Returns: IOFuture

bind function
fn(sockfd : i32, addr : *(u8), addrlen : u32) -> IOFuture

Parameters

NameTypeNotes
sockfdi32
addr*(u8)
addrlenu32

Returns: IOFuture

listen function
fn(sockfd : i32, backlog : i32) -> IOFuture

Parameters

NameTypeNotes
sockfdi32
backlogi32

Returns: IOFuture

accept function
fn(sockfd : i32, addr : *(u8), addrlen : *(u32)) -> IOFuture

Parameters

NameTypeNotes
sockfdi32
addr*(u8)
addrlen*(u32)

Returns: IOFuture

connect function
fn(sockfd : i32, addr : *(u8), addrlen : u32) -> IOFuture

Parameters

NameTypeNotes
sockfdi32
addr*(u8)
addrlenu32

Returns: IOFuture

send function
fn(sockfd : i32, buf : *(u8), len : usize, flags : i32) -> IOFuture

Parameters

NameTypeNotes
sockfdi32
buf*(u8)
lenusize
flagsi32

Returns: IOFuture

recv function
fn(sockfd : i32, buf : *(u8), len : usize, flags : i32) -> IOFuture

Parameters

NameTypeNotes
sockfdi32
buf*(u8)
lenusize
flagsi32

Returns: IOFuture

close function
fn(fd : i32) -> IOFuture

Parameters

NameTypeNotes
fdi32

Returns: IOFuture

make_sockaddr_un function
fn(path : *(u8)) -> UnixAddr

Parameters

NameTypeNotes
path*(u8)

Returns: UnixAddr

get_path function
fn(addr_buf : *(u8)) -> *(u8)

Parameters

NameTypeNotes
addr_buf*(u8)

Returns: *(u8)

free_addr function
fn(addr : UnixAddr) -> unit

Parameters

NameTypeNotes
addrUnixAddr

Returns: unit