Apache HTTPD
Classes | Macros | Typedefs | Enumerations | Functions | Variables
mod_dbd.c File Reference
module dbd_module
#include "apr_reslist.h"
#include "apr_strings.h"
#include "apr_hash.h"
#include "apr_tables.h"
#include "apr_lib.h"
#include "apr_dbd.h"
#include "apr_want.h"
#include "http_protocol.h"
#include "http_config.h"
#include "http_log.h"
#include "http_request.h"
#include "mod_dbd.h"

Go to the source code of this file.

Classes

struct  dbd_group_t
 
struct  svr_cfg
 
struct  dbd_query_t
 

Macros

#define APR_WANT_MEMFUNC
 
#define APR_WANT_STRFUNC
 
#define NMIN_SET   0x1
 
#define NKEEP_SET   0x2
 
#define NMAX_SET   0x4
 
#define EXPTIME_SET   0x8
 
#define DEFAULT_NMIN   1
 
#define DEFAULT_NKEEP   2
 
#define DEFAULT_NMAX   10
 
#define DEFAULT_EXPTIME   300
 
#define DEFAULT_SQL_INIT_ARRAY_SIZE   5
 

Typedefs

typedef struct dbd_group_t dbd_group_t
 

Enumerations

enum  cmd_parts {
  cmd_name , cmd_params , cmd_persist , cmd_min ,
  cmd_keep , cmd_max , cmd_exp
}
 

Functions

apr_status_t dbd_run_post_connect (apr_pool_t *pool, dbd_cfg_t *cfg, ap_dbd_t *dbd)
 
static void * create_dbd_config (apr_pool_t *pool, server_rec *s)
 
static void * merge_dbd_config (apr_pool_t *pool, void *basev, void *addv)
 
static void ap_dbd_sql_init (server_rec *s, const char *query)
 
static const chardbd_param (cmd_parms *cmd, void *dconf, const char *val)
 
static const chardbd_param_flag (cmd_parms *cmd, void *dconf, int flag)
 
static const chardbd_prepare (cmd_parms *cmd, void *dconf, const char *query, const char *label)
 
static const chardbd_init_sql (cmd_parms *cmd, void *dconf, const char *query)
 
static int dbd_pre_config (apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *ptemp)
 
void ap_dbd_prepare (server_rec *s, const char *query, const char *label)
 
static int dbd_post_config (apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *ptemp, server_rec *s)
 
static apr_status_t dbd_prepared_init (apr_pool_t *pool, dbd_cfg_t *cfg, ap_dbd_t *rec)
 
static apr_status_t dbd_init_sql_init (apr_pool_t *pool, dbd_cfg_t *cfg, ap_dbd_t *rec)
 
static apr_status_t dbd_close (void *data)
 
static apr_status_t dbd_construct (void **data_ptr, void *params, apr_pool_t *pool)
 
static apr_status_t dbd_setup_init (apr_pool_t *pool, server_rec *s)
 
static void dbd_child_init (apr_pool_t *p, server_rec *s)
 
void ap_dbd_close (server_rec *s, ap_dbd_t *rec)
 
static apr_status_t dbd_check (apr_pool_t *pool, server_rec *s, ap_dbd_t *rec)
 
ap_dbd_tap_dbd_open (apr_pool_t *pool, server_rec *s)
 
ap_dbd_tap_dbd_acquire (request_rec *r)
 
ap_dbd_tap_dbd_cacquire (conn_rec *c)
 
static void dbd_hooks (apr_pool_t *pool)
 

Variables

static apr_pool_tconfig_pool
 
static dbd_group_tgroup_list
 
static const char *const no_dbdriver = "[DBDriver unset]"
 
static const command_rec dbd_cmds []
 
static int *const aplog_module_index = &( dbd_module.module_index)
 

Macro Definition Documentation

◆ APR_WANT_MEMFUNC

#define APR_WANT_MEMFUNC

Definition at line 30 of file mod_dbd.c.

◆ APR_WANT_STRFUNC

#define APR_WANT_STRFUNC

Definition at line 31 of file mod_dbd.c.

◆ DEFAULT_EXPTIME

#define DEFAULT_EXPTIME   300

Definition at line 90 of file mod_dbd.c.

◆ DEFAULT_NKEEP

#define DEFAULT_NKEEP   2

Definition at line 88 of file mod_dbd.c.

◆ DEFAULT_NMAX

#define DEFAULT_NMAX   10

Definition at line 89 of file mod_dbd.c.

◆ DEFAULT_NMIN

#define DEFAULT_NMIN   1

Definition at line 87 of file mod_dbd.c.

◆ DEFAULT_SQL_INIT_ARRAY_SIZE

#define DEFAULT_SQL_INIT_ARRAY_SIZE   5

Definition at line 92 of file mod_dbd.c.

◆ EXPTIME_SET

#define EXPTIME_SET   0x8

Definition at line 52 of file mod_dbd.c.

◆ NKEEP_SET

#define NKEEP_SET   0x2

Definition at line 50 of file mod_dbd.c.

◆ NMAX_SET

#define NMAX_SET   0x4

Definition at line 51 of file mod_dbd.c.

◆ NMIN_SET

#define NMIN_SET   0x1

Definition at line 49 of file mod_dbd.c.

Typedef Documentation

◆ dbd_group_t

Definition at line 54 of file mod_dbd.c.

Enumeration Type Documentation

◆ cmd_parts

Enumerator
cmd_name 
cmd_params 
cmd_persist 
cmd_min 
cmd_keep 
cmd_max 
cmd_exp 

Definition at line 74 of file mod_dbd.c.

Function Documentation

◆ ap_dbd_sql_init()

static void ap_dbd_sql_init ( server_rec s,
const char query 
)
static

Definition at line 140 of file mod_dbd.c.

◆ create_dbd_config()

static void * create_dbd_config ( apr_pool_t pool,
server_rec s 
)
static

Definition at line 94 of file mod_dbd.c.

◆ dbd_check()

static apr_status_t dbd_check ( apr_pool_t pool,
server_rec s,
ap_dbd_t rec 
)
static

Definition at line 769 of file mod_dbd.c.

◆ dbd_child_init()

static void dbd_child_init ( apr_pool_t p,
server_rec s 
)
static

Definition at line 705 of file mod_dbd.c.

◆ dbd_close()

static apr_status_t dbd_close ( void *  data)
static

Definition at line 486 of file mod_dbd.c.

◆ dbd_construct()

static apr_status_t dbd_construct ( void **  data_ptr,
void *  params,
apr_pool_t pool 
)
static

Definition at line 512 of file mod_dbd.c.

◆ dbd_hooks()

static void dbd_hooks ( apr_pool_t pool)
static

Definition at line 968 of file mod_dbd.c.

◆ dbd_init_sql()

static const char * dbd_init_sql ( cmd_parms cmd,
void *  dconf,
const char query 
)
static

Definition at line 267 of file mod_dbd.c.

◆ dbd_init_sql_init()

static apr_status_t dbd_init_sql_init ( apr_pool_t pool,
dbd_cfg_t cfg,
ap_dbd_t rec 
)
static

Definition at line 465 of file mod_dbd.c.

◆ dbd_param()

static const char * dbd_param ( cmd_parms cmd,
void *  dconf,
const char val 
)
static

Definition at line 161 of file mod_dbd.c.

◆ dbd_param_flag()

static const char * dbd_param_flag ( cmd_parms cmd,
void *  dconf,
int  flag 
)
static

Definition at line 240 of file mod_dbd.c.

◆ dbd_post_config()

static int dbd_post_config ( apr_pool_t pconf,
apr_pool_t plog,
apr_pool_t ptemp,
server_rec s 
)
static

< Module has handled this stage.

Definition at line 341 of file mod_dbd.c.

◆ dbd_pre_config()

static int dbd_pre_config ( apr_pool_t pconf,
apr_pool_t plog,
apr_pool_t ptemp 
)
static

< Module has handled this stage.

Definition at line 305 of file mod_dbd.c.

◆ dbd_prepare()

static const char * dbd_prepare ( cmd_parms cmd,
void *  dconf,
const char query,
const char label 
)
static

Definition at line 254 of file mod_dbd.c.

◆ dbd_prepared_init()

static apr_status_t dbd_prepared_init ( apr_pool_t pool,
dbd_cfg_t cfg,
ap_dbd_t rec 
)
static

Definition at line 434 of file mod_dbd.c.

◆ dbd_setup_init()

static apr_status_t dbd_setup_init ( apr_pool_t pool,
server_rec s 
)
static

Definition at line 664 of file mod_dbd.c.

◆ merge_dbd_config()

static void * merge_dbd_config ( apr_pool_t pool,
void *  basev,
void *  addv 
)
static

Definition at line 116 of file mod_dbd.c.

Variable Documentation

◆ aplog_module_index

int* const aplog_module_index = &( dbd_module.module_index)
static

Definition at line 986 of file mod_dbd.c.

◆ config_pool

apr_pool_t* config_pool
static

Definition at line 78 of file mod_dbd.c.

◆ dbd_cmds

const command_rec dbd_cmds[]
static
Initial value:
= {
{ "DBDriver" , dbd_param , (void*)cmd_name , 128 , TAKE1, "SQL Driver" },
{ "DBDParams" , dbd_param , (void*)cmd_params , 128 , TAKE1, "SQL Driver Params" },
{ "DBDPersist" , dbd_param_flag , (void*)cmd_persist , 128 , FLAG, "Use persistent connection/pool" },
{ "DBDPrepareSQL" , dbd_prepare , NULL , 128 , TAKE12, "SQL statement to prepare (or nothing, to override " "statement inherited from main server) and label" },
{ "DBDInitSQL" , dbd_init_sql , NULL , 128 , TAKE1, "SQL statement to be executed after connection is created" },
{NULL}
}
@ TAKE12
Definition http_config.h:61
@ TAKE1
Definition http_config.h:51
@ FLAG
Definition http_config.h:59
static void(* dbd_prepare)(server_rec *, const char *, const char *)
static const char * dbd_param_flag(cmd_parms *cmd, void *dconf, int flag)
Definition mod_dbd.c:240
static const char * dbd_init_sql(cmd_parms *cmd, void *dconf, const char *query)
Definition mod_dbd.c:267
@ cmd_params
Definition mod_dbd.c:74
@ cmd_persist
Definition mod_dbd.c:74
@ cmd_name
Definition mod_dbd.c:74
static const char * dbd_param(cmd_parms *cmd, void *dconf, const char *val)
Definition mod_dbd.c:161
return NULL
Definition mod_so.c:359

Definition at line 278 of file mod_dbd.c.

◆ group_list

dbd_group_t* group_list
static

Definition at line 79 of file mod_dbd.c.

◆ no_dbdriver

const char* const no_dbdriver = "[DBDriver unset]"
static

Definition at line 82 of file mod_dbd.c.