feat(config): introduce federation connection timeout setting

fixes #906

Signed-off-by: rooot <hey@rooot.gay>
This commit is contained in:
rooot 2025-07-20 03:14:35 +02:00 committed by Jade Ellis
commit 9051ce63f7
No known key found for this signature in database
GPG key ID: 8705A2A3EBF77BD2
3 changed files with 23 additions and 0 deletions

View file

@ -66,6 +66,7 @@ impl crate::Service for Service {
federation: base(config)?
.dns_resolver(resolver.resolver.hooked.clone())
.connect_timeout(Duration::from_secs(config.federation_conn_timeout))
.read_timeout(Duration::from_secs(config.federation_timeout))
.pool_max_idle_per_host(config.federation_idle_per_host.into())
.pool_idle_timeout(Duration::from_secs(config.federation_idle_timeout))
@ -74,6 +75,7 @@ impl crate::Service for Service {
synapse: base(config)?
.dns_resolver(resolver.resolver.hooked.clone())
.connect_timeout(Duration::from_secs(config.federation_conn_timeout))
.read_timeout(Duration::from_secs(305))
.pool_max_idle_per_host(0)
.redirect(redirect::Policy::limited(3))
@ -81,6 +83,7 @@ impl crate::Service for Service {
sender: base(config)?
.dns_resolver(resolver.resolver.hooked.clone())
.connect_timeout(Duration::from_secs(config.federation_conn_timeout))
.read_timeout(Duration::from_secs(config.sender_timeout))
.timeout(Duration::from_secs(config.sender_timeout))
.pool_max_idle_per_host(1)