def test(self):
"""Test IPTables firewall rules
Returns:
(bool, Optional[str]): A tuple with the first object being True if the test succeeded, else False. The second object is a string storing an optional error message.
"""
rules = self.build(chains=self.chains, interfaces=self.interfaces,
addressbook=self.addressbook, rules=self.rules, services=self.services)
tmpfile = tempfile.NamedTemporaryFile(
dir=self._sessions_dir, prefix='test_', delete=False)
tmpfile.write("\n".join(rules))
tmpfile.close()
os.chmod(tmpfile.name, 0755)
q = Queue()
p = Process(target=self._test, args=(tmpfile.name, q))
p.start()
p.join()
os.remove(tmpfile.name)
return q.get()
评论列表
文章目录