aboutsummaryrefslogtreecommitdiffstats
path: root/p2p/discv5
Commit message (Collapse)AuthorAgeFilesLines
* Change import go github.com/dexon-foundation/dexonWei-Ning Huang2019-03-1215-38/+38
|
* vendor, crypto, swarm: switch over to upstream sha3 packageDave McGregor2019-01-041-2/+2
|
* p2p/discv5: don't hash findnode target in lookup against table (#18309)yahtoo2018-12-141-1/+1
|
* p2p/discv5: gofmtPéter Szilágyi2018-11-271-1/+1
|
* p2p/discv5: minor code simplification (#18188)ANOTHEL2018-11-271-5/+4
| | | | | | | | * Update net.go more simple * Update net.go
* p2p, p2p/discover: add signed ENR generation (#17753)Felix Lange2018-10-121-1/+2
| | | | | | | | | | | | | | | This PR adds enode.LocalNode and integrates it into the p2p subsystem. This new object is the keeper of the local node record. For now, a new version of the record is produced every time the client restarts. We'll make it smarter to avoid that in the future. There are a couple of other changes in this commit: discovery now waits for all of its goroutines at shutdown and the p2p server now closes the node database after discovery has shut down. This fixes a leveldb crash in tests. p2p server startup is faster because it doesn't need to wait for the external IP query anymore.
* all: fix various comment typos (#17748)Liang ZOU2018-09-251-1/+1
|
* all: simplify s[:] to s where s is a slice (#17673)Emil2018-09-151-1/+1
|
* p2p/discv5: make idx bounds checking more sound (#17571)HAOYUatHZ2018-09-031-1/+1
|
* p2p/discv5: add delay to refresh cycle when no seed nodes are found (#16994)Felföldi Zsolt2018-08-151-1/+1
|
* p2p/discv5: fix negative index after uint convert to int (#17274)libotony2018-08-091-1/+1
|
* p2p, swarm, trie: avoid copying slices in loops (#17265)Oleg Kovalov2018-08-072-5/+5
|
* p2p/discv5: add egress/ingress traffic metrics to discv5 udp transport (#16369)Dmitry Shulyak2018-05-292-1/+12
|
* p2p: fix some golint warnings (#16577)kiel barry2018-05-084-24/+24
|
* build: enable goimports and varcheck linters (#16446)thomasmodeneis2018-04-185-38/+12
|
* p2p/discv5: fix multiple discovery issues (#16036)Felföldi Zsolt2018-02-093-27/+37
| | | | | | | | | | | | * p2p/discv5: add query delay, fix node address update logic, retry refresh if empty * p2p/discv5: remove unnecessary ping before topic query * p2p/discv5: do not filter local address from topicNodes * p2p/discv5: remove canQuery() * p2p/discv5: gofmt
* p2p/discv5: fix removeTicketRef cached ticket removal (#15995)Felföldi Zsolt2018-01-311-4/+4
|
* p2p/discv5: fix topic register panic at shutdown (#15946)Felföldi Zsolt2018-01-231-1/+1
|
* p2p/discv5: logs info about discv5 node info at bind timeMartin Holst Swende2018-01-231-0/+1
|
* p2p, p2p/discover, p2p/discv5: implement UDP port sharing (#15200)Felföldi Zsolt2018-01-225-33/+22
| | | | | | | | | | | | | | | This commit affects p2p/discv5 "topic discovery" by running it on the same UDP port where the old discovery works. This is realized by giving an "unhandled" packet channel to the old v4 discovery packet handler where all invalid packets are sent. These packets are then processed by v5. v5 packets are always invalid when interpreted by v4 and vice versa. This is ensured by adding one to the first byte of the packet hash in v5 packets. DiscoveryV5Bootnodes is also changed to point to new bootnodes that are implementing the changed packet format with modified hash. Existing and new v5 bootnodes are both running on different ports ATM.
* all: update generated code (#15808)Felix Lange2018-01-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * core/types, core/vm, eth, tests: regenerate gencodec files * Makefile: update devtools target Install protoc-gen-go and print reminders about npm, solc and protoc. Also switch to github.com/kevinburke/go-bindata because it's more maintained. * contracts/ens: update contracts and regenerate with solidity v0.4.19 The newer upstream version of the FIFSRegistrar contract doesn't set the resolver anymore. The resolver is now deployed separately. * contracts/release: regenerate with solidity v0.4.19 * contracts/chequebook: fix fallback and regenerate with solidity v0.4.19 The contract didn't have a fallback function, payments would be rejected when compiled with newer solidity. References to 'mortal' and 'owned' use the local file system so we can compile without network access. * p2p/discv5: regenerate with recent stringer * cmd/faucet: regenerate * dashboard: regenerate * eth/tracers: regenerate * internal/jsre/deps: regenerate * dashboard: avoid sed -i because it's not portable * accounts/usbwallet/internal/trezor: fix go generate warnings
* core, p2p/discv5: use time.NewTicker instead of time.Tick (#15747)ferhat elmas2018-01-021-3/+3
|
* p2p/discv5: fix reg lookup, polish code, use logger (#15737)Péter Szilágyi2017-12-284-142/+139
|
* all: use gometalinter.v2, fix new gosimple issues (#15650)Zach2017-12-133-11/+11
|
* cmd/geth: add --config file flag (#13875)Felix Lange2017-04-121-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * p2p/discover, p2p/discv5: add marshaling methods to Node * p2p/netutil: make Netlist decodable from TOML * common/math: encode nil HexOrDecimal256 as 0x0 * cmd/geth: add --config file flag * cmd/geth: add missing license header * eth: prettify Config again, fix tests * eth: use gasprice.Config instead of duplicating its fields * eth/gasprice: hide nil default from dumpconfig output * cmd/geth: hide genesis block in dumpconfig output * node: make tests compile * console: fix tests * cmd/geth: make TOML keys look exactly like Go struct fields * p2p: use discovery by default This makes the zero Config slightly more useful. It also fixes package node tests because Node detects reuse of the datadir through the NodeDatabase. * cmd/geth: make ethstats URL settable through config file * cmd/faucet: fix configuration * cmd/geth: dedup attach tests * eth: add comment for DefaultConfig * eth: pass downloader.SyncMode in Config This removes the FastSync, LightSync flags in favour of a more general SyncMode flag. * cmd/utils: remove jitvm flags * cmd/utils: make mutually exclusive flag error prettier It now reads: Fatal: flags --dev, --testnet can't be used at the same time * p2p: fix typo * node: add DefaultConfig, use it for geth * mobile: add missing NoDiscovery option * cmd/utils: drop MakeNode This exposed a couple of places that needed to be updated to use node.DefaultConfig. * node: fix typo * eth: make fast sync the default mode * cmd/utils: remove IPCApiFlag (unused) * node: remove default IPC path Set it in the frontends instead. * cmd/geth: add --syncmode * cmd/utils: make --ipcdisable and --ipcpath mutually exclusive * cmd/utils: don't enable WS, HTTP when setting addr * cmd/utils: fix --identity
* all: blidly swap out glog to our log15, logs need reworkPéter Szilágyi2017-02-235-45/+32
|
* p2p: remove trailing newlines from log messagesPéter Szilágyi2017-02-231-2/+2
|
* crypto: add btcec fallback for sign/recover without cgo (#3680)Felix Lange2017-02-182-32/+1
| | | | | | | | | | | * vendor: add github.com/btcsuite/btcd/btcec * crypto: add btcec fallback for sign/recover without cgo This commit adds a non-cgo fallback implementation of secp256k1 operations. * crypto, core/vm: remove wrappers for sha256, ripemd160
* all: fix spelling errorsPéter Szilágyi2017-01-071-1/+1
|
* all: fix issues reported by honnef.co/go/simple/cmd/gosimpleFelix Lange2017-01-072-5/+2
|
* all: gofmt -w -sFelix Lange2017-01-065-20/+20
|
* p2p/discover, p2p/discv5: use flexible comparison for IPsPéter Szilágyi2016-12-153-4/+3
|
* p2p/discv5: search and lookup improvementZsolt Felfoldi2016-12-082-64/+99
|
* p2p, p2p/discover, p2p/discv5: add IP network restriction featureFelix Lange2016-11-234-7/+13
| | | | | | The p2p packages can now be configured to restrict all communication to a certain subset of IP networks. This feature is meant to be used for private networks.
* p2p/discover, p2p/discv5: prevent relay of invalid IPs and low portsFelix Lange2016-11-233-21/+35
| | | | | | | | | | | | | | | | | | | | | The discovery DHT contains a number of hosts with LAN and loopback IPs. These get relayed because some implementations do not perform any checks on the IP. go-ethereum already prevented relay in most cases because it verifies that the host actually exists before adding it to the local table. But this verification causes other issues. We have received several reports where people's VPSs got shut down by hosting providers because sending packets to random LAN hosts is indistinguishable from a slow port scan. The new check prevents sending random packets to LAN by discarding LAN IPs sent by Internet hosts (and loopback IPs from LAN and Internet hosts). The new check also blacklists almost all currently registered special-purpose networks assigned by IANA to avoid inciting random responses from services in the LAN. As another precaution against abuse of the DHT, ports below 1024 are now considered invalid.
* p2p/discover, p2p/discv5: use netutil.IsTemporaryErrorFelix Lange2016-11-234-124/+1
|
* cmd, mobile, node, p2p: surface the discovery V5 bootnodesPéter Szilágyi2016-11-151-8/+0
|
* p2p/discv5: added new bootnodesZsolt Felfoldi2016-11-141-1/+2
|
* p2p/discv5: fixed bootnode connect issuesZsolt Felfoldi2016-11-144-67/+107
|
* discv5: fixed state machine lockup bugZsolt Felfoldi2016-11-111-0/+3
|
* all: update license informationFelix Lange2016-11-098-8/+8
|
* p2p/discv5: fix build with Go 1.5, delete package testimgFelix Lange2016-11-095-879/+18
|
* p2p/discv5: added new topic discovery packageZsolt Felfoldi2016-11-0925-0/+7886