Commit Graph
100 Commits
Author SHA1 Message Date
zelig 1d959cb0ca WIP 2014-12-15 11:37:01 +01:00
zelig 72290f67fe resolve merge conflict hell 2014-12-14 20:57:29 +00:00
zelig 4c89d5331f adapt blockpool/backend to use pow/ezp with pow.Block for VerifyPoW func 2014-12-14 20:53:20 +00:00
zelig 61940b2275 adapt cmd/cli to new backend
- new flag nat for nat support UPNP|PMP
- new flag pmp for PMP gateway IP
- add NatType to utils/cmd to get p2p.NAT from nat type string
- obsolete usepnp flag
- get rid of IsUpToDate and sleep in miner start
- ethereum constructor takes nat type, port, maxpeer
- add pubkey arg to client identity
2014-12-14 20:52:28 +00:00
zelig e77b720ead blockmanager start/stop obsolete 2014-12-14 20:45:12 +00:00
zelig 7b39cc83cc adapt chain_manager to eth protocol interface
- add Status() to return td, currentblock hash, genesis hash
- GetChainHashesFromHash -> GetBlockHashesFromHash
2014-12-14 20:45:12 +00:00
zelig 01dc1c1394 blockpool rewritten , tests broken FIXME 2014-12-14 20:42:08 +00:00
zelig 4dfce4624d protocol
- new interface explicit backend components txPool, chainManager, blockPool
- added protoErrorDisconnect for blockpool callback (FIXME: handling peer disconnects)
2014-12-14 20:40:08 +00:00
zelig 5e4d77b2b8 initial commit for eth blockpool + test 2014-12-14 20:39:34 +00:00
zelig 2dd8f41147 eth protocol changes
- 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)
2014-12-14 20:37:07 +00:00
zelig 0add0c400f initial commit for eth-p2p integration 2014-12-14 20:34:28 +00:00
zelig e847aaca3e remove wire package 2014-12-14 20:31:43 +00:00
zelig 7d02c4fdb7 remove old ethereum/p2p related top level files 2014-12-14 20:31:43 +00:00
zelig d9b16c1197 new cli options
- nat UPNP|PMP
- gateway for PMP NAT
- obsolete usepnp
- add pubkey to client identity
2014-12-14 20:30:56 +00:00
zelig ae7c1e3e55 adapt to new backend
- eth p2p pkgs
- new Ethereum initialiser
- no caps param
- use nat type
- add NatType func to map nat type string to p2p.NAT
- add pubkey to client identity
2014-12-14 20:30:56 +00:00
zelig 50e1dcc43a import eth pkg 2014-12-14 20:30:56 +00:00
zelig d84810d89d add Status to retrieve TD, currentBlock, genesis for easy interface with eth/protocol 2014-12-14 20:30:56 +00:00
zelig 39d86a28e7 adapt to new eth pkg and p2p 2014-12-14 20:30:56 +00:00
zelig 5022a31889 add NewMinedBlockEvent 2014-12-14 20:27:06 +00:00
zelig c2af10d256 transaction pool changes
- use eventer events to broadcast transactions
- CurrentTransactions -> GetTransactions
- add AddTransactions
2014-12-14 20:27:06 +00:00
zelig b89ed8eb7b adapt javascript pkg to new backend, use SuggestPeer 2014-12-14 20:27:06 +00:00
zelig 118862f1ba adapt miner to new backend. use events to broadcast new mined blocks 2014-12-14 20:27:06 +00:00
zelig 148de1c875 adapt xeth pkg to new backend. FIXME JSPeer peer info 2014-12-14 20:27:06 +00:00
zelig 76070b4674 blockpool rewritten , tests broken FIXME 2014-12-14 20:27:06 +00:00
zelig 3308d82b23 add protocol error types specific to blockpool 2014-12-14 20:27:06 +00:00
zelig c44e025898 protocol
- new interface explicit backend components txPool, chainManager, blockPool
- added protoErrorDisconnect for blockpool callback (FIXME: handling peer disconnects)
2014-12-14 20:27:06 +00:00
zelig 02017ed0e0 initial commit for new backend (eth.Ethereum) 2014-12-14 20:27:06 +00:00
zelig 4366fdfc13 initial commit for eth blockpool + test 2014-12-14 20:27:06 +00:00
zelig d957dd2c9f eth protocol changes
- 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)
2014-12-14 20:27:06 +00:00
zelig eb5cb04aa9 no logging in error (to be refactored into p2p) 2014-12-14 20:27:05 +00:00
zelig e5aa38cb0f initial commit for eth-p2p integration 2014-12-14 20:27:05 +00:00
zelig 3e38f8af23 initial commit for eth blockpool + test 2014-12-10 14:51:47 +00:00
zelig e74f9f27db eth protocol changes
- 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)
2014-12-10 14:51:47 +00:00
zelig 31a9fdced8 no logging in error (to be refactored into p2p) 2014-12-10 14:51:47 +00:00
zelig 47793b606c initial commit for eth-p2p integration 2014-12-10 14:51:47 +00:00
Viktor Trón f62b6742f2 Merge pull request #152 from ethersphere/p2p
initial commit of p2p package
2014-10-24 12:20:50 +01:00
zelig 771fbcc02e initial commit of p2p package 2014-10-23 16:57:54 +01:00
zelig 0283498140 Merge branch 'develop' of github.com:ethereum/eth-go into develop 2014-08-14 12:11:59 +02:00
zelig 3569e8d7df remove mmenomic words initialisation (mnemonic wordlist now inline to support binary builds without extra asset) 2014-08-12 14:57:51 +02:00
zelig e85f3972b9 inline mnemonic wordlist to support binary builds without extra asset 2014-08-12 14:56:10 +02:00
zelig 9831619881 merge upstream 2014-07-30 18:03:20 +02:00
zelig 34e937c976 merge upstream 2014-07-30 18:02:43 +02:00
zelig 2f5c95610f use logger instead of fmt for error in ext_app 2014-07-21 19:55:47 +01:00
zelig 74abc457ad reactor event channels have large buffer to allow more tolerance 2014-07-21 19:26:01 +01:00
zelig 194c58858c send zero event to miner.powQuitChan fixes miner hanging 2014-07-21 19:12:04 +01:00
zelig 67528cf970 ethreact/README.md 2014-07-21 15:10:56 +01:00
zelig 13cc220c0d Merge branch 'develop' of github.com:ethereum/eth-go into feature/ethutil-refactor 2014-07-21 13:31:26 +01:00
zelig 9f7d8ff302 Merge branch 'develop' of github.com:ethereum/go-ethereum into feature/ethutil-refactor 2014-07-21 13:31:03 +01:00
zelig 4d5a890b46 merge upstream 2014-07-21 13:30:37 +01:00
zelig 1e4af85a38 merge upstream 2014-07-21 13:26:29 +01:00
zelig 017d36e6b2 properly unsubscribe react channels when miner stops - fixes write on closed chan crash 2014-07-15 01:29:07 +01:00
zelig 75a7a4c97c ethreact
- use ethreact.Event,
- increased buffered event channels,
- subscribe after loop reading from channel starts
2014-07-15 01:13:39 +01:00
zelig 1735ec0362 use ethreact.Event and ethreact.ReactorEngine 2014-07-15 01:11:06 +01:00
zelig 0ecc5c815e reactor test 2014-07-15 00:15:37 +01:00
zelig 94b12f7804 fix start mining 2014-07-15 00:05:18 +01:00
zelig d1c89727dc fix send overwritten by merge 2014-07-14 19:02:34 +01:00
zelig 3d5db7288f merge upstream 2014-07-14 18:50:06 +01:00
zelig dc11b5c55e fix reactor channel blocking 2014-07-14 18:40:18 +01:00
zelig 5c03adbded fix logger channel blocking 2014-07-14 18:37:01 +01:00
zelig 353ecbb7d7 Merge branch 'develop' of github.com:ethereum/go-ethereum into feature/ethutil-refactor 2014-07-14 18:32:54 +01:00
zelig 4d77b7face remove extra case in main loop 2014-07-07 12:30:25 +01:00
zelig 5a2afc5754 fix reactor engine main loop blocked to wait if drained 2014-07-05 19:56:01 +01:00
zelig d4300c406c logger fix
- introduce quit, drained, shutdown channels
- mainLoop falls through reading message channel to drained state, and waits is blocked in default branch until any message is sent
- Flush() waits for <-drained
- Stop() pushes quit and nodges mainloop out of blocking drained state
- package-global mutex
- Reset()
- clear tests
2014-07-05 19:11:08 +01:00
zelig 4fb2905b1e Merge branch 'develop' of github.com:ethereum/eth-go into feature/ethutil-refactor 2014-07-05 12:53:00 +01:00
zelig 6b296d907b Merge branch 'develop' of github.com:ethereum/go-ethereum into feature/ethutil-refactor 2014-07-05 12:52:44 +01:00
zelig 1e4ae24126 use ethreact.Event, unbuffered event channels, subscribe after loop reading from channel starts 2014-07-04 19:48:37 +01:00
zelig 44d0d6abd2 Merge branch 'develop' of github.com:ethereum/eth-go into feature/ethutil-refactor 2014-07-04 19:40:23 +01:00
zelig 0c6f1c9c3a ethreact
- consistent renaming
- React -> Event
- ReactorEvent -> EventHandler
- NewReactorEngine -> New
- async ReactorEngine main loop with select on main eventChannel and quit channel
- ReactorEngine main loop control with Start() Stop() Flush()
- ReactorEngine.dispatch
- use sync.RWMutex
- delete eventHandler if subscribed channels go to 0
2014-07-04 19:38:53 +01:00
zelig 584d1c61ec use ethreact.Event and ethreact.ReactorEngine 2014-07-04 19:38:44 +01:00
zelig af27264140 remove reactor code from ethutil 2014-07-04 19:37:40 +01:00
zelig 9de30d96f0 Modify main wrappers
- clientIdentifier now set in main wrappers
- version handled within wrapper
- modify InitConfig now returning *ethutil.ConfigManager (passed to gui)
- added NewClientIdentity returning *ethwire.SimpleClientIdentiy (passed to ethereum)
2014-07-03 17:36:24 +01:00
zelig a3c4823511 Gui saves custom client id and loglevel
- gui NewWindow takes SimpleClientIdentity as argument
- gui NewWindow takes ethutil.ConfigManager as argument to manage flag persistence
- gui now saves loglevel and custom client id via config.Save
- rename custom client id methods consistently also in wallet.qml
- clientIdentifier now set in main wrappers
- version handled within wrapper
- modify InitConfig now returning *ethutil.ConfigManager (passed to gui)
2014-07-03 17:35:48 +01:00
zelig f02602d02d ConfigManager (transitional)
- remove clientstring handling from ethutil.Config
- ReadConfig takes no Identifier argument
- members Ver, ClientString, ClientIdentifier removed from Config
- type ConfValue removed
- expose public type ethutil.ConfigManager
- Set -> Save(key string, value interface{}) now takes any value to allow for persisting non-string values directly
- TODO: eliminate all eth specific configs, just a wrapper around globalconf
2014-07-03 17:30:51 +01:00
zelig 90c2064640 peer constructors now set version string with ethereum.ClientIdentity().String() 2014-07-03 17:30:37 +01:00
zelig c833c3fec8 add ClientIdentity() ethwire.ClientIdentity to Ethereum 2014-07-03 17:30:04 +01:00
zelig c64629964f ethwire.ClientIdentity now handles Client info sent in handshake + test 2014-07-03 17:28:27 +01:00
zelig de2da4fd19 Merge branch 'develop' of github.com:ethereum/eth-go into feature/clientid 2014-07-03 15:08:13 +01:00
zelig 198e5eeab9 EthManager interface extended with ClientIdentity() ethwire.ClientIdentity 2014-07-03 15:08:06 +01:00
zelig ff5703fd9b ethutil -> ethtrie.NewTrie 2014-07-01 15:09:43 +01:00
zelig 89630d2826 merge upstream 2014-07-01 15:03:02 +01:00
zelig ce88a73aa6 Merge branch 'develop' of github.com:ethereum/go-ethereum into feature/keys 2014-07-01 15:01:28 +01:00
zelig 12972b4b65 DBKeyStore.Load returns no error if keyring not found in db 2014-06-29 20:53:26 +01:00
zelig 098f7f23ce changed name for ethutil hex functions; and access to keyring via keyManager 2014-06-29 20:39:45 +01:00
zelig 8aea468744 gui changes
- remove lib   *EthLib, expose gui itself to initial import window
- remove addr []byte instead use dynamic adress()
- use ethereum.KeyManager to retrieve address and privateKey
- add Session string (keyRing identifier)
- add and reimplement ImportAndSetPrivKey and CreateAndSetPrivKey
2014-06-29 20:38:26 +01:00
zelig 29cc1af2bc remove ui/library; instead expose gui itself for initial window 2014-06-29 20:34:07 +01:00
zelig e43e4ff2c1 main loop uses new flags and common methods in util: db, keymanager set up; passes KeyRing/Session string to gui 2014-06-29 20:32:31 +01:00
zelig 12fbb7ae5c new command line options
- keyring: keyring/session identifier used by key manager
- keystore: choice of db/file key storage
- import message updated
- export: name of directory to export keys to (was bool)
2014-06-29 20:31:00 +01:00
zelig 2920795168 using keyPair.Mnemonic() in file key store Save method 2014-06-29 20:28:54 +01:00
zelig 25314313f8 added Mnemonic() and AsStrings() methods, added memoization for address 2014-06-29 20:28:04 +01:00
zelig a8be0d9f48 add InitFromString method to be used in gui 2014-06-29 20:26:55 +01:00
zelig ce4080faa7 Merge branch 'develop' of github.com:ethereum/go-ethereum into feature/keys 2014-06-29 18:39:31 +01:00
zelig cf7fcadeca added utility functions to set up db, keymanager, ethereum init and simplify key tasks 2014-06-29 18:39:13 +01:00
zelig 9bd67de671 remove keys file, now subsumed under ethcrypto/key_manager 2014-06-29 18:38:17 +01:00
zelig 27e1352c85 main loop uses new flags and common methods in util: db, keymanager set up 2014-06-29 18:37:22 +01:00
zelig 0ea9595d41 new command line options
- keyring: keyring/session identifier used by key manager
- keystore: choice of db/file key storage
- import message updated
- export: name of directory to export keys to (was bool)
2014-06-29 18:33:22 +01:00
zelig e38b016547 changed name for ethutil hex functions 2014-06-29 18:32:48 +01:00
zelig dabaa4cce0 change all modified calls to ethtrie, ethutil and ethcrypto functions 2014-06-29 18:30:05 +01:00
zelig 707d413761 refactor ethutil/trie to ethtrie 2014-06-29 16:26:58 +01:00
zelig 4be3521727 import math/big 2014-06-29 16:17:33 +01:00
zelig e3b911652d move CreateAddress from ethutil/common to ethcrypto 2014-06-29 16:08:33 +01:00