[firewall4] Pour la mise à jour d'une mac, il faut d'abord supprimer l'ip,mac de l'ipset

This commit is contained in:
Valentin Samir 2013-04-18 23:59:56 +02:00
parent 9221fb8db0
commit 393d27f903

View file

@ -406,8 +406,9 @@ class firewall_base(object) :
for ip in ip_list: for ip in ip_list:
machine = conn.search("ipHostNumber=%s" % ip) machine = conn.search("ipHostNumber=%s" % ip)
if machine: if machine:
try: self.test_mac_ip_dispatch(lambda set, data: self.ipset['mac_ip'][set].add(data), machine[0]) try: self.test_mac_ip_dispatch(lambda set, data: self.ipset['mac_ip'][set].delete(data.split(',',1)[0]), {'ipHostNumber' : [ip], 'macAddress':[''] })
except IpsetError: pass except IpsetError: pass
self.test_mac_ip_dispatch(lambda set, data: self.ipset['mac_ip'][set].add(data), machine[0])
else: else:
try: self.test_mac_ip_dispatch(lambda set, data: self.ipset['mac_ip'][set].delete(data.split(',',1)[0]), {'ipHostNumber' : [ip], 'macAddress':[''] }) try: self.test_mac_ip_dispatch(lambda set, data: self.ipset['mac_ip'][set].delete(data.split(',',1)[0]), {'ipHostNumber' : [ip], 'macAddress':[''] })
except IpsetError: pass except IpsetError: pass