FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
libhttpserver/src/httpserver/detail/path_normalize.hpp at master · etr/libhttpserver · GitHub
etr
/
libhttpserver
Public
Uh oh!
There was an error while loading.
Please reload this page
.
Notifications
You must be signed in to change notification settings
Fork
190
Star
950
Code
Issues
7
Pull requests
2
Actions
Projects
Wiki
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Actions
Projects
Wiki
Security and quality
Insights
Expand file tree
Breadcrumbs
libhttpserver
/
src
/
httpserver
/
detail
/
path_normalize.hpp
Copy path
More file actions
More file actions
Latest commit
History
History
History
55 lines (45 loc) · 2.2 KB
Breadcrumbs
libhttpserver
/
src
/
httpserver
/
detail
/
path_normalize.hpp
Copy path
File metadata and controls
55 lines (45 loc) · 2.2 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
/*
This file is part of libhttpserver
Copyright (C) 2011-2026 Sebastiano Merlino
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
USA
*/
//
Internal detail header. Strict gate: reachable only from libhttpserver
//
translation units.
#
if
!defined(HTTPSERVER_COMPILATION)
#
error
"path_normalize.hpp is internal; only reachable when compiling libhttpserver."
#
endif
#
ifndef
SRC_HTTPSERVER_DETAIL_PATH_NORMALIZE_HPP_
#
define
SRC_HTTPSERVER_DETAIL_PATH_NORMALIZE_HPP_
#
include
<
string
>
#
include
<
vector
>
namespace
httpserver
{
namespace
detail
{
//
Pre-normalize an auth_skip_paths list so the per-request comparison
//
in webserver_impl::should_skip_auth runs against already-canonical
//
entries. Each entry is fed through normalize_path — the helper that
//
normalizes the *request* path inside should_skip_auth. Note that
//
normalize_path is declared in no header: it is a file-local
//
(unnamed-namespace) function in src/detail/webserver_request.cpp.
//
Entries ending in "/*" keep their trailing "/*" wildcard suffix;
//
the prefix before the wildcard is normalized.
//
//
Pure function: no shared state, callable from the webserver
//
constructor body. The definition lives in
//
src/detail/webserver_request.cpp alongside normalize_path so the
//
helper and its callers share a single canonicalisation rule.
std::vector<std::string>
normalize_auth_skip_paths
(
const
std::vector<std::string>& raw);
}
//
namespace detail
}
//
namespace httpserver
#
endif
//
SRC_HTTPSERVER_DETAIL_PATH_NORMALIZE_HPP_
Back
|
FazBrowse Home
|
New Git URL