summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--templates/clear/firewall/name/node.tag/rule/node.tag/counters/node.def19
1 files changed, 12 insertions, 7 deletions
diff --git a/templates/clear/firewall/name/node.tag/rule/node.tag/counters/node.def b/templates/clear/firewall/name/node.tag/rule/node.tag/counters/node.def
index 2171060..c960e9e 100644
--- a/templates/clear/firewall/name/node.tag/rule/node.tag/counters/node.def
+++ b/templates/clear/firewall/name/node.tag/rule/node.tag/counters/node.def
@@ -7,11 +7,16 @@ run:
if [ $result != 0 ]; then
echo Invalid firewall name \'$firewall_name\'
else
- iptables_rule_num=`sudo /sbin/iptables -L $firewall_name -xvn --line-numbers \
- | grep "/\* $firewall_name-$cli_rule_num " | awk '{ print $1 }'`
- if [ -n "$iptables_rule_num" ]; then
- sudo /sbin/iptables -Z "$firewall_name" "$iptables_rule_num"
- else
- echo No \'rule $cli_rule_num\' under firewall name \'$firewall_name\'
- fi
+ iptables_rule_num=( `sudo /sbin/iptables -L $firewall_name --line-numbers \
+ | grep "/\* $firewall_name-$cli_rule_num " | awk '{ print $1 }'` )
+ num_iptables_rules=${#iptables_rule_num[*]}
+ if [ $num_iptables_rules != 0 ]; then
+ i=0
+ while [ $i -lt $num_iptables_rules ]; do
+ sudo /sbin/iptables -Z "$firewall_name" "${iptables_rule_num[$i]}"
+ let i++
+ done
+ else
+ echo No \'rule $cli_rule_num\' under firewall name \'$firewall_name\'
fi
+ fi