mod_dav: add dav_get_base_path() API

Resolves: RHEL-105255
This commit is contained in:
Joe Orton 2025-07-24 10:57:53 +01:00
parent 897a585da6
commit 891311ad03
3 changed files with 62 additions and 4 deletions

View File

@ -0,0 +1,54 @@
# ./pullrev.sh 1926064
http://svn.apache.org/viewvc?view=revision&revision=1926064
--- httpd-2.4.63/include/ap_mmn.h
+++ httpd-2.4.63/include/ap_mmn.h
@@ -608,6 +608,7 @@
* 20120211.136 (2.4.63-dev) Add wait_io field to struct process_score
* 20120211.137 (2.4.63-dev) Add AP_MPMQ_CAN_WAITIO
* 20120211.138 (2.4.63-dev) Add is_host_matchable to proxy_worker_shared
+ * 20120211.139 (2.4.63-dev) Add dav_get_base_path() to mod_dav
*/
#define MODULE_MAGIC_COOKIE 0x41503234UL /* "AP24" */
@@ -615,7 +616,7 @@
#ifndef MODULE_MAGIC_NUMBER_MAJOR
#define MODULE_MAGIC_NUMBER_MAJOR 20120211
#endif
-#define MODULE_MAGIC_NUMBER_MINOR 138 /* 0...n */
+#define MODULE_MAGIC_NUMBER_MINOR 139 /* 0...n */
/**
* Determine if the server's current MODULE_MAGIC_NUMBER is at least a
only in patch2:
--- httpd-2.4.63/modules/dav/main/mod_dav.c
+++ httpd-2.4.63/modules/dav/main/mod_dav.c
@@ -250,6 +250,13 @@
return dav_get_provider(r)->search;
}
+DAV_DECLARE(const char *) dav_get_base_path(request_rec *r)
+{
+ dav_dir_conf *conf = ap_get_module_config(r->per_dir_config, &dav_module);
+
+ return conf && conf->base ? conf->base : NULL;
+}
+
/*
* Command handler for the DAV directive, which is TAKE1.
*/
only in patch2:
--- httpd-2.4.63/modules/dav/main/mod_dav.h
+++ httpd-2.4.63/modules/dav/main/mod_dav.h
@@ -430,6 +430,11 @@
DAV_DECLARE(dav_error *) dav_get_resource(request_rec *r, int label_allowed,
int use_checked_in, dav_resource **res_p);
+/*
+** If DavBasePath is configured for the request location, return the
+** configured path, otherwise NULL.
+*/
+DAV_DECLARE(const char *) dav_get_base_path(request_rec *r);
/* --------------------------------------------------------------------
**

View File

@ -25,7 +25,7 @@
Summary: Apache HTTP Server
Name: httpd
Version: 2.4.63
Release: 1%{?dist}
Release: 2%{?dist}
URL: https://httpd.apache.org/
Source0: https://www.apache.org/dist/httpd/httpd-%{version}.tar.bz2
Source1: https://www.apache.org/dist/httpd/httpd-%{version}.tar.bz2.asc
@ -99,6 +99,7 @@ Patch32: httpd-2.4.54-selinux.patch
Patch33: httpd-2.4.62-freebind.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1947496
Patch34: httpd-2.4.62-proxy-ws-idle-timeout.patch
Patch35: httpd-2.4.63-r1926064.patch
# Bug fixes
# https://bugzilla.redhat.com/show_bug.cgi?id=1397243
@ -828,6 +829,10 @@ exit $rv
%{_rpmconfigdir}/macros.d/macros.httpd
%changelog
* Thu Jul 24 2025 Joe Orton <jorton@redhat.com> - 2.4.63-2
- mod_dav: add dav_get_base_path() API
Resolves: RHEL-105255
* Mon Jan 27 2025 Luboš Uhliarik <luhliari@redhat.com> - 2.4.63-1
- new version 2.4.63
- Resolves: RHEL-76358 - httpd rebase to 2.4.63

View File

@ -6,8 +6,8 @@ if [ $# -lt 1 ]; then
fi
repo="https://svn.apache.org/repos/asf/httpd/httpd/trunk"
#repo="https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x"
ver=2.4.59
repo="https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x"
ver=2.4.63
prefix="httpd-${ver}"
suffix="${SUFFIX:-r$1${2:++}}"
fn="${prefix}-${suffix}.patch"
@ -64,4 +64,3 @@ echo "+ git add ${fn}"
git add "${fn}"
echo "+ spec template:"
echo "PatchN: ${fn}"
echo "%patch -PN -p1 -b .${suffix}"