//! Secure handling of application- and model-supplied URLs.
//!
//! Every URL is validated against a [`UrlPolicy`] before any connection is
//! opened: scheme allow-list, no embedded credentials, no hostnames or
//! resolved addresses in private, loopback, link-local, multicast or
//! reserved ranges. DNS is resolved once and the connection is pinned to the
//! validated addresses, so a rebinding resolver cannot redirect the request
//! after validation. Redirects are followed manually, each hop is validated
//! again, and cross-origin hops drop every header except `User-Agent` and
//! `Accept`. Bodies are read with a byte limit.
pub use DownloadError;
pub use DownloadErrorKind;
pub use Downloaded;
pub use fetch;
pub use fetch_with_headers;
pub use DEFAULT_MAX_BODY_BYTES;
pub use DEFAULT_MAX_REDIRECTS;
pub use Scheme;
pub use UrlPolicy;
pub use UrlValidationError;
pub use ValidatedUrl;
pub use validate_url;
pub use is_private_hostname;
pub use is_private_ip;