Commit Graph

84 Commits (aeb0c2be3a3ee1bc4d10aaca78c8064ed52a4f18)

Author SHA1 Message Date
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 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
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 1779f33506
fix makefile fromat target
use lokimq::address instead of std::string or std::string_view
4 years ago
Jeff Becker ca9e015ca4
virtual destructor 4 years ago
Jeff Becker f4971a88fd
use lokimq workers instead of llarp:🧵:ThreadPool 4 years ago
Jeff Becker 5abf111159
endpoint auth whitelist 4 years ago
Jeff Becker a42d3d51c3
more 4 years ago
Jeff Becker 61c5808765
exit authentication (initial) 4 years ago
Jeff Becker 1175a583d2
initial working code 4 years ago
Stephen Shelton 13b0a4f2fc
WIP: LokidRpcClient 4 years ago
Jeff Becker 9bfff61d08
initial wack at lokimq 4 years ago
Stephen Shelton fd4b03f896
WIP: LokidRpcClient 4 years ago
Jeff Becker d5b4dbe052
more 4 years ago
Jeff Becker b1259e25c5
set sane defaults for config, implement lmq rpc server, update lokinetmon 4 years ago
Jeff Becker fb8b8e2e56
add stubs for lmq rpc server 4 years ago
Jeff Becker ad882d0d70
initial working code 4 years ago
Stephen Shelton 78256e3228
WIP: LokidRpcClient 4 years ago
Jeff Becker 0006751d80
initial wack at lokimq 4 years ago
Stephen Shelton 91725a8530
WIP: LokidRpcClient 4 years ago
Stephen Shelton 11951510bf
Remove libabyss and rpc::Caller/rpc::Server 4 years ago
Jason Rhinelander 26ecf23ad8 Silence various warnings 4 years ago
Stephen Shelton 839fb42ba4
Hard code RPC's expectedHostname to 'localhost' 4 years ago
Stephen Shelton aee96e53a3
Refactor Addr -> IpAddress/SockAddr 4 years ago
Stephen Shelton 273270916e
The Great Wall of Blame
This commit reflects changes to clang-format rules. Unfortunately,
these rule changes create a massive change to the codebase, which
causes an apparent rewrite of git history.

Git blame's --ignore-rev flag can be used to ignore this commit when
attempting to `git blame` some code.
4 years ago
Jeff Becker 99c814e6b0
fix dns rebinding vuln in jsonrpc 4 years ago
Jeff Becker bf0416cab8
remove Time_t, add operator overload for printing llarp_time_t and add to_json function for serializing llarp_time_t to json 4 years ago
Jeff Becker d2d109e92c
llarp_time_t is now using std::chrono 4 years ago
Jason Rhinelander 54186c4a89 Replace absl string_view with string_view from lokimq
When we add loki-mq has a dependency we can just alias it, but for now
it's easier to copy the header than add the whole submodule library.
4 years ago
Jason Rhinelander 089056ca5b Remove all ABSL_ATTRIBUTE_UNUSED uses 4 years ago
Jason Rhinelander ac1486d0be Replace absl::optional with optional-lite
Step 1 of removing abseil from lokinet.

For the most part this is a drop-in replacement, but there are also a
few changes here to the JSONRPC layer that were needed to work around
current gcc 10 dev snapshot:

- JSONRPC returns a json now instead of an optional<json>.  It doesn't
  make any sense to have a json rpc call that just closes the connection
  with returning anything.  Invoked functions can return a null (default
  constructed) result now if they don't have anything to return (such a
  null value won't be added as "result").
4 years ago
Stephen Shelton 2cade16c0e
s/LogInfo/LogDebug/ @ 'updating SN list' 4 years ago
Jason Rhinelander 95b0eeda29 Add support for lokid's "unchanged" response
If we pass the last block hash to lokid it can give us an "unchanged"
response instead of the service node states to tell us that there is no
updated needed.
5 years ago
Jason Rhinelander 1ba1e04390 Separate json SN parsing definition/declaration
No changes to code here (committing this separately to make the changes
in the following commit easier to follow).
5 years ago
Jason Rhinelander 416c71e554 Fix json api bind IP
Only the port was being used, the IP was being ignored and it was always
binding to localhost.
5 years ago
Jeff Becker 64b5537fe0
rpc clean up logic, dont fetch list as client AND dont ping lokid as client 5 years ago
Jeff Becker e5f92eaa79
only ping lokid if a service node 5 years ago
Jason Rhinelander 638fb25b47 Put version info into a compiled file
This rewrites the version info using lokid's approach of compiling it
into a .cpp file that gets generated as part of the build (*not* during
the configure stage).

Among other things, this means that changing the version no longer
invalidates ccache or cmake dependencies, and because it depends on
`.git/index` git commits will cause the version to be regenerated,
making the commit tag more reliable (currently if you rebuild without
running cmake your git commit tag doesn't update).
5 years ago
Stephen Shelton 211a5f7a03 Remove typo in version changes 5 years ago
Jeff Becker 4fdff7f233
consolidate versions 5 years ago
Jeff Becker c9d38d421b clang fixes 5 years ago
Jeff Becker 1ddc2b40aa another attempt at travis fix 5 years ago
Jeff Becker f29083f765 more travis fixes 5 years ago
Jeff Becker d880eec1de
ping lokid rpc 5 years ago
jeff c33324455a use correct rpc call to lokid 5 years ago
jeff 265da6f37b use get_service_nodes rpc endpoint 5 years ago
Michael 0721ce4d34
Add rpc call to get current addresses for our node 5 years ago