python3 - 2to3 + miscell obvious tweaks
[sfa.git] / sfatables / commands / Delete.py
index e59da62..b1dff42 100644 (file)
@@ -1,7 +1,8 @@
 import os, time
-from sfa.sfatables.command import Add
+from sfatables.globals import sfatables_config
+from sfatables.command import Command
 
-class Add(Command):
+class Delete(Command):
     options = [('-D','--delete')]
     help = 'Delete a rule from a chain'
     key='delete_rule'
@@ -11,9 +12,21 @@ class Add(Command):
     def __init__(self):
         return
 
-    def call(self):
-        # Override this function
-        return True
+    def call(self, command_options, match_options, target_options):
+
+        if (len(command_options.args)<2):
+            print("Please specify the chain and the rule number to delete, e.g. sfatables -D INCOMING 1.")
+            return
+
+        chain = command_options.args[0]
+
+
+        rule_number = command_options.args[1]
+        chain_dir = sfatables_config + "/" + chain
+
+        match_path = chain_dir + "/" + "sfatables-%s-match"%rule_number
+        target_path = chain_dir + "/" + "sfatables-%s-target"%rule_number
+
+        os.unlink(match_path)
+        os.unlink(target_path)
 
-    def __call__(self, option, opt_str, value, parser, *args, **kwargs):
-        return self.call(option)