5 // http://www.bittorrent.org/beps/bep_0010.html
7 ExtendedHandshakeMessage struct {
8 M map[ExtensionName]ExtensionNumber `bencode:"m"`
9 V string `bencode:"v,omitempty"`
10 Reqq int `bencode:"reqq,omitempty"`
11 Encryption bool `bencode:"e,omitempty"`
13 MetadataSize int `bencode:"metadata_size,omitempty"`
14 // The local client port. It would be redundant for the receiving side of
15 // a connection to send this.
16 Port int `bencode:"p,omitempty"`
17 YourIp CompactIp `bencode:"yourip,omitempty"`
18 Ipv4 CompactIp `bencode:"ipv4,omitempty"`
19 Ipv6 net.IP `bencode:"ipv6,omitempty"`
27 // http://www.bittorrent.org/beps/bep_0011.html
28 ExtensionNamePex ExtensionName = "ut_pex"
29 // http://bittorrent.org/beps/bep_0009.html. Note that there's an
30 // LT_metadata, but I've never implemented it.
31 ExtensionNameMetadata = "ut_metadata"