Stephen Shelton
552dcce5fd
Use inheritance to handle Hive injection
4 years ago
Stephen Shelton
b0d8568452
Remove llarp C API usage from RouterHive
4 years ago
Stephen Shelton
84c83a2400
Add specialized subclass of Router for Hive
4 years ago
Stephen Shelton
e38a507551
<3 Windows (prefer fs::path::string() over native())
4 years ago
Stephen Shelton
93bafcf142
Set up sqlite3 deps 'if NOT TAGRET sqlite3'
4 years ago
Stephen Shelton
186a35c0e2
Appease clang (fixes for minor compilation errors)
4 years ago
Stephen Shelton
fd230dd93b
<3 apple
4 years ago
Stephen Shelton
6e1a23cdc7
Use pkg_check_modules instead of find_package for sqlite3
4 years ago
Stephen Shelton
0ecdda7a89
make format
4 years ago
Stephen Shelton
4aa6f8e2df
Use find_package() for sqlite3
4 years ago
Stephen Shelton
aeb0c2be3a
Remove ability to stop routers from gossiping for now
4 years ago
Stephen Shelton
bdac43e19f
Peer stats test which artificially stops a router from gossiping its RC
4 years ago
Stephen Shelton
63f41d6a98
Introduce mutex for hive's routers
4 years ago
Stephen Shelton
3b6f84c68c
Peek at peer stats db in test_peer_stats
4 years ago
Stephen Shelton
c4cbbd6731
RouterHive: store router contexts by routerId instead of index
4 years ago
Stephen Shelton
d1b629f494
RouterHive ConnectionAttemptEvent
4 years ago
Stephen Shelton
d69d538f1a
Add missing files
4 years ago
Stephen Shelton
b2a72dd46a
Initial test_peer_stats hive test
4 years ago
Stephen Shelton
2453fff10b
Piggyback on link callbacks to add peer stats
4 years ago
Stephen Shelton
cb8e5354f5
Add some breadcrumbs about how ILinkLayer's callbacks are used
4 years ago
Stephen Shelton
c9faddc8e4
Use fs::path since mac doesn't support std::filesystem
4 years ago
Stephen Shelton
5a8f390b3b
Make mutex mutable, fix typo
4 years ago
Stephen Shelton
023e061146
Make [router]:enable-peer-stats only valid for client
4 years ago
Stephen Shelton
54017652d6
log--
4 years ago
Stephen Shelton
d897099e1d
Track traffic peerstats
4 years ago
Stephen Shelton
77b98459dd
Implement RouterID serialization in sqlite_orm
4 years ago
Stephen Shelton
a9ce319e76
Make llarp_time_t serializable in sqlite_orm
4 years ago
Stephen Shelton
aa1c8f257f
Sort out peerstats receive <-> expiry windows
4 years ago
Stephen Shelton
4b4284ccf4
PeerDb sqlite optimizations
4 years ago
Stephen Shelton
5e05defc76
Add API query for peer stats, other related fixes
4 years ago
Stephen Shelton
595288e046
Add PeerDb::handleGossipedRC
4 years ago
Stephen Shelton
7109ddc951
Add PeerDb::modifyPeerStats()
4 years ago
Stephen Shelton
4f4192e272
constexpr
4 years ago
Stephen Shelton
2a30e7dac2
Add PeerDb to Router
4 years ago
Stephen Shelton
cc6e9c882a
Use foo.snode as peerstats unique id, test file-backed db
4 years ago
Stephen Shelton
a30806b375
Some sqlite_orm related fixes
4 years ago
Stephen Shelton
8adb6295fc
Initialize sqlite_orm and start interacting with it
4 years ago
Stephen Shelton
73c9ddff52
Begin peer stats infrastructure
4 years ago
Jeff Becker
2c0c6aa819
log error instead of executing job
4 years ago
Jeff Becker
d7ff6c579c
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
4 years ago
Jeff Becker
d85c7bc628
remove wrapper and just use a lambda that throws on non empty value
4 years ago
Jeff Becker
a0dc2e795c
add a wrapper that always throws with a custom error message
...
use that wrapper for lokid.jsonrpc
4 years ago
Jeff Becker
a9109aa91b
* deprecate old unused lokid rpc options
...
* use lokimq::address in config and in lokid rpc
* bump lokimq submodule
4 years ago
Jeff Becker
80919a3b76
address feedback.
...
* use exceptions when fetching identity key instead of std::optional, will throw on fail
* fix up config options for endpoint auth and add better docs
* add llarp::serive::AuthType enum for controlling what kind of endpoint auth to use
4 years ago
Jason Rhinelander
a7c42ab2bd
Use lokimq's hex/base32z encoding/decoding
4 years ago
Jeff Becker
e85efcf7ce
move include so it's included on all platforms including windows
4 years ago
Jeff Becker
00aa78c80a
it's safe to call reply from another thread because all it does is fufill a promoise
4 years ago
Jeff Becker
0f21eeccb0
* rework exit codepath to allow multiple exits
...
* rework net code for ip ranges to be cleaner
* clean up endpoint auth code
* refactor config to validate network configs before setting up endpoints
* remove buildone from path/pathbuilder.cpp so we don't spam connection attempts
4 years ago
Jeff Becker
3cdca30a74
more auth shit
4 years ago
Jeff Becker
0d6e3bcd89
fix crashing tests
4 years ago