Printer driver download broken on 2.2.3a

Steven French sfrench at us.ibm.com
Thu Mar 21 23:03:03 GMT 2002


A more detailed description of what I am seeing.

It looks like I can manually (via rpcclient) do a successful adddriver of
the printer driver followed by setprinter of the printer to lp-raw but
Windows 2000 (or XP) won't download the driver when it attaches to the
print share because we are returning mostly empty data back from Samba
2.2.3a in response to GetPrinter level 2 RPC request

The data returned from rpcclient looks correct for:
1) enumdrivers
2) enumprinters (with the driver field in the middle of the description
field, separated by commas from the two adjacent fields)
3) and getprinter level 1 also looks right

but as with the request from the Windows client, rpcclient sees that almost
nothing is returned from getprinter level 2 and specifically the driver
field is empty in it so I can't blame the windows client for claiming that
the driver is not installed and bringing up the add printer wizard    :)

Also wrong is the response to issuing via rpcclient "getdriver lp-raw 2"
which generates nothing (just a blank line) and the ethereal (newest
version 0.9.2) trace shows a bunch of repeated SPOOLSS_GETPRINTERDRIVER2
calls with what looks like empty but non-error response buffers.   The
smbd.log does not contain any data (even at level 5 logging) for these
level two calls (getdriver and getprinter).   Very strange.

Has anyone seen this?  There is nothing superficially visible that I saw
wrong with parse_spoolss.c's routine smb_io_printer_driver_info_2 vs.
info_1 (unless the description field is not supposed to be overloaded with
three comma delimited fields including the driver information as it seems
to be in the level 1 response).

Steve French
Senior Software Engineer
Linux Technology Center - IBM Austin
phone: 512-838-2294
email: sfrench at us.ibm.com





More information about the samba-technical mailing list