Provided by: liburing-dev_2.2-2_amd64 bug

NAME

       io_uring_prep_symlinkat - prepare a symlinkat request

SYNOPSIS

       #include <fcntl.h>
       #include <unistd.h>
       #include <liburing.h>

       void io_uring_prep_symlinkat(struct io_uring_sqe *sqe,
                                    const char *target,
                                    int newdirfd,
                                    const char *linkpath);

       void io_uring_prep_symlink(struct io_uring_sqe *sqe,
                                  const char *target,
                                  const char *linkpath);

DESCRIPTION

       The io_uring_prep_symlinkat(3) function prepares a symlinkat request. The submission queue
       entry sqe is setup to symlink the target path pointed to by target to the new  destination
       indicated by newdirfd and linkpath.

       The  io_uring_prep_symlink(3)  function  prepares  a symlink request. The submission queue
       entry sqe is setup to symlink the target path pointed to by target to the new  destination
       indicated  by  linkpath  relative  to  the  the  current  working directory. This function
       prepares an async symlink(2) request. See that man page for details.

       These functions prepare an async symlinkat(2) or symlink(2) request. See those  man  pages
       for details.

RETURN VALUE

       None

ERRORS

       The  CQE  res field will contain the result of the operation. See the related man page for
       details on possible values. Note that where synchronous system calls  will  return  -1  on
       failure  and  set  errno to the actual error value, io_uring never uses errno.  Instead it
       returns the negated errno directly in the CQE res field.

NOTES

       As with any request that passes in data in a struct, that data must remain valid until the
       request has been successfully submitted. It need not remain valid until completion. Once a
       request has been submitted, the in-kernel state is stable. Very  early  kernels  (5.4  and
       earlier)  required state to be stable until the completion occurred. Applications can test
       for this behavior by  inspecting  the  IORING_FEAT_SUBMIT_STABLE  flag  passed  back  from
       io_uring_queue_init_params(3).

SEE ALSO

       io_uring_get_sqe(3), io_uring_submit(3), symlinkat(2), symlink(2)