From e868d083304025f00a953399c0478ee2e031f5bf Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Sun, 3 Apr 2011 13:57:11 +0200 Subject: [PATCH] s3: Fix bug 8042: File creation on OS/X With a case insensitive file system the stat cache lookup leaked the parent directorys stat information from unix_convert into the smb_filename. This led open_file_ntcreate to believe it just created a directory. In the case where we do the search we already invalidate the stat struct. Thanks to TAKAHASHI Motonobu for insisting! :-) Volker --- source3/smbd/filename.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/source3/smbd/filename.c b/source3/smbd/filename.c index 154d34a..4f7e070 100644 --- a/source3/smbd/filename.c +++ b/source3/smbd/filename.c @@ -401,6 +401,10 @@ NTSTATUS unix_convert(TALLOC_CTX *ctx, goto fail; } } + + /* Stat failed - ensure we don't use it. */ + SET_STAT_INVALID(smb_fname->st); + /* * Missing last component is ok - new file. * Also deal with permission denied elsewhere. -- 1.7.0.4