Man page - io_uring_recvmsg_payload(3)
Packages contas this manual
- io_uring_enable_rings(3)
- io_uring_register_files_tags(3)
- io_uring_prep_recv(3)
- io_uring_wait_cqe_timeout(3)
- io_uring_wait_cqes_min_timeout(3)
- io_uring_prep_socket(3)
- io_uring_major_version(3)
- io_uring_register_ring_fd(3)
- io_uring_prep_remove_buffers(3)
- io_uring_prep_readv(3)
- io_uring_unregister_eventfd(3)
- io_uring_prep_recvmsg(3)
- io_uring_check_version(3)
- io_uring(7)
- io_uring_prep_getxattr(3)
- io_uring_resize_rings(3)
- io_uring_register_files_sparse(3)
- io_uring_recvmsg_out(3)
- io_uring_prep_symlinkat(3)
- io_uring_prep_timeout(3)
- io_uring_enter2(2)
- io_uring_prep_unlinkat(3)
- io_uring_prep_madvise64(3)
- io_uring_prep_socket_direct_alloc(3)
- io_uring_prep_symlink(3)
- io_uring_prep_mkdirat(3)
- io_uring_prep_renameat(3)
- io_uring_for_each_cqe(3)
- io_uring_prep_sendmsg(3)
- io_uring_prep_open_direct(3)
- io_uring_peek_cqe(3)
- io_uring_prep_socket_direct(3)
- io_uring_prep_sendto(3)
- io_uring_prep_send_bundle(3)
- io_uring_buf_ring_advance(3)
- io_uring_wait_cqes(3)
- io_uring_prep_tee(3)
- io_uring_wait_cqe_nr(3)
- io_uring_prep_msg_ring_cqe_flags(3)
- io_uring_prep_timeout_update(3)
- io_uring_prep_close_direct(3)
- io_uring_get_sqe(3)
- io_uring_prep_msg_ring_fd_alloc(3)
- io_uring_buf_ring_add(3)
- io_uring_free_buf_ring(3)
- io_uring_prep_cmd_discard(3)
- io_uring_prep_rename(3)
- io_uring_close_ring_fd(3)
- io_uring_sqe_set_buf_group(3)
- io_uring_cqe_get_data64(3)
- io_uring_register_files_update_tag(3)
- io_uring_prep_provide_buffers(3)
- io_uring_sq_ready(3)
- io_uring_wait_cqe(3)
- io_uring_cq_ready(3)
- io_uring_enter(2)
- io_uring_prep_cancel_fd(3)
- io_uring_prep_cmd(3)
- io_uring_prep_statx(3)
- io_uring_prep_ftruncate(3)
- io_uring_queue_exit(3)
- io_uring_unregister_iowq_aff(3)
- io_uring_free_probe(3)
- io_uring_sq_space_left(3)
- io_uring_prep_mkdir(3)
- io_uring_setup_reg_wait(3)
- io_uring_register_buffers_sparse(3)
- io_uring_prep_msg_ring_fd(3)
- io_uring_prep_openat2_direct(3)
- io_uring_prep_fallocate(3)
- io_uring_prep_read(3)
- io_uring_sqe_set_flags(3)
- io_uring_prep_poll_update(3)
- io_uring_submit_and_wait(3)
- io_uring_prep_shutdown(3)
- io_uring_prep_accept(3)
- io_uring_register_buffers_tags(3)
- io_uring_prep_futex_waitv(3)
- io_uring_prep_fixed_fd_install(3)
- io_uring_queue_init_mem(3)
- io_uring_prep_cancel(3)
- io_uring_get_events(3)
- io_uring_prep_close(3)
- io_uring_cq_has_overflow(3)
- io_uring_register_napi(3)
- io_uring_prep_cancel64(3)
- io_uring_prep_futex_wake(3)
- io_uring_buf_ring_mask(3)
- io_uring_prep_recv_multishot(3)
- io_uring_register(2)
- io_uring_register_buffers(3)
- io_uring_prep_fadvise(3)
- io_uring_register_reg_wait(3)
- io_uring_clone_buffers(3)
- io_uring_register_files_update(3)
- io_uring_submit(3)
- io_uring_prep_fgetxattr(3)
- io_uring_prep_poll_remove(3)
- io_uring_recvmsg_payload(3)
- io_uring_prep_read_multishot(3)
- io_uring_prep_msg_ring(3)
- io_uring_free_reg_wait(3)
- io_uring_opcode_supported(3)
- io_uring_prep_readv2(3)
- io_uring_register_buf_ring(3)
- io_uring_prep_link_timeout(3)
- io_uring_prep_write(3)
- io_uring_prep_fsync(3)
- io_uring_prep_accept_direct(3)
- io_uring_prep_files_update(3)
- io_uring_prep_listen(3)
- io_uring_recvmsg_cmsg_nexthdr(3)
- io_uring_buf_ring_cq_advance(3)
- io_uring_buf_ring_available(3)
- io_uring_register_iowq_max_workers(3)
- __io_uring_buf_ring_cq_advance(3)
- io_uring_prep_openat2(3)
- io_uring_unregister_ring_fd(3)
- io_uring_prep_openat_direct(3)
- io_uring_sqe_set_data64(3)
- io_uring_clone_buffers_offset(3)
- io_uring_register_iowq_aff(3)
- io_uring_prep_multishot_accept_direct(3)
- io_uring_get_probe(3)
- io_uring_prep_send_zc(3)
- io_uring_cqe_seen(3)
- io_uring_prep_poll_multishot(3)
- io_uring_unregister_files(3)
- io_uring_prep_open(3)
- io_uring_submit_and_wait_min_timeout(3)
- io_uring_cq_advance(3)
- io_uring_sqe_set_data(3)
- io_uring_setup(2)
- io_uring_prep_setxattr(3)
- io_uring_prep_link(3)
- io_uring_prep_linkat(3)
- io_uring_prep_poll_add(3)
- io_uring_prep_sendmsg_zc(3)
- io_uring_prep_nop(3)
- io_uring_register_files(3)
- io_uring_prep_waitid(3)
- io_uring_submit_and_wait_timeout(3)
- io_uring_prep_unlink(3)
- io_uring_register_buffers_update_tag(3)
- io_uring_recvmsg_cmsg_firsthdr(3)
- io_uring_prep_fsetxattr(3)
- io_uring_prep_connect(3)
- io_uring_unregister_buf_ring(3)
- io_uring_buf_ring_init(3)
- io_uring_register_file_alloc_range(3)
- io_uring_prep_writev2(3)
- io_uring_prep_futex_wait(3)
- io_uring_prep_bind(3)
- io_uring_setup_buf_ring(3)
- io_uring_register_eventfd(3)
- io_uring_register_eventfd_async(3)
- io_uring_recvmsg_validate(3)
- io_uring_prep_write_fixed(3)
- io_uring_prep_madvise(3)
- io_uring_sqring_wait(3)
- io_uring_prep_openat(3)
- io_uring_recvmsg_name(3)
- io_uring_prep_read_fixed(3)
- io_uring_prep_send_set_addr(3)
- io_uring_prep_send_zc_fixed(3)
- io_uring_prep_splice(3)
- io_uring_queue_init_params(3)
- io_uring_unregister_buffers(3)
- io_uring_submit_and_wait_reg(3)
- io_uring_prep_writev(3)
- io_uring_prep_timeout_remove(3)
- io_uring_minor_version(3)
- io_uring_prep_sync_file_range(3)
- io_uring_prep_recvmsg_multishot(3)
- io_uring_queue_init(3)
- io_uring_prep_fadvise64(3)
- io_uring_register_clock(3)
- io_uring_submit_and_get_events(3)
- io_uring_recvmsg_payload_length(3)
- io_uring_prep_send(3)
- io_uring_register_sync_cancel(3)
- io_uring_peek_batch_cqe(3)
- io_uring_prep_multishot_accept(3)
- io_uring_unregister_napi(3)
- io_uring_cqe_get_data(3)
Package: liburing-dev
apt-get install liburing-dev
apt-get install liburing-dev
Manuals in package:
Documentations in package:
Manual
| io_uring_recvmsg_out(3) | liburing Manual | io_uring_recvmsg_out(3) |
NAME
io_uring_recvmsg_out - access data from multishot recvmsg
SYNOPSIS
#include <liburing.h>
struct io_uring_recvmsg_out *io_uring_recvmsg_validate(void *buf,
int buf_len,
struct msghdr *msgh);
void *io_uring_recvmsg_name(struct io_uring_recvmsg_out *o);
struct cmsghdr *io_uring_recvmsg_cmsg_firsthdr(struct io_uring_recvmsg_out *o,
struct msghdr *msgh);
struct cmsghdr *io_uring_recvmsg_cmsg_nexthdr(struct io_uring_recvmsg_out *o,
struct msghdr *msgh,
struct cmsghdr *cmsg);
void *io_uring_recvmsg_payload(struct io_uring_recvmsg_out *o,
struct msghdr *msgh);
unsigned int io_uring_recvmsg_payload_length(struct io_uring_recvmsg_out *o,
int buf_len,
struct msghdr *msgh);
DESCRIPTION
These functions are used to access data in the payload delivered by io_uring_prep_recvmsg_multishot(3).
msgh should point to the struct msghdr submitted with the request.
io_uring_recvmsg_validate(3) will validate a buffer delivered by io_uring_prep_recvmsg_multishot(3) and extract the io_uring_recvmsg_out if it is valid, returning a pointer to it or else NULL.
The structure is defined as follows:
struct io_uring_recvmsg_out {
__u32 namelen; /* Name byte count as would have been populated
* by recvmsg(2) */
__u32 controllen; /* Control byte count */
__u32 payloadlen; /* Payload byte count as would have been returned
* by recvmsg(2) */
__u32 flags; /* Flags result as would have been populated
* by recvmsg(2) */
};
-
io_uring_recvmsg_name(3) returns a pointer to the name in the buffer.
-
io_uring_recvmsg_cmsg_firsthdr(3) returns a pointer to the first cmsg in the buffer, or NULL.
-
io_uring_recvmsg_cmsg_nexthdr(3) returns a pointer to the next cmsg in the buffer, or NULL.
-
io_uring_recvmsg_payload(3) returns a pointer to the payload in the buffer.
-
io_uring_recvmsg_payload_length(3) Calculates the usable payload length in bytes.
SEE ALSO
io_uring_prep_recvmsg_multishot(3)
| July 26, 2022 | liburing-2.2 |