Expand description
§scanclient
High-performance, connection-pooled, and observable HTTP client designed specifically for Santh security scanning tools.
This crate wraps reqwest to provide unified rate-limiting, custom DNS resolution,
automatic retries on specific status codes, proxy rotation, and specific security
scanning configurations (e.g. ignoring TLS errors or setting specific User-Agents).
§Architecture
ScanClient: The main orchestration client.HttpConfig: Configuration options for proxies, timeouts, and rate limits.ScanResponse: A tailored response object capturing timing and status.
§Quick Start
use scanclient::config::HttpConfig;
let config = HttpConfig::default();
assert_eq!(config.timeout_secs, 10);
assert_eq!(config.max_retries, 3);
assert!(config.tls_verify);
// Load from TOML
let custom = HttpConfig::from_toml("timeout_secs = 30").unwrap();
assert_eq!(custom.timeout_secs, 30);Re-exports§
pub use client::Error;pub use client::Result;pub use client::ScanClient;pub use config::HttpConfig;pub use config::HttpConfigError;pub use response::ScanResponse;