From 4accd2396e8a9ac4a7b2191a1d3bc9c84d2e0497 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Mon, 4 Jun 2012 17:34:54 -0700 Subject: 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. Autobuild-User: Jeremy Allison Autobuild-Date: Tue Jun 5 04:26:11 CEST 2012 on sn-devel-104 --- source3/smbd/open.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'source3/smbd') diff --git a/source3/smbd/open.c b/source3/smbd/open.c index 17721c6127..a012675f56 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, " -- cgit