[lc_ldap] Ajout d'une méthode pour affectuer une ipv4 à une machine wifi si elle n'est pas pas déjà une.
This commit is contained in:
parent
f88b6ec688
commit
d8c8e55909
1 changed files with 14 additions and 2 deletions
16
lc_ldap.py
16
lc_ldap.py
|
@ -828,7 +828,7 @@ class machine(CransLdapObject):
|
||||||
attributs.rid, attributs.info, attributs.blacklist, attributs.hostAlias,
|
attributs.rid, attributs.info, attributs.blacklist, attributs.hostAlias,
|
||||||
attributs.exempt, attributs.portTCPout, attributs.portTCPin,
|
attributs.exempt, attributs.portTCPout, attributs.portTCPin,
|
||||||
attributs.portUDPout, attributs.portUDPin, attributs.sshFingerprint,
|
attributs.portUDPout, attributs.portUDPin, attributs.sshFingerprint,
|
||||||
attributs.ipHostNumber, attributs.ip6HostNumber]
|
attributs.ipHostNumber, attributs.ip6HostNumber, attributs.historique]
|
||||||
|
|
||||||
def __init__(self, conn, dn, mode='ro', ldif = None):
|
def __init__(self, conn, dn, mode='ro', ldif = None):
|
||||||
super(machine, self).__init__(conn, dn, mode, ldif)
|
super(machine, self).__init__(conn, dn, mode, ldif)
|
||||||
|
@ -851,7 +851,6 @@ class machine(CransLdapObject):
|
||||||
black.extend(filter((lambda bl: bl.is_actif()), attrs.get("blacklist",[])))
|
black.extend(filter((lambda bl: bl.is_actif()), attrs.get("blacklist",[])))
|
||||||
return black
|
return black
|
||||||
|
|
||||||
|
|
||||||
class AssociationCrans(proprio):
|
class AssociationCrans(proprio):
|
||||||
u""" Association crans (propriétaire particulier)."""
|
u""" Association crans (propriétaire particulier)."""
|
||||||
pass
|
pass
|
||||||
|
@ -945,6 +944,19 @@ class machineWifi(machine):
|
||||||
u"""Machine wifi"""
|
u"""Machine wifi"""
|
||||||
attribs = machine.attribs + [attributs.ipsec]
|
attribs = machine.attribs + [attributs.ipsec]
|
||||||
|
|
||||||
|
def set_ipv4(self, login=None):
|
||||||
|
u"""Définie une ipv4 à la machine si elle n'est possède pas déjà une."""
|
||||||
|
if not 'ipHostNumber' in self.attrs.keys() or not self['ipHostNumber']:
|
||||||
|
rid = self['rid']=[ unicode(self.conn._find_id('rid', range(config.rid['wifi'][0], config.rid['wifi'][1]))) ]
|
||||||
|
ip = self['ipHostNumber'] = [ unicode(crans_utils.ip4_of_rid(int(rid[0]))) ]
|
||||||
|
login = login or current_user
|
||||||
|
self.history_add(login, u"rid")
|
||||||
|
self.history_add(login, u"ipHostNumber (N/A -> %s)" % ip[0])
|
||||||
|
self.save()
|
||||||
|
from gen_confs.dhcpd_new import dydhcp
|
||||||
|
dhcp=dydhcp()
|
||||||
|
dhcp.add_host(str(self['ipHostNumber'][0]), str(self['macAddress'][0]), str(self['host'][0]))
|
||||||
|
|
||||||
class machineCrans(machine):
|
class machineCrans(machine):
|
||||||
can_be_by = { created: [attributs.nounou],
|
can_be_by = { created: [attributs.nounou],
|
||||||
modified: [attributs.nounou],
|
modified: [attributs.nounou],
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue