aboutsummaryrefslogtreecommitdiffstats
path: root/core/types
Commit message (Collapse)AuthorAgeFilesLines
* core: refactor genesis handlingFelix Lange2017-03-231-14/+0
| | | | | | | | | | | | | | | | | | | | | | | | This commit solves several issues concerning the genesis block: * Genesis/ChainConfig loading was handled by cmd/geth code. This left library users in the cold. They could specify a JSON-encoded string and overwrite the config, but didn't get any of the additional checks performed by geth. * Decoding and writing of genesis JSON was conflated in WriteGenesisBlock. This made it a lot harder to embed the genesis block into the forthcoming config file loader. This commit changes things so there is a single Genesis type that represents genesis blocks. All uses of Write*Genesis* are changed to use the new type instead. * If the chain config supplied by the user was incompatible with the current chain (i.e. the chain had already advanced beyond a scheduled fork), it got overwritten. This is not an issue in practice because previous forks have always had the highest total difficulty. It might matter in the future though. The new code reverts the local chain to the point of the fork when upgrading configuration. The change to genesis block data removes compression library dependencies from package core.
* core/types: handle nil ChainId in NewEIP155SignerFelix Lange2017-03-231-0/+3
| | | | | | All uses of ChainConfig.ChainId eventually end up in NewEIP155Signer. This fixes the case where users forget to set the ChainId in their config.
* core/types: use gencodec for JSON marshaling codeFelix Lange2017-03-079-312/+510
|
* common/hexutil: implement TextMarshaler, TextUnmarshalerFelix Lange2017-03-022-12/+12
| | | | | | | | | | | | | This commit makes the wrapper types more generally applicable. encoding.TextMarshaler is supported by most codec implementations (e.g. for yaml). The tests now ensure that package json actually recognizes the custom marshaler implementation irrespective of how it is implemented. The Uint type has new tests, too. These are tricky because uint size depends on the CPU word size. Turns out that there was one incorrect case where decoding returned ErrUint64Range instead of ErrUintRange.
* all: unify big.Int zero checks, use common/math in more places (#3716)Felix Lange2017-02-283-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * common/math: optimize PaddedBigBytes, use it more name old time/op new time/op delta PaddedBigBytes-8 71.1ns ± 5% 46.1ns ± 1% -35.15% (p=0.000 n=20+19) name old alloc/op new alloc/op delta PaddedBigBytes-8 48.0B ± 0% 32.0B ± 0% -33.33% (p=0.000 n=20+20) * all: unify big.Int zero checks Various checks were in use. This commit replaces them all with Int.Sign, which is cheaper and less code. eg templates: func before(x *big.Int) bool { return x.BitLen() == 0 } func after(x *big.Int) bool { return x.Sign() == 0 } func before(x *big.Int) bool { return x.BitLen() > 0 } func after(x *big.Int) bool { return x.Sign() != 0 } func before(x *big.Int) int { return x.Cmp(common.Big0) } func after(x *big.Int) int { return x.Sign() } * common/math, crypto/secp256k1: make ReadBits public in package math
* common: move big integer math to common/math (#3699)Felix Lange2017-02-271-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * common: remove CurrencyToString Move denomination values to params instead. * common: delete dead code * common: move big integer operations to common/math This commit consolidates all big integer operations into common/math and adds tests and documentation. There should be no change in semantics for BigPow, BigMin, BigMax, S256, U256, Exp and their behaviour is now locked in by tests. The BigD, BytesToBig and Bytes2Big functions don't provide additional value, all uses are replaced by new(big.Int).SetBytes(). BigToBytes is now called PaddedBigBytes, its minimum output size parameter is now specified as the number of bytes instead of bits. The single use of this function is in the EVM's MSTORE instruction. Big and String2Big are replaced by ParseBig, which is slightly stricter. It previously accepted leading zeros for hexadecimal inputs but treated decimal inputs as octal if a leading zero digit was present. ParseUint64 is used in places where String2Big was used to decode a uint64. The new functions MustParseBig and MustParseUint64 are now used in many places where parsing errors were previously ignored. * common: delete unused big integer variables * accounts/abi: replace uses of BytesToBig with use of encoding/binary * common: remove BytesToBig * common: remove Bytes2Big * common: remove BigTrue * cmd/utils: add BigFlag and use it for error-checked integer flags While here, remove environment variable processing for DirectoryFlag because we don't use it. * core: add missing error checks in genesis block parser * common: remove String2Big * cmd/evm: use utils.BigFlag * common/math: check for 256 bit overflow in ParseBig This is supposed to prevent silent overflow/truncation of values in the genesis block JSON. Without this check, a genesis block that set a balance larger than 256 bits would lead to weird behaviour in the VM. * cmd/utils: fixup import
* core/types: add unittest for tx json serialization (#3609)bas-vk2017-01-271-1/+43
|
* core/types: make Transaction zero value printable (#3595)Felix Lange2017-01-241-14/+18
|
* types: bugfix invalid V derivation on tx json unmarshal (#3594)bas-vk2017-01-212-2/+3
|
* eth: accept leading zeros for nonce parameter of submitWork (#3558)Felix Lange2017-01-131-2/+2
|
* all: fix issues reported by honnef.co/go/simple/cmd/gosimpleFelix Lange2017-01-071-7/+1
|
* Merge pull request #3516 from fjl/types-drop-sign-ecdsaPéter Szilágyi2017-01-064-50/+9
|\ | | | | core/types: remove redundant SignECDSA wrappers, rename to SignTx
| * core/types: remove redundant SignECDSA wrappers, rename to SignTxFelix Lange2017-01-054-50/+9
| |
* | core/vm: move Log to core/typesFelix Lange2017-01-064-13/+326
|/ | | | | | | | This significantly reduces the dependency closure of ethclient, which no longer depends on core/vm as of this change. All uses of vm.Logs are replaced by []*types.Log. NewLog is gone too, the constructor simply returned a literal.
* accounts, core, crypto, internal: use normalised V during signature handling ↵Péter Szilágyi2017-01-054-86/+23
| | | | | | | | | (#3455) To address increasing complexity in code that handles signatures, this PR discards all notion of "different" signature types at the library level. Both the crypto and accounts package is reduced to only be able to produce plain canonical secp256k1 signatures. This makes the crpyto APIs much cleaner, simpler and harder to abuse.
* core/types: Document Transaction.To (#3366)Steven Roose2016-11-291-0/+2
|
* core/types: use package hexutil for JSON handlingFelix Lange2016-11-286-392/+40
|
* core, core/types: refactored tx chain id checking (#3257)Jeffrey Wilcke2016-11-152-2/+46
|\ | | | | | | | | | | | | | | * core, core/types: refactored tx chain id checking Refactored explicit chain id checking in to the Sender deriviation method * cmd/utils, params: define chain ids
| * core, core/types: refactored tx chain id checkingJeffrey Wilcke2016-11-142-2/+46
| | | | | | | | Refactored explicit chain id checking in to the Sender deriviation method
* | mobile: initial wrappers for mobile supportPéter Szilágyi2016-11-141-2/+2
| |
* | core/types: turn off nonce checking for Call messagesZsolt Felfoldi2016-11-141-15/+18
|/
* core/types, params: EIP#155Jeffrey Wilcke2016-11-136-115/+641
|
* all: update license informationFelix Lange2016-11-091-0/+16
|
* core/types: remove header accessorsFelix Lange2016-11-091-9/+0
| | | | | | These accessors were introduced by light client changes, but the only method that is actually used is GetNumberU64. This commit replaces all uses of .GetNumberU64 with .Number.Uint64.
* light: light chain, VM env and tx poolZsolt Felfoldi2016-11-091-0/+9
|
* internal/ethapi: add personal_sign and fix eth_sign to hash message (#2940)bas-vk2016-10-293-4/+6
| | | | | | | | | | | | | | | | | | | | This commit includes several API changes: - The behavior of eth_sign is changed. It now accepts an arbitrary message, prepends the well-known string \x19Ethereum Signed Message:\n<length of message> hashes the result using keccak256 and calculates the signature of the hash. This breaks backwards compatability! - personal_sign(hash, address [, password]) is added. It has the same semantics as eth_sign but also accepts a password. The private key used to sign the hash is temporarily unlocked in the scope of the request. - personal_recover(message, signature) is added and returns the address for the account that created a signature.
* core/types: renamed receiptRoot to receiptsRootBas van Kervel2016-10-052-5/+5
|
* core/types: add core type marshal methods tooPéter Szilágyi2016-09-084-0/+131
|
* core/types, miner: switch over to the grouped tx setsPéter Szilágyi2016-09-022-32/+58
|
* core, eth, internal, miner: optimize txpool for quick opsPéter Szilágyi2016-09-022-21/+13
|
* core/types, core/vm: improve docs, add JSON marshaling methodsFelix Lange2016-08-046-78/+462
| | | | | | | | In this commit, core/types's types learn how to encode and decode themselves as JSON. The encoding is very similar to what the RPC API uses. The RPC API is missing some output fields (e.g. transaction signature values) which will be added to the API in a later commit. Some fields that the API generates are ignored by the decoder methods here.
* rpc: refactor subscriptions and filtersBas van Kervel2016-08-171-0/+22
|
* core: added CheckNonce() to Message interfacezsfelfoldi2016-07-111-0/+1
|
* eth: enable bad block reportsFelix Lange2016-05-251-2/+4
| | | | | | | | | | | | We used to have reporting of bad blocks, but it was disabled before the Frontier release. We need it back because users are usually unable to provide the full RLP data of a bad block when it occurs. A shortcoming of this particular implementation is that the origin peer is not tracked for blocks received during eth/63 sync. No origin peer info is still better than no report at all though.
* core: Simplify bloom9 tests with available convenience method `TestBytes`Fabio Berger2016-05-231-2/+2
|
* core, core/types, eth: add and use Block.BodyFelix Lange2016-04-151-0/+3
| | | | | This fixes a few uses of unkeyed Body literals which go vet was complaining about.
* core: various typosLeif Jurvetson2016-03-162-3/+3
|
* all: Rename crypto.Sha3{,Hash}() to crypto.Keccak256{,Hash}()Ricardo Catalinas Jiménez2016-02-223-3/+3
| | | | As we aren't really using the standarized SHA-3
* core, core/vm, crypto: fixes for homesteadJeffrey Wilcke2016-02-181-1/+22
| | | | | | * Removed some strange code that didn't apply state reverting properly * Refactored code setting from vm & state transition to the executioner * Updated tests
* parmas, crypto, core, core/vm: homestead consensus protocol changesGustav Simonsson2016-02-181-3/+18
| | | | | | | | * change gas cost for contract creating txs * invalidate signature with s value greater than secp256k1 N / 2 * OOG contract creation if not enough gas to store code * new difficulty adjustment algorithm * new DELEGATECALL op code
* core, core/types, miner: fix transaction nonce-price combo sortPéter Szilágyi2016-01-222-16/+126
|
* core/state, core/types use package rlp for state, receipt serialisationFelix Lange2015-12-181-9/+6
|
* rpc: new RPC implementation with pub/sub supportBas van Kervel2015-12-142-0/+8
|
* core, eth, rpc: split out block validator and state processorJeffrey Wilcke2015-11-181-25/+0
| | | | | | | | | | | | This removes the burden on a single object to take care of all validation and state processing. Now instead the validation is done by the `core.BlockValidator` (`types.Validator`) that takes care of both header and uncle validation through the `ValidateBlock` method and state validation through the `ValidateState` method. The state processing is done by a new object `core.StateProcessor` (`types.Processor`) and accepts a new state as input and uses that to process the given block's transactions (and uncles for rewords) to calculate the state root for the next block (P_n + 1).
* core, eth, trie: fix data races and merge/review issuesPéter Szilágyi2015-10-211-5/+5
|
* eth/downloader: concurrent receipt and state processingPéter Szilágyi2015-10-191-0/+2
|
* core, eth: receipt chain reconstructionPéter Szilágyi2015-10-192-7/+2
|
* core: differentiate receipt concensus and storage decodingPéter Szilágyi2015-10-192-49/+75
|
* eth/downloader: add fast and light sync strategiesPéter Szilágyi2015-10-191-5/+5
|
* core: support inserting pure header chainsPéter Szilágyi2015-10-191-7/+9
|
* core, eth/filters, miner, xeth: Optimised log filteringJeffrey Wilcke2015-10-173-34/+76
| | | | | | | Log filtering is now using a MIPmap like approach where addresses of logs are added to a mapped bloom bin. The current levels for the MIP are in ranges of 1.000.000, 500.000, 100.000, 50.000, 1.000. Logs are therefor filtered in batches of 1.000.
* cmd/evm, core/vm, test: refactored VM and coreJeffrey Wilcke2015-10-043-13/+13
| | | | | | | | | | | | | | | | | * Moved `vm.Transfer` to `core` package and changed execution to call `env.Transfer` instead of `core.Transfer` directly. * core/vm: byte code VM moved to jump table instead of switch * Moved `vm.Transfer` to `core` package and changed execution to call `env.Transfer` instead of `core.Transfer` directly. * Byte code VM now shares the same code as the JITVM * Renamed Context to Contract * Changed initialiser of state transition & unexported methods * Removed the Execution object and refactor `Call`, `CallCode` & `Create` in to their own functions instead of being methods. * Removed the hard dep on the state for the VM. The VM now depends on a Database interface returned by the environment. In the process the core now depends less on the statedb by usage of the env * Moved `Log` from package `core/state` to package `core/vm`.
* core, trie: new trieFelix Lange2015-09-231-7/+8
|
* core, core/types: readd transactions after chain re-orgJeffrey Wilcke2015-09-221-1/+23
| | | | | | | | | | | | | | Added a `Difference` method to `types.Transactions` which sets the receiver to the difference of a to b (NOTE: not a **and** b). Transaction pool subscribes to RemovedTransactionEvent adding back to those potential missing from the chain. When a chain re-org occurs remove any transactions that were removed from the canonical chain during the re-org as well as the receipts that were generated in the process. Closes #1746
* Merge pull request #1789 from Gustav-Simonsson/core_remove_unused_functionsJeffrey Wilcke2015-09-121-4/+0
|\ | | | | core, core/vm, core/state: remove unused functions
| * core, core/vm, core/state: remove unused functionsGustav Simonsson2015-09-111-4/+0
| |
* | core: split out TD from database and all internalsPéter Szilágyi2015-09-111-16/+19
| |
* | core, eth: split the db blocks into headers and bodiesPéter Szilágyi2015-09-111-0/+4
|/
* Merge pull request #1701 from karalabe/eth62-sync-rebaseFelix Lange2015-08-271-0/+14
|\ | | | | eth: implement eth/62 synchronization logic
| * eth: port the synchronisation algo to eth/62Péter Szilágyi2015-08-251-0/+14
| |
* | Add tests for uncle timestamps and refactor timestamp typeGustav Simonsson2015-08-252-4/+7
|/
* miner, core: sort txs by price, nonceJeffrey Wilcke2015-08-051-0/+19
|
* improved error detection and handling for NewTransactionFromBytesBas van Kervel2015-07-291-9/+0
| | | | integrated review comments
* Merge pull request #1515 from fjl/license-fixesJeffrey Wilcke2015-07-289-9/+9
|\ | | | | all: fix license headers one more time
| * all: fix license headers one more timeFelix Lange2015-07-249-9/+9
| | | | | | | | I forgot to update one instance of "go-ethereum" in commit 3f047be5a.
* | Merge pull request #1510 from fjl/license-fixesJeffrey Wilcke2015-07-239-36/+36
|\| | | | | all: license fixes
| * all: update license headers to distiguish GPL/LGPLFelix Lange2015-07-239-36/+36
| | | | | | | | | | All code outside of cmd/ is licensed as LGPL. The headers now reflect this by calling the whole work "the go-ethereum library".
* | core: fix an RLP encoding data race due to deep struct copyPéter Szilágyi2015-07-231-2/+2
|/
* all: add some godoc synopsis commentsFelix Lange2015-07-071-0/+1
|
* all: update license informationFelix Lange2015-07-079-0/+144
|
* core, eth, rpc: proper gas used. Closes #1417Jeffrey Wilcke2015-07-071-2/+4
| | | | Added some additional backward compatibility code for old receipts
* core, miner: removed vm errors from consensus err checkingJeffrey Wilcke2015-07-061-1/+3
| | | | | Removed VM errors from the consensus errors. They now used for output only.
* core/types, xeth: separate tx hash and tx signature hashFelix Lange2015-07-062-8/+16
|
* core, eth, miner, xeth: receipt storage fixJeffrey Wilcke2015-07-041-2/+6
| | | | | * Added GetReceiptsFromBlock, GetReceipt, PutReceipts * Added ContractAddress to receipt. See #1042
* core, miner: miner header validation, transaction & receipt writingJeffrey Wilcke2015-07-031-1/+1
| | | | | | | | * 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
* Use uint64 for block header timestampGustav Simonsson2015-06-302-2/+2
|
* core/types: cache computed block valuesFelix Lange2015-06-301-3/+22
|
* core/types: cache computed transaction valuesFelix Lange2015-06-301-5/+28
|
* core/types: make blocks immutableFelix Lange2015-06-301-237/+184
|
* core/types: make transactions immutableFelix Lange2015-06-303-154/+143
|
* core/types: add Transaction.SizeFelix Lange2015-06-091-0/+7
|
* crypto: return common.Address rather than raw bytesobscuren2015-06-051-3/+3
|
* types: block json unmarshal method addedobscuren2015-06-041-0/+24
|
* Add EC signature validations before call to libsecp256k1Gustav Simonsson2015-06-021-16/+15
|
* core: fixed an issue with storing receiptsobscuren2015-05-281-0/+29
|
* core/types, eth: meassure and display propagation timesobscuren2015-04-301-0/+2
|
* core/types: added fake parent hash / hash to String() outputobscuren2015-04-291-1/+11
|
* Validate block header UncleHash against calculated hashGustav Simonsson2015-04-231-0/+4
|
* core: moved TD calculation from proc to chainobscuren2015-04-202-10/+8
|
* core/types: add rlp tag "nil" for Transaction.RecipientFelix Lange2015-04-171-1/+1
|
* core/types: Changed bloom lookup to take anything bytes backedobscuren2015-04-151-2/+6
|
* future queued block supportzelig2015-04-091-0/+4
| | | | | | | - queued bool // flag for blockpool to skip TD check - set to true when future block queued - in checkTD: skip check if queued - TODO: add test (insertchain sets future block)
* Changed how logs are being recordedobscuren2015-04-082-22/+5
| | | | | | | Logs are now recorded per transactions instead of tossing them out after each transaction. This should also fix an issue with `eth_getFilterLogs` (#629) Also now implemented are the `transactionHash, blockHash, transactionIndex, logIndex` on logs. Closes #654.
* Use logger.Error instead of 0 with glogGustav Simonsson2015-04-071-1/+2
|
* Forward and log EC recover err and remove dup pubkey len checkGustav Simonsson2015-04-071-1/+7
|
* Block header changed & console miner controlobscuren2015-04-061-3/+3
| | | | | | * miner control moved to `admin.miner` * miner option to set extra data * block extra now bytes
* Changed R S to big int and fixed testsobscuren2015-04-053-6/+22
|
* Changed R & S to *big.Intobscuren2015-04-051-6/+6
|
* check TxMsgzelig2015-04-011-3/+3
| | | | | | - add validation on TxMsg checking for nil - add test for nil transaction - add test for zero value transaction (no extra validation needed)
* test for invalid rlp encoding of block in BlocksMsgzelig2015-04-011-15/+12
| | | | | | | - 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
* eth: SEC-29 eth wire protocol decoding invalid message data crashes clientzelig2015-04-011-0/+20
| | | | | | - add validate method to types.Block - validate after Decode -> error - add tests for NewBlockMsg
* added tx tests and fixed block testsobscuren2015-03-263-3/+58
|
* Copy fixobscuren2015-03-241-2/+9
|
* Added copy functionobscuren2015-03-241-0/+17
|
* removed legacy codeobscuren2015-03-241-2/+1
|
* moved state and vm to coreobscuren2015-03-234-4/+4
|
* Fixed incorrect recipient derivedobscuren2015-03-211-1/+1
|
* copy over loopobscuren2015-03-201-5/+2
|
* mergeobscuren2015-03-191-2/+4
|\
| * fixed chain event. Closes #529obscuren2015-03-191-2/+6
| |
* | Merge remote-tracking branch 'ethereum/conversion' into conversionFelix Lange2015-03-181-0/+4
|\ \
| * | conversionsobscuren2015-03-181-0/+4
| | |
* | | core/types: use package rlp instead of common.DecodeFelix Lange2015-03-184-60/+155
|/ /
* | Fixed tests and bloomobscuren2015-03-182-11/+17
| |
* | bloomobscuren2015-03-171-3/+4
| |
* | Merge remote-tracking branch 'ethereum/conversion' into conversionFelix Lange2015-03-172-4/+12
|\ \
| * | converted vmobscuren2015-03-172-4/+12
| | |
* | | core/types: don't use Address zero value for invalid addressesFelix Lange2015-03-172-27/+37
| | |
* | | core/types: fix Transaction.Hash and add support for encoding with package rlpFelix Lange2015-03-172-6/+75
|/ /
* | converted chain managerobscuren2015-03-171-1/+1
| |
* | updated blockpoolobscuren2015-03-173-24/+24
| |
* | Merge branch 'conversion' of github.com-obscure:ethereum/go-ethereum into ↵obscuren2015-03-172-68/+26
|\ \ | | | | | | | | | conversion
| * | core/types: use common.{Hash,Address} in for transactionsFelix Lange2015-03-172-68/+26
| | |
* | | converted vmobscuren2015-03-171-3/+2
|/ /
* | block conversionobscuren2015-03-175-36/+75
| |
* | new type + additional methodsobscuren2015-03-161-17/+17
|/
* Moved ethutil => commonobscuren2015-03-166-29/+29
|
* mergeobscuren2015-03-151-2/+2
|\
| * core/types: make Block.{ParentHash,SeedHash,MixDigest} []byteFelix Lange2015-03-141-3/+3
| | | | | | | | There is no reason to keep them as ethutil.Bytes.
* | POW fixesobscuren2015-03-141-6/+1
|/
* Changed V to byte. Closes #456obscuren2015-03-121-4/+4
|
* Integrate eth_accounts and eth_transact to use new account managerGustav Simonsson2015-03-061-0/+8
| | | | | | | * Add from to eth_transact / xeth.Transact and add static pass in lieu of integrating with native Mist window for user passphrase entry * Make eth_accounts return AccountManager.Accounts() * Add a Generate Key menu item in Mist
* Miner fixes and updates (including miner)obscuren2015-03-051-6/+8
|
* Fixed genesisobscuren2015-03-041-12/+23
|
* Changed nonce to a uint64obscuren2015-03-041-5/+5
|
* fixed pow stuffobscuren2015-03-041-1/+4
|
* Merge branch 'publictests' of https://github.com/xcthulhu/go-ethereum into ↵obscuren2015-03-041-3/+21
|\ | | | | | | xcthulhu-publictests
| * Introducing ethashMatthew Wampler-Doty2015-03-031-1/+14
| |
| * Introducign MixDigest and SeedHashMatthew Wampler-Doty2015-02-281-2/+7
| |
* | Bloom expanded by 4obscuren2015-03-031-3/+4
|/
* Added GetBlock GetUncle with OOB guardobscuren2015-02-181-0/+12
|
* Fixed mining & limited hash powerobscuren2015-02-142-2/+3
|
* Update balance label when miningobscuren2015-02-141-0/+2
|
* Filteringobscuren2015-02-051-6/+2
|
* WIP minerobscuren2015-02-041-11/+15
|
* Moved `obscuren` secp256k1-goobscuren2015-01-221-1/+1
|
* Moved ptrie => trie. Removed old trieobscuren2015-01-081-2/+2
|
* Refactored ethutil.Config.Db outobscuren2015-01-072-12/+14
|
* Mergeobscuren2015-01-061-42/+35
|
* added nil checkobscuren2015-01-021-22/+0
|
* Refactored tx pool and added extra fields to blockobscuren2015-01-022-2/+7
| | | | | | * chain manager sets td on block + td output w/ String * added tx pool tests for removing/adding/validating * tx pool now uses a set for txs instead of list.List
* Fixed chain test & added new chainobscuren2014-12-301-0/+1
|
* Switched to new trieobscuren2014-12-242-6/+6
|
* Chain importerobscuren2014-12-232-29/+35
|
* Refactored block & Transactionobscuren2014-12-233-385/+249
| | | | * Includes new rlp decoder
* Merge branch 'develop' into poc8obscuren2014-12-201-9/+10
|\ | | | | | | | | Conflicts: cmd/ethereum/flags.go
| * Transaction was generating incorrect hash because of var changesobscuren2014-12-191-9/+10
| |
* | Merge branch 'badsig' of https://github.com/ebuchman/go-ethereum into ↵obscuren2014-12-191-4/+4
| | | | | | | | | | | | | | ebuchman-badsig Conflicts: core/transaction_pool.go
* | mergeobscuren2014-12-191-48/+46
|\|
| * Gas corrections and vm fixesobscuren2014-12-191-9/+0
| |
| * Moved methods to messagesobscuren2014-12-181-21/+2
| |
| * Created generic message (easy for testing)obscuren2014-12-181-31/+57
| |
* | Merge fixesobscuren2014-12-181-5/+0
|/
* Locks, refactor, testsobscuren2014-12-182-1/+6
| | | | | | * Added additional chain tests * Added proper mutex' on chain * Removed ethereum dependencies
* Moved powobscuren2014-12-101-0/+3
|
* Fixed issue in VM where LOG didn't pop anything of the stackobscuren2014-12-052-7/+18
|
* Log is now interfaceobscuren2014-12-041-2/+2
|
* Renamed State => StateDBobscuren2014-12-042-3/+3
|
* Renamed `chain` => `core`obscuren2014-12-048-0/+825