1io_uring_prep_send_zc(3)        liburing Manual       io_uring_prep_send_zc(3)
2
3
4

NAME

6       io_uring_prep_send_zc - prepare a zerocopy send request
7

SYNOPSIS

9       #include <liburing.h>
10
11       void io_uring_prep_send_zc(struct io_uring_sqe *sqe,
12                                  int sockfd,
13                                  const void *buf,
14                                  size_t len,
15                                  int flags,
16                                  unsigned zc_flags);
17
18       void io_uring_prep_send_zc_fixed(struct io_uring_sqe *sqe,
19                                        int sockfd,
20                                        const void *buf,
21                                        size_t len,
22                                        int flags,
23                                        unsigned zc_flags);
24                                        unsigned buf_index);
25

DESCRIPTION

27       The io_uring_prep_send_zc(3) function prepares a zerocopy send request.
28       The submission queue entry sqe is setup  to  use  the  file  descriptor
29       sockfd  to  start sending the data from buf of size len bytes with send
30       modifier flags flags and zerocopy modifier flags zc_flags.
31
32       The   io_uring_prep_send_zc_fixed(3)    works    just    like    io_ur‐
33       ing_prep_send_zc(3)  except  it  requires  the use of buffers that have
34       been registered with io_uring_register_buffers(3).  The buf and len ar‐
35       guments  must fall within a region specified by buf_index in the previ‐
36       ously registered buffer. The buffer need not be aligned with the  start
37       of the registered buffer.
38
39       Note  that using IOSQE_IO_LINK with this request type requires the set‐
40       ting of MSG_WAITALL in the flags argument, as a short send  isn't  con‐
41       sidered an error condition without that being set.
42
43       These functions prepare an async zerocopy send(2) request. See that man
44       page for details. For details on the zerocopy nature of it, see  io_ur‐
45       ing_enter(2).
46
47

RETURN VALUE

49       None
50

ERRORS

52       The CQE res field will contain the result of the operation. See the re‐
53       lated man page for details on possible values. Note that where synchro‐
54       nous system calls will return -1 on failure and set errno to the actual
55       error value, io_uring never uses errno.  Instead it returns the negated
56       errno directly in the CQE res field.
57

SEE ALSO

59       io_uring_get_sqe(3),  io_uring_submit(3), io_uring_prep_send(3), io_ur‐
60       ing_enter(2), send(2)
61
62
63
64liburing-2.3                   September 6, 2022      io_uring_prep_send_zc(3)
Impressum