Red Hat Bugzilla – Bug 132118
Included cupsaddsmb wants to use outdated/buggy Windows printer drivers
Last modified: 2007-11-30 17:07:04 EST
Description of problem:
CUPS ships with a tool called "cupsaddsmb" which is designed to
configure Samba to automatically serve out the proper drivers and PPDs
for the printers configured in CUPS.
The version of cupsaddsmb in CUPS 1.1.17 references old CUPS drivers
for Windows which are no longer applicable or recommended for use by
the CUPS folks and also Adobe drivers which are suboptimal.
In a conversation I had with Michael Sweet (CUPS developer) he
suggests that the proper driver to use for best support of
functionality and best operation with CUPS is the Windows 2000
Postscript driver which the cupsaddsmb program in RHEL 3 does not support.
The drivers that cupsaddsmb in 1.1.17 knows to install have multiple
problems with everyday Windows applications. Two examples that I just
dealt with are not properly handling multiple copy requests in certain
applications (notably Adobe products such as Acrobat Reader) and a
complete inability to print anything from the Microsoft Windows
Picture and Fax Viewer - a default image viewing and printing program
in Windows XP. I'm sure other problems would be evident in shops that
have a more printing intensive infrastructure.
With only very minor changes I was able to take the cupsaddsmb program
from CUPS 1.1.21rc2 and modify it so that it would work with CUPS
1.1.17 as shipped in RHEL3. I've included a diff for cupsaddsmb.c and
the cupsaddsmb manpage against the source of cups-1.1.17-13.2.12.
I'm also including a diff inline to show the change I made from the
cupsaddsmb.c in 1.1.21rc2 to get it working in 1.1.17:
--- cupsaddsmb.c 2004-08-23 14:36:50.000000000 -0400
+++ ecupsaddsmb.c 2004-09-08 18:24:08.000000000 -0400
@@ -496,7 +496,7 @@
* Get the PPD file...
- if ((ppdfile = cupsGetPPD2(http, dest)) == NULL)
+ if ((ppdfile = cupsGetPPD(dest)) == NULL)
fprintf(stderr, "cupsaddsmb: No PPD file for printer \"%s\" -
So, obviously I have this working here but I've been working on
figuring out why the drivers that the shipping cupsaddsmb recommends
would produce no output, bad output, buggy behavior, etc. for a number
of days now. Someone not as familiar with (or interested in)
searching the Internet for clues and answers might appreciate this
being updated within the distribution.
Created attachment 103613 [details]
Patch for cupsaddsmb against cups-1.1.17-13.3.12 build tree
This patch updates the cupsaddsmb in cups-1.1.17-13.3.12 RPM to include the
functionality and recommendations of cupsaddsmb from CUPS 1.1.21rc2 but
modified to be compatible with the older version of CUPS shipped in RHEL3.
This bug is filed against RHEL 3, which is in maintenance phase.
During the maintenance phase, only security errata and select mission
critical bug fixes will be released for enterprise products. Since
this bug does not meet that criteria, it is now being closed.
For more information of the RHEL errata support policy, please visit:
If you feel this bug is indeed mission critical, please contact your
support representative. You may be asked to provide detailed
information on how this bug is affecting you.