From 9a237e168a4bbd5665bd40d521506ca3a6825198 Mon Sep 17 00:00:00 2001 From: Ralph Boehme Date: Thu, 5 Aug 2021 11:58:58 +0200 Subject: [PATCH] vfs_gpfs: pass fsp to smbd_gpfs_set_times() No change in behaviour. Prepares for dealing with pathref fsps in smbd_gpfs_set_times(). BUG: https://bugzilla.samba.org/show_bug.cgi?id=14771 Signed-off-by: Ralph Boehme Reviewed-by: Christof Schmitt --- source3/modules/vfs_gpfs.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/source3/modules/vfs_gpfs.c b/source3/modules/vfs_gpfs.c index 8fc6bb21c90..a3e725f0fd8 100644 --- a/source3/modules/vfs_gpfs.c +++ b/source3/modules/vfs_gpfs.c @@ -1714,7 +1714,8 @@ static void timespec_to_gpfs_time(struct timespec ts, gpfs_timestruc_t *gt, } } -static int smbd_gpfs_set_times(int fd, char *path, struct smb_file_time *ft) +static int smbd_gpfs_set_times(struct files_struct *fsp, + struct smb_file_time *ft) { gpfs_timestruc_t gpfs_times[4]; int flags = 0; @@ -1731,12 +1732,12 @@ static int smbd_gpfs_set_times(int fd, char *path, struct smb_file_time *ft) return 0; } - rc = gpfswrap_set_times(fd, flags, gpfs_times); + rc = gpfswrap_set_times(fsp_get_io_fd(fsp), flags, gpfs_times); if (rc != 0 && errno != ENOSYS) { DBG_WARNING("gpfs_set_times() returned with error %s for %s\n", strerror(errno), - path); + fsp_str_dbg(fsp)); } return rc; @@ -1758,9 +1759,7 @@ static int vfs_gpfs_fntimes(struct vfs_handle_struct *handle, /* Try to use gpfs_set_times if it is enabled and available */ if (config->settimes) { - ret = smbd_gpfs_set_times(fsp_get_io_fd(fsp), - fsp->fsp_name->base_name, - ft); + ret = smbd_gpfs_set_times(fsp, ft); if (ret == 0 || (ret == -1 && errno != ENOSYS)) { return ret; } -- 2.11.4.GIT