ridtools: ne s'embête plus avec un "reste" de rid

This commit is contained in:
Daniel STAN 2015-05-23 21:33:03 +02:00
parent 08007c623e
commit 65760e5ddb

View file

@ -32,7 +32,6 @@ class Rid(object):
Variables d'instance : Variables d'instance :
- rid : le rid - rid : le rid
- type : type de rid (cf. config.rid et [1]) - type : type de rid (cf. config.rid et [1])
- reste : le "reste" du rid (permettant de calculer l'IP par exemple)
- ipv4_dispo : une IPv4 *publique* *du crans* existe pour ce rid - ipv4_dispo : une IPv4 *publique* *du crans* existe pour ce rid
- priv : cette machine ne doit pas être accessible de l'extérieur - priv : cette machine ne doit pas être accessible de l'extérieur
@ -41,7 +40,6 @@ class Rid(object):
def __init__(self, rid=None, ipv4=None): def __init__(self, rid=None, ipv4=None):
self.rid = None self.rid = None
self.reste = False
self.type = None self.type = None
self.ipv4_dispo = False self.ipv4_dispo = False
self.priv = False self.priv = False
@ -65,11 +63,6 @@ class Rid(object):
self.priv = (rid & (1 << 14)) != 0 self.priv = (rid & (1 << 14)) != 0
if self.type == 'personnel-ens':
self.reste = rid & 0xff
else:
self.reste = rid & 0x7ff
def __from_ipv4(self, ip): def __from_ipv4(self, ip):
"""Peuple les champs à partir de l'ipv4 donnée""" """Peuple les champs à partir de l'ipv4 donnée"""
if not isinstance(ip, netaddr.IPAddress): if not isinstance(ip, netaddr.IPAddress):
@ -105,10 +98,6 @@ class Rid(object):
if self.rid not in ranges: if self.rid not in ranges:
raise ValueError("%s trop hors des plages prévues pour le réseau '%s'" % (ip, self.type)) raise ValueError("%s trop hors des plages prévues pour le réseau '%s'" % (ip, self.type))
if self.type == 'personnel-ens':
self.reste = self.rid & 0xff
else:
self.reste = self.rid & 0x7ff
return self.rid return self.rid
def ipv4(self): def ipv4(self):
@ -121,7 +110,8 @@ class Rid(object):
if not hasattr(self, '__ipv4'): if not hasattr(self, '__ipv4'):
if self.type != "special": if self.type != "special":
net = netaddr.IPNetwork(config.NETs[self.type][0]) net = netaddr.IPNetwork(config.NETs[self.type][0])
self.__ipv4 = netaddr.IPAddress(net.first + self.reste) offset = self.rid - config.rid[self.type][0][0]
self.__ipv4 = netaddr.IPAddress(net.first + offset)
else: else:
self.__ipv4 = netaddr.IPAddress(config.rid_machines_speciales[self.rid]) self.__ipv4 = netaddr.IPAddress(config.rid_machines_speciales[self.rid])