From 840c2c28d4db4f068bad793621c793698f2b4db0 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Fri, 26 Sep 2008 15:13:41 -0700 Subject: [PATCH] Fix bug #5797 - Moving readonly files fails. Reported by infomail@lordb.de. We don't need to deny a DELETE open on a readonly file (I'm also adding a s4 torture test for this), the set_file_disposition call will return NT_STATUS_CANNOT_DELETE if the delete-on-close bit is set on a readonly file (and we already do this). Jeremy. (cherry picked from commit 14fec47f7171591e5799b81c90c3f5a856002ed0) --- source/smbd/open.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/source/smbd/open.c b/source/smbd/open.c index 71191475b36..ad024a58efa 100644 --- a/source/smbd/open.c +++ b/source/smbd/open.c @@ -2608,9 +2608,7 @@ NTSTATUS create_file_unixpath(connection_struct *conn, && (create_disposition != FILE_CREATE) && (share_access & FILE_SHARE_DELETE) && (access_mask & DELETE_ACCESS) - && (((dos_mode(conn, fname, &sbuf) & FILE_ATTRIBUTE_READONLY) - && !lp_delete_readonly(SNUM(conn))) - || !can_delete_file_in_directory(conn, fname))) { + && (!can_delete_file_in_directory(conn, fname))) { status = NT_STATUS_ACCESS_DENIED; goto fail; } -- 2.11.4.GIT