Commit Graph

7998 Commits

Author SHA1 Message Date
draoi
488b9c8d98 protocol_address: tweak response to receive getaddr
we now prioritize anchorlist connections that match the requested
transports. this is because anchorlist connections may not be on the
whitelist, since we do not allow the refinery to refine existing
(anchorlist) connections. therefore, only sending from the whitelist
would risk not broadcasting the safest nodes.
2024-02-03 09:24:01 +01:00
draoi
1251ad3b38 refinery: don't refine hosts that we are connected to/ trying to connect to
redundant.jpeg
2024-02-03 09:07:42 +01:00
draoi
183717f04e script/lilith_spawns: update to new hostlist usage 2024-02-02 17:48:21 +01:00
zero
62234a8f88 replace info level for test-harness 2024-02-02 16:01:53 +01:00
zero
71ec264e1d fix drk broken by last commit 2024-02-02 15:53:59 +01:00
draoi
821ba475d7 contrib: add TODO 2024-02-02 15:45:29 +01:00
draoi
b1d16e1153 inbound_session: don't stop tasks that haven't been started
fixes a bug in which we would try to stop PingSelfProcess in non-inbound
nodes, resulting in StoppableTask.stop() hanging forever.
2024-02-02 15:41:12 +01:00
draoi
eea75daee9 net::settings: make default transports tcp+tls 2024-02-02 15:41:12 +01:00
draoi
ba8edefb59 net: restructure hostlist removal logic
Previously we would remove a host from the hostlist in two scenarios:

1. When a connected host disconnects
2. When we cannot establish a connection.

However, due to the refinery nodes frequently connect and disconnect
from eachother. This behavior (n.1 above) shouldn't result in entries
being removed from the hostlist.

Further, immediately removing a host when we cannot establish a connection
(n.2) is a more aggressive approach than the previous net code. Previously
we had a quaratine mechanism that allowed us to re-attempt N times before
the host was considered `rejected`.

Following this commit, the hostlist removal mechanism is as follows:

1. Remove a host if the version exchange in register_channel() fails
2. Re-introduce quarantine for outbound::try_connect. This removes a
   host from the hostlist, and then allow multiple subsequent connection
   attempts before marking the host as `rejected`.
2024-02-02 15:41:12 +01:00
draoi
af7ac9edb3 dnet: also render lilith info in the event render loop 2024-02-02 15:41:12 +01:00
draoi
716af31848 dnet+lilith: enable hostlist debugging
display lilith's whitelist, greylist and anchorlist in dnet
2024-02-02 15:41:12 +01:00
draoi
e2a47f99db dnet: fix bug that caused lilith info not to be displayed 2024-02-02 15:41:12 +01:00
zero
9d33a10a0b use proper FuncIds to ref contract funcs such as spend_hook in money 2024-02-02 15:16:03 +01:00
zero
eb635dc3df fix failing DAO test 2024-02-02 12:50:56 +01:00
zero
3fc7ba6e2c fix broken drk compile due to money token call changes 2024-02-02 12:13:14 +01:00
skoupidi
f79bd2de18 sdk, blockchain, validator: removed slot stuff 2024-02-01 19:18:42 +02:00
zero
c99186cc73 critical bug: verify_sigs() should also check inner length of vecs 2024-02-01 17:41:16 +01:00
zero
7edb0cd217 apply DEP 0003: Token Mint Authorization 2024-02-01 17:38:32 +01:00
draoi
ccc6b25754 inbound_session: implement PingSelfProcess
Move the process that pings ourselves and creates a last_seen field
for each of our external addresses into a custom child process of
InboundSession, and remove from ProtocolSeed and ProtocolAddr.
2024-02-01 13:43:30 +01:00
draoi
79512e6dce chore: fix debugs and cleanup 2024-02-01 13:43:30 +01:00
skoupidi
2805f1435c validator: fixed minor encoding/decoding bugs 2024-02-01 14:04:36 +02:00
skoupidi
3e15d146a3 validator/consensus: cleaned up slots logic 2024-02-01 13:31:29 +02:00
skoupidi
4c45c8d592 validator: cleaned up verification and validations methods and merged the two files 2024-01-31 20:21:08 +02:00
skoupidi
ccc3a8e3a7 blockchain/header: derive block version using sdk block_version fn 2024-01-31 19:14:55 +02:00
skoupidi
3355575721 runtime: replaced timekeeper with verifying block height directly 2024-01-31 14:22:51 +02:00
skoupidi
2f5de8e999 runtime: removed slot related fns and added gas cost to util fns 2024-01-31 14:12:29 +02:00
skoupidi
e53ea14531 contract/money/tests/integration: fixed failing test due to erroneous block height 2024-01-30 21:35:30 +02:00
skoupidi
f64c4e5750 contract/*: renamed all slot references to block height 2024-01-30 21:27:46 +02:00
skoupidi
07b47fd521 contract/money/pow_reward: simplyfied call to use last block information directly from database overlay 2024-01-30 20:59:23 +02:00
skoupidi
6b74cebdd0 drk: moved contracts sql stuff from their client to drk directly
Also prefixed table name with their corresponding contract idfff
2024-01-30 15:34:12 +02:00
zero
42a6b92ec6 drk: move coin_blind to the correct position 2024-01-30 13:11:13 +01:00
zero
5876e97d20 spec: update for changes to money coin attributes 2024-01-30 12:28:57 +01:00
zero
85cbf1f152 drk: update for changes to serial renamed to coin_blind 2024-01-30 12:22:07 +01:00
zero
0738b42b1c money: change the coin_attribute serial to coin_blind. We no longer use the serial, and its sole purpose is to blind the coin. Also move it to the end, consistent with all bullas and commits used in darkfi core. 2024-01-30 12:12:56 +01:00
zero
32bf65a1d8 DEP 0003: Token Mint Authorization 2024-01-30 10:39:12 +01:00
skoupidi
4648b8fb26 darkfid/tests: disable pos test 2024-01-29 22:20:38 +02:00
skoupidi
c0f1038277 doc/arch: removed consensus contract related stuff 2024-01-29 21:54:46 +02:00
skoupidi
025912d245 doc/Makefile: use correct darkfid rpc files 2024-01-29 21:49:43 +02:00
skoupidi
16103b84a7 Night of the living dead 2024-01-29 21:41:01 +02:00
zero
92387af2ab book: remove section on parallelized tx verif 2024-01-29 18:01:35 +01:00
draoi
195dfb6935 chore: cargo fmt 2024-01-29 15:31:37 +01:00
draoi
4cb76df1f0 update Cargo.lock 2024-01-29 15:31:37 +01:00
draoi
e9e3bd41ca Revert "channel: safely shutdown the channel when an error is triggered"
This reverts commit 8a01a59b063b3d0dca1eae3963a83dcb52427487.

This commit was wrong because the channel gets shutdown after the receive loop returns Error::ChannelStopped in handle_stop()
2024-01-29 15:31:37 +01:00
draoi
ccf660b924 chore: fix comments and cleanup 2024-01-29 15:31:37 +01:00
draoi
2563c3995c acceptor: upgrade "reached incoming connection limit" to a warning 2024-01-29 15:31:37 +01:00
draoi
ae154de787 chore: fix typo 2024-01-29 15:31:37 +01:00
draoi
e631e8ce68 doc: minor tweak to channel.rs doc 2024-01-29 15:31:37 +01:00
draoi
a21def4f53 refinery: fix redundant channel.stop() call 2024-01-29 15:31:37 +01:00
draoi
589a847205 settings: change inbound_connections default to 10
Setting this to 0 disables inbound sessions by default, even if we have
configured a inbound address.

If we have a inbound address configured, it should be assumed we want to accept inbound sessions.
2024-01-29 15:31:37 +01:00
draoi
7959d9741c channel: safely shutdown the channel when an error is triggered 2024-01-29 15:31:37 +01:00