s3: smbd: Ensure get_real_filename() copes with empty pathnames.
authorJeremy Allison <jra@samba.org>
Tue, 21 Aug 2018 19:05:34 +0000 (12:05 -0700)
committerKarolin Seeger <kseeger@samba.org>
Wed, 29 Aug 2018 12:00:12 +0000 (14:00 +0200)
Needed for vfs_glusterfs, as Gluster requires "." not '\0'.

Based on a fix from Anoop C S <anoopcs@redhat.com>

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

Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Ira Cooper <ira@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Wed Aug 22 21:50:41 CEST 2018 on sn-devel-144

(cherry picked from commit 9c71f61ed8a31d287d343d4f2e68cb40c57a2b89)

Autobuild-User(v4-7-test): Karolin Seeger <kseeger@samba.org>
Autobuild-Date(v4-7-test): Wed Aug 29 14:00:12 CEST 2018 on sn-devel-144

source3/smbd/filename.c

index 1186918a7f23d3a442619239564d3ed9ac7476ee..4d79ea179384dfe34bf342f7fcf48a8350c5e90e 100644 (file)
@@ -1443,6 +1443,11 @@ int get_real_filename(connection_struct *conn, const char *path,
        int ret;
        bool mangled;
 
+       /* handle null paths */
+       if ((path == NULL) || (*path == 0)) {
+               path = ".";
+       }
+
        mangled = mangle_is_mangled(name, conn->params);
 
        if (mangled) {