diff options
author | David Disseldorp <ddiss@samba.org> | 2017-07-14 23:55:29 +0200 |
---|---|---|
committer | David Disseldorp <ddiss@samba.org> | 2017-07-21 19:10:46 +0200 |
commit | 1dcacff083019810e207a3d123a81fe32d9dde1a (patch) | |
tree | 7b0f1b43ae23a0e0eb3e1d63053c50b4fd2b90f0 | |
parent | 4e04f025a0665e2573bdd92efe9ba5aa9dcd82d7 (diff) | |
download | samba-1dcacff083019810e207a3d123a81fe32d9dde1a.tar.gz |
vfs_ceph: fix cephwrap_chdir()
When provided a '/' path (i.e. CephFS root), vfs_ceph does a *local*
chdir() to the share path. This breaks smb client directory listings.
Bug: https://bugzilla.samba.org/show_bug.cgi?id=12911
Signed-off-by: David Disseldorp <ddiss@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Autobuild-User(master): David Disseldorp <ddiss@samba.org>
Autobuild-Date(master): Fri Jul 21 19:10:46 CEST 2017 on sn-devel-144
-rw-r--r-- | source3/modules/vfs_ceph.c | 8 |
1 files changed, 0 insertions, 8 deletions
diff --git a/source3/modules/vfs_ceph.c b/source3/modules/vfs_ceph.c index 73106c4ac60..9abd32196a8 100644 --- a/source3/modules/vfs_ceph.c +++ b/source3/modules/vfs_ceph.c @@ -936,14 +936,6 @@ static int cephwrap_chdir(struct vfs_handle_struct *handle, { int result = -1; DBG_DEBUG("[CEPH] chdir(%p, %s)\n", handle, smb_fname->base_name); - /* - * If the path is just / use chdir because Ceph is below / and - * cannot deal with changing directory above its mount point - */ - if (!strcmp(smb_fname->base_name, "/")) { - return chdir(smb_fname->base_name); - } - result = ceph_chdir(handle->data, smb_fname->base_name); DBG_DEBUG("[CEPH] chdir(...) = %d\n", result); WRAP_RETURN(result); |