Struct cap_std::net::UdpSocket[][src]

pub struct UdpSocket { /* fields omitted */ }

A UDP socket.

This corresponds to std::net::UdpSocket.

Note that this UdpSocket has no bind, connect, or send_to methods. To create a UdpSocket bound to an address or to send a message to an address, you must first obtain a Catalog permitting the address, and then call Catalog::bind_udp_socket, or Catalog::connect_udp_socket, or Catalog::send_to_udp_socket_addr.

Implementations

impl UdpSocket[src]

pub unsafe fn from_std(std: UdpSocket) -> Self[src]

Constructs a new instance of Self from the given std::net::UdpSocket.

Safety

std::net::UdpSocket is not sandboxed and may access any address that the host process has access to.

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

Receives a single datagram message on the socket.

This corresponds to std::net::UdpSocket::recv_from.

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

Receives a single datagram message on the socket, without removing it from the queue.

This corresponds to std::net::UdpSocket::peek_from.

pub fn peer_addr(&self) -> Result<SocketAddr>[src]

Returns the socket address of the remote peer this socket was connected to.

This corresponds to std::net::UdpSocket::peer_addr.

pub fn local_addr(&self) -> Result<SocketAddr>[src]

Returns the socket address that this socket was created from.

This corresponds to std::net::UdpSocket::local_addr.

pub fn try_clone(&self) -> Result<Self>[src]

Creates a new independently owned handle to the underlying socket.

This corresponds to std::net::UdpSocket::try_clone.

pub fn set_read_timeout(&self, dur: Option<Duration>) -> Result<()>[src]

Sets the read timeout to the timeout specified.

This corresponds to std::net::UdpSocket::set_read_timeout.

pub fn set_write_timeout(&self, dur: Option<Duration>) -> Result<()>[src]

Sets the write timeout to the timeout specified.

This corresponds to std::net::UdpSocket::set_write_timeout.

pub fn read_timeout(&self) -> Result<Option<Duration>>[src]

Returns the read timeout of this socket.

This corresponds to std::net::UdpSocket::read_timeout.

pub fn write_timeout(&self) -> Result<Option<Duration>>[src]

Returns the write timeout of this socket.

This corresponds to std::net::UdpSocket::write_timeout.

pub fn set_broadcast(&self, broadcast: bool) -> Result<()>[src]

Sets the value of the SO_BROADCAST option for this socket.

This corresponds to std::net::UdpSocket::set_broadcast.

pub fn broadcast(&self) -> Result<bool>[src]

Gets the value of the SO_BROADCAST option for this socket.

This corresponds to std::net::UdpSocket::broadcast.

pub fn set_multicast_loop_v4(&self, multicast_loop_v4: bool) -> Result<()>[src]

Sets the value of the IP_MULTICAST_LOOP option for this socket.

This corresponds to std::net::UdpSocket::set_multicast_loop_v4.

pub fn multicast_loop_v4(&self) -> Result<bool>[src]

Gets the value of the IP_MULTICAST_LOOP option for this socket.

This corresponds to std::net::UdpSocket::multicast_loop_v4.

pub fn set_multicast_ttl_v4(&self, multicast_ttl_v4: u32) -> Result<()>[src]

Sets the value of the IP_MULTICAST_TTL option for this socket.

This corresponds to std::net::UdpSocket::set_multicast_ttl_v4.

pub fn multicast_ttl_v4(&self) -> Result<u32>[src]

Gets the value of the IP_MULTICAST_TTL option for this socket.

This corresponds to std::net::UdpSocket::multicast_ttl_v4.

pub fn set_multicast_loop_v6(&self, multicast_loop_v6: bool) -> Result<()>[src]

Sets the value of the IPV6_MULTICAST_LOOP option for this socket.

This corresponds to std::net::UdpSocket::set_multicast_loop_v6.

pub fn multicast_loop_v6(&self) -> Result<bool>[src]

Gets the value of the IPV6_MULTICAST_LOOP option for this socket.

This corresponds to std::net::UdpSocket::multicast_loop_v6.

pub fn set_ttl(&self, ttl: u32) -> Result<()>[src]

Sets the value for the IP_TTL option on this socket.

This corresponds to std::net::UdpSocket::set_ttl.

pub fn ttl(&self) -> Result<u32>[src]

Gets the value of the IP_TTL option for this socket.

This corresponds to std::net::UdpSocket::ttl.

pub fn join_multicast_v4(
    &self,
    multiaddr: &Ipv4Addr,
    interface: &Ipv4Addr
) -> Result<()>
[src]

Executes an operation of the IP_ADD_MEMBERSHIP type.

This corresponds to std::net::UdpSocket::join_multicast_v4.

pub fn join_multicast_v6(
    &self,
    multiaddr: &Ipv6Addr,
    interface: u32
) -> Result<()>
[src]

Executes an operation of the IPV6_ADD_MEMBERSHIP type.

This corresponds to std::net::UdpSocket::join_multicast_v6.

pub fn leave_multicast_v4(
    &self,
    multiaddr: &Ipv4Addr,
    interface: &Ipv4Addr
) -> Result<()>
[src]

Executes an operation of the IP_DROP_MEMBERSHIP type.

This corresponds to std::net::UdpSocket::leave_multicast_v4.

pub fn leave_multicast_v6(
    &self,
    multiaddr: &Ipv6Addr,
    interface: u32
) -> Result<()>
[src]

Executes an operation of the IPV6_DROP_MEMBERSHIP type.

This corresponds to std::net::UdpSocket::leave_multicast_v6.

pub fn take_error(&self) -> Result<Option<Error>>[src]

Gets the value of the SO_ERROR option on this socket.

This corresponds to std::net::UdpSocket::take_error.

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

Sends data on the socket to the remote address to which it is connected.

This corresponds to std::net::UdpSocket::send.

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

Receives a single datagram message on the socket from the remote address to which it is connected.

This corresponds to std::net::UdpSocket::recv.

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

Receives single datagram on the socket from the remote address to which it is connected, without removing the message from input queue.

This corresponds to std::net::UdpSocket::peek.

pub fn set_nonblocking(&self, nonblocking: bool) -> Result<()>[src]

Moves this UDP socket into or out of nonblocking mode.

This corresponds to std::net::UdpSocket::set_nonblocking.

Trait Implementations

impl AsRawFd for UdpSocket[src]

impl FromRawFd for UdpSocket[src]

impl IntoRawFd for UdpSocket[src]

impl OwnsRaw for UdpSocket[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> AsUnsafeFile for T where
    T: OwnsRaw + AsRawFd
[src]

impl<T> AsUnsafeHandle for T where
    T: OwnsRaw + AsRawFd
[src]

impl<T> AsUnsafeSocket for T where
    T: OwnsRaw + AsRawFd
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> FromUnsafeFile for T where
    T: OwnsRaw + FromRawFd
[src]

impl<T> FromUnsafeSocket for T where
    T: OwnsRaw + FromRawFd
[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> IntoUnsafeFile for T where
    T: OwnsRaw + IntoRawFd
[src]

impl<T> IntoUnsafeHandle for T where
    T: OwnsRaw + IntoRawFd
[src]

impl<T> IntoUnsafeSocket for T where
    T: OwnsRaw + IntoRawFd
[src]

impl<T> SetTimes for T where
    T: AsRawFd

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.