Mercurial > public > mercurial-scm > hg-stable
diff mercurial/hgweb/server.py @ 29553:cd3e58862cab
hgweb: pass ui into preparehttpserver
Upcoming patches will need the built-in HTTPS server to be more
configurable.
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Wed, 13 Jul 2016 00:14:50 -0700 |
parents | 33770d2b6cf9 |
children | 121d11814c62 |
line wrap: on
line diff
--- a/mercurial/hgweb/server.py Thu Jul 14 03:12:09 2016 -0700 +++ b/mercurial/hgweb/server.py Wed Jul 13 00:14:50 2016 -0700 @@ -58,7 +58,7 @@ url_scheme = 'http' @staticmethod - def preparehttpserver(httpserver, ssl_cert): + def preparehttpserver(httpserver, ui): """Prepare .socket of new HTTPServer instance""" pass @@ -222,15 +222,17 @@ url_scheme = 'https' @staticmethod - def preparehttpserver(httpserver, ssl_cert): + def preparehttpserver(httpserver, ui): try: import ssl ssl.wrap_socket except ImportError: raise error.Abort(_("SSL support is unavailable")) + + certfile = ui.config('web', 'certificate') httpserver.socket = ssl.wrap_socket( httpserver.socket, server_side=True, - certfile=ssl_cert, ssl_version=ssl.PROTOCOL_TLSv1) + certfile=certfile, ssl_version=ssl.PROTOCOL_TLSv1) def setup(self): self.connection = self.request @@ -264,7 +266,7 @@ self.daemon_threads = True self.application = app - handler.preparehttpserver(self, ui.config('web', 'certificate')) + handler.preparehttpserver(self, ui) prefix = ui.config('web', 'prefix', '') if prefix: