obscuren
0b8ba1d55b
Renamed snapshot to copy/set and added it back to the VM
2014-06-20 00:41:28 +02:00
obscuren
933aa63b7d
Length check on get
2014-06-19 21:41:37 +02:00
obscuren
80ffe1610c
Removed log
2014-06-19 13:45:46 +02:00
obscuren
9104dcc29c
Fixed call
2014-06-19 13:45:29 +02:00
obscuren
7e6684d926
Method for checking contract addresses
2014-06-19 13:42:47 +02:00
obscuren
1b431f29e5
Added missing types
2014-06-19 13:42:28 +02:00
obscuren
5ea7598408
Update after each transition instead of at the end.
...
Updating the state /after/ the entire transition creates invalid
receipts.
2014-06-19 13:42:14 +02:00
obscuren
731f55a05d
Reset state when a transition fails
2014-06-19 13:41:17 +02:00
obscuren
f911087eab
Logging
2014-06-18 13:48:42 +02:00
obscuren
3bc57fe5b5
CALLDATALOAD return 32 byte at all times
2014-06-18 13:48:08 +02:00
obscuren
dc9c9369e0
log
2014-06-18 00:36:23 +02:00
obscuren
2565a79575
Swapped vars
2014-06-18 00:32:48 +02:00
obscuren
8a885c2606
Fixed GT and LT
2014-06-18 00:25:58 +02:00
obscuren
ca79360fd7
Verbose logging for VM
2014-06-17 18:49:26 +02:00
obscuren
34c8045d5b
Fixed issue where JUMPI would do an equally check with 1 instead of GT
2014-06-17 18:05:46 +02:00
obscuren
3621988e15
Removed deprecated states
2014-06-17 11:07:37 +02:00
obscuren
53e30f750d
Removal of manual updating of state objects
...
* You'll only ever need to update the state by calling Update. Update
will take care of the updating of it's child state objects.
2014-06-17 11:06:06 +02:00
obscuren
887debb055
comment
2014-06-16 18:20:38 +02:00
obscuren
0d77632839
Refund gas
2014-06-16 12:25:18 +02:00
obscuren
8b15732c1e
Check for nil receiver
2014-06-16 12:04:56 +02:00
obscuren
48bca30e61
Fixed minor issue with the gas pool
2014-06-16 11:51:16 +02:00
obscuren
9f62d441a7
Moved gas limit err check to buy gas
2014-06-16 11:14:01 +02:00
obscuren
7b55bcf484
Removed old fees
2014-06-16 11:13:19 +02:00
obscuren
15d1f753f7
Removed old fees
2014-06-16 11:13:06 +02:00
obscuren
1d76e433f7
Removed some comments
2014-06-16 10:40:21 +02:00
obscuren
02d8ad030f
Keeping old code for reference
2014-06-16 10:35:35 +02:00
obscuren
8198fd7913
Cache whole objects instead of states only
2014-06-16 00:51:04 +02:00
obscuren
d80f999a21
Run contracts
2014-06-15 00:11:06 +02:00
obscuren
5871dbaf5a
Set contract addr for new transactions
2014-06-15 00:10:42 +02:00
obscuren
63883bf27d
Moving closer to interop
2014-06-14 11:46:09 +02:00
obscuren
8124547348
Moving a head closer to interop
2014-06-13 16:06:27 +02:00
obscuren
c734dde982
comments & refactor
2014-06-13 13:06:27 +02:00
obscuren
cebf4e3697
Refactored state transitioning to its own model
2014-06-13 12:58:01 +02:00
obscuren
5e2bf12a31
Refactored state transitioning to its own model
2014-06-13 12:57:52 +02:00
obscuren
d078e9b8c9
Refactoring state transitioning
2014-06-13 12:45:11 +02:00
obscuren
b855e5f7df
Changed opcode numbers and added missing opcodes
2014-06-12 11:19:32 +02:00
obscuren
6593c69424
Merge branch 'develop' into interop
2014-06-12 10:07:40 +02:00
obscuren
3a9d7d318a
log changes
2014-06-12 10:07:27 +02:00
obscuren
8a2e50ab2a
Merge branch 'develop' into interop
...
Conflicts:
peer.go
2014-06-11 21:56:59 +02:00
obscuren
9ee6295c75
Minor changes
2014-06-11 21:55:45 +02:00
obscuren
1bf6f8b4a6
Added a buy gas method
2014-06-11 21:55:34 +02:00
obscuren
4d3209ad1d
Moved process transaction to state manager
...
* Buy gas of the coinbase address
2014-06-11 21:55:23 +02:00
Maran
1938bfcddf
Fix compare
2014-06-11 16:16:57 +02:00
Maran
e090d131c3
Implemented counting of usedGas
2014-06-11 11:40:40 +02:00
Maran
bdc206885a
Don't mine transactions if they would go over the GasLimit implements ethereum/go-ethereum#77 further.
2014-06-10 17:23:32 +02:00
Maran
69044fe577
Refactor to use new method
2014-06-10 17:22:43 +02:00
Maran
753f749423
Implement CalcGasPrice for ethereum/go-ethereum#77
2014-06-10 17:22:06 +02:00
Maran
2995d6c281
Validate minimum gasPrice and reject if not met
2014-06-10 15:02:41 +02:00
obscuren
c7d1924c34
sha
2014-06-09 21:35:56 +02:00
Maran
d7b882977c
Make contract creation error more explicit by mentioning the sneder
2014-06-03 11:56:19 +02:00
Maran
2010fea088
Added faux latency for peeroverview
2014-06-03 10:42:55 +02:00
Maran
fb6ff61730
Implemented Public Peer interface
2014-06-02 15:20:27 +02:00
obscuren
8fcba0eb1e
fixed test
2014-05-29 23:54:48 +02:00
obscuren
4d98762486
Fixed state object gas return
2014-05-28 23:16:54 +02:00
obscuren
b695c82520
Fixes #60
2014-05-28 15:07:11 +02:00
obscuren
65722aeeca
Added StringToBytesFunc
2014-05-28 13:14:56 +02:00
obscuren
6e98e5709a
Set initial used gas
2014-05-28 12:39:34 +02:00
obscuren
9988b1a047
Sort transactions based on the nonce
...
* Added a transaction sorter
2014-05-28 12:06:09 +02:00
obscuren
73761f7af6
Closure call now returns the total usage as well
...
* Return the used gas value based on the UseGas and ReturnGas
2014-05-28 12:05:46 +02:00
obscuren
98d4b51120
Changed opcode names
2014-05-28 12:03:12 +02:00
obscuren
4eb1771e67
Hooks can now quit the vm
2014-05-27 13:32:31 +02:00
obscuren
aba3066658
Changed debug hook and added state iterator
2014-05-27 13:10:18 +02:00
obscuren
3ebd7f1166
State snapshotting
2014-05-26 00:09:38 +02:00
obscuren
81ef40010f
The body of contracts are now returned instead
2014-05-25 14:13:54 +01:00
obscuren
99fa9afaf1
Updated to work with the new config
2014-05-25 14:13:07 +01:00
obscuren
281559d427
Canonical contract creation
2014-05-22 18:24:04 +02:00
obscuren
cc8464ce80
Transaction querying
2014-05-22 17:56:33 +02:00
obscuren
230aafbf66
Working on interop
...
* Receipts after each transaction
* Fee structure
* Applying fees to miners
2014-05-22 17:35:26 +02:00
obscuren
f8f84ef095
Removed old contract creation code
2014-05-22 00:25:02 +02:00
obscuren
f5852b47d1
Removed some logging and refactored a bit
2014-05-21 14:00:13 +02:00
obscuren
86cf69648e
Improved miner so it won't include invalid transactions
2014-05-21 13:04:40 +02:00
obscuren
2667cb3ab6
Apply to parent
2014-05-21 12:39:07 +02:00
obscuren
0c27c5eb7f
Proper log statement
2014-05-21 12:38:56 +02:00
obscuren
07fe00c466
Changed numbers
2014-05-21 11:42:31 +02:00
obscuren
cbf221f6b7
Fixed competing block method
2014-05-21 11:42:20 +02:00
obscuren
734b2e4cf7
Merge branch 'hotfix/4' into develop
2014-05-21 01:12:39 +02:00
obscuren
3c35ba7c31
Fixed state overwriting issue
2014-05-21 01:12:28 +02:00
obscuren
5ceb1620e9
Fixed couple issues
...
* (imp) Lock / RLock tries
* (fix) stack
2014-05-21 00:17:50 +02:00
obscuren
64701e388c
Fixed state issue
2014-05-20 22:43:59 +02:00
obscuren
3b38df085e
Fixed casting issue
2014-05-20 22:04:47 +02:00
obscuren
ad51c85e5d
Fixed crash
2014-05-20 19:19:53 +02:00
obscuren
0c4040d191
Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop
2014-05-20 15:02:53 +02:00
obscuren
2bd377a3de
Changed transaction hash for poc 5
2014-05-20 15:02:46 +02:00
Maran
f5d4414734
Fix notification when processing block that didn't have this client as origin
2014-05-20 14:41:35 +02:00
obscuren
7d3e99a2ab
Fixed genesis and block data
2014-05-20 14:29:52 +02:00
obscuren
6a31d55b2e
added roman
2014-05-20 13:29:21 +02:00
obscuren
45b810450f
...
2014-05-20 13:09:44 +02:00
obscuren
f292e93e0e
Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop
...
Conflicts:
ethchain/transaction.go
2014-05-20 13:07:08 +02:00
obscuren
378815ee62
Rearranged according to YP
2014-05-20 13:06:47 +02:00
Nick Savers
530ab6b8fc
Re-arranged transaction RLP encoding...
...
According to latest Yellow Paper specs and conform other clients
4794642e51
2014-05-20 13:02:37 +02:00
obscuren
faa57ecaef
Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop
2014-05-20 12:19:25 +02:00
obscuren
2450398862
Added Maran to premine
2014-05-20 12:19:21 +02:00
Maran
12f30e6220
Refactored a lot of the chain catchup/reorg.
2014-05-20 11:50:34 +02:00
obscuren
fd19142c0d
No longer store script directly in the state tree
2014-05-20 11:19:07 +02:00
obscuren
b8034f4d9e
Increment nonce in the public api
2014-05-19 12:14:04 +02:00
obscuren
bd48690f63
Testing different mining state
2014-05-19 11:25:27 +02:00
obscuren
8730dfdcc2
Changed how changes are being applied to states
2014-05-17 14:07:52 +02:00
obscuren
f95993e326
M
2014-05-15 14:54:07 +02:00
obscuren
7bf2ae0b11
Removed old tx pool notification system. Fixes #19
2014-05-15 14:05:15 +02:00
obscuren
98a631b556
Remove any invalid transactions after block processing
2014-05-14 16:29:34 +02:00
obscuren
f4fa0d48cb
Moved keyring to ethutil & removed old methods. Implements #20
2014-05-14 13:54:40 +02:00
obscuren
0c1f732c64
Do not queue messages if the peer isn't connected (e.g. timing out)
2014-05-14 11:29:57 +02:00
obscuren
a4883a029f
Propagate back to network
2014-05-13 17:51:33 +02:00
Maran
28357d657b
Implemented new JS/EthPub methods
...
- getTxCountAt
- getPeerCount
- getIsMining
- getIsListening
- getCoinbase
2014-05-13 14:43:29 +02:00
obscuren
c03bf14e02
Fixed some tests
2014-05-10 02:01:09 +02:00
obscuren
afe83af219
Moved seeding and moved manifest
2014-05-09 16:09:28 +02:00
obscuren
5a0bae1dae
Auto update state changes notifications
2014-05-08 19:09:36 +02:00
obscuren
e8fb965ccb
Cleaned up
...
Removed the unneeded address watch mechanism. State manager's transient
state should now take care of this.
2014-05-08 18:41:45 +02:00
obscuren
d709815106
Added trans state and removed watch address etc
...
The transient state can be used to test out changes before committing
them to the proc state. The transient state is currently being used by
the gui to support proper nonce updating without having to wait for a
block. This used to be done by a cached state mechanism which can now
safely by removed.
2014-05-08 18:26:46 +02:00
obscuren
f0440e85dc
Removed value from closure.
2014-05-08 14:20:45 +02:00
obscuren
554f4f6f7d
Fixed disasamble for all pushes
2014-05-08 14:20:06 +02:00
Maran
6c66cb3fa9
Merge branch 'develop' of github.com:ethereum/eth-go into develop
2014-05-07 11:05:53 +02:00
Maran
45ce820b11
Implemented value()
2014-05-07 11:05:49 +02:00
obscuren
a0af7de58e
Optimizations
2014-05-06 17:43:27 +02:00
obscuren
af6875f4b2
Changed to lower case
2014-05-05 17:14:29 +02:00
obscuren
7c91159449
Added different storage notification object
2014-05-05 11:56:25 +02:00
obscuren
1f6df0cd52
Added receipts for tx creation
2014-05-02 14:08:54 +02:00
obscuren
70c8656640
Added a KeyPairFromSec function which creates a new keypair based on the given seckey
2014-05-02 12:11:55 +02:00
obscuren
17674fb888
Added suicide back in
2014-05-01 22:14:34 +02:00
obscuren
e6a68f0c3a
Removed debug log
2014-05-01 22:13:59 +02:00
obscuren
d2ab322267
Removed debugging log
2014-04-30 17:43:48 +02:00
obscuren
c3293641e7
Removed debug logging
2014-04-30 17:13:32 +02:00
obscuren
21724f7ef9
Added manifest changes and changed closures
2014-04-30 14:43:32 +02:00
obscuren
38d6b67b5c
Fixed state problem
2014-04-29 12:36:27 +02:00
obscuren
5516efdfa0
Removed old code
2014-04-27 18:05:30 +02:00
obscuren
bf850974f3
Using mutan assembler stage
2014-04-27 18:00:38 +02:00
obscuren
16e52327a4
Upped version number
2014-04-27 16:53:35 +02:00
obscuren
05d2d8f27d
Actually convert gas
2014-04-26 02:11:00 +02:00
obscuren
ca6e3f6def
Notify of changes
2014-04-26 02:06:25 +02:00
obscuren
d3a159ad3d
Fixed tests
2014-04-26 01:54:45 +02:00
obscuren
0f93da400a
Added new state object change echanism
2014-04-26 01:48:40 +02:00
obscuren
f3818478e2
Removed debug & unused functions
2014-04-24 13:48:33 +02:00
obscuren
ee7c16a8d9
Fixed Base problem and sload/sstore
2014-04-24 13:30:57 +02:00
obscuren
1c85d8c66b
Minor improvements and bug fixes
...
* Fixed VM base bug
2014-04-24 00:00:50 +02:00
obscuren
c81804444f
Call initial closure with proper tx argument
2014-04-23 15:53:53 +02:00
obscuren
f7d4e3cd6b
Copy over bytes from previous root
...
Copy over instead of directly using the previous root. This is order to
avoid resetting problems
2014-04-23 15:52:50 +02:00
obscuren
3a9a252f6e
Fixed minor issue with gas and added state object init
2014-04-23 11:51:04 +02:00
obscuren
61cd1594b5
Fixed gas, price & value setters on initialization
2014-04-23 11:50:38 +02:00
obscuren
6930260962
Updated VM
2014-04-20 01:31:01 +02:00
obscuren
a96c8c8af9
Added proper gas handling
2014-04-18 13:41:07 +02:00
obscuren
c5729d7ecc
comments
2014-04-16 04:07:52 +02:00
obscuren
9c6aca7893
Merged accounts and contracts in to StateObject
...
* Account removed
* Contract removed
* Address state changed to CachedStateObject
* Added StateObject
2014-04-16 04:06:51 +02:00
obscuren
ca13e3b105
Moved assembler stage processing to it's own file
2014-04-15 16:16:38 -04:00
obscuren
086acd122b
Added pre processing of script data
2014-04-12 00:13:42 -04:00
obscuren
116516158d
Renamed
2014-04-11 13:29:57 -04:00
obscuren
ca747f2688
Added the possibility for debug hooks during closure call
2014-04-11 08:28:30 -04:00
obscuren
7d6ba88d2b
Merge branch 'split' into develop
2014-04-10 21:05:58 -04:00
obscuren
25dd46061f
Added push20
2014-04-10 21:03:14 -04:00
obscuren
afc92fb7d7
Added better address format
2014-04-10 18:32:54 -04:00
obscuren
891f725909
Added better address format
2014-04-10 18:14:19 -04:00
obscuren
969e748dce
Call fixed
2014-04-10 15:30:14 -04:00
obscuren
6a530ea371
Call fixed
2014-04-10 14:40:12 -04:00
obscuren
720521ed4a
Changed how txs define their data & added init field
2014-04-09 12:28:16 -04:00
obscuren
e09f0a5f2c
Split code for contracts
2014-04-09 12:27:54 -04:00
obscuren
03e139d23b
Switched variable names
2014-04-09 16:04:36 +02:00
obscuren
6d28bf534f
Added a length for copy
2014-04-09 16:00:28 +02:00
obscuren
c0cad0b534
Merge branch 'miner' of github.com-obscure:ethereum/eth-go into miner
2014-04-09 15:50:49 +02:00
obscuren
035f0ffb8a
Reverted changes
2014-04-09 15:08:10 +02:00
Maran
b66a99e32d
Added todo
2014-04-09 08:55:39 -04:00
obscuren
527a3bbc2a
Typo fix
2014-04-09 14:53:20 +02:00
obscuren
c0a030ef0a
Added new insruction methods
2014-04-09 14:08:18 +02:00
obscuren
12643c7c57
Merge branch 'develop' into miner
2014-04-05 11:25:29 +02:00
obscuren
90bb512f42
Update
2014-04-05 10:49:07 +02:00
Maran
782910eaa7
Small tweaks
2014-04-01 15:54:29 +02:00
Maran
3558dd5ed4
Finalize blockchain reverting test
2014-04-01 14:42:48 +02:00
Maran
0a88010826
Merge conflicts
2014-04-01 14:20:55 +02:00
obscuren
7d0348e4ba
Handle contract messages
2014-04-01 10:41:30 +02:00
Maran
5f49a659c3
More blockchain testing
2014-03-31 12:54:37 +02:00
obscuren
7277c42047
Fixed some state issues
2014-03-31 01:03:28 +02:00
obscuren
7cc28c8b46
Added storage test
2014-03-30 22:03:08 +02:00
obscuren
205e33bc83
Fixed bug in stack to expand beyond expectations. Fixed EQ and NOT opcode
2014-03-30 18:55:51 +02:00
obscuren
6625b6ffbd
Changed to new mutan API
2014-03-30 12:58:37 +02:00
obscuren
b888652201
Added missing GetTx (0x16) wire message
2014-03-28 11:20:07 +01:00
Jeffrey Wilcke
60fd2f3521
Update vm_test.go
...
store ...
2014-03-27 23:25:03 +01:00
obscuren
75e6406c1f
Fixed tests
2014-03-27 23:17:23 +01:00
obscuren
3c3431d111
Fixed IsContract method to use the contractCreation flag
2014-03-27 23:17:14 +01:00
obscuren
56a58ad70d
Removed debug and comments
2014-03-27 22:02:39 +01:00
obscuren
00c5f9b9a6
Updated transaction model
...
Changed the behaviour of decoding rlp data. Something is considered to
be creating a contract if the 4th item is a list.
Changed constructors.
2014-03-27 19:49:47 +01:00
obscuren
43cad69016
Reworked transaction constructors
2014-03-27 15:42:39 +01:00
Maran
6253d10938
initial testcode for canonical chain
2014-03-24 15:04:29 +01:00
obscuren
e0b6091d7e
Test fixes and removed old code. Added VM gas fees
2014-03-24 13:20:34 +01:00
Maran
ec6ec62dd4
Remove some xtra logs
2014-03-24 10:56:52 +01:00
Maran
97786d03d5
Merge branch 'master' into miner
2014-03-24 10:24:39 +01:00
Maran
274d5cc91c
FindCanonicalChain returns true or false when we are on the Canonical chain or not
2014-03-24 10:24:06 +01:00
obscuren
6a86c517c4
Removed old VM code
2014-03-22 11:47:27 +01:00
obscuren
01c1bce9c5
Removed regular ints from the virtual machine and closures
2014-03-21 18:22:47 +01:00
obscuren
9a9e252cab
Changes 'compiler' to work with any type
2014-03-21 15:27:18 +01:00
Maran
b52b1fca89
Initial block reorganisation code
2014-03-21 15:06:23 +01:00
obscuren
2ea4c632d1
Closure return, arguments fixed. Added proper tests
2014-03-21 14:47:55 +01:00
obscuren
fa1db8d2dc
Implemented closure arguments
2014-03-21 11:54:36 +01:00
obscuren
9cf8ce9ef8
New tx methods and added new vm to state manager
2014-03-21 00:04:31 +01:00
obscuren
f567f89b99
Added address to account and contract
...
Contract and account now both have an address field or method for the
sake of simplicity.
2014-03-20 23:38:16 +01:00
obscuren
7705b23f24
Removed caller from tx and added "callership" to account.
...
Transactions can no longer serve as callers. Accounts are now the
initial callee of closures. Transactions now serve as transport to call
closures.
2014-03-20 23:17:53 +01:00
obscuren
f3d27bf5d8
Rewrote opcodes again
2014-03-20 22:51:20 +01:00
obscuren
c68ff9886b
Fixed MSTORE and added some more commets
2014-03-20 19:50:53 +01:00
obscuren
3520771d68
Comply to Callee interface
2014-03-20 17:27:09 +01:00
obscuren
c17381b853
Moved code around
2014-03-20 17:26:51 +01:00
obscuren
59d8dc3950
Fixed issue with stack where it sliced of the wrong values
2014-03-20 17:26:30 +01:00
obscuren
38ea6a6d5d
Closures and vm based on closures
...
Status: Work in progress
2014-03-20 17:26:07 +01:00
obscuren
82d0f65dab
Comply to Callee structure
2014-03-20 17:25:11 +01:00