Struct virtual_net::host::LocalUdpSocket
source · pub struct LocalUdpSocket { /* private fields */ }
Available on crate feature
host-net
only.Trait Implementations§
source§impl Debug for LocalUdpSocket
impl Debug for LocalUdpSocket
source§impl VirtualConnectionlessSocket for LocalUdpSocket
impl VirtualConnectionlessSocket for LocalUdpSocket
source§fn try_send_to(&mut self, data: &[u8], addr: SocketAddr) -> Result<usize>
fn try_send_to(&mut self, data: &[u8], addr: SocketAddr) -> Result<usize>
Sends out a datagram or stream of bytes on this socket
to a specific address
source§fn try_recv_from(
&mut self,
buf: &mut [MaybeUninit<u8>],
) -> Result<(usize, SocketAddr)>
fn try_recv_from( &mut self, buf: &mut [MaybeUninit<u8>], ) -> Result<(usize, SocketAddr)>
Recv a packet from the socket
source§impl VirtualIoSource for LocalUdpSocket
impl VirtualIoSource for LocalUdpSocket
source§fn remove_handler(&mut self)
fn remove_handler(&mut self)
Removes a previously registered waker using a token
source§impl VirtualSocket for LocalUdpSocket
impl VirtualSocket for LocalUdpSocket
source§fn set_ttl(&mut self, ttl: u32) -> Result<()>
fn set_ttl(&mut self, ttl: u32) -> Result<()>
Sets how many network hops the packets are permitted for new connections
source§fn ttl(&self) -> Result<u32>
fn ttl(&self) -> Result<u32>
Returns the maximum number of network hops before packets are dropped
source§fn addr_local(&self) -> Result<SocketAddr>
fn addr_local(&self) -> Result<SocketAddr>
Returns the local address for this socket
source§fn status(&self) -> Result<SocketStatus>
fn status(&self) -> Result<SocketStatus>
Returns the status/state of the socket
source§fn set_handler(
&mut self,
handler: Box<dyn InterestHandler + Send + Sync>,
) -> Result<()>
fn set_handler( &mut self, handler: Box<dyn InterestHandler + Send + Sync>, ) -> Result<()>
Registers a waker for when this connection is ready to receive
more data. Uses a stack machine which means more than one waker
can be registered
source§impl VirtualUdpSocket for LocalUdpSocket
impl VirtualUdpSocket for LocalUdpSocket
source§fn set_broadcast(&mut self, broadcast: bool) -> Result<()>
fn set_broadcast(&mut self, broadcast: bool) -> Result<()>
Sets a flag that means that the UDP socket is able
to receive and process broadcast packets.
source§fn broadcast(&self) -> Result<bool>
fn broadcast(&self) -> Result<bool>
Indicates if the SO_BROADCAST flag is set which means
that the UDP socket will receive and process broadcast
packets
source§fn set_multicast_loop_v4(&mut self, val: bool) -> Result<()>
fn set_multicast_loop_v4(&mut self, val: bool) -> Result<()>
Sets a flag that indicates if multicast packets that
this socket is a member of will be looped back to
the sending socket. This applies to IPv4 addresses
source§fn multicast_loop_v4(&self) -> Result<bool>
fn multicast_loop_v4(&self) -> Result<bool>
Gets a flag that indicates if multicast packets that
this socket is a member of will be looped back to
the sending socket. This applies to IPv4 addresses
source§fn set_multicast_loop_v6(&mut self, val: bool) -> Result<()>
fn set_multicast_loop_v6(&mut self, val: bool) -> Result<()>
Sets a flag that indicates if multicast packets that
this socket is a member of will be looped back to
the sending socket. This applies to IPv6 addresses
source§fn multicast_loop_v6(&self) -> Result<bool>
fn multicast_loop_v6(&self) -> Result<bool>
Gets a flag that indicates if multicast packets that
this socket is a member of will be looped back to
the sending socket. This applies to IPv6 addresses
source§fn set_multicast_ttl_v4(&mut self, ttl: u32) -> Result<()>
fn set_multicast_ttl_v4(&mut self, ttl: u32) -> Result<()>
Sets the TTL for IPv4 multicast packets which is the
number of network hops before the packet is dropped
source§fn multicast_ttl_v4(&self) -> Result<u32>
fn multicast_ttl_v4(&self) -> Result<u32>
Gets the TTL for IPv4 multicast packets which is the
number of network hops before the packet is dropped
source§fn join_multicast_v4(
&mut self,
multiaddr: Ipv4Addr,
iface: Ipv4Addr,
) -> Result<()>
fn join_multicast_v4( &mut self, multiaddr: Ipv4Addr, iface: Ipv4Addr, ) -> Result<()>
Tells this interface that it will subscribe to a
particular multicast address. This applies to IPv4 addresses
source§fn leave_multicast_v4(
&mut self,
multiaddr: Ipv4Addr,
iface: Ipv4Addr,
) -> Result<()>
fn leave_multicast_v4( &mut self, multiaddr: Ipv4Addr, iface: Ipv4Addr, ) -> Result<()>
Tells this interface that it will unsubscribe to a
particular multicast address. This applies to IPv4 addresses
source§fn join_multicast_v6(&mut self, multiaddr: Ipv6Addr, iface: u32) -> Result<()>
fn join_multicast_v6(&mut self, multiaddr: Ipv6Addr, iface: u32) -> Result<()>
Tells this interface that it will subscribe to a
particular multicast address. This applies to IPv6 addresses
Auto Trait Implementations§
impl !Freeze for LocalUdpSocket
impl RefUnwindSafe for LocalUdpSocket
impl Send for LocalUdpSocket
impl Sync for LocalUdpSocket
impl Unpin for LocalUdpSocket
impl UnwindSafe for LocalUdpSocket
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more