draoi
cedde2e9ec
hosts: don't allow manual peers to enter the hostlist via other peers
...
Storing manual peers on the hostlist creates redundancy since we can
never connect to them in Outbound Session or refine them in Refine
Session, so they just pointlessly sit on our greylist forever.
2024-07-12 10:41:55 +02:00
dasman
d2970c8895
event_graph: iterative dfs_topological_sort() instead of recursion
2024-07-12 03:08:17 +03:00
draoi
216794939d
manual_session: sleep when try_register() call fails, then try again
...
Fixes a bug that would cause a death loop when the call to
try_register() fails.
Also removes a duplicate WARN print.
2024-07-11 23:14:21 +02:00
draoi
aa37b87a3e
manual+seedsync_session: unregister() when version exchange fails
2024-07-11 17:26:06 +02:00
parazyd
83600b1adc
darkirc: Update config pointing to a Tor seed node
2024-07-11 14:16:56 +02:00
draoi
3cdec217d1
seedsync: unregister() seed address after failed connection
...
This fixes a bug where failed connections would get stuck in the Connect
state, blocking the seedsync from retrying.
2024-07-11 13:44:59 +02:00
parazyd
26075d753d
darkirc: Update config file with Tor examples
2024-07-11 12:07:15 +02:00
darkfi
64c3f1aa3c
wallet: editbox when text is highlighted and key pressed, use regen_glyphs() since we no longer regen glyphs in redraw()
2024-07-11 11:01:37 +02:00
parazyd
2f97f384e7
net: Use forked Url crate that supports our transport schemes
...
Now IP addresses are properly parsed
2024-07-11 10:56:04 +02:00
draoi
0c8b274505
net: replace LazyWeak with Arc::new_cyclic() and delete system::LazyWeak
...
Also update arch/services.md with the new usage.
2024-07-11 10:25:35 +02:00
dasman
b3f7a9a876
darkirc: queue user privmsgs and send them once DAG is synced
2024-07-11 04:28:31 +03:00
darkfi
327c435e8f
wallet: editbox bugfix, split regen_glyphs() from redraw()
2024-07-10 12:48:07 +02:00
darkfi
f28500c36a
wallet: editbox home/end keys
2024-07-10 12:00:19 +02:00
darkfi
8e54b470bd
wallet: editbox fix race condition
2024-07-10 10:52:13 +02:00
draoi
4cf4fa93d8
doc: add manual blacklist usage to default config
2024-07-09 18:25:12 +02:00
draoi
8ae9e42e71
net: allow control of schemes in the blacklist imported from Settings
2024-07-09 18:25:12 +02:00
parazyd
3d60035238
net/acceptor: Add Tor hidden service address to external_addrs if available
2024-07-09 15:09:30 +02:00
parazyd
f94094e732
net/channel: Attempt to properly parse IPs in Channel::ban()
...
Additionally, skip inbound Tor connections as they're anonymous.
2024-07-09 13:06:25 +02:00
parazyd
3bdae810b3
net/channel: Add helpful debugging error calls
2024-07-09 12:28:36 +02:00
parazyd
27fd3785f8
chore: Update crate dependencies and CI Rust version
2024-07-09 12:20:06 +02:00
parazyd
7945e2eb18
net: Implement mutable Settings which allow dynamic reconfiguration
2024-07-09 11:22:55 +02:00
parazyd
795e2300cb
net: Remove SettingsPtr type alias
2024-07-09 11:16:43 +02:00
draoi
f78af159aa
chore: improve some hosts.rs code documentation
2024-07-09 10:40:21 +02:00
draoi
b735f9ffd9
channel: block all ports when blacklisting an inbound peer
2024-07-09 10:39:29 +02:00
parazyd
60114d71ab
darkwallet: Add license headers
2024-07-09 09:42:39 +02:00
parazyd
46a74e6b60
net: Use AtomicBool for dnet_enabled mark
2024-07-09 09:42:25 +02:00
darkfi
40b4280170
wallet: add empty ChatView stub struct
2024-07-08 13:21:16 +02:00
darkfi
dfd4f43dbc
wallet: editbox add missing on_modify hooks
2024-07-08 13:00:12 +02:00
darkfi
35bd4fc24c
wallet: editbox dont draw selected when start == end, and unfocus event will unset selection
2024-07-08 12:49:13 +02:00
darkfi
baf83715e6
wallet: editbox phone touchscreen highlighting text
2024-07-08 12:35:12 +02:00
darkfi
8a40ac3cf8
wallet: editbox highlighting text with the mouse
2024-07-08 11:07:02 +02:00
draoi
c463537fd2
chore: fix net/ HostRegistry documentation
2024-07-08 10:25:22 +02:00
darkfi
77417cc9b8
wallet: editbox click to focus/unfocus editing
2024-07-07 15:03:05 +02:00
draoi
3c526d179f
hosts: more permissive transitions from HostState::Free
...
This was a bug regarding the following state transition functions:
Free -> Connected
Free -> Move
Inbound connections go directly to Connected (1) and Move (2) in the
following cases- when an inbound connection connects to us (1), when we
blacklist a peer due to missing dispatchers (2).
If we previously had a connection on the same port that was now marked
as HostState::Free in the hostregistry, this would create a panic.
2024-07-07 14:30:06 +02:00
draoi
ab52d14372
hosts: enable the transition from Refine to Move
...
We need to be able to move hosts after refining them, whether that's to
send them to the greylist or to the whitelist.
2024-07-07 12:37:38 +02:00
draoi
3b5273c332
hosts: make unregister() call less dangerous
...
We introduce a new HostState called HostState::Free, which means a host
is freely available for use. This fixes race conditions where multiple threads could try to delete
the entry (using the unregister() call) at the same time.
2024-07-07 12:37:38 +02:00
darkfi
86deef0b5b
wallet: editbox replace highlighted text when typing
2024-07-07 10:13:50 +02:00
draoi
df8c1a8e86
lilith: fix logic error that was causing responsive nodes to be sent to greylist
2024-07-06 20:41:29 +02:00
draoi
3acf49e6a0
net: use standardized methods for net and lilith refinery's
2024-07-06 20:41:29 +02:00
darkfi
1b8e7b3d06
wallet: editbox copy/pasta from clipboard
2024-07-06 12:52:57 +02:00
darkfi
e0336f4a03
wallet: editbox delete/backspace of text (both selected and normal)
2024-07-06 12:40:06 +02:00
darkfi
52e01b443e
wallet: editbox selecting text
2024-07-06 12:24:53 +02:00
darkfi
6442d4f30a
wallet: woo editbox cursor scrolling bitches
2024-07-06 12:07:52 +02:00
darkfi
76d48a1bd1
wallet: replace ((a, b), c) in foo1.iter().zip(foo2.iter()).zip(foo3.iter()) with custom zip3(...) util
2024-07-06 11:27:11 +02:00
darkfi
04ede06c9c
wallet: editbox clip the rendered text properly
2024-07-06 10:45:13 +02:00
draoi
01f3d5d000
net/tests: more efficiently start nodes
2024-07-06 09:17:35 +02:00
draoi
611f6e0454
session: call subscribe_stop() earlier in channel setup
...
Fixes a bug on seedsync_session where due to us quickly stopping
channels after they are formed the Subscription would occasionally miss
the channel.stop() event.
2024-07-06 09:08:32 +02:00
darkfi
750935e156
wallet: editbox clipping rect when regenerating mesh
2024-07-06 08:49:15 +02:00
darkfi
e540f799d3
wallet: text shaping algo, use labels for ambiguous break/continue inside if let block
2024-07-05 14:34:06 +02:00
parazyd
c6227e38e4
net: Create datastore in P2p::new()
2024-07-05 11:17:58 +02:00