try addressing issue #233

pull/246/head
Jeff Becker 5 years ago
parent 1e0d82848f
commit 7bc0b5f82b
No known key found for this signature in database
GPG Key ID: F357B3B42F6F9B05

@ -74,6 +74,7 @@ llarp_ev_loop_run_single_process(struct llarp_ev_loop *ev,
ev->tick(EV_TICK_INTERVAL);
if(ev->running())
{
ev->_now = llarp::time_now_ms();
logic->tick_async(ev->_now);
llarp_threadpool_tick(tp);
}

@ -1609,21 +1609,28 @@ namespace llarp
{
self->bootstrapRCList.emplace_back();
auto &rc = self->bootstrapRCList.back();
if(rc.Read(val) && rc.Verify(&self->crypto, self->Now()))
if(!rc.Read(val))
{
llarp::LogInfo("Added bootstrap node ", RouterID(rc.pubkey));
llarp::LogWarn("failed to decode bootstrap RC, file='", val, "' rc=", rc);
self->bootstrapRCList.pop_back();
return;
}
else if(self->Now() - rc.last_updated > RouterContact::Lifetime)
if(rc.Verify(&self->crypto, self->Now()))
{
llarp::LogWarn("Bootstrap node ", RouterID(rc.pubkey),
" is too old and needs to be refreshed");
self->bootstrapRCList.pop_back();
llarp::LogInfo("Added bootstrap node ", RouterID(rc.pubkey));
}
else
{
llarp::LogError("malformed rc file: ", val);
if(rc.IsExpired(self->Now()))
{
llarp::LogWarn("Bootstrap node ", RouterID(rc.pubkey),
" is too old and needs to be refreshed");
}
else
{
llarp::LogError("malformed rc file='", val, "' rc=", rc);
}
self->bootstrapRCList.pop_back();
}
}
else if(StrEq(section, "router"))
{

@ -338,6 +338,8 @@ namespace llarp
}
f.seekg(0, std::ios::end);
auto l = f.tellg();
if(l > sizeof(tmp))
return false;
f.seekg(0, std::ios::beg);
f.read((char *)tmp, l);
auto buf = llarp::StackBuffer< decltype(tmp) >(tmp);

Loading…
Cancel
Save