diff options
Diffstat (limited to 'libmproxy')
-rw-r--r-- | libmproxy/flow.py | 2 | ||||
-rw-r--r-- | libmproxy/proxy.py | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/libmproxy/flow.py b/libmproxy/flow.py index edd10f49..59df04b2 100644 --- a/libmproxy/flow.py +++ b/libmproxy/flow.py @@ -359,7 +359,7 @@ class Request(HTTPMsg): """ Returns a URL string, constructed from the Request's URL compnents. """ - return utils.unparse_url(self.scheme, self.host, self.port, self.path) + return utils.unparse_url(self.scheme, self.host.decode("idna"), self.port, self.path) def set_url(self, url): """ diff --git a/libmproxy/proxy.py b/libmproxy/proxy.py index d96c8df4..2294a894 100644 --- a/libmproxy/proxy.py +++ b/libmproxy/proxy.py @@ -238,7 +238,7 @@ class ProxyHandler(tcp.BaseHandler): if self.config.upstream_cert: cert = certutils.get_remote_cert(host, port, sni) sans = cert.altnames - host = cert.cn + host = cert.cn.decode("utf8").encode("idna") ret = certutils.dummy_cert(self.config.certdir, self.config.cacert, host, sans) time.sleep(self.config.cert_wait_time) if not ret: @@ -255,7 +255,7 @@ class ProxyHandler(tcp.BaseHandler): return line def handle_sni(self, conn): - self.sni = conn.get_servername() + self.sni = conn.get_servername().decode("utf8").encode("idna") def read_request(self, client_conn): if self.config.transparent_proxy: |