summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2020-05-11 12:23:49 -0700
committerKarolin Seeger <kseeger@samba.org>2020-06-04 11:47:47 +0000
commitea64f5fb2d87877d77a8ccdd6874b367efaf62a4 (patch)
tree4a354444120070cd37c6d64913f4f6e49430a02a
parentcc105695a60f629928c971e98e15edb89fb58162 (diff)
downloadsamba-ea64f5fb2d87877d77a8ccdd6874b367efaf62a4.tar.gz
s3: libsmb: In SMB2 return NT_STATUS_INVALID_NETWORK_RESPONSE if name conversion ended up with a NULL filename.
Can happen if namelen == 0. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14374 Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org> (cherry picked from commit 753115a8d19f6ac8cd28305748fc6d888679dccc)
-rw-r--r--selftest/knownfail.d/bad_iconv1
-rw-r--r--source3/libsmb/cli_smb2_fnum.c6
2 files changed, 6 insertions, 1 deletions
diff --git a/selftest/knownfail.d/bad_iconv b/selftest/knownfail.d/bad_iconv
index cdedc70e78b..c45022f3457 100644
--- a/selftest/knownfail.d/bad_iconv
+++ b/selftest/knownfail.d/bad_iconv
@@ -1,3 +1,2 @@
samba3.blackbox.smbclient_iconv.NT1
-samba3.blackbox.smbclient_iconv.SMB2
diff --git a/source3/libsmb/cli_smb2_fnum.c b/source3/libsmb/cli_smb2_fnum.c
index 4cae87853db..8c8b33f49ed 100644
--- a/source3/libsmb/cli_smb2_fnum.c
+++ b/source3/libsmb/cli_smb2_fnum.c
@@ -1269,6 +1269,12 @@ static NTSTATUS parse_finfo_id_both_directory_info(uint8_t *dir_data,
/* Bad conversion. */
return NT_STATUS_INVALID_NETWORK_RESPONSE;
}
+
+ if (finfo->name == NULL) {
+ /* Bad conversion. */
+ return NT_STATUS_INVALID_NETWORK_RESPONSE;
+ }
+
return NT_STATUS_OK;
}