From 6de5eba4a333ccf5a9a5ae7c609af06051cee8b5 Mon Sep 17 00:00:00 2001 From: Sean Whalen Date: Tue, 20 Mar 2018 10:18:42 -0400 Subject: [PATCH] More refactoring --- parsedmarc/__init__.py | 2 +- parsedmarc/cli.py | 20 ++------------------ 2 files changed, 3 insertions(+), 19 deletions(-) diff --git a/parsedmarc/__init__.py b/parsedmarc/__init__.py index 13df735..c6bfc4d 100644 --- a/parsedmarc/__init__.py +++ b/parsedmarc/__init__.py @@ -777,7 +777,7 @@ def parse_forensic_report(feedback_report, sample, sample_headers_only, parsed_sample["delivered_to"] = list( map(lambda x: convert_address(x), parsed_sample["delivered_to"]) - ) + ) if "attachments" not in parsed_sample: parsed_sample["attachments"] = [] diff --git a/parsedmarc/cli.py b/parsedmarc/cli.py index aae13b4..70e64c2 100644 --- a/parsedmarc/cli.py +++ b/parsedmarc/cli.py @@ -17,32 +17,16 @@ def _main(): """Called when the module in executed""" def process_reports(reports_): try: + print(json.dumps(reports_, ensure_ascii=False, indent=2), "\n") if args.save_aggregate: for report in reports_["aggregate_reports"]: elastic.save_aggregate_report_to_elasticsearch(report) if args.save_forensic: for report in reports_["forensic_reports"]: elastic.save_forensic_report_to_elasticsearch(report) - print(json.dumps(reports_, ensure_ascii=False, indent=2), "\n") except elastic.AlreadySaved as exception: logger.warning(exception.__str__()) - def idle_callback(): - try: - reports_ = get_dmarc_reports_from_inbox(args.host, - args.user, - args.password, - reports_folder=rf, - archive_folder=af, - delete=args.delete, - test=args.test) - - process_reports(reports_) - - except IMAPError as exception: - print("IMAP Error: {0}".format(exception.__str__())) - exit(-1) - arg_parser = ArgumentParser(description="Parses DMARC reports") arg_parser.add_argument("file_path", nargs="*", help="one or more paths to aggregate or forensic " @@ -192,7 +176,7 @@ def _main(): logger.warning("The IMAP Connection is now in IDLE mode. " "Quit with ^c") try: - watch_inbox(args.host, args.user, args.password, idle_callback, + watch_inbox(args.host, args.user, args.password, process_reports, reports_folder=args.reports_folder, archive_folder=args.archive_folder, delete=args.delete, test=args.test, nameservers=args.nameservers,