From 63e9072358c073b2f3fd02630785bafd05fdb30d Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Mon, 4 Jun 2012 17:34:54 -0700 Subject: [PATCH] Fix bug #8972 - Directory group write permission bit is set if unix extensions are enabled We can't manipulate file_attributes if it's a posix call. I'll look at adding a test for this asap. --- source3/smbd/open.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/source3/smbd/open.c b/source3/smbd/open.c index 17721c6..a012675 100644 --- a/source3/smbd/open.c +++ b/source3/smbd/open.c @@ -2714,8 +2714,10 @@ static NTSTATUS open_directory(connection_struct *conn, return NT_STATUS_NOT_A_DIRECTORY; } - /* Ensure we have a directory attribute. */ - file_attributes |= FILE_ATTRIBUTE_DIRECTORY; + if (!(file_attributes & FILE_FLAG_POSIX_SEMANTICS)) { + /* Ensure we have a directory attribute. */ + file_attributes |= FILE_ATTRIBUTE_DIRECTORY; + } DEBUG(5,("open_directory: opening directory %s, access_mask = 0x%x, " "share_access = 0x%x create_options = 0x%x, " -- 1.7.7.3