opendht

OpenDHT: a C++17 Distributed Hash Table implementation

GPL-3.0 License

Downloads
455
Stars
1K
Committers
52

Bot releases are visible (Hide)

opendht - v3.2.0 Latest Release

Published by github-actions[bot] 2 months ago

  • dependencies: http-parser has been replaced by llhttp (optional, used for the proxy)
  • dht: add support to behave as a client node. A client node doesn't participate in routing or storing data but can perform queries to other nodes. This can be useful when running short-lived nodes.
  • dht: use poll instead of select
  • peer discovery: ping network after connectivity change (@AmnaSnene )
  • peer discovery: add retry mechanism with exponential back-off (@AmnaSnene )
  • peer discovery: add workaround for Android (@Lanius-collaris )
  • http: allow to modify keepalive option
  • http: adjusted keepalive settings
  • crypto: fix error when using empty password (@qiek )
  • crypto: improve error handling and messages (@lucassdiass )
  • build: add support to build with io_uring (used by asio)
  • fix various warnings (@Noviv )
opendht - v3.1.11

Published by github-actions[bot] 7 months ago

  • dht: fixed issue that could cause a listen operation after a previous cancelListen on the same key to not provide values in some cases
  • proxy client: fixed issue that could cause a listen socket to remain open after cancellation
  • proxy server: add value IDs to be used by iOS extension ( @atraczyk )
  • build/meson: add support to build unit tests
  • build/meson: add support to configure and install pkgconfig files for OpenDHT libraries
  • build/meson: fix various build issues
  • build/autotools: avoid using bash extension in configure.ac ( @jg1uaa )
opendht - v3.1.9

Published by github-actions[bot] 7 months ago

  • build/meson: support building the Python binding
  • build/meson: support building with indexation
  • build/meson: support building with push notifications
  • ci: various fixes
opendht - v3.1.8

Published by github-actions[bot] 7 months ago

  • dht_proxy_server: Allow user to specify non-standard ports in UnifiedPush endpoint ( @Lanius-collaris )
  • ocsp: removed custom ASN1_time_parse implementation
  • resolver: allow to cancel request
  • dhtrunner: run shutdown operation immediately
  • crypto: work around a bug in GnuTLS 3.8.4 that might lead to crashes when using PrivateKey::decrypt.
  • build: CMake 3.16 is now the minimum required version
opendht - v3.1.7

Published by github-actions[bot] 9 months ago

  • aesEncrypt: allow to provide salt
  • build/meson: allow to build c binding
opendht - v3.1.6

Published by github-actions[bot] 11 months ago

  • dht: allow to configure the PRNG used instead of always seeding it from random_device. This allows for better reproducibility of the DHT behaviour for testing.
  • rng: added getDerivedRandomEngine to seed a new PRNG from an existing one.
  • rng: improve getSeededRandomEngine.
  • rng: drop custom random_device implementation for MinGW/Windows, because MinGW now has working std::random_device support on Windows. dht::crypto::random_device is no longer defined. Use std::random_device.
opendht - v3.1.4

Published by github-actions[bot] 11 months ago

  • crypto: add aesBuildEncrypted
opendht - v3.1.3

Published by github-actions[bot] 11 months ago

  • crypto: added aesGetKey, aesGetSalt, aesGetEncrypted, giving more control over encrypted blobs generated by aesEncrypt(data, password).
  • python: added bindings for aesEncrypt, aesDecrypt
  • build/cmake: link libatomic where needed for 64-bit atomic ops ( @bandali0 )
opendht - v3.1.2

Published by github-actions[bot] 12 months ago

  • python: Added putSigned and putEncrypted to DhtRunner
opendht - v3.1

Published by github-actions[bot] 12 months ago

This release focus on improving the Python binding:

  • python: Added missing permanent boolean argument to DhtRunner.put()
  • python: Added missing cancelPut method to DhtRunner
  • python: Added missing configuration fields in DhtRunnerConfig, allowing to use features like the proxy server, peer discovery, and configure specific bound address, allowing to bind to a specific network interface.
  • python: Added SockAddr.resolve(hostname, service) to allow building SockAddr instances from a string representation of an IP address or hostname, and port or service name:
    > import opendht as dht
    > dht.SockAddr.resolve("bootstrap.jami.net", "4222")
    [<SockAddr '198.27.69.48:4222'>]
    
opendht - v3.0.1

Published by github-actions[bot] 12 months ago

  • proxy client: retry permanent put after reconnect
opendht - v3.0.0

Published by github-actions[bot] about 1 year ago

opendht - v2.6.0.4

Published by github-actions[bot] about 1 year ago

  • Fix Python binding with latest Cython version
opendht - v2.6.0

Published by aberaud about 1 year ago

  • dht: added early announce/listen mechanism, significantly reducing the time taken for the first values to be published or received for a new search, without major trade-off.
  • dht: fixed an issue that was causing invalid transaction IDs to be occasionally used
  • dht: changed user agent to "o2"
  • dhtinterface: added setOnPublicAddressChanged to listen for public address changes
  • dhtrunner: added Context::publicAddressChangedCb to make use of the new API
  • log: new logger API using {fmt}
  • http: added static method Request::url_encode to encode url parameters.
  • docker: Alpine image now based on Alpine 3.18
  • build/meson: build dhtchat, dhtscanner
opendht - v2.5.1

Published by github-actions[bot] over 1 year ago

opendht - v2.5.0

Published by github-actions[bot] over 1 year ago

  • dht: improved transmission of large amounts of values (>64 KB) for a single key, by transmitting them in separate messages with independent retransmission logic
  • docker: added official Alpine Linux-based images, much lighter than Ubuntu-based images (about 30 MB vs 800 MB)
  • build/cmake: removed OPENDHT_STATIC and OPENDHT_SHARED options. Use the standard BUILD_SHARED_LIBS option instead
  • build/cmake: removed OPENDHT_TESTS option. Use the standard BUILD_TESTING option instead
  • build/cmake: now using CTest
  • build/meson: added experimental support for the Meson build system
  • build/autotools: the Autotools build system is now deprecated and shall be removed when Meson support is considered stable
opendht - v2.4.12

Published by github-actions[bot] over 1 year ago

  • Added soversion for c binding shared library
opendht - v2.4.11

Published by github-actions[bot] over 1 year ago

  • proxy server: added support for Unified Push in addition to gorush
  • proxy server: various fixes
  • securedht: fixed a long-standing issue that prevented editing a signed value. Added relevant unit test.
  • rust: updated os_socketaddr
  • infohash: added to_view()
  • build/cmake: using IMPORTED_TARGET for pkg-config
  • build/cmake: declare appropriate pkg-config dependencies
opendht - v2.4.10

Published by github-actions[bot] about 2 years ago

opendht - v2.4.9

Published by github-actions[bot] over 2 years ago

  • dhtrunner: fix crash introduced in 2.4.8 when requesting both local peer discovery and the proxy client
    The peer discovery configuration is now ignored when using the proxy client
  • proxy server: allow to configure the local address to bind
  • misc: fix various warnings