Skip to content
Snippets Groups Projects
Commit 09161495 authored by Adrien Béraud's avatar Adrien Béraud
Browse files

contrib: update opendht

Change-Id: I9c09c4ac6e6ee5e3df91c1d3d84b07ab79afa348
parent 4a816da4
Branches
No related tags found
No related merge requests found
b9c28f1c540fa180224571cae186296442069619af11d0079f52554eb7af2bcb254cad3dddc49ef25e8b9ad8c9d97b924de0db07027f01b772c924421310bc27 opendht-104a9e3b283d3b8d7d86e31b7d911ca000a6e7ad.tar.gz
7af2f88495a842251a5975d4133dde9bd981e59beaacbedaedd59042158270560167d07688bda320d4abd48a17eb6d1d4cd4b600c17193f8bfd6290b15d1a2e0 opendht-ed642b0337653180e64cbe44c81a9df9cdd3c62c.tar.gz
\ No newline at end of file
set BUILD=%SRC%..\build
set OPENDHT_VERSION=104a9e3b283d3b8d7d86e31b7d911ca000a6e7ad
set OPENDHT_VERSION=ed642b0337653180e64cbe44c81a9df9cdd3c62c
set OPENDHT_URL=https://github.com/savoirfairelinux/opendht/archive/%OPENDHT_VERSION%.tar.gz
mkdir %BUILD%
......
# OPENDHT
OPENDHT_VERSION := 104a9e3b283d3b8d7d86e31b7d911ca000a6e7ad
OPENDHT_VERSION := ed642b0337653180e64cbe44c81a9df9cdd3c62c
OPENDHT_URL := https://github.com/savoirfairelinux/opendht/archive/$(OPENDHT_VERSION).tar.gz
PKGS += opendht
......
......@@ -122,7 +122,6 @@ NameDirectory::instance(const std::string& serverUrl, std::shared_ptr<dht::Logge
void
NameDirectory::setHeaderFields(Request& request){
request.set_header_field(restinio::http_field_t::host, request.get_url().host + ":" + request.get_url().service);
request.set_header_field(restinio::http_field_t::user_agent, "JamiDHT");
request.set_header_field(restinio::http_field_t::accept, "*/*");
request.set_header_field(restinio::http_field_t::content_type, "application/json");
......@@ -136,22 +135,12 @@ NameDirectory::lookupAddress(const std::string& addr, LookupCallback cb)
cb(cacheResult, Response::found);
return;
}
auto request = std::make_shared<Request>(*httpContext_, resolver_, logger_);
auto request = std::make_shared<Request>(*httpContext_, resolver_, QUERY_ADDR + addr);
auto reqid = request->id();
try {
request->set_connection_type(restinio::http_connection_header_t::keep_alive);
auto target_prefix = request->get_url().target;
if (target_prefix.back() == '/')
target_prefix.pop_back();
request->set_target(target_prefix + QUERY_ADDR + addr);
request->set_method(restinio::http_method_get());
setHeaderFields(*request);
std::string uri = serverUrl_;
if (uri.back() == '/')
uri.pop_back();
uri += QUERY_ADDR + addr;
JAMI_DBG("Address lookup for %s: %s", addr.c_str(), uri.c_str());
request->add_on_state_change_callback([this, cb=std::move(cb), reqid, addr]
(Request::State state, const dht::http::Response& response){
if (state != Request::State::DONE)
......@@ -224,23 +213,11 @@ NameDirectory::lookupName(const std::string& n, LookupCallback cb)
cb(cacheResult, Response::found);
return;
}
auto request = std::make_shared<Request>(*httpContext_, resolver_, logger_);
auto request = std::make_shared<Request>(*httpContext_, resolver_, QUERY_NAME + name);
auto reqid = request->id();
try {
request->set_connection_type(restinio::http_connection_header_t::keep_alive);
auto target_prefix = request->get_url().target;
if (target_prefix.back() == '/')
target_prefix.pop_back();
request->set_target(target_prefix + QUERY_NAME + name);
request->set_method(restinio::http_method_get());
setHeaderFields(*request);
std::string uri = serverUrl_;
if (uri.back() == '/')
uri.pop_back();
uri += QUERY_NAME + name;
JAMI_DBG("Name lookup for %s: %s", name.c_str(), uri.c_str());
request->add_on_state_change_callback([this, reqid, name, cb=std::move(cb)]
(Request::State state, const dht::http::Response& response){
if (state != Request::State::DONE)
......@@ -344,14 +321,9 @@ void NameDirectory::registerName(const std::string& addr, const std::string& n,
jami::Blob(publickey.begin(), publickey.end())) << "\"}";
body = ss.str();
}
auto request = std::make_shared<Request>(*httpContext_, resolver_, logger_);
auto request = std::make_shared<Request>(*httpContext_, resolver_, QUERY_NAME + name);
auto reqid = request->id();
try {
request->set_connection_type(restinio::http_connection_header_t::keep_alive);
auto target_prefix = request->get_url().target;
if (target_prefix.back() == '/')
target_prefix.pop_back();
request->set_target(target_prefix + QUERY_NAME + name);
request->set_method(restinio::http_method_post());
setHeaderFields(*request);
request->set_body(body);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment