On loggue les utilisateurs du digicode.
darcs-hash:20061011213612-68412-d623cb451865fe23dea27040fc4eb86eadad94b4.gz
This commit is contained in:
parent
484f83120a
commit
a64662f734
1 changed files with 16 additions and 11 deletions
|
@ -8,7 +8,7 @@ Script de test du code de la porte du local de l'imprimante
|
||||||
import os, sys
|
import os, sys
|
||||||
from syslog import openlog, syslog
|
from syslog import openlog, syslog
|
||||||
|
|
||||||
def identification ( password ) :
|
def identification(password):
|
||||||
# test un code entré sur la porte :
|
# test un code entré sur la porte :
|
||||||
# doit retourner 0 si le code n'est pas bon
|
# doit retourner 0 si le code n'est pas bon
|
||||||
# 1 pour ouvrir la porte
|
# 1 pour ouvrir la porte
|
||||||
|
@ -16,28 +16,33 @@ def identification ( password ) :
|
||||||
#codes en statique pour les tests
|
#codes en statique pour les tests
|
||||||
#Dans l'avenir tout sera sous forme de fichiers
|
#Dans l'avenir tout sera sous forme de fichiers
|
||||||
#si le fichier existe le code est bon (evite les problemes par rapport au fait de
|
#si le fichier existe le code est bon (evite les problemes par rapport au fait de
|
||||||
# stocker les codes dans un fichier
|
# stocker les codes dans un fichier
|
||||||
|
try:
|
||||||
|
user = file("/var/impression/codes/%s" % password).readline().strip()
|
||||||
|
except:
|
||||||
|
user = ""
|
||||||
if password in os.listdir('/var/impression/codes'):
|
if password in os.listdir('/var/impression/codes'):
|
||||||
if password in os.listdir('/var/impression/codes'):
|
if password in os.listdir('/var/impression/codes'):
|
||||||
os.remove("/var/impression/codes/%s" %password)
|
os.remove("/var/impression/codes/%s" %password)
|
||||||
return 1
|
return user, True
|
||||||
else :
|
else:
|
||||||
return 0
|
return "", False
|
||||||
|
|
||||||
if __name__ == '__main__' :
|
if __name__ == '__main__' :
|
||||||
openlog("digicode")
|
openlog("digicode")
|
||||||
# on récupère le code dans les variables d'environement
|
# on récupère le code dans les variables d'environement
|
||||||
try :
|
try:
|
||||||
code = os.getenv('USER_PASSWORD','').replace('"','')
|
code = os.getenv('USER_PASSWORD', '').replace('"', '')
|
||||||
except :
|
except:
|
||||||
code = ''
|
code = ''
|
||||||
|
|
||||||
# test de l'authentification
|
# test de l'authentification
|
||||||
if identification(code) :
|
user, ok = identification(code)
|
||||||
|
if ok:
|
||||||
# c'est bon
|
# c'est bon
|
||||||
syslog("code %s correct" % code)
|
syslog("code %s [%s] correct" % (code, user))
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
else :
|
else:
|
||||||
# c'est pas bon
|
# c'est pas bon
|
||||||
syslog("code %s incorrect" % code)
|
syslog("code %s incorrect" % code)
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue