]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
s3:smbd: give the correct error when trying to replace a stream
authorStefan Metzmacher <metze@samba.org>
Mon, 1 Dec 2008 22:23:53 +0000 (14:23 -0800)
committerKarolin Seeger <kseeger@samba.org>
Thu, 11 Dec 2008 09:27:12 +0000 (10:27 +0100)
metze
(cherry picked from commit ed56ab532abc9c36f6dbbf3e5d93d1fa6f84b0c7)

source/smbd/reply.c

index 171e85b2a2714c37a71a0906b6f5bd91a455e95f..afcb5b286ad64aca09205604eb8facec25d25fa8 100644 (file)
@@ -5581,6 +5581,12 @@ NTSTATUS rename_internals_fsp(connection_struct *conn,
                return NT_STATUS_OBJECT_NAME_COLLISION;
        }
 
+       if(replace_if_exists && dst_exists) {
+               if (is_ntfs_stream_name(newname)) {
+                       return NT_STATUS_INVALID_PARAMETER;
+               }
+       }
+
        if (dst_exists) {
                struct file_id fileid = vfs_file_id_from_sbuf(conn, &sbuf1);
                files_struct *dst_fsp = file_find_di_first(fileid);