pub struct Config {Show 32 fields
pub network_id: u32,
pub ecdsa_key: Option<SecretKey>,
pub session_manager: Option<String>,
pub session_sk: Option<String>,
pub internal_api_port: u16,
pub external_api_addr: String,
pub endpoint_url: String,
pub ice_servers: String,
pub stabilize_interval: u64,
pub online_node_heartbeat_interval_secs: u64,
pub online_node_ttl_secs: u64,
pub online_node_type: OnlineNodeType,
pub advertise_presence: bool,
pub advertise_onion_relay: bool,
pub advertise_onion_exit: bool,
pub onion_exit_heartbeat_interval_secs: u64,
pub onion_exit_ttl_secs: u64,
pub onion_exit_services: Vec<OnionExitService>,
pub onion_exit_policy: OnionExitPolicy,
pub onion_http_proxy_addr: Option<String>,
pub onion_http_proxy_service: OnionServiceName,
pub onion_http_proxy_hop_count: usize,
pub onion_http_proxy_allow_short_paths: bool,
pub onion_http_proxy_header_timeout_secs: u64,
pub onion_http_proxy_max_connections: usize,
pub gateway: Option<NativeGatewayConfig>,
pub dht_virtual_nodes: u16,
pub external_ip: Option<String>,
pub webrtc_udp_port_min: Option<u16>,
pub webrtc_udp_port_max: Option<u16>,
pub data_storage: StorageConfig,
pub measure_storage: StorageConfig,
}Expand description
Serializable native-node configuration.
Fields§
§network_id: u32Rings network identifier this node joins.
ecdsa_key: Option<SecretKey>Deprecated ECDSA key field retained for backward-compatible config reads.
session_manager: Option<String>Deprecated session manager field retained for backward-compatible config reads.
session_sk: Option<String>Session secret key file path or legacy raw session key string.
internal_api_port: u16Internal JSON-RPC API port.
external_api_addr: StringExternal JSON-RPC listener address.
endpoint_url: StringInternal endpoint URL used by local clients.
ice_servers: StringWebRTC ICE server list, independent from optional gateway ingress.
stabilize_interval: u64Chord stabilization interval in seconds.
online_node_heartbeat_interval_secs: u64Presence descriptor heartbeat interval in seconds.
online_node_ttl_secs: u64Presence descriptor time-to-live in seconds.
online_node_type: OnlineNodeTypeNode type advertised in online-node descriptors.
advertise_presence: boolWhether this node publishes online-node descriptors.
advertise_onion_relay: boolWhether this node advertises onion relay capability.
advertise_onion_exit: boolWhether this node advertises onion exit capability.
onion_exit_heartbeat_interval_secs: u64Onion-exit descriptor heartbeat interval in seconds.
onion_exit_ttl_secs: u64Onion-exit descriptor time-to-live in seconds.
onion_exit_services: Vec<OnionExitService>Onion-exit services this node can publish.
onion_exit_policy: OnionExitPolicyOnion-exit target and resource policy.
onion_http_proxy_addr: Option<String>Optional local HTTP CONNECT proxy listener address.
onion_http_proxy_service: OnionServiceNameOnion service name used by the HTTP CONNECT proxy.
onion_http_proxy_hop_count: usizeRequested hop count for HTTP CONNECT proxy routes.
onion_http_proxy_allow_short_paths: boolWhether the HTTP CONNECT proxy may use shorter routes when needed.
onion_http_proxy_header_timeout_secs: u64Timeout for reading HTTP CONNECT headers in seconds.
onion_http_proxy_max_connections: usizeMaximum simultaneous HTTP CONNECT proxy connections.
gateway: Option<NativeGatewayConfig>Optional native TUN gateway started in the same foreground lifecycle.
dht_virtual_nodes: u16Virtual DHT positions per storage owner.
external_ip: Option<String>Optional externally reachable IP address hint.
webrtc_udp_port_min: Option<u16>Optional lower bound for WebRTC UDP port allocation.
webrtc_udp_port_max: Option<u16>Optional upper bound for WebRTC UDP port allocation.
data_storage: StorageConfigPersistent DHT data storage configuration.
measure_storage: StorageConfigPeer measurement storage configuration.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Config
impl<'de> Deserialize<'de> for Config
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>,
Source§impl TryFrom<Config> for ProcessorConfigSerialized
impl TryFrom<Config> for ProcessorConfigSerialized
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnsafeUnpin for Config
impl UnwindSafe for Config
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> 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>,
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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 moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
impl<T> MaybeSend for T
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.