Mercurial > hg
view tests/test-demandimport.py @ 29555:121d11814c62
hgweb: use sslutil.wrapserversocket()
This patch transitions the built-in HTTPS server to use sslutil for
creating the server socket.
As part of this transition, we implement developer-only config options
to control CA loading and whether to require client certificates. This
eliminates the need for the custom extension in test-https.t to define
these.
There is a slight change in behavior with regards to protocol
selection. Before, we would always use the TLS 1.0 constant to define
the protocol version. This would *only* use TLS 1.0. sslutil defaults
to TLS 1.0+. So this patch improves the security of `hg serve` out of
the box by allowing it to use TLS 1.1 and 1.2 (if available).
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Tue, 12 Jul 2016 23:12:03 -0700 |
parents | 16390f4cccf0 |
children | 4b50e1f922a0 |
line wrap: on
line source
from __future__ import print_function from mercurial import demandimport demandimport.enable() import os if os.name != 'nt': try: import distutils.msvc9compiler print('distutils.msvc9compiler needs to be an immediate ' 'importerror on non-windows platforms') distutils.msvc9compiler except ImportError: pass import re rsub = re.sub def f(obj): l = repr(obj) l = rsub("0x[0-9a-fA-F]+", "0x?", l) l = rsub("from '.*'", "from '?'", l) l = rsub("'<[a-z]*>'", "'<whatever>'", l) return l import os print("os =", f(os)) print("os.system =", f(os.system)) print("os =", f(os)) from mercurial import util print("util =", f(util)) print("util.system =", f(util.system)) print("util =", f(util)) print("util.system =", f(util.system)) from mercurial import hgweb print("hgweb =", f(hgweb)) print("hgweb_mod =", f(hgweb.hgweb_mod)) print("hgweb =", f(hgweb)) import re as fred print("fred =", f(fred)) import sys as re print("re =", f(re)) print("fred =", f(fred)) print("fred.sub =", f(fred.sub)) print("fred =", f(fred)) print("re =", f(re)) print("re.stderr =", f(re.stderr)) print("re =", f(re)) demandimport.disable() os.environ['HGDEMANDIMPORT'] = 'disable' demandimport.enable() from mercurial import node print("node =", f(node))