print jobid mis-match in api_RDosPrintJobDel and api_DosPrintQGetInf

Ling Jiang ljiang at agere.com
Tue Dec 11 14:31:03 GMT 2001


Samba server
    OS: solaris 2.6
    platform: sun4u sparc SUNW,Ultra-1
    samba version: 2.2.2
    security: share
    guest user: dazel
    printing: sysv

Client
    OS: Win95(4.00.950B)

Problem:
    a share user can not cancel his own job and get 'You don't have
permission to modify this print job'.

The lpq command returns the sysv style job status line. The only
difference in the lpq command behavior, if any, is the job id from my
lpq command   is a 6+ digit number. Other than that, there is a delay
before the lpq command returns the true status, During the time, lpq may
return nothing or the status reflecting that before the last job
submission. This should not be a problem due to the fact that in the
eyes of samba  server, jobs appear when lpq returns status.

I added a DEBUG lines in api_RDosPrintJobDel  and some other functions
to see why a share user does not have permission on cancelling his own
job. The attached is a section of the log file (when debugleve is set to
6) starting from the time when the samba server updates its job status
and after the job cancelling request is handled.

It looks like when the program  processes the request for job
cancelling,  it gets the wrong jobid value.
Where does this jobid comes from originally? Does that come from the
result of the job status query?

Ling Jiang
IBM GS
610-712-2426







More information about the samba-technical mailing list