mirror of
https://github.com/samba-team/samba.git
synced 2025-03-08 04:58:40 +03:00
gpfs: Move set_gpfs_lease to vfs_gpfs.c
Signed-off-by: Christof Schmitt <cs@samba.org> Reviewed-by: Ralph Böhme <slow@samba.org>
This commit is contained in:
parent
f9629aee81
commit
9948163a64
@ -229,26 +229,6 @@ int gpfswrap_getfilesetid(char *pathname, char *name, int *idp)
|
||||
return gpfs_getfilesetid_fn(pathname, name, idp);
|
||||
}
|
||||
|
||||
int set_gpfs_lease(int fd, int leasetype)
|
||||
{
|
||||
int gpfs_type = GPFS_LEASE_NONE;
|
||||
|
||||
if (leasetype == F_RDLCK) {
|
||||
gpfs_type = GPFS_LEASE_READ;
|
||||
}
|
||||
if (leasetype == F_WRLCK) {
|
||||
gpfs_type = GPFS_LEASE_WRITE;
|
||||
}
|
||||
|
||||
/* we unconditionally set CAP_LEASE, rather than looking for
|
||||
-1/EACCES as there is a bug in some versions of
|
||||
libgpfs_gpl.so which results in a leaked fd on /dev/ss0
|
||||
each time we try this with the wrong capabilities set
|
||||
*/
|
||||
linux_set_lease_capability();
|
||||
return gpfswrap_set_lease(fd, gpfs_type);
|
||||
}
|
||||
|
||||
int get_gpfs_quota(const char *pathname, int type, int id,
|
||||
struct gpfs_quotaInfo *qi)
|
||||
{
|
||||
|
@ -161,6 +161,26 @@ static int vfs_gpfs_close(vfs_handle_struct *handle, files_struct *fsp)
|
||||
return SMB_VFS_NEXT_CLOSE(handle, fsp);
|
||||
}
|
||||
|
||||
static int set_gpfs_lease(int fd, int leasetype)
|
||||
{
|
||||
int gpfs_type = GPFS_LEASE_NONE;
|
||||
|
||||
if (leasetype == F_RDLCK) {
|
||||
gpfs_type = GPFS_LEASE_READ;
|
||||
}
|
||||
if (leasetype == F_WRLCK) {
|
||||
gpfs_type = GPFS_LEASE_WRITE;
|
||||
}
|
||||
|
||||
/* we unconditionally set CAP_LEASE, rather than looking for
|
||||
-1/EACCES as there is a bug in some versions of
|
||||
libgpfs_gpl.so which results in a leaked fd on /dev/ss0
|
||||
each time we try this with the wrong capabilities set
|
||||
*/
|
||||
linux_set_lease_capability();
|
||||
return gpfswrap_set_lease(fd, gpfs_type);
|
||||
}
|
||||
|
||||
static int vfs_gpfs_setlease(vfs_handle_struct *handle, files_struct *fsp,
|
||||
int leasetype)
|
||||
{
|
||||
|
@ -45,7 +45,6 @@ int gpfswrap_set_times_path(char *pathname, int flags,
|
||||
int gpfswrap_quotactl(char *pathname, int cmd, int id, void *bufp);
|
||||
int gpfswrap_fcntl(int fd, void *argp);
|
||||
int gpfswrap_getfilesetid(char *pathname, char *name, int *idp);
|
||||
int set_gpfs_lease(int fd, int leasetype);
|
||||
int get_gpfs_quota(const char *pathname, int type, int id,
|
||||
struct gpfs_quotaInfo *qi);
|
||||
int get_gpfs_fset_id(const char *pathname, int *fset_id);
|
||||
|
Loading…
x
Reference in New Issue
Block a user