wisegate_core/
defaults.rs

1//! Default configuration values for WiseGate.
2//!
3//! This module centralizes all default values used throughout WiseGate,
4//! ensuring consistency between production code and tests.
5
6use std::time::Duration;
7
8/// Default maximum requests per rate limit window.
9pub const RATE_LIMIT_REQUESTS: u32 = 100;
10
11/// Default rate limit window duration in seconds.
12pub const RATE_LIMIT_WINDOW_SECS: u64 = 60;
13
14/// Default rate limit window duration.
15pub const RATE_LIMIT_WINDOW: Duration = Duration::from_secs(RATE_LIMIT_WINDOW_SECS);
16
17/// Default cleanup threshold (number of entries before triggering cleanup).
18pub const RATE_LIMIT_CLEANUP_THRESHOLD: usize = 10_000;
19
20/// Default cleanup interval in seconds.
21pub const RATE_LIMIT_CLEANUP_INTERVAL_SECS: u64 = 60;
22
23/// Default cleanup interval duration.
24pub const RATE_LIMIT_CLEANUP_INTERVAL: Duration =
25    Duration::from_secs(RATE_LIMIT_CLEANUP_INTERVAL_SECS);
26
27/// Default proxy timeout in seconds.
28pub const PROXY_TIMEOUT_SECS: u64 = 30;
29
30/// Default proxy timeout duration.
31pub const PROXY_TIMEOUT: Duration = Duration::from_secs(PROXY_TIMEOUT_SECS);
32
33/// Default maximum body size in megabytes.
34pub const MAX_BODY_SIZE_MB: usize = 100;
35
36/// Default maximum body size in bytes.
37pub const MAX_BODY_SIZE: usize = MAX_BODY_SIZE_MB * 1024 * 1024;
38
39/// Default maximum concurrent connections.
40pub const MAX_CONNECTIONS: usize = 10_000;
41
42/// Default authentication realm.
43pub const AUTH_REALM: &str = "WiseGate";