diff options
author | Aldo Cortesi <aldo@nullcube.com> | 2012-07-22 12:49:59 +1200 |
---|---|---|
committer | Aldo Cortesi <aldo@nullcube.com> | 2012-07-22 12:49:59 +1200 |
commit | 30a69883925a4ee01b6eb0586e8295fa72458b16 (patch) | |
tree | 42aae01b8e408152c3b946b87688686646f1e943 | |
parent | 1e93e42883ba43642b4e2bfb231ee74a323706c7 (diff) | |
download | mitmproxy-30a69883925a4ee01b6eb0586e8295fa72458b16.tar.gz mitmproxy-30a69883925a4ee01b6eb0586e8295fa72458b16.tar.bz2 mitmproxy-30a69883925a4ee01b6eb0586e8295fa72458b16.zip |
pathod: handle keyboard interrupts and SSL errors.
-rwxr-xr-x | pathoc | 33 |
1 files changed, 21 insertions, 12 deletions
@@ -49,15 +49,24 @@ if __name__ == "__main__": else: port = args.port - 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) - if args.timeout: - p.settimeout(args.timeout) - p.print_requests(args.request, args.verbose, args.reqdump) + try: + 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: + try: + p.convert_to_ssl(sni=args.sni) + except tcp.NetLibError, v: + print "\n>> %s"%v + continue + if args.timeout: + p.settimeout(args.timeout) + p.print_requests(args.request, args.verbose, args.reqdump) + sys.stdout.flush() + except KeyboardInterrupt: + pass + |