use llarp_rc_read, llarp_nodedb_put_rc(), llarp_nodedb_iterate_all(), iterate()

pull/1/head
Ryan Tharp 6 years ago
parent 5bb70c6ddb
commit 932e04c81f

@ -177,6 +177,17 @@ struct llarp_nodedb
bool
loadfile(const fs::path &fpath)
{
llarp_rc *rc = llarp_rc_read(fpath.c_str());
if (rc)
{
if(llarp_rc_verify_sig(crypto, rc))
{
llarp::PubKey pk(rc->pubkey);
entries[pk] = *rc;
return true;
}
}
/*
std::ifstream f(fpath, std::ios::binary);
if(!f.is_open())
return false;
@ -207,9 +218,22 @@ struct llarp_nodedb
}
}
llarp_rc_free(&rc);
*/
return false;
}
bool iterate() {
auto itr = entries.begin();
while(itr != entries.end())
{
llarp::PubKey pk = itr->first;
llarp_rc rc= itr->second;
itr++; // advance
}
return true;
}
/*
bool Save()
{
@ -348,6 +372,29 @@ llarp_nodedb_load_dir(struct llarp_nodedb *n, const char *dir)
return n->Load(dir);
}
bool
llarp_nodedb_put_rc(struct llarp_nodedb *n, struct llarp_rc *rc) {
return n->setRC(rc);
}
int
llarp_nodedb_iterate_all(struct llarp_nodedb *n, struct llarp_nodedb_iter i) {
i.index = 0;
auto itr = n->entries.begin();
while(itr != n->entries.end())
{
//llarp::PubKey pk = itr->first;
//llarp_rc rc= itr->second;
//llarp::Info("visit\n");
i.rc = &itr->second;
i.visit(&i);
i.index++;
itr++; // advance
}
return n->entries.size();
}
void
llarp_nodedb_async_verify(struct llarp_async_verify_rc *job)
{

Loading…
Cancel
Save