Apache HTTPD
Classes | Macros | Functions | Variables
dbm.c File Reference
#include "apr_strings.h"
#include "apr_file_io.h"
#include "apr_dbm.h"
#include "apr_want.h"
#include "apr_version.h"
#include "apu_version.h"
#include "mod_dav.h"
#include "repos.h"
#include "http_log.h"
#include "http_main.h"

Go to the source code of this file.

Classes

struct  dav_db
 
struct  dav_propdb_metadata
 
struct  dav_deadprop_rollback
 
struct  dav_namespace_map
 

Macros

#define APR_WANT_BYTEFUNC
 
#define DAV_GDBM_NS_KEY   "METADATA"
 
#define DAV_GDBM_NS_KEY_LEN   8
 
#define DAV_DBVSN_MAJOR   4
 
#define DAV_DBVSN_MINOR   0
 

Functions

void dav_dbm_get_statefiles (apr_pool_t *p, const char *fname, const char **state1, const char **state2)
 
static dav_errordav_fs_dbm_error (dav_db *db, apr_pool_t *p, apr_status_t status)
 
void dav_fs_ensure_state_dir (apr_pool_t *p, const char *dirname)
 
dav_errordav_dbm_open_direct (apr_pool_t *p, const char *pathname, int ro, dav_db **pdb)
 
static dav_errordav_dbm_open (apr_pool_t *p, const dav_resource *resource, int ro, dav_db **pdb)
 
void dav_dbm_close (dav_db *db)
 
dav_errordav_dbm_fetch (dav_db *db, apr_datum_t key, apr_datum_t *pvalue)
 
dav_errordav_dbm_store (dav_db *db, apr_datum_t key, apr_datum_t value)
 
dav_errordav_dbm_delete (dav_db *db, apr_datum_t key)
 
int dav_dbm_exists (dav_db *db, apr_datum_t key)
 
static dav_errordav_dbm_firstkey (dav_db *db, apr_datum_t *pkey)
 
static dav_errordav_dbm_nextkey (dav_db *db, apr_datum_t *pkey)
 
void dav_dbm_freedatum (dav_db *db, apr_datum_t data)
 
static apr_datum_t dav_build_key (dav_db *db, const dav_prop_name *name)
 
static void dav_append_prop (apr_pool_t *pool, const char *name, const char *value, apr_text_header *phdr)
 
static dav_errordav_propdb_open (apr_pool_t *pool, const dav_resource *resource, int ro, dav_db **pdb)
 
static void dav_propdb_close (dav_db *db)
 
static dav_errordav_propdb_define_namespaces (dav_db *db, dav_xmlns_info *xi)
 
static dav_errordav_propdb_output_value (dav_db *db, const dav_prop_name *name, dav_xmlns_info *xi, apr_text_header *phdr, int *found)
 
static dav_errordav_propdb_map_namespaces (dav_db *db, const apr_array_header_t *namespaces, dav_namespace_map **mapping)
 
static dav_errordav_propdb_store (dav_db *db, const dav_prop_name *name, const apr_xml_elem *elem, dav_namespace_map *mapping)
 
static dav_errordav_propdb_remove (dav_db *db, const dav_prop_name *name)
 
static int dav_propdb_exists (dav_db *db, const dav_prop_name *name)
 
static const chardav_get_ns_table_uri (dav_db *db, int ns_id)
 
static void dav_set_name (dav_db *db, dav_prop_name *pname)
 
static dav_errordav_propdb_next_name (dav_db *db, dav_prop_name *pname)
 
static dav_errordav_propdb_first_name (dav_db *db, dav_prop_name *pname)
 
static dav_errordav_propdb_get_rollback (dav_db *db, const dav_prop_name *name, dav_deadprop_rollback **prollback)
 
static dav_errordav_propdb_apply_rollback (dav_db *db, dav_deadprop_rollback *rollback)
 

Variables

static int *const aplog_module_index = &( dav_fs_module.module_index)
 
const dav_hooks_db dav_hooks_db_dbm
 

Macro Definition Documentation

◆ APR_WANT_BYTEFUNC

#define APR_WANT_BYTEFUNC

Definition at line 37 of file dbm.c.

◆ DAV_DBVSN_MAJOR

#define DAV_DBVSN_MAJOR   4

Definition at line 281 of file dbm.c.

◆ DAV_DBVSN_MINOR

#define DAV_DBVSN_MINOR   0

Definition at line 306 of file dbm.c.

◆ DAV_GDBM_NS_KEY

#define DAV_GDBM_NS_KEY   "METADATA"

Definition at line 276 of file dbm.c.

◆ DAV_GDBM_NS_KEY_LEN

#define DAV_GDBM_NS_KEY_LEN   8

Definition at line 277 of file dbm.c.

Function Documentation

◆ dav_append_prop()

static void dav_append_prop ( apr_pool_t pool,
const char name,
const char value,
apr_text_header phdr 
)
static

Definition at line 369 of file dbm.c.

◆ dav_build_key()

static apr_datum_t dav_build_key ( dav_db db,
const dav_prop_name name 
)
static

Definition at line 328 of file dbm.c.

◆ dav_dbm_firstkey()

static dav_error * dav_dbm_firstkey ( dav_db db,
apr_datum_t pkey 
)
static

Definition at line 251 of file dbm.c.

◆ dav_dbm_nextkey()

static dav_error * dav_dbm_nextkey ( dav_db db,
apr_datum_t pkey 
)
static

Definition at line 258 of file dbm.c.

◆ dav_dbm_open()

static dav_error * dav_dbm_open ( apr_pool_t p,
const dav_resource resource,
int  ro,
dav_db **  pdb 
)
static

Definition at line 183 of file dbm.c.

◆ dav_fs_dbm_error()

static dav_error * dav_fs_dbm_error ( dav_db db,
apr_pool_t p,
apr_status_t  status 
)
static

Definition at line 87 of file dbm.c.

◆ dav_get_ns_table_uri()

static const char * dav_get_ns_table_uri ( dav_db db,
int  ns_id 
)
static

Definition at line 675 of file dbm.c.

◆ dav_propdb_apply_rollback()

static dav_error * dav_propdb_apply_rollback ( dav_db db,
dav_deadprop_rollback rollback 
)
static

Definition at line 768 of file dbm.c.

◆ dav_propdb_close()

static void dav_propdb_close ( dav_db db)
static

Definition at line 510 of file dbm.c.

◆ dav_propdb_define_namespaces()

static dav_error * dav_propdb_define_namespaces ( dav_db db,
dav_xmlns_info xi 
)
static

Definition at line 541 of file dbm.c.

◆ dav_propdb_exists()

static int dav_propdb_exists ( dav_db db,
const dav_prop_name name 
)
static

Definition at line 669 of file dbm.c.

◆ dav_propdb_first_name()

static dav_error * dav_propdb_first_name ( dav_db db,
dav_prop_name pname 
)
static

Definition at line 729 of file dbm.c.

◆ dav_propdb_get_rollback()

static dav_error * dav_propdb_get_rollback ( dav_db db,
const dav_prop_name name,
dav_deadprop_rollback **  prollback 
)
static

Definition at line 744 of file dbm.c.

◆ dav_propdb_map_namespaces()

static dav_error * dav_propdb_map_namespaces ( dav_db db,
const apr_array_header_t namespaces,
dav_namespace_map **  mapping 
)
static

Definition at line 591 of file dbm.c.

◆ dav_propdb_next_name()

static dav_error * dav_propdb_next_name ( dav_db db,
dav_prop_name pname 
)
static

Definition at line 709 of file dbm.c.

◆ dav_propdb_open()

static dav_error * dav_propdb_open ( apr_pool_t pool,
const dav_resource resource,
int  ro,
dav_db **  pdb 
)
static

Definition at line 415 of file dbm.c.

◆ dav_propdb_output_value()

static dav_error * dav_propdb_output_value ( dav_db db,
const dav_prop_name name,
dav_xmlns_info xi,
apr_text_header phdr,
int found 
)
static

Definition at line 566 of file dbm.c.

◆ dav_propdb_remove()

static dav_error * dav_propdb_remove ( dav_db db,
const dav_prop_name name 
)
static

Definition at line 663 of file dbm.c.

◆ dav_propdb_store()

static dav_error * dav_propdb_store ( dav_db db,
const dav_prop_name name,
const apr_xml_elem elem,
dav_namespace_map mapping 
)
static

Definition at line 639 of file dbm.c.

◆ dav_set_name()

static void dav_set_name ( dav_db db,
dav_prop_name pname 
)
static

Definition at line 685 of file dbm.c.

Variable Documentation

◆ aplog_module_index

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

Definition at line 50 of file dbm.c.