#![cfg_attr(
feature = "server",
doc = "- [`server`]: A fully-fledged iroh-relay server over HTTP or HTTPS."
)]
#![cfg_attr(
not(feature = "server"),
doc = "- `server`: A fully-fledged iroh-relay server over HTTP or HTTPS."
)]
#![cfg_attr(iroh_docsrs, feature(doc_cfg))]
#![deny(missing_docs, rustdoc::broken_intra_doc_links)]
#![cfg_attr(not(test), deny(clippy::unwrap_used))]
pub mod client;
pub mod defaults;
pub mod http;
pub mod protos;
pub mod quic;
#[cfg(feature = "server")]
pub mod server;
mod ping_tracker;
mod key_cache;
mod relay_map;
pub use key_cache::KeyCache;
#[cfg(not(wasm_browser))]
pub mod dns;
pub mod endpoint_info;
pub use protos::relay::MAX_PACKET_SIZE;
pub use self::{
ping_tracker::PingTracker,
relay_map::{RelayConfig, RelayMap, RelayQuicConfig},
};
pub trait ExportKeyingMaterial {
#[cfg_attr(wasm_browser, allow(unused))]
fn export_keying_material<T: AsMut<[u8]>>(
&self,
output: T,
label: &[u8],
context: Option<&[u8]>,
) -> Option<T>;
}