diff options
author | metamuffin <metamuffin@disroot.org> | 2023-04-06 17:51:42 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2023-04-06 17:51:42 +0200 |
commit | c3c3a07cae6a938534824c32573927dd7a5ece4b (patch) | |
tree | 3238fae7f8334a18b9fc6bb3342416fe184c4492 /src/config.rs | |
parent | 6d06d9a0eaf8d7c3f03df1501b9acd0a71cb53ae (diff) | |
download | gnix-c3c3a07cae6a938534824c32573927dd7a5ece4b.tar gnix-c3c3a07cae6a938534824c32573927dd7a5ece4b.tar.bz2 gnix-c3c3a07cae6a938534824c32573927dd7a5ece4b.tar.zst |
configure max_incoming_connections
Diffstat (limited to 'src/config.rs')
-rw-r--r-- | src/config.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/config.rs b/src/config.rs index 58b885a..68479e4 100644 --- a/src/config.rs +++ b/src/config.rs @@ -6,10 +6,21 @@ use std::{collections::HashMap, fs::read_to_string, net::SocketAddr, path::PathB pub struct Config { pub http: Option<HttpConfig>, pub https: Option<HttpsConfig>, + #[serde(default)] + pub limits: Limits, + #[serde(default)] pub hosts: HashMap<String, HostConfig>, } #[derive(Debug, Serialize, Deserialize)] +pub struct Limits { + #[serde(default)] + pub max_incoming_connections: usize, + #[serde(default)] + pub max_outgoing_connections: usize, +} + +#[derive(Debug, Serialize, Deserialize)] pub struct HttpConfig { pub bind: SocketAddr, } @@ -42,3 +53,12 @@ impl Config { Ok(config) } } + +impl Default for Limits { + fn default() -> Self { + Self { + max_incoming_connections: 1024, + max_outgoing_connections: usize::MAX, + } + } +} |