| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
This commit introduces a network simulation framework which
can be used to run simulated networks of devp2p nodes. The
intention is to use this for testing protocols, performing
benchmarks and visualising emergent network behaviour.
|
|
|
|
| |
I forgot to update one instance of "go-ethereum" in commit 3f047be5a.
|
|
|
|
|
| |
All code outside of cmd/ is licensed as LGPL. The headers
now reflect this by calling the whole work "the go-ethereum library".
|
| |
|
|
|
|
|
| |
p2p.Msg.ReceivedAt can be used for determining block propagation from
begining to end.
|
| |
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| | |
This is better because protocols might not actually read the payload for
some errors (msg too big, etc.) which can be a pain to test with the old
behaviour.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Message encoding functions have been renamed to catch any uses.
The switch to the new encoder can cause subtle incompatibilities.
If there are any users outside of our tree, they will at least be
alerted that there was a change.
NewMsg no longer exists. The replacements for EncodeMsg are called
Send and SendItems.
|
|/ |
|
| |
|
|
|
|
| |
They got lost in the transition to rlpxFrameRW.
|
|
|
|
|
|
|
|
|
| |
With RLPx frames, the message code is contained in the
frame and is no longer part of the encoded data.
EncodeMsg, Msg.Decode have been updated to match.
Code that decodes RLP directly from Msg.Payload will need
to change.
|
| |
|
| |
|
|
|
|
|
|
| |
The diff is a bit bigger than expected because the protocol handshake
logic has moved out of Peer. This is necessary because the protocol
handshake will have custom framing in the final protocol.
|
|
|
|
|
|
|
|
| |
There are now two deadlines, frameReadTimeout and payloadReadTimeout.
The frame timeout is longer and allows for connections that are idle.
The message timeout is still short and ensures that we don't get stuck
in the middle of a message.
|
|
|
|
| |
The unit test hooks were turned on 'in production'.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Overview of changes:
- ClientIdentity has been removed, use discover.NodeID
- Server now requires a private key to be set (instead of public key)
- Server performs the encryption handshake before launching Peer
- Dial logic takes peers from discover table
- Encryption handshake code has been cleaned up a bit
- baseProtocol is gone because we don't exchange peers anymore
- Some parts of baseProtocol have moved into Peer instead
|
|
|
|
|
|
|
|
|
|
|
|
| |
...and make it a top-level function instead.
The original idea behind having EncodeMsg in the interface was that
implementations might be able to encode RLP data to their underlying
writer directly instead of buffering the encoded data. The encoder
will buffer anyway, so that doesn't matter anymore.
Given the recent problems with EncodeMsg (copy-pasted implementation
bug) I'd rather implement once, correctly.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Whoa, one more big commit. I didn't manage to untangle the
changes while working towards compatibility.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* Miner has been rewritten
* Added new miner pane
* Added option for local txs
* Added option to read from MergeMining contract and list them for
merged mining
|
|
|