summaryrefslogtreecommitdiffstats
path: root/modules/dav/fs/repos.h
diff options
context:
space:
mode:
authorJoe Orton <jorton@apache.org>2023-10-03 14:58:16 +0200
committerJoe Orton <jorton@apache.org>2023-10-03 14:58:16 +0200
commitafcdbeebbff4b0c50ea26cdd16e178c0d1f24152 (patch)
tree8c136394e9bccc869bfdf74fac8cf9c5af4afb96 /modules/dav/fs/repos.h
parentDOXYGEN has nothing to do here, just remove this strange "#if defined(DOXYGEN)" (diff)
downloadapache2-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.h9
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);