from sfatables.xmlrule import *
class SFATablesRules:
- sorted_rule_list = None
+ sorted_rule_list = []
def __init__(self, chain_name):
chain_dir_path = "%s/%s"%(sfatables_config,chain_name)
intermediate_rspec = rule.apply(intermediate_rspec)
return intermediate_rspec
+
+def main():
+ incoming = SFATablesRules('INCOMING')
+ outgoing = SFATablesRules('OUTGOING')
+
+ print "%d rules loaded for INCOMING chain\n"%len(incoming.sorted_rule_list)
+ print "%d rules loaded for OUTGOING chain\n"%len(outgoing.sorted_rule_list)
+
+ return
+
+if __name__=="__main__":
+ main()
import libxml2
from sfatables.globals import *
-class Xmlrule:
+class XMLRule:
rule_number = None
chain = None
xmldoc = None
p.xpathFreeContext()
- return
def wrap_rspec (self, type, rspec):
argument = self.arguments[type]
p = rspec.xmldoc.xpathNewContext()
root_node = p.xpathEval('/RSpec')
- if (!root_node or !len(root_node)):
+ if (not root_node or not root_node):
raise Exception('An evil aggregate manager sent me a malformed RSpec. Please see the stack trace to identify it.')
root_node.addChild(arguments[type])