summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorEric Covener <covener@apache.org>2024-06-24 19:19:44 +0200
committerEric Covener <covener@apache.org>2024-06-24 19:19:44 +0200
commit12542a80324b69ad6a1a489e1b697398551a5fe0 (patch)
treec1f6874f8ef366f3a6e4908455479c80e2d7f689 /include
parentmod_http2: early exit if bb is null (diff)
downloadapache2-12542a80324b69ad6a1a489e1b697398551a5fe0.tar.xz
apache2-12542a80324b69ad6a1a489e1b697398551a5fe0.zip
add UNCList directive on Windows
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1918549 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'include')
-rw-r--r--include/http_core.h3
-rw-r--r--include/httpd.h25
2 files changed, 28 insertions, 0 deletions
diff --git a/include/http_core.h b/include/http_core.h
index 7c4f166e09..6a5744891f 100644
--- a/include/http_core.h
+++ b/include/http_core.h
@@ -771,6 +771,9 @@ typedef struct {
apr_int32_t flush_max_pipelined;
unsigned int strict_host_check;
unsigned int merge_slashes;
+#ifdef WIN32
+ apr_array_header_t *unc_list;
+#endif
} core_server_config;
/* for AddOutputFiltersByType in core.c */
diff --git a/include/httpd.h b/include/httpd.h
index 9782a8ad82..6b7e10223e 100644
--- a/include/httpd.h
+++ b/include/httpd.h
@@ -2847,6 +2847,31 @@ AP_DECLARE(const char *)ap_dir_fnmatch(ap_dir_match_t *w, const char *path,
*/
AP_DECLARE(int) ap_is_chunked(apr_pool_t *p, const char *line);
+
+/**
+ * apr_filepath_merge with an allow-list
+ * Merge additional file path onto the previously processed rootpath
+ * @param newpath the merged paths returned
+ * @param rootpath the root file path (NULL uses the current working path)
+ * @param addpath the path to add to the root path
+ * @param flags the desired APR_FILEPATH_ rules to apply when merging
+ * @param p the pool to allocate the new path string from
+ * @remark if the flag APR_FILEPATH_TRUENAME is given, and the addpath
+ * contains wildcard characters ('*', '?') on platforms that don't support
+ * such characters within filenames, the paths will be merged, but the
+ * result code will be APR_EPATHWILD, and all further segments will not
+ * reflect the true filenames including the wildcard and following segments.
+ */
+AP_DECLARE(apr_status_t) ap_filepath_merge(char **newpath,
+ const char *rootpath,
+ const char *addpath,
+ apr_int32_t flags,
+ apr_pool_t *p);
+
+#ifdef WIN32
+#define apr_filepath_merge ap_filepath_merge
+#endif
+
#ifdef __cplusplus
}
#endif