#![warn(missing_docs)]
mod audit;
mod broker;
mod decide;
mod request;
mod server;
mod sni;
mod tunnel;
mod upstream;
pub use audit::{Connection, RecordError, Recorder};
pub use broker::{Broker, BrokerError, Carried, Leak, RULE_SECRET};
pub use decide::{
Forbidden, RULE_ADDRESS, RULE_AUDIT, RULE_REQUEST, RULE_SNI, RULE_UPSTREAM, address_policy,
forbidden, host as decide_host, named as address_named,
};
pub use request::{MAX_HEADERS, Request, RequestError, Target, parse as parse_request};
pub use server::{Limits, Proxy};
pub use sni::{Hello, HelloError, MAX_HELLO, server_name};
pub use upstream::{Refusal, Resolve, SystemResolver, connect};