Commit Graph

173 Commits

Author SHA1 Message Date
Jeff Becker
61c5808765
exit authentication (initial) 2020-07-02 11:07:33 -04:00
Jeff Becker
1175a583d2
initial working code 2020-07-02 11:07:32 -04:00
Stephen Shelton
13b0a4f2fc
WIP: LokidRpcClient 2020-07-02 11:07:32 -04:00
Jeff Becker
9bfff61d08
initial wack at lokimq 2020-07-02 11:07:32 -04:00
Stephen Shelton
fd4b03f896
WIP: LokidRpcClient 2020-07-02 11:07:32 -04:00
Jeff Becker
d5b4dbe052
more 2020-07-02 11:07:32 -04:00
Jeff Becker
b1259e25c5
set sane defaults for config, implement lmq rpc server, update lokinetmon 2020-07-02 11:07:31 -04:00
Jeff Becker
fb8b8e2e56
add stubs for lmq rpc server 2020-07-02 11:07:31 -04:00
Jeff Becker
ad882d0d70
initial working code 2020-07-02 11:07:31 -04:00
Stephen Shelton
78256e3228
WIP: LokidRpcClient 2020-07-02 11:07:31 -04:00
Jeff Becker
0006751d80
initial wack at lokimq 2020-07-02 11:07:31 -04:00
Stephen Shelton
91725a8530
WIP: LokidRpcClient 2020-07-02 11:07:31 -04:00
Stephen Shelton
11951510bf
Remove libabyss and rpc::Caller/rpc::Server 2020-07-02 11:07:30 -04:00
Jason Rhinelander
26ecf23ad8 Silence various warnings 2020-05-17 21:28:17 -03:00
Stephen Shelton
839fb42ba4
Hard code RPC's expectedHostname to 'localhost' 2020-05-11 09:47:26 -06:00
Stephen Shelton
aee96e53a3
Refactor Addr -> IpAddress/SockAddr 2020-05-06 14:38:44 -06:00
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.
2020-04-07 12:38:56 -06:00
Jeff Becker
99c814e6b0
fix dns rebinding vuln in jsonrpc 2020-03-04 13:59:33 -05:00
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 2020-02-25 12:05:13 -05:00
Jeff Becker
d2d109e92c
llarp_time_t is now using std::chrono 2020-02-24 15:25:03 -05:00
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.
2020-02-24 14:27:44 -04:00
Jason Rhinelander
089056ca5b Remove all ABSL_ATTRIBUTE_UNUSED uses 2020-02-24 14:27:44 -04:00
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").
2020-02-19 18:21:25 -04:00
Stephen Shelton
2cade16c0e
s/LogInfo/LogDebug/ @ 'updating SN list' 2020-02-06 12:03:06 -07:00
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.
2020-01-20 16:47:08 -04:00
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).
2020-01-20 16:43:27 -04:00
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.
2020-01-16 00:16:56 -04:00
Jeff Becker
64b5537fe0
rpc clean up logic, dont fetch list as client AND dont ping lokid as client 2020-01-07 12:59:08 -05:00
Jeff Becker
e5f92eaa79
only ping lokid if a service node 2020-01-07 12:58:49 -05:00
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).
2019-12-11 22:40:07 -04:00
Stephen Shelton
211a5f7a03 Remove typo in version changes 2019-12-11 16:17:34 -07:00
Jeff Becker
4fdff7f233
consolidate versions 2019-12-11 17:06:44 -05:00
Jeff Becker
c9d38d421b clang fixes 2019-12-10 11:49:32 -07:00
Jeff Becker
1ddc2b40aa another attempt at travis fix 2019-12-10 11:49:32 -07:00
Jeff Becker
f29083f765 more travis fixes 2019-12-10 11:49:32 -07:00
Jeff Becker
d880eec1de
ping lokid rpc 2019-11-27 13:11:15 -05:00
jeff
c33324455a use correct rpc call to lokid 2019-10-22 11:00:48 -04:00
jeff
265da6f37b use get_service_nodes rpc endpoint 2019-10-14 11:38:34 -04:00
Michael
0721ce4d34
Add rpc call to get current addresses for our node 2019-10-09 23:00:50 +01:00
Michael
01611c2282
Convert RPC endpoint to be a lookup table 2019-10-09 23:00:50 +01:00
Michael
f326c93b5b
Apply Jeff's comments 2019-10-04 20:43:30 +01:00
Michael
15cb49c9bd
Introduce --background to only start JSON RPC
fixes #853
2019-10-04 10:32:52 +01:00
Michael
d467e2618b
Support version over jsonrcp 2019-10-02 22:53:56 +01:00
Michael
4d8fe2a8a8
Move meta programming to subdirectory 2019-09-03 20:52:28 +01:00
Michael
1aec0dfa2b
Move logging to subdirectory 2019-09-03 20:52:27 +01:00
Michael
094b697b01
Replace StatusObject with underlying JSON type 2019-08-19 10:33:26 +01:00
Michael
16cdfbd5f0
clang-tidy modernize pass 2019-08-12 16:52:58 +01:00
Michael
488695047f
Remove redundant else blocks 2019-07-09 22:54:46 +01:00
Michael
75430a234c
Convert to use memFn 2019-06-02 22:19:10 +01:00
Jeff Becker
1e57a7082d
don't log ips 2019-05-27 08:17:21 -04:00
Jeff Becker
372bc40032
add member to rpc response indicating weither or not a peer is a service node 2019-05-27 08:16:39 -04:00
Jeff Becker
8484e29c9b
turn more stuff into std::shared_ptr
remove dead codepaths
2019-04-23 10:47:23 -04:00
Jeff Becker
3a8cb0bfb5
add shell based hooks for service::Endpoint, also make format 2019-04-22 08:25:25 -04:00
Jeff Becker
5399b93270
make format and readd win32 console color logging 2019-04-11 11:36:20 -04:00
Jeff
97b9c679b0 don't use bootstrap nodes for first hops in paths 2019-04-03 15:05:44 -04:00
Jeff Becker
990049f423
make rpc do basic auth and shit like that 2019-03-13 16:01:10 -04:00
Michael
31441b46dc
Convert from rapidjson to use nlohmann::json 2019-03-02 02:32:50 +00:00
Jeff Becker
86098b198f
clear errno and log invalid data 2019-02-28 11:02:36 -05:00
Michael
4fb2b39f74
Format changes 2019-02-22 17:18:54 +00:00
Michael
4132f883a7
Make libabyss mandatory 2019-02-20 22:08:49 +00:00
Michael
a0125ffe86
Move abyss/json to llarp/util/json 2019-02-15 23:43:26 +00:00
Jeff Becker
1d958d95de
* make rpc compile right
* make link sessions introspectable
* make utp write buffers fully flush each tick
2019-02-15 17:19:19 -05:00
Michael
048fa83c39
Finish replacement of Router with AbstractRouter 2019-02-14 22:31:31 +00:00
Jeff
555711b70d
Merge pull request #303 from michael-loki/no_new
Replace usage of new/delete with unique_ptr/stack allocation
2019-02-11 13:38:06 -05:00
Jeff Becker
46222df421
refactor 2019-02-11 12:14:43 -05:00
Michael
67b5d48095
Replace usage of new/delete with unique_ptr/stack allocation 2019-02-11 16:24:05 +00:00
Jeff Becker
e1fceb3636
fix it (again) 2019-02-08 17:44:21 -05:00
Jeff Becker
66753430ad
fix it 2019-02-08 16:29:56 -05:00
Jeff Becker
e1522faeaa
add introspection rpc endpoint 2019-02-08 14:43:25 -05:00
Michael
729cd045f1
Convert llarp::Router into an abstract base class 2019-02-06 09:59:47 +00:00
Jeff Becker
18c4107ff6
* wire up jsonrpc caller for lokid integration
* add jsonrpc caller http basic auth
2019-01-28 08:04:45 -05:00
Jeff Becker
519cec50ac
update libabyss rpc endpoints for service nodes 2019-01-24 08:55:44 -05:00
Michael
da6cdfc0b2
More refactoring to continue to make dependency graph acylic 2019-01-15 23:15:44 +00:00