Valentin Samir
480497ce4e
[attributs] Fonction utile sur les AttrsList, __cmp__ ne sert à rien et plante si python_type = int
2014-03-15 22:49:39 +01:00
Valentin Samir
4fea59bbeb
[lc_ldap] Quand connecté en admin, si l'user est un user crans, on dropp les droits à celui de cet user
2014-03-15 22:48:44 +01:00
Valentin Samir
1d58240c6a
[attributs] Changement mineurs
...
docstring de mailExt, et unicodification des hostCerts de certificat
2014-03-15 22:47:58 +01:00
Valentin Samir
285d35364a
[objets] Dans adherent.machine() possibilité de forcer le rafraîchissement du cache local
2014-03-15 22:47:25 +01:00
Valentin Samir
241f55154e
[objets] Création et suppression de compte crans
2014-03-15 22:47:04 +01:00
Valentin Samir
23369476ef
[crans_utils] strip_spaces paramètre pour choisir le remplasant des espaces, fonction pour calculer des hash SSHA
2014-03-15 22:46:20 +01:00
Valentin Samir
dd94fcd228
[services] Création et suppression des homes si modif de l'objectClass cransAccount, rattrapage d'une erreur si le service a redémarrer existe déjà
2014-03-15 22:45:06 +01:00
Valentin Samir
64a1d9f0ec
[attributs] exemp est de type netaddr.IPNetwork
2014-03-15 22:44:41 +01:00
Valentin Samir
3809bfea8e
[printing/proprio] Affichage du mail si pas de compte crans, affichage de mailExt
2014-03-15 22:43:40 +01:00
Valentin Samir
38a47e47ab
[printing/machine] Affichage de la clef ipsec sur machine wifi
2014-03-15 22:43:19 +01:00
Valentin Samir
6abc1fbad7
[printing/adherent] Affichage de l'adresse si chambre EXT
2014-03-15 22:42:49 +01:00
Valentin Samir
db6cf98661
[printing] Possibilité d'afficher des blacklists seule
2014-03-15 22:42:21 +01:00
Valentin Samir
937aefb3ec
[printing] Possibilité de spécifier la largeur des tableaux ascii
2014-03-15 22:41:24 +01:00
Valentin Samir
df23c50e23
[printing] Non affichage de la liste des machines/factures si l'objet adhérent n'existe pas encore
2014-03-15 22:40:06 +01:00
Valentin Samir
bc751c415b
[attributs, objets] Ajout de l'attribut shadowExpire
2014-03-15 22:38:15 +01:00
Valentin Samir
7e55e8325d
[attributs, objets] Possibilité d'avoir un attribut unique sauf pour une liste de valeur prédéfini
...
Je pense particulièrement à chambre qui est unique sauf pour ???? et EXT
On en a besoin pour détecter, quand on affecte quelqu'un a une chambre, que
la chambre est déjà occupée
2014-03-15 22:36:02 +01:00
Valentin Samir
ad83a5aaa3
[attributs] Plus nazi sur qui peut modifier les attributs userPassword, mail, homeDirectory
2014-03-15 22:33:59 +01:00
Daniel STAN
1d361ac0e5
ne pas supposer que sys.argv existe ...
2014-03-04 18:53:20 +01:00
Daniel STAN
f1aeaf59aa
ipsec modifiable par proprio
...
Ou alors trouvez-moi une autre façon d'instancier les machines wifi.
2014-03-04 18:50:02 +01:00
Daniel STAN
b9f47f5b94
objets: machines destructibles par parent
...
Aller la dupplication de code aller aller.
2014-03-04 18:47:48 +01:00
Valentin Samir
1394cfc867
[printing] Support des couleurs dans dialog
2014-03-03 10:54:33 +01:00
Valentin Samir
3e9dc95268
[objets] On calcule le parent_dn, c'est pratique pour tester rapidement si un objets est enfant d'un autre
2014-03-03 10:53:52 +01:00
Valentin Samir
4ea10076ca
[attributs] Changement de permissions sur des attributs
...
Pour historique il faudrait faire quelque chose pour que soi, parent,
cableur ne puissent que ajouter de nouvelles lignes, mais en attendant, il peuvent
"en théorie" le modifier.
2014-03-03 10:52:30 +01:00
Valentin Samir
4eee0437dd
[lc_ldap] Si l'user donné à init existe, il faut aussi se mettre sous le dn de cet utilisateur
...
on le fait après s'être connecté à la base ldap, du coup, ce dn ne sert que dans la
logique des droits de lc_ldap
2014-03-03 10:51:06 +01:00
Valentin Samir
8c3d6b441d
[lc_ldap] Si l'user donné à init existe dans la base, alors droits est mis aux droits de l'utilisateur
2014-03-02 01:50:09 +01:00
Valentin Samir
879bebbae2
[lc_ldap] Utilisation des fonctions newMachine, newAdherent, newClub, ... comme un context manager
2014-03-02 01:49:16 +01:00
Valentin Samir
79149ebb4f
[attributs.certificat] Belle erreur sur les certificats mal formaté
2014-03-02 01:17:24 +01:00
Daniel STAN
99d864b81c
<automatique> pour les macs et u'' si pas d'ipv6
2014-03-02 00:28:15 +01:00
Valentin Samir
8f9c6c1d17
[lc_ldap] Pour machineMulticast, on utilise des uldif en place des ldif
...
Pour rappel, les machineMulticast n'ont pas d'existance pour la base ldap
et sont juste pratiques pour générer le dns de la zone TV sans avoir de cas
particulier dans gen_conf/bind.py
2014-02-26 10:28:43 +01:00
Valentin Samir
d8b1e5da51
[objets] En cas d'ajout de lock hors contexte, on affiche un warning
2014-02-26 10:27:48 +01:00
Valentin Samir
06ea17715b
[objets.setitem] Varification de l'unicité de l'attribut sur l'objet
...
Sinon ldap il est pas content
2014-02-26 10:27:02 +01:00
Valentin Samir
8fd2be80c8
[attributs.sshFingerprint] On se débarrasse des espaces inutiles
...
Ça "normalise" plus ou moins une clef ssf
2014-02-26 10:26:00 +01:00
Valentin Samir
2c1edaa310
[attributs] Ajout de legends
2014-02-26 10:25:43 +01:00
Valentin Samir
0e9404ae93
[test.py] utilisation de contexts pour les écritures de la base ldap
2014-02-24 21:51:34 +01:00
Valentin Samir
15f92fbf21
[objets.facture] Sucre syntaxique
2014-02-24 21:44:34 +01:00
Valentin Samir
ac0445b7e3
[objets.__setitem__] On libère les locks des valeurs que l'on oublie
2014-02-24 21:44:00 +01:00
Valentin Samir
1312039a55
[lc_ldap._find_id] Dans le cas non strictement croissant des id, on utilise un set pour stocker les id déjà pris
...
En effet, en effectue ensuite un nombre important de fois l'opération i in nonfree.
Avec des liste l'opération est en O(n) alors qu'elle est en O(1) avec des set
2014-02-24 21:42:22 +01:00
Valentin Samir
955a4f2820
[lc_ldap, objets] Création des objets ldap avec un lockid bien a eux
2014-02-24 21:40:03 +01:00
Valentin Samir
4f88ae824a
[ldap_locks] Renommage des erreurs ldap en erreur de Lock, factorisation, reformatage
2014-02-24 21:31:16 +01:00
Valentin Samir
320300d85c
[doc] Ajouts des fichiers objets shortcuts variables services ldap_locks cimetiere crans_utils à la documentation
2014-02-24 17:17:00 +01:00
Valentin Samir
172c1935ce
[lc_ldap/_find_id] C'est bien aussi de ne pas oublier qu'il y a des id qui ne sont pas strictement croissant
2014-02-24 17:15:40 +01:00
Valentin Samir
9aa0de6539
Travaux sur les locks, ajout de context manager pour les cransLdapObject
...
D'une façon général, on s'assure que tous les locks concernant un cransLdapObject
sont bien mis avec l'identifiant de lock cransLdapObject.lockId.
Avant d'entrer dans le context manager du cransLdapObject, on fait bien attention
d'intercepter les exceptions pouvant être levée pour libérer les locks potentiellement
déjà posés avant de propager l'exception.
Si on essayer d'appeler une methode d'enregistrement (.save() .delete() .create()) sans
utiliser un context manager, on affiche un warning sur stderr.
À terme ça serait bien de n'utiliser que des context manager pour être sûr qu'on ne
laisse pas de lock traîner dans la base de donnée.
Il faut bien sûr faire attention de bien ajouter les lock avec l'identifiant cransLdapObject.lockId
puisqu'on se base là dessus pour les libérer.
Si on a utiliser une context manager, en en sortant, on rend le cransLdapObject read only
(de façon douce en modifiant le cransLdapObject.mode et de façon force en changeant les methodes
save create delete pour lever l'exception EnvironmentError("Hors du context, impossible de faire des écritures"))
2014-02-24 14:48:03 +01:00
Valentin Samir
63b9f89b6f
[ldap_locks] Affichage du temps restant avant expiration d'un lock si une LockError est levée
2014-02-24 14:47:27 +01:00
Valentin Samir
954ba580b6
[crans_utils] process_status sans utiliser subprocess
2014-02-24 14:46:52 +01:00
Valentin Samir
a485d4b8b2
[objets] Impossible de supprimer un adhérent respo ou imprimeur d'un club
2014-02-24 11:45:52 +01:00
Valentin Samir
13db266a4c
[test] Affichage des objets ne passant pas les tests
2014-02-24 11:45:30 +01:00
Valentin Samir
575075fe18
[lc_ldap] Ajout des xids dans ressucite
2014-02-24 11:45:08 +01:00
Valentin Samir
68c86e7e00
[lc_ldap._find_id] On essaye de cacher le dernier id connu et de ne récupérer que les id plus grand
...
C'est beaucoup plus rapide que récupérer tous les mid ou tous les aid.
BEAUCOUP !!!!
plus de détails dans les commentaires du code.
2014-02-24 11:34:27 +01:00
Daniel STAN
68587e3ebb
attributs: allow macAddress "<automatique>"
2014-02-23 19:25:11 +01:00
Valentin Samir
fefad357fc
[attributs, objets] Affinage des permissions sur les certificats
2014-02-23 16:06:11 +01:00