瀏覽代碼

NTFileSystemHelper: Rename will now return STATUS_OBJECT_NAME_COLLISION if the destination exists

Tal Aloni 8 年之前
父節點
當前提交
353460a976
共有 1 個文件被更改,包括 2 次插入1 次删除
  1. 2 1
      SMBLibrary/Server/Helpers/NTFileSystemHelper.cs

+ 2 - 1
SMBLibrary/Server/Helpers/NTFileSystemHelper.cs

@@ -384,7 +384,8 @@ namespace SMBLibrary.Server
                 }
                 else if (errorCode == (ushort)Win32Error.ERROR_ALREADY_EXISTS)
                 {
-                    return NTStatus.STATUS_OBJECT_NAME_EXISTS;
+                    // According to [MS-FSCC], FileRenameInformation MUST return STATUS_OBJECT_NAME_COLLISION when the specified name already exists and ReplaceIfExists is zero.
+                    return NTStatus.STATUS_OBJECT_NAME_COLLISION;
                 }
                 else
                 {