[SCM] Samba Shared Repository - branch v3-3-test updated - release-3-2-0pre2-4678-gfc4366c

Karolin Seeger kseeger at samba.org
Fri Dec 12 16:54:29 GMT 2008


The branch, v3-3-test has been updated
       via  fc4366ca11cac97819eb06a744cf8e35b4524bcc (commit)
      from  6459f00d1cad1d5e9e14851610ca7a92406ad54a (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test


- Log -----------------------------------------------------------------
commit fc4366ca11cac97819eb06a744cf8e35b4524bcc
Author: Volker Lendecke <vl at sernet.de>
Date:   Fri Dec 12 13:47:41 2008 +0100

    Fix error code when smbclient puts a file over an existing directory
    
    Windows returns NT_STATUS_FILE_IS_A_DIRECTORY, as does Samba 3.0. 3.2 and
    following returned NT_STATUS_INVALID_PARAMETER which is wrong.
    
    Before I converted reply_open_and_X to create_file() we called
    open_file_ntcreate directly. Passing through open&X for a filename that exists
    as a directory ends up in open_directory after having tried open_file_ntcreate.
    Some check in there returns NT_STATUS_INVALID_PARAMETER. With this additional
    FILE_NON_DIRECTORY_FILE flag we get the correct error message back from
    create_file_unixpath before trying open_directory().
    
    Survives make test, but as this also touches the other open variants I would
    like others to review this.
    
    Volker

-----------------------------------------------------------------------

Summary of changes:
 source/smbd/open.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/smbd/open.c b/source/smbd/open.c
index 7043f51..52342fa 100644
--- a/source/smbd/open.c
+++ b/source/smbd/open.c
@@ -1030,7 +1030,7 @@ bool map_open_params_to_ntcreate(const char *fname, int deny_mode, int open_func
 	uint32 access_mask;
 	uint32 share_mode;
 	uint32 create_disposition;
-	uint32 create_options = 0;
+	uint32 create_options = FILE_NON_DIRECTORY_FILE;
 
 	DEBUG(10,("map_open_params_to_ntcreate: fname = %s, deny_mode = 0x%x, "
 		  "open_func = 0x%x\n",


-- 
Samba Shared Repository


More information about the samba-cvs mailing list