diff options
Diffstat (limited to 'source3')
-rw-r--r-- | source3/printing/print_cups.c | 6 | ||||
-rw-r--r-- | source3/printing/printing.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/source3/printing/print_cups.c b/source3/printing/print_cups.c index 291028b70c..77719ffc52 100644 --- a/source3/printing/print_cups.c +++ b/source3/printing/print_cups.c @@ -681,6 +681,7 @@ cups_job_submit(int snum, struct printjob *pjob) cups_lang_t *language; /* Default language */ char uri[HTTP_MAX_URI]; /* printer-uri attribute */ char *clientname; /* hostname of client for job-originating-host attribute */ + pstring new_jobname; DEBUG(5,("cups_job_submit(%d, %p (%d))\n", snum, pjob, pjob->sysjob)); @@ -743,8 +744,11 @@ cups_job_submit(int snum, struct printjob *pjob) "job-originating-host-name", NULL, clientname); + pstr_sprintf(new_jobname,"%s%.8u %s", PRINT_SPOOL_PREFIX, + (unsigned int)pjob->smbjob, pjob->jobname); + ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "job-name", NULL, - pjob->jobname); + new_jobname); /* * Do the request and get back a response... diff --git a/source3/printing/printing.c b/source3/printing/printing.c index ef532473ba..a4949f78e9 100644 --- a/source3/printing/printing.c +++ b/source3/printing/printing.c @@ -2062,6 +2062,8 @@ BOOL print_job_end(int snum, uint32 jobid, BOOL normal_close) return True; } + pjob->smbjob = jobid; + ret = (*(current_printif->job_submit))(snum, pjob); if (ret) |