Commit Graph

329 Commits

Author SHA1 Message Date
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
obscuren
c135b389fe Commented out code due to rewrite vm 2014-03-20 17:24:53 +01:00
obscuren
bdc0d1b7ad Added AddFunds method 2014-03-20 17:24:02 +01:00
Maran
ae837c4719 More mining rework 2014-03-20 11:20:29 +01:00
Maran
2be2fc7974 Merge branch 'develop' into miner 2014-03-17 11:15:28 +01:00
obscuren
826c827e6b Added a copy method to state 2014-03-17 11:15:09 +01:00
obscuren
07578fe25f Pretty print nonce 2014-03-17 11:13:35 +01:00
Maran
095d5baaed Merge conflicts 2014-03-17 10:41:05 +01:00
Maran
8ea7e21f64 Merge 2014-03-17 10:37:37 +01:00
Maran
3274e0a249 Removed extra invalid nonce return 2014-03-17 10:37:29 +01:00
obscuren
b15a4985e8 Moved on to the state manager 2014-03-17 10:33:03 +01:00
Maran
d5efeab8f9 Initial smart-miner stuff 2014-03-10 11:53:02 +01:00
obscuren
685ea3e9a9 Wip keychains 2014-03-07 11:26:35 +01:00
obscuren
e7770b2332 Added miner state 2014-03-06 13:06:54 +01:00
obscuren
be543a6d17 Removed comments 2014-03-06 13:03:24 +01:00
obscuren
6c6e8b0fd7 Renamed block manager to state manager 2014-03-05 10:57:32 +01:00
obscuren
92f2abdf76 Partially refactored server/txpool/block manager/block chain
The Ethereum structure now complies to a EthManager interface which is
being used by the tx pool, block manager and block chain in order to
gain access to each other. It's become simpeler.
TODO: BlockManager => StateManager
2014-03-05 10:42:51 +01:00
obscuren
9d492b0509 Renamed Address to Account 2014-03-03 11:05:12 +01:00
obscuren
bfed1c7cac Trie's are no longer referenced directly but through State instead 2014-03-03 11:03:16 +01:00
obscuren
d65b4cd0dd Updated block to use state instead of trie directly 2014-03-02 20:42:05 +01:00
obscuren
e98b53bbef WIP Observing pattern 2014-02-25 11:22:27 +01:00
obscuren
4b8c50e2cd Deprication 2014-02-25 11:22:18 +01:00
obscuren
1e7b3cbb13 Removed debug log 2014-02-25 11:22:05 +01:00
obscuren
ce07d9bb4c Error logging on tx processing 2014-02-25 11:21:49 +01:00
obscuren
507fc7b9d1 Length checking when fetching contract. Contract always have 3 fields 2014-02-25 11:21:35 +01:00
obscuren
0afdedb01a Some log statements changed to the default logger 2014-02-24 13:50:52 +01:00
obscuren
6c7255cde2 Fixed a minor issue on crashed contracts 2014-02-24 13:15:34 +01:00
obscuren
95a8ebc249 Changed MakeContract on block
MakeContract in Block is now using the MakeContract defined in
contract.go
2014-02-24 12:45:21 +01:00
obscuren
88a9c62fcc Proper tests 2014-02-24 12:44:29 +01:00
obscuren
b29c1eecd1 Removed debug print 2014-02-24 12:44:18 +01:00
obscuren
d69db6e617 Removed compiling from the transaction 2014-02-24 12:13:42 +01:00
obscuren
d8b5bbd48c Added compile 2014-02-24 12:13:22 +01:00
obscuren
4cc5b03137 Added opcodes 2014-02-24 12:12:32 +01:00
obscuren
a3fb7008b2 Added make contract 2014-02-24 12:12:24 +01:00
obscuren
377c995103 Separated the VM from the block manager and added states 2014-02-24 12:10:45 +01:00
obscuren
a4a4ffbeff Moved address 2014-02-23 01:57:22 +01:00
obscuren
f5737b929a Added a secondary processor 2014-02-23 01:57:04 +01:00
obscuren
c66cf95b40 Added address states for storing a session based address 2014-02-23 01:56:48 +01:00
obscuren
73b9ae9579 Updated some of the log statements to use the ethutil logger 2014-02-22 01:53:25 +01:00
obscuren
cca8585554 Get a chain of blocks made simple 2014-02-21 13:05:59 +01:00
obscuren
18cc35338a Fixed contract running 2014-02-21 12:37:16 +01:00
obscuren
681eacaa7f Removed old instruction code 2014-02-21 12:37:06 +01:00
obscuren
06ea7fc830 re: Added contract fees 2014-02-20 23:11:17 +01:00
obscuren
ed05779adb Updated fees 2014-02-20 23:10:43 +01:00
obscuren
8f69c2ac45 Added contract addr acessors 2014-02-20 23:10:36 +01:00
obscuren
504d356232 Added peek(n) 2014-02-20 23:10:16 +01:00
obscuren
39b6eaf51c Debug logging functions 2014-02-19 16:27:35 +01:00
obscuren
dc994b3518 Changed fee structure 2014-02-19 16:27:08 +01:00
obscuren
8e7daec886 Added fees and debugging 2014-02-19 16:26:55 +01:00
obscuren
b3da104e56 Corrected contract addresses 2014-02-19 16:26:35 +01:00
obscuren
0936e5ccf5 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop
Conflicts:
	ethutil/config.go
2014-02-19 11:40:02 +01:00
obscuren
24f2b2afc3 Running contracts fixed 2014-02-19 11:35:17 +01:00
Sam Boyer
4d405f6654 s/GenisisHeader/GenesisHeader/ 2014-02-18 10:40:58 -05:00
obscuren
c866fcc5b3 Added new address 2014-02-18 12:10:21 +01:00
obscuren
68028f492f Fixed block handling 2014-02-18 01:33:26 +01:00
obscuren
8629d9a418 String changed and removed some debugging code 2014-02-18 01:33:15 +01:00
obscuren
bb3e28310e If sender is receiver only subtract the fee 2014-02-18 01:31:51 +01:00
obscuren
a5b7279cb5 Changed uncle block fee as to what it should be 2014-02-18 01:31:31 +01:00
obscuren
066940f134 Defer undo on the current block's state 2014-02-16 20:30:21 +01:00
obscuren
f5fbbb147f Removed debug message 2014-02-15 12:11:40 +01:00
obscuren
73fd358d94 Removed RlpValue in favour of Value 2014-02-15 01:34:18 +01:00
obscuren
f6d1bfe45b The great merge 2014-02-14 23:56:09 +01:00