diff options
author | Joe Orton <jorton@apache.org> | 2023-10-03 14:58:16 +0200 |
---|---|---|
committer | Joe Orton <jorton@apache.org> | 2023-10-03 14:58:16 +0200 |
commit | afcdbeebbff4b0c50ea26cdd16e178c0d1f24152 (patch) | |
tree | 8c136394e9bccc869bfdf74fac8cf9c5af4afb96 /modules/dav/fs/repos.h | |
parent | DOXYGEN has nothing to do here, just remove this strange "#if defined(DOXYGEN)" (diff) | |
download | apache2-afcdbeebbff4b0c50ea26cdd16e178c0d1f24152.tar.xz apache2-afcdbeebbff4b0c50ea26cdd16e178c0d1f24152.zip |
mod_dav_fs: add DAVLockDBType directive.
* modules/dav/fs/dbm.c (dav_dbm_open_direct): Take a dbmtype argument
and use it to select the apr_dbm driver type.
(dav_dbm_open): Continue to use the "default" propdb type to open
the property databases.
* modules/dav/fs/lock.c: Store and pass through the lockdb_type
through.
* modules/dav/fs/mod_dav_fs.c (dav_get_lockdb_path): Return the dbm
type via an output argument.
(dav_fs_cmd_davlockdbtype): New config directive.
(dav_fs_merge_server_config): Merge the dbm type.
(dav_fs_post_config): Set the default lockdb type.
* modules/dav/fs/repos.h: Update prototypes as above; internal API
only so no compat concerns.
Github: closes #386
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1912718 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
-rw-r--r-- | modules/dav/fs/repos.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/modules/dav/fs/repos.h b/modules/dav/fs/repos.h index fa3b138ea3..849ba5f21f 100644 --- a/modules/dav/fs/repos.h +++ b/modules/dav/fs/repos.h @@ -66,8 +66,8 @@ dav_error * dav_fs_get_locknull_members(const dav_resource *resource, /* DBM functions used by the repository and locking providers */ extern const dav_hooks_db dav_hooks_db_dbm; -dav_error * dav_dbm_open_direct(apr_pool_t *p, const char *pathname, int ro, - dav_db **pdb); +dav_error * dav_dbm_open_direct(apr_pool_t *p, const char *pathname, + const char *dbmtype, int ro, dav_db **pdb); void dav_dbm_get_statefiles(apr_pool_t *p, const char *fname, const char **state1, const char **state2); dav_error * dav_dbm_delete(dav_db *db, apr_datum_t key); @@ -77,8 +77,9 @@ void dav_dbm_freedatum(dav_db *db, apr_datum_t data); int dav_dbm_exists(dav_db *db, apr_datum_t key); void dav_dbm_close(dav_db *db); -/* where is the lock database located? */ -const char *dav_get_lockdb_path(const request_rec *r); +/* Returns path to lock database and configured dbm type as + * *dbmtype. */ +const char *dav_get_lockdb_path(const request_rec *r, const char **dbmtype); dav_error *dav_fs_get_quota(const request_rec *r, const char *path, apr_off_t *quota_bytes); |