go-ethereum/p2p
Felix Lange 983f5a717a p2p/nat: fix concurrent access to autodisc Interface
Concurrent calls to Interface methods on autodisc could return a "not
discovered" error if the discovery did not finish before the call.
autodisc.wait expected the done channel to carry the found Interface
but it was closed instead.

The fix is to use sync.Once for now, which is easier to get right.
And there is a test. Finally.

This will have to change again when we introduce re-discovery.
2015-05-14 03:53:11 +02:00
..
discover p2p/discover: fix out-of-bounds slicing for chunked neighbors packets 2015-05-13 21:49:04 +02:00
nat p2p/nat: fix concurrent access to autodisc Interface 2015-05-14 03:53:11 +02:00
handshake_test.go p2p: fix disconnect at capacity 2015-05-08 16:09:54 +02:00
handshake.go p2p: fix disconnect at capacity 2015-05-08 16:09:54 +02:00
message_test.go p2p: use package rlp to encode messages 2015-03-19 15:11:02 +01:00
message.go p2p: added received at to peer message 2015-04-29 22:49:58 +02:00
peer_error.go p2p: make DiscReason bigger than byte 2015-04-17 14:45:10 +02:00
peer_test.go p2p: fix Peer shutdown deadlocks 2015-04-10 13:26:27 +02:00
peer.go p2p: drop connections with no matching protocols 2015-05-08 16:09:55 +02:00
protocol.go p2p: print Cap as name/version 2015-02-13 23:54:34 +01:00
rlpx_test.go p2p: use package rlp to encode messages 2015-03-19 15:11:02 +01:00
rlpx.go p2p: reject messages that cannot be written as simple RLPx frames 2015-03-04 16:42:01 +01:00
server_test.go p2p: fix disconnect at capacity 2015-05-08 16:09:54 +02:00
server.go p2p: drop connections with no matching protocols 2015-05-08 16:09:55 +02:00
testlog_test.go fix p2p/testlog_test 2015-03-23 16:41:41 +00:00