Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | p2p/discover: track sha3(ID) in Node | Felix Lange | 2015-04-30 | 8 | -99/+166 |
| | |||||
* | p2p, p2p/discover: protocol version 4 | Felix Lange | 2015-04-30 | 1 | -1/+1 |
| | |||||
* | p2p/discover: new endpoint format | Felix Lange | 2015-04-30 | 7 | -119/+150 |
| | | | | | | This commit changes the discovery protocol to use the new "v4" endpoint format, which allows for separate UDP and TCP ports and makes it possible to discover the UDP address after NAT. | ||||
* | p2p/discover: fix api issues caused by leveldb update | Péter Szilágyi | 2015-04-28 | 1 | -4/+6 |
| | |||||
* | p2p/discover: fix goroutine leak due to blocking on sync.Once | Péter Szilágyi | 2015-04-28 | 2 | -13/+24 |
| | |||||
* | p2p/discover: add node expirer and related tests | Péter Szilágyi | 2015-04-27 | 3 | -4/+116 |
| | |||||
* | p2p/discover: parametrize nodedb version, add persistency tests | Péter Szilágyi | 2015-04-27 | 3 | -11/+62 |
| | |||||
* | p2p/discover: drop a superfluous warning | Péter Szilágyi | 2015-04-27 | 1 | -1/+1 |
| | |||||
* | p2p/discover: wrap the pinger to update the node db too | Péter Szilágyi | 2015-04-27 | 1 | -4/+15 |
| | |||||
* | p2p/discover: use iterator based seeding, drop old protocol test | Péter Szilágyi | 2015-04-27 | 2 | -45/+118 |
| | |||||
* | p2p/discover: write the basic tests, catch RLP bug | Péter Szilágyi | 2015-04-27 | 3 | -8/+150 |
| | |||||
* | p2p/discovery: fix issues raised in the nodeDb PR | Péter Szilágyi | 2015-04-27 | 2 | -36/+32 |
| | |||||
* | cmd/bootnode, eth, p2p, p2p/discover: use a fancier db design | Péter Szilágyi | 2015-04-24 | 6 | -156/+273 |
| | |||||
* | cmd/bootnode, eth, p2p, p2p/discover: clean up the seeder and mesh into eth. | Péter Szilágyi | 2015-04-24 | 6 | -137/+154 |
| | |||||
* | p2p/discovery: fix broken tests due to API update | Péter Szilágyi | 2015-04-24 | 2 | -4/+4 |
| | |||||
* | p2p/discovery: use the seed table for finding nodes, auto drop stale ones | Péter Szilágyi | 2015-04-24 | 2 | -5/+38 |
| | |||||
* | cmd, eth, p2p, p2p/discover: init and clean up the seed cache | Péter Szilágyi | 2015-04-24 | 3 | -7/+21 |
| | |||||
* | p2p/discover: store nodes in leveldb | Felix Lange | 2015-04-24 | 2 | -13/+73 |
| | |||||
* | p2p/discover: use rlp.DecodeBytes | Felix Lange | 2015-04-17 | 1 | -1/+1 |
| | |||||
* | p2p/discover: improve timer handling for reply timeouts | Felix Lange | 2015-04-14 | 1 | -2/+3 |
| | |||||
* | p2p/discover: remove unused field Node.activeStamp | Felix Lange | 2015-04-13 | 2 | -16/+0 |
| | |||||
* | p2p/discover: don't log packet content | Felix Lange | 2015-04-10 | 1 | -3/+4 |
| | |||||
* | p2p/discover: make packet processing less concurrent | Felix Lange | 2015-04-10 | 1 | -6/+4 |
| | |||||
* | Updated logging | obscuren | 2015-04-07 | 1 | -10/+9 |
| | |||||
* | p2p/discover: fix off by one error causing buckets to contain duplicates | Felix Lange | 2015-04-01 | 2 | -1/+43 |
| | |||||
* | p2p/discover: implement node bonding | Felix Lange | 2015-04-01 | 5 | -383/+649 |
| | | | | | | | | | | | | | | | | This a fix for an attack vector where the discovery protocol could be used to amplify traffic in a DDOS attack. A malicious actor would send a findnode request with the IP address and UDP port of the target as the source address. The recipient of the findnode packet would then send a neighbors packet (which is 16x the size of findnode) to the victim. Our solution is to require a 'bond' with the sender of findnode. If no bond exists, the findnode packet is not processed. A bond between nodes α and β is created when α replies to a ping from β. This (initial) version of the bonding implementation might still be vulnerable against replay attacks during the expiration time window. We will add stricter source address validation later. | ||||
* | p2p/discover: add version number to ping packet | Felix Lange | 2015-04-01 | 1 | -0/+8 |
| | | | | | | The primary motivation for doing this right now is that old PoC 8 nodes and newer PoC 9 nodes keep discovering each other, causing handshake failures. | ||||
* | %#x => %x | obscuren | 2015-03-20 | 1 | -2/+2 |
| | |||||
* | p2p: server>discover table Self=Node exported | zelig | 2015-03-15 | 1 | -3/+3 |
| | |||||
* | p2p/discover: add NodeID.Pubkey | Felix Lange | 2015-03-04 | 2 | -0/+33 |
| | |||||
* | p2p/discover: fix pending replies iteration | Felix Lange | 2015-02-17 | 1 | -1/+2 |
| | | | | | | Range expressions capture the length of the slice once before the first iteration. A range expression cannot be used here since the loop modifies the slice variable (including length changes). | ||||
* | p2p/discover: fix race in ListenUDP | Felix Lange | 2015-02-13 | 1 | -24/+17 |
| | | | | | udp.Table was assigned after the readLoop started, so packets could arrive and be processed before the Table was there. | ||||
* | p2p/discover: map listening port using configured mechanism | Felix Lange | 2015-02-13 | 2 | -13/+24 |
| | |||||
* | p2p/discover: code review fixes | Felix Lange | 2015-02-13 | 3 | -7/+9 |
| | |||||
* | p2p/discover: deflake UDP tests | Felix Lange | 2015-02-09 | 4 | -59/+123 |
| | |||||
* | cmd/ethereum, cmd/mist: add flag for discovery bootstrap nodes | Felix Lange | 2015-02-07 | 1 | -2/+2 |
| | |||||
* | p2p/discover: add node URL functions, distinguish TCP/UDP ports | Felix Lange | 2015-02-07 | 6 | -321/+527 |
| | | | | | The discovery RPC protocol does not yet distinguish TCP and UDP ports. But it can't hurt to do so in our internal model. | ||||
* | p2p/discover: add some helper functions | Felix Lange | 2015-02-06 | 4 | -20/+41 |
| | |||||
* | p2p/discover: new package implementing the Node Discovery Protocol | Felix Lange | 2015-02-06 | 4 | -0/+1428 |