diff options
author | Roel ter Maat <roel.termaat@nedap.com> | 2023-05-11 14:02:51 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-11 13:02:51 +0100 |
commit | 2611433b70fc30c436f6b9b950a3bcc533b3df5b (patch) | |
tree | ae8d8e09b921582db255e303422f036ea615d4a9 /synapse/replication/tcp/redis.py | |
parent | Require at least poetry-core v1.2.0 (#15566) (diff) | |
download | synapse-2611433b70fc30c436f6b9b950a3bcc533b3df5b.tar.xz |
Add redis SSL configuration options (#15312)
* Add SSL options to redis config * fix lint issues * Add documentation and changelog file * add missing . at the end of the changelog * Move client context factory to new file * Rename ssl to tls and fix typo * fix lint issues * Added when redis attributes were added
Diffstat (limited to 'synapse/replication/tcp/redis.py')
-rw-r--r-- | synapse/replication/tcp/redis.py | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/synapse/replication/tcp/redis.py b/synapse/replication/tcp/redis.py index dfc061eb5e..c8f4bf8b27 100644 --- a/synapse/replication/tcp/redis.py +++ b/synapse/replication/tcp/redis.py @@ -35,6 +35,7 @@ from synapse.replication.tcp.commands import ( ReplicateCommand, parse_command_from_line, ) +from synapse.replication.tcp.context import ClientContextFactory from synapse.replication.tcp.protocol import ( IReplicationConnection, tcp_inbound_commands_counter, @@ -386,12 +387,24 @@ def lazyConnection( factory.continueTrying = reconnect reactor = hs.get_reactor() - reactor.connectTCP( - host, - port, - factory, - timeout=30, - bindAddress=None, - ) + + if hs.config.redis.redis_use_tls: + ssl_context_factory = ClientContextFactory(hs.config.redis) + reactor.connectSSL( + host, + port, + factory, + ssl_context_factory, + timeout=30, + bindAddress=None, + ) + else: + reactor.connectTCP( + host, + port, + factory, + timeout=30, + bindAddress=None, + ) return factory.handler |