hns-browser-loopback-proxy 0.2.4

Authenticated loopback browser proxy adapters with explicit mobile and Chromium contracts
Documentation
pub mod auth;
pub mod backend;
pub mod config;
pub mod endpoint;
pub mod event;
pub mod host;
pub mod http1;
pub mod metadata;
pub mod rate_limit;
pub mod response;
pub mod server;

mod certificate;
mod listener;
mod tls;

pub use auth::{
    AuthorizationGenerationError, PROXY_AUTHENTICATE_HEADER, PROXY_AUTHORIZATION_HEADER,
    ProxyAuthorization,
};
pub use backend::{
    BackendError, CancellationToken, ProxyBackend, ProxyConnectOpen, ProxyConnectShutdown,
    ProxyConnectTunnel, ProxyHeader, ProxyPublicationAuthority, ProxyPublicationPermit,
    ProxyRequest, ProxyRequestBody, ProxyResponse, ProxyResponseBody, ProxyResponseHead,
    ProxyTunnel, ProxyTunnelIo, ProxyTunnelOpen,
};
pub use certificate::{
    CertificateSha256, GeneratedLocalCertificateAuthority, LocalCertificateAuthority,
    LocalCertificateAuthorityError, LocalCertificatePin,
};
pub use config::{
    LoopbackBind, ProxyConfig, ProxyInstanceId, ProxyLimits, ProxyLimitsError, ProxyRoutingMode,
    ProxySessionId, ProxyTimeouts, ProxyTimeoutsError, SessionIdGenerationError,
};
pub use endpoint::ProxyEndpoint;
pub use event::{
    BackendFailureKind, ClientRejectionReason, LifecycleEvent, NoopProxyObserver, ObservedHost,
    ObservedHostError, ObservedMethod, ProxyEvent, ProxyObserver, RequestPhase,
    RequestRejectionReason, StopReason,
};
pub use host::{HostNormalizationError, HostScope, HostScopeError, NormalizedHost};
pub use http1::{
    AbsoluteTarget, Authority, BodyFraming, Header, Http1Error, HttpVersion, OriginTarget,
    RequestHead, RequestTarget, Scheme, determine_body_framing, parse_request_head,
    read_chunked_body, read_request_body, read_request_head, sanitize_forward_headers,
    sanitize_upgrade_forward_headers,
};
pub use metadata::{
    NoopProxyResponseMetadataObserver, ProxyMetadataObservationKind,
    ProxyResponseMetadataObservation, ProxyResponseMetadataObserver,
};
pub use rate_limit::{
    ActiveClientLimiter, ActiveClientPermit, RateLimitConfig, RateLimitConfigError,
    RateLimitDecision, RateLimitScope, RequestRateLimiter,
};
pub use response::{
    EncodedResponseHead, InternalResponseMetadata, ResponseError, SanitizedResponseHeaders,
    encode_response_head, encode_upgrade_response_head, sanitize_response_headers,
};
pub use server::{ProxyError, RunningProxy};