#include <violite.h>
|
| MYSQL_SOCKET | mysql_socket |
| |
| bool | localhost = {false} |
| |
| enum_vio_type | type = {NO_VIO_TYPE} |
| |
| int | read_timeout = {-1} |
| |
| int | write_timeout = {-1} |
| |
| int | retry_count = {1} |
| |
| bool | inactive = {false} |
| |
| struct sockaddr_storage | local |
| |
| struct sockaddr_storage | remote |
| |
| size_t | addrLen = {0} |
| |
| char * | read_buffer = {nullptr} |
| |
| char * | read_pos = {nullptr} |
| |
| char * | read_end = {nullptr} |
| |
| std::optional< my_thread_t > | thread_id = 0 |
| | Thread PID which is to be sent SIGALRM to terminate ppoll wait when shutting down vio. More...
|
| |
| sigset_t | signal_mask |
| |
| std::atomic_flag | poll_shutdown_flag = ATOMIC_FLAG_INIT |
| |
| char | network_namespace [256] |
| | Socket network namespace. More...
|
| |
| void(* | viodelete )(MYSQL_VIO) = {nullptr} |
| |
| int(* | vioerrno )(MYSQL_VIO) = {nullptr} |
| |
| size_t(* | read )(MYSQL_VIO, uchar *, size_t) = {nullptr} |
| |
| size_t(* | write )(MYSQL_VIO, const uchar *, size_t) = {nullptr} |
| |
| int(* | timeout )(MYSQL_VIO, uint, bool) = {nullptr} |
| |
| int(* | viokeepalive )(MYSQL_VIO, bool) = {nullptr} |
| |
| int(* | fastsend )(MYSQL_VIO) = {nullptr} |
| |
| bool(* | peer_addr )(MYSQL_VIO, char *, uint16 *, size_t) = {nullptr} |
| |
| void(* | in_addr )(MYSQL_VIO, struct sockaddr_storage *) = {nullptr} |
| |
| bool(* | should_retry )(MYSQL_VIO) = {nullptr} |
| |
| bool(* | was_timeout )(MYSQL_VIO) = {nullptr} |
| |
| int(* | vioshutdown )(MYSQL_VIO) = {nullptr} |
| |
| bool(* | is_connected )(MYSQL_VIO) = {nullptr} |
| |
| bool(* | has_data )(MYSQL_VIO) = {nullptr} |
| |
| int(* | io_wait )(MYSQL_VIO, enum enum_vio_io_event, int) = {nullptr} |
| |
| bool(* | connect )(MYSQL_VIO, struct sockaddr *, socklen_t, int) = {nullptr} |
| |
| void * | ssl_arg = {nullptr} |
| |
| struct PSI_socket_locker * | m_psi_read_locker = {nullptr} |
| |
| PSI_socket_locker_state | m_psi_read_state |
| |
| struct PSI_socket_locker * | m_psi_write_locker = {nullptr} |
| |
| PSI_socket_locker_state | m_psi_write_state |
| |
| bool(* | is_blocking )(Vio *vio) = {nullptr} |
| |
| int(* | set_blocking )(Vio *vio, bool val) = {nullptr} |
| |
| int(* | set_blocking_flag )(Vio *vio, bool val) = {nullptr} |
| |
| bool | is_blocking_flag = {true} |
| |
◆ Vio() [1/2]
◆ ~Vio()
◆ Vio() [2/2]
◆ operator=() [1/2]
| Vio & Vio::operator= |
( |
const Vio & |
| ) |
|
|
delete |
◆ operator=() [2/2]
| Vio & Vio::operator= |
( |
Vio && |
vio | ) |
|
◆ internal_vio_create
| Vio * internal_vio_create |
( |
uint |
flags | ) |
|
|
friend |
◆ internal_vio_delete
| void internal_vio_delete |
( |
Vio * |
vio | ) |
|
|
friend |
◆ vio_reset
Reinitialize an existing Vio object.
- Parameters
-
| vio | A VIO object. |
| type | A socket-based transport type. |
| sd | The socket. |
| ssl | An optional SSL structure. |
| flags | Flags passed to new_vio. |
- Returns
- Return value is zero on success.
◆ addrLen
| size_t Vio::addrLen = {0} |
◆ connect
◆ fastsend
◆ has_data
◆ in_addr
◆ inactive
| bool Vio::inactive = {false} |
◆ io_wait
◆ is_blocking
◆ is_blocking_flag
| bool Vio::is_blocking_flag = {true} |
◆ is_connected
◆ local
| struct sockaddr_storage Vio::local |
◆ localhost
| bool Vio::localhost = {false} |
◆ m_psi_read_locker
◆ m_psi_read_state
◆ m_psi_write_locker
◆ m_psi_write_state
◆ mysql_socket
◆ network_namespace
| char Vio::network_namespace[256] |
Socket network namespace.
◆ peer_addr
◆ poll_shutdown_flag
| std::atomic_flag Vio::poll_shutdown_flag = ATOMIC_FLAG_INIT |
◆ read
◆ read_buffer
◆ read_end
◆ read_pos
◆ read_timeout
| int Vio::read_timeout = {-1} |
◆ remote
| struct sockaddr_storage Vio::remote |
◆ retry_count
| int Vio::retry_count = {1} |
◆ set_blocking
| int(* Vio::set_blocking) (Vio *vio, bool val) = {nullptr} |
◆ set_blocking_flag
| int(* Vio::set_blocking_flag) (Vio *vio, bool val) = {nullptr} |
◆ should_retry
◆ signal_mask
| sigset_t Vio::signal_mask |
◆ ssl_arg
◆ thread_id
Thread PID which is to be sent SIGALRM to terminate ppoll wait when shutting down vio.
It is made an std::optional so that server code has the ability to set this to an illegal value and thereby ensure that it is set before shutting down vio. In the server the THD and thereby the Vio can switch between OS threads, so it does not make sense to assign the thread id when creating the THD/Vio.
It is initialized to 0 here, meaning don't attempt to send a signal, to keep non-server code unaffected.
◆ timeout
◆ type
◆ viodelete
◆ vioerrno
◆ viokeepalive
◆ vioshutdown
◆ was_timeout
◆ write
◆ write_timeout
| int Vio::write_timeout = {-1} |
The documentation for this struct was generated from the following files: