From 3d46a077dd0999cc0c6032379147811c8bb660fb Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Thu, 24 Jan 2013 11:02:30 -0800 Subject: [PATCH] Fix bug #9587 - archive flag is always set on directories. Creating a directory to a Samba share sets the attributes to 'D' only (correct) - only when creating a new file should the 'A' attribute be set. However, doing a rename of that directory sets the 'A' attribute in error. This should only be done on a file rename. smbclient regression test to follow. Signed-off-by: Jeremy Allison Reviewed-by: David Disseldorp --- source3/smbd/reply.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c index 6e1cd27803e6..64c4fdbe5929 100644 --- a/source3/smbd/reply.c +++ b/source3/smbd/reply.c @@ -6416,7 +6416,8 @@ NTSTATUS rename_internals_fsp(connection_struct *conn, "%s -> %s\n", smb_fname_str_dbg(fsp->fsp_name), smb_fname_str_dbg(smb_fname_dst))); - if (!lp_posix_pathnames() && + if (!fsp->is_directory && + !lp_posix_pathnames() && (lp_map_archive(SNUM(conn)) || lp_store_dos_attributes(SNUM(conn)))) { /* We must set the archive bit on the newly -- 2.34.1