← Back

Module udp

struct UdpOptions

UDP socket options

Source: udp.joule:8

fn default() -> Self

Source: udp.joule:20

struct UdpSocket

UDP socket for connectionless communication

Source: udp.joule:35

fn bind<A: ToSocketAddrs>(addr: A) -> Result<Self, UdpError>

Source: udp.joule:45

fn bind_with_options<A: ToSocketAddrs>(

Source: udp.joule:51

fn bind_addr(addr: &SocketAddr, options: &UdpOptions) -> Result<Self, UdpError>

Source: udp.joule:67

fn socket(domain: i32, sock_type: i32, protocol: i32) -> i32;

Source: udp.joule:69

fn bind(fd: i32, addr: *const u8, len: u32) -> i32;

Source: udp.joule:70

fn connect<A: ToSocketAddrs>(&mut self, addr: A) -> Result<(), UdpError>

Source: udp.joule:125

fn connect(fd: i32, addr: *const u8, len: u32) -> i32;

Source: udp.joule:127

fn send(&self, buf: &[u8]) -> Result<usize, UdpError>

Source: udp.joule:147

fn send(fd: i32, buf: *const u8, len: usize, flags: i32) -> isize;

Source: udp.joule:153

fn recv(&self, buf: &mut [u8]) -> Result<usize, UdpError>

Source: udp.joule:166

fn recv(fd: i32, buf: *mut u8, len: usize, flags: i32) -> isize;

Source: udp.joule:172

fn send_to<A: ToSocketAddrs>(&self, buf: &[u8], addr: A) -> Result<usize, UdpError>

Source: udp.joule:185

fn sendto(

Source: udp.joule:187

fn recv_from(&self, buf: &mut [u8]) -> Result<(usize, SocketAddr), UdpError>

Source: udp.joule:215

fn recvfrom(

Source: udp.joule:217

fn peek(&self, buf: &mut [u8]) -> Result<usize, UdpError>

Source: udp.joule:251

fn recv(fd: i32, buf: *mut u8, len: usize, flags: i32) -> isize;

Source: udp.joule:253

fn peek_from(&self, buf: &mut [u8]) -> Result<(usize, SocketAddr), UdpError>

Source: udp.joule:266

fn recvfrom(

Source: udp.joule:268

fn local_addr(&self) -> &SocketAddr

Get local address

Source: udp.joule:301

fn peer_addr(&self) -> Option<&SocketAddr>

Get connected peer address

Source: udp.joule:306

fn set_broadcast(&mut self, broadcast: bool) -> Result<(), UdpError>

Source: udp.joule:312

fn set_ttl(&mut self, ttl: u32) -> Result<(), UdpError>

Source: udp.joule:320

fn join_multicast_v4(&self, multiaddr: &[u8; 4], interface: &[u8; 4]) -> Result<(), UdpError>

Source: udp.joule:328

struct IpMreq

Source: udp.joule:330

fn setsockopt(fd: i32, level: i32, opt: i32, val: *const u8, len: u32) -> i32;

Source: udp.joule:336

fn leave_multicast_v4(&self, multiaddr: &[u8; 4], interface: &[u8; 4]) -> Result<(), UdpError>

Source: udp.joule:363

struct IpMreq

Source: udp.joule:365

fn setsockopt(fd: i32, level: i32, opt: i32, val: *const u8, len: u32) -> i32;

Source: udp.joule:371

fn set_multicast_ttl(&mut self, ttl: u32) -> Result<(), UdpError>

Source: udp.joule:398

fn set_multicast_loop(&mut self, loop_back: bool) -> Result<(), UdpError>

Source: udp.joule:406

fn set_nonblocking(&self, nonblocking: bool) -> Result<(), UdpError>

Set non-blocking mode

Source: udp.joule:413

fn set_read_timeout(&mut self, timeout: Option<Duration>) -> Result<(), UdpError>

Set read timeout

Source: udp.joule:418

fn set_write_timeout(&mut self, timeout: Option<Duration>) -> Result<(), UdpError>

Set write timeout

Source: udp.joule:426

fn as_raw_fd(&self) -> i32

Get underlying file descriptor

Source: udp.joule:434

fn try_clone(&self) -> Result<Self, UdpError>

Try to clone the socket

Source: udp.joule:439

fn drop(&mut self)

Source: udp.joule:457

enum UdpError

Source: udp.joule:468

fn from(e: std::io::Error) -> Self

Source: udp.joule:483

fn set_socket_opt(fd: i32, level: i32, opt: i32, value: i32) -> Result<(), UdpError>

Source: udp.joule:492

fn setsockopt(fd: i32, level: i32, opt: i32, val: *const i32, len: u32) -> i32;

Source: udp.joule:494

fn set_socket_timeout(fd: i32, opt: i32, dur: Duration) -> Result<(), UdpError>

Source: udp.joule:505

fn setsockopt(fd: i32, level: i32, opt: i32, val: *const u8, len: u32) -> i32;

Source: udp.joule:507

struct Timeval

Source: udp.joule:511

fn set_nonblocking(fd: i32, nonblocking: bool) -> Result<(), UdpError>

Source: udp.joule:538

fn fcntl(fd: i32, cmd: i32, arg: i32) -> i32;

Source: udp.joule:540

fn get_local_addr(fd: i32) -> Result<SocketAddr, UdpError>

Source: udp.joule:562

fn getsockname(fd: i32, addr: *mut u8, len: *mut u32) -> i32;

Source: udp.joule:564