Versions in this module Expand all Collapse all v1 v1.15.14 Feb 10, 2020 v1.15.13 Feb 10, 2020 v1.15.12 Feb 10, 2020 v1.15.11 Feb 10, 2020 v1.15.10 Feb 10, 2020 v1.15.9 Feb 10, 2020 v1.15.8 Feb 10, 2020 v1.15.7 Feb 10, 2020 v1.15.6 Feb 10, 2020 v1.15.5 Feb 10, 2020 v1.15.3 Feb 10, 2020 v1.15.2 Feb 10, 2020 v1.15.1 Feb 10, 2020 v1.15.0 Feb 10, 2020 v1.14.0 Feb 10, 2020 Changes in this version + const DataMetadataExtensionMsgType + const ExtensionBitDHT + const ExtensionBitExtended + const ExtensionBitFast + const HandshakeExtendedID + const PexHolepunchSupport + const PexOutgoingConn + const PexPrefersEncryption + const PexSeedUploadOnly + const PexSupportsUtp + const Protocol + const RejectMetadataExtensionMsgType + const RequestMetadataExtensionMsgType + type CompactIp net.IP + func (me CompactIp) MarshalBencode() ([]byte, error) + type Decoder struct + MaxLength Integer + Pool *sync.Pool + R *bufio.Reader + func (d *Decoder) Decode(msg *Message) (err error) + type ExtendedHandshakeMessage struct + Encryption bool + Ipv4 CompactIp + Ipv6 net.IP + M map[ExtensionName]ExtensionNumber + MetadataSize int + Port int + Reqq int + V string + YourIp CompactIp + type ExtensionBit uint + type ExtensionName string + const ExtensionNameMetadata + const ExtensionNamePex + type ExtensionNumber int + type HandshakeResult struct + PeerID [20]byte + func Handshake(sock io.ReadWriter, ih *metainfo.Hash, peerID [20]byte, ...) (res HandshakeResult, err error) + type Integer uint32 + func (i *Integer) Read(r io.Reader) error + func (i Integer) Int() int + func (i Integer) Uint32() uint32 + func (i Integer) Uint64() uint64 + type Message struct + Begin Integer + Bitfield []bool + ExtendedID ExtensionNumber + ExtendedPayload []byte + Index Integer + Keepalive bool + Length Integer + Piece []byte + Port uint16 + Type MessageType + func MakeCancelMessage(piece, offset, length Integer) Message + func (msg Message) MarshalBinary() (data []byte, err error) + func (msg Message) MustMarshalBinary() []byte + func (msg Message) RequestSpec() (ret RequestSpec) + type MessageType byte + const AllowedFast + const Bitfield + const Cancel + const Choke + const Extended + const Have + const HaveAll + const HaveNone + const Interested + const NotInterested + const Piece + const Port + const Reject + const Request + const Suggest + const Unchoke + func (i MessageType) String() string + func (mt MessageType) FastExtension() bool + type PeerExtensionBits [8]byte + func NewPeerExtensionBytes(bits ...ExtensionBit) (ret PeerExtensionBits) + func (me PeerExtensionBits) String() string + func (pex *PeerExtensionBits) SetBit(bit ExtensionBit) + func (pex PeerExtensionBits) GetBit(bit ExtensionBit) bool + func (pex PeerExtensionBits) SupportsDHT() bool + func (pex PeerExtensionBits) SupportsExtended() bool + func (pex PeerExtensionBits) SupportsFast() bool + type PexMsg struct + Added krpc.CompactIPv4NodeAddrs + Added6 krpc.CompactIPv6NodeAddrs + Added6Flags []PexPeerFlags + AddedFlags []PexPeerFlags + Dropped krpc.CompactIPv4NodeAddrs + Dropped6 krpc.CompactIPv6NodeAddrs + type PexPeerFlags byte + func (me PexPeerFlags) Get(f PexPeerFlags) bool + type RequestSpec struct + Begin Integer + Index Integer + Length Integer + func (me RequestSpec) String() string