io_uring/fs: remove sqe->rw_flags checking from LINKAT
commit a52d4f657568d6458e873f74a9602e022afe666f upstream.
This is unionized with the actual link flags, so they can of course be
set and they will be evaluated further down. If not we fail any LINKAT
that has to set option flags.
Fixes: cf30da90bc
("io_uring: add support for IORING_OP_LINKAT")
Cc: stable@vger.kernel.org
Reported-by: Thomas Leonard <talex5@gmail.com>
Link: https://github.com/axboe/liburing/issues/955
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
06fba8a8de
commit
75c307d9f2
@ -243,7 +243,7 @@ int io_linkat_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe)
|
|||||||
struct io_link *lnk = io_kiocb_to_cmd(req, struct io_link);
|
struct io_link *lnk = io_kiocb_to_cmd(req, struct io_link);
|
||||||
const char __user *oldf, *newf;
|
const char __user *oldf, *newf;
|
||||||
|
|
||||||
if (sqe->rw_flags || sqe->buf_index || sqe->splice_fd_in)
|
if (sqe->buf_index || sqe->splice_fd_in)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
if (unlikely(req->flags & REQ_F_FIXED_FILE))
|
if (unlikely(req->flags & REQ_F_FIXED_FILE))
|
||||||
return -EBADF;
|
return -EBADF;
|
||||||
|
Loading…
Reference in New Issue
Block a user