Apache HTTPD
Classes | Macros | Functions | Variables
mod_socache_redis.c File Reference
#include "httpd.h"
#include "http_config.h"
#include "http_protocol.h"
#include "apr.h"
#include "apu_version.h"
#include "ap_socache.h"
#include "ap_mpm.h"
#include "http_log.h"
#include "apr_strings.h"
#include "mod_status.h"
#include "apr_redis.h"

Go to the source code of this file.

Classes

struct  socache_rd_svr_cfg
 
struct  ap_socache_instance_t
 

Macros

#define HAVE_APU_REDIS   1
 
#define RD_KEY_LEN   254
 
#define RD_DEFAULT_SERVER_PORT   6379
 
#define RD_DEFAULT_SERVER_MIN   0
 
#define RD_DEFAULT_SERVER_SMAX   1
 
#define RD_DEFAULT_SERVER_TTL   apr_time_from_sec(15)
 
#define RD_DEFAULT_SERVER_RWTO   apr_time_from_sec(5)
 

Functions

static const charsocache_rd_create (ap_socache_instance_t **context, const char *arg, apr_pool_t *tmp, apr_pool_t *p)
 
static apr_status_t socache_rd_init (ap_socache_instance_t *ctx, const char *namespace, const struct ap_socache_hints *hints, server_rec *s, apr_pool_t *p)
 
static void socache_rd_destroy (ap_socache_instance_t *context, server_rec *s)
 
static int socache_rd_id2key (ap_socache_instance_t *ctx, const unsigned char *id, unsigned int idlen, char *key, apr_size_t keylen)
 
static apr_status_t socache_rd_store (ap_socache_instance_t *ctx, server_rec *s, const unsigned char *id, unsigned int idlen, apr_time_t expiry, unsigned char *ucaData, unsigned int nData, apr_pool_t *p)
 
static apr_status_t socache_rd_retrieve (ap_socache_instance_t *ctx, server_rec *s, const unsigned char *id, unsigned int idlen, unsigned char *dest, unsigned int *destlen, apr_pool_t *p)
 
static apr_status_t socache_rd_remove (ap_socache_instance_t *ctx, server_rec *s, const unsigned char *id, unsigned int idlen, apr_pool_t *p)
 
static void socache_rd_status (ap_socache_instance_t *ctx, request_rec *r, int flags)
 
static apr_status_t socache_rd_iterate (ap_socache_instance_t *instance, server_rec *s, void *userctx, ap_socache_iterator_t *iterator, apr_pool_t *pool)
 
static void * create_server_config (apr_pool_t *p, server_rec *s)
 
static const charsocache_rd_set_ttl (cmd_parms *cmd, void *dummy, const char *arg)
 
static const charsocache_rd_set_rwto (cmd_parms *cmd, void *dummy, const char *arg)
 
static void register_hooks (apr_pool_t *p)
 

Variables

static const ap_socache_provider_t socache_mc
 
static const command_rec socache_redis_cmds []
 
static int *const aplog_module_index = &( socache_redis_module.module_index)
 

Macro Definition Documentation

◆ HAVE_APU_REDIS

#define HAVE_APU_REDIS   1

Definition at line 38 of file mod_socache_redis.c.

◆ RD_DEFAULT_SERVER_MIN

#define RD_DEFAULT_SERVER_MIN   0

Definition at line 50 of file mod_socache_redis.c.

◆ RD_DEFAULT_SERVER_PORT

#define RD_DEFAULT_SERVER_PORT   6379

Definition at line 45 of file mod_socache_redis.c.

◆ RD_DEFAULT_SERVER_RWTO

#define RD_DEFAULT_SERVER_RWTO   apr_time_from_sec(5)

Definition at line 62 of file mod_socache_redis.c.

◆ RD_DEFAULT_SERVER_SMAX

#define RD_DEFAULT_SERVER_SMAX   1

Definition at line 54 of file mod_socache_redis.c.

◆ RD_DEFAULT_SERVER_TTL

#define RD_DEFAULT_SERVER_TTL   apr_time_from_sec(15)

Definition at line 58 of file mod_socache_redis.c.

◆ RD_KEY_LEN

#define RD_KEY_LEN   254

Definition at line 42 of file mod_socache_redis.c.

Function Documentation

◆ create_server_config()

static void * create_server_config ( apr_pool_t p,
server_rec s 
)
static

Definition at line 402 of file mod_socache_redis.c.

◆ register_hooks()

static void register_hooks ( apr_pool_t p)
static

Definition at line 458 of file mod_socache_redis.c.

◆ socache_rd_create()

static const char * socache_rd_create ( ap_socache_instance_t **  context,
const char arg,
apr_pool_t tmp,
apr_pool_t p 
)
static

Definition at line 76 of file mod_socache_redis.c.

◆ socache_rd_destroy()

static void socache_rd_destroy ( ap_socache_instance_t context,
server_rec s 
)
static

Definition at line 188 of file mod_socache_redis.c.

◆ socache_rd_id2key()

static int socache_rd_id2key ( ap_socache_instance_t ctx,
const unsigned char id,
unsigned int  idlen,
char key,
apr_size_t  keylen 
)
static

Definition at line 196 of file mod_socache_redis.c.

◆ socache_rd_init()

static apr_status_t socache_rd_init ( ap_socache_instance_t ctx,
const char namespace,
const struct ap_socache_hints hints,
server_rec s,
apr_pool_t p 
)
static

Definition at line 93 of file mod_socache_redis.c.

◆ socache_rd_iterate()

static apr_status_t socache_rd_iterate ( ap_socache_instance_t instance,
server_rec s,
void *  userctx,
ap_socache_iterator_t iterator,
apr_pool_t pool 
)
static

Definition at line 379 of file mod_socache_redis.c.

◆ socache_rd_remove()

static apr_status_t socache_rd_remove ( ap_socache_instance_t ctx,
server_rec s,
const unsigned char id,
unsigned int  idlen,
apr_pool_t p 
)
static

Definition at line 277 of file mod_socache_redis.c.

◆ socache_rd_retrieve()

static apr_status_t socache_rd_retrieve ( ap_socache_instance_t ctx,
server_rec s,
const unsigned char id,
unsigned int  idlen,
unsigned char dest,
unsigned int destlen,
apr_pool_t p 
)
static

Definition at line 241 of file mod_socache_redis.c.

◆ socache_rd_set_rwto()

static const char * socache_rd_set_rwto ( cmd_parms cmd,
void *  dummy,
const char arg 
)
static

Definition at line 435 of file mod_socache_redis.c.

◆ socache_rd_set_ttl()

static const char * socache_rd_set_ttl ( cmd_parms cmd,
void *  dummy,
const char arg 
)
static

Definition at line 412 of file mod_socache_redis.c.

◆ socache_rd_status()

static void socache_rd_status ( ap_socache_instance_t ctx,
request_rec r,
int  flags 
)
static

Definition at line 299 of file mod_socache_redis.c.

◆ socache_rd_store()

static apr_status_t socache_rd_store ( ap_socache_instance_t ctx,
server_rec s,
const unsigned char id,
unsigned int  idlen,
apr_time_t  expiry,
unsigned char ucaData,
unsigned int  nData,
apr_pool_t p 
)
static

Definition at line 211 of file mod_socache_redis.c.

Variable Documentation

◆ aplog_module_index

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

Definition at line 477 of file mod_socache_redis.c.

◆ socache_mc

const ap_socache_provider_t socache_mc
static
Initial value:
= {
"redis",
0,
}
static void socache_rd_status(ap_socache_instance_t *ctx, request_rec *r, int flags)
static apr_status_t socache_rd_init(ap_socache_instance_t *ctx, const char *namespace, const struct ap_socache_hints *hints, server_rec *s, apr_pool_t *p)
static apr_status_t socache_rd_remove(ap_socache_instance_t *ctx, server_rec *s, const unsigned char *id, unsigned int idlen, apr_pool_t *p)
static apr_status_t socache_rd_retrieve(ap_socache_instance_t *ctx, server_rec *s, const unsigned char *id, unsigned int idlen, unsigned char *dest, unsigned int *destlen, apr_pool_t *p)
static void socache_rd_destroy(ap_socache_instance_t *context, server_rec *s)
static apr_status_t socache_rd_iterate(ap_socache_instance_t *instance, server_rec *s, void *userctx, ap_socache_iterator_t *iterator, apr_pool_t *pool)
static apr_status_t socache_rd_store(ap_socache_instance_t *ctx, server_rec *s, const unsigned char *id, unsigned int idlen, apr_time_t expiry, unsigned char *ucaData, unsigned int nData, apr_pool_t *p)
static const char * socache_rd_create(ap_socache_instance_t **context, const char *arg, apr_pool_t *tmp, apr_pool_t *p)

Definition at line 387 of file mod_socache_redis.c.

◆ socache_redis_cmds

const command_rec socache_redis_cmds[]
static
Initial value:
=
{
{ "RedisConnPoolTTL" , socache_rd_set_ttl , NULL , 128 , TAKE1, "TTL used for the connection pool with the Redis server(s)" },
{ "RedisTimeout" , socache_rd_set_rwto , NULL , 128 , TAKE1, "R/W timeout used for the connection with the Redis server(s)" },
{NULL}
}
@ TAKE1
Definition http_config.h:51
return NULL
Definition mod_so.c:359
static const char * socache_rd_set_rwto(cmd_parms *cmd, void *dummy, const char *arg)
static const char * socache_rd_set_ttl(cmd_parms *cmd, void *dummy, const char *arg)

Definition at line 468 of file mod_socache_redis.c.