lokinet/pybind/llarp/router_contact.cpp

35 lines
1.1 KiB
C++
Raw Normal View History

#include <llarp/router_contact.hpp>
2022-07-19 18:22:38 +00:00
#include <llarp/dht/key.hpp>
2022-07-19 18:22:38 +00:00
#include <llarp/util/time.hpp>
#include "common.hpp"
2020-01-17 13:22:08 +00:00
namespace llarp
{
void
RouterContact_Init(py::module& mod)
{
py::class_<RouterContact>(mod, "RouterContact")
2020-01-17 13:22:08 +00:00
.def(py::init<>())
2020-03-07 01:20:11 +00:00
.def_property_readonly(
"routerID",
[](const RouterContact* const rc) -> llarp::RouterID {
return llarp::RouterID(rc->pubkey);
})
.def_property_readonly(
"AsDHTKey",
[](const RouterContact* const rc) -> llarp::dht::Key_t {
return llarp::dht::Key_t{rc->pubkey.as_array()};
})
2020-01-17 13:22:08 +00:00
.def("ReadFile", &RouterContact::Read)
.def("WriteFile", &RouterContact::Write)
.def("ToString", &RouterContact::ToString)
.def("__str__", &RouterContact::ToString)
.def("__repr__", &RouterContact::ToString)
.def("Verify", [](const RouterContact* const rc) -> bool {
2020-01-17 13:22:08 +00:00
const llarp_time_t now = llarp::time_now_ms();
return rc->Verify(now);
2020-01-17 13:22:08 +00:00
});
}
} // namespace llarp