#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
#include <stdarg.h>
#include <string.h>
#include <unistd.h>
#include <sys/types.h>
#include <apr.h>
#include <apr_general.h>
#include <apr_strings.h>
#include <apr_lib.h>
#include <apr_pools.h>
#include <apr_buckets.h>
#include <apr_hash.h>
#include <apr_file_io.h>
#include <apr_portable.h>
#include <apr_time.h>
#include <apr_ring.h>
#include <apr_mmap.h>
#include <apr_dbd.h>
#include <apr_md5.h>
#include <apr_base64.h>
#include <apr_thread_proc.h>
#include <apr_thread_mutex.h>
#include <apreq_param.h>
#include <apreq_cookie.h>
#include <apreq_module_apache2.h>
#include <http_request.h>
#include <ap_regex.h>
#include <ap_mpm.h>
#include <libxml/xmlreader.h>
#include <libxml/xmlwriter.h>
Go to the source code of this file.
Data Structures | |
struct | rxv_spin_data |
Defines | |
#define | rxv_spin_single_trimboth(s) rxv_spin_single_trim((s),(RXV_SPIN_TRIM_LEFT|RXV_SPIN_TRIM_RIGHT)) |
#define | rxv_spin_single_trimleft(s) rxv_spin_single_trim((s),(RXV_SPIN_TRIM_LEFT)) |
#define | rxv_spin_single_trimright(s) rxv_spin_single_trim((s),(RXV_SPIN_TRIM_RIGHT)) |
#define | rxv_spin_column_del(rows, key) rxv_spin_column_set((rows),(key),NULL) |
#define | rxv_spin_str_trimboth(s) rxv_spin_str_trim((s),(RXV_SPIN_TRIM_LEFT|RXV_SPIN_TRIM_RIGHT)) |
#define | rxv_spin_str_trimleft(s) rxv_spin_str_trim((s),(RXV_SPIN_TRIM_LEFT)) |
#define | rxv_spin_str_trimright(s) rxv_spin_str_trim((s),(RXV_SPIN_TRIM_RIGHT)) |
#define | rxv_spin_ctx_strget(ctx, key) rxv_spin_single_get(rxv_spin_ctx_get((ctx),(key))) |
#define | rxv_spin_ctx_strset(ctx, key, val) rxv_spin_ctx_set((ctx),(key),rxv_spin_single(rxv_spin_ctx_pool(ctx),(val))) |
#define | rxv_spin_ctx_del(ctx, key) rxv_spin_ctx_set((ctx),(key),NULL) |
#define | rxv_spin_app_strget(ctx, key) rxv_spin_single_get(rxv_spin_app_get((ctx),(key))) |
#define | rxv_spin_app_strset(ctx, key, val) rxv_spin_app_set((ctx),(key),rxv_spin_single(rxv_spin_ctx_pool(ctx),(val))) |
#define | rxv_spin_ses_strget(ctx, key) rxv_spin_single_get(rxv_spin_ses_get((ctx),(key))) |
#define | rxv_spin_ses_strset(ctx, key, val) rxv_spin_ses_set((ctx),(key),rxv_spin_single(rxv_spin_ctx_pool(ctx),(val))) |
Typedefs | |
typedef rxv_spin_data | rxv_spin_data_t |
typedef rxv_spin_ctx | rxv_spin_ctx_t |
typedef rxv_spin_db | rxv_spin_db_t |
typedef rxv_spin_db_txn | rxv_spin_db_txn_t |
typedef void(*) | rxv_spin_init_t (rxv_spin_ctx_t *ctx) |
typedef int(*) | rxv_spin_prepare_t (rxv_spin_ctx_t *ctx) |
typedef int(*) | rxv_spin_service_t (rxv_spin_ctx_t *ctx) |
Enumerations | |
enum | rxv_spin_data_e { RXV_SPIN_DATA_SGL = 1, RXV_SPIN_DATA_RWS, RXV_SPIN_DATA_MTA } |
enum | rxv_spin_trim_e { RXV_SPIN_TRIM_LEFT = 1, RXV_SPIN_TRIM_RIGHT } |
Functions | |
rxv_spin_data_t * | rxv_spin_single (apr_pool_t *pool, const char *str) |
char * | rxv_spin_single_get (rxv_spin_data_t *single) |
rxv_spin_data_t * | rxv_spin_single_set (rxv_spin_data_t *single, const char *str) |
rxv_spin_data_t * | rxv_spin_single_mem (apr_pool_t *pool, const char *str, apr_size_t size) |
rxv_spin_data_t * | rxv_spin_single_memset (rxv_spin_data_t *single, const char *str, apr_size_t size) |
rxv_spin_data_t * | rxv_spin_single_tolower (rxv_spin_data_t *single) |
rxv_spin_data_t * | rxv_spin_single_toupper (rxv_spin_data_t *single) |
rxv_spin_data_t * | rxv_spin_single_trim (rxv_spin_data_t *single, rxv_spin_trim_e what) |
rxv_spin_data_t * | rxv_spin_meta (apr_pool_t *pool,...) |
rxv_spin_data_t * | rxv_spin_meta_vstr (apr_pool_t *pool,...) |
rxv_spin_data_t * | rxv_spin_meta_parse (apr_pool_t *pool, char *str, const char *sep) |
rxv_spin_data_t * | rxv_spin_meta_brigade (apr_pool_t *pool, apr_bucket_brigade *bb) |
rxv_spin_data_t * | rxv_spin_meta_empty (apr_pool_t *pool, apr_size_t size) |
apr_hash_t * | rxv_spin_meta_hash (apr_pool_t *pool, rxv_spin_data_t *data) |
rxv_spin_data_t * | rxv_spin_meta_mark (rxv_spin_data_t *data, apr_size_t element) |
rxv_spin_data_t * | rxv_spin_meta_markeach (rxv_spin_data_t *data, apr_size_t off, apr_size_t step) |
rxv_spin_data_t * | rxv_spin_meta_select (rxv_spin_data_t *data, rxv_spin_data_t *select, apr_hash_t *hash) |
rxv_spin_data_t * | rxv_spin_rows (apr_pool_t *pool,...) |
apr_hash_t * | rxv_spin_rows_hash (apr_pool_t *pool, rxv_spin_data_t *rows, const char *column) |
rxv_spin_data_t * | rxv_spin_rows_mark (rxv_spin_data_t *rows, const char *column, apr_size_t element) |
rxv_spin_data_t * | rxv_spin_rows_markeach (rxv_spin_data_t *rows, const char *column, apr_size_t off, apr_size_t step) |
rxv_spin_data_t * | rxv_spin_rows_select (rxv_spin_data_t *rows, rxv_spin_data_t *select, const char *column, const char *marker, apr_hash_t *hash) |
rxv_spin_data_t * | rxv_spin_column_get (apr_pool_t *pool, rxv_spin_data_t *rows, const char *key) |
rxv_spin_data_t * | rxv_spin_column_set (rxv_spin_data_t *rows, const char *key, rxv_spin_data_t *column) |
rxv_spin_data_t * | rxv_spin_resize (apr_pool_t *pool, rxv_spin_data_t *data, apr_size_t size) |
rxv_spin_data_t * | rxv_spin_copy (apr_pool_t *pool, rxv_spin_data_t *data) |
char * | rxv_spin_str_tolower (const char *str) |
char * | rxv_spin_str_toupper (const char *str) |
char * | rxv_spin_str_trim (char *str, rxv_spin_trim_e what) |
apr_pool_t * | rxv_spin_ctx_pool (rxv_spin_ctx_t *ctx) |
apr_pool_t * | rxv_spin_ctx_tpool (rxv_spin_ctx_t *ctx) |
rxv_spin_data_t * | rxv_spin_ctx_data (rxv_spin_ctx_t *ctx) |
request_rec * | rxv_spin_ctx_r (rxv_spin_ctx_t *ctx) |
apreq_handle_t * | rxv_spin_ctx_req (rxv_spin_ctx_t *ctx) |
void * | rxv_spin_ctx_xget (rxv_spin_ctx_t *ctx) |
void * | rxv_spin_ctx_xset (rxv_spin_ctx_t *ctx, void *extra) |
rxv_spin_data_t * | rxv_spin_ctx_get (rxv_spin_ctx_t *ctx, const char *key) |
rxv_spin_data_t * | rxv_spin_ctx_set (rxv_spin_ctx_t *ctx, const char *key, rxv_spin_data_t *value) |
rxv_spin_data_t * | rxv_spin_app_get (rxv_spin_ctx_t *ctx, const char *key) |
rxv_spin_data_t * | rxv_spin_app_set (rxv_spin_ctx_t *ctx, const char *key, rxv_spin_data_t *val) |
apr_status_t | rxv_spin_app_del (rxv_spin_ctx_t *ctx, const char *key) |
rxv_spin_data_t * | rxv_spin_ses_get (rxv_spin_ctx_t *ctx, const char *key) |
rxv_spin_data_t * | rxv_spin_ses_set (rxv_spin_ctx_t *ctx, const char *key, rxv_spin_data_t *val) |
apr_status_t | rxv_spin_ses_del (rxv_spin_ctx_t *ctx, const char *key) |
char * | rxv_spin_ses_id (rxv_spin_ctx_t *ctx) |
int | rxv_spin_ses_valid (rxv_spin_ctx_t *ctx) |
apr_time_t | rxv_spin_ses_atime (rxv_spin_ctx_t *ctx) |
apr_pool_t * | rxv_spin_db_pool (rxv_spin_db_t *db) |
char * | rxv_spin_db_cinfo (rxv_spin_db_t *db) |
const apr_dbd_driver_t * | rxv_spin_db_driver (rxv_spin_db_t *db) |
apr_dbd_t * | rxv_spin_db_handle (rxv_spin_db_t *db) |
apr_dbd_transaction_t * | rxv_spin_db_txn (rxv_spin_db_txn_t *txn) |
rxv_spin_db_t * | rxv_spin_db_connect (rxv_spin_ctx_t *ctx, const char *conninfo) |
rxv_spin_data_t * | rxv_spin_db_data (apr_pool_t *pool, rxv_spin_db_t *db, apr_dbd_results_t *dbdres) |
rxv_spin_data_t * | rxv_spin_db_select (apr_pool_t *pool, rxv_spin_db_t *db, const char *query) |
int | rxv_spin_db_query (apr_pool_t *pool, rxv_spin_db_t *db, const char *query) |
rxv_spin_data_t * | rxv_spin_db_pselect (apr_pool_t *pool, rxv_spin_db_t *db, const char *query,...) |
int | rxv_spin_db_pquery (apr_pool_t *pool, rxv_spin_db_t *db, const char *query,...) |
rxv_spin_db_txn_t * | rxv_spin_db_start (apr_pool_t *pool, rxv_spin_db_t *db) |
apr_status_t | rxv_spin_db_end (rxv_spin_db_txn_t *txn) |
apr_status_t | rxv_spin_db_status (apr_pool_t *pool, rxv_spin_db_t *db) |
void * | rxv_spin_conn_get (rxv_spin_ctx_t *ctx, const char *conninfo) |
void * | rxv_spin_conn_set (rxv_spin_ctx_t *ctx, const char *conninfo, void *conn, apr_status_t(*cleanup)(void *data)) |
apr_status_t | rxv_spin_dso_load (rxv_spin_ctx_t *ctx, const char *path, apr_dso_handle_t **handle) |
char * | rxv_spin_hash (apr_pool_t *pool, const char *uniq) |
char * | rxv_spin_hmac (apr_pool_t *pool, const char *uniq, const char *salt) |
typedef struct rxv_spin_db rxv_spin_db_t |
database connection type
typedef struct rxv_spin_db_txn rxv_spin_db_txn_t |
database transaction type