2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
42#include "net/config/ConfigSection.hpp"
43#include "net/config/ConfigTls.h"
45#ifndef DOXYGEN_SHOULD_SKIP_THIS
51 template <
typename ConcretConfigTls>
56 "Certificate chain file",
58 CLI::ExistingFile.description(
"PEM-FILE")
);
62 "Certificate key file",
64 CLI::ExistingFile.description(
"PEM-FILE")
);
67 "--cert-key-password",
68 "Password for the certificate key file",
70 CLI::TypeValidator<std::string>()
);
74 "CA-certificate file",
76 CLI::ExistingFile.description(
"PEM-FILE")
);
80 "CA-certificate directory",
82 CLI::ExistingDirectory.description(
"PEM-CONTAINER-DIR")
);
85 "--ca-cert-use-default-dir{true}",
86 "Use default CA-certificate directory",
89 CLI::IsMember({
"true",
"false"})
);
92 "--ca-cert-accept-unknown{true}",
93 "Accept unknown certificates (unsecure)",
96 CLI::IsMember({
"true",
"false"})
);
100 "Cipher list (OpenSSL syntax)",
102 CLI::TypeValidator<std::string>(
"CIPHER")
);
106 "OR combined SSL/TLS options (OpenSSL values)",
109 CLI::TypeValidator<ssl_option_t>()
);
113 "SSL/TLS initialization timeout in seconds",
116 CLI::PositiveNumber
);
119 "--shutdown-timeout",
120 "SSL/TLS shutdown timeout in seconds",
123 CLI::PositiveNumber
);
~ConfigTlsClient() override
ConfigTlsClient & setSni(const std::string &sni)
std::string getSni() const
ConfigTlsClient(ConfigInstance *instance)
CLI::Option * caCertUseDefaultDirOpt
static float tlsInitTimeout
CLI::Option * shutdownTimeoutOpt
CLI::Option * caCertDirOpt
CLI::Option * caCertAcceptUnknownOpt
static float tlsShutdownTimeout
CLI::Option * initTimeoutOpt
CLI::Option * sslOptionsOpt
CLI::Option * certKeyPasswordOpt
ConfigTls(ConfigInstance *instance, ConcretConfigTls section)
CLI::Option * cipherListOpt
CLI::Option * addFlag(const std::string &name, const std::string &description, const std::string &typeName, ValueTypeT defaultValue, const CLI::Validator &validator) const
CLI::Option * addOption(const std::string &name, const std::string &description, const std::string &typeName, ValueTypeT defaultValue, const CLI::Validator &validator) const
CLI::Option * setDefaultValue(CLI::Option *option, const ValueTypeT &value, bool clear=true) const
CLI::Option * addOption(const std::string &name, const std::string &description, const std::string &typeName, const CLI::Validator &validator) const