| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
| |
* Renamed ChainManager to BlockChain
* Checkpointing is no longer required and never really properly worked
when the state was corrupted.
|
| |
|
| |
|
| |
|
|\
| |
| | |
all: fix license headers one more time
|
| |
| |
| |
| | |
I forgot to update one instance of "go-ethereum" in commit 3f047be5a.
|
|/
|
|
|
|
|
| |
Genesis release. Closes #1402
Conflicts:
cmd/geth/main.go
|
|
|
|
|
| |
All code outside of cmd/ is licensed as LGPL. The headers
now reflect this by calling the whole work "the go-ethereum library".
|
|
|
|
|
| |
Implemented the --genesis flag thru which we can set a custom genesis
block, including the official Ethereum genesis block.
|
| |
|
|
|
|
|
|
|
|
| |
* Miners do now verify their own header, not their state.
* Changed old putTx and putReceipts to be exported
* Moved writing of transactions and receipts out of the block processer
in to the chain manager. Closes #1386
* Miner post ChainHeadEvent & ChainEvent. Closes #1388
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
The protocol tests were commented out when eth/downloader was introduced.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
- add validation on TxMsg checking for nil
- add test for nil transaction
- add test for zero value transaction (no extra validation needed)
|
|
|
|
|
|
|
| |
- rename Validate -> ValidateFields not to confure consensus block validation
- add nil transaction and nil uncle header validation
- remove bigint field checks: rlp already decodes *big.Int to big.NewInt(0)
- add test for nil header, nil transaction
|
| |
|
|
|
|
|
|
| |
- add validate method to types.Block
- validate after Decode -> error
- add tests for NewBlockMsg
|
|
|
|
|
|
|
|
|
| |
- update blockpool td by subscribing to ChainHeadEvent
- if ahead of best peer, demote it
- addPeer now take own td as current td
- removePeer now take own td as current td
- add relevant tests to peers_test
- eth: backend now calls blockpool with eth.eventMux and chainManager.Td
|
|
|
|
|
| |
I have rewritten the protocol test to use p2p.MsgPipe because
p2p.NewMsg is gone.
|
| |
|
|
|
|
|
|
| |
- protocolversion, networkid global int flags to cli and mist
- fix bug with protocolversion check using wrong db
- log protocolversion & networkid in backend
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
ethersphere-jsonlogs
Conflicts:
eth/block_pool.go
eth/block_pool_test.go
eth/protocol_test.go
miner/worker.go
|
| | |
|
|/
|
|
|
|
| |
- remove blockpool code
- remove blockpool integration test (kinda embarrassing)
- remove errors.go
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
...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.
|
| |
|
|
|
|
|
|
|
|
|
| |
- changed backend interface
- using callbacks for blockPool
- use rlp stream for lazy decoding
- use peer as logger
- add id (peer pubkey) to ethProtocol fields
- add testPeer to protocol test (temporary)
|
| |
|
|
|
|
|
|
|
|
|
| |
- changed backend interface
- using callbacks for blockPool
- use rlp stream for lazy decoding
- use peer as logger
- add id (peer pubkey) to ethProtocol fields
- add testPeer to protocol test (temporary)
|
|
|