]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
af_unix: convert unix_file_open() to FD_ADD()
authorChristian Brauner <brauner@kernel.org>
Sun, 23 Nov 2025 16:33:37 +0000 (17:33 +0100)
committerChristian Brauner <brauner@kernel.org>
Fri, 28 Nov 2025 11:42:33 +0000 (12:42 +0100)
Link: https://patch.msgid.link/20251123-work-fd-prepare-v4-19-b6efa1706cfd@kernel.org
Signed-off-by: Christian Brauner <brauner@kernel.org>
net/unix/af_unix.c

index 768098dec2310008632558ae928703b37c3cc8ef..afe2d17fe694593526d20ae95b785270948fb45b 100644 (file)
@@ -3286,9 +3286,6 @@ EXPORT_SYMBOL_GPL(unix_outq_len);
 
 static int unix_open_file(struct sock *sk)
 {
-       struct file *f;
-       int fd;
-
        if (!ns_capable(sock_net(sk)->user_ns, CAP_NET_ADMIN))
                return -EPERM;
 
@@ -3298,18 +3295,7 @@ static int unix_open_file(struct sock *sk)
        if (!unix_sk(sk)->path.dentry)
                return -ENOENT;
 
-       fd = get_unused_fd_flags(O_CLOEXEC);
-       if (fd < 0)
-               return fd;
-
-       f = dentry_open(&unix_sk(sk)->path, O_PATH, current_cred());
-       if (IS_ERR(f)) {
-               put_unused_fd(fd);
-               return PTR_ERR(f);
-       }
-
-       fd_install(fd, f);
-       return fd;
+       return FD_ADD(O_CLOEXEC, dentry_open(&unix_sk(sk)->path, O_PATH, current_cred()));
 }
 
 static int unix_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)