Mr David Munro
2005-Sep-09 13:19 UTC
[Samba] CUPS username case wrong from Windows 98 client
I have a problem getting Windows 98 clients printing to CUPS printers where I have the printer access allowed/denied by username. It appears that samba is passing the username in uppercase to CUPS as the owner of the printjob and then CUPS does not recognise that username and rejects the job. It all works under Windows NT/XP. I am running samba 3.0.20 and cups 1.1.23. The smb.conf file is below # Samba config file created using SWAT # from 131.227.115.22 (131.227.115.22) # Date: 2005/05/12 12:36:36 # Global parameters [global] display charset = ASCII workgroup = SEPS netbios name = PHSMB netbios aliases = moria update encrypted = Yes smb passwd file = /etc/samba/smbpasswd private dir = /etc/samba passdb backend = ldapsam:ldap://eldar username map = /etc/samba/smbusers log level = 0 log file = /var/log/samba/log.%m max log size = 1000 name resolve order = wins lmhosts bcast host time server = Yes lpq cache time = 60 max open files = 1000 socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192 logon script = logon.cmd logon path = \\phsmb\homes\.winprofile logon drive = H: logon home = \\phsmb\homes domain logons = Yes domain master = No wins server = 131.227.76.25 ldap admin dn = cn=Manager,dc=eps,dc=surrey,dc=ac,dc=uk ldap delete dn = Yes ldap group suffix = ou=Groups ldap idmap suffix = dc=eps,dc=surrey,dc=ac,dc=uk ldap machine suffix = ou=Computers ldap suffix = dc=eps,dc=surrey,dc=ac,dc=uk ldap ssl = no ldap user suffix = ou=People lock directory = /var/cache/samba pid directory = /var/run utmp directory = /var/run wtmp directory = /var/log utmp = Yes template shell = /usr/local/bin/tcsh printing = cups printer admin = phs1dm, phs2jd, @scs hosts allow = 131.227. [netlogon] path = /usr/local/samba/netlogon write list = root, phs1dm [homes] comment = Home Directories read only = No create mask = 0740 directory mask = 0751 browseable = No [printers] comment = All Printers path = /tmp create mask = 0700 printable = Yes browseable = No And here is the relevant printers.conf entry from cups <DefaultPrinter wells> Info Physics Computer support printer Location 1BC04 DeviceURI cupspykota:socket://wells:9100 State Idle Accepting Yes JobSheets none none QuotaPeriod 0 PageLimit 0 KLimit 0 AllowUser phs1dm </Printer> This is the relevant entries from the cups error log D [09/Sep/2005:10:40:13 +0000] [Job 1] printer-uri "ipp://marvin.ph.surrey.ac.uk:631/printers/wells" D [09/Sep/2005:10:40:13 +0000] [Job 1] requesting-user-name = "PHS1DM" D [09/Sep/2005:10:40:13 +0000] [Job 1] job-name = "smbprn.00000001 Printer Test Page" E [09/Sep/2005:10:40:13 +0000] [Job 1] Print file was not accepted (client-error-not-possible)! E [09/Sep/2005:10:40:13 +0000] PID 27866 stopped with status 1! Here samba is converting the username as passed from Win 98 in upper case to lower case for authentication but it still passes the upper case username to CUPS. I've turned the debug level up to 20 but I still can't find any log message showing where that is. [2005/09/09 10:39:52, 2] auth/auth.c:(307) check_ntlm_password: authentication for user [PHS1DM] -> [PHS1DM] -> [phs1dm] succeeded -- -------------------------------------------------------------------- David Munro email: d.munro@surrey.ac.uk Department of Physics phone: 01483 689415 (direct line) University of Surrey fax: 01483 686781 Guildford, Surrey, UK, GU2 7XH