diff -r b9a078e64012 -r 46289f36c1ca components/openstack/neutron/files/agent/solaris/net_lib.py --- a/components/openstack/neutron/files/agent/solaris/net_lib.py Thu Jun 26 11:50:03 2014 -0700 +++ b/components/openstack/neutron/files/agent/solaris/net_lib.py Wed Jul 02 06:53:43 2014 -0700 @@ -262,9 +262,11 @@ class IPfilterCommand(CommandBase): '''Wrapper around Solaris ipf(1m) command''' - def split_rules(self, rules): + def _split_rules(self, rules, version): # assumes that rules are inbound! cmd = ['/usr/sbin/ipfstat', '-i'] + if version == 6: + cmd.insert(1, '-6') stdout = self.execute_with_pfexec(cmd) existing_rules = [] non_existing_rules = [] @@ -276,20 +278,20 @@ return existing_rules, non_existing_rules - def add_rules(self, rules, version='4'): - rules = self.split_rules(rules)[1] + def add_rules(self, rules, version=4): + rules = self._split_rules(rules, version)[1] process_input = '\n'.join(rules) cmd = ['/usr/sbin/ipf', '-f', '-'] - if version == '6': - cmd.append('-6') + if version == 6: + cmd.insert(1, '-6') return self.execute_with_pfexec(cmd, process_input=process_input) - def remove_rules(self, rules, version='4'): - rules = self.split_rules(rules)[0] + def remove_rules(self, rules, version=4): + rules = self._split_rules(rules, version)[0] process_input = '\n'.join(rules) cmd = ['/usr/sbin/ipf', '-r', '-f', '-'] - if version == '6': - cmd.append('-6') + if version == 6: + cmd.insert(1, '-6') return self.execute_with_pfexec(cmd, process_input=process_input)