From: Graham Leggett Date: Sun, 28 Jun 2020 12:40:56 +0000 (+0000) Subject: Add dav_get_provider(), dav_open_lockdb() and dav_close_lockdb() mod_dav.h. X-Git-Tag: 2.5.0-alpha2-ci-test-only~1327 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4a0c08e064e284dc215b56c7d7e50de832939ae4;p=thirdparty%2Fapache%2Fhttpd.git Add dav_get_provider(), dav_open_lockdb() and dav_close_lockdb() mod_dav.h. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1879305 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/CHANGES b/CHANGES index ae5c7e715fc..dc6cc978a0a 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,9 @@ -*- coding: utf-8 -*- Changes with Apache 2.5.1 + *) Add dav_get_provider(), dav_open_lockdb() and dav_close_lockdb() mod_dav.h. + [Graham Leggett] + *) "[mod_dav_fs etag handling] should really honor the FileETag setting". - It now does. - Add "Digest" to FileETag directive, allowing a strong ETag to be diff --git a/include/ap_mmn.h b/include/ap_mmn.h index fc32a1ea1de..77d6eb1ab79 100644 --- a/include/ap_mmn.h +++ b/include/ap_mmn.h @@ -641,6 +641,8 @@ * macros AP_REQUEST_GET_BNOTE, AP_REQUEST_SET_BNOTE, * AP_REQUEST_STRONG_ETAG, AP_REQUEST_IS_STRONG_ETAG. * Add bnotes to request_rec. + * 20200420.8 (2.5.1-dev) Add dav_get_provider(), dav_open_lockdb() and + * dav_close_lockdb() mod_dav.h. */ #define MODULE_MAGIC_COOKIE 0x41503235UL /* "AP25" */ @@ -648,7 +650,7 @@ #ifndef MODULE_MAGIC_NUMBER_MAJOR #define MODULE_MAGIC_NUMBER_MAJOR 20200420 #endif -#define MODULE_MAGIC_NUMBER_MINOR 7 /* 0...n */ +#define MODULE_MAGIC_NUMBER_MINOR 8 /* 0...n */ /** * Determine if the server's current MODULE_MAGIC_NUMBER is at least a diff --git a/modules/dav/main/mod_dav.c b/modules/dav/main/mod_dav.c index 721c57a16bd..aa753d99521 100644 --- a/modules/dav/main/mod_dav.c +++ b/modules/dav/main/mod_dav.c @@ -213,7 +213,7 @@ DAV_DECLARE(const char *) dav_get_provider_name(request_rec *r) return conf ? conf->provider_name : NULL; } -static const dav_provider *dav_get_provider(request_rec *r) +DAV_DECLARE(const dav_provider *) dav_get_provider(request_rec *r) { dav_dir_conf *conf; @@ -789,7 +789,9 @@ static dav_error *dav_get_resource(request_rec *r, int label_allowed, return NULL; } -static dav_error * dav_open_lockdb(request_rec *r, int ro, dav_lockdb **lockdb) +DAV_DECLARE(dav_error *) dav_open_lockdb(request_rec *r, + int ro, + dav_lockdb **lockdb) { const dav_hooks_locks *hooks = DAV_GET_HOOKS_LOCKS(r); @@ -802,6 +804,11 @@ static dav_error * dav_open_lockdb(request_rec *r, int ro, dav_lockdb **lockdb) return (*hooks->open_lockdb)(r, ro, 0, lockdb); } +DAV_DECLARE(void) dav_close_lockdb(dav_lockdb *lockdb) +{ + (lockdb->hooks->close_lockdb)(lockdb); +} + /** * @return 1 if valid content-range, * 0 if no content-range, diff --git a/modules/dav/main/mod_dav.h b/modules/dav/main/mod_dav.h index 813526dfeed..3ac653dce93 100644 --- a/modules/dav/main/mod_dav.h +++ b/modules/dav/main/mod_dav.h @@ -50,7 +50,7 @@ extern "C" { #define DAV_READ_BLOCKSIZE 2048 /* used for reading input blocks */ -#define DAV_RESPONSE_BODY_1 "\n\n\n" +#define DAV_RESPONSE_BODY_1 "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">\n<html>\n<head>\n<title>" #define DAV_RESPONSE_BODY_2 "\n\n

" #define DAV_RESPONSE_BODY_3 "

\n

" #define DAV_RESPONSE_BODY_4 "

\n" @@ -727,6 +727,7 @@ DAV_DECLARE(void) dav_register_provider(apr_pool_t *p, const char *name, const dav_provider *hooks); DAV_DECLARE(const dav_provider *) dav_lookup_provider(const char *name); DAV_DECLARE(const char *) dav_get_provider_name(request_rec *r); +DAV_DECLARE(const dav_provider *) dav_get_provider(request_rec *r); /* ### deprecated */ @@ -1320,6 +1321,10 @@ DAV_DECLARE(const char *)dav_lock_get_activelock(request_rec *r, dav_buffer *pbuf); /* LockDB-related public lock functions */ +DAV_DECLARE(dav_error *) dav_open_lockdb(request_rec *r, + int ro, + dav_lockdb **lockdb); +DAV_DECLARE(void) dav_close_lockdb(dav_lockdb *lockdb); DAV_DECLARE(dav_error *) dav_lock_parse_lockinfo(request_rec *r, const dav_resource *resrouce, dav_lockdb *lockdb,