45 return PACKAGE_VERSION;
50 return PACKAGE_BUGREPORT;
139 if (drizzle->
pfds != NULL)
225 drizzle->
log_fn= function;
322 strcpy(con->
db, from->
db);
360 if (con->
prev != NULL)
362 if (con->
next != NULL)
386 pfds= realloc(drizzle->
pfds, drizzle->
con_count *
sizeof(
struct pollfd));
400 for (con= drizzle->
con_list; con != NULL; con= con->
next)
406 pfds[x].events= con->
events;
414 "no active file descriptors");
423 ret= poll(pfds, x, drizzle->
timeout);
447 for (con= drizzle->
con_list; con != NULL; con= con->
next)
469 for (con= drizzle->
con_list; con != NULL; con= con->
next)
488 for (con= drizzle->
con_list; con != NULL; con= con->
next)
506 const char *host, in_port_t port,
507 const char *user,
const char *password,
524 const char *uds,
const char *user,
525 const char *password,
const char *db,
546 const char *host, in_port_t port,
563 const char *uds,
int backlog,
587 fd= accept(ready->
fd, NULL, NULL);
617 for (ready= drizzle->
con_list; ready != NULL; ready= ready->
next)
634 const char *format, ...)
641 size= strlen(function);
642 ptr= memcpy(log_buffer, function, size);
648 va_start(args, format);
652 if (drizzle->
log_fn == NULL)
657 memcpy(drizzle->
last_error, log_buffer, size + 1);
664 const char *format, va_list args)
668 if (drizzle->
log_fn == NULL)
671 vprintf(format, args);
drizzle_con_st * drizzle_con_add_tcp(drizzle_st *drizzle, drizzle_con_st *con, const char *host, in_port_t port, const char *user, const char *password, const char *db, drizzle_con_options_t options)
drizzle_con_st * drizzle_con_add_uds(drizzle_st *drizzle, drizzle_con_st *con, const char *uds, const char *user, const char *password, const char *db, drizzle_con_options_t options)
void drizzle_con_reset_addrinfo(drizzle_con_st *con)
void drizzle_con_set_backlog(drizzle_con_st *con, int backlog)
void drizzle_con_set_uds(drizzle_con_st *con, const char *uds)
void drizzle_con_set_db(drizzle_con_st *con, const char *db)
drizzle_return_t drizzle_con_set_events(drizzle_con_st *con, short events)
drizzle_return_t drizzle_con_set_revents(drizzle_con_st *con, short revents)
drizzle_return_t drizzle_con_set_fd(drizzle_con_st *con, int fd)
void drizzle_con_set_tcp(drizzle_con_st *con, const char *host, in_port_t port)
void drizzle_con_close(drizzle_con_st *con)
void drizzle_con_set_auth(drizzle_con_st *con, const char *user, const char *password)
void drizzle_con_add_options(drizzle_con_st *con, drizzle_con_options_t options)
@ DRIZZLE_CON_STATUS_NONE
@ DRIZZLE_CAPABILITIES_NONE
@ DRIZZLE_CON_NO_RESULT_READ
#define DRIZZLE_DEFAULT_BACKLOG
#define DRIZZLE_MAX_ERROR_SIZE
#define DRIZZLE_MAX_PACKET_SIZE
@ DRIZZLE_RETURN_NO_ACTIVE_CONNECTIONS
static void drizzle_log_crazy(drizzle_st *drizzle, const char *format,...)
void drizzle_set_error(drizzle_st *drizzle, const char *function, const char *format,...)
void drizzle_log(drizzle_st *drizzle, drizzle_verbose_t verbose, const char *format, va_list args)
void drizzle_query_free_all(drizzle_st *drizzle)
void drizzle_result_free_all(drizzle_con_st *con)
drizzle_con_st * drizzle_con_accept(drizzle_st *drizzle, drizzle_con_st *con, drizzle_return_t *ret_ptr)
drizzle_con_st * drizzle_con_add_tcp_listen(drizzle_st *drizzle, drizzle_con_st *con, const char *host, in_port_t port, int backlog, drizzle_con_options_t options)
drizzle_con_st * drizzle_con_add_uds_listen(drizzle_st *drizzle, drizzle_con_st *con, const char *uds, int backlog, drizzle_con_options_t options)
drizzle_con_st * drizzle_con_ready_listen(drizzle_st *drizzle)
static const char * _verbose_name[DRIZZLE_VERBOSE_MAX]
void drizzle_context_free_fn(drizzle_st *drizzle, void *context)
drizzle_return_t drizzle_event_watch_fn(drizzle_con_st *con, short events, void *context)
void drizzle_log_fn(const char *line, drizzle_verbose_t verbose, void *context)
drizzle_options_t drizzle_options(const drizzle_st *drizzle)
void drizzle_remove_options(drizzle_st *drizzle, drizzle_options_t options)
drizzle_con_st * drizzle_con_clone(drizzle_st *drizzle, drizzle_con_st *con, const drizzle_con_st *from)
drizzle_con_st * drizzle_con_create(drizzle_st *drizzle, drizzle_con_st *con)
const char * drizzle_version(void)
void drizzle_set_options(drizzle_st *drizzle, drizzle_options_t options)
void * drizzle_context(const drizzle_st *drizzle)
const char * drizzle_verbose_name(drizzle_verbose_t verbose)
const char * drizzle_error(const drizzle_st *drizzle)
void drizzle_set_log_fn(drizzle_st *drizzle, drizzle_log_fn *function, void *context)
int drizzle_errno(const drizzle_st *drizzle)
drizzle_st * drizzle_clone(drizzle_st *drizzle, const drizzle_st *from)
void drizzle_set_timeout(drizzle_st *drizzle, int timeout)
drizzle_con_st * drizzle_con_ready(drizzle_st *drizzle)
void drizzle_set_context_free_fn(drizzle_st *drizzle, drizzle_context_free_fn *function)
void drizzle_set_verbose(drizzle_st *drizzle, drizzle_verbose_t verbose)
void drizzle_set_event_watch_fn(drizzle_st *drizzle, drizzle_event_watch_fn *function, void *context)
const char * drizzle_sqlstate(const drizzle_st *drizzle)
void drizzle_free(drizzle_st *drizzle)
void drizzle_add_options(drizzle_st *drizzle, drizzle_options_t options)
int drizzle_timeout(const drizzle_st *drizzle)
drizzle_st * drizzle_create(drizzle_st *drizzle)
uint16_t drizzle_error_code(const drizzle_st *drizzle)
void drizzle_con_free_all(drizzle_st *drizzle)
drizzle_verbose_t drizzle_verbose(const drizzle_st *drizzle)
drizzle_return_t drizzle_con_wait(drizzle_st *drizzle)
void drizzle_set_context(drizzle_st *drizzle, void *context)
void drizzle_con_free(drizzle_con_st *con)
const char * drizzle_bugreport(void)
@ DRIZZLE_ASSERT_DANGLING
uint8_t buffer[DRIZZLE_MAX_BUFFER_SIZE]
drizzle_capabilities_t capabilities
drizzle_result_st * result_list
struct addrinfo * addrinfo_next
drizzle_charset_t charset
drizzle_con_options_t options
union drizzle_con_st::@0 socket
drizzle_con_status_t status
char server_version[DRIZZLE_MAX_SERVER_VERSION_SIZE]
drizzle_con_context_free_fn * context_free_fn
drizzle_con_socket_t socket_type
char db[DRIZZLE_MAX_DB_SIZE]
char password[DRIZZLE_MAX_PASSWORD_SIZE]
drizzle_command_t command
char user[DRIZZLE_MAX_USER_SIZE]
struct addrinfo * addrinfo
struct sockaddr_un sockaddr
drizzle_query_st * query_list
drizzle_con_st * con_list
drizzle_options_t options
char sqlstate[DRIZZLE_MAX_SQLSTATE_SIZE+1]
void * event_watch_context
char last_error[DRIZZLE_MAX_ERROR_SIZE]
drizzle_context_free_fn * context_free_fn
drizzle_event_watch_fn * event_watch_fn
drizzle_verbose_t verbose