[attributs] On vérifie chaque composane du nom de domaine.

À charge de vérifier que le nom de domaine appartient bien à l'une
des zones dns du crans.
This commit is contained in:
Valentin Samir 2013-05-14 18:02:01 +02:00
parent 4a85f0e4e8
commit 2bb29aac36

View file

@ -507,11 +507,10 @@ class dnsAttr(Attr):
category = 'dns'
def parse_value(self, val):
val = val.lower()
name, domain = val.split('.', 1)
if not domain in ['ferme.crans.org', 'crans.org', 'federez.net', 'wifi.crans.org', 'adm.crans.org', 'crans.ens-cachan.fr']:
raise ValueError("Nom d'hote invalide %r" % val) # somme toute vraisemblance il y a un point dans le nom de la machine
if not re.match('^[a-z0-9](-*[a-z0-9]+)*$', name):
raise ValueError("Nom d'hote invalide %r" % val)
names = val.split('.')
for name in names:
if not re.match('^[a-z0-9](-*[a-z0-9]+)*$', name):
raise ValueError("Nom d'hote invalide %r" % val)
self.value = val
class host(dnsAttr):