pub struct ServerConfig {Show 27 fields
pub mode: ServerMode,
pub bind_address: String,
pub enable_auth: bool,
pub stun_port: u16,
pub enable_webrtc: bool,
pub enable_fips: bool,
pub fips_discovery_scope: String,
pub fips_relays: Vec<String>,
pub enable_fips_udp: bool,
pub fips_udp_bind_addr: Option<String>,
pub fips_udp_public: bool,
pub fips_udp_external_addr: Option<String>,
pub enable_fips_webrtc: bool,
pub fetch_from_fips_peers: bool,
pub fips_request_timeout_ms: u64,
pub http_webrtc_fetch: bool,
pub peer_signal_urls: Vec<String>,
pub enable_multicast: bool,
pub multicast_group: String,
pub multicast_port: u16,
pub max_multicast_peers: usize,
pub enable_wifi_aware: bool,
pub max_wifi_aware_peers: usize,
pub enable_bluetooth: bool,
pub max_bluetooth_peers: usize,
pub public_writes: bool,
pub socialgraph_snapshot_public: bool,
}Fields§
§mode: ServerMode§bind_address: String§enable_auth: bool§stun_port: u16Port for the built-in STUN server (0 = disabled)
enable_webrtc: boolEnable WebRTC P2P connections
enable_fips: boolEnable FIPS-backed Hashtree blob exchange.
fips_discovery_scope: StringFIPS discovery/signaling scope for Hashtree peers.
fips_relays: Vec<String>FIPS Nostr relays used for discovery adverts and encrypted signaling. Empty means use active nostr.relays, then FIPS built-in defaults.
enable_fips_udp: boolEnable ordinary FIPS UDP endpoint transport.
fips_udp_bind_addr: Option<String>FIPS UDP bind address. Empty/default lets the kernel pick an ephemeral port.
fips_udp_public: boolAdvertise the FIPS UDP endpoint as directly reachable.
fips_udp_external_addr: Option<String>Explicit FIPS UDP address to advertise when fips_udp_public is true.
enable_fips_webrtc: boolEnable FIPS WebRTC endpoint transport.
fetch_from_fips_peers: boolAllow daemon cache misses to fetch blobs from FIPS peers.
fips_request_timeout_ms: u64How long one FIPS blob request waits for a valid response.
http_webrtc_fetch: boolAllow HTTP misses to fetch blobs from connected WebRTC peers.
peer_signal_urls: Vec<String>Explicit daemon endpoint URLs this node may share privately with connected peers for WebRTC signaling handoff.
enable_multicast: boolEnable LAN multicast discovery/signaling for native peers.
multicast_group: StringIPv4 multicast group used for LAN discovery/signaling.
multicast_port: u16UDP port used for LAN multicast discovery/signaling.
max_multicast_peers: usizeMaximum peers admitted from LAN multicast discovery. Set to 0 to disable multicast even when enable_multicast is true.
enable_wifi_aware: boolEnable Android Wi-Fi Aware nearby discovery/signaling for native peers.
max_wifi_aware_peers: usizeMaximum peers admitted from Wi-Fi Aware discovery. Set to 0 to disable Wi-Fi Aware even when enable_wifi_aware is true.
enable_bluetooth: boolEnable native Bluetooth discovery/transport for nearby peers.
max_bluetooth_peers: usizeMaximum peers admitted from Bluetooth discovery. Set to 0 to disable Bluetooth even when enable_bluetooth is true.
public_writes: boolAllow anyone with valid Nostr auth to write (default: true) When false, only social graph members can write
Allow public access to social graph snapshot endpoint (default: false)
Implementations§
Source§impl ServerConfig
impl ServerConfig
pub fn resolved_fips_relays( &self, active_nostr_relays: &[String], ) -> Vec<String>
Trait Implementations§
Source§impl Clone for ServerConfig
impl Clone for ServerConfig
Source§fn clone(&self) -> ServerConfig
fn clone(&self) -> ServerConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ServerConfig
impl Debug for ServerConfig
Source§impl Default for ServerConfig
impl Default for ServerConfig
Source§impl<'de> Deserialize<'de> for ServerConfig
impl<'de> Deserialize<'de> for ServerConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for ServerConfig
impl RefUnwindSafe for ServerConfig
impl Send for ServerConfig
impl Sync for ServerConfig
impl Unpin for ServerConfig
impl UnsafeUnpin for ServerConfig
impl UnwindSafe for ServerConfig
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T> AsTaggedExplicit<'a> for Twhere
T: 'a,
impl<'a, T> AsTaggedExplicit<'a> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T> AsTaggedImplicit<'a> for Twhere
T: 'a,
impl<'a, T> AsTaggedImplicit<'a> for Twhere
T: 'a,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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>
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>
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