add UNCList directive on Windows

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1918549 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Eric Covener
2024-06-24 17:19:44 +00:00
parent ca3f1703e2
commit 12542a8032
4 changed files with 156 additions and 0 deletions

View File

@ -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 */

View File

@ -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