]> Sergey Matveev's repositories - btrtrc.git/blobdiff - peer_protocol/decoder.go
Make extended handshake a struct, and move a bunch of extended stuff into peer_protocol
[btrtrc.git] / peer_protocol / decoder.go
index e4aeab08f395872ee2a6a0e31931018c66353e1e..f07ed14be0cf1af689ecb7df36a3eb992faae119 100644 (file)
@@ -88,10 +88,11 @@ func (d *Decoder) Decode(msg *Message) (err error) {
                }
                msg.Piece = b
        case Extended:
-               msg.ExtendedID, err = readByte(r)
+               b, err := readByte(r)
                if err != nil {
                        break
                }
+               msg.ExtendedID = ExtensionNumber(b)
                msg.ExtendedPayload, err = ioutil.ReadAll(r)
        case Port:
                err = binary.Read(r, binary.BigEndian, &msg.Port)