summaryrefslogtreecommitdiffstats
path: root/fs/smb/server/vfs.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2023-12-12 19:30:10 +0100
committerLinus Torvalds <torvalds@linux-foundation.org>2023-12-12 19:30:10 +0100
commit8b8cd4beea4f6c68092736c544a797dcd5e094c5 (patch)
tree648c926bb525d670975e5a30e8e701a68cd56d40 /fs/smb/server/vfs.c
parentMerge tag 'bcachefs-2023-12-10' of https://evilpiepirate.org/git/bcachefs (diff)
parentksmbd: fix wrong name of SMB2_CREATE_ALLOCATION_SIZE (diff)
downloadlinux-8b8cd4beea4f6c68092736c544a797dcd5e094c5.tar.xz
linux-8b8cd4beea4f6c68092736c544a797dcd5e094c5.zip
Merge tag '6.7-rc5-ksmbd-server-fixes' of git://git.samba.org/ksmbd
Pull smb server fixes from Steve French: - Memory leak fix (in lock error path) - Two fixes for create with allocation size - FIx for potential UAF in lease break error path - Five directory lease (caching) fixes found during additional recent testing * tag '6.7-rc5-ksmbd-server-fixes' of git://git.samba.org/ksmbd: ksmbd: fix wrong name of SMB2_CREATE_ALLOCATION_SIZE ksmbd: fix wrong allocation size update in smb2_open() ksmbd: avoid duplicate opinfo_put() call on error of smb21_lease_break_ack() ksmbd: lazy v2 lease break on smb2_write() ksmbd: send v2 lease break notification for directory ksmbd: downgrade RWH lease caching state to RH for directory ksmbd: set v2 lease capability ksmbd: set epoch in create context v2 lease ksmbd: fix memory leak in smb2_lock()
Diffstat (limited to 'fs/smb/server/vfs.c')
-rw-r--r--fs/smb/server/vfs.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/smb/server/vfs.c b/fs/smb/server/vfs.c
index 9091dcd7a310..4277750a6da1 100644
--- a/fs/smb/server/vfs.c
+++ b/fs/smb/server/vfs.c
@@ -517,6 +517,9 @@ int ksmbd_vfs_write(struct ksmbd_work *work, struct ksmbd_file *fp,
}
}
+ /* Reserve lease break for parent dir at closing time */
+ fp->reserve_lease_break = true;
+
/* Do we need to break any of a levelII oplock? */
smb_break_all_levII_oplock(work, fp, 1);