Cyrille Beraud
b828060ac2
proxy: fix listener restart on connectivity change
...
When a device wakes up from Doze mode or switches networks (e.g. WiFi to 4G),
old TCP sockets may become silently dead. When connectivityChanged() is
called, the proxy client triggers a new HTTP request (getProxyInfos)
which succeeds since it uses a fresh socket, leading the client to
believe the connection is still UP.
Because the status doesn't change (Connected -> Connected),
launchConnectedCbs_ was not set, and restartListeners() was never invoked.
Consequently, push subscriptions and permanent puts were not renewed
on the proxy, causing the device to appear offline on the DHT.
This forces launchConnectedCbs_ to true on connectivityChanged, ensuring
that listeners and subscriptions are properly restarted.
2026-06-07 19:13:14 +02:00
Adrien Béraud
0bb393ec36
http: allow to build Request by std::string url
2026-06-03 19:30:53 -04:00
vx32
947610003b
http: allow to build Url from std::string, cleanup
2026-06-03 19:14:32 -04:00
François-Simon Fauteux-Chapleau
7cf3e8b738
thread_pool: notify when task queue becomes empty
...
This prevents ThreadPool::stop from hanging if it is called with `wait`
set to true (which is notably the case in ThreadPool::join) and the
pool's task queue is non-empty.
2026-05-21 10:17:08 -04:00
Adrien Béraud
8b96652b32
dhtrunner: add signatures for putEncrypted(InfoHash, PkId to, Value&&)
2026-05-18 10:36:48 -04:00
Adrien Béraud
44f2aaa876
remove deprecated APIs
2026-05-11 09:27:56 -04:00
copilot-swe-agent[bot] and aberaud
aae1bb2ae5
infohash: fix unaligned memory access on strict-alignment architectures (sparc64)
...
Agent-Logs-Url: https://github.com/savoirfairelinux/opendht/sessions/d4106989-db2c-4d34-b1ea-4ca2ecab524a
Co-authored-by: aberaud <101827+aberaud@users.noreply.github.com >
2026-04-02 16:08:33 -04:00
Pavan Koushik Nellore
593e59e093
proxy: add pushType field and propagate through proxy notifications
2026-04-02 15:03:11 -04:00
Adrien Béraud
99da0be2b7
misc: remove lock mutex template argument
2026-03-15 00:00:33 -04:00
Adrien Béraud
8acafe844d
dht: release pending bootstrap after first attempt
2026-03-13 20:39:40 -04:00
Adrien Béraud
55af602026
tests: fix build with GCC 14
2026-03-13 15:32:45 -04:00
Adrien Béraud
603e777c9e
dht: refresh token on listen confirmation
2026-03-13 15:10:12 -04:00
Adrien Béraud
4bd796cddd
dht: state is connecting if bootstrap is pending
2026-03-13 11:53:32 -04:00
Adrien Béraud
f94f072ad6
dht: send token in listen confirmation
2026-03-13 00:53:05 -04:00
Adrien Béraud
c51beca374
dht: properly persist expiration time
2026-03-13 00:38:31 -04:00
Adrien Béraud
0eacd7fe6c
tools: move to dht::tools namespace
2026-03-13 00:04:49 -04:00
Adrien Béraud
b892be092a
infohash: make core APIs constexpr
...
Make Hash default constructor, hex constructor, data(), const
operator[] and fromString constexpr. Change fromString to be
non-throwing: it now uses a validity flag and fills the hash with zeros
on parse error instead of throwing. Add a constexpr toHexArray helper
that returns a std::array<char, N*2> for compile-time hex conversion.
Update tests to include <string_view>, use std::string_view, add
constexpr InfoHash usage and a static_assert for the hex array.
2026-03-08 23:34:50 -04:00
Adrien Béraud
931d79b701
dht: handle out-of-order partial messages
2026-03-08 12:26:23 -04:00
Adrien Béraud
9ad6b3a608
dhtrunner, securedht: mark findCertificate(InfoHash hash) as deprecated
2026-02-27 14:26:39 -05:00
Adrien Béraud
9ebe6e8bb6
tools: pretty print byte count
2026-02-24 00:15:47 -05:00
Adrien Béraud
0263104373
proxy client: implement getLocalStoreSize
2026-02-22 18:55:02 -05:00
Adrien Béraud
0fc7e451e6
dhtrunner: move getNodeInfo implementation to securedht
2026-02-22 17:16:28 -05:00
Adrien Béraud
85cbee0f1a
dht: add local storage stats in NodeInfo
2026-02-22 16:27:35 -05:00
Adrien Béraud
724b5e592e
dht: use independent storage quota for local values
2026-02-22 16:27:35 -05:00
Adrien Béraud
62243fb4f6
query: optimize msgpack_pack
2026-02-19 21:50:07 -05:00
Adrien Béraud
01eab83a7b
value: move filter
2026-02-19 21:44:43 -05:00
Adrien Béraud
2c71662af7
dht_proxy_client: prevent disconnect on local ip change
2026-02-09 15:05:43 -05:00
Adrien Béraud
d91f3bdbbd
dhtrunner: implement getStorageLimit
2026-02-09 13:26:00 -05:00
Adrien Béraud
73dc55155e
utils: make unpackMsg take const Blob& and inline
...
Change the template unpackMsg to accept a const Blob& to avoid an
unnecessary copy of the Blob argument. Move the non-template unpackMsg
(returning msgpack::unpacked) into the header as an inline function and
remove its out-of-line definition from src/utils.cpp. Update
declarations accordingly.
2026-02-05 21:31:42 -05:00
Adrien Béraud
638ffdc669
logger: add missing header
2026-01-29 22:55:47 -05:00
Adrien Béraud
e6836f076f
logger: protect children with mutex
2026-01-29 22:38:31 -05:00
Adrien Béraud
76ae1cd6f2
logger: make setFilter match substrings
...
Allow to filter based on partial tag match
2026-01-27 14:29:43 -05:00
Adrien Béraud
c59c0ef64d
log: add tag and filter mechanism
2026-01-26 17:31:37 -05:00
Adrien Béraud
f9cba71d51
Switch project license from GPL-3.0-or-later to MIT
2026-01-17 22:25:43 -05:00
Adrien Béraud
4fd4745647
update copyright to 2026
2026-01-17 17:09:06 -05:00
Adrien Béraud
f55884b7d3
utils: cleanup
2026-01-07 00:14:25 -05:00
Adrien Beraud
9f7e4aaa96
Revert "log: add tag and filter mechanism"
...
This reverts commit afce0fb0b4 .
2025-12-10 12:12:05 -05:00
Adrien Béraud
88f3870f20
dhtrunner: add registerInsecureType method and header file
2025-12-09 09:43:30 -05:00
Adrien Béraud
f427f36d9c
Add exceptions for missing owner or recipient in unpackValue methods
2025-12-09 09:43:19 -05:00
Adrien Béraud
fbc489863f
http: use string_view for resolver, url
2025-12-02 22:28:32 -05:00
Adrien Béraud
504a3638d9
proxy server: add support for encrypted WebPush
2025-12-02 22:28:32 -05:00
Adrien Béraud
afce0fb0b4
log: add tag and filter mechanism
2025-12-01 22:20:37 -05:00
Adrien Béraud
99f0334229
http: improve Url parsing
2025-11-30 12:40:17 -05:00
Adrien Béraud
3e8d9835d4
utils: various fixes to build with c++23
2025-11-26 14:03:56 -05:00
Adrien Béraud
d12f9271b8
pht: use const reference for IndexEntry::TYPE
...
Prevents static initialization order issue
2025-09-22 14:41:22 -04:00
ovari
d46e302b3f
Update network_engine.h
2025-09-14 13:38:35 -04:00
ovari
6f57e03b48
Update network_engine.h
2025-09-14 13:38:35 -04:00
ovari
e5ef0a8900
Update dhtrunner.h
2025-09-14 13:38:35 -04:00
ovari
b6f21933ab
Update securedht.h
2025-09-14 13:38:35 -04:00
Adrien Béraud
95fa29d2ec
securedht: add CertificateStoreQuery by PkId
2025-09-08 00:14:44 -04:00