|
42 | 42 | from twisted.web.http_headers import Headers
|
43 | 43 | from twisted.web.iweb import IAgent, IBodyProducer, IPolicyForHTTPS, IResponse
|
44 | 44 |
|
45 |
| -from synapse.config.workers import InstanceLocationConfig |
| 45 | +from synapse.config.workers import InstanceLocationConfig, InstanceTcpLocationConfig |
46 | 46 | from synapse.http import redact_uri
|
47 | 47 | from synapse.http.connectproxyclient import HTTPConnectProxyEndpoint, ProxyCredentials
|
48 | 48 | from synapse.logging.context import run_in_background
|
@@ -144,20 +144,23 @@ def __init__(
|
144 | 144 | if federation_proxies:
|
145 | 145 | endpoints = []
|
146 | 146 | for federation_proxy in federation_proxies:
|
147 |
| - endpoint = HostnameEndpoint( |
148 |
| - self.proxy_reactor, |
149 |
| - federation_proxy.host, |
150 |
| - federation_proxy.port, |
151 |
| - ) |
152 |
| - |
153 |
| - if federation_proxy.tls: |
154 |
| - tls_connection_creator = self._policy_for_https.creatorForNetloc( |
| 147 | + if isinstance(federation_proxy, InstanceTcpLocationConfig): |
| 148 | + endpoint = HostnameEndpoint( |
| 149 | + self.proxy_reactor, |
155 | 150 | federation_proxy.host,
|
156 | 151 | federation_proxy.port,
|
157 | 152 | )
|
158 |
| - endpoint = wrapClientTLS(tls_connection_creator, endpoint) |
159 | 153 |
|
160 |
| - endpoints.append(endpoint) |
| 154 | + if federation_proxy.tls: |
| 155 | + tls_connection_creator = ( |
| 156 | + self._policy_for_https.creatorForNetloc( |
| 157 | + federation_proxy.host, |
| 158 | + federation_proxy.port, |
| 159 | + ) |
| 160 | + ) |
| 161 | + endpoint = wrapClientTLS(tls_connection_creator, endpoint) |
| 162 | + |
| 163 | + endpoints.append(endpoint) |
161 | 164 |
|
162 | 165 | self._federation_proxy_endpoint = _ProxyEndpoints(endpoints)
|
163 | 166 |
|
|
0 commit comments