]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
libsmb: Pass the correct path to cli_posix_stat()
authorVolker Lendecke <vl@samba.org>
Mon, 24 Feb 2020 17:42:46 +0000 (09:42 -0800)
committerJeremy Allison <jra@samba.org>
Tue, 25 Feb 2020 23:23:39 +0000 (23:23 +0000)
This fixes doing strlen() on talloc_tos(), about which valgrind is pretty
unhappy. Without this patch we survive the tests because we have fallbacks to
the non-posix flavors of stat(). With this patch in place cli_posix_stat()
becomes functional in this code path. This creates conflicts with the readdir
libsmbclient tests, which need fixing separately.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=14101

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
selftest/knownfail.d/libsmbclient [new file with mode: 0644]
source3/libsmb/libsmb_file.c

diff --git a/selftest/knownfail.d/libsmbclient b/selftest/knownfail.d/libsmbclient
new file mode 100644 (file)
index 0000000..dddd6d2
--- /dev/null
@@ -0,0 +1,2 @@
+samba4.libsmbclient.readdirplus2.NT1.readdirplus2.*
+samba4.libsmbclient.readdirplus_seek.NT1.readdirplus_seek.*
index 852c3952e1b97deece5dde044a125456f93608d9..50b8f33788ae2b91b0921d081db06963f580e8c3 100644 (file)
@@ -503,7 +503,7 @@ SMBC_getatr(SMBCCTX * context,
        if (srv->try_posixinfo) {
                SMB_STRUCT_STAT sbuf;
 
-               status = cli_posix_stat(targetcli, frame, &sbuf);
+               status = cli_posix_stat(targetcli, targetpath, &sbuf);
                if (NT_STATUS_IS_OK(status)) {
                        setup_stat_from_stat_ex(&sbuf, path, sb);