aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/proxy
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2014-11-15 16:14:08 +1300
committerAldo Cortesi <aldo@nullcube.com>2014-11-15 16:14:08 +1300
commit24c4df07e39d537a631c111df2eef36e8cb1bd70 (patch)
treeded0572433d56d9b5e84d3f4b9eb34ce98e1320f /libmproxy/proxy
parent645a4a0c044a5f18f4ee03cf76ad097590e6ba2c (diff)
downloadmitmproxy-24c4df07e39d537a631c111df2eef36e8cb1bd70.tar.gz
mitmproxy-24c4df07e39d537a631c111df2eef36e8cb1bd70.tar.bz2
mitmproxy-24c4df07e39d537a631c111df2eef36e8cb1bd70.zip
First-order integration of configargparser to add config file support
Diffstat (limited to 'libmproxy/proxy')
-rw-r--r--libmproxy/proxy/config.py35
1 files changed, 25 insertions, 10 deletions
diff --git a/libmproxy/proxy/config.py b/libmproxy/proxy/config.py
index a228192a..3d373a28 100644
--- a/libmproxy/proxy/config.py
+++ b/libmproxy/proxy/config.py
@@ -7,7 +7,7 @@ from .primitives import RegularProxyMode, TransparentProxyMode, UpstreamProxyMod
TRANSPARENT_SSL_PORTS = [443, 8443]
CONF_BASENAME = "mitmproxy"
-CONF_DIR = "~/.mitmproxy"
+CA_DIR = "~/.mitmproxy"
class HostMatcher(object):
@@ -28,12 +28,27 @@ class HostMatcher(object):
class ProxyConfig:
- def __init__(self, host='', port=8080, server_version=version.NAMEVERSION,
- confdir=CONF_DIR, clientcerts=None,
- no_upstream_cert=False, body_size_limit=None,
- mode=None, upstream_server=None, http_form_in=None, http_form_out=None,
- authenticator=None, ignore_hosts=[], tcp_hosts=[],
- ciphers=None, certs=[], certforward=False, ssl_ports=TRANSPARENT_SSL_PORTS):
+ def __init__(
+ self,
+ host='',
+ port=8080,
+ server_version=version.NAMEVERSION,
+ cadir=CA_DIR,
+ clientcerts=None,
+ no_upstream_cert=False,
+ body_size_limit=None,
+ mode=None,
+ upstream_server=None,
+ http_form_in=None,
+ http_form_out=None,
+ authenticator=None,
+ ignore_hosts=[],
+ tcp_hosts=[],
+ ciphers=None,
+ certs=[],
+ certforward=False,
+ ssl_ports=TRANSPARENT_SSL_PORTS
+ ):
self.host = host
self.port = port
self.server_version = server_version
@@ -60,8 +75,8 @@ class ProxyConfig:
self.check_ignore = HostMatcher(ignore_hosts)
self.check_tcp = HostMatcher(tcp_hosts)
self.authenticator = authenticator
- self.confdir = os.path.expanduser(confdir)
- self.certstore = certutils.CertStore.from_store(self.confdir, CONF_BASENAME)
+ self.cadir = os.path.expanduser(cadir)
+ self.certstore = certutils.CertStore.from_store(self.cadir, CONF_BASENAME)
for spec, cert in certs:
self.certstore.add_cert_file(spec, cert)
self.certforward = certforward
@@ -136,7 +151,7 @@ def process_proxy_options(parser, options):
return ProxyConfig(
host=options.addr,
port=options.port,
- confdir=options.confdir,
+ cadir=options.cadir,
clientcerts=options.clientcerts,
no_upstream_cert=options.no_upstream_cert,
body_size_limit=body_size_limit,