aboutsummaryrefslogtreecommitdiffstats
path: root/eth
Commit message (Collapse)AuthorAgeFilesLines
...
| * core, eth/filters, miner, xeth: Optimised log filteringJeffrey Wilcke2015-10-174-63/+368
| | | | | | | | | | | | | | 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.
| * eth/filters: added benchmarkJeffrey Wilcke2015-10-162-7/+96
| |
* | Merge pull request #1869 from Gustav-Simonsson/gpu_minerJeffrey Wilcke2015-10-163-12/+157
|\ \ | | | | | | all: Add GPU mining, disabled by default
| * | all: Add GPU mining, disabled by defaultGustav Simonsson2015-10-073-12/+157
| | |
* | | core/state, core, miner: handle missing root error from state.NewGustav Simonsson2015-10-163-4/+7
| |/ |/|
* | core, eth, event, miner, xeth: fix event post / subscription racePéter Szilágyi2015-10-123-27/+36
| |
* | cmd, core, eth: added official testnetJeffrey Wilcke2015-10-091-1/+17
| |
* | Merge pull request #1756 from obscuren/core-refactorJeffrey Wilcke2015-10-059-137/+486
|\ \ | |/ |/| core, core/vm: refactor
| * cmd/geth, cmd/utils, core, rpc: renamed to blockchainJeffrey Wilcke2015-10-049-144/+149
| | | | | | | | | | | | * Renamed ChainManager to BlockChain * Checkpointing is no longer required and never really properly worked when the state was corrupted.
| * cmd/evm, core/vm, test: refactored VM and coreJeffrey Wilcke2015-10-042-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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, event/filter, xeth: refactored filter systemJeffrey Wilcke2015-10-032-0/+344
| | | | | | | | | | | | | | Moved the filtering system from `event` to `eth/filters` package and removed the `core.Filter` object. The `filters.Filter` object now requires a `common.Database` rather than a `eth.Backend` and invokes the `core.GetBlockByX` directly rather than thru a "manager".
* | eth/downloader: match capabilities when querying idle peersPéter Szilágyi2015-10-023-8/+53
|/
* eth/downloader: always send termination wakes, clean leftoverPéter Szilágyi2015-09-231-20/+36
|
* core, core/types: readd transactions after chain re-orgJeffrey Wilcke2015-09-221-1/+1
| | | | | | | | | | | | | | 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 #1810 from karalabe/pure-header-verifications-2Jeffrey Wilcke2015-09-171-1/+1
|\ | | | | core, eth, miner: use pure header validation
| * core, eth, miner: use pure header validationPéter Szilágyi2015-09-161-1/+1
| |
* | Merge pull request #1801 from fjl/ethdbJeffrey Wilcke2015-09-162-43/+13
|\ \ | | | | | | all: move common.Database to ethdb and add NewBatch
| * | ethdb: remove FlushFelix Lange2015-09-151-33/+2
| | |
| * | all: move common.Database to package ethdbFelix Lange2015-09-152-10/+11
| |/
* | eth/downloader: header-chain order and ancestry checkPéter Szilágyi2015-09-153-7/+77
| |
* | eth, rpc: standardize the chain sync progress countersPéter Szilágyi2015-09-152-51/+476
|/
* core: split out TD from database and all internalsPéter Szilágyi2015-09-116-47/+66
|
* core, eth: split the db blocks into headers and bodiesPéter Szilágyi2015-09-114-84/+89
|
* cmd/geth, cmd/utils, eth: added dev mode flagJeffrey Wilcke2015-09-091-6/+9
| | | | | | | | | | | | Dev mode enabled some debugging flags such as: * VM debugging mode * Simpler proof of work * Whisper enabled by default * Datadir to a tmp datadir * Maxpeers set to 0 * Gas price of 0 * Random listen port
* eth/downloader: fix race causing occasional test failurePéter Szilágyi2015-09-011-1/+3
|
* Merge pull request #1701 from karalabe/eth62-sync-rebaseFelix Lange2015-08-2716-1266/+3292
|\ | | | | eth: implement eth/62 synchronization logic
| * eth: update metrics collection to handle eth/62 algosPéter Szilágyi2015-08-256-35/+159
| |
| * eth: port the synchronisation algo to eth/62Péter Szilágyi2015-08-258-340/+1995
| |
| * eth: kill off protocol eth/60 in preparation for eth/62Péter Szilágyi2015-08-246-804/+28
| |
| * eth, eth/downloader: handle header requests, table driven proto testsPéter Szilágyi2015-08-2411-254/+1182
| |
| * eth, metrics, p2p: prepare metrics and net packets to eth/62Péter Szilágyi2015-08-215-41/+136
| |
* | Add tests for uncle timestamps and refactor timestamp typeGustav Simonsson2015-08-251-1/+1
|/
* eth: fix an issue with pulling and inserting blocks twicePéter Szilágyi2015-08-191-2/+4
|
* Merge pull request #1627 from zsfelfoldi/gpoJeffrey Wilcke2015-08-171-10/+13
|\ | | | | GPO update
| * GPO updatezsfelfoldi2015-08-171-10/+13
| |
* | Update CPP pubkeyTaylor Gerring2015-08-171-1/+1
| |
* | Added SG bootnodeTaylor Gerring2015-08-171-2/+3
| |
* | eth, trie: removed key prefixing from state entries & merge db fixJeffrey Wilcke2015-08-141-15/+19
| | | | | | | | | | | | | | | | | | Fixed database merge strategy to use the correct database. Due to a copy paste fail when doing type evaluation the same database was being iterated (chain), all others were ignored. Removed state prefixing because {H(code): code} is stored in the same database as the rest of the state.
* | core, eth, trie, xeth: merged state, chain, extra databases in oneJeffrey Wilcke2015-08-082-74/+120
|/
* cmd/geth, eth: added canonical extra dataJeffrey Wilcke2015-08-071-7/+2
| | | | | Implemented canonical extra data according to https://github.com/ethereum/wiki/wiki/Extra-Data
* miner: gas limit strategy, target 3141592 & def gas price 50 ShannonGustav Simonsson2015-08-041-1/+2
|
* cmd, core, eth: support for the olympic networkJeffrey Wilcke2015-08-041-0/+9
| | | | Added a --olympic flag which initialiser the olympic protocol settings
* eth, eth/downloader: don't report stall if fetcher filled the blockPéter Szilágyi2015-07-293-43/+65
|
* Merge pull request #1533 from ethersphere/frontier/etherbaseJeffrey Wilcke2015-07-281-1/+5
|\ | | | | Etherbase defaults to first account even if it is created during the session
| * etherbase defaults to first account even if created during the sessionzelig2015-07-271-1/+5
| |
* | Merge pull request #1515 from fjl/license-fixesJeffrey Wilcke2015-07-2816-16/+16
|\ \ | |/ |/| all: fix license headers one more time
| * all: fix license headers one more timeFelix Lange2015-07-2416-16/+16
| | | | | | | | I forgot to update one instance of "go-ethereum" in commit 3f047be5a.
* | params: reduce extra data to 32 bytesJeffrey Wilcke2015-07-261-2/+3
| |
* | Merge pull request #1524 from obscuren/default-extraJeffrey Wilcke2015-07-251-0/+7
|\ \ | | | | | | eth: set default miner extra to client name
| * | eth: set default miner extra to client nameJeffrey Wilcke2015-07-251-0/+7
| | |
* | | cmd/geth, core, eth: Version 1.0.0Jeffrey Wilcke2015-07-253-3/+4
|/ / | | | | | | | | | | | | Genesis release. Closes #1402 Conflicts: cmd/geth/main.go
* | Merge pull request #1510 from fjl/license-fixesJeffrey Wilcke2015-07-2316-64/+64
|\| | | | | all: license fixes
| * all: update license headers to distiguish GPL/LGPLFelix Lange2015-07-2316-64/+64
| | | | | | | | | | All code outside of cmd/ is licensed as LGPL. The headers now reflect this by calling the whole work "the go-ethereum library".
* | cmd, core, eth, ethdb: cache flag to allocate memory for db internal usePéter Szilágyi2015-07-221-1/+2
|/
* cmd, core, eth, common: genesis preparationJeffrey Wilcke2015-07-102-18/+29
| | | | | Implemented the --genesis flag thru which we can set a custom genesis block, including the official Ethereum genesis block.
* Merge pull request #1451 from karalabe/handle-potential-TD-forge-attackJeffrey Wilcke2015-07-092-99/+44
|\ | | | | eth/downloader: drop peer if advertised TD but won't delvier
| * eth/downloader: drop peer if advertised TD but won't delvierPéter Szilágyi2015-07-092-99/+44
| |
* | Merge pull request #1450 from karalabe/fix-propagation-tdJeffrey Wilcke2015-07-092-5/+17
|\ \ | | | | | | eth: calculate the correct TD, only update if better
| * | eth: calculate the correct TD, only update if betterPéter Szilágyi2015-07-092-5/+17
| |/
* / eth, ethdb: fix a data race during startup/shutdownPéter Szilágyi2015-07-091-25/+3
|/
* all: add some godoc synopsis commentsFelix Lange2015-07-071-0/+1
|
* all: update license informationFelix Lange2015-07-0716-0/+256
|
* Merge pull request #1428 from obscuren/coinbase-fixesJeffrey Wilcke2015-07-071-2/+8
|\ | | | | cmd,eth,rpc,tests: default coinbase
| * eth,miner,rpc: set coinbaseJeffrey Wilcke2015-07-071-0/+1
| |
| * cmd,eth,rpc,tests: default coinbaseJeffrey Wilcke2015-07-071-2/+7
| |
* | Registrar and contractInfo handlingzelig2015-07-071-1/+12
|/ | | | | | | | | | | | | | | | * resolver -> common/registrar * global registrar name registry interface * add Call to resolver backend interface * the hashReg and UrlHing contracts now initialised from global registry * initialization of contracts uniform * improve errors and more econsistent method names * common/registrar/ethreg: versioned registrar * integrate new naming and registrar in natspec * js console api: setGlobalRegistrar, setHashReg, setUrlHint * js test TestContract uses mining - tests fixed all pass * eth/backend: allow PoW test mode (small ethash DAG) * console jsre refers to resolver.abi/addr, * cmd/geth/contracts.go moved to common/registrar
* core, eth, rpc: proper gas used. Closes #1417Jeffrey Wilcke2015-07-071-1/+3
| | | | Added some additional backward compatibility code for old receipts
* Merge pull request #1283 from ethersphere/frontier/accountsJeffrey Wilcke2015-07-041-10/+2
|\ | | | | Account management improvements
| * require explicit etherbase address for mining. Falling back to primary is ↵zelig2015-07-031-3/+2
| | | | | | | | risky given it is inconsistent if keys are imported/merged/created or copied/transfered
| * unlock multiple passes and obsolete primaryzelig2015-07-031-9/+2
| | | | | | | | | | | | | | * multiple passwords allowed in password file * split on "\n", sideeffect: chop trailing slashes. fixes common mistake <(echo 'pass') * remove accounts.Primary method * do not fall back to primary account for mining
* | core, eth, miner, xeth: receipt storage fixJeffrey Wilcke2015-07-041-6/+3
| | | | | | | | | | * Added GetReceiptsFromBlock, GetReceipt, PutReceipts * Added ContractAddress to receipt. See #1042
* | core, miner: miner header validation, transaction & receipt writingJeffrey Wilcke2015-07-032-2/+2
| | | | | | | | | | | | | | | | * 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
* | eth/downloader: fix a rare test race on the OSX CIPéter Szilágyi2015-07-031-1/+7
|/
* eth, eth/downloader: fix #1231, DOS vulnerability in hash queueingPéter Szilágyi2015-07-012-5/+15
|
* eth: fix #1371, double lock during block/txn known set limitationPéter Szilágyi2015-07-011-10/+4
|
* eth/downloader: reduce hash fetches in prep for eth/61Péter Szilágyi2015-07-011-3/+3
|
* eth, eth/downloader: transition to eth 61Péter Szilágyi2015-07-018-140/+689
|
* eth, eth/downloader: pass the eth protocol version throughPéter Szilágyi2015-07-014-36/+45
|
* eth: add the blocks from numbers protocol messagePéter Szilágyi2015-07-014-26/+43
|
* eth: fix #1319, put an upper limit on the known txns and blocksPéter Szilágyi2015-07-011-0/+19
|
* eth: clean up peer struct a bit, fix double txn bcastPéter Szilágyi2015-07-014-71/+69
|
* eth: start cleaning up old protocol implementation, add metricsPéter Szilágyi2015-07-013-39/+105
|
* cmd/geth, cmd/utils, eth: advertise both eth/60 and eth/61Péter Szilágyi2015-07-013-40/+60
|
* cmd, core, eth, metrics, p2p: require enabling metricsPéter Szilágyi2015-06-303-48/+49
|
* cmd/geth, eth, ethdb: monitor database compactionsPéter Szilágyi2015-06-301-15/+24
|
* gpo non-existent block checkszsfelfoldi2015-06-301-4/+11
|
* core, eth, rpc: avoid unnecessary block header copyingFelix Lange2015-06-302-7/+7
|
* eth/downloader, eth/fetcher: use core.GenerateChain in testsFelix Lange2015-06-302-236/+140
| | | | | | TestMadeupParentBlockChainAttack has been deleted because it was too hard to port and the attack that it checks the prevention of is being averted in a different way (through a protocol change).
* core/types: make blocks immutableFelix Lange2015-06-301-1/+4
|
* core/types: make transactions immutableFelix Lange2015-06-301-2/+2
|
* eth/fetcher: don't drop on future blocks, just not propagatePéter Szilágyi2015-06-291-4/+16
|
* eth/fetcher: don't double filter/fetch the same blockPéter Szilágyi2015-06-291-1/+1
|
* eth, ethdb: measure database operation latencies tooPéter Szilágyi2015-06-241-9/+9
|
* eth: make sure dbs are lvldb before instrumentingPéter Szilágyi2015-06-241-18/+21
|
* core, eth, eth/fetcher, ethdb: polish metrics gathering a bitPéter Szilágyi2015-06-242-5/+24
|
* eth/fetcher: fix failed mergePéter Szilágyi2015-06-241-1/+1
|
* cmd/geth, eth/fetcher: polish metrics reporting, add some morePéter Szilágyi2015-06-241-10/+15
|
* cmd/geth, eth/fetcher: initial metrics supportPéter Szilágyi2015-06-241-0/+14
| | | | | Conflicts: cmd/geth/admin.go
* eth/fetcher: fix a closure data racePéter Szilágyi2015-06-231-2/+3
|
* eth/fetcher: clean up test assertionsPéter Szilágyi2015-06-221-111/+49
|
* eth/fetcher: remove test sleeps (15s -> 2.8s)Péter Szilágyi2015-06-222-59/+167
|
* eth/fetcher: handle and (crude) test block memory DOSPéter Szilágyi2015-06-222-23/+105
|
* eth/fetcher: handle and test block announce DOS attacksPéter Szilágyi2015-06-222-7/+82
|
* eth/fetcher: lower max cache size, add timeout slackPéter Szilágyi2015-06-191-4/+15
|
* eth: fix the propagation/announce order for mined blocksPéter Szilágyi2015-06-191-4/+4
|
* eth/fetcher: since uncles are allowed, drop phase testPéter Szilágyi2015-06-191-51/+0
|
* eth/fetcher: allow backward uncle imports tooPéter Szilágyi2015-06-191-2/+3
|
* eth: fix test breakage from the previous commitPéter Szilágyi2015-06-182-2/+1
|
* eth, eth/fetcher: propagate after header verify, announce only on insertPéter Szilágyi2015-06-184-43/+81
|
* eth: clean the block request packet handling a bitPéter Szilágyi2015-06-181-17/+17
|
* eth, eth/fetcher: move propagated block import into fetcherPéter Szilágyi2015-06-184-123/+106
|
* eth/fetcher: make tests thread safePéter Szilágyi2015-06-181-22/+34
|
* eth/fetcher: build longest chain until proven otherwisePéter Szilágyi2015-06-183-31/+95
|
* eth/fetcher: fix premature queue cleanup, general polishesPéter Szilágyi2015-06-181-35/+47
|
* eth, eth/fetcher: define and enforce propagation boundariesPéter Szilágyi2015-06-183-24/+60
|
* eth/fetcher: deduplicate future blocksPéter Szilágyi2015-06-182-25/+71
|
* eth, eth/fetcher: cache future propagated blocks tooPéter Szilágyi2015-06-183-0/+51
|
* eth, eth/fetcher: use an import queue to store out of order blocksPéter Szilágyi2015-06-183-33/+91
|
* eth/fetcher: add test to check for duplicate downloadsPéter Szilágyi2015-06-181-0/+38
|
* eth/fetcher: fix timer reset bug, add initial testsPéter Szilágyi2015-06-183-6/+212
|
* eth, eth/fetcher: separate notification sync mechanismPéter Szilágyi2015-06-184-182/+293
|
* eth/downloader: extend slow test to fix even slower CI server...Péter Szilágyi2015-06-181-1/+1
|
* eth/downloader: always reenter processing if not exitingPéter Szilágyi2015-06-182-39/+37
|
* eth, eth/downloader: fix processing interrupt caused by temp cancelPéter Szilágyi2015-06-183-24/+22
|
* eth/downloader: fix #1280, overlapping (good/bad) delivery hangPéter Szilágyi2015-06-172-0/+35
|
* Merge pull request #1260 from obscuren/tx-drop-low-txJeffrey Wilcke2015-06-161-0/+1
|\ | | | | core: drop low gas tx
| * core, miner: tx pool drops txs below ask priceobscuren2015-06-151-0/+1
| |
* | Merge pull request #990 from zsfelfoldi/gaspriceJeffrey Wilcke2015-06-152-16/+217
|\ \ | | | | | | eth: add GasPriceOracle
| * | fixed gas price corr. factorzsfelfoldi2015-06-151-1/+1
| | |
| * | fallback for uninitialized GPO config valueszsfelfoldi2015-06-151-0/+3
| | |
| * | fixed initial base price bugzsfelfoldi2015-06-151-0/+4
| | |
| * | added missing sourcezsfelfoldi2015-06-151-0/+174
| | |
| * | fixed saving receiptszsfelfoldi2015-06-151-16/+36
| |/
* | eth: don't refetch non fitting blocks to avoid duplicatesPéter Szilágyi2015-06-151-1/+1
| |
* | eth/downloader: detailed comment for the race corner casePéter Szilágyi2015-06-151-4/+15
| |
* | eth/downloader: fix import statistic reset, fetch hashes asyncPéter Szilágyi2015-06-151-11/+14
| |
* | eth, eth/downloader: do async block fetches, add dl testsPéter Szilágyi2015-06-153-5/+47
| |
* | eth/downloader: sanity test for multi peer syncsPéter Szilágyi2015-06-151-0/+31
| |
* | eth, eth/downloader: move block processing into the downlaoderPéter Szilágyi2015-06-154-231/+253
| |
* | eth/downloader: add valid peer during attacks (check interference)Péter Szilágyi2015-06-151-93/+140
| |
* | eth/downloader: instreument and test the sync peer dropPéter Szilágyi2015-06-152-9/+66
| |
* | eth: fix an accidental test compile errorPéter Szilágyi2015-06-151-3/+1
| |
* | eth/downloader: support individual peers in the test suitePéter Szilágyi2015-06-151-112/+113
| |
* | eth/downloader: remove uneeded testing functionsPéter Szilágyi2015-06-152-37/+2
| |
* | eth, eth/downloader: move peer removal into downloaderPéter Szilágyi2015-06-156-82/+83
|/
* eth, core: interupt the chain processing on stopobscuren2015-06-121-1/+1
| | | | | Added an additional channel which is used to interupt the chain manager when it's processing blocks.
* Merge pull request #1227 from karalabe/block-fetcher-optimisationsJeffrey Wilcke2015-06-111-18/+37
|\ | | | | eth: optimize the notification/explicit fetch mechanism
| * eth: dedup fetches to ensure no blocks are pulled twicePéter Szilágyi2015-06-111-5/+23
| |
| * eth: randomly fetch announced block (don't hammer origin)Péter Szilágyi2015-06-111-4/+5
| |
| * eth: discard fetched blocks that don't fit (no goroutine)Péter Szilágyi2015-06-111-13/+13
| |
* | Merge pull request #1224 from karalabe/report-import-progressJeffrey Wilcke2015-06-111-4/+42
|\ \ | | | | | | cmd/geth, eth/downloader: collect and report import progress too
| * | eth/downloader: fetch the block hashes on the fly, when neededPéter Szilágyi2015-06-111-9/+5
| | |
| * | cmd/geth, eth/downloader: rough guess at the import etaPéter Szilágyi2015-06-101-2/+13
| | |
| * | cmd/geth, eth/downloader: collect and report import progress tooPéter Szilágyi2015-06-101-4/+35
| |/
* / core: fixed race condition in the transaction poolobscuren2015-06-101-5/+0
|/ | | | Removed `Stop/Start` mechanism from the transaction pool.
* core, eth: document that result of GetTransactions is modifiableFelix Lange2015-06-091-2/+4
|
* eth/downloader: fix hash fetch timeout handlingFelix Lange2015-06-091-12/+18
| | | | Fixes #1206
* eth: add protocol testsFelix Lange2015-06-091-336/+190
| | | | The protocol tests were commented out when eth/downloader was introduced.
* eth: limit number of sent transactions based on message sizeFelix Lange2015-06-092-9/+109
| | | | | | | | | | | | | | Nodes that are out of sync will queue many transactions, which causes the initial transactions message to grow very large. Larger transactions messages can make communication impossible if the message is too big to send. Big transactions messages also exhaust egress bandwidth, which degrades other peer connections. The new approach to combat these issues is to send transactions in smaller batches. This commit introduces a new goroutine that handles delivery of all initial transaction transfers. Size-limited packs of transactions are sent to one peer at a time, conserving precious egress bandwidth.
* eth: limit number of sent blocks based on message sizeFelix Lange2015-06-091-2/+11
| | | | | If blocks get larger, sending 256 at once can make messages large enough to exceed the low-level write timeout.
* eth: fix a data race in the hash announcement processingPéter Szilágyi2015-06-091-10/+18
|
* eth: fix data race accessing peer.tdPéter Szilágyi2015-06-093-14/+33
|
* eth: fix data race accessing peer.recentHashPéter Szilágyi2015-06-093-12/+32
|
* Merge pull request #1188 from karalabe/newblockhashes-proposalJeffrey Wilcke2015-06-094-81/+262
|\ | | | | eth: implement the NewBlockHashes protocol proposal
| * eth: clean up pending announce download map, polish logsPéter Szilágyi2015-06-092-14/+26
| |
| * eth: split and handle explicitly vs. download requested blocksPéter Szilágyi2015-06-092-23/+81
| |
| * eth: fetch announced hashes from origin, periodicallyPéter Szilágyi2015-06-092-32/+80
| |
| * eth: mark blocks as known when broadcasting hashes tooPéter Szilágyi2015-06-081-0/+3
| |
| * eth: implement the NewBlockHashes protocol proposalPéter Szilágyi2015-06-083-63/+123
| |
* | Merge pull request #1153 from karalabe/downloader-banned-starvation-attackJeffrey Wilcke2015-06-096-177/+315
|\ \ | | | | | | eth/downloader: gather and ban hashes from invalid chains
| * | eth/downloader: test registration rejection on head banPéter Szilágyi2015-06-081-2/+10
| | |
| * | eth/downloader: reject peer registration if head is bannedPéter Szilágyi2015-06-081-4/+15
| | |
| * | eth/downloader: cap the hash ban set, add test for itPéter Szilágyi2015-06-086-12/+64
| | |
| * | eth/downloader: fix throttling test to be less timing dependentPéter Szilágyi2015-06-081-3/+7
| | |
| * | eth/downloader: fix another rebase errorPéter Szilágyi2015-06-081-2/+1
| | |
| * | eth/downloader: preallocate the block cachePéter Szilágyi2015-06-083-21/+14
| | |
| * | eth/downloader: fix merge compile errorPéter Szilágyi2015-06-081-1/+1
| | |
| * | eth/downloader: don't block hash deliveries while pulling blocksPéter Szilágyi2015-06-081-17/+14
| | |
| * | eth/downloader: update test for shitty travisPéter Szilágyi2015-06-081-1/+1
| | |
| * | eth/downloader: clean up and simplify the code a bitPéter Szilágyi2015-06-081-13/+3
| | |
| * | eth/downloader: short circuit sync if head hash is bannedPéter Szilágyi2015-06-081-0/+4
| | |
| * | eth/downloader: accumulating hash bans for reconnecting attackersPéter Szilágyi2015-06-082-5/+126
| | |
| * | eth/downloader: clean up tests and unused variablesPéter Szilágyi2015-06-082-120/+79
| |/
* | core: write accounts to statedb. Closes #1210obscuren2015-06-091-1/+1
| |
* | core: settable genesis nonceobscuren2015-06-091-1/+6
|/ | | | | | | You can set the nonce of the block with `--genesisnonce`. When the genesis nonce changes and it doesn't match with the first block in your database it will fail. A new `datadir` must be given if the nonce of the genesis block changes.
* Merge pull request #1189 from karalabe/downloader-polishesJeffrey Wilcke2015-06-053-19/+50
|\ | | | | eth/downloader: handle timeouts more gracefully
| * eth/downloader: differentiate stale and nonexistent deliveriesPéter Szilágyi2015-06-052-19/+46
| |
| * eth/downloader: log hard timeouts and reset capacityPéter Szilágyi2015-06-052-0/+4
| |
* | eth, eth/downloader: fix #1098, elevate empty hash errors to peer dropsPéter Szilágyi2015-06-052-3/+3
|/
* Merge pull request #1181 from obscuren/txpool_fixesJeffrey Wilcke2015-06-051-30/+1
|\ | | | | cmd: transaction pool fixes and improvements
| * core, eth, miner: moved nonce management to tx pool.obscuren2015-06-041-29/+0
| | | | | | | | | | | | | | | | Removed the managed tx state from the chain manager to the transaction pool where it's much easier to keep track of nonces (and manage them). The transaction pool now also uses the queue and pending txs differently where queued txs are now moved over to the pending queue (i.e. txs ready for processing and propagation).
| * cmd/utils, eth: core.NewBlockProcessor no longer needs TxPoolFelix Lange2015-06-041-1/+1
| |
* | eth/downloader: drop log entry from peer, it's covered alreadyPéter Szilágyi2015-06-041-5/+0
| |
* | eth/downloader: log after state updates, easier to debugPéter Szilágyi2015-06-041-5/+3
| |
* | eth/downloader: fix #1178, don't request blocks beyond the cache boundsPéter Szilágyi2015-06-043-15/+35
|/
* eth/downloader: demote peers if they exceed the soft limits at 1 blocks alreadyPéter Szilágyi2015-06-031-3/+8
|
* eth/downloader: add a basic block download congestion controlPéter Szilágyi2015-06-035-55/+67
|
* Update bootnodeTaylor Gerring2015-06-011-1/+1
|
* eth: 100% block propogationobscuren2015-05-281-2/+1
|
* core, eth/downloader: expose the bad hashes, check in downloaderPéter Szilágyi2015-05-282-2/+17
|
* eth: hard disconnect if a peer is flakyPéter Szilágyi2015-05-271-4/+12
|
* Merge pull request #1108 from karalabe/fine-seedingFelix Lange2015-05-271-7/+5
|\ | | | | Fine tune seeder and p2p peer handling
| * cmd/geth, cmd/utils, eth, p2p: pass and honor a no discovery flagPéter Szilágyi2015-05-271-0/+2
| |
| * eth, p2p: start the p2p server even if maxpeers == 0Péter Szilágyi2015-05-261-7/+3
| |
* | core: check negative value transactions. Closes #1109obscuren2015-05-271-1/+0
| |
* | eth/downloader: silence "Added N blocks from..." if N == 0Péter Szilágyi2015-05-261-1/+1
|/
* Merge pull request #1014 from fjl/p2p-dialer-3000Jeffrey Wilcke2015-05-261-1/+1
|\ | | | | p2p: new dialer, peer management without locks
| * eth: stop p2p.Server on shutdownFelix Lange2015-05-251-1/+1
| |
* | eth, eth/downloader: surface downloaded block origin, drop on errorPéter Szilágyi2015-05-265-23/+39
| |
* | expand acronym in log message from TDJason Carver2015-05-231-1/+1
|/ | | to total difficulty
* Merge pull request #1055 from ethersphere/autodagJeffrey Wilcke2015-05-221-0/+88
|\ | | | | automatic DAG pregeneration for smooth epoch transitions
| * automatic DAG pregeneration for smooth epoch transitionszelig2015-05-211-0/+88
| | | | | | | | | | | | | | | | - backend: AutoDAG bool flag passed from cli/eth.Config to ethereum, autoDAG loop started if true - backend: autoDAG loop start/stop, remove previous DAG - cli: AutoDAG bool flag, off by default, but automatically ON if mining - admin jsre: add startAutoDAG stopAutoDAG and makeDAG in miner section - switch on/off DAG autogeneration when miner started/stopped on console
* | Merge pull request #1064 from karalabe/downloader-attacksJeffrey Wilcke2015-05-226-28/+99
|\ \ | |/ |/| Fix two additional download vulnerabilities
| * eth, eth/downloader: remove duplicate consts, bump hash fetch to 2KPéter Szilágyi2015-05-216-13/+14
| |
| * eth/downloader: circumvent a forged block chain with known parent attackPéter Szilágyi2015-05-212-13/+56
| |
| * eth/downloader: prevent a peer from dripping bad hashesPéter Szilágyi2015-05-212-9/+36
| |
* | eth: reduced max open files for LevelDBobscuren2015-05-211-1/+1
| |
* | Merge pull request #1048 from ethersphere/cli-fixesJeffrey Wilcke2015-05-201-0/+20
|\ \ | | | | | | CLI, JSRE admin and Solc improvements
| * | solc now in ethereum, fixes solc path setting; setSolc() didnt workzelig2015-05-201-0/+20
| |/
* | Merge pull request #1050 from karalabe/handle-slow-download-testerJeffrey Wilcke2015-05-201-1/+1
|\ \ | | | | | | eth/downloader: fix test to it doesn't time out on a slow machine
| * | eth/downloader: fix test to it doesn't time out on a slow machinePéter Szilágyi2015-05-201-1/+1
| | |
* | | eth: fix odd method names in peer setPéter Szilágyi2015-05-202-7/+7
| |/ |/|
* | Merge pull request #1035 from karalabe/eth-threadsafe-peersJeffrey Wilcke2015-05-193-68/+150
|\ \ | | | | | | eth: make the peer-set thread safe
| * | eth: remote a superfluous peerSet methodPéter Szilágyi2015-05-191-12/+0
| | |
| * | eth: make the peer set thread safePéter Szilágyi2015-05-193-68/+162
| |/
* / core: parallelise nonce checking when processing blocksobscuren2015-05-181-2/+2
|/ | | | | | ChainManager now uses a parallel approach to block processing where all nonces are checked seperatly from the block processing process. This speeds up the process by about 3 times on my i7
* eth/downloader: moved start eventobscuren2015-05-161-2/+2
| | | | Start event has moved because it could possibly could stall the miner
* eth, cmd/geth: start mining from console respects CLI flagobscuren2015-05-161-0/+2
|
* Merge pull request #996 from karalabe/fix-potential-crosscheck-raceJeffrey Wilcke2015-05-161-5/+7
|\ | | | | eth/downloader: circumvent download race between crosscheck and hashes
| * eth/downloader: circumvent download race between crosscheck and hashesPéter Szilágyi2015-05-161-5/+7
| |
* | eth/downloader: fix #992, where tests may time out on a slow machinePéter Szilágyi2015-05-161-0/+6
|/
* eth/downloader: fix cancel channel double closePéter Szilágyi2015-05-161-3/+8
|
* eth/downloader: circumvent a fake blockchain attackPéter Szilágyi2015-05-152-27/+58
|
* eth/downloader: don't penalize for stale cross checksPéter Szilágyi2015-05-151-7/+17
|
* eth, eth/downloader: detect and handle madeup hash attacksPéter Szilágyi2015-05-154-43/+110
|
* eth: drop a sync peer if it sends an invalid hash chainPéter Szilágyi2015-05-151-1/+1
|
* eth/downloader: circumvent hash reordering attacksPéter Szilágyi2015-05-153-49/+88
|
* eth/downloader: check sync after failed attacksPéter Szilágyi2015-05-152-7/+23
|
* eth/downloader: add a test for detecting missing blocksPéter Szilágyi2015-05-152-8/+24
|
* eth, eth/downloader: prevent hash repeater attackPéter Szilágyi2015-05-154-15/+50
|
* eth/downloader: fixed testobscuren2015-05-151-1/+3
|
* eth, eth/downloader, miner: use download events to check miner startobscuren2015-05-153-3/+23
|
* Merge pull request #974 from karalabe/downloader-fix-unknown-parent-attackJeffrey Wilcke2015-05-144-38/+92
|\ | | | | eth, eth/downloader: handle a potential unknown parent attack
| * eth/downloader: add a small additional check to the testPéter Szilágyi2015-05-141-0/+3
| |
| * eth/downloader: remove a previous leftoverPéter Szilágyi2015-05-141-1/+0
| |
| * eth, eth/downloader: remove parent verification from the downlaoderPéter Szilágyi2015-05-144-46/+17
| |
| * eth, eth/downloader: handle a potential unknown parent attackPéter Szilágyi2015-05-143-31/+112
| |
* | Merge pull request #950 from karalabe/downloader-cancel-syncJeffrey Wilcke2015-05-141-32/+37
|\ \ | | | | | | eth/downloader: fix deliveries to check for sync cancels
| * | eth/downloader: remove a redundant sync progress checkPéter Szilágyi2015-05-131-4/+0
| | |
| * | eth/downloader: add a user sync notificatonPéter Szilágyi2015-05-131-0/+5
| | |