[ldap_crans] ldap_crans ne modifie pas les host, hostAlias d'une machine ayant des certificats

C'est brûtal, mais je n'ai pas tu tout envie d'implémenter les certificat dans ldap_crans.
On moins on peut toujours ajouter de nouveaux alias.
De plus on interdit aussi la suppression d'une telle machine.
This commit is contained in:
Valentin Samir 2014-02-23 17:22:39 +01:00
parent ff88440f2e
commit 328904ae19
2 changed files with 14 additions and 2 deletions

View file

@ -3008,6 +3008,9 @@ Contactez nounou si la MAC est bien celle d'une carte.""", 3)
if type(new) == list:
# Modif
res = self.conn.search_s(self.dn, 1, "xid=*")
if res:
raise EnvironmentError("La machine possède des certificats, utilisez lc_ldap ou l'intranet2")
index = new[0]
new = new[1]
if new == '':
@ -3221,6 +3224,12 @@ Contactez nounou si la MAC est bien celle d'une carte.""", 3)
ret = ''
# test si la machine a des certificats
if 'host' in self.modifs:
res = self.conn.search_s(self.dn, 1, "xid=*")
if res:
raise EnvironmentError("La machine possède des certificats, utilisez lc_ldap ou l'intranet2")
# Besoin de redémarrer les firewalls ?
if 'ipHostNumber' in self.modifs or 'macAddress' in self.modifs:
reconf_ip = self._init_data.get('ipHostNumber', [])
@ -3301,6 +3310,9 @@ Contactez nounou si la MAC est bien celle d'une carte.""", 3)
if self.proprietaire().__class__ == AssociationCrans and not isadm():
raise EnvironmentError(u'Il faut être administrateur pour effectuer cette opération.')
res = self.conn.search_s(self.dn, 1, "xid=*")
if res:
raise EnvironmentError("La machine possède des certificats, utilisez lc_ldap ou l'intranet2")
self.proprio = self.__proprietaire.Nom() # On met dans un coin le nom du proprio
self.__proprietaire = None # On oublie le propriétaire