Felix Lange 
							
						 
					 
					
						
						
							
						
						3f047be5aa 
					 
					
						
						
							
							all: update license headers to distiguish GPL/LGPL  
						
						 
						
						... 
						
						
						
						All code outside of cmd/ is licensed as LGPL. The headers
now reflect this by calling the whole work "the go-ethereum library". 
						
						
					 
					
						2015-07-22 18:51:45 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						4f95e2f9ec 
					 
					
						
						
							
							eth: calculate the correct TD, only update if better  
						
						 
						
						
						
						
					 
					
						2015-07-09 13:55:06 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Felix Lange 
							
						 
					 
					
						
						
							
						
						ea54283b30 
					 
					
						
						
							
							all: update license information  
						
						 
						
						
						
						
					 
					
						2015-07-07 14:12:44 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						d6f2c0a76f 
					 
					
						
						
							
							eth, eth/downloader:  fix   #1231 , DOS vulnerability in hash queueing  
						
						 
						
						
						
						
					 
					
						2015-07-01 15:21:35 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						f43c07cb3c 
					 
					
						
						
							
							eth, eth/downloader: transition to eth 61  
						
						 
						
						
						
						
					 
					
						2015-06-30 19:05:06 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						af51dc4d63 
					 
					
						
						
							
							eth, eth/downloader: pass the eth protocol version through  
						
						 
						
						
						
						
					 
					
						2015-06-30 19:00:01 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						aac2b6ae4c 
					 
					
						
						
							
							eth: add the blocks from numbers protocol message  
						
						 
						
						
						
						
					 
					
						2015-06-30 19:00:01 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						6fc85f1ec2 
					 
					
						
						
							
							eth: clean up peer struct a bit, fix double txn bcast  
						
						 
						
						
						
						
					 
					
						2015-06-30 19:00:01 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						2c8ed76e01 
					 
					
						
						
							
							eth: start cleaning up old protocol implementation, add metrics  
						
						 
						
						
						
						
					 
					
						2015-06-30 19:00:00 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						393d675690 
					 
					
						
						
							
							cmd/geth, cmd/utils, eth: advertise both eth/60 and eth/61  
						
						 
						
						
						
						
					 
					
						2015-06-30 19:00:00 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Felix Lange 
							
						 
					 
					
						
						
							
						
						76821d167a 
					 
					
						
						
							
							core, eth, rpc: avoid unnecessary block header copying  
						
						 
						
						
						
						
					 
					
						2015-06-29 18:51:48 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						4180ca7fe4 
					 
					
						
						
							
							eth: fix the propagation/announce order for mined blocks  
						
						 
						
						
						
						
					 
					
						2015-06-19 10:07:37 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						90d45f0397 
					 
					
						
						
							
							eth: fix test breakage from the previous commit  
						
						 
						
						
						
						
					 
					
						2015-06-18 18:25:27 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						b91b581b80 
					 
					
						
						
							
							eth, eth/fetcher: propagate after header verify, announce only on insert  
						
						 
						
						
						
						
					 
					
						2015-06-18 18:00:19 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						629705ad53 
					 
					
						
						
							
							eth: clean the block request packet handling a bit  
						
						 
						
						
						
						
					 
					
						2015-06-18 16:09:34 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						5ec6ecc511 
					 
					
						
						
							
							eth, eth/fetcher: move propagated block import into fetcher  
						
						 
						
						
						
						
					 
					
						2015-06-18 15:56:08 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						37c5ff392f 
					 
					
						
						
							
							eth/fetcher: build longest chain until proven otherwise  
						
						 
						
						
						
						
					 
					
						2015-06-18 15:56:08 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						497a7f1717 
					 
					
						
						
							
							eth, eth/fetcher: define and enforce propagation boundaries  
						
						 
						
						
						
						
					 
					
						2015-06-18 15:56:08 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						11c8f83a58 
					 
					
						
						
							
							eth, eth/fetcher: cache future propagated blocks too  
						
						 
						
						
						
						
					 
					
						2015-06-18 15:56:08 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						057bc237ad 
					 
					
						
						
							
							eth, eth/fetcher: use an import queue to store out of order blocks  
						
						 
						
						
						
						
					 
					
						2015-06-18 15:56:07 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						7c2af1c117 
					 
					
						
						
							
							eth, eth/fetcher: separate notification sync mechanism  
						
						 
						
						
						
						
					 
					
						2015-06-18 15:56:07 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						fc7abd9886 
					 
					
						
						
							
							eth, eth/downloader: move block processing into the downlaoder  
						
						 
						
						
						
						
					 
					
						2015-06-15 09:22:37 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						66d3dc8690 
					 
					
						
						
							
							eth, eth/downloader: move peer removal into downloader  
						
						 
						
						
						
						
					 
					
						2015-06-15 09:22:36 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Felix Lange 
							
						 
					 
					
						
						
							
						
						6c73a59806 
					 
					
						
						
							
							eth: limit number of sent transactions based on message size  
						
						 
						
						... 
						
						
						
						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. 
						
						
					 
					
						2015-06-09 17:07:10 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Felix Lange 
							
						 
					 
					
						
						
							
						
						41b2008a66 
					 
					
						
						
							
							eth: limit number of sent blocks based on message size  
						
						 
						
						... 
						
						
						
						If blocks get larger, sending 256 at once can make messages large
enough to exceed the low-level write timeout. 
						
						
					 
					
						2015-06-09 17:06:31 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						f86707713c 
					 
					
						
						
							
							eth: fix data race accessing peer.td  
						
						 
						
						
						
						
					 
					
						2015-06-09 14:56:27 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						44147d057d 
					 
					
						
						
							
							eth: fix data race accessing peer.recentHash  
						
						 
						
						
						
						
					 
					
						2015-06-09 14:27:44 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jeffrey Wilcke 
							
						 
					 
					
						
						
							
						
						05cae69d72 
					 
					
						
						
							
							Merge pull request  #1188  from karalabe/newblockhashes-proposal  
						
						 
						
						... 
						
						
						
						eth: implement the NewBlockHashes protocol proposal 
						
						
					 
					
						2015-06-09 04:07:46 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						8216bb901c 
					 
					
						
						
							
							eth: clean up pending announce download map, polish logs  
						
						 
						
						
						
						
					 
					
						2015-06-09 00:37:10 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						9ed166c196 
					 
					
						
						
							
							eth: split and handle explicitly vs. download requested blocks  
						
						 
						
						
						
						
					 
					
						2015-06-08 20:38:39 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						fdccce781e 
					 
					
						
						
							
							eth: fetch announced hashes from origin, periodically  
						
						 
						
						
						
						
					 
					
						2015-06-08 19:24:56 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						6f415b96b3 
					 
					
						
						
							
							eth: implement the NewBlockHashes protocol proposal  
						
						 
						
						
						
						
					 
					
						2015-06-08 18:44:02 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						63c6cedb14 
					 
					
						
						
							
							eth/downloader: cap the hash ban set, add test for it  
						
						 
						
						
						
						
					 
					
						2015-06-08 14:12:00 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								obscuren 
							
						 
					 
					
						
						
							
						
						e5d7627427 
					 
					
						
						
							
							eth: 100% block propogation  
						
						 
						
						
						
						
					 
					
						2015-05-28 17:01:44 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						5235e01b8d 
					 
					
						
						
							
							eth: hard disconnect if a peer is flaky  
						
						 
						
						
						
						
					 
					
						2015-05-27 18:58:51 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						eafdc1f8e3 
					 
					
						
						
							
							eth, eth/downloader: surface downloaded block origin, drop on error  
						
						 
						
						
						
						
					 
					
						2015-05-26 14:00:21 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jeffrey Wilcke 
							
						 
					 
					
						
						
							
						
						af28736bd0 
					 
					
						
						
							
							Merge pull request  #1064  from karalabe/downloader-attacks  
						
						 
						
						... 
						
						
						
						Fix two additional download vulnerabilities 
						
						
					 
					
						2015-05-21 09:00:12 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						06a041589f 
					 
					
						
						
							
							eth, eth/downloader: remove duplicate consts, bump hash fetch to 2K  
						
						 
						
						
						
						
					 
					
						2015-05-21 18:16:04 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						3c8227b935 
					 
					
						
						
							
							eth: fix odd method names in peer set  
						
						 
						
						
						
						
					 
					
						2015-05-20 10:34:45 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						5422fe5125 
					 
					
						
						
							
							eth: make the peer set thread safe  
						
						 
						
						
						
						
					 
					
						2015-05-18 21:33:37 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						d2d5dbc6fb 
					 
					
						
						
							
							eth/downloader: fix active peer shadowing, polish func names  
						
						 
						
						
						
						
					 
					
						2015-05-13 13:13:43 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								obscuren 
							
						 
					 
					
						
						
							
						
						8fe01b4bfa 
					 
					
						
						
							
							eth: 100% tx propagation  
						
						 
						
						
						
						
					 
					
						2015-05-12 19:01:01 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						bd5720f480 
					 
					
						
						
							
							eth, eth/downloader: handle sync errors a bit more gracefully  
						
						 
						
						
						
						
					 
					
						2015-05-08 15:22:48 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						9d188f73b5 
					 
					
						
						
							
							eth, eth/downloader: make synchronize thread safe  
						
						 
						
						
						
						
					 
					
						2015-05-07 21:07:20 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								obscuren 
							
						 
					 
					
						
						
							
						
						016f152b36 
					 
					
						
						
							
							eth, eth/downloader: Moved block processing & graceful shutdown  
						
						 
						
						... 
						
						
						
						The downloader is no longer responsible for processing blocks. The
eth-protocol handler now takes care of this instead.
Added graceful shutdown during block processing. Closes  #846  
						
						
					 
					
						2015-05-01 15:58:44 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								obscuren 
							
						 
					 
					
						
						
							
						
						8595198c1b 
					 
					
						
						
							
							eth/downloader: delete blocks from queue  
						
						 
						
						
						
						
					 
					
						2015-04-30 17:51:47 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								obscuren 
							
						 
					 
					
						
						
							
						
						28b39267d9 
					 
					
						
						
							
							core, eth: verify td of received blocks  
						
						 
						
						
						
						
					 
					
						2015-04-30 13:50:59 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								obscuren 
							
						 
					 
					
						
						
							
						
						9b6e8f6195 
					 
					
						
						
							
							eth, eth/downloader: remove bad peers from peer set  
						
						 
						
						... 
						
						
						
						Peers in the eth protocol handler are now being ignored for catch up. 
						
						
					 
					
						2015-04-30 12:38:16 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								obscuren 
							
						 
					 
					
						
						
							
						
						04c209980b 
					 
					
						
						
							
							eth: rely on p2p to determine block propagation  
						
						 
						
						
						
						
					 
					
						2015-04-29 22:50:58 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								obscuren 
							
						 
					 
					
						
						
							
						
						9e63798d03 
					 
					
						
						
							
							core/types, eth: meassure and display propagation times  
						
						 
						
						
						
						
					 
					
						2015-04-29 19:55:30 +02:00