[SCM] Samba Shared Repository - branch master updated
Jeremy Allison
jra at samba.org
Wed Nov 15 18:53:01 UTC 2023
The branch, master has been updated
via 9898ca65e93 docs-xml: Fix a usage for case sensitive parameter
via 2b1a687a6f8 vfs_ceph: Replace libceph with libcephfs in comments
via e091febb0cc vfs_ceph: Fix the comment quoting module usage
via 149734409a8 vfs_ceph: Fix a comment in cephwrap_fchmod()
via 5572400a975 vfs_ceph: Add path based fallback mechanism for SMB_VFS_CHOWN
from 4e585186f2b smbd: Get the symlink mode for posix through fdos_mode()
https://git.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 9898ca65e936c3f91578b1a24b91ea9243da4b1c
Author: Anoop C S <anoopcs at samba.org>
Date: Mon Nov 13 12:28:19 2023 +0530
docs-xml: Fix a usage for case sensitive parameter
Signed-off-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Autobuild-User(master): Jeremy Allison <jra at samba.org>
Autobuild-Date(master): Wed Nov 15 18:52:16 UTC 2023 on atb-devel-224
commit 2b1a687a6f8c500bd66397f2ac7937c70855b268
Author: Anoop C S <anoopcs at samba.org>
Date: Mon Nov 13 12:47:17 2023 +0530
vfs_ceph: Replace libceph with libcephfs in comments
Signed-off-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
commit e091febb0cccd9146d2e2b8ebf8841b3634809ed
Author: Anoop C S <anoopcs at samba.org>
Date: Mon Nov 13 12:43:59 2023 +0530
vfs_ceph: Fix the comment quoting module usage
Signed-off-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
commit 149734409a882b060a9c344ec2eb843c298343ce
Author: Anoop C S <anoopcs at samba.org>
Date: Sat Nov 11 11:13:15 2023 +0530
vfs_ceph: Fix a comment in cephwrap_fchmod()
Signed-off-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
commit 5572400a975a07905f7cb0f3611590dfaf787311
Author: Anoop C S <anoopcs at samba.org>
Date: Sat Nov 11 11:07:28 2023 +0530
vfs_ceph: Add path based fallback mechanism for SMB_VFS_CHOWN
Fallback mechanism was missing in cephwrap_fchown() for path based call.
Signed-off-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
-----------------------------------------------------------------------
Summary of changes:
docs-xml/manpages/smb.conf.5.xml | 2 +-
source3/modules/vfs_ceph.c | 41 ++++++++++++++++++++++++++++------------
2 files changed, 30 insertions(+), 13 deletions(-)
Changeset truncated at 500 lines:
diff --git a/docs-xml/manpages/smb.conf.5.xml b/docs-xml/manpages/smb.conf.5.xml
index 4b33c0f59e8..e760ff6b431 100644
--- a/docs-xml/manpages/smb.conf.5.xml
+++ b/docs-xml/manpages/smb.conf.5.xml
@@ -664,7 +664,7 @@ chmod 1770 /usr/local/samba/lib/usershares
passed names. The default setting of auto allows clients that support case sensitive filenames (Linux CIFSVFS
and smbclient 3.0.5 and above currently) to tell the Samba server on a per-packet basis that they wish to
access the file system in a case-sensitive manner (to support UNIX case sensitive semantics). No Windows or
- DOS system supports case-sensitive filename so setting this option to auto is that same as setting it to no
+ DOS system supports case-sensitive filename so setting this option to auto is the same as setting it to no
for them. Default <emphasis>auto</emphasis>.
</para></listitem>
</varlistentry>
diff --git a/source3/modules/vfs_ceph.c b/source3/modules/vfs_ceph.c
index 4bcefcf91e8..aa68b5573c8 100644
--- a/source3/modules/vfs_ceph.c
+++ b/source3/modules/vfs_ceph.c
@@ -21,13 +21,13 @@
*/
/*
- * This VFS only works with the libceph.so user-space client. It is not needed
+ * This VFS only works with the libcephfs.so user-space client. It is not needed
* if you are using the kernel client or the FUSE client.
*
* Add the following smb.conf parameter to each share that will be hosted on
* Ceph:
*
- * vfs objects = ceph [any others you need go here]
+ * vfs objects = [any others you need go here] ceph
*/
#include "includes.h"
@@ -54,8 +54,8 @@
#define llu(_var) ((long long unsigned)_var)
/*
- * Note, libceph's return code model is to return -errno! So we have to convert
- * to what Samba expects, with is set errno to -return and return -1
+ * Note, libcephfs's return code model is to return -errno! So we have to
+ * convert to what Samba expects, with is set errno to -return and return -1
*/
#define WRAP_RETURN(_res) \
errno = 0; \
@@ -353,7 +353,7 @@ static int cephwrap_get_quota(struct vfs_handle_struct *handle,
unid_t id,
SMB_DISK_QUOTA *qt)
{
- /* libceph: Ceph does not implement this */
+ /* libcephfs: Ceph does not implement this */
#if 0
/* was ifdef HAVE_SYS_QUOTAS */
int ret;
@@ -374,7 +374,7 @@ static int cephwrap_get_quota(struct vfs_handle_struct *handle,
static int cephwrap_set_quota(struct vfs_handle_struct *handle, enum SMB_QUOTA_TYPE qtype, unid_t id, SMB_DISK_QUOTA *qt)
{
- /* libceph: Ceph does not implement this */
+ /* libcephfs: Ceph does not implement this */
#if 0
/* was ifdef HAVE_SYS_QUOTAS */
int ret;
@@ -719,7 +719,7 @@ static ssize_t cephwrap_sendfile(struct vfs_handle_struct *handle, int tofd, fil
off_t offset, size_t n)
{
/*
- * We cannot support sendfile because libceph is in user space.
+ * We cannot support sendfile because libcephfs is in user space.
*/
DBG_DEBUG("[CEPH] cephwrap_sendfile\n");
errno = ENOTSUP;
@@ -733,7 +733,7 @@ static ssize_t cephwrap_recvfile(struct vfs_handle_struct *handle,
size_t n)
{
/*
- * We cannot support recvfile because libceph is in user space.
+ * We cannot support recvfile because libcephfs is in user space.
*/
DBG_DEBUG("[CEPH] cephwrap_recvfile\n");
errno=ENOTSUP;
@@ -1028,7 +1028,7 @@ static int cephwrap_fchmod(struct vfs_handle_struct *handle, files_struct *fsp,
DBG_DEBUG("[CEPH] fchmod(%p, %p, %d)\n", handle, fsp, mode);
if (!fsp->fsp_flags.is_pathref) {
/*
- * We can use an io_fd to remove xattrs.
+ * We can use an io_fd to change permissions.
*/
result = ceph_fchmod(handle->data, fsp_get_io_fd(fsp), mode);
} else {
@@ -1048,7 +1048,24 @@ static int cephwrap_fchown(struct vfs_handle_struct *handle, files_struct *fsp,
int result;
DBG_DEBUG("[CEPH] fchown(%p, %p, %d, %d)\n", handle, fsp, uid, gid);
- result = ceph_fchown(handle->data, fsp_get_io_fd(fsp), uid, gid);
+ if (!fsp->fsp_flags.is_pathref) {
+ /*
+ * We can use an io_fd to change ownership.
+ */
+ result = ceph_fchown(handle->data,
+ fsp_get_io_fd(fsp),
+ uid,
+ gid);
+ } else {
+ /*
+ * This is no longer a handle based call.
+ */
+ result = ceph_chown(handle->data,
+ fsp->fsp_name->base_name,
+ uid,
+ gid);
+ }
+
DBG_DEBUG("[CEPH] fchown(...) = %d\n", result);
WRAP_RETURN(result);
}
@@ -1207,7 +1224,7 @@ static bool cephwrap_getlock(struct vfs_handle_struct *handle, files_struct *fsp
/*
* We cannot let this fall through to the default, because the file might only
- * be accessible from libceph (which is a user-space client) but the fd might
+ * be accessible from libcephfs (which is a user-space client) but the fd might
* be for some file the kernel knows about.
*/
static int cephwrap_linux_setlease(struct vfs_handle_struct *handle, files_struct *fsp,
@@ -1337,7 +1354,7 @@ static int cephwrap_mknodat(struct vfs_handle_struct *handle,
/*
* This is a simple version of real-path ... a better version is needed to
- * ask libceph about symbolic links.
+ * ask libcephfs about symbolic links.
*/
static struct smb_filename *cephwrap_realpath(struct vfs_handle_struct *handle,
TALLOC_CTX *ctx,
--
Samba Shared Repository
More information about the samba-cvs
mailing list