diff --git a/clients/client-core/src/config/mod.rs b/clients/client-core/src/config/mod.rs index 97b7c85c1a..1d3547dbd3 100644 --- a/clients/client-core/src/config/mod.rs +++ b/clients/client-core/src/config/mod.rs @@ -1,6 +1,7 @@ // Copyright 2021 - Nym Technologies SA // SPDX-License-Identifier: Apache-2.0 +use config::defaults::NymNetworkDetails; use config::{NymConfig, OptionalSet, DB_FILE_NAME}; use nymsphinx::params::PacketSize; use serde::{Deserialize, Serialize}; @@ -499,13 +500,29 @@ pub struct Client { impl Default for Client { fn default() -> Self { + let network = NymNetworkDetails::new_mainnet(); + let nyxd_urls = network + .endpoints + .iter() + .map(|validator| validator.nyxd_url()) + .collect(); + let nym_api_urls = network + .endpoints + .iter() + .filter_map(|validator| validator.api_url()) + .collect::>(); + + if nym_api_urls.is_empty() { + panic!("we do not have any default nym-api urls available!") + } + // there must be explicit checks for whether id is not empty later Client { version: env!("CARGO_PKG_VERSION").to_string(), id: "".to_string(), disabled_credentials_mode: true, - nyxd_urls: vec![], - nym_api_urls: vec![], + nyxd_urls, + nym_api_urls, private_identity_key_file: Default::default(), public_identity_key_file: Default::default(), private_encryption_key_file: Default::default(), diff --git a/common/mixnode-common/Cargo.toml b/common/mixnode-common/Cargo.toml index d2e20ef29d..f2cc32465e 100644 --- a/common/mixnode-common/Cargo.toml +++ b/common/mixnode-common/Cargo.toml @@ -19,6 +19,7 @@ url = "2.2" thiserror = "1.0.37" crypto = { path = "../crypto" } +network-defaults = { path = "../network-defaults" } nymsphinx-acknowledgements = { path = "../nymsphinx/acknowledgements" } nymsphinx-addressing = { path = "../nymsphinx/addressing" } nymsphinx-forwarding = { path = "../nymsphinx/forwarding" } diff --git a/common/mixnode-common/src/verloc/mod.rs b/common/mixnode-common/src/verloc/mod.rs index 07fc80b4ba..cbcf590625 100644 --- a/common/mixnode-common/src/verloc/mod.rs +++ b/common/mixnode-common/src/verloc/mod.rs @@ -7,6 +7,7 @@ use crypto::asymmetric::identity; use futures::stream::FuturesUnordered; use futures::StreamExt; use log::*; +use network_defaults::mainnet::NYM_API; use rand::seq::SliceRandom; use rand::thread_rng; use std::net::SocketAddr; @@ -160,7 +161,7 @@ impl Default for ConfigBuilder { tested_nodes_batch_size: DEFAULT_BATCH_SIZE, testing_interval: DEFAULT_TESTING_INTERVAL, retry_timeout: DEFAULT_RETRY_TIMEOUT, - nym_api_urls: vec![], + nym_api_urls: vec![NYM_API.parse().expect("Invalid default API URL")], }) } }