smbd: Fix case normalization in for directories
authorVolker Lendecke <vl@samba.org>
Fri, 17 Feb 2023 09:02:37 +0000 (10:02 +0100)
committerJule Anger <janger@samba.org>
Tue, 11 Apr 2023 16:30:25 +0000 (16:30 +0000)
Bug: https://bugzilla.samba.org/show_bug.cgi?id=15313
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Fri Feb 24 08:46:14 UTC 2023 on atb-devel-224

(cherry picked from commit bf9130d375b6c401bb79fc1a0911975814759e3b)

Autobuild-User(v4-18-test): Jule Anger <janger@samba.org>
Autobuild-Date(v4-18-test): Tue Apr 11 16:30:25 UTC 2023 on atb-devel-224

selftest/knownfail.d/dircasesensitive [deleted file]
source3/smbd/filename.c

diff --git a/selftest/knownfail.d/dircasesensitive b/selftest/knownfail.d/dircasesensitive
deleted file mode 100644 (file)
index d2eae41..0000000
+++ /dev/null
@@ -1 +0,0 @@
-^samba.tests.libsmb-basic.samba.tests.libsmb-basic.LibsmbTestCase.test_libsmb_TortureDirCaseSensitive.*
index 2c3d91a923c0770d8ad989ec3949cfb0ddd22b66..98506775bce125aa90559a4c5ef65edeef516c87 100644 (file)
@@ -1123,6 +1123,14 @@ static NTSTATUS filename_convert_dirfsp_nosymlink(
                char *substitute = NULL;
                size_t unparsed = 0;
 
+               status = normalize_filename_case(conn, dirname, ucf_flags);
+               if (!NT_STATUS_IS_OK(status)) {
+                       DBG_ERR("normalize_filename_case %s failed: %s\n",
+                               dirname,
+                               nt_errstr(status));
+                       goto fail;
+               }
+
                status = openat_pathref_dirfsp_nosymlink(
                        mem_ctx,
                        conn,