On ne reattribu pas de nouveau rid si ip=auto et qu'il y en a deja un (ex : bornev6)

This commit is contained in:
Gabriel Detraz 2015-06-02 17:36:47 +02:00
parent 77558c1f25
commit 877137942a

View file

@ -3271,7 +3271,7 @@ Contactez nounou si la MAC est bien celle d'une carte.""", 3)
#On essaye d'attribuer une ipv4, on cherche un rid dispo #On essaye d'attribuer une ipv4, on cherche un rid dispo
v6 = False v6 = False
if ip == '<automatique>': if ip == '<automatique>' and not self.rid():
for plage in plage_rid: for plage in plage_rid:
rid_pris = [int(elem[1]['rid'][0]) for elem in self.conn.search_ext_s(self.base_dn, ldap.SCOPE_SUBTREE, "(&(rid>=%s)(rid<=%s))" % (plage[0], plage[1]))] rid_pris = [int(elem[1]['rid'][0]) for elem in self.conn.search_ext_s(self.base_dn, ldap.SCOPE_SUBTREE, "(&(rid>=%s)(rid<=%s))" % (plage[0], plage[1]))]
#print sorted(rid_pris) #print sorted(rid_pris)
@ -3298,7 +3298,7 @@ Contactez nounou si la MAC est bien celle d'une carte.""", 3)
elif ip == '': elif ip == '':
self._set('ipHostNumber', []) self._set('ipHostNumber', [])
ip = None ip = None
else: elif ip != '<automatique>':
# L'ip est elle dans le bon sous-réseau ? # L'ip est elle dans le bon sous-réseau ?
# (accessoirement teste si l'IP est valide et ne correspond pas # (accessoirement teste si l'IP est valide et ne correspond pas
# à l'adresse de broadcast ou de réseau) # à l'adresse de broadcast ou de réseau)
@ -3312,10 +3312,10 @@ Contactez nounou si la MAC est bien celle d'une carte.""", 3)
raise ValueError(u'IP déjà prise.') raise ValueError(u'IP déjà prise.')
# On recalcule le rid si il existe pas deja, ou que l'ip est pas v6 only # On recalcule le rid si il existe pas deja, ou que l'ip est pas v6 only
if ip != None and not v6: if ip != None and not v6 and not self.rid():
rid = ridtools.Rid(ipv4=ip) rid = ridtools.Rid(ipv4=ip)
elif ip != '<automatique>': elif self.rid():
rid = self.rid() rid = int(self.rid())
if rid == '': if rid == '':
pass pass