def _select_and_assign_certificate(self, connection: ssl.SSLSocket, server_name: str, ssl_context: SSLContext): certificate = self.select_certificate(server_name) new_context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER) new_context.load_cert_chain(certificate["pem_file"], certificate["key_file"]) connection.context = new_context self._server_name = certificate["server_name"] self._logger.info("Successfully loaded TLS certificate and key")