mirror of
https://github.com/savoirfairelinux/opendht.git
synced 2026-11-08 12:28:42 +00:00
Update README.md
This commit is contained in:
1 parent
151d31411a
commit
116bc05c62
1 file changed
+26
-3
@@ -2,13 +2,13 @@ DhtCpp
|
||||
===
|
||||
A lightweight C++11 Distributed Hash Table implementation
|
||||
|
||||
* Light C++11 DHT implementation
|
||||
* Light C++11 Kademlia DHT library
|
||||
* Simple API
|
||||
* Support for arbitrary value types with common types built-in: simple blob (user data) or bittorrent-style "service announcement"
|
||||
* "Identity" layer with data signature and encryption (using GnuTLS)
|
||||
* Value edition authentified by the identity layer or with custom per-value-type hooks
|
||||
* Fast bootstrap and announce time
|
||||
* Originally based on https://github.com/jech/dht
|
||||
* Originally based on https://github.com/jech/dht by Juliusz Chroboczek
|
||||
|
||||
***work in progress***
|
||||
|
||||
@@ -16,8 +16,31 @@ Dependencies
|
||||
-
|
||||
- GnuTLS 3.1+, used to compute hashes and for the identity layer.
|
||||
|
||||
todo
|
||||
TODO
|
||||
-
|
||||
* Event listening
|
||||
* Documention
|
||||
* ...
|
||||
|
||||
Examples
|
||||
-
|
||||
```c++
|
||||
dht::DhtRunner dht;
|
||||
|
||||
// Launch a new dht node using generated RSA keys,
|
||||
// and listen on port 4222.
|
||||
dht.run(4222, dht::crypto::generateIdentity());
|
||||
|
||||
// put some data on the dht
|
||||
std::vector<uint8_t> some_data(5, 10);
|
||||
dht.put("unique_key", some_data);
|
||||
|
||||
// get data from the dht
|
||||
dht.get("other_unique_key", [](const std::vector<std::shared_ptr<Value>>& values) {
|
||||
// Callback called when values are found
|
||||
for (const auto& value : values)
|
||||
std::cout << "Found value: " << value << std::endl;
|
||||
return true; // return false to stop the search
|
||||
});
|
||||
|
||||
```
|
||||
Reference in new issue
Block a user