pub enum NetworkMode {
Server,
Mdns,
Direct,
}Expand description
How the network discovers peers.
Variants§
Server
huddle 0.8 default: no libp2p at all. The only transport is the
centralized Tor-onion relay (see network::server). No LAN
discovery, no direct dial, no NAT machinery — every message rides
the onion. This is what the binary starts in unless the user
explicitly opts back into libp2p with --mode mdns|direct.
Mdns
libp2p with mDNS on: announce ourselves on the LAN and pick up
announcements. Opt-in (--mode mdns); runs alongside the onion
relay so LAN peers connect directly while internet peers route
through the server.
Direct
libp2p with mDNS off: invisible to LAN discovery; the only libp2p
way to connect is an explicit dial. Opt-in (--mode direct); also
runs alongside the onion relay.
Implementations§
Trait Implementations§
Source§impl Clone for NetworkMode
impl Clone for NetworkMode
Source§fn clone(&self) -> NetworkMode
fn clone(&self) -> NetworkMode
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for NetworkMode
impl Debug for NetworkMode
Source§impl PartialEq for NetworkMode
impl PartialEq for NetworkMode
Source§fn eq(&self, other: &NetworkMode) -> bool
fn eq(&self, other: &NetworkMode) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Copy for NetworkMode
impl Eq for NetworkMode
impl StructuralPartialEq for NetworkMode
Auto Trait Implementations§
impl Freeze for NetworkMode
impl RefUnwindSafe for NetworkMode
impl Send for NetworkMode
impl Sync for NetworkMode
impl Unpin for NetworkMode
impl UnsafeUnpin for NetworkMode
impl UnwindSafe for NetworkMode
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more