1#![deny(missing_docs, rustdoc::broken_intra_doc_links)]
12
13pub(crate) mod client;
14pub(crate) mod codec;
15pub mod http;
16mod map;
17#[cfg(feature = "iroh-relay")]
18#[cfg_attr(iroh_docsrs, doc(cfg(feature = "iroh-relay")))]
19pub mod server;
20
21pub use iroh_base::node_addr::RelayUrl;
22
23#[cfg_attr(iroh_docsrs, doc(cfg(not(test))))]
25pub const ENV_FORCE_STAGING_RELAYS: &str = "IROH_FORCE_STAGING_RELAYS";
26
27pub fn force_staging_infra() -> bool {
29 matches!(std::env::var(ENV_FORCE_STAGING_RELAYS), Ok(value) if !value.is_empty())
30}
31
32pub use self::{
33 client::{
34 conn::{Conn as RelayConn, ReceivedMessage},
35 Client as HttpClient, ClientBuilder as HttpClientBuilder, ClientError as HttpClientError,
36 ClientReceiver as HttpClientReceiver,
37 },
38 codec::MAX_PACKET_SIZE,
39 map::{RelayMap, RelayMode, RelayNode},
40};