| @@ 54-86 (lines=33) @@ | ||
| 51 | sys.exit() |
|
| 52 | ||
| 53 | ||
| 54 | def combine_reports(gmp, args): |
|
| 55 | new_uuid = generate_uuid() |
|
| 56 | combined_report = e.Element( |
|
| 57 | 'report', |
|
| 58 | { |
|
| 59 | 'id': new_uuid, |
|
| 60 | 'format_id': 'd5da9f67-8551-4e51-807b-b6a873d70e34', |
|
| 61 | 'extension': 'xml', |
|
| 62 | 'content_type': 'text/xml', |
|
| 63 | }, |
|
| 64 | ) |
|
| 65 | report_elem = e.Element('report', {'id': new_uuid}) |
|
| 66 | ports_elem = e.Element('ports', {'start': '1', 'max': '-1'}) |
|
| 67 | results_elem = e.Element('results', {'start': '1', 'max': '-1'}) |
|
| 68 | combined_report.append(report_elem) |
|
| 69 | report_elem.append(results_elem) |
|
| 70 | ||
| 71 | if 'first_task' in args.script: |
|
| 72 | arg_len = args.script[1:-1] |
|
| 73 | else: |
|
| 74 | arg_len = args.script[1:] |
|
| 75 | ||
| 76 | hosts = [] |
|
| 77 | for argument in arg_len: |
|
| 78 | current_report = gmp.get_report(argument, details=True)[0] |
|
| 79 | for port in current_report.xpath('report/ports/port'): |
|
| 80 | ports_elem.append(port) |
|
| 81 | for result in current_report.xpath('report/results/result'): |
|
| 82 | results_elem.append(result) |
|
| 83 | for host in current_report.xpath('report/host'): |
|
| 84 | report_elem.append(host) |
|
| 85 | ||
| 86 | return combined_report |
|
| 87 | ||
| 88 | ||
| 89 | def send_report(gmp, args, combined_report): |
|
| @@ 36-68 (lines=33) @@ | ||
| 33 | print(report) |
|
| 34 | ||
| 35 | ||
| 36 | def combine_reports(gmp, args): |
|
| 37 | new_uuid = generate_uuid() |
|
| 38 | combined_report = e.Element( |
|
| 39 | 'report', |
|
| 40 | { |
|
| 41 | 'id': new_uuid, |
|
| 42 | 'format_id': 'd5da9f67-8551-4e51-807b-b6a873d70e34', |
|
| 43 | 'extension': 'xml', |
|
| 44 | 'content_type': 'text/xml', |
|
| 45 | }, |
|
| 46 | ) |
|
| 47 | report_elem = e.Element('report', {'id': new_uuid}) |
|
| 48 | ports_elem = e.Element('ports', {'start': '1', 'max': '-1'}) |
|
| 49 | results_elem = e.Element('results', {'start': '1', 'max': '-1'}) |
|
| 50 | combined_report.append(report_elem) |
|
| 51 | report_elem.append(results_elem) |
|
| 52 | ||
| 53 | if 'first_task' in args.script: |
|
| 54 | arg_len = args.script[1:-1] |
|
| 55 | else: |
|
| 56 | arg_len = args.script[1:] |
|
| 57 | ||
| 58 | hosts = [] |
|
| 59 | for argument in arg_len: |
|
| 60 | current_report = gmp.get_report(argument, details=True)[0] |
|
| 61 | for port in current_report.xpath('report/ports/port'): |
|
| 62 | ports_elem.append(port) |
|
| 63 | for result in current_report.xpath('report/results/result'): |
|
| 64 | results_elem.append(result) |
|
| 65 | for host in current_report.xpath('report/host'): |
|
| 66 | report_elem.append(host) |
|
| 67 | ||
| 68 | return combined_report |
|
| 69 | ||
| 70 | ||
| 71 | def parse_args(args): # pylint: disable=unused-argument |
|