aboutsummaryrefslogtreecommitdiffstats
path: root/libpathod/pathod.py
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2015-04-19 10:43:16 +1200
committerAldo Cortesi <aldo@nullcube.com>2015-04-19 10:43:16 +1200
commitf332674ce1fb0780a887406c0076b88cc7ea8ad9 (patch)
tree1bf370a9050b306aefccd49f2e2ec3136e5f225a /libpathod/pathod.py
parentd8b79e99829d307dd9cd8dc03872c90236ca173f (diff)
downloadmitmproxy-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.py19
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()