From c449f54b6c6232c12a479d85bed6e9cb9f68a813 Mon Sep 17 00:00:00 2001 From: chove Date: Tue, 30 Nov 2004 01:03:32 +0100 Subject: [PATCH] on met un petit message pour les clubs, ils ont pas le droit de changer de shells, ils on rssh et ils le gardent darcs-hash:20041130000332-4ec08-c90da7b8b195f4a96cc86d2edc9f7bf987fe06b7.gz --- gestion/chsh.py | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/gestion/chsh.py b/gestion/chsh.py index cf039e54..d711820c 100755 --- a/gestion/chsh.py +++ b/gestion/chsh.py @@ -17,11 +17,20 @@ uid = os.getenv('SUDO_UID') if not uid : print "Impossible de déterminer l'utilisateur" sys.exit(1) - -adh = db.search('uidNumber=%s' % os.getenv('SUDO_UID'),'w')['adherent'] + +s = db.search('uidNumber=%s' % os.getenv('SUDO_UID'),'w') + +# On vérifie que c'est pas un club +club = s['club'] +if len(club) == 1 : + print 'Pas de changement de shell pour les clubs' + sys.exit(2) + +# On regarde si on a des résultats dans les adhérents +adh = s['adherent'] if len(adh) != 1 : print 'Erreur fatale lors de la consultation de la base LDAP' - sys.exit(2) + sys.exit(3) adh = adh[0] shell = prompt('Nouveau shell :') @@ -32,7 +41,7 @@ fd.close() if not shell in map(str.strip,lines) : print 'Shell invalide. Les shells valides sont :' print ''.join(lines[1:]) - sys.exit(3) + sys.exit(4) adh.chsh(shell) adh.save()