Update README.md

This commit is contained in:
Adrien Béraud committed 2014-11-20 01:42:44 -05:00
1 parent 151d31411a
commit 116bc05c62
1 file changed
+26 -3
+26 -3
View File
@@ -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
});
```