diff --git a/pathoc b/pathoc index e5cc9bf47..7f5555668 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 98e4790c6..000000000 --- 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 -