David Emett
a808a3a091
Mixnet integration ( #1346 )
...
See #1345 , <https://github.com/paritytech/substrate/pull/14207 >.
This adds all the necessary mixnet components, and puts them together in
the "kitchen-sink" node/runtime. The components added are:
- A pallet (`frame/mixnet`). This is responsible for determining the
current mixnet session and phase, and the mixnodes to use in each
session. It provides a function that validators can call to register a
mixnode for the next session. The logic of this pallet is very similar
to that of the `im-online` pallet.
- A service (`client/mixnet`). This implements the core mixnet logic,
building on the `mixnet` crate. The service communicates with other
nodes using notifications sent over the "mixnet" protocol.
- An RPC interface. This currently only supports sending transactions
over the mixnet.
---------
Co-authored-by: David Emett <dave@sp4m.net >
Co-authored-by: Javier Viola <javier@parity.io >
2023-10-09 14:56:30 +01:00
Dmitry Markin
8dc3bd729b
Get rid of Peerset compatibility layer ( #14337 )
...
* Move bootnodes from individual `SetConfig`s to `PeersetConfig`
* Move `SetId` & `SetConfig` from `peerset` to `protocol_controller`
* Remove unused `DropReason`
* Move `Message` & `IncomingIndex` from `peerset` to `protocol_controller`
* Restore running fuzz test
* Get rid of `Peerset` in `fuzz` test
* Spawn runners instead of manual polling in `fuzz` test
* Migrate `Protocol` from `Peerset` to `PeerStore` & `ProtocolController`
* Migrate `NetworkService` from `Peerset` to `PeerStore` & `ProtocolController`
* Migrate `Notifications` from `Peerset` to `ProtocolController`s
* Migrate `Notifications` tests from `Peerset` to `ProtocolController`
* Fix compilation of `NetworkService` & `Protocol`
* Fix borrowing issues in `Notifications`
* Migrate `RequestResponse`from `Peerset` to `PeerStore`
* rustfmt
* Migrate request-response tests from `Peerset` to `PeerStore`
* Migrate `reconnect_after_disconnect` test to `PeerStore` & `ProtocolController`
* Fix `Notifications` tests
* Remove `Peerset` completely
* Fix bug with counting sync peers in `Protocol`
* Eliminate indirect calls to `PeerStore` via `Protocol`
* Eliminate indirect calls to `ProtocolController` via `Protocol`
* Handle `Err` outcome from `remove_peers_from_reserved_set`
* Add note about disconnecting sync peers in `Protocol`
* minor: remove unneeded `clone()`
* minor: extra comma removed
* minor: use `Stream` API of `from_protocol_controllers` channel
* minor: remove TODO
* minor: replace `.map().flatten()` with `.flat_map()`
* minor: update `ProtocolController` docs
* rustfmt
* Apply suggestions from code review
Co-authored-by: Aaro Altonen <48052676+altonen@users.noreply.github.com >
* Extract `MockPeerStore` to `mock.rs`
* Move `PeerStore` initialization to `build_network`
* minor: remove unused import
* minor: clarify error message
* Convert `syncs_header_only_forks` test into single-threaded
---------
Co-authored-by: Aaro Altonen <48052676+altonen@users.noreply.github.com >
2023-08-02 13:01:35 +00:00
Marijn Schouten
c9b54e10ff
change HashFor to HashingFor ( #14483 )
...
* change HashFor to HashingFor
* fmt
* ".git/.scripts/commands/fmt/fmt.sh"
---------
Co-authored-by: command-bot <>
2023-07-25 16:24:14 +00:00
Arkadiy Paronyan
d6d9bd9ea3
Encryption support for the statement store ( #14440 )
...
* Added ECIES encryption
* tweaks
* fmt
* Make clippy happy
* Use local keystore
* qed
2023-07-17 18:41:41 +00:00
Dmitry Markin
7d4fd6a442
[minor] Extend logging with SetId in ProtocolController where missing ( #14433 )
2023-06-22 15:23:21 +03:00
Dmitry Markin
4652eaeef8
[network] Extend Notifications logs with SetId where missing ( #14406 )
...
* Extend `Notifications` logs with `SetId` where missing
* Downgrade "Ignoring request to disconnect reserved peer"
* minor: log formatting
2023-06-16 17:01:26 +00:00
Dmitry Markin
186423b695
Reduce logging verbosity when disconnecting an unknown peer ( #14274 )
2023-06-01 12:53:52 +03:00
Dmitry Markin
d4b2bf7394
Incorporate sc-peerset into sc-network ( #14236 )
2023-05-29 20:56:57 +03:00