aboutsummaryrefslogtreecommitdiffstats
path: root/netlib
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2014-03-05 13:43:52 +1300
committerAldo Cortesi <aldo@nullcube.com>2014-03-05 13:43:52 +1300
commit86730a9a4c3a14b510590aa97a8ae8989cb6ec5e (patch)
tree3b5aa620721f8be1548ac3571550a46d61694fac /netlib
parent0c3bc1cff2a8b1c4c425be5c1ca11c4b850bcc68 (diff)
downloadmitmproxy-86730a9a4c3a14b510590aa97a8ae8989cb6ec5e.tar.gz
mitmproxy-86730a9a4c3a14b510590aa97a8ae8989cb6ec5e.tar.bz2
mitmproxy-86730a9a4c3a14b510590aa97a8ae8989cb6ec5e.zip
Handler convert_to_ssl now takes a key object, not a path.
Diffstat (limited to 'netlib')
-rw-r--r--netlib/tcp.py2
-rw-r--r--netlib/test.py8
2 files changed, 7 insertions, 3 deletions
diff --git a/netlib/tcp.py b/netlib/tcp.py
index 0dff807b..83059bc2 100644
--- a/netlib/tcp.py
+++ b/netlib/tcp.py
@@ -375,7 +375,7 @@ class BaseHandler(_Connection):
if handle_sni:
# SNI callback happens during do_handshake()
ctx.set_tlsext_servername_callback(handle_sni)
- ctx.use_privatekey_file(key)
+ ctx.use_privatekey(key)
ctx.use_certificate(cert.x509)
if request_client_cert:
def ver(*args):
diff --git a/netlib/test.py b/netlib/test.py
index 2f6a7107..b88b3586 100644
--- a/netlib/test.py
+++ b/netlib/test.py
@@ -1,5 +1,6 @@
import threading, Queue, cStringIO
import tcp, certutils
+import OpenSSL
class ServerThread(threading.Thread):
def __init__(self, server):
@@ -49,6 +50,8 @@ class TServer(tcp.TCPServer):
self.handler_klass = handler_klass
self.last_handler = None
+
+
def handle_client_connection(self, request, client_address):
h = self.handler_klass(request, client_address, self)
self.last_handler = h
@@ -56,6 +59,8 @@ class TServer(tcp.TCPServer):
cert = certutils.SSLCert.from_pem(
file(self.ssl["cert"], "rb").read()
)
+ raw = file(self.ssl["key"], "rb").read()
+ key = OpenSSL.crypto.load_privatekey(OpenSSL.crypto.FILETYPE_PEM, raw)
if self.ssl["v3_only"]:
method = tcp.SSLv3_METHOD
options = tcp.OP_NO_SSLv2|tcp.OP_NO_TLSv1
@@ -63,8 +68,7 @@ class TServer(tcp.TCPServer):
method = tcp.SSLv23_METHOD
options = None
h.convert_to_ssl(
- cert,
- self.ssl["key"],
+ cert, key,
method = method,
options = options,
handle_sni = getattr(h, "handle_sni", None),