#![deny(unsafe_code)]
#![warn(missing_docs)]
#![warn(clippy::all)]
#![warn(clippy::pedantic)]
#![allow(clippy::module_name_repetitions)]
pub mod access;
pub mod client;
pub mod config;
pub mod error;
pub mod node;
pub mod overlay;
pub mod protocol;
pub mod server;
pub use access::{AccessManager, AccessSession, SessionInfo};
pub use client::{
AgentState, ConnectionCallback, ControlCommand, ControlEvent, LocalProxy, RegisteredService,
ServiceStatus, TunnelAgent,
};
pub use config::{ServiceConfig, TunnelClientConfig, TunnelServerConfig};
pub use error::{Result, TunnelError};
pub use node::{NodeTunnel, NodeTunnelManager, TunnelState, TunnelStatus};
pub use overlay::{
DynOverlayResolver, DynTunnelDnsRegistrar, OverlayReachability, OverlayResolver, RoutingMode,
TunnelDnsRegistrar,
};
pub use protocol::{
Message, MessageType, ServiceProtocol, HEADER_SIZE, MAX_MESSAGE_SIZE, PROTOCOL_VERSION,
};
pub use server::{
accept_all_tokens, hash_token, ControlHandler, ControlMessage, ListenerManager, TokenValidator,
Tunnel, TunnelInfo, TunnelRegistry, TunnelService,
};
pub use zlayer_spec::ExposeType;