summary refs log tree commit diff
path: root/synapse/server.py
diff options
context:
space:
mode:
Diffstat (limited to 'synapse/server.py')
-rw-r--r--synapse/server.py26
1 files changed, 20 insertions, 6 deletions
diff --git a/synapse/server.py b/synapse/server.py

index 9af759626e..54f50f59bc 100644 --- a/synapse/server.py +++ b/synapse/server.py
@@ -24,7 +24,6 @@ import abc import functools import logging -import os from typing import TYPE_CHECKING, Any, Callable, Dict, List, Optional, TypeVar, cast import twisted.internet.base @@ -360,11 +359,27 @@ class HomeServer(metaclass=abc.ABCMeta): """ An HTTP client that uses configured HTTP(S) proxies. """ + return SimpleHttpClient(self, use_proxy=True) + + @cache_in_self + def get_proxied_blacklisted_http_client(self) -> SimpleHttpClient: + """ + An HTTP client that uses configured HTTP(S) proxies and blacklists IPs + based on the IP range blacklist. + """ return SimpleHttpClient( - self, - http_proxy=os.getenvb(b"http_proxy"), - https_proxy=os.getenvb(b"HTTPS_PROXY"), + self, ip_blacklist=self.config.ip_range_blacklist, use_proxy=True, + ) + + @cache_in_self + def get_federation_http_client(self) -> MatrixFederationHttpClient: + """ + An HTTP client for federation. + """ + tls_client_options_factory = context_factory.FederationPolicyForHTTPS( + self.config ) + return MatrixFederationHttpClient(self, tls_client_options_factory) @cache_in_self def get_proxied_blacklisted_http_client(self) -> SimpleHttpClient: @@ -375,8 +390,7 @@ class HomeServer(metaclass=abc.ABCMeta): return SimpleHttpClient( self, ip_blacklist=self.config.ip_range_blacklist, - http_proxy=os.getenvb(b"http_proxy"), - https_proxy=os.getenvb(b"HTTPS_PROXY"), + use_proxy=True, ) @cache_in_self