pub struct Device { /* private fields */ }
Expand description
Implementations§
Source§impl Device
impl Device
Sourcepub fn bring_up(&self) -> Result<()>
pub fn bring_up(&self) -> Result<()>
Brings the device up which makes it ready to send and receive packets.
Sourcepub fn bring_down(&self) -> Result<()>
pub fn bring_down(&self) -> Result<()>
Brings the device down which makes it unable to send and receive packets.
Sourcepub fn set_netmask(&self, netmask: Ipv4Addr) -> Result<()>
pub fn set_netmask(&self, netmask: Ipv4Addr) -> Result<()>
Sets the netmask of the device.
Sourcepub fn get_netmask(&self) -> Result<Ipv4Addr>
pub fn get_netmask(&self) -> Result<Ipv4Addr>
Sets the netmask of the device.
Sourcepub fn set_ipv6_addr(&self, addr: Ipv6Addr) -> Result<()>
pub fn set_ipv6_addr(&self, addr: Ipv6Addr) -> Result<()>
Adds the specified addr
to the list of IPv6 addresses of the interface.
Sourcepub fn get_ipv6_addrs(&self) -> Result<Vec<Ipv6Addr>>
pub fn get_ipv6_addrs(&self) -> Result<Vec<Ipv6Addr>>
Returns the list of IPv6 addresses of the interface.
Sourcepub fn del_ipv6_addr(&self, addr: Ipv6Addr) -> Result<()>
pub fn del_ipv6_addr(&self, addr: Ipv6Addr) -> Result<()>
Deletes the specified IPv6 address from the interface.
Sourcepub fn set_brd_addr(&self, addr: Ipv4Addr) -> Result<()>
pub fn set_brd_addr(&self, addr: Ipv4Addr) -> Result<()>
Sets the broadcast IPv4 address of the device.
Sourcepub fn get_brd_addr(&self) -> Result<Ipv4Addr>
pub fn get_brd_addr(&self) -> Result<Ipv4Addr>
Returns the broadcast IPv4 address of the device.
Sourcepub fn set_dst_addr(&self, addr: Ipv4Addr) -> Result<()>
pub fn set_dst_addr(&self, addr: Ipv4Addr) -> Result<()>
Sets the destination IPv4 address of the device.
Sourcepub fn get_dst_addr(&self) -> Result<Ipv4Addr>
pub fn get_dst_addr(&self) -> Result<Ipv4Addr>
Returns the destination IPv4 address of the device.
Trait Implementations§
Source§impl Read for Device
impl Read for Device
Source§fn read(&mut self, buf: &mut [u8]) -> Result<usize>
fn read(&mut self, buf: &mut [u8]) -> Result<usize>
Pull some bytes from this source into the specified buffer, returning
how many bytes were read. Read more
1.36.0 · Source§fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
Like
read
, except that it reads into a slice of buffers. Read moreSource§fn is_read_vectored(&self) -> bool
fn is_read_vectored(&self) -> bool
🔬This is a nightly-only experimental API. (
can_vector
)1.0.0 · Source§fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize, Error>
fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize, Error>
Reads all bytes until EOF in this source, placing them into
buf
. Read more1.0.0 · Source§fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>
fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>
Reads all bytes until EOF in this source, appending them to
buf
. Read more1.6.0 · Source§fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>
fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>
Reads the exact number of bytes required to fill
buf
. Read moreSource§fn read_buf(&mut self, buf: BorrowedCursor<'_>) -> Result<(), Error>
fn read_buf(&mut self, buf: BorrowedCursor<'_>) -> Result<(), Error>
🔬This is a nightly-only experimental API. (
read_buf
)Pull some bytes from this source into the specified buffer. Read more
Source§fn read_buf_exact(&mut self, cursor: BorrowedCursor<'_>) -> Result<(), Error>
fn read_buf_exact(&mut self, cursor: BorrowedCursor<'_>) -> Result<(), Error>
🔬This is a nightly-only experimental API. (
read_buf
)Reads the exact number of bytes required to fill
cursor
. Read more1.0.0 · Source§fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
Creates a “by reference” adaptor for this instance of
Read
. Read moreSource§impl Write for Device
impl Write for Device
Source§fn write(&mut self, buf: &[u8]) -> Result<usize>
fn write(&mut self, buf: &[u8]) -> Result<usize>
Writes a buffer into this writer, returning how many bytes were written. Read more
Source§fn flush(&mut self) -> Result<()>
fn flush(&mut self) -> Result<()>
Flushes this output stream, ensuring that all intermediately buffered
contents reach their destination. Read more
Source§fn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
🔬This is a nightly-only experimental API. (
can_vector
)1.0.0 · Source§fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
Attempts to write an entire buffer into this writer. Read more
Source§fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
🔬This is a nightly-only experimental API. (
write_all_vectored
)Attempts to write multiple buffers into this writer. Read more
Auto Trait Implementations§
impl Freeze for Device
impl RefUnwindSafe for Device
impl Send for Device
impl Sync for Device
impl Unpin for Device
impl UnwindSafe for Device
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