xrpld
Loading...
Searching...
No Matches
PeerfinderConfig.cpp
1#include <xrpld/core/Config.h>
2#include <xrpld/peerfinder/PeerfinderManager.h>
3
4#include <xrpl/peerfinder/Config.h>
5
6#include <cstdint>
7
8namespace xrpl::peer_finder {
9
12 xrpl::Config const& cfg,
13 std::uint16_t port,
14 bool validationPublicKey,
15 int ipLimit,
16 bool verifyEndpoints)
17{
18 PeerLimitConfig limits;
19 if ((cfg.peersOutMax == 0u) && (cfg.peersInMax == 0u))
20 {
21 limits.maxPeers = cfg.peersMax;
22 }
23 else
24 {
25 limits.inPeers = cfg.peersInMax;
26 limits.outPeers = cfg.peersOutMax;
27 }
28
29 return Config::makeConfig(
30 cfg.peerPrivate,
31 cfg.standalone(),
32 limits,
33 port,
34 validationPublicKey,
35 ipLimit,
36 verifyEndpoints);
37}
38
39} // namespace xrpl::peer_finder
bool standalone() const
Config makeConfig(xrpl::Config const &cfg, std::uint16_t port, bool validationPublicKey, int ipLimit, bool verifyEndpoints)
PeerFinder configuration settings.
static Config makeConfig(bool peerPrivate, bool standalone, PeerLimitConfig const &limits, std::uint16_t port, bool validationPublicKey, int ipLimit, bool verifyEndpoints)
Make peer_finder::Config from peer limit and server mode parameters.