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/un/config/ConfigAddress.h"
44#include "net/config/ConfigAddressBase.hpp"
45#include "net/config/ConfigAddressLocal.hpp"
46#include "net/config/ConfigAddressRemote.hpp"
47#include "net/config/ConfigAddressReverse.hpp"
48#include "net/config/ConfigInstance.h"
49#include "net/config/ConfigSection.hpp"
50#include "utils/Uuid.h"
52#ifndef DOXYGEN_SHOULD_SKIP_THIS
54#include "core/system/unistd.h"
55#include "utils/PreserveErrno.h"
61 template <
template <
typename SocketAddress>
typename ConfigAddressType>
64 [[
maybe_unused]]
const std::string& addressOptionDescription)
66 , ConfigAddressType<net::un::SocketAddress>(
this) {
69 template <
template <
typename SocketAddress>
typename ConfigAddressType>
72 [[
maybe_unused]]
const std::string& addressOptionDescription)
74 , ConfigAddressType<net::un::SocketAddress>(
this) {
77 "Unix domain bind path",
80 !
CLI::ExistingDirectory);
83 template <
template <
typename SocketAddress>
typename ConfigAddressType>
85 SocketAddress* socketAddress =
new SocketAddress
(sunPathOpt->as<std::string>()
);
91 socketAddress =
nullptr;
99 template <
template <
typename SocketAddress>
typename ConfigAddressType>
106 template <
template <
typename SocketAddress>
typename ConfigAddressType>
116 template <
template <
typename SocketAddress>
typename ConfigAddressType>
121 template <
template <
typename SocketAddressT>
typename ConfigAddressTypeT>
123 this->setConfigurable(
sunPathOpt, configurable);
126 template <
template <
typename SocketAddress>
typename ConfigAddressType>
135template class net::config::ConfigAddress<net::un::SocketAddress>;
136template class net::config::ConfigAddressLocal<net::un::SocketAddress>;
137template class net::config::ConfigAddressRemote<net::un::SocketAddress>;
138template class net::config::ConfigAddressReverse<net::un::SocketAddress>;
139template class net::config::ConfigAddressBase<net::un::SocketAddress>;
const std::string & getInstanceName() const
SocketAddress(const std::string &sunPath)
std::string getSunPath() const
ConfigAddressReverse(net::config::ConfigInstance *instance, const std::string &addressOptionName, const std::string &addressOptionDescription)
void configurable(bool configurable=true) final
ConfigAddress & setSunPath(const std::string &sunPath)
SocketAddress * init() final
ConfigAddress & sunPathRequired(bool required=true)
ConfigAddress(net::config::ConfigInstance *instance, const std::string &addressOptionName, const std::string &addressOptionDescription)
ConfigAddress & setSocketAddress(const SocketAddress &socketAddress)
std::string getSunPath() const
static std::string getUuid()