diff --git a/external/loki-mq b/external/loki-mq index 8a56b18cc..07b31bd8a 160000 --- a/external/loki-mq +++ b/external/loki-mq @@ -1 +1 @@ -Subproject commit 8a56b18cc64b52644e7799b1ed9cdb7ddb63ee83 +Subproject commit 07b31bd8a1b39a7de7913b91aab7b8e1e12e928b diff --git a/llarp/config/config.cpp b/llarp/config/config.cpp index 3afc1573d..849c545f1 100644 --- a/llarp/config/config.cpp +++ b/llarp/config/config.cpp @@ -431,14 +431,11 @@ namespace llarp conf.defineOption( "lokid", "enabled", false, DefaultWhitelistRouters, AssignmentAcceptor(whitelistRouters)); - conf.defineOption( - "lokid", "jsonrpc", false, DefaultLokidRPCAddr, AssignmentAcceptor(lokidRPCAddr)); + auto setRPC = [this](std::string arg) { lokidRPCAddr = lokimq::address(arg); }; - conf.defineOption( - "lokid", "username", false, "", AssignmentAcceptor(lokidRPCUser)); + conf.defineOption("lokid", "jsonrpc", false, DefaultLokidRPCAddr, setRPC); - conf.defineOption( - "lokid", "password", false, "", AssignmentAcceptor(lokidRPCPassword)); + conf.defineOption("lokid", "rpc", false, DefaultLokidRPCAddr, setRPC); } void @@ -597,6 +594,9 @@ namespace llarp addIgnoreOption("metrics", "json-metrics-path"); addIgnoreOption("network", "enabled"); + + addIgnoreOption("lokid", "username"); + addIgnoreOption("lokid", "password"); } void @@ -966,9 +966,9 @@ namespace llarp def.addOptionComments( "lokid", - "jsonrpc", + "rpc", { - "Host and port of running lokid that we should talk to.", + "Host and port of running lokid's rpc that we should talk to.", }); // TODO: doesn't appear to be used in the codebase diff --git a/llarp/config/config.hpp b/llarp/config/config.hpp index 765e38b4b..1a2733a95 100644 --- a/llarp/config/config.hpp +++ b/llarp/config/config.hpp @@ -22,6 +22,8 @@ #include #include +#include + struct llarp_config; namespace llarp @@ -149,9 +151,7 @@ namespace llarp bool usingSNSeed = false; bool whitelistRouters = false; fs::path ident_keyfile; - std::string lokidRPCAddr; - std::string lokidRPCUser; - std::string lokidRPCPassword; + lokimq::address lokidRPCAddr; void defineConfigOptions(ConfigDefinition& conf, const ConfigGenParameters& params); diff --git a/llarp/router/router.hpp b/llarp/router/router.hpp index fbcf96fd5..22dcb3514 100644 --- a/llarp/router/router.hpp +++ b/llarp/router/router.hpp @@ -267,8 +267,6 @@ namespace llarp std::shared_ptr m_lokidRpcClient; lokimq::address lokidRPCAddr; - std::string lokidRPCUser; - std::string lokidRPCPassword; Profiling _routerProfiling; std::string routerProfilesFile = "profiles.dat"; diff --git a/llarp/rpc/lokid_rpc_client.cpp b/llarp/rpc/lokid_rpc_client.cpp index d3b4d332e..abd82c312 100644 --- a/llarp/rpc/lokid_rpc_client.cpp +++ b/llarp/rpc/lokid_rpc_client.cpp @@ -43,7 +43,7 @@ namespace llarp { LogInfo("connecting to lokid via LMQ at ", url); m_lokiMQ->connect_remote( - url.zmq_address(), + url, [self = shared_from_this()](lokimq::ConnectionID c) { self->m_Connection = std::move(c); self->Connected();