[PATCH smb3-posix-extensions] FSA: allow rename over files with only POSIX opens

ChenXiaoSong chenxiaosong at chenxiaosong.com
Wed Aug 5 08:20:18 UTC 2026


From: ChenXiaoSong <chenxiaosong at kylinos.cn>

Update FileRenameInformation processing for an existing destination.
Ignore POSIX opens when checking whether the destination is open, so the
rename can continue if all destination opens use POSIX semantics.

Keep returning STATUS_ACCESS_DENIED if the destination has one or more
non-POSIX opens.

Signed-off-by: ChenXiaoSong <chenxiaosong at kylinos.cn>
---
 fsa_posix_extensions.md | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/fsa_posix_extensions.md b/fsa_posix_extensions.md
index e03102d..7dbdf77 100644
--- a/fsa_posix_extensions.md
+++ b/fsa_posix_extensions.md
@@ -617,3 +617,18 @@ Open.GrantedAccess does not incluce FILE_WRITE_ATTRIBUTES and
 not AccessCheck(SecurityContext, File.SecurityDescriptor, FILE_WRITE_ATTRIBUTES):
 
 - the operation MUST be failed with STATUS_CANNOT_DELETE.
+
+##### 2.1.4.8.3 FileRenameInformation
+
+When processing the following condition from MS-FSA 2.1.5.15.12:
+
+- If there was not an oplock to be broken and
+  **TargetLink.File.OpenList** contains an **Open** with a **Stream**
+  matching the current **Stream**, the operation MUST be failed with
+  `STATUS_ACCESS_DENIED`.
+
+For this check, the object store MUST consider only matching opens for which
+**Open.IsPosix** is FALSE. If one or more such opens exist, the operation
+MUST be failed with `STATUS_ACCESS_DENIED`. If all matching opens have
+**Open.IsPosix** set to TRUE, this check MUST NOT fail the operation and
+processing MUST continue as specified in MS-FSA 2.1.5.15.12.
-- 
2.54.0




More information about the samba-technical mailing list