3 import "github.com/anacrolix/dht/krpc"
5 type peerExchangeMessage struct {
6 Added krpc.CompactIPv4NodeAddrs `bencode:"added"`
7 AddedFlags []pexPeerFlags `bencode:"added.f"`
8 Added6 krpc.CompactIPv6NodeAddrs `bencode:"added6"`
9 Added6Flags []pexPeerFlags `bencode:"added6.f"`
10 Dropped krpc.CompactIPv4NodeAddrs `bencode:"dropped"`
11 Dropped6 krpc.CompactIPv6NodeAddrs `bencode:"dropped6"`
14 type pexPeerFlags byte
16 func (me pexPeerFlags) Get(f pexPeerFlags) bool {
21 pexPrefersEncryption = 0x01
22 pexSeedUploadOnly = 0x02
24 pexHolepunchSupport = 0x08
25 pexOutgoingConn = 0x10
28 func (me *peerExchangeMessage) AddedPeers() (ret Peers) {
29 ret.FromPex(me.Added, me.AddedFlags)
30 ret.FromPex(me.Added6, me.Added6Flags)