Adrien Béraud
352e36500c
utils: make HexMap constexpr
2025-04-05 09:49:58 -04:00
Adrien Béraud
7397bd615f
infohash: always write end of string terminator
2025-03-24 23:37:07 -04:00
Adrien Béraud
6a264d6f73
infohash: constexpr HexMap constructor
2025-03-24 23:29:32 -04:00
Adrien Beraud
b2860e1731
proxy client: provide result for pushNotificationReceived
2025-02-20 14:13:16 -05:00
ovari
23af860532
Update pht.h
2024-12-19 15:29:21 -05:00
ovari
4c98f7c8f4
pht.h: cleanup
2024-12-19 15:29:21 -05:00
Adrien Beraud
a26ac441ba
proxy: cleanup
2024-12-17 16:04:22 -05:00
Adrien Béraud
c7ba7f6703
utils: use fmt::format for time
2024-11-20 11:40:12 -05:00
Adrien Beraud
3f27cd7069
proxy client: resubscribe on token change
2024-11-18 11:07:55 -05:00
Adrien Beraud
b222efe638
proxy client: pass push parameters to constructor
2024-11-18 11:07:55 -05:00
Adrien Béraud
3c62026b5c
proxy server: move time_point using statement before use
2024-11-05 20:20:45 -05:00
François-Simon Fauteux-Chapleau
df189e3e12
dht_proxy_server: add push notification statistics
2024-11-05 15:13:39 -05:00
Adrien Beraud
950194f68e
proxy client: allow to configure user agent for proxy
2024-11-04 16:34:02 -05:00
AmnaSnene
38454eaf6e
peer discovery: add a timer to schedule connectivityChanged with a maximum interval of one minute
2024-07-16 14:25:01 -04:00
AmnaSnene
3e2fd5e8fa
peer discovery: address requested changes
2024-06-25 13:27:35 -04:00
AmnaSnene
8b3f7f2480
peer discovery: re-publish and re-discover immediately when a node disconnects, instead of on the connectivityChanged signal.
2024-06-25 13:27:35 -04:00
Adrien Beraud
cd92eeaae5
dht: add support to behave as a client node
2024-06-07 09:52:01 -04:00
Adrien Béraud
5a2a20a32f
http: migrate from http-parser to llhttp
2024-05-31 06:58:09 -04:00
Lanius-collaris
318d02c55a
update http, dht_proxy_client
...
http: simplify Connection::async_connect()
dht_proxy_client: add listenKeepIdle setting
2024-05-25 23:57:52 -04:00
Lanius-collaris
a69da52f89
update http.h, http.cpp
2024-05-25 23:57:52 -04:00
Lanius-collaris
88d65a55a7
http: allow to modify keepalive option
2024-05-25 23:57:52 -04:00
Lanius-collaris
dffe7d91ee
return to 386943de
2024-05-25 23:57:52 -04:00
Lanius-collaris
24adfbf2c4
Adjust TCP keepalive options for listen op
2024-05-25 23:57:52 -04:00
François-Simon Fauteux-Chapleau
f2cee8e9ce
thread pool: add function to detach threads
2024-04-23 14:02:32 -04:00
Andreas Traczyk
c0a1356049
dht_proxy_server: use lambda instead of std::bind for listen callback
...
Avoids issues compiling with MSC.
Also move PushSessionContext definition outside the OPENDHT_PUSH_NOTIFICATIONS condition.
2024-04-04 14:20:01 -04:00
Andreas Traczyk
b40d604ef7
provide value IDs for push notifications
2024-04-02 17:34:16 -04:00
Adrien Beraud
cc6cce6157
http: allow to cancel resolver
2024-03-22 13:49:44 -04:00
Adrien Béraud
0c4942439b
move secure_vector to its own file
2024-01-02 16:22:02 -05:00
Adrien Béraud
b03df3f7a6
aesEncrypt: allow to provide salt
2024-01-02 15:18:44 -05:00
Adrien Béraud
728c99999f
getDerivedRandomEngine: use 32 bit input for std::seed_seq
2023-12-11 21:12:50 -05:00
Adrien Béraud
23d07dae38
rng: drop custom random_device implementation for MinGW/Windows
...
MinGW now has std::random_device support on Windows:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85494
2023-12-10 15:18:59 -05:00
Adrien Béraud
29c83d9c97
rng: improve getSeededRandomEngine
...
* Make sure to use 32 bit input for std::seed_seq
* Retry using random device every use
* Adjust delays and retry count to keep approx. the same max timeout.
In practice the actual average timeout should be reduced, because
the algo doesn't lose existing data and can move forward in case
of occasional failure/retry.
2023-12-10 15:07:39 -05:00
Adrien Béraud
abbc77744e
dhtrunner: allow to configure rng used by the dht
2023-12-10 15:07:39 -05:00
Adrien Béraud
7a61fa371f
dht: allow to provide rng to constructor
2023-12-10 15:06:51 -05:00
Adrien Béraud
0592b9ff51
crypto: add aesBuildEncrypted
2023-12-03 22:03:22 -05:00
Adrien Béraud
297e182576
crypto: fix typo in comment
2023-11-28 19:57:01 -05:00
Adrien Béraud
24e7b00e4e
crypto: add aesGetKey, aesGetSalt, aesGetEncrypted
...
Allows to retrieve the encryption key and salt from
an encrypted blob, leading the way for biometry support.
2023-11-28 10:49:41 -05:00
Moreno Giussani
ac9d7942ce
Add loadIdentity
2023-11-07 09:29:46 -05:00
Adrien Béraud
8b91c24414
python: make callbacks noexcept
2023-09-11 11:52:55 -04:00
Adrien Béraud
dbebaae1f3
callbacks: make raw callbacks except
2023-09-11 11:42:05 -04:00
Adrien Béraud
7cc743ff5e
callbacks: make raw callbacks noexcept
2023-09-11 11:30:22 -04:00
Adrien Béraud
bb61b8468b
proxy client: implement OnPublicAddressChanged
2023-08-30 17:58:45 -04:00
Adrien Béraud
55688a25aa
http: don't encode whole url
...
url encoding should be used for url components
by users of the library,
otherwise characters like '/' get escaped.
2023-08-30 17:58:45 -04:00
Adrien Béraud
ae56d4e9be
dht: implement OnPublicAddressChanged
2023-08-30 17:58:45 -04:00
Adrien Béraud
982896a718
dht interface: add OnPublicAddressChanged
2023-08-30 17:58:45 -04:00
Adrien Béraud
27ce8b00ed
add syncLevel to send announce/listen early
2023-08-30 16:31:47 -04:00
Adrien Béraud
285105c8d1
thread pool: simplify cleanup logic
2023-08-20 23:02:41 -04:00
Adrien Béraud
9e0ad9d926
thread pool: wait for tasks to complete on stop
2023-08-19 18:48:53 -04:00
Adrien Béraud
0fdded0606
thread pool: allow pool to reduce in size after some time
2023-08-19 18:48:53 -04:00
Léo Banno-Cloutier
2f2ed9bca7
url_encode: escape url query
...
For routes such as /api/auth/directory/search, when searching for names such as
"Léo", jams would not respond to the request
since the URL contained invalid characters defined in RFC3986. `url_encode`
turns such characters into their equivalent escaped characters.
2023-07-25 10:28:22 -04:00