Prefixe 00 est ok
darcs-hash:20050926203712-d1718-b4ede8c338498956e2acc18e892bb587fb2f7337.gz
This commit is contained in:
parent
aaa962dfc6
commit
886dee06b3
1 changed files with 20 additions and 18 deletions
|
@ -1867,24 +1867,26 @@ class machine(base_classes_crans) :
|
|||
elif mac[0:11] == "44:45:53:54":
|
||||
raise ValueError(u"Il s'agit de l'adresse MAC d'une interface PPP.", 2)
|
||||
|
||||
# Le test final
|
||||
# Extraction des trois premiers chiffres de la mac en
|
||||
# supprimant les zéros superflus pour coller au format
|
||||
# de la base d'arpwatch
|
||||
prefix=mac[:8].replace(':0',':') + '\t'
|
||||
if prefix[0]=='0' : prefix=prefix[1:]
|
||||
vendor = ''
|
||||
try:
|
||||
for line in open('/usr/scripts/gestion/ethercodes.dat').readlines() :
|
||||
if line.find(prefix)==0 :
|
||||
vendor = line.replace(prefix,'').strip()
|
||||
break
|
||||
except IOError:
|
||||
# Le fichier existe pas, on sors
|
||||
raise RuntimeError("Fichier de fabiquants de MAC non trouvé !")
|
||||
|
||||
if not vendor :
|
||||
raise ValueError(u"Le constructeur correspondant à cette adresse MAC ne peut être trouvé.\nL'adresse MAC correspond peut-être à un pont réseau, désactivez ce pont réseau.\nContactez nounou si la MAC est bien celle d'une carte.",2)
|
||||
# On autorise tous les 00
|
||||
if mac[0:3] != "00":
|
||||
# Le test final
|
||||
# Extraction des trois premiers chiffres de la mac en
|
||||
# supprimant les zéros superflus pour coller au format
|
||||
# de la base d'arpwatch
|
||||
prefix=mac[:8].replace(':0',':') + '\t'
|
||||
if prefix[0]=='0' : prefix=prefix[1:]
|
||||
vendor = ''
|
||||
try:
|
||||
for line in open('/usr/scripts/gestion/ethercodes.dat').readlines() :
|
||||
if line.find(prefix)==0 :
|
||||
vendor = line.replace(prefix,'').strip()
|
||||
break
|
||||
except IOError:
|
||||
# Le fichier existe pas, on sors
|
||||
raise RuntimeError("Fichier de fabiquants de MAC non trouvé !")
|
||||
|
||||
if not vendor :
|
||||
raise ValueError(u"Le constructeur correspondant à cette adresse MAC ne peut être trouvé.\nL'adresse MAC correspond peut-être à un pont réseau, désactivez ce pont réseau.\nContactez nounou si la MAC est bien celle d'une carte.",2)
|
||||
|
||||
# Lock de la mac
|
||||
self.lock('macAddress',mac)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue