Desktop config: ratelimits

This commit is contained in:
Igor Katson 2024-11-20 15:30:56 +00:00
parent 2a7c632b2b
commit 06b50d65ab
No known key found for this signature in database
GPG key ID: B4EC22B66D61A3F5
3 changed files with 7 additions and 2 deletions

View file

@ -7,7 +7,7 @@ use std::num::NonZero;
use std::num::NonZeroU32;
use std::sync::Arc;
#[derive(Default, Serialize, Deserialize, Clone, Copy)]
#[derive(Default, Serialize, Deserialize, Clone, Copy, Debug, PartialEq, Eq)]
pub struct LimitsConfig {
pub upload_bps: Option<NonZero<u32>>,
pub download_bps: Option<NonZero<u32>>,

View file

@ -4,7 +4,7 @@ use std::{
time::Duration,
};
use librqbit::dht::PersistentDht;
use librqbit::{dht::PersistentDht, limits::LimitsConfig};
use serde::{Deserialize, Serialize};
use serde_with::serde_as;
@ -154,6 +154,9 @@ pub struct RqbitDesktopConfig {
pub persistence: RqbitDesktopConfigPersistence,
pub peer_opts: RqbitDesktopConfigPeerOpts,
pub http_api: RqbitDesktopConfigHttpApi,
#[serde(default)]
pub ratelimits: LimitsConfig,
}
impl Default for RqbitDesktopConfig {
@ -172,6 +175,7 @@ impl Default for RqbitDesktopConfig {
persistence: Default::default(),
peer_opts: Default::default(),
http_api: Default::default(),
ratelimits: Default::default(),
#[cfg(feature = "disable-upload")]
disable_upload: false,
}

View file

@ -105,6 +105,7 @@ async fn api_from_config(
},
enable_upnp_port_forwarding: !config.upnp.disable_tcp_port_forward,
fastresume: config.persistence.fastresume,
ratelimits: config.ratelimits,
#[cfg(feature = "disable-upload")]
disable_upload: config.disable_upload,
..Default::default()