summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2011-06-08 10:24:02 -0700
committerKarolin Seeger <kseeger@samba.org>2011-06-14 12:59:02 +0200
commit5bf5324e6352bb8c68855e5fdbc9991ae71525b6 (patch)
tree3e88bcf7fa4973282c1e2ba8505b50e3fa74659a
parent55d6c2be05655154851caaceb7eeffedf3a25558 (diff)
downloadsamba-5bf5324e6352bb8c68855e5fdbc9991ae71525b6.tar.gz
Part 1 of bugfix for #8211 - "inherit owner = yes" doesn't interact correctly with "inherit permissions = yes" and POSIX ACLs
When changing ownership on a new directory make sure we also change the returned stat struct to have the correct uid. (cherry picked from commit f3900b0a96f98cc65d957cda5f92963f636d6ec1)
-rw-r--r--source3/smbd/open.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/source3/smbd/open.c b/source3/smbd/open.c
index 0d585cf8dcd..e8d1a1bd407 100644
--- a/source3/smbd/open.c
+++ b/source3/smbd/open.c
@@ -338,6 +338,9 @@ NTSTATUS change_dir_owner_to_parent(connection_struct *conn,
"directory %s to parent directory uid %u.\n",
fname, (unsigned int)smb_fname_parent->st.st_ex_uid ));
+ /* Ensure the uid entry is updated. */
+ psbuf->st_ex_uid = smb_fname_parent->st.st_ex_uid;
+
chdir:
vfs_ChDir(conn,saved_dir);
out: