Commit Graph

1936 Commits

Author SHA1 Message Date
aggstam
0800757693 drk2: initialize schemas 2024-01-20 13:42:09 +01:00
aggstam
f5a9cf3e96 drk: drk rewritte skeleton added 2024-01-20 13:42:09 +01:00
parazyd
d3fae80d5a chore: Update copyright year in license headers 2024-01-18 19:30:56 +01:00
aggstam
c7248f44f6 darkfid2: parse network config directly from the config file, not as flattened arg 2024-01-18 19:30:31 +01:00
aggstam
efe6f39041 darkfid2: use minerd to mine blocks, validator: cleaned up threads info as its not longer required 2024-01-18 19:30:31 +01:00
parazyd
31d0d2f617 validator: Configurable fee verification, incomplete
It's now only used in add_transactions(), but needs to be in other
places as well.
2024-01-18 19:30:31 +01:00
parazyd
4ec1daa589 chore: Enable some additional arti-client crate features
Additionally perform a dependency update.
2024-01-18 19:30:31 +01:00
parazyd
7240e6251f chore: Clippy lints 2024-01-18 19:30:30 +01:00
parazyd
77f3c0d079 net: Port from deprecated async-rustls to futures-rustls.
This is also a protocol-breaking change. We now have a bit looser
certificate verification that does not append the base32-encoded
public key into the altName.
2024-01-18 19:30:30 +01:00
parazyd
857ebb42bf chore: Update crate dependencies 2024-01-18 19:30:30 +01:00
Dastan-glitch
25e696e03b fix & update darkirc test script 2024-01-18 19:30:30 +01:00
Dastan-glitch
da8d143ef1 fix&update Twitter bot 2024-01-18 19:30:30 +01:00
lunar-mining
f3361db4c4 lilith: change hostlist paths on default config 2024-01-17 14:31:38 +01:00
lunar-mining
eda5c69af4 lilith: add whitelist_refinery task
Lilith now periodically pings nodes on its whitelist, updating their
last_seen field if they are active, otherwise downgrading them to
greylist.

This is to prevent Lilith from sharing inactive peers with other hosts
when it shares its whitelist.
2024-01-17 14:27:51 +01:00
lunar-mining
c7cf7d861d lilith: change no hostlist warning to fatal panic 2024-01-10 14:53:29 +01:00
lunar-mining
995ff6f6c2 lilith: add hostlist path to NetInfo and default config 2023-12-29 17:29:26 +01:00
lunar-mining
b456d8f5ec lilith: remove load and save host functionality (made redundant by greylist upgrade) 2023-12-29 17:28:15 +01:00
lunar-mining
065f254661 lilith: comment out broken load_hosts code and add FIXME note 2023-12-29 17:25:44 +01:00
lunar-mining
0639e9bdf7 net: working greylist protocol
Working on this commit:

* Nodes connect to a seed node, do ProtocolAddr, ping themselves and send over their ADDR if the address is reachable.
* Seed nodes add addresses into greylist, probe them to make sure they're reachable, then promote to whitelist and send to other peers.
* On receiving whitelisted addresses, nodes add to greylist and after performing refinery process, promote to whitelist.

Still TODO:

* reimplement address filtering
* test: unstable_sort_by_key
* implement "anchor" connections when we've already established a connection to a node
* keep track of how many times we ping ourselves to avoid redundant self ping
* idle handshake protocol
2023-12-29 17:21:17 +01:00
lunar-mining
748c659f93 lilith: fix warnings 2023-12-29 17:20:38 +01:00
lunar-mining
de743a03b6 lilith: remove all peerlist filtering logic 2023-12-29 17:19:22 +01:00
lunar-mining
491ad0a318 net: add debug statements 2023-12-29 17:14:30 +01:00
lunar-mining
cf3642fb3a net/ lilith: change last_seen to use UNIXEPOCH instead of SystemTime 2023-12-29 17:14:20 +01:00
lunar-mining
406a37bbb4 net: only run GreylistRefinery if the greylist is not empty. also properly initalize Weak<OutboundSession> 2023-12-29 17:14:09 +01:00
lunar-mining
a19e20e006 net: cleanup 2023-12-29 17:13:49 +01:00
lunar-mining
4f0c4cdc0a net/lilith: move refresh_whitelist() process out of hosts and back into lilith. 2023-12-29 17:13:39 +01:00
lunar-mining
2c01db5270 net: migrate outbound sessions over to new protocol. also replace lilith periodic_purge with periodic_cleanse.
periodic_cleanse doesn't remove any connections, it simply updates the
last_seen field when it is able to establish a connection, per:
2023-12-29 17:13:07 +01:00
lunar-mining
9a09e8c6cd net: remove HostPtr from ProtocolVersion and update probe_node() 2023-12-29 17:12:45 +01:00
lunar-mining
7952b8ad41 lilith: store last_seen in host list. also change outbound_session to run new protocol 2023-12-29 17:12:28 +01:00
Dastan-glitch
3cc972c780 bin/darkirc: add tiny test bot 2023-12-25 15:33:56 +03:00
aggstam
15c44bd7bb tx: use DarkForest in TransactionBuilder 2023-12-22 20:49:40 +02:00
Dastan-glitch
bf65de25ad bin/tau: remove commented/unused code 2023-12-22 01:22:08 +03:00
aggstam
a4ba0b1f6b validator: producer tx on first instead of last position in block txs vector 2023-12-19 21:41:13 +02:00
parazyd
e11d8c2c80 darkfid: Port serialization to async functions 2023-12-19 18:48:20 +01:00
x
e5e105ca40 update darkirc README 2023-12-19 13:27:11 +00:00
Dastan-glitch
3fafd85d3c bin/tau: more informative connection error with daemon 2023-12-19 06:06:50 +03:00
aggstam
e7857b0a30 darkfid2/task/miner: integrated new TransactionBuilder to miner tx 2023-12-18 16:35:06 +02:00
Dastan-glitch
54108b7513 bin/genev: update tmux test script 2023-12-18 05:18:39 +03:00
Dastan-glitch
a6aa24920e bin/genev: update event_graph synced flag when we skip sync 2023-12-18 05:17:58 +03:00
parazyd
a94858174a darkirc: Only build the rust bin with the make target 2023-12-14 12:05:38 +01:00
Dastan-glitch
c3f0ef5577 bin/tau: update event_graph synced flag when we skip sync 2023-12-14 11:45:33 +01:00
aggstam
b1821df428 darkirc: update event_graph synced flag when we skip sync 2023-12-14 11:45:32 +01:00
aggstam
cdaddfbfe2 event_graph: introduce layers to the DAG
Each event corresponds to a specific layer(height) in the dag, making identifying and preventing cycles way easier, as all parents must exist in previous layers. Additionally, propagation and sync gremlins have been eliminated, and proper validations added
2023-12-14 11:45:32 +01:00
parazyd
01c883b0d4 darkfid: Improve code style of RequestHandler 2023-12-14 08:52:48 +01:00
parazyd
82c7ef4e0c darkfid: Add merge_mining_get_chain_id RPC method. 2023-12-14 08:49:54 +01:00
parazyd
b48b58af03 chore: Clippy lints 2023-12-13 10:20:38 +01:00
parazyd
b23021e3a1 chore: Update crate dependencies 2023-12-13 10:14:43 +01:00
parazyd
5a526fe10e swapd: Add project skeleton 2023-12-07 23:43:45 +01:00
parazyd
295c8dcff9 chore: Update crate dependencies 2023-12-04 19:58:59 +01:00
parazyd
df0992b5f7 mmproxy: Deduplicate and clean up code 2023-12-04 19:51:39 +01:00