Centralisation du remplacement de os.getlogin
On utilise la variable SUDO_USER et sinon on se rabat sur un getuid darcs-hash:20040910192447-41617-51511e6987093eae4473592bde71fa0bd73f0151.gz
This commit is contained in:
parent
3d34d11860
commit
e0da11ea79
4 changed files with 19 additions and 21 deletions
|
@ -9,20 +9,17 @@ Licence : GPLv2
|
|||
|
||||
import os, commands, pwd
|
||||
|
||||
def isroot():
|
||||
""" Retourne True si l'utilisateur lancant le script est root """
|
||||
return os.getuid() == 0
|
||||
|
||||
def issys(login=''):
|
||||
""" Retourne True si l'utilisateur est système (uid<500)
|
||||
Si login='', prend l'utilisateur loggué """
|
||||
if login == '' : login = pwd.getpwuid(os.getuid())[0]
|
||||
return int(commands.getoutput("id -u %s" % login)) <500
|
||||
def getuser() :
|
||||
""" Retourne l'utilisateur lancant les scripts """
|
||||
user = os.getenv('SUDO_USER')
|
||||
if not user :
|
||||
user = pwd.getpwuid(os.getuid())[0]
|
||||
return user
|
||||
|
||||
def groups(login='') :
|
||||
""" Retourne liste des groupes (gid) auquels appartient l'utilisateur
|
||||
fourni, si aucun utilisateur est founit prend l'utilisateur loggué """
|
||||
if login == '' : login = pwd.getpwuid(os.getuid())[0]
|
||||
if login == '' : login = getuser()
|
||||
return commands.getoutput('id -G %s' % login).split()
|
||||
|
||||
def isadm(login='') :
|
||||
|
@ -31,11 +28,11 @@ def isadm(login='') :
|
|||
return '4' in groups(login)
|
||||
|
||||
def isdeconnecteur(login='') :
|
||||
""" Retourne True si l'utilisateur est dans le groupe 110 (disconnect)
|
||||
""" Retourne True si l'utilisateur est dans le groupe 610 (disconnect)
|
||||
Si login='', prend l'utilisateur loggué """
|
||||
return isadm(login) or '610' in groups(login)
|
||||
|
||||
def iscableur(login='') :
|
||||
""" Retourne True si l'utilisateur est dans le groupe 104 (respbat)
|
||||
""" Retourne True si l'utilisateur est dans le groupe 604 (respbat)
|
||||
Si login='', prend l'utilisateur loggué """
|
||||
return isadm(login) or '604' in groups(login)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue