Libevent Code Doxygen document
Public Attributes | List of all members
bufferevent_private Struct Reference

#include <bufferevent-internal.h>

Collaboration diagram for bufferevent_private:
Collaboration graph
[legend]

Public Attributes

struct bufferevent bev
 
struct evbuffer_cb_entryread_watermarks_cb
 
unsigned own_lock: 1
 
unsigned readcb_pending: 1
 
unsigned writecb_pending: 1
 
unsigned connecting: 1
 
unsigned connection_refused: 1
 
short eventcb_pending
 
bufferevent_suspend_flags read_suspended
 
bufferevent_suspend_flags write_suspended
 
int errno_pending
 
int dns_error
 
struct event_callback deferred
 
enum bufferevent_options options
 
int refcnt
 
void * lock
 
ev_ssize_t max_single_read
 
ev_ssize_t max_single_write
 
struct bufferevent_rate_limitrate_limiting
 
union {
   struct sockaddr_in6   in6
 
   struct sockaddr_in   in
 
conn_address
 
struct evdns_getaddrinfo_requestdns_request
 

Detailed Description

Parts of the bufferevent structure that are shared among all bufferevent types, but not exposed in bufferevent_struct.h.

Member Data Documentation

◆ bev

struct bufferevent bufferevent_private::bev

The underlying bufferevent structure.

◆ connecting

unsigned bufferevent_private::connecting

Flag: set if we are currently busy connecting.

◆ connection_refused

unsigned bufferevent_private::connection_refused

Flag: set if a connect failed prematurely; this is a hack for getting around the bufferevent abstraction.

◆ deferred

struct event_callback bufferevent_private::deferred

Used to implement deferred callbacks

◆ dns_error

int bufferevent_private::dns_error

The DNS error code for bufferevent_socket_connect_hostname

◆ errno_pending

int bufferevent_private::errno_pending

Set to the current socket errno if we have deferred callbacks and an events callback is pending.

◆ eventcb_pending

short bufferevent_private::eventcb_pending

Set to the events pending if we have deferred callbacks and an events callback is pending.

◆ lock

void* bufferevent_private::lock

Lock for this bufferevent. Shared by the inbuf and the outbuf. If NULL, locking is disabled.

◆ max_single_read

ev_ssize_t bufferevent_private::max_single_read

No matter how big our bucket gets, don't try to read more than this much in a single read operation.

◆ max_single_write

ev_ssize_t bufferevent_private::max_single_write

No matter how big our bucket gets, don't try to write more than this much in a single write operation.

◆ options

enum bufferevent_options bufferevent_private::options

The options this bufferevent was constructed with

◆ own_lock

unsigned bufferevent_private::own_lock

If set, we should free the lock when we free the bufferevent.

◆ rate_limiting

struct bufferevent_rate_limit* bufferevent_private::rate_limiting

Rate-limiting information for this bufferevent

◆ read_suspended

bufferevent_suspend_flags bufferevent_private::read_suspended

If set, read is suspended until one or more conditions are over. The actual value here is a bitfield of those conditions; see the BEV_SUSPEND_* flags above.

◆ read_watermarks_cb

struct evbuffer_cb_entry* bufferevent_private::read_watermarks_cb

Evbuffer callback to enforce watermarks on input.

◆ readcb_pending

unsigned bufferevent_private::readcb_pending

Flag: set if we have deferred callbacks and a read callback is pending.

◆ refcnt

int bufferevent_private::refcnt

Current reference count for this bufferevent.

◆ write_suspended

bufferevent_suspend_flags bufferevent_private::write_suspended

If set, writing is suspended until one or more conditions are over. The actual value here is a bitfield of those conditions; see the BEV_SUSPEND_* flags above.

◆ writecb_pending

unsigned bufferevent_private::writecb_pending

Flag: set if we have deferred callbacks and a write callback is pending.


The documentation for this struct was generated from the following file: