OpenVPN 3 Core Library
Loading...
Searching...
No Matches
logsetup.hpp
Go to the documentation of this file.
1
// OpenVPN -- An application to securely tunnel IP networks
2
// over a single port, with support for SSL/TLS-based
3
// session authentication and key exchange,
4
// packet encryption, packet authentication, and
5
// packet compression.
6
//
7
// Copyright (C) 2012- OpenVPN Inc.
8
//
9
// SPDX-License-Identifier: MPL-2.0 OR AGPL-3.0-only WITH openvpn3-openssl-exception
10
//
11
12
#pragma once
13
14
#include <vector>
15
16
#include <
openvpn/common/rc.hpp
>
17
18
namespace
openvpn
{
19
20
class
LogSetup
:
public
RC
<thread_safe_refcount>
21
{
22
public
:
23
typedef
RCPtr<LogSetup>
Ptr
;
24
25
virtual
void
reopen
() = 0;
26
};
27
28
class
MultiLogSetup
:
public
std::vector<LogSetup::Ptr>,
29
public
LogSetup
30
{
31
public
:
32
typedef
RCPtr<MultiLogSetup>
Ptr
;
33
34
virtual
void
reopen
()
override
35
{
36
for
(
const
auto
&e : *
this
)
37
e->reopen();
38
}
39
};
40
41
}
// namespace openvpn
openvpn::LogSetup
Definition
logsetup.hpp:21
openvpn::LogSetup::reopen
virtual void reopen()=0
openvpn::LogSetup::Ptr
RCPtr< LogSetup > Ptr
Definition
logsetup.hpp:23
openvpn::MultiLogSetup
Definition
logsetup.hpp:30
openvpn::MultiLogSetup::reopen
virtual void reopen() override
Definition
logsetup.hpp:34
openvpn::MultiLogSetup::Ptr
RCPtr< MultiLogSetup > Ptr
Definition
logsetup.hpp:32
openvpn::RCPtr
The smart pointer class.
Definition
rc.hpp:119
openvpn::RC
Reference count base class for objects tracked by RCPtr. Disallows copying and assignment.
Definition
rc.hpp:912
openvpn
Definition
ovpncli.cpp:97
rc.hpp
openvpn
common
logsetup.hpp
Generated by
1.9.8