Skip to content

Commit

Permalink
xattr: switch to CLASS(fd)
Browse files Browse the repository at this point in the history
Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
  • Loading branch information
Al Viro committed Nov 3, 2024
1 parent b8cdd25 commit a718743
Showing 1 changed file with 14 additions and 21 deletions.
35 changes: 14 additions & 21 deletions fs/xattr.c
Original file line number Diff line number Diff line change
Expand Up @@ -697,9 +697,9 @@ SYSCALL_DEFINE5(fsetxattr, int, fd, const char __user *, name,
int error;

CLASS(fd, f)(fd);
if (!fd_file(f))
return -EBADF;

if (fd_empty(f))
return -EBADF;
audit_file(fd_file(f));
error = setxattr_copy(name, &ctx);
if (error)
Expand Down Expand Up @@ -809,16 +809,13 @@ SYSCALL_DEFINE4(lgetxattr, const char __user *, pathname,
SYSCALL_DEFINE4(fgetxattr, int, fd, const char __user *, name,
void __user *, value, size_t, size)
{
struct fd f = fdget(fd);
ssize_t error = -EBADF;
CLASS(fd, f)(fd);

if (!fd_file(f))
return error;
if (fd_empty(f))
return -EBADF;
audit_file(fd_file(f));
error = getxattr(file_mnt_idmap(fd_file(f)), fd_file(f)->f_path.dentry,
return getxattr(file_mnt_idmap(fd_file(f)), fd_file(f)->f_path.dentry,
name, value, size);
fdput(f);
return error;
}

/*
Expand Down Expand Up @@ -885,15 +882,12 @@ SYSCALL_DEFINE3(llistxattr, const char __user *, pathname, char __user *, list,

SYSCALL_DEFINE3(flistxattr, int, fd, char __user *, list, size_t, size)
{
struct fd f = fdget(fd);
ssize_t error = -EBADF;
CLASS(fd, f)(fd);

if (!fd_file(f))
return error;
if (fd_empty(f))
return -EBADF;
audit_file(fd_file(f));
error = listxattr(fd_file(f)->f_path.dentry, list, size);
fdput(f);
return error;
return listxattr(fd_file(f)->f_path.dentry, list, size);
}

/*
Expand Down Expand Up @@ -950,12 +944,12 @@ SYSCALL_DEFINE2(lremovexattr, const char __user *, pathname,

SYSCALL_DEFINE2(fremovexattr, int, fd, const char __user *, name)
{
struct fd f = fdget(fd);
CLASS(fd, f)(fd);
char kname[XATTR_NAME_MAX + 1];
int error = -EBADF;
int error;

if (!fd_file(f))
return error;
if (fd_empty(f))
return -EBADF;
audit_file(fd_file(f));

error = strncpy_from_user(kname, name, sizeof(kname));
Expand All @@ -970,7 +964,6 @@ SYSCALL_DEFINE2(fremovexattr, int, fd, const char __user *, name)
fd_file(f)->f_path.dentry, kname);
mnt_drop_write_file(fd_file(f));
}
fdput(f);
return error;
}

Expand Down

0 comments on commit a718743

Please sign in to comment.