This patch enhances the change introduced in: [1] https://git.fedorahosted.org/cgit/scap-security-guide.git/commit/?id=7031613
it to be yet more verbose. Instead of reporting just file name, the error happened in, report also what kind of error happened & particular line number of that processed file, causing / leading to this error. Current verify-input-sanity.py output: utils]$ ./verify-input-sanity.py XML syntax error in file: src/input/checks/platform/rhel6-cpe-dictionary.xml XML syntax error in file: src/input/auxiliary/stig_overlay.xml Output once the change is applied: utils]$ ./verify-input-sanity.py XML syntax error in file src/input/checks/platform/rhel6-cpe-dictionary.xml: XML declaration allowed only at the start of the document, line 1, column 49 XML syntax error in file src/input/auxiliary/stig_overlay.xml: XML declaration allowed only at the start of the document, line 1, column 49 The patch changes the behaviour all across the content (i.e. for verify-input-sanity.py foreach of RHEL/6, RHEL/7, Fedora, Openstack & RHEVM3 -- tested for all cases, works fine). Please review. Thank you && Regards, Jan. -- Jan iankko Lieskovsky / Red Hat Security Technologies Team
From 3de86a9c94c5b2fdf804183b54c2585802d65841 Mon Sep 17 00:00:00 2001 From: Jan Lieskovsky <[email protected]> Date: Mon, 7 Jul 2014 15:05:52 +0200 Subject: [PATCH] [*/utils/verify-input-sanity.py] Enhance 7031613 change -- together with reporting in which file the error happened, report also what kind of error is it & particular line number of the corresponding file causing it Signed-off-by: Jan Lieskovsky <[email protected]> --- Fedora/utils/verify-input-sanity.py | 5 +++-- OpenStack/utils/verify-input-sanity.py | 5 +++-- RHEL/6/utils/verify-input-sanity.py | 5 +++-- RHEL/7/utils/verify-input-sanity.py | 5 +++-- RHEVM3/utils/verify-input-sanity.py | 5 +++-- 5 files changed, 15 insertions(+), 10 deletions(-) diff --git a/Fedora/utils/verify-input-sanity.py b/Fedora/utils/verify-input-sanity.py index 1e0ec2c..c685a9e 100755 --- a/Fedora/utils/verify-input-sanity.py +++ b/Fedora/utils/verify-input-sanity.py @@ -129,8 +129,9 @@ for xccdf_file in xccdf_xml_files: # parse the XML at this point try: tree = ET.fromstring(xccdf_xml_contents) - except ET.XMLSyntaxError: - print " XML syntax error in file: %s" % xccdf_file.replace("./", "src/input/") + except ET.XMLSyntaxError as e: + print " XML syntax error in file %s:" % xccdf_file.replace("./", "src/input/") + print " ", e.msg, "\n" # extract all of the rules that are defined within the XCCDF xccdf_rules = tree.findall(".//Rule") for xccdf_rule in xccdf_rules: diff --git a/OpenStack/utils/verify-input-sanity.py b/OpenStack/utils/verify-input-sanity.py index 1e0ec2c..c685a9e 100755 --- a/OpenStack/utils/verify-input-sanity.py +++ b/OpenStack/utils/verify-input-sanity.py @@ -129,8 +129,9 @@ for xccdf_file in xccdf_xml_files: # parse the XML at this point try: tree = ET.fromstring(xccdf_xml_contents) - except ET.XMLSyntaxError: - print " XML syntax error in file: %s" % xccdf_file.replace("./", "src/input/") + except ET.XMLSyntaxError as e: + print " XML syntax error in file %s:" % xccdf_file.replace("./", "src/input/") + print " ", e.msg, "\n" # extract all of the rules that are defined within the XCCDF xccdf_rules = tree.findall(".//Rule") for xccdf_rule in xccdf_rules: diff --git a/RHEL/6/utils/verify-input-sanity.py b/RHEL/6/utils/verify-input-sanity.py index 1e0ec2c..c685a9e 100755 --- a/RHEL/6/utils/verify-input-sanity.py +++ b/RHEL/6/utils/verify-input-sanity.py @@ -129,8 +129,9 @@ for xccdf_file in xccdf_xml_files: # parse the XML at this point try: tree = ET.fromstring(xccdf_xml_contents) - except ET.XMLSyntaxError: - print " XML syntax error in file: %s" % xccdf_file.replace("./", "src/input/") + except ET.XMLSyntaxError as e: + print " XML syntax error in file %s:" % xccdf_file.replace("./", "src/input/") + print " ", e.msg, "\n" # extract all of the rules that are defined within the XCCDF xccdf_rules = tree.findall(".//Rule") for xccdf_rule in xccdf_rules: diff --git a/RHEL/7/utils/verify-input-sanity.py b/RHEL/7/utils/verify-input-sanity.py index 1e0ec2c..c685a9e 100755 --- a/RHEL/7/utils/verify-input-sanity.py +++ b/RHEL/7/utils/verify-input-sanity.py @@ -129,8 +129,9 @@ for xccdf_file in xccdf_xml_files: # parse the XML at this point try: tree = ET.fromstring(xccdf_xml_contents) - except ET.XMLSyntaxError: - print " XML syntax error in file: %s" % xccdf_file.replace("./", "src/input/") + except ET.XMLSyntaxError as e: + print " XML syntax error in file %s:" % xccdf_file.replace("./", "src/input/") + print " ", e.msg, "\n" # extract all of the rules that are defined within the XCCDF xccdf_rules = tree.findall(".//Rule") for xccdf_rule in xccdf_rules: diff --git a/RHEVM3/utils/verify-input-sanity.py b/RHEVM3/utils/verify-input-sanity.py index 1e0ec2c..c685a9e 100755 --- a/RHEVM3/utils/verify-input-sanity.py +++ b/RHEVM3/utils/verify-input-sanity.py @@ -129,8 +129,9 @@ for xccdf_file in xccdf_xml_files: # parse the XML at this point try: tree = ET.fromstring(xccdf_xml_contents) - except ET.XMLSyntaxError: - print " XML syntax error in file: %s" % xccdf_file.replace("./", "src/input/") + except ET.XMLSyntaxError as e: + print " XML syntax error in file %s:" % xccdf_file.replace("./", "src/input/") + print " ", e.msg, "\n" # extract all of the rules that are defined within the XCCDF xccdf_rules = tree.findall(".//Rule") for xccdf_rule in xccdf_rules: -- 1.8.3.1
-- SCAP Security Guide mailing list [email protected] https://lists.fedorahosted.org/mailman/listinfo/scap-security-guide https://github.com/OpenSCAP/scap-security-guide/
