aboutsummaryrefslogtreecommitdiff
path: root/p2p/src
Commit message (Collapse)AuthorAgeFiles
* p2p: check for the endpoints before listen/connect to themHEADmasterhozan232024-07-166
|
* core: rename EventSys to EventEmitterhozan232024-07-152
|
* p2p: Major refactoring of the handshake protocolhozan232024-07-1514
| | | | | | | Introduce a new protocol InitProtocol which can be used as the core protocol for initializing a connection with a peer. Move the handshake logic from the PeerPool module to the protocols directory and build a handshake protocol that implements InitProtocol trait.
* use shadown variables to name clones and place them between {} when spawning ↵hozan232024-06-298
| | | | new tasks
* Remove redundant type aliaseshozan232024-06-278
|
* Improve async channels error handling and replace unbounded channels with ↵hozan232024-06-271
| | | | | | | | | | | bounded channels Remove all unbounded channels to prevent unbounded memory usage and potential crashes. Use `FuturesUnordered` for sending to multiple channels simultaneously. This prevents the sending loop from blocking if one channel is blocked, and helps handle errors properly.
* update dependencieshozan232024-06-241
|
* p2p/backend: add methods to return inbound/outbound connected peershozan232024-06-244
|
* p2p: use base64 to encode PeerID to stringhozan232024-06-242
|
* p2p/monitor: use struct instead of enum for monitor eventshozan232024-06-246
|
* p2p: fix cargo clippy warningshozan232024-06-012
|
* p2p: WIP rpc server implementation for the p2p monitorhozan232024-05-274
|
* p2p: rename connection.rs to conn_queue.rshozan232024-05-256
|
* p2p: wrap the buckets with mutex in RoutingTablehozan232024-05-234
|
* p2p: add peer pool logs and discovery logs to example/monitor.rshozan232024-05-233
|
* p2p: add rpc server to monitor examplehozan232024-05-231
|
* p2p: add enable_monitor field to Confighozan232024-05-223
|
* p2p: monitor system use core::EventSys instead of pubsub patternhozan232024-05-227
|
* p2p: rexport keypair module from karyon_corehozan232024-05-203
|
* add tokio examples to p2p, jsonrpc, and net crateshozan232024-05-191
|
* add support for tokio & improve net crate apihozan232024-05-1919
|
* core: minor modification to TaskGroup apihozan232024-03-217
|
* core: add the option to create a new task group without providing anhozan232024-03-209
| | | | executor & remove GlobalExecutor type
* net: major cleanup and improvement of the crate apihozan232024-03-133
|
* net: pass `Endpoint` to dial and listen functionshozan232024-03-132
|
* update the links in the README filehozan232024-03-131
|
* update dependencieshozan232024-03-131
|
* upgrade from async-rustls to futures-rustlshozan232024-03-122
|
* p2p/tls_config: minor changehozan232023-12-121
|
* Ensure uniform usage of the name `karyon` across all fileshozan232023-12-0223
|
* net: rename `Listener` trait to `ConnListener`hozan232023-11-301
|
* p2p/discovery: Select the first 8 entries from each bucket during thehozan232023-11-301
| | | | | | | | refresh process Instead of selecting random entries during the refresh process, choose the fist 8 entries from each bucket in the routing table. This ensures that only the oldest entries are refreshed.
* p2p/tls_config: add a small testhozan232023-11-291
|
* core: Move `key_pair` to the `crypto` module and make it a Cargo feature.hozan232023-11-2910
|
* p2p/protocol: improve the Protocol APIhozan232023-11-294
|
* implement TLS for inbound and outbound connectionshozan232023-11-2824
|
* general clean ups for the docshozan232023-11-232
|
* add Docs section to README.md file & add an example to p2p cratehozan232023-11-222
|
* p2p: Improve error handling during handshake:hozan232023-11-228
| | | | | | | | | | Introduce a new entry status, INCOMPATIBLE_ENTRY. Entries with this status will not increase the failure attempts, instead, they will persist in the routing table until replaced by a new peer. This feature is useful for seeding and the lookup process. Add a boolean value to the VerAck message to indicate whether the version is accepted or not.
* net: improve Conn APIhozan232023-11-193
|
* clean up error module and use `transparent` attributehozan232023-11-181
|
* p2p/peer_pool: minor changehozan232023-11-171
|
* p2p: avoid doing too much locking and unlocking for the routing table mutexhozan232023-11-172
|
* improve the TaskGroup APIhozan232023-11-1514
| | | | | | | | | | | the TaskGroup now holds an Executor instead of passing it when calling its spawn method also, define a global executor `Executor<'static>` and use static lifetime instead of a lifetime placeholder This improvement simplify the code for spawning a new task. There is no need to pass the executor around.
* p2p/message: minor change to get_msg_payload macrohozan232023-11-131
|
* p2p: remove net directoryhozan232023-11-1211
|
* p2p: use VecDeque for connection queuehozan232023-11-101
|
* rename crateshozan232023-11-0926