aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xpathoc53
-rw-r--r--todo11
2 files changed, 38 insertions, 26 deletions
diff --git a/pathoc b/pathoc
index e5cc9bf4..7f555566 100755
--- a/pathoc
+++ b/pathoc
@@ -5,12 +5,34 @@ from netlib import tcp
if __name__ == "__main__":
parser = argparse.ArgumentParser(description='A perverse HTTP client.')
- parser.add_argument('--port', "-p", type=int, default=None, help="Port. Defaults to 80, or 443 if SSL is active.")
- parser.add_argument('--ssl', "-s", action="store_true", default=False, help="Connect with SSL.")
- parser.add_argument('--sni', "-n", type=str, default=False, help="SSL Server Name Indication.")
- parser.add_argument('--verbose', '-v', action='count')
- parser.add_argument('host', type=str, help='Host to connect to')
- parser.add_argument('request', type=str, nargs="+", help='Request specification')
+ parser.add_argument(
+ "-n", dest='repeat', default=1, type=int, metavar="N",
+ 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(
+ "-s", dest="ssl", action="store_true", default=False,
+ help="Connect with SSL."
+ )
+ parser.add_argument(
+ "-i", dest="sni", type=str, default=False,
+ help="SSL Server Name Indication."
+ )
+ parser.add_argument(
+ "-v", dest="verbose", action='count',
+ help="Increase verbosity."
+ )
+ parser.add_argument(
+ 'host', type=str,
+ help='Host to connect to'
+ )
+ parser.add_argument(
+ 'request', type=str, nargs="+",
+ help='Request specification'
+ )
args = parser.parse_args()
@@ -19,12 +41,13 @@ if __name__ == "__main__":
else:
port = args.port
- p = pathoc.Pathoc(args.host, port)
- try:
- p.connect()
- except tcp.NetLibError, v:
- print >> sys.stderr, str(v)
- sys.exit(1)
- if args.ssl:
- p.convert_to_ssl(sni=args.sni)
- p.print_requests(args.request, args.verbose)
+ for i in range(args.repeat):
+ p = pathoc.Pathoc(args.host, port)
+ try:
+ p.connect()
+ except tcp.NetLibError, v:
+ print >> sys.stderr, str(v)
+ sys.exit(1)
+ if args.ssl:
+ p.convert_to_ssl(sni=args.sni)
+ p.print_requests(args.request, args.verbose)
diff --git a/todo b/todo
deleted file mode 100644
index 98e4790c..00000000
--- a/todo
+++ /dev/null
@@ -1,11 +0,0 @@
-
-0.2:
- - API
- - Anchor management
- - Client library
- - Unit testing examples
- - Specify if server should add Server and Date headers
- - Shortcuts for cookies, auth
- - Various SSL errors (expired certs, etc.)
- - Muck with caching
-