Commit Graph

32 Commits

Author SHA1 Message Date
ledgerwatch
12cde41772
Aleut support (Eip1559) ()
* Where I am at

* Refactoring of transaction types

* More refactoring

* Use Homested signer in rpc daemon

* Unified signer

* Continue unified signer

* A bit more

* Fixes and down the rabbit hole...

* More tx pool fixes

* More refactoring fixes

* More fixes'

* more fixes

* More fixes

* More compile fixes

* More RLP hand-writing

* Finish RLP encoding/decoding of transactions

* Fixes to header encoding, start on protocol packets

* Transaction decoding

* Use DecodeTransaction function

* Decoding BlockBodyPacket

* Encode and decode for pool txs

* Start fixing tests

* Introduce SigningHash

* Fixes to SignHash

* RLP encoding fixes

* Fixes for encoding/decoding

* More test fixes

* Fix more tests

* More test fixes

* More test fixes

* Fix core tests

* More fixes for signer

* Fix for tx

* Fixes to string encoding/size

* Fix eip2930 test

* Fix rest of ./tests

* More fixes

* Fix compilation

* More test fixes

* More test fixes

* Test fixes

* More fixes

* Reuse EncodingSize in EncodeRLP for accessList

* Rearrange things in dynamic fee tx

* Add MarshalBinary

* More fixes

* Make V,R,S non-pointers

* More NPE fixes

* More fixes

* Receipt fixes

* Fix core/types

* Fix ./eth

* More compile fixes for tests

* More test fixes

* More test fixes

* Try to see lint errors better

* Try to see lint errors better

* Fix lint

* Debugging eip1559 test

* Fix TestEIP1559Transition test

* Fix NewBlockPacket encoding/decoding

* Fix calculation of TxHash

* Fix perf problem with senders

* Update aleut config values

* Try adding static peers

* Add staticpeers to defaul flags

* Change aleut networkID

* Fix test

Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-22 18:11:37 +01:00
Artem Vorotnikov
afe551ba1c
Remove puppeth & account management () 2021-03-26 21:05:42 +03:00
Alexey Sharp
1ff525e6a3 Fix lints 2021-03-18 08:00:21 +00:00
Alexey Sharp
cdca7f94ad Fix lints 2021-03-17 22:24:46 +00:00
Igor Mandrigin
93babfc480 fix rlp fuzzer issue 2021-03-17 10:44:23 +01:00
Alexey Sharp
d4a71a88f2 Fixes 2021-03-16 16:32:14 +00:00
Igor Mandrigin
7f46f29a97 fix abi fuzzers 2021-03-16 14:33:04 +01:00
Igor Mandrigin
deb1528ca0 fix compilation in runtime_fuzz 2021-03-16 11:57:52 +01:00
Igor Mandrigin
f3d1bfe8ed remove rangeproof fuzzer 2021-03-15 17:38:45 +01:00
Igor Mandrigin
57f2c10d36 remove unneded les fuzzers 2021-03-15 17:32:50 +01:00
Igor Mandrigin
8014fd1a8e remove mentions of go-ethereum 2021-03-15 17:19:45 +01:00
Felföldi Zsolt
fdd4eb38fa tests/fuzzers/les: add fuzzer for les server handler ()
* les: refactored server handler

* tests/fuzzers/les: add fuzzer for les server handler

* tests, les: update les fuzzer

tests: update les fuzzer

tests/fuzzer/les: release resources

tests/fuzzer/les: pre-initialize all resources

* les: refactored server handler and fuzzer

Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
# Conflicts:
#	les/handler_test.go
#	les/peer.go
#	les/protocol.go
#	les/server_handler.go
#	les/test_helper.go
2021-03-10 16:56:49 +01:00
Marius van der Wijden
67f26fad00 fuzzers: added consensys/gurvy library to bn256 differential fuzzer ()
This pr adds consensys' gurvy bn256 variant into the code for differential fuzzing.
# Conflicts:
#	go.mod
#	go.sum
#	tests/fuzzers/bn256/bn256_fuzz.go
2021-03-10 10:08:43 +01:00
Sina Mahmoodi
c376039049 cmd,core,eth,params,tests: define yolov3 + enable EIP-2565 ()
Removes the yolov2 definition, adds yolov3, including EIP-2565. This PR also disables some of the erroneously generated blockchain and statetests, and adds the new genesis hash + alloc for yolov3.
This PR disables the CLI switches for yolo, since it's not complete until we merge support for 2930.
# Conflicts:
#	cmd/evm/internal/t8ntool/execution.go
#	cmd/geth/chaincmd.go
#	cmd/geth/consolecmd.go
#	cmd/geth/main.go
#	cmd/geth/usage.go
#	cmd/utils/flags.go
#	core/state_processor.go
#	core/vm/evm.go
#	core/vm/interpreter.go
#	tests/block_test.go
2021-03-09 13:47:37 +01:00
Marius van der Wijden
ba1cf55943 tests/fuzzers/abi: fixed one-off panic with int.Min64 value ()
* tests/fuzzers/abi: fixed one-off panic with int.Min64 value

* tests/fuzzers/abi: fixed one-off panic with int.Min64 value
2021-03-09 12:46:40 +01:00
Marius van der Wijden
519d6e3edf tests/fuzzers/abi: better test generation ()
* tests/fuzzers/abi: better test generation

* tests/fuzzers/abi: fixed packing issue

* oss-fuzz: enable abi fuzzer
# Conflicts:
#	tests/fuzzers/abi/abifuzzer.go
2021-03-09 10:48:53 +01:00
Martin Holst Swende
1b967fc04a tests/fuzzers: fix false positive in bitutil fuzzer () 2021-03-09 10:12:04 +01:00
Martin Holst Swende
5d418f317b common,crypto: move fuzzers out of core ()
* common,crypto: move fuzzers out of core

* fuzzers: move vm fuzzer out from core

* fuzzing: rework cover package logic

* fuzzers: lint
2021-03-09 10:06:00 +01:00
Péter Szilágyi
693459073e core, eth: split eth package, implement snap protocol ()
This commit splits the eth package, separating the handling of eth and snap protocols. It also includes the capability to run snap sync (https://github.com/ethereum/devp2p/blob/master/caps/snap.md) , but does not enable it by default.

Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
Co-authored-by: Martin Holst Swende <martin@swende.se>
# Conflicts:
#	cmd/geth/misccmd.go
#	cmd/utils/flags.go
#	core/blockchain.go
#	core/blockchain_snapshot_test.go
#	core/forkid/forkid.go
#	core/rawdb/accessors_snapshot.go
#	core/rawdb/schema.go
#	core/state/snapshot/generate.go
#	core/state/statedb.go
#	eth/api_test.go
#	eth/backend.go
#	eth/downloader/downloader.go
#	eth/downloader/downloader_test.go
#	eth/downloader/modes.go
#	eth/downloader/queue.go
#	eth/downloader/statesync.go
#	eth/gen_config.go
#	eth/handler.go
#	eth/handler_test.go
#	eth/helper_test.go
#	eth/peer.go
#	eth/protocol.go
#	eth/protocol_test.go
#	eth/sync.go
#	eth/sync_test.go
#	ethstats/ethstats.go
#	les/client.go
#	les/enr_entry.go
#	les/handler_test.go
#	les/peer.go
#	les/server_handler.go
#	tests/block_test_util.go
#	trie/proof.go
#	trie/proof_test.go
#	trie/trie.go
#	turbo/trie/notary.go
#	turbo/trie/sync_bloom.go
2021-03-08 17:07:38 +01:00
Martin Holst Swende
2135bf3a09 consensus/ethash: implement faster difficulty calculators ()
This PR adds re-written difficulty calculators, which are based on uint256. It also adds a fuzzer + oss-fuzz integration for the new fuzzer. It does differential fuzzing between the new and old calculators.

Note: this PR does not actually enable the new calculators.
# Conflicts:
#	consensus/ethash/consensus_test.go
2021-03-08 14:34:27 +01:00
Martin Holst Swende
2f53a0856e tests/fuzzers/bls1381: add bls fuzzer ()
* added bls fuzzer

* crypto/bls12381: revert bls-changes, fixup fuzzer tests

* fuzzers: split bls fuzzing into 8 different units

* fuzzers/bls: remove (now stale) corpus

* crypto/bls12381: added blsfuzz corpus

* fuzzers/bls12381: fix the bls corpus

* fuzzers: fix oss-fuzz script

* tests/fuzzers: fixups on bls corpus

* test/fuzzers: remove leftover corpus

Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
# Conflicts:
#	crypto/bls12381/fp_test.go
2021-03-08 12:30:14 +01:00
Martin Holst Swende
ea59707577 tests/fuzzers: improve the fuzzers ()
* tests/fuzzers, common/bitutil: make fuzzers use correct returnvalues + remove output

* tests/fuzzers/stacktrie: fix duplicate-key insertion in stacktrie (false positive)

* tests/fuzzers/stacktrie: fix compilation error

* tests/fuzzers: linter nits
# Conflicts:
#	tests/fuzzers/rlp/rlp_fuzzer.go
#	tests/fuzzers/stacktrie/trie_fuzzer.go
2021-03-08 11:44:11 +01:00
Marius van der Wijden
3949c520a4 accounts/abi: ABI explicit difference between Unpack and UnpackIntoInterface ()
* accounts/abi: refactored abi.Unpack

* accounts/abi/bind: fixed error

* accounts/abi/bind: modified template

* accounts/abi/bind: added ToStruct for conversion

* accounts/abi: reenabled tests

* accounts/abi: fixed tests

* accounts/abi: fixed tests for packing/unpacking

* accounts/abi: fixed tests

* accounts/abi: added more logic to ToStruct

* accounts/abi/bind: fixed template

* accounts/abi/bind: fixed ToStruct conversion

* accounts/abi/: removed unused code

* accounts/abi: updated template

* accounts/abi: refactored unused code

* contracts/checkpointoracle: updated contracts to sol ^0.6.0

* accounts/abi: refactored reflection logic

* accounts/abi: less code duplication in Unpack*

* accounts/abi: fixed rebasing bug

* fix a few typos in comments

* rebase on master

Co-authored-by: Guillaume Ballet <gballet@gmail.com>
# Conflicts:
#	accounts/abi/bind/base_test.go
#	accounts/abi/bind/bind_test.go
#	accounts/abi/pack_test.go
#	go.mod
#	mobile/bind.go
2020-10-26 17:16:00 +01:00
Igor Mandrigin
70f6ec3b49 post-rebase fixes 2020-10-06 14:12:09 +02:00
Marius van der Wijden
f6c97d1df1 tests/fuzzers/abi: add fuzzer for fuzzing package accounts/abi ()
* tests/fuzzers/abi: added abi fuzzer

* accounts/abi: fixed issues found by fuzzing

* tests/fuzzers/abi: update fuzzers, added repro test

* tests/fuzzers/abi: renamed abi_fuzzer to abifuzzer

* tests/fuzzers/abi: updated abi fuzzer

* tests/fuzzers/abi: updated abi fuzzer

* accounts/abi: minor style fix

* go.mod: added go-fuzz dependency

* tests/fuzzers/abi: updated abi fuzzer

* tests/fuzzers/abi: make linter happy

* tests/fuzzers/abi: make linter happy

* tests/fuzzers/abi: comment out false positives
# Conflicts:
#	go.mod
#	go.sum
2020-10-06 14:12:09 +02:00
Martin Michlmayr
732a20d468 all: fix typos in comments ()
# Conflicts:
#	accounts/abi/bind/backends/simulated.go
#	cmd/puppeth/module_dashboard.go
#	core/blockchain_test.go
#	core/rawdb/chain_iterator.go
#	core/state/snapshot/difflayer.go
#	core/state/snapshot/iterator.go
#	core/state/snapshot/iterator_fast.go
#	core/state/snapshot/snapshot.go
#	core/state/snapshot/wipe.go
#	core/tx_pool.go
#	les/clientpool.go
#	les/peer.go
#	mobile/doc.go
#	trie/committer.go
#	trie/database.go
2020-06-15 19:38:13 +03:00
Andrew Ashikhmin
33c28f7fac
[GC] uint256 rather than big.Int in Transaction ()
* uint256 in rlp

* uint256 rather than big.Int in Transation

* linters

* more linters

* still linters

* Reduce garbage in writeUint256

* Experiment with GC in writeByteArray
2020-06-04 08:43:08 +01:00
Igor Mandrigin
edcd16c7ab post-merge fixups 2020-02-27 17:22:25 +03:00
Péter Szilágyi
748c8063a8 eth: rework tx fetcher to use O(1) ops + manage network requests 2020-02-27 17:21:20 +03:00
Igor Mandrigin
785d0eafd8 post-rebase fixups v1.9.10 2020-01-30 13:36:30 +02:00
Gerald Nash
cce5760cbe Change file extension of the ./tests/fuzzers README () 2020-01-30 13:36:30 +02:00
Martin Holst Swende
f092171f7a tests/fuzzers: fuzzbuzz fuzzers for keystore, rlp, trie, whisper ()
* fuzzers: fuzzers for keystore, rlp, trie, whisper (cred to @guidovranken)

* fuzzers: move fuzzers to testdata

* testdata/fuzzers: documentation

* testdata/fuzzers: corpus for rlp

* tests/fuzzers: fixup
2020-01-30 13:36:30 +02:00