[global/rid] Commit associé à http://git.crans.org/?p=usr-scripts.git;a=commit;h=a442fd6b22c400800e7c5bd870e83e4027a1d76f
* Maintenant, on va pouvoir identifier formellement les machines v6-only et les autres, sans perdre la possibilité de passer de l'une à l'autre rapidement (avec les changements qui vont bien)
This commit is contained in:
parent
60ded9f830
commit
cd75ed7bd4
5 changed files with 79 additions and 35 deletions
|
@ -45,6 +45,7 @@ import random
|
|||
import string
|
||||
from unicodedata import normalize
|
||||
from crans_utils import format_tel, format_mac, mailexist, validate_name, ip4_of_rid, ip6_of_mac
|
||||
import itertools
|
||||
|
||||
sys.path.append("/usr/scripts/")
|
||||
import cranslib.deprecated
|
||||
|
@ -682,7 +683,7 @@ class ipHostNumber(Attr):
|
|||
def parse_value(self, ip):
|
||||
if ip == '<automatique>':
|
||||
ip = ip4_of_rid(str(self.parent['rid'][0]))
|
||||
self.value = netaddr.ip.IPAddress(ip)
|
||||
self.value = netaddr.IPAddress(ip)
|
||||
|
||||
def __unicode__(self):
|
||||
return unicode(self.value)
|
||||
|
@ -735,7 +736,7 @@ class rid(Attr):
|
|||
|
||||
# On veut éviter les rid qui recoupent les ipv4 finissant par
|
||||
# .0 ou .255
|
||||
plages = [xrange(config.rid[a][0], config.rid[a][1]+1) for a in config.rid.keys() if ('v6' not in a) and ('special' not in a)]
|
||||
plages = [itertools.chain(*[xrange(plage[0], plage[1]+1) for plage in value]) for (key, value) in config.rid_primaires.iteritems() if ('v6' not in key) and ('special' not in key)]
|
||||
|
||||
for plage in plages:
|
||||
if rid in plage:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue