Spoolss permissions, NT & XP print driver misery (2.2.2/2.2.3a/2.2.4pre)

Len Laughridge llaughridge at kitchenandassociates.com
Tue Mar 5 15:46:03 GMT 2002


Hello:  

Can someone help me understand the permissions situation with spoolss & 
printer drivers?  Between NT4 & XP, using 2.2.2, 2.2.3a and CVS, I'm in 
printer driver hell....

Please bear with me while I describe it:
I'm using SaMBa 2.2.2, with NT & XP clients.
Usually when I try to upload drivers, I get the error 'Cannot change to the 
selected driver...'  The driver files upload to W32X86/2/ and W32X86/3/, 
sometimes they get added to ntdrivers.tdb, sometimes they don't.
I've tried doing this as the local administrator on the system I'm uploading 
from, the domain administrator, and a regular user.

*If* the drivers are shown with rpcclient enumdrivers, I can use setdriver to 
associate them with the printer.  (side note - rpcclient seems unable to 
delete drivers, so the only way to get rid of something is to blow 
*everything* away, and re-upload what I want, which, given my problems, is 
frustrating to say the least.)

I have HP LJ 8000's and 1200's.
I had to set up separate queues for the XP and NT machines, because the XP 
drivers don't seem to behave on NT4, and vice-versa.  So, I have e.g. 
XP-lj8000 and NT-lj8000. (another side note - if I use the PCL6 driver for 
the XP queue, I can't also have an older version of the PCL6 driver for the 
NT queue, because they BOTH have the SAME NAME, so to differentiate among 
them when I'm working in rpcclient I have to use the PCL5e driver for the NT 
queue.)

Let me get really specific on the permissions problem....

Everything WAS working (don't know how ;-0 ) with 2.2.2.  I saw 2.2.3a was 
released, and upgraded.  

Then XP users couldn't print landscape (first symptom)

You can select it, but preview & print both come out portrait.  You also 
can't change ANYTHING in the driver and have it stick. E.g., on the LJ1200, I 
HAVE to turn off 'allow manual duplexing', so I uncheck it and click OK, but 
the setting DOESN'T stick! I believe that this is a problem with samba not 
allowing the clients permissions to make changes to the driver settings.

So I thought it was a corrupt driver, blew everything away, and tried to 
re-upload.  Failed miserably every time, no files uploaded to W32X86. 
Upgraded to CVS 2.2.4pre, MUCH worse! With 2.2.4pre you can't even ADD an 
existing printer to the XP workstation without it challenging you for 
stronger credentials!

So, I reverted to 2.2.2...
Now the XP drivers sort-of work (had to re-upload everything). XP drivers 
ONLY can be uploaded from XP, (not surprising), and while I can print 
landscape now, no other settings will stick (e.g. under Properties/Advanced I 
try to set it to 'Print directly to the printer' but it won't stay that way.)


The NT drivers are in W32X86, and are set to the printer (using rpcclient), 
but when I try to install the printer on the workstation, it either (a) won't 
install ('The system does not have the correct driver installed, would you 
like to install it locally?'); or (b) will install, but won't let you print 
landscape <picture me banging head on desk screaming in agony...> or make any 
other properties changes.

As administrator from an NT box, I've set permissions on the printers in 
\\servername\printers\ to  domain Everyone/full control, but still...  In XP, 
you can't even set the full-control privilege for domain Everyone and have it 
stick.

All files involved are chmod 666 and all directories involved are chmod 777.

I don't understand most of the log entries, but this one is typical when I'm 
trying to set a printer driver from NT:
rpc_server/srv_spoolss_nt.c:_spoolss_rfnpcnex(2504)   _spoolss_rfnpcnex: 
Invalid handle (OTHER).

So, I'm weeping into my keyboard "Somebody, please help!  Before I get 
shitcanned..."

I've been fighting with this for 4 days, while fending off angry users...

This is on Solaris 8/SPARC, (10/01 release with latest patch cluster), samba 
is source downloaded from samba.org, compiled with gcc 2.95.2 (Sun provided) 
using ./configure (no special options), installed in /usr/local

If you can respond directly to me at llaughridge at kitchenandassociates.com, 
I'd appreciate it, and will summarise any off-list answers for the list.  If 
you can only respond to the list, that's OK.

This is a critical issue for me, and it's really beating me down....
<whimper>

Thank you!

-- 
Len Laughridge
Director of Information Technology
Kitchen & Associates, PA





More information about the samba-technical mailing list