summaryrefslogtreecommitdiff
path: root/source3
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>1998-07-10 20:03:09 +0000
committerJeremy Allison <jra@samba.org>1998-07-10 20:03:09 +0000
commit1e4b0268aa3b5021b72c17d54c846e575952e625 (patch)
tree789b1cccfba9e26ee9fa5be264616377777e36c8 /source3
parentddb7b8a3d6cb03a36ab23816b76c7b0c16c0ab37 (diff)
downloadsamba-1e4b0268aa3b5021b72c17d54c846e575952e625.tar.gz
samba-1e4b0268aa3b5021b72c17d54c846e575952e625.tar.bz2
samba-1e4b0268aa3b5021b72c17d54c846e575952e625.zip
Fix for bug PR#8294 reported by <detlef.lammermann@er.materna.de>
- the Files array was storing the 'dos_to_unix' translated name, rather than the untranslated name. This could case problems when the name was run through dos_to_unix again. Jeremy. (This used to be commit 5f4be1498f7c907a539fe9b5998dfbcaa9e20e20)
Diffstat (limited to 'source3')
-rw-r--r--source3/lib/util.c2
-rw-r--r--source3/smbd/server.c9
2 files changed, 9 insertions, 2 deletions
diff --git a/source3/lib/util.c b/source3/lib/util.c
index 750ca0f3ab..2bd7636fb0 100644
--- a/source3/lib/util.c
+++ b/source3/lib/util.c
@@ -234,7 +234,7 @@ static void check_log_size(void)
pstring name;
fclose(dbf); dbf = NULL;
slprintf(name,sizeof(name)-1,"%s.old",debugf);
- sys_rename(debugf,name);
+ rename(debugf,name);
reopen_logs();
}
}
diff --git a/source3/smbd/server.c b/source3/smbd/server.c
index 300e8d28e8..e167941ccb 100644
--- a/source3/smbd/server.c
+++ b/source3/smbd/server.c
@@ -1512,7 +1512,14 @@ static void open_file(int fnum,int cnum,char *fname1,int flags,int mode, struct
fsp->granted_oplock = False;
fsp->sent_oplock_break = False;
fsp->cnum = cnum;
- string_set(&fsp->name,dos_to_unix(fname,False));
+ /*
+ * Note that the file name here is the *untranslated* name
+ * ie. it is still in the DOS codepage sent from the client.
+ * All use of this filename will pass though the sys_xxxx
+ * functions which will do the dos_to_unix translation before
+ * mapping into a UNIX filename. JRA.
+ */
+ string_set(&fsp->name,fname);
fsp->wbmpx_ptr = NULL;
/*