• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

PowerDNS / pdns / 18834649492

27 Oct 2025 08:32AM UTC coverage: 73.012% (+4.2%) from 68.781%
18834649492

Pull #16368

github

web-flow
Merge a290d76a2 into 82ea647b4
Pull Request #16368: ci(dnsdist): Build and test on arm64/aarch64

38267 of 63120 branches covered (60.63%)

Branch coverage included in aggregate %.

127456 of 163860 relevant lines covered (77.78%)

5005850.05 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

50.0
/pdns/dnsdistdist/dnsdist-ipcrypt2.hh
1
/*
2
 * This file is part of PowerDNS or dnsdist.
3
 * Copyright -- PowerDNS.COM B.V. and its contributors
4
 *
5
 * This program is free software; you can redistribute it and/or modify
6
 * it under the terms of version 2 of the GNU General Public License as
7
 * published by the Free Software Foundation.
8
 *
9
 * In addition, for the avoidance of any doubt, permission is granted to
10
 * link this program with OpenSSL and to (re)distribute the binaries
11
 * produced as the result of such linking.
12
 *
13
 * This program is distributed in the hope that it will be useful,
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
 * GNU General Public License for more details.
17
 *
18
 * You should have received a copy of the GNU General Public License
19
 * along with this program; if not, write to the Free Software
20
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
21
 */
22

23
#pragma once
24

25
#include <memory>
26
#include <string>
27

28
#include "iputils.hh"
29
#ifdef HAVE_IPCRYPT2
30
#include "ipcrypt2.h"
31
#endif
32

33
namespace pdns::ipcrypt2
34
{
35

36
enum IPCryptMethod : uint8_t
37
{
38
  deterministic,
39
  pfx,
40
  nd,
41
  ndx
42
};
43

44
class IPCrypt2
45
{
46
public:
47
  IPCrypt2(const IPCryptMethod& method, const std::string& key);
48

49
  IPCrypt2(IPCrypt2&& rhs) = default;
4✔
50
  IPCrypt2& operator=(IPCrypt2&& rhs) = default;
×
51

52
  IPCrypt2(const IPCrypt2& orig) = delete;
53
  IPCrypt2& operator=(const IPCrypt2& orig) = delete;
54

55
  ~IPCrypt2();
56

57
  [[nodiscard]] ComboAddress encrypt(const ComboAddress& address) const;
58

59
private:
60
#ifdef HAVE_IPCRYPT2
61
  std::unique_ptr<struct IPCryptPFX> d_ipcryptCtxPfx;
62
#endif
63
  IPCryptMethod d_method;
64
};
65
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc