[SCM] Samba Shared Repository - branch v3-6-test updated

Karolin Seeger kseeger at samba.org
Sat Oct 8 12:05:40 MDT 2011


The branch, v3-6-test has been updated
       via  5253d36 Fix bug #8507 - smbd doesn't correctly honor the "force create mode" bits from a cifsfs create.
      from  589bea9 Second part of fix for bug #8443 - Default user entry is set to minimal permissions on incoming ACL change with no user specified.

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


- Log -----------------------------------------------------------------
commit 5253d36689115672f35ea8fffdcf509587900135
Author: Jeremy Allison <jra at samba.org>
Date:   Tue Oct 4 14:46:00 2011 -0700

    Fix bug #8507 - smbd doesn't correctly honor the "force create mode" bits from a cifsfs create.
    
    Don't manipulate the new_dos_attributes bits until we know it's not a POSIX open.
    
    Autobuild-User: Jeremy Allison <jra at samba.org>
    Autobuild-Date: Wed Oct  5 01:19:17 CEST 2011 on sn-devel-104
    (cherry picked from commit f93fd128eb623e324459806a34052bd40afe82e5)

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

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


Changeset truncated at 500 lines:

diff --git a/source3/smbd/open.c b/source3/smbd/open.c
index 1cab9ab..e30d36e 100644
--- a/source3/smbd/open.c
+++ b/source3/smbd/open.c
@@ -1540,12 +1540,6 @@ static NTSTATUS open_file_ntcreate(connection_struct *conn,
 
 	ZERO_STRUCT(id);
 
-	/* Windows allows a new file to be created and
-	   silently removes a FILE_ATTRIBUTE_DIRECTORY
-	   sent by the client. Do the same. */
-
-	new_dos_attributes &= ~FILE_ATTRIBUTE_DIRECTORY;
-
 	if (conn->printer) {
 		/*
 		 * Printers are handled completely differently.
@@ -1579,6 +1573,12 @@ static NTSTATUS open_file_ntcreate(connection_struct *conn,
 		unx_mode = (mode_t)(new_dos_attributes & ~FILE_FLAG_POSIX_SEMANTICS);
 		new_dos_attributes = 0;
 	} else {
+		/* Windows allows a new file to be created and
+		   silently removes a FILE_ATTRIBUTE_DIRECTORY
+		   sent by the client. Do the same. */
+
+		new_dos_attributes &= ~FILE_ATTRIBUTE_DIRECTORY;
+
 		/* We add FILE_ATTRIBUTE_ARCHIVE to this as this mode is only used if the file is
 		 * created new. */
 		unx_mode = unix_mode(conn, new_dos_attributes | FILE_ATTRIBUTE_ARCHIVE,


-- 
Samba Shared Repository


More information about the samba-cvs mailing list