aboutsummaryrefslogtreecommitdiffstats
path: root/pathod
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2013-01-05 15:25:09 +1300
committerAldo Cortesi <aldo@nullcube.com>2013-01-05 15:25:09 +1300
commit3886ccae9379d065e54e0eb7e961992ff3c0ee62 (patch)
tree33db7b5c057f508ce02aebac562e58fecfe7ddf2 /pathod
parentd7f641c6ee1033232110c9b42c3b48cc5b719520 (diff)
downloadmitmproxy-3886ccae9379d065e54e0eb7e961992ff3c0ee62.tar.gz
mitmproxy-3886ccae9379d065e54e0eb7e961992ff3c0ee62.tar.bz2
mitmproxy-3886ccae9379d065e54e0eb7e961992ff3c0ee62.zip
Provisional proxy mode support for pathod.
Diffstat (limited to 'pathod')
-rwxr-xr-xpathod30
1 files changed, 20 insertions, 10 deletions
diff --git a/pathod b/pathod
index 27e7e040..685352ba 100755
--- a/pathod
+++ b/pathod
@@ -36,12 +36,13 @@ def main(parser, args):
parser.error("Both --certfile and --keyfile must be specified.")
if args.ssl:
- ssl = dict(
+ ssloptions = dict(
keyfile = args.ssl_keyfile or utils.data.path("resources/server.key"),
certfile = args.ssl_certfile or utils.data.path("resources/server.crt"),
+ ssl_after_connect = args.ssl_after_connect
)
else:
- ssl = None
+ ssloptions = None
alst = []
for i in args.anchors:
@@ -81,7 +82,7 @@ def main(parser, args):
pd = pathod.Pathod(
(args.address, args.port),
craftanchor = args.craftanchor,
- ssloptions = ssl,
+ ssloptions = ssloptions,
staticdir = args.staticdir,
anchors = alst,
sizelimit = sizelimit,
@@ -93,7 +94,7 @@ def main(parser, args):
logreq = args.logreq,
logresp = args.logresp,
hexdump = args.hexdump,
- explain = args.explain
+ explain = args.explain,
)
except pathod.PathodError, v:
parser.error(str(v))
@@ -128,10 +129,6 @@ if __name__ == "__main__":
help='Daemonize.'
)
parser.add_argument(
- "-s", dest='ssl', default=False, action="store_true",
- help='Serve with SSL.'
- )
- parser.add_argument(
"-t", dest="timeout", type=int, default=None,
help="Connection timeout"
)
@@ -155,11 +152,24 @@ if __name__ == "__main__":
"--nocraft", dest='nocraft', default=False, action="store_true",
help='Disable response crafting. If anchors are specified, they still work.'
)
- parser.add_argument(
+
+
+ group = parser.add_argument_group(
+ 'SSL',
+ )
+ group.add_argument(
+ "-C", dest='ssl_after_connect', default=False, action="store_true",
+ help='Expect SSL after a CONNECT request.'
+ )
+ group.add_argument(
+ "-s", dest='ssl', default=False, action="store_true",
+ help='Serve with SSL.'
+ )
+ group.add_argument(
"--keyfile", dest='ssl_keyfile', default=None, type=str,
help='SSL key file. If not specified, a default key is used.'
)
- parser.add_argument(
+ group.add_argument(
"--certfile", dest='ssl_certfile', default=None, type=str,
help='SSL cert file. If not specified, a default cert is used.'
)