address feedback from jason

* split up ipv6 netmask
* revert iwp ack interval change
* c++17-isms in ip range map
* lambda-ize nodedb
* mutable lambdas in transit hops
* perfect forwarding of args in abstract router
* mutable lambdas in lokid rpc client
* notes in readme about nproc
pull/1306/head
Jeff Becker 4 years ago
parent 26f62bc260
commit d7ff6c579c
No known key found for this signature in database
GPG Key ID: F357B3B42F6F9B05

@ -26,7 +26,7 @@ namespace llarp
/// How long to keep a replay window for
static constexpr auto ReplayWindow = (ReceivalTimeout * 3) / 2;
/// How often to acks RX messages
static constexpr auto ACKResendInterval = DeliveryTimeout / 4;
static constexpr auto ACKResendInterval = DeliveryTimeout / 2;
/// How often to retransmit TX fragments
static constexpr auto TXFlushInterval = (DeliveryTimeout / 5) * 4;
/// How often we send a keepalive

@ -12,7 +12,7 @@
#include <algorithm>
#include <map>
constexpr uint32_t ipv6_flowlabel_mask = 0b00000000000011111111111111111111;
constexpr uint32_t ipv6_flowlabel_mask = 0b0000'0000'0000'1111'1111'1111'1111'1111;
void
ipv6_header::FlowLabel(llarp::nuint32_t label)

@ -53,8 +53,8 @@ namespace llarp
void
ForEachEntry(Visit_t visit) const
{
for (const auto& entry : m_Entries)
visit(entry.first, entry.second);
for (const auto& [range, value] : m_Entries)
visit(range, value);
}
/// convert all values into type T using a transformer

@ -505,17 +505,17 @@ namespace llarp
};
// generate possible ranges to in order of attempts
std::list<IPRange> possibleRanges;
for (byte_t oct = 0; oct < 255; ++oct)
for (byte_t oct = 16; oct < 32; ++oct)
{
possibleRanges.emplace_back(IPRange::FromIPv4(10, oct, 0, 1, 16));
possibleRanges.emplace_back(IPRange::FromIPv4(172, oct, 0, 1, 16));
}
for (byte_t oct = 0; oct < 255; ++oct)
{
possibleRanges.emplace_back(IPRange::FromIPv4(192, 168, oct, 1, 24));
possibleRanges.emplace_back(IPRange::FromIPv4(10, oct, 0, 1, 16));
}
for (byte_t oct = 0; oct < 255; ++oct)
{
possibleRanges.emplace_back(IPRange::FromIPv4(172, 16, oct, 1, 24));
possibleRanges.emplace_back(IPRange::FromIPv4(192, 168, oct, 1, 24));
}
// for each possible range pick the first one we don't own
for (const auto& range : possibleRanges)

@ -57,13 +57,6 @@ llarp_nodedb::Get(const llarp::RouterID& pk, llarp::RouterContact& result)
return true;
}
void
KillRCJobs(const std::set<std::string>& files)
{
for (const auto& file : files)
fs::remove(file);
}
void
llarp_nodedb::RemoveIf(std::function<bool(const llarp::RouterContact& rc)> filter)
{
@ -82,7 +75,10 @@ llarp_nodedb::RemoveIf(std::function<bool(const llarp::RouterContact& rc)> filte
++itr;
}
}
disk(std::bind(&KillRCJobs, files));
disk([files = std::move(files)]() {
for (const auto& file : files)
fs::remove(file);
});
}
bool
@ -272,7 +268,7 @@ llarp_nodedb::ShouldSaveToDisk(llarp_time_t now) const
void
llarp_nodedb::AsyncFlushToDisk()
{
disk(std::bind(&llarp_nodedb::SaveAll, this));
disk([this]() { SaveAll(); });
m_NextSaveToDisk = llarp::time_now_ms() + m_SaveInterval;
}

@ -248,8 +248,8 @@ namespace llarp
{
if (m_UpstreamQueue && not m_UpstreamQueue->empty())
{
r->QueueWork([self = shared_from_this(), data = std::move(m_UpstreamQueue), r]() {
self->UpstreamWork(data, r);
r->QueueWork([self = shared_from_this(), data = std::move(m_UpstreamQueue), r]() mutable {
self->UpstreamWork(std::move(data), r);
});
}
m_UpstreamQueue = nullptr;
@ -260,8 +260,8 @@ namespace llarp
{
if (m_DownstreamQueue && not m_DownstreamQueue->empty())
{
r->QueueWork([self = shared_from_this(), data = std::move(m_DownstreamQueue), r]() {
self->DownstreamWork(data, r);
r->QueueWork([self = shared_from_this(), data = std::move(m_DownstreamQueue), r]() mutable {
self->DownstreamWork(std::move(data), r);
});
}
m_DownstreamQueue = nullptr;

@ -293,7 +293,7 @@ namespace llarp
NotifyRouterEvent([[maybe_unused]] Params&&... args) const
{
#ifdef LOKINET_HIVE
hive->NotifyEvent(std::make_unique<EventType>(args...));
hive->NotifyEvent(std::make_unique<EventType>(std::forward<Params>(args)...));
#endif
}
};

@ -155,7 +155,9 @@ namespace llarp
return;
}
// inform router about the new list
LogicCall(m_Router->logic(), [r = m_Router, nodeList]() { r->SetRouterWhitelist(nodeList); });
LogicCall(m_Router->logic(), [r = m_Router, nodeList = std::move(nodeList)]() mutable {
r->SetRouterWhitelist(std::move(nodeList));
});
}
SecretKey

@ -77,7 +77,7 @@ build:
$ mkdir build
$ cd build
$ cmake ..
$ make
$ make -j$(nproc)
install:
@ -93,7 +93,7 @@ build:
$ mkdir build
$ cd build
$ cmake ..
$ make
$ make -j$(nproc)
install:

Loading…
Cancel
Save