[Samba] Can not cancel print job
Andrew Watkins
andrew at dcs.bbk.ac.uk
Thu Mar 9 20:35:07 GMT 2006
I think I may have found one problem and it could be a BUG in samba or a
problem with the
Solaris printing system.
If you setup printers on samba host which is not the real print server
then you get it problems
with the solaris printing system adding on @hostname.
For example:
Step1) "\\medusa\lp131" is allowing printing, but the real printer
server is on another machine.
Step 2) If you send a few jobs to this printer you see this on the
unix front:
medusa# lpstat
lp131-530 andrew at medusa.dcs.bbk.ac.uk
48651 Mar 09 19:45
lp131-526 andrew at medusa.dcs.bbk.ac.uk
48651 Mar 09 19:45
Step 3) But when you try to cancel the jobs samba thinks you are not the
owner
looking at printing.c
"is_owner" will return false, since "pjob->user" =
"andrew at medusa.dcs.bbk.ac.uk"
so it ends up comparing "user at host" with "user".
Any thoughts?
I don't think you can switch off the @host part, so can samba and
print_job_find strip out @host part.
Andrew
>
> Hi,
>
> Using version samba 3.0.21 only "printer admin" users can cancel a
> print job and all other users get "Access Denied".
>
> Error:
> smbd[21198]: Permission denied-- user not allowed to delete, pause, or
> resume print job. User name: wstudent. Printer name: lp131.
>
> log.smbd:
> [2006/02/28 09:46:04, 10] lib/username.c:user_in_list(570)
> user_in_list: checking user wstudent in list
> [2006/02/28 09:46:04, 10] lib/username.c:user_in_list(575)
> user_in_list: checking user |wstudent| against |andrew|
> [2006/02/28 09:46:04, 10] lib/username.c:user_in_list(575)
> user_in_list: checking user |wstudent| against |root|
>
> [global]
> debuglevel = 10
> comment = %h Samba %v
> server string = %h Samba %v
> workgroup = DCSNT
> hosts allow = 193.61.29. 193.61.28.
> hosts deny = 0.0.0.0/0
> locking = yes
> password level = 10
> domain master = no
> local master = no
> os level = 80
> wins support = no
> wins server = 193.61.29.179
> password server = loki hades
> security = domain
> encrypt passwords = yes
> preserve case = yes
> short preserve case = yes
> nt acl support = Yes
> printer admin = andrew,root
> load printers = no
> lprm command = /usr/bin/cancel %p-%j
> printcap name= lpstat
>
> [print$]
> comment = Printer Driver Download Area
> path = /usr/local/samba/var/drivers
> browseable = no
> guest ok = no
> read only = yes
> write list = andrew,root
>
> [lp131]
> comment = Tally T2070 Line Printer Room 131
> path = /var/spool/samba
> writable = no
> printable = yes
> public = yes
> guest ok = no
>
> Setup:
> Solaris 9 and 10
> Samba 3.0.20(a) / 3.0.21c
> Windows XP sp2
>
> As always, Thanks....
>
> Andrew Watkins
More information about the samba
mailing list