mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-27 15:16:43 +00:00
p2p/discover: improve documentation of codecV5
This commit is contained in:
parent
5007814c6b
commit
cf3b5db446
1 changed files with 10 additions and 3 deletions
|
|
@ -50,13 +50,20 @@ const (
|
|||
// encoding/decoding and with the handshake; the UDPv5 object handles higher-level concerns.
|
||||
type codecV5 interface {
|
||||
// Encode encodes a packet.
|
||||
Encode(enode.ID, string, v5wire.Packet, *v5wire.Whoareyou) ([]byte, v5wire.Nonce, error)
|
||||
//
|
||||
// If the underlying type of 'p' is *v5wire.Whoareyou, a Whoareyou challenge packet is
|
||||
// encoded. If the 'challenge' parameter is non-nil, the packet is encoded as a
|
||||
// handshake message packet. Otherwise, the packet will be encoded as an ordinary
|
||||
// message packet.
|
||||
Encode(id enode.ID, addr string, p v5wire.Packet, challenge *v5wire.Whoareyou) ([]byte, v5wire.Nonce, error)
|
||||
|
||||
// Decode decodes a packet. It returns a *v5wire.Unknown packet if decryption fails.
|
||||
// The *enode.Node return value is non-nil when the input contains a handshake response.
|
||||
Decode([]byte, string) (enode.ID, *enode.Node, v5wire.Packet, error)
|
||||
Decode(b []byte, addr string) (enode.ID, *enode.Node, v5wire.Packet, error)
|
||||
|
||||
CurrentChallenge(enode.ID, string) *v5wire.Whoareyou
|
||||
// CurrentChallenge returns the most recent WHOAREYOU challenge that was encoded to given node.
|
||||
// This will return a non-nil value if there is an active handshake attempt with the node, and nil otherwise.
|
||||
CurrentChallenge(id enode.ID, addr string) *v5wire.Whoareyou
|
||||
}
|
||||
|
||||
// UDPv5 is the implementation of protocol version 5.
|
||||
|
|
|
|||
Loading…
Reference in a new issue