From: Ralph Boehme Date: Mon, 10 Jul 2023 14:34:23 +0000 (+0200) Subject: smbd: don't leak the fsp if close_file_smb() fails X-Git-Tag: samba-4.17.11~87 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cdce89e434e258dcf6d58e8510b2f5bf42841932;p=thirdparty%2Fsamba.git smbd: don't leak the fsp if close_file_smb() fails This can happen if DELETE-ON-CLOSE is set, but the deletion fails for some reason. The bug was introduced by 1808e5c133474eabc9d3cf91c2a92ec4d92d9fdd. BUG: https://bugzilla.samba.org/show_bug.cgi?id=15417 Signed-off-by: Ralph Boehme Reviewed-by: Jeremy Allison Autobuild-User(master): Jeremy Allison Autobuild-Date(master): Mon Jul 10 21:32:32 UTC 2023 on atb-devel-224 (cherry picked from commit 4da50463e1b75c06d5f8c066e8b4eff48186afb0) Autobuild-User(v4-17-test): Jule Anger Autobuild-Date(v4-17-test): Wed Jul 19 16:27:39 UTC 2023 on sn-devel-184 --- diff --git a/source3/smbd/smb2_close.c b/source3/smbd/smb2_close.c index cb494a3a4d9..d4a26765477 100644 --- a/source3/smbd/smb2_close.c +++ b/source3/smbd/smb2_close.c @@ -225,6 +225,8 @@ static NTSTATUS smbd_smb2_close(struct smbd_smb2_request *req, if (!NT_STATUS_IS_OK(status)) { DEBUG(5,("smbd_smb2_close: close_file[%s]: %s\n", smb_fname_str_dbg(smb_fname), nt_errstr(status))); + file_free(smbreq, fsp); + *_fsp = fsp = NULL; return status; }