| Conditions | 5 |
| Total Lines | 18 |
| Code Lines | 15 |
| Lines | 0 |
| Ratio | 0 % |
| Tests | 1 |
| CRAP Score | 24.6646 |
| Changes | 0 | ||
| 1 | 2 | from __future__ import absolute_import |
|
| 10 | 2 | def map_versions_to_rule_ids(reference_file_name): |
|
| 11 | try: |
||
| 12 | reference_root = ET.parse(reference_file_name) |
||
| 13 | except IOError: |
||
| 14 | print( |
||
| 15 | "INFO: DISA STIG Reference file not found for this platform: %s" % |
||
| 16 | reference_file_name) |
||
| 17 | sys.exit(0) |
||
| 18 | |||
| 19 | reference_rules = reference_root.findall('.//{%s}Rule' % XCCDF11_NS) |
||
| 20 | |||
| 21 | dictionary = {} |
||
| 22 | |||
| 23 | for rule in reference_rules: |
||
| 24 | version = rule.find('.//{%s}version' % XCCDF11_NS) |
||
| 25 | if version is not None and version.text: |
||
| 26 | dictionary[version.text] = rule.get('id') |
||
| 27 | return dictionary |
||
| 28 |