Rcupration de l'utilisateur rel de cups en parsant son spool.
On ne peut pas utiliser le 2me argument pass au backend car en mode authentifi Samba fournit root plutot que de faire suivre l'utilisateur connect Samba. darcs-hash:20050616091142-061a7-4047755bb27376e46c05548d3ac06e2aac9c697b.gz
This commit is contained in:
parent
bc7fab26cd
commit
9b12d8f960
2 changed files with 27 additions and 18 deletions
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
import sys
|
import sys
|
||||||
sys.path.append('/usr/scripts/impression')
|
sys.path.append('/usr/scripts/impression')
|
||||||
#from ipp import IPPMessage
|
from ipp import IPPMessage
|
||||||
import couts
|
import couts
|
||||||
sys.path.append('/usr/scripts/gestion')
|
sys.path.append('/usr/scripts/gestion')
|
||||||
from config import impression
|
from config import impression
|
||||||
|
@ -63,20 +63,19 @@ while ligne:
|
||||||
ligne = entree.readline()
|
ligne = entree.readline()
|
||||||
fic.flush()
|
fic.flush()
|
||||||
|
|
||||||
# Récupérer l'IP
|
# Recuperation du nom de l'utilisateur
|
||||||
#if len(sys.argv[1]) < 5 :
|
#user=sys.argv[2] #On ne fait pas comme ca, car samba passe l'utilisateur root
|
||||||
# fichier_ipp = "c%05i" % int(sys.argv[1])
|
if len(sys.argv[1]) < 5 :
|
||||||
#else:
|
fichier_ipp = "c%05i" % int(sys.argv[1])
|
||||||
# fichier_ipp = "c%s" % sys.argv[1]
|
else:
|
||||||
#
|
fichier_ipp = "c%s" % sys.argv[1]
|
||||||
#try:
|
try:
|
||||||
# message = IPPMessage(open('/var/spool/cups/%s' % fichier_ipp).read())
|
message = IPPMessage(open('/var/spool/cups/%s' % fichier_ipp).read())
|
||||||
#except:
|
except:
|
||||||
# sys.stderr.write("Ne peut pas ouvrir/parser le fichier /var/spool/cups/%s" % fichier_ipp)
|
sys.stderr.write("ERROR: Erreur : Ne peut pas ouvrir/parser le fichier /var/spool/cups/%s" % fichier_ipp)
|
||||||
|
user=message["job-originating-user-name"]
|
||||||
#recuperation du nom de l'utilisateur
|
|
||||||
user=sys.argv[2]
|
# Recuperation de l'adherent
|
||||||
#recuperation de l'adherent
|
|
||||||
base = crans_ldap()
|
base = crans_ldap()
|
||||||
res=base.search("login=%s"%user)['adherent']
|
res=base.search("login=%s"%user)['adherent']
|
||||||
#si on ne trouve rien
|
#si on ne trouve rien
|
||||||
|
|
|
@ -103,9 +103,19 @@ else :
|
||||||
# Lecture sur stdin
|
# Lecture sur stdin
|
||||||
entree = sys.stdin
|
entree = sys.stdin
|
||||||
|
|
||||||
#recuperation du nom de l'utilisateur
|
# Recuperation du nom de l'utilisateur
|
||||||
user=sys.argv[2]
|
#user=sys.argv[2] #On ne fait pas comme ca, car samba passe l'utilisateur root
|
||||||
#recuperation de l'adherent en écriture
|
if len(sys.argv[1]) < 5 :
|
||||||
|
fichier_ipp = "c%05i" % int(sys.argv[1])
|
||||||
|
else:
|
||||||
|
fichier_ipp = "c%s" % sys.argv[1]
|
||||||
|
try:
|
||||||
|
message = IPPMessage(open('/var/spool/cups/%s' % fichier_ipp).read())
|
||||||
|
except:
|
||||||
|
sys.stderr.write("ERROR: Erreur : Ne peut pas ouvrir/parser le fichier /var/spool/cups/%s" % fichier_ipp)
|
||||||
|
user=message["job-originating-user-name"]
|
||||||
|
|
||||||
|
# Recuperation de l'adherent en écriture
|
||||||
res=base.search("login=%s"%user,'w')['adherent']
|
res=base.search("login=%s"%user,'w')['adherent']
|
||||||
#si on ne trouve rien
|
#si on ne trouve rien
|
||||||
if len(res) != 1 :
|
if len(res) != 1 :
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue