Robert Polá¹ek
1998-Dec-09  09:44 UTC
Creating new folder in a WIN95 explorer czech version.
I can't create new folder in a czech Win95 explorer on a unix using samba
1.9.18p7. The problem is that Windows exporer uses for the creation new folder a
name containing characters above 128.
The explorer creates new folder in a two phases: the first It creates directory
named Nov<A0> slo<A7>zka and next it gives to user
posibility to change this name. Crazy !!? The first phase is well interpreted
but second phase failes and user loose a posibility to
access this new directory Nov<A0> slo<A7>zka. If I interpreted well
content of log file it tells me that folder Nov<A0> slo<A7>zka was
created but It tryes rename directory Nov<B5> slo<A6>zka.
May be I has wrong set smb.conf file. Can somebody help me with this.
		Robert Polasek
 
My smb.conf file:
; The global setting for a RedHat default install
; smbd re-reads this file regularly, but if in doubt stop and restart it:
; /etc/rc.d/init.d/smb stop
; /etc/rc.d/init.d/smb start
;======================= Global Settings
====================================[global]
  wins server = 192.168.0.71
  encrypt passwords = yes
; workgroup = NT-Domain-Name or Workgroup-Name, eg: REDHAT4
   workgroup = UNIXGROUP
; comment is the equivalent of the NT Description field
   comment = RedHat Samba Server
; volume = used to emulate a CDRom label (can be set on a per share basis)
   volume = RedHat4
; printing = BSD or SYSV or AIX, etc.
   printing = bsd
   printcap name = /etc/printcap
   load printers = yes
; Uncomment this if you want a guest account
;  guest account = pcguest
   log file = /var/log/samba/samba-log.%m
; Put a capping on the size of the log files (in Kb)
   max log size = 50
; Options for handling file name case sensitivity and / or preservation
; Case Sensitivity breaks many WfW and Win95 apps
    case sensitive = no
    short preserve case = yes
    preserve case = no
    mangle case = yes
; Security and file integrity related options
   lock directory = /var/lock/samba
   locking = yes
   strict locking = yes
;   fake oplocks = yes
   share modes = yes
;============================ Share Declarations
=============================[homes]
   comment = Home Directories
   browseable = no
   read only = no
   preserve case = yes
   short preserve case = yes
   create mode = 0750
; Un-comment the following and create the netlogon directory for Domain Logons
; [netlogon]
;   comment = Samba Network Logon Service
;   path = /home/netlogon
; Case sensitivity breaks logon script processing!!!
;   case sensitive = no
;   guest ok = yes
;   locking = no
;   read only = yes
;   browseable = yes  ; say NO if you want to hide the NETLOGON share
;   admin users = @wheel
; NOTE: There is NO need to specifically define each individual printer
[printers]
   comment = All Printers
   path = /var/spool/samba
   browseable = no
   printable = yes
; Set public = yes to allow user 'guest account' to print
   public = yes
   writable = no
   create mode = 0700
[tmp]
   comment = Temporary file space
   path = /tmp/sniffit
   read only = no
   public = yes
[new]
   comment = New on Hamoun
   path = /home/pcsw
   browseable = no
   read only = no
   preserve case = yes
   short preserve case = no
   create mode = 0640
Detlef Lammermann
1998-Dec-09  15:34 UTC
Creating new folder in a WIN95 explorer czech version.
Robert Pol??ek schrieb:> > I can't create new folder in a czech Win95 explorer on a unix > using samba 1.9.18p7. The problem is that Windows exporer uses > for the creation new folder a name containing characters above 128. > The explorer creates new folder in a two phases: > the first It creates directory named Nov<A0> slo<A7>zka and > next it gives to user posibility to change this name. Crazy !!? > The first phase is well interpreted but second phase failes > and user loose a posibility to access this new directory Nov<A0> slo<A7>zka. > If I interpreted well content of log file it tells me that folder > Nov<A0> slo<A7>zka was created but It tryes rename directory > Nov<B5> slo<A6>zka. > May be I has wrong set smb.conf file. Can somebody help me with this.Hello Robert! There was a problem report (PR#8294) from july this year not appearing in the list. It describes a similar problem accessing files with german umlauts. This bug has been fixed with 1.9.18p10. See a mail transcript below which contains both a detailed description and a patch, working fine. While rereading these old mails I had a look to your smb.conf and missed some settings for foreign languages. See the entries for "character set" and "valid chars" (and maybe some cross references) in the smb.conf(5) man page. Good luck, Detlef ---------------------------------------------------------------------------------> From: Jeremy Allison <jallison@whistle.com> 10.07.98 21:14 > Subject: Re: SMBsetattrE, iso8859-1 (PR#8294) > > detlef.lammermann@er.materna.de wrote: > > > > Hello Samba team, > > > > I think I have found a bug concerning SMBsetattrE (and maybe related > > functions) > > in 1.9.18p8 (and maybe others). > > > > In my smb.conf I have some settings enabled to allow for german umlauts > > in file names: > > character set = iso8859-1 > > valid chars = ?:? ?:? ?:? ?:? > > preserve case = yes > > short preserve case = yes > > case sensitive = no > > > > I used the touch(1) utility from the U/Win environment from David Korn > > and saw it failing everytime the file name contains a german umlaut. > > The log said "error string = no such file or directory" on SMBsetattrE. > > Tracing the calls gave the sequence > > SMBopenX > > SMBtrans2 > > SMBsetattrE > > SMBclose > > > > I added some debug statements and saw utime(2) being called with file > > name > > "te^Zt" while I supplied "te?t" (german double s). > > I reviewed the code and found the following reason: > > - SMBopenX finally calls open_file(), which stores a converted (!!) file > > name: > > server.c:1507: string_set(&fsp->name,dos_to_unix(fname,False)); > > - SMBsetattrE reuses this previously stored file name and finally calls > > sys_utime() which again converts the file name: > > system.c:206: return(utime(dos_to_unix(fname,False),time)); > > > > Sorry, I don't know about the consequenses of just patching any of these > > two > > calls to the conversion routine, so I can't supply a patch. Since there > > are > > Detlef, > > You are completely correct. Thanks for finding this > bug. The call : > > server.c:1507: string_set(&fsp->name,dos_to_unix(fname,False)); > > should be : > > server.c:1507: string_set(&fsp->name,fname); > > (ie. it should be storing an untranslated name). > > If you could make this change and test that Samba > still performs correctly for you in your environment > I would greatly appreciate it. > > Thanks, > > Jeremy Allison. > Samba Team. >-- //// (Q Q) ---------------------------------------------------------------o0o.-(_)-.o0o---- Detlef Lammermann eMail: detlef.lammermann@er.materna.de Dr. Materna GmbH X.400: /G=Detlef/S=Lammermann/O=ER/P=MATERNA/A=UMI-DE/C=DE/ Wetterkreuz 3 Voice: +49 9131 7723-60 D-91058 Erlangen Fax: +49 9131 7723-45