userver
C++ Async Framework
Loading...
Searching...
No Matches
directives_parser.hpp
Go to the documentation of this file.
1
#
pragma
once
2
3
/// @file userver/server/handlers/auth/digest/directives_parser.hpp
4
/// @brief @copybrief server::handlers::auth::digest::Parser
5
6
#
include
<
array
>
7
#
include
<
string
>
8
#
include
<
string_view
>
9
10
#
include
"context.hpp"
11
12
USERVER_NAMESPACE_BEGIN
13
14
namespace
server::handlers::
auth
::digest {
15
16
/// @brief Class for parsing Authorization header directives from client
17
/// request.
18
class
Parser
final
{
19
public
:
20
/// Function to call to parse Authorization header directives.
21
ContextFromClient
ParseAuthInfo
(std::string_view auth_header_value);
22
23
private
:
24
void
PushToClientContext(std::string&& directive, std::string&& value,
25
ContextFromClient
& client_context);
26
void
CheckMandatoryDirectivesPresent()
const
;
27
void
CheckDuplicateDirectivesExist()
const
;
28
29
std::array<std::size_t,
kMaxClientDirectivesNumber
> directives_counter_{};
30
};
31
32
}
// namespace server::handlers::auth::digest
33
34
USERVER_NAMESPACE_END
userver
server
handlers
auth
digest
directives_parser.hpp
Generated on Wed May 15 2024 22:20:39 for userver by
Doxygen
1.10.0