Skip to content

Commit

Permalink
fix to use makeContext so that we don't need to rebuild the certifica…
Browse files Browse the repository at this point in the history
…teoptions each time
  • Loading branch information
hawkowl committed Feb 19, 2019
1 parent d154f5a commit 561eebe
Showing 1 changed file with 6 additions and 8 deletions.
14 changes: 6 additions & 8 deletions synapse/crypto/context_factory.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Copyright 2014-2016 OpenMarket Ltd
# Copyright 2019 New Vector Ltd
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand All @@ -11,6 +12,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

import logging

from zope.interface import implementer
Expand Down Expand Up @@ -105,9 +107,7 @@ def __init__(self, hostname, ctx):
self._hostnameBytes = _idnaBytes(hostname)
self._sendSNI = True

ctx.set_info_callback(
_tolerateErrors(self._identityVerifyingInfoCallback)
)
ctx.set_info_callback(_tolerateErrors(self._identityVerifyingInfoCallback))

def clientConnectionForTLS(self, tlsProtocol):
context = self._ctx
Expand All @@ -128,10 +128,8 @@ class ClientTLSOptionsFactory(object):

def __init__(self, config):
# We don't use config options yet
pass
self._options = CertificateOptions(verify=False)

def get_options(self, host):
return ClientTLSOptions(
host,
CertificateOptions(verify=False).getContext()
)
# Use _makeContext so that we get a fresh OpenSSL CTX each time.
return ClientTLSOptions(host, self._options._makeContext())

0 comments on commit 561eebe

Please sign in to comment.