aboutsummaryrefslogtreecommitdiffstats
path: root/libpathod/cmdline.py
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2014-10-25 16:34:19 +1300
committerAldo Cortesi <aldo@nullcube.com>2014-10-25 16:34:19 +1300
commit384abbfdd5830467e4876ea164a49433084132ee (patch)
tree3371097acb947fd5236d33e59ba1fbe6e3aa25a0 /libpathod/cmdline.py
parent6d8431ab3e96568b3579a85e680371fd20c961aa (diff)
downloadmitmproxy-384abbfdd5830467e4876ea164a49433084132ee.tar.gz
mitmproxy-384abbfdd5830467e4876ea164a49433084132ee.tar.bz2
mitmproxy-384abbfdd5830467e4876ea164a49433084132ee.zip
Nicer port specification for pathoc
Diffstat (limited to 'libpathod/cmdline.py')
-rw-r--r--libpathod/cmdline.py23
1 files changed, 14 insertions, 9 deletions
diff --git a/libpathod/cmdline.py b/libpathod/cmdline.py
index affc4015..3b1a86bf 100644
--- a/libpathod/cmdline.py
+++ b/libpathod/cmdline.py
@@ -39,22 +39,19 @@ def go_pathoc():
help='Repeat requests N times'
)
parser.add_argument(
- "-p", dest="port", type=int, default=None,
- help="Port. Defaults to 80, or 443 if SSL is active"
- )
- parser.add_argument(
"-t", dest="timeout", type=int, default=None,
help="Connection timeout"
)
parser.add_argument(
'host', type=str,
- help='Host to connect to'
+ metavar = "host[:port]",
+ help='Host and port to connect to'
)
parser.add_argument(
'request', type=str, nargs="+",
help="""
- Request specification, or path to a file containing a request
- specifcation
+ Request specification, or path to a file containing request
+ specifcations
"""
)
group = parser.add_argument_group(
@@ -127,10 +124,18 @@ def go_pathoc():
args = parser.parse_args()
+ args.port = None
+ if ":" in args.host:
+ h, p = args.host.rsplit(":", 1)
+ try:
+ p = int(p)
+ except ValueError:
+ parser.error("Invalid port in host spec: %s" % args.host)
+ args.host = h
+ args.port = p
+
if args.port is None:
args.port = 443 if args.ssl else 80
- else:
- args.port = args.port
try:
args.ignorecodes = [int(i) for i in args.ignorecodes.split(",") if i]