|
|
typedef int | lcb_socket_t |
| | Type representing the native socket type of the operating system.
|
| |
| typedef void(* | lcb_ioE_callback) (lcb_socket_t sock, short events, void *uarg) |
| | Callback invoked for all poll-like events.
|
| |
| typedef void(* | lcb_io_start_fn) (lcb_io_opt_t iops) |
| | Start the event loop.
|
| |
| typedef void(* | lcb_io_tick_fn) (lcb_io_opt_t iops) |
| | Run a single iteration of the event loop without blocking.
|
| |
| typedef void(* | lcb_io_stop_fn) (lcb_io_opt_t iops) |
| | Pause the event loop.
|
| |
|
typedef void(* | lcb_io_error_cb) (lcb_sockdata_t *socket)) |
| |
| typedef void(* | lcb_io_procs_fn) (int version, lcb_loop_procs *loop_procs, lcb_timer_procs *timer_procs, lcb_bsd_procs *bsd_procs, lcb_ev_procs *ev_procs, lcb_completion_procs *completion_procs, lcb_iomodel_t *iomodel) |
| |
|
typedef void(* | lcb__iops3fndummy) (void) |
| |
| typedef lcb_STATUS(* | lcb_io_create_fn) (int version, lcb_io_opt_t *io, void *cookie) |
| | Signature for a loadable plugin's IOPS initializer.
|
| |
|
| typedef void *(* | lcb_io_timer_create_fn) (lcb_io_opt_t iops) |
| | Create a new timer object.
|
| |
| typedef void(* | lcb_io_timer_destroy_fn) (lcb_io_opt_t iops, void *timer) |
| | Destroy a timer handler.
|
| |
| typedef void(* | lcb_io_timer_cancel_fn) (lcb_io_opt_t iops, void *timer) |
| | Cancel a pending timer callback.
|
| |
| typedef int(* | lcb_io_timer_schedule_fn) (lcb_io_opt_t iops, void *timer, lcb_U32 usecs, void *uarg, lcb_ioE_callback callback) |
| | Schedule a callback to be invoked within a given interval.
|
| |
|
|
#define | LCB_READ_EVENT |
| | Data is available for reading.
|
| |
|
#define | LCB_WRITE_EVENT |
| | Data can be written.
|
| |
|
#define | LCB_ERROR_EVENT |
| | Exceptional condition ocurred on socket.
|
| |
|
#define | LCB_RW_EVENT |
| |
| typedef void *(* | lcb_ioE_event_create_fn) (lcb_io_opt_t iops) |
| | Create a new event handle.
|
| |
| typedef void(* | lcb_ioE_event_destroy_fn) (lcb_io_opt_t iops, void *event) |
| | Destroy an event handle.
|
| |
| typedef void(* | lcb_ioE_event_cancel_fn) (lcb_io_opt_t iops, lcb_socket_t sock, void *event) |
| | Cancel pending callbacks and unwatch a handle.
|
| |
| typedef int(* | lcb_ioE_event_watch_fn) (lcb_io_opt_t iops, lcb_socket_t socket, void *event, short evflags, void *uarg, lcb_ioE_callback callback) |
| | Associate an event with a socket, requesting notification when one of the events specified in 'flags' becomes available on the socket.
|
| |
|
| #define | LCB_IO_SOCKCHECK_PEND_IS_ERROR |
| | While checking the socket, treat pending data as an error.
|
| |
|
#define | LCB_IO_SOCKCHECK_STATUS_CLOSED |
| |
|
#define | LCB_IO_SOCKCHECK_STATUS_OK |
| |
|
#define | LCB_IO_SOCKCHECK_STATUS_UNKNOWN |
| |
|
#define | LCB_IO_CNTL_GET |
| | For use with io{E,C}_cntl_fn, indicates the setting should be retrieved.
|
| |
|
#define | LCB_IO_CNTL_SET |
| | For use with lcb_io{E,C}_cntl_fn`, indicates the setting should be modified.
|
| |
|
#define | LCB_IO_CNTL_TCP_NODELAY |
| | Disable Nagle's algorithm (use an int)
|
| |
|
#define | LCB_IO_CNTL_TCP_KEEPALIVE |
| | Enable/Disable TCP Keepalive.
|
| |
| typedef lcb_SSIZE(* | lcb_ioE_recv_fn) (lcb_io_opt_t iops, lcb_socket_t sock, void *target_buf, lcb_SIZE buflen, int _unused_flags) |
| | Receive data into a single buffer.
|
| |
| typedef lcb_SSIZE(* | lcb_ioE_send_fn) (lcb_io_opt_t iops, lcb_socket_t sock, const void *srcbuf, lcb_SIZE buflen, int _ignored) |
| | Send data from a single buffer.
|
| |
| typedef lcb_SSIZE(* | lcb_ioE_recvv_fn) (lcb_io_opt_t iops, lcb_socket_t sock, lcb_IOV *iov, lcb_SIZE niov) |
| | Read data into a series of buffers.
|
| |
| typedef lcb_SSIZE(* | lcb_ioE_sendv_fn) (lcb_io_opt_t iops, lcb_socket_t sock, lcb_IOV *iov, lcb_SIZE niov) |
| | Write data from multiple buffers.
|
| |
| typedef lcb_socket_t(* | lcb_ioE_socket_fn) (lcb_io_opt_t iops, int domain, int type, int protocol) |
| | Create a new socket.
|
| |
| typedef int(* | lcb_ioE_connect_fn) (lcb_io_opt_t iops, lcb_socket_t sock, const struct sockaddr *dst, unsigned int addrlen) |
| | Connect a created socket.
|
| |
| typedef int(* | lcb_ioE_bind_fn) (lcb_io_opt_t iops, lcb_socket_t sock, const struct sockaddr *srcaddr, unsigned int addrlen) |
| |
| typedef int(* | lcb_ioE_listen_fn) (lcb_io_opt_t iops, lcb_socket_t bound_sock, unsigned int queuelen) |
| |
| typedef lcb_socket_t(* | lcb_ioE_accept_fn) (lcb_io_opt_t iops, lcb_socket_t lsnsock) |
| |
| typedef void(* | lcb_ioE_close_fn) (lcb_io_opt_t iops, lcb_socket_t sock) |
| | Close a socket.
|
| |
| typedef int(* | lcb_ioE_chkclosed_fn) (lcb_io_opt_t iops, lcb_socket_t sock, int flags) |
| | Check if a socket has been closed or not.
|
| |
| typedef int(* | lcb_ioE_cntl_fn) (lcb_io_opt_t iops, lcb_socket_t sock, int mode, int option, void *arg) |
| | Execute a specificied operation on a socket.
|
| |
|
|
#define | lcb_io_read_cb |
| |
|
#define | lcb_io_write_cb |
| |
| typedef lcb_sockdata_t *(* | lcb_ioC_socket_fn) (lcb_io_opt_t iops, int domain, int type, int protocol) |
| | Create a completion socket handle.
|
| |
| typedef void(* | lcb_io_connect_cb) (lcb_sockdata_t *socket, int status) |
| | Callback to be invoked upon a connection result.
|
| |
| typedef int(* | lcb_ioC_connect_fn) (lcb_io_opt_t iops, lcb_sockdata_t *sd, const struct sockaddr *dst, unsigned int naddr, lcb_io_connect_cb callback) |
| | Request a connection for a socket.
|
| |
| typedef void() | lcb_ioC_serve_callback(lcb_sockdata_t *sd_server, lcb_sockdata_t *sd_client, int status) |
| | Callback invoked when a new client connection has been established.
|
| |
| typedef int(* | lcb_ioC_serve_fn) (lcb_io_opt_t iops, lcb_sockdata_t *server_socket, const struct sockaddr *listen_addr, lcb_ioC_serve_callback callback) |
| | Specify that the socket start accepting connections.
|
| |
| typedef int(* | lcb_ioC_nameinfo_fn) (lcb_io_opt_t iops, lcb_sockdata_t *sock, struct lcb_nameinfo_st *ni) |
| | Request address information on a connected socket.
|
| |
| typedef void(* | lcb_ioC_read_callback) (lcb_sockdata_t *sd, lcb_SSIZE nread) |
| |
| typedef int(* | lcb_ioC_read_fn) (lcb_io_opt_t, lcb_sockdata_t *, lcb_ioC_read_callback) |
| |
| typedef lcb_io_writebuf_t *(* | lcb_ioC_wballoc_fn) (lcb_io_opt_t, lcb_sockdata_t *) |
| |
| typedef void(* | lcb_ioC_wbfree_fn) (lcb_io_opt_t, lcb_sockdata_t *, lcb_io_writebuf_t *) |
| |
| typedef void(* | lcb_ioC_write_callback) (lcb_sockdata_t *, lcb_io_writebuf_t *, int) |
| |
| typedef int(* | lcb_ioC_write_fn) (lcb_io_opt_t, lcb_sockdata_t *, lcb_io_writebuf_t *, lcb_ioC_write_callback) |
| |
| typedef void(* | lcb_ioC_write2_callback) (lcb_sockdata_t *sd, int status, void *arg) |
| | Callback received when a buffer has been flushed.
|
| |
| typedef int(* | lcb_ioC_write2_fn) (lcb_io_opt_t iops, lcb_sockdata_t *sd, lcb_IOV *iov, lcb_SIZE niov, void *uarg, lcb_ioC_write2_callback callback) |
| | Schedule a flush of a series of buffers to the network.
|
| |
| typedef void(* | lcb_ioC_read2_callback) (lcb_sockdata_t *sd, lcb_SSIZE nread, void *arg) |
| | Callback invoked when a read has been completed.
|
| |
| typedef int(* | lcb_ioC_read2_fn) (lcb_io_opt_t iops, lcb_sockdata_t *sd, lcb_IOV *iov, lcb_SIZE niov, void *uarg, lcb_ioC_read2_callback callback) |
| | Schedule a read from the network.
|
| |
| typedef unsigned int(* | lcb_ioC_close_fn) (lcb_io_opt_t iops, lcb_sockdata_t *sd) |
| | Asynchronously shutdown the socket.
|
| |
| typedef int(* | lcb_ioC_chkclosed_fn) (lcb_io_opt_t iops, lcb_sockdata_t *sd, int flags) |
| | This is the completion variant of lcb_ioE_chkclosed_fn.
|
| |
| typedef int(* | lcb_ioC_cntl_fn) (lcb_io_opt_t iops, lcb_sockdata_t *sd, int mode, int option, void *arg) |
| |
Public I/O integration interface.
This file provides the public I/O interface for integrating with external event loops.