Zahary Karadjov
589a3f06df
Fix an error introduced during rebasing
2020-01-21 01:26:57 +02:00
Zahary Karadjov
07d329acb8
Wire-up the peer dialing loop and introduce --max-peers option
2020-01-21 01:26:57 +02:00
Zahary Karadjov
52878405b7
Integrate Discovery V5 and support ENR bootstrap records
2020-01-21 01:26:57 +02:00
Ștefan Talpalaru
2f68ee0ffe
new libp2p API
2020-01-13 20:26:19 +01:00
Ștefan Talpalaru
5d1e20012a
import base58 from stew
2020-01-13 20:02:29 +01:00
Zahary Karadjov
98656377a3
Eliminate the code duplication in the LibP2P back-ends
2019-12-10 15:02:16 +02:00
Zahary Karadjov
889031453f
The beacon node can be compiled with the LibP2P native back-end
...
This hasn't been tested yet even in local sim.
2019-12-10 15:02:16 +02:00
Ștefan Talpalaru
7682a010a9
remove getCurrentExceptionMsg()
2019-12-02 22:06:42 +02:00
Zahary Karadjov
4c2ded25a6
Add detailed tracing for blocks by range requests
2019-11-26 02:45:25 +02:00
Jacek Sieka
14712bbbdc
random warning fixes
2019-11-15 12:05:18 +01:00
Yuriy Glukhov
9b39c792d0
Revert f79f9deeb3
a0fbf5464a
94a9c51d8a
( #523 )
2019-11-06 16:56:54 +02:00
cheatfate
94a9c51d8a
Initial commit.
2019-11-06 16:41:23 +02:00
Zahary Karadjov
021661180b
Use the latest nim-eth
2019-10-23 19:37:06 +03:00
Zahary Karadjov
1555efd9d8
Implement the latest modification of the spec
2019-09-27 19:10:37 +03:00
Zahary Karadjov
37043f0d91
Handle gracefully a pre-mature closing of a libp2p stream by another peer
2019-09-27 19:10:24 +03:00
Zahary Karadjov
b5fad0c9e8
Add more diagnostic for crashes during SSZ serialization
2019-09-27 19:07:22 +03:00
Zahary Karadjov
cdff79ec6d
More sync fixes
...
* Fix IncompleteData issues brought by the new spec-compliant stream closing
* Fix logic errors in the sync algorithms
2019-09-10 09:49:54 -04:00
Zahary Karadjov
886b92319f
Implement the response size limits
2019-09-10 09:49:54 -04:00
Zahary Karadjov
a83aa83644
Working BeaconSync
...
Changes:
* Do not send separate network packets for response codes and msg
len prefixes
* Close streams according to the spec
* Implement more timeouts according to the spec
* Make hello requests during syncing to update our knowledge of
the head block of the other peer.
2019-09-10 09:49:54 -04:00
Zahary Karadjov
9dec05f9c9
Sending chunked responses
2019-09-10 09:49:54 -04:00
Zahary Karadjov
b120a60493
Reading chunked responses
2019-09-10 09:49:54 -04:00
Zahary Karadjov
2bbfa8c877
Changes related to the new ETH interop spec
...
* Hello is no longer a handshake message
(all handshakes related code was deleted for clarity)
* Deal with the single-parameter inlining defined in the new spec
2019-09-10 09:49:54 -04:00
Zahary Karadjov
5ce50b3aca
Implement the latest networking spec
...
https://github.com/ethereum/eth2.0-specs/pull/1328
2019-08-07 05:22:28 +03:00
Jacek Sieka
b9e62a1f6c
std_shims -> stew
2019-07-07 11:53:58 +02:00
Zahary Karadjov
69f3095fac
Remove temp debugging code; Quit if you fail to connect to the network
2019-06-24 19:38:19 +03:00
Zahary Karadjov
31baa77742
Restore building with chronicles_sinks=json
2019-06-24 19:38:19 +03:00
Zahary Karadjov
0116bdaed7
temporary code to debug issues with the testnet bootstrap node
2019-06-24 19:38:19 +03:00
Zahary Karadjov
c751285112
Implement all libp2p_native response codes as specified in the latest proposal
2019-06-24 05:34:22 +03:00
Zahary Karadjov
84afb77b27
Restore compilation with libp2p_native after the latest changes in the spec back-end
2019-06-24 05:34:22 +03:00
Zahary Karadjov
e228c2dbcb
Implement the even/odd request ID scheme; Handle more edge cases; Break the cyclic imports
2019-06-24 05:34:22 +03:00
Zahary Karadjov
15fdf78d6a
[LibP2P] Persistent network key for the bootstrap node
2019-06-24 05:34:22 +03:00
Zahary Karadjov
12e9367f78
Improved error handling; Simple test case for connecting 2 peers
2019-06-24 05:34:22 +03:00
Zahary Karadjov
877b22cfb8
Share more code between the libp2p backends
2019-06-24 05:34:21 +03:00
Zahary Karadjov
87601a5eae
Share more code between the libp2p backends
2019-06-24 05:34:21 +03:00
Zahary Karadjov
3b166be166
Restore compilation in RLPx mode; More libp2p progress
2019-06-24 05:34:21 +03:00
Zahary Karadjov
e177d17762
Further simplifications
2019-06-24 05:34:21 +03:00
Zahary Karadjov
c060c0fc5d
Simplified the 'spec' back-end by movign more logic into the shared DSL module
2019-06-24 05:34:21 +03:00
Zahary Karadjov
ea4690d567
A new P2P backend implementing the libp2p networking according to the official spec
2019-06-24 05:34:21 +03:00
Zahary Karadjov
f4a96bc3f3
[WIP] Restore the Lib2P2 builds and implement the latest wire spec
...
Depends on https://github.com/status-im/nim-eth/pull/54
2019-06-24 05:34:21 +03:00
Zahary Karadjov
6bb38095c9
Command-line and data storage handling for testnets
2019-03-18 12:45:29 +02:00
Zahary Karadjov
903cb8a8b5
A LibP2P-based networking stack;
...
To enable it, comment out the 'withLibp2p' line in nim.cfg
The history was squashed in order to remove an accidentally
commited binary file.
Other changes:
* SSZ was adapted to use the common serialization framework
* gossibsup.subscribe is not using async handlers at the moment
and this allowed me to simplify it
2019-03-12 13:36:55 +02:00