Updated Branches:
  refs/heads/4.1 ec0759ae7 -> 49402d566

scripts: Fix security_group.py handling of args and unknown commands

Checks the args length, doesn't throw IndexError when no args
passed. Also logs to security_group.log when executed with no args or unknown
command.

Review: https://reviews.apache.org/r/9588
Reviewed-by: Rohit Yadav <[email protected]>

Signed-off-by: Rohit Yadav <[email protected]>
(cherry picked from commit 0383803188eacbf948dc84de1710522e659b1790)

Signed-off-by: Rohit Yadav <[email protected]>


Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/49402d56
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/49402d56
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/49402d56

Branch: refs/heads/4.1
Commit: 49402d566a3dc7d5a652e124c8ce0a0c078000b7
Parents: ec0759a
Author: Radoslaw Smigielski <[email protected]>
Authored: Mon Feb 25 14:55:44 2013 +0000
Committer: Rohit Yadav <[email protected]>
Committed: Tue Feb 26 14:13:40 2013 +0530

----------------------------------------------------------------------
 scripts/vm/network/security_group.py |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/49402d56/scripts/vm/network/security_group.py
----------------------------------------------------------------------
diff --git a/scripts/vm/network/security_group.py 
b/scripts/vm/network/security_group.py
index dcb01a7..83d7ad1 100755
--- a/scripts/vm/network/security_group.py
+++ b/scripts/vm/network/security_group.py
@@ -38,13 +38,13 @@ def can_bridge_firewall(privnic):
         execute("which iptables")
     except:
         print "no iptables on your host machine"
-        exit(1)
+        sys.exit(1)
 
     try:
         execute("which ebtables")
     except:
         print "no ebtables on your host machine"
-        exit(2)
+        sys.exit(2)
 
     
     if not os.path.exists('/var/run/cloud'):
@@ -813,6 +813,9 @@ if __name__ == '__main__':
     parser.add_option("--hostIp", dest="hostIp")
     parser.add_option("--hostMacAddr", dest="hostMacAddr")
     (option, args) = parser.parse_args()
+    if len(args) == 0:
+        logging.debug("No command to execute")
+        sys.exit(1)
     cmd = args[0]
     if cmd == "can_bridge_firewall":
         can_bridge_firewall(args[1])
@@ -830,3 +833,6 @@ if __name__ == '__main__':
         cleanup_rules()
     elif cmd == "post_default_network_rules":
         post_default_network_rules(option.vmName, option.vmID, option.vmIP, 
option.vmMAC, option.vif, option.brname, option.dhcpSvr, option.hostIp, 
option.hostMacAddr)
+    else:
+        logging.debug("Unknown command: " + cmd)
+        sys.exit(1)

Reply via email to