[PATCH 4/4] added a new combinefixes.py writen in python and adds fixing of special characters "<", ">", "&"
Shawn Wells
shawn at redhat.com
Fri Mar 29 16:48:30 UTC 2013
On 3/29/13 9:54 AM, Brian Millett wrote:
> Signed-off-by: Brian Millett <bmillett at gmail.com>
> ---
> RHEL6/transforms/combinefixes.py | 37 +++++++++++++++++++++++++++++++++++++
> 1 file changed, 37 insertions(+)
> create mode 100755 RHEL6/transforms/combinefixes.py
>
> diff --git a/RHEL6/transforms/combinefixes.py b/RHEL6/transforms/combinefixes.py
> new file mode 100755
> index 0000000..4c4bb55
> --- /dev/null
> +++ b/RHEL6/transforms/combinefixes.py
> @@ -0,0 +1,37 @@
> +#!/usr/bin/python
> +
> +import sys, os
> +
> +header = '''<fix-group id="bash" system="urn:xccdf:fix:script:sh" xmlns="http://checklists.nist.gov/xccdf/1.1">\n'''
> +footer = '</fix-group>\n'
> +
> +def encode(text):
> + text = text.replace('&','&')
> + text = text.replace('>','>')
> + text = text.replace('<','<')
> + return text
> +
> +def main():
> + if len(sys.argv) < 2:
> + print "Provide a directory name, which contains the fixes."
> + sys.exit(1)
> +
> + fixDir = sys.argv[1]
> + output = sys.argv[2]
> + out = open(output,'w')
> + out.write(header)
> + for filename in os.listdir(fixDir):
> + if filename.endswith(".sh"):
> + body = ""
> + with open( fixDir + "/" + filename, 'r') as f:
> + body = body + encode(f.read())
> + fixName = os.path.splitext(filename)[0]
> + out.write("<fix rule=\""+fixName+"\">\n")
> + out.write(body+"\n")
> + out.write("</fix>\n")
> +
> + out.write(footer)
> + sys.exit(0)
> +
> +if __name__ == "__main__":
> + main()
Ack
More information about the scap-security-guide
mailing list