Jon Häggblad
fafad41230
Skip refreshing the topology on startup as we already have an initial set ( #5768 )
2025-05-16 09:11:34 +02:00
Jon Häggblad
e898f202b7
Fetch the topology from the nym-api concurrently ( #5767 )
...
* Fetch the topology from the nym-api concurrently
* Add path to get_json instrument
2025-05-15 15:00:41 +02:00
Jędrzej Stuczyński
370a4a3a03
feat: use bincode by default in NymApiClient + remove feature-lock ( #5761 )
2025-05-14 17:33:10 +01:00
Bogdan-Ștefan Neacşu
ea90d7b558
Decrease default average packet delay to 15 ms ( #5754 )
...
* Decrease default average packet delay to 15 ms
* Add upgrade for config value
* Fix ip packet router too
* Fix clippy
* Remove message_sending_average_delay from template too
2025-05-14 16:24:34 +03:00
Simon Wicky
a3a234b41b
[Feature] RememberMe is the new don't ForgetMe ( #5742 )
...
* move SessionType into statsitcis common crate
* add RememberMe to clients config
* change stats collection logic to handle remember me
* set up sdk client to send remember me message
* bump NS API version
2025-05-09 14:43:32 +02:00
Jack Wampler
96239a7812
allow client to specify whether to include mix hops or not in MixnetClient Debug Config ( #5696 )
2025-04-15 10:49:11 -06:00
Jędrzej Stuczyński
84db9f6bcd
chore: rename 'identity' module to 'ed25519' and 'encryption' to 'x25519' ( #5707 )
2025-04-13 11:58:25 +01:00
Jędrzej Stuczyński
af2c4f50b6
Feature/updated sphinx payload keys ( #5698 )
...
* removed support for legacy packet types from NymCodec
I think nodes had plenty of time to upgrade given versioned variant was introduced in 2022
* temp: use local sphinx packet for development
* introduce new messages that use more efficient reply surbs encoding
* checks for incorrect encoding
* generate correct message depending on config value
* fixed current packet version
* made packet type selection configurable
* updated sphinx packet crate to the published version
* fixed wasm build
* fixes in outfox due to sphinx api changes
* additional tests
* clippy
* fixed log/tracing import
2025-04-10 13:43:29 +01:00
Jędrzej Stuczyński
02ed64557d
chore: removed old explorer-api ( #5701 )
2025-04-10 11:26:24 +01:00
Bogdan-Ștefan Neacşu
8abcc58055
Add fd callback for initial authentication ( #5654 )
2025-03-24 11:24:38 +02:00
Jon Häggblad
1a37e60483
Add max_retransmissions flag on each message ( #5642 )
2025-03-20 19:54:07 +01:00
Jon Häggblad
04664c8ae1
Rework IPR codec to extract out timer and implement AsyncWrite ( #5632 )
...
* Update ipr codec
* Tweak conditional
* Fix sending empty packet for flush
* Remove unneeded log
* Bump mix_traffic and real_message channel from size 1 to 8
2025-03-20 15:59:44 +01:00
Jon Häggblad
3c432ac073
Clean stale partially received buffers ( #5536 )
...
* Clean stale partially received buffers
* Tweak timeout
* Do cleanup after handling new messages instead of in the select loop
* Debug logging and remove unreachable
* Downgrade log
* Tweak logs
* tweak whitespace
* Only run the stale check every 10 sec
2025-03-20 10:01:42 +01:00
Jędrzej Stuczyński
63002e784a
Merge branch 'develop' into merge/release/2025.4-dorina-patched
2025-03-11 09:53:56 +00:00
Jon Häggblad
2d00fcd934
Allow resetting all SURB sender tags ( #5600 )
...
* Allow resetting all SURB sender tags
* wasm fixes
* More wasm fixes
2025-03-11 08:35:40 +01:00
Jon Häggblad
430c33eb04
Set DEFAULT_MAXIMUM_REPLY_SURB_REQUEST_SIZE to 50
2025-03-06 18:03:08 +01:00
Jon Häggblad
8ddef08c72
Tweak surb management to be more conservative ( #5570 )
...
To reduce the risk of the IPR DoS the client:
- Lower the timeout until the IPR will disconnect a client
- Reduce fewer surbs at a time. Large surb requests increases the
latency until all fragments in the response have been delivered. The
efficiency gains of having large surb requests dimishes quickly for
large sizes as well
2025-03-06 10:09:15 +01:00
Jon Häggblad
9be9c04f52
Add SURBs soft threshold ( #5535 )
...
* Add surbs soft threshold
* wip
* Proactively request more SURBs than needed
* fmt
* cleanup
* wip logging
* wip
* debugging
* wip
* Tidy
* tidy
* Set threshold buffer default for IPR
* rustfmt
* wasm fixes
* debug
* Tweak debug message
* Set default min buffer to 0
* Tweak backlog message
* Restore debug message
* tweak
* tweak
* wasm
2025-03-03 14:06:20 +01:00
Jon Häggblad
2b14a9e6f8
Fix unexpected drop:
2025-02-17 14:37:34 +01:00
Jon Häggblad
e9269da897
Fix using is_shutdown_poll
2025-02-17 14:37:34 +01:00
Jon Häggblad
7bceeadf16
Include MessageHandler
2025-02-17 14:37:34 +01:00
Jon Häggblad
e72ce8fa92
Fix bug with ack control task client
2025-02-17 14:37:34 +01:00
Jon Häggblad
c6d38d3c4f
Also include topology refresher and mix traffic controller
2025-02-17 14:37:34 +01:00
Jon Häggblad
e8e2bf107f
Wrap more send errors in shutdown check
2025-02-17 14:37:34 +01:00
Jon Häggblad
efe4e5c1c1
Move TaskClient to Self in few tasks
2025-02-17 14:37:34 +01:00
Jon Häggblad
2230609a72
Use a TaskClient in client stats sender
2025-02-17 14:37:34 +01:00
Jon Häggblad
6d80c37b21
Tweak logging
2025-02-17 14:37:34 +01:00
Jon Häggblad
cb8b4c56af
Remove a bunch of unwraps from client-core
2025-02-17 14:37:34 +01:00
Jon Häggblad
4d486abfef
Remove all recv_with_delay and add shutdown condition to loops in client-core
...
Inside client-core we want to prepare the ground for moving a behaviour
close to what we have in the vpn client.
Remove all the recv_with_delay since we want to just stop
Add shutdown condition to all select loops to guard against the shutdown
listener being polled inside the select blocks.
2025-02-17 14:37:34 +01:00
Drazen Urch
134883522d
Seedable clients ( #5440 )
...
* Seedable clients
* Finalize seedable PR
* Address PR comments
* More generic DerivationMaterials init
* Fix xoring the wrong index
* Tests
2025-02-17 00:00:17 +01:00
benedetta davico
988eca857f
Merge pull request #5431 from nymtech/drazen/forget-cli-client
...
Push down forget me to client configs
2025-02-06 15:25:04 +01:00
durch
a8e268f84a
Push down forget me to client configs
2025-02-06 13:15:58 +01:00
Bogdan-Ștefan Neacşu
bdc0b875a4
Merge remote-tracking branch 'origin/develop' into release/2025.2-hu
2025-02-06 13:16:51 +02:00
Bogdan-Ștefan Neacşu
21e3c1538d
Fix statistics shutdown ( #5426 )
2025-02-05 16:06:46 +02:00
Jack Wampler
1d2e6d916c
Use secure DNS for websocket connection establishment ( #5386 )
...
implementation of secure dns for websocket connection establishment. depends on #5355
2025-02-04 11:20:39 -07:00
Jon Häggblad
6f00023d09
Send shutdown instead of panic when reaching max fail ( #5398 )
...
* Send shutdown instead of panic when reaching max fail
* Stop quicker on failure
* Update comment
2025-01-31 10:39:37 +01:00
Drazen Urch
9550934d1f
Pre shutdown hooks for GatewayClient ( #5381 )
2025-01-27 20:00:37 +01:00
Jędrzej Stuczyński
7c85c1a271
bugfix: correctly handle ingore epoch roles flag ( #5390 )
2025-01-24 15:35:06 +00:00
Jędrzej Stuczyński
554e9ca490
feat: make client ignore dual mode nodes by default ( #5388 )
2025-01-24 12:07:25 +00:00
Bogdan-Ștefan Neacşu
8670693952
Uncouple storage reference for bandwidth client ( #5372 )
2025-01-22 12:12:06 +01:00
Bogdan-Ștefan Neacşu
a7f7ebfbae
Remove empty ephemeral keys ( #5376 )
2025-01-22 12:11:01 +01:00
Jędrzej Stuczyński
ea5aef6c2f
Client gateway selection ( #5358 )
...
* filter out dual-role gateways during selection
* changed behaviour of egress node validitiy
2025-01-16 14:24:27 +00:00
Jędrzej Stuczyński
adb248dbcc
chore: refresh wasm sdk ( #5353 )
...
* make packet statistics wasm-compatible
* fixed possible overflow issue in delay controller
* updated wasm-client to be compatible with the current network
* applied same logic to mixfetch client
* removed dead imports
* updated versions
2025-01-15 17:11:17 +00:00
Jędrzej Stuczyński
a2322d6cdf
feature: nym topology revamp ( #5271 )
...
* revamped NymTopology
* wip
* working e2e client
* updated nym-api
* updated nym-node
* updated rest of non-test code
* updated the rest of the codebase
* additional tweaks
* linux clippy fixes + adding additional dummy ipr types for better linting on non-linux targets
2024-12-19 10:44:34 +00:00
Bogdan-Ștefan Neacşu
3521f36374
Include IPINFO_API_TOKEN in nightly CI ( #5285 )
...
* Include IPINFO_API_TOKEN in nightly CI
* Fix beta clippy
2024-12-18 16:46:28 +02:00
dynco-nym
b4f51baf94
Change sqlite journal mode to WAL ( #5213 )
...
* Change sqlite journal mode to WAL
* Synchronous mode & auto vacuum
* Bump probe git ref to 1.1.0
2024-12-16 16:40:02 +01:00
Drazen Urch
84d7004cb2
Add control messages to GatewayTransciver ( #5247 )
...
* Add control messages to GatewayTransciver
* Add forget me flag to clients
* CI gate IPIINFO test
* Handle ForgetMe for client and stats db
* fmt
2024-12-16 15:18:04 +01:00
Bogdan-Ștefan Neacşu
88d6fb4e22
Add fd callback to client core ( #5230 )
...
* Add fd callback to client core
* Include in sdk
* Fix clippy many args
* Method in builder
* Replace Box with Arc
2024-12-16 13:57:34 +02:00
Jędrzej Stuczyński
b813044360
bugfix: make sure to apply gateway score filtering when choosing initial node ( #5256 )
...
* bugfix: make sure to apply gateway score filtering when choosing initial node
* mixfetch build fix
2024-12-13 09:09:56 +00:00
Jędrzej Stuczyński
4e2aa2c0b3
Merge branch 'release/2024.14-crunch' into merge/release/2024.14-crunch
2024-12-10 15:29:26 +00:00