[Oval-commits] r154 - in trunk/oval-server: . src/dsa2oval/definition
Pavel Vinogradov
blaze-guest at alioth.debian.org
Mon Aug 20 04:28:15 UTC 2007
Author: blaze-guest
Date: 2007-08-20 04:28:14 +0000 (Mon, 20 Aug 2007)
New Revision: 154
Modified:
trunk/oval-server/Dsa2Oval.py
trunk/oval-server/src/dsa2oval/definition/generator.py
Log:
Implement -f option in generator
Modified: trunk/oval-server/Dsa2Oval.py
===================================================================
--- trunk/oval-server/Dsa2Oval.py 2007-08-20 03:46:56 UTC (rev 153)
+++ trunk/oval-server/Dsa2Oval.py 2007-08-20 04:28:14 UTC (rev 154)
@@ -12,9 +12,9 @@
import getopt
import logging
-import oval.definition.generator
-from oval.parser import dsa
-from oval.parser import wml
+from dsa2oval.definition import generator
+from dsa2oval.parser import dsa
+from dsa2oval.parser import wml
dsaref = {}
@@ -24,6 +24,7 @@
print """
usage: %s [vh] [-d <directory>]
\t-d\twhich directory use for dsa definition search
+\t-f\twhich file use for dsa definition generation
\t-v\tverbose mode
\t-h\tthis help
""" % prog
@@ -31,8 +32,8 @@
def printdsas (dsaref):
""" Generate and print OVAL Definitions for collected DSA information """
- ovalDefinitions = oval.definition.generator.createOVALDefinitions (dsaref)
- oval.definition.generator.printOVALDefinitions (ovalDefinitions)
+ ovalDefinitions = generator.createOVALDefinitions (dsaref)
+ generator.printOVALDefinitions (ovalDefinitions)
def parsedirs (directory, postfix, depth):
""" Recursive search directory for DSA files contain postfix in their names.
@@ -76,6 +77,24 @@
return 0
+def parsefile (filename):
+
+ datafile = file[0]
+ (path, ext) = os.path.splitext(datafile)
+ wmlfile = '.'.join((path, 'wml'))
+
+ #Parse data file
+ result = dsa.parseFile (datafile)
+ if result:
+ dsaref[result[0]] = result[1]
+
+ #Parse wml file
+ result = wml.parseFile(wmlfile)
+ if result:
+ dsaref[result[0]] = result[1]
+
+ return generator.createOVALDefinitions(self.dsaref)
+
if __name__ == "__main__":
# Parse cmd options with getopt
@@ -99,8 +118,11 @@
if opts.has_key('-v'):
logging.basicConfig(level=logging.WARNING)
-
- logging.basicConfig(level=logging.ERROR)
-
- parsedirs (opts['-d'], '.data', 2)
+ else:
+ logging.basicConfig(level=logging.ERROR)
+
+ if opts.has_key('-d'):
+ parsedirs (opts['-d'], '.data', 2)
+ if opts.has_key('-f'):
+ parsefile (opts['-f'])
printdsas(dsaref)
\ No newline at end of file
Modified: trunk/oval-server/src/dsa2oval/definition/generator.py
===================================================================
--- trunk/oval-server/src/dsa2oval/definition/generator.py 2007-08-20 03:46:56 UTC (rev 153)
+++ trunk/oval-server/src/dsa2oval/definition/generator.py 2007-08-20 04:28:14 UTC (rev 154)
@@ -12,7 +12,7 @@
import datetime
import xml.dom.ext
import xml.dom.minidom
-from definition.differ import differ
+from dsa2oval.definition.differ import differ
class OvalGeneratorException (Exception):
pass
More information about the Oval-commits
mailing list