From c42bc81ef0c6c3c46a7633610d77a7d9e144ba4b Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Thu, 27 Sep 2018 14:12:47 -0700 Subject: [PATCH] s3: smbd: Prevent valgrind errors in smbtorture3 POSIX test. Missing fsp talloc free and linked list delete in error paths in close_directory(). Now matches close_normal_file() and close_fake_file(). BUG: https://bugzilla.samba.org/show_bug.cgi?id=13633 Signed-off-by: Jeremy Allison Reviewed-by: Ralph Boehme Autobuild-User(master): Jeremy Allison Autobuild-Date(master): Sat Sep 29 05:32:41 CEST 2018 on sn-devel-144 (cherry picked from commit 660dbfaeff493359474ebdb36098ac49b3f7ba0c) --- source3/smbd/close.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source3/smbd/close.c b/source3/smbd/close.c index 8581b04e8aa..c50642f2aee 100644 --- a/source3/smbd/close.c +++ b/source3/smbd/close.c @@ -1094,6 +1094,8 @@ static NTSTATUS close_directory(struct smb_request *req, files_struct *fsp, if (lck == NULL) { DEBUG(0, ("close_directory: Could not get share mode lock for " "%s\n", fsp_str_dbg(fsp))); + close_filestruct(fsp); + file_free(req, fsp); return NT_STATUS_INVALID_PARAMETER; } @@ -1177,6 +1179,8 @@ static NTSTATUS close_directory(struct smb_request *req, files_struct *fsp, if (!NT_STATUS_IS_OK(status)) { DEBUG(5, ("delete_all_streams failed: %s\n", nt_errstr(status))); + close_filestruct(fsp); + file_free(req, fsp); return status; } } -- 2.19.0.605.g01d371f741-goog