Add option to disable homeserver SSL verification

This commit is contained in:
Tulir Asokan
2018-03-07 21:18:44 +02:00
parent 30768d0a06
commit 6ff89d1fe4
4 changed files with 11 additions and 3 deletions
+1
View File
@@ -2,6 +2,7 @@
homeserver:
address: https://matrix.org
domain: matrix.org
verify_ssl: true
# Application service host/registration related details
# Changing these values requires regeneration of the registration.
+6 -2
View File
@@ -28,9 +28,10 @@ from .state_store import StateStore
class AppService:
def __init__(self, server, domain, as_token, hs_token, bot_localpart, loop=None, log=None,
query_user=None, query_alias=None):
verify_ssl=True, query_user=None, query_alias=None):
self.server = server
self.domain = domain
self.verify_ssl = verify_ssl
self.as_token = as_token
self.hs_token = hs_token
self.bot_mxid = f"@{bot_localpart}:{domain}"
@@ -80,7 +81,10 @@ class AppService:
@contextmanager
def run(self, host="127.0.0.1", port=8080):
self._http_session = aiohttp.ClientSession(loop=self.loop)
connector = None
if self.server.startswith("https://") and not self.verify_ssl:
connector = aiohttp.TCPConnector(verify_ssl=False)
self._http_session = aiohttp.ClientSession(loop=self.loop, connector=connector)
self._intent = HTTPAPI(base_url=self.server, domain=self.domain, bot_mxid=self.bot_mxid,
token=self.as_token, log=self.log, state_store=self.state_store,
client_session=self._http_session).bot_intent()
+2 -1
View File
@@ -85,7 +85,8 @@ loop = asyncio.get_event_loop()
appserv = AppService(config["homeserver.address"], config["homeserver.domain"],
config["appservice.as_token"], config["appservice.hs_token"],
config["appservice.bot_username"], log="mau.as", loop=loop)
config["appservice.bot_username"], log="mau.as", loop=loop,
verify_ssl=config["homeserver.verify_ssl"])
context = Context(appserv, db_session, config, loop, None, None, telethon_session_container)
+2
View File
@@ -183,6 +183,8 @@ class Config(DictWithRecursion):
"Use inline images instead of m.image to make rich captions possible.\n"
"N.B. Inline images are not supported on all clients (e.g. Riot iOS).")
self.comment_newline("bridge.inline_images")
if "homeserver.verify_ssl" not in self:
self["homeserver.verify_ssl"] = True
self["version"] = 2
return self["version"]