|
libosmocore 1.9.2
Osmocom core library
|
io(_uring) abstraction osmo fd compatibility More...
#include <osmocom/core/linuxlist.h>#include <osmocom/core/logging.h>#include <osmocom/core/msgb.h>#include <osmocom/core/socket.h>#include <osmocom/core/utils.h>Go to the source code of this file.
Data Structures | |
| struct | osmo_io_ops |
Macros | |
| #define | LOGPIO(iofd, level, fmt, args...) LOGP(DLIO, level, "iofd(%s)" fmt, iofd->name, ## args) |
Enumerations | |
| enum | osmo_io_fd_mode { OSMO_IO_FD_MODE_READ_WRITE , OSMO_IO_FD_MODE_RECVFROM_SENDTO , OSMO_IO_FD_MODE_SCTP_RECVMSG_SENDMSG } |
| enum | osmo_io_backend { OSMO_IO_BACKEND_POLL , OSMO_IO_BACKEND_IO_URING } |
Variables | |
| const struct value_string | osmo_io_backend_names [] |
io(_uring) abstraction osmo fd compatibility
| Enumerator | |
|---|---|
| OSMO_IO_FD_MODE_READ_WRITE | |
| OSMO_IO_FD_MODE_RECVFROM_SENDTO | use recvfrom() / sendto() calls |
| OSMO_IO_FD_MODE_SCTP_RECVMSG_SENDMSG | emulate sctp_recvmsg() and sctp_sendmsg() |
|
inlinestatic |
References get_value_string(), and osmo_io_backend_names.
| int osmo_iofd_close | ( | struct osmo_io_fd * | iofd | ) |
| void osmo_iofd_free | ( | struct osmo_io_fd * | iofd | ) |
| void * osmo_iofd_get_data | ( | const struct osmo_io_fd * | iofd | ) |
| int osmo_iofd_get_fd | ( | const struct osmo_io_fd * | iofd | ) |
| const char * osmo_iofd_get_name | ( | const struct osmo_io_fd * | iofd | ) |
| unsigned int osmo_iofd_get_priv_nr | ( | const struct osmo_io_fd * | iofd | ) |
| void osmo_iofd_notify_connected | ( | struct osmo_io_fd * | iofd | ) |
| int osmo_iofd_register | ( | struct osmo_io_fd * | iofd, |
| int | fd | ||
| ) |
| int osmo_iofd_sendto_msgb | ( | struct osmo_io_fd * | iofd, |
| struct msgb * | msg, | ||
| int | sendto_flags, | ||
| const struct osmo_sockaddr * | dest | ||
| ) |
| void osmo_iofd_set_alloc_info | ( | struct osmo_io_fd * | iofd, |
| unsigned int | size, | ||
| unsigned int | headroom | ||
| ) |
| void osmo_iofd_set_data | ( | struct osmo_io_fd * | iofd, |
| void * | data | ||
| ) |
| void osmo_iofd_set_ioops | ( | struct osmo_io_fd * | iofd, |
| const struct osmo_io_ops * | ioops | ||
| ) |
| void osmo_iofd_set_name | ( | struct osmo_io_fd * | iofd, |
| const char * | name | ||
| ) |
| void osmo_iofd_set_priv_nr | ( | struct osmo_io_fd * | iofd, |
| unsigned int | priv_nr | ||
| ) |
| void osmo_iofd_set_txqueue_max_length | ( | struct osmo_io_fd * | iofd, |
| unsigned int | size | ||
| ) |
| struct osmo_io_fd * osmo_iofd_setup | ( | const void * | ctx, |
| int | fd, | ||
| const char * | name, | ||
| enum osmo_io_fd_mode | mode, | ||
| const struct osmo_io_ops * | ioops, | ||
| void * | data | ||
| ) |
| void osmo_iofd_txqueue_clear | ( | struct osmo_io_fd * | iofd | ) |
| unsigned int osmo_iofd_txqueue_len | ( | struct osmo_io_fd * | iofd | ) |
| int osmo_iofd_unregister | ( | struct osmo_io_fd * | iofd | ) |
| int osmo_iofd_write_msgb | ( | struct osmo_io_fd * | iofd, |
| struct msgb * | msg | ||
| ) |
|
extern |
Referenced by osmo_io_backend_name().