pub enum Address {
SocketAddress(SocketAddr),
DomainAddress(Box<str>, u16),
}Expand description
SOCKS5 Address Format
+------+----------+----------+
| ATYP | DST.ADDR | DST.PORT |
+------+----------+----------+
| 1 | Variable | 2 |
+------+----------+----------+Variants§
SocketAddress(SocketAddr)
Represents an IPv4 or IPv6 socket address.
DomainAddress(Box<str>, u16)
Represents a domain name and a port.
Implementations§
Source§impl Address
impl Address
Sourcepub fn unspecified() -> Self
pub fn unspecified() -> Self
Returns an unspecified IPv4 address (0.0.0.0:0).
Sourcepub fn get_type(&self) -> AddressType
pub fn get_type(&self) -> AddressType
Returns the type of the address (IPv4, IPv6, or Domain).
Sourcepub const fn max_serialized_len() -> usize
pub const fn max_serialized_len() -> usize
Returns the maximum possible serialized length of a SOCKS5 address.
Trait Implementations§
Source§impl AsyncStreamOperation for Address
impl AsyncStreamOperation for Address
fn retrieve_from_async_stream<'life0, 'async_trait, R>( stream: &'life0 mut R, ) -> Pin<Box<dyn Future<Output = Result<Self>> + Send + 'async_trait>>
fn write_to_async_stream<'life0, 'life1, 'async_trait, W>(
&'life0 self,
w: &'life1 mut W,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
W: AsyncWrite + Unpin + Send + ?Sized + 'async_trait,
Self: Sync + 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§impl From<&SocketAddr> for Address
impl From<&SocketAddr> for Address
Source§fn from(addr: &SocketAddr) -> Self
fn from(addr: &SocketAddr) -> Self
Converts to this type from the input type.
Source§impl From<SocketAddr> for Address
impl From<SocketAddr> for Address
Source§fn from(addr: SocketAddr) -> Self
fn from(addr: SocketAddr) -> Self
Converts to this type from the input type.
Source§impl Ord for Address
impl Ord for Address
Source§impl PartialOrd for Address
impl PartialOrd for Address
Source§impl StreamOperation for Address
impl StreamOperation for Address
Source§impl ToSocketAddrs for Address
impl ToSocketAddrs for Address
Source§type Iter = IntoIter<SocketAddr>
type Iter = IntoIter<SocketAddr>
Returned iterator over socket addresses which this type may correspond
to.
Source§fn to_socket_addrs(&self) -> Result<Self::Iter>
fn to_socket_addrs(&self) -> Result<Self::Iter>
Converts this object to an iterator of resolved
SocketAddrs. Read moreSource§impl TryFrom<&Address> for SocketAddr
impl TryFrom<&Address> for SocketAddr
Source§impl TryFrom<Address> for SocketAddr
impl TryFrom<Address> for SocketAddr
impl Eq for Address
impl StructuralPartialEq for Address
Auto Trait Implementations§
impl Freeze for Address
impl RefUnwindSafe for Address
impl Send for Address
impl Sync for Address
impl Unpin for Address
impl UnwindSafe for Address
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