diff options
author | David Disseldorp <ddiss@samba.org> | 2012-08-28 18:58:24 +0200 |
---|---|---|
committer | David Disseldorp <ddiss@samba.org> | 2012-08-29 14:25:12 +0200 |
commit | fb15e5a58f79801b0a74a8ddf555411c0fd44acb (patch) | |
tree | 6827666abb3e48641c9012adbde93def5a69743d | |
parent | 24356f3cc9382b321939a53efec313ebce0acfa5 (diff) | |
download | samba-fb15e5a58f79801b0a74a8ddf555411c0fd44acb.tar.gz samba-fb15e5a58f79801b0a74a8ddf555411c0fd44acb.tar.bz2 samba-fb15e5a58f79801b0a74a8ddf555411c0fd44acb.zip |
s3-printing: fix bug 9123 lprng job tracking errors
The lprng printing back-end is truncating the print job filename in the
lpq output, which means that Samba is not able to determine the back-end
job ID for a newly submitted print job.
Remove the unneeded spoolss job ID from the print job file name to
ensure the job filename is not truncated. Also log these warnings at a
higher log level.
Autobuild-User(master): David Disseldorp <ddiss@samba.org>
Autobuild-Date(master): Wed Aug 29 14:25:13 CEST 2012 on sn-devel-104
-rw-r--r-- | source3/printing/print_generic.c | 2 | ||||
-rw-r--r-- | source3/printing/printing.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/source3/printing/print_generic.c b/source3/printing/print_generic.c index efe910d7b4..1560a035a1 100644 --- a/source3/printing/print_generic.c +++ b/source3/printing/print_generic.c @@ -288,7 +288,7 @@ static int generic_job_submit(int snum, struct printjob *pjob, ret = 0; } if (pjob->sysjob == -1) { - DEBUG(0, ("failed to get sysjob for job %u (%s), tracking as " + DEBUG(2, ("failed to get sysjob for job %u (%s), tracking as " "Unix job\n", pjob->jobid, jobname)); } diff --git a/source3/printing/printing.c b/source3/printing/printing.c index 9a7b110925..23b143b4c6 100644 --- a/source3/printing/printing.c +++ b/source3/printing/printing.c @@ -2739,8 +2739,8 @@ static WERROR print_job_spool_file(int snum, uint32_t jobid, } slprintf(pjob->filename, sizeof(pjob->filename)-1, - "%s/%s%.8u.XXXXXX", lp_pathname(talloc_tos(), snum), - PRINT_SPOOL_PREFIX, (unsigned int)jobid); + "%s/%sXXXXXX", lp_pathname(talloc_tos(), snum), + PRINT_SPOOL_PREFIX); pjob->fd = mkstemp(pjob->filename); if (pjob->fd == -1) { |