diff options
author | Aldo Cortesi <aldo@nullcube.com> | 2015-04-19 10:43:16 +1200 |
---|---|---|
committer | Aldo Cortesi <aldo@nullcube.com> | 2015-04-19 10:43:16 +1200 |
commit | f332674ce1fb0780a887406c0076b88cc7ea8ad9 (patch) | |
tree | 1bf370a9050b306aefccd49f2e2ec3136e5f225a /libpathod/pathod.py | |
parent | d8b79e99829d307dd9cd8dc03872c90236ca173f (diff) | |
download | mitmproxy-f332674ce1fb0780a887406c0076b88cc7ea8ad9.tar.gz mitmproxy-f332674ce1fb0780a887406c0076b88cc7ea8ad9.tar.bz2 mitmproxy-f332674ce1fb0780a887406c0076b88cc7ea8ad9.zip |
100% unit tests
- Add SANs to pathod SSLConfig
- Fix tricky SSL establishment error test. Lets see if it's platform portable.
Diffstat (limited to 'libpathod/pathod.py')
-rw-r--r-- | libpathod/pathod.py | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/libpathod/pathod.py b/libpathod/pathod.py index 1506e743..457bdf61 100644 --- a/libpathod/pathod.py +++ b/libpathod/pathod.py @@ -22,9 +22,15 @@ class PathodError(Exception): class SSLOptions: - def __init__(self, confdir=CONFDIR, cn=None, not_after_connect=None, - request_client_cert=False, sslversion=tcp.SSLv23_METHOD, - ciphers=None, certs=None): + def __init__(self, + confdir=CONFDIR, + cn=None, + sans=(), + not_after_connect=None, + request_client_cert=False, + sslversion=tcp.SSLv23_METHOD, + ciphers=None, + certs=None): self.confdir = confdir self.cn = cn self.certstore = certutils.CertStore.from_store( @@ -37,13 +43,14 @@ class SSLOptions: self.request_client_cert = request_client_cert self.ciphers = ciphers self.sslversion = sslversion + self.sans = sans def get_cert(self, name): if self.cn: name = self.cn elif not name: name = DEFAULT_CERT_DOMAIN - return self.certstore.get_cert(name, []) + return self.certstore.get_cert(name, self.sans) class PathodHandler(tcp.BaseHandler): @@ -51,7 +58,9 @@ class PathodHandler(tcp.BaseHandler): sni = None def info(self, s): - logger.info("%s:%s: %s" % (self.address.host, self.address.port, str(s))) + logger.info( + "%s:%s: %s" % (self.address.host, self.address.port, str(s)) + ) def handle_sni(self, connection): self.sni = connection.get_servername() |