Merge branch 'master' of ssh://git.samba.org/data/git/samba
authorJelmer Vernooij <jelmer@samba.org>
Mon, 5 Jan 2009 13:02:30 +0000 (14:02 +0100)
committerJelmer Vernooij <jelmer@samba.org>
Mon, 5 Jan 2009 13:02:30 +0000 (14:02 +0100)
1  2 
source3/smbd/nttrans.c

diff --combined source3/smbd/nttrans.c
index b17aec80fa23d2714784bc57cb4824cda102a7c8,a793e614afffaea509d13a7f6970066fe6b81113..3f33237f18979f429609134c572426766ad83c93
@@@ -1310,13 -1310,6 +1310,6 @@@ void reply_ntrename(struct smb_request 
                return;
        }
  
-       if( is_ntfs_stream_name(oldname)) {
-               /* Can't rename a stream. */
-               reply_nterror(req, NT_STATUS_ACCESS_DENIED);
-               END_PROFILE(SMBntrename);
-               return;
-       }
        if (ms_has_wild(oldname)) {
                reply_nterror(req, NT_STATUS_OBJECT_PATH_SYNTAX_BAD);
                END_PROFILE(SMBntrename);
                return;
        }
  
+       /* The new name must begin with a ':' if the old name is a stream. */
+       if (is_ntfs_stream_name(oldname) && (newname[0] != ':')) {
+               reply_nterror(req, NT_STATUS_INVALID_PARAMETER);
+               END_PROFILE(SMBntrename);
+               return;
+       }
        DEBUG(3,("reply_ntrename : %s -> %s\n",oldname,newname));
  
        switch(rename_type) {
@@@ -1655,7 -1655,7 +1655,7 @@@ static void call_nt_transact_query_secu
            security_info_wanted & DACL_SECURITY_INFORMATION)
                psd->type |= SEC_DESC_DACL_PRESENT;
  
 -      sd_size = ndr_size_security_descriptor(psd, 0);
 +      sd_size = ndr_size_security_descriptor(psd, NULL, 0);
  
        DEBUG(3,("call_nt_transact_query_security_desc: sd_size = %lu.\n",(unsigned long)sd_size));