]> Sergey Matveev's repositories - btrtrc.git/commitdiff
Warn on unhandled v2 protocol messages
authorMatt Joiner <anacrolix@gmail.com>
Tue, 27 Feb 2024 12:31:43 +0000 (23:31 +1100)
committerMatt Joiner <anacrolix@gmail.com>
Sat, 2 Mar 2024 02:02:55 +0000 (13:02 +1100)
peer_protocol/protocol.go
peerconn.go

index bfeb6a0448873da8b3fdc96dd133520da0c8d360..2f92ab324d2315abd7b8d483767a9b0c1080ab70 100644 (file)
@@ -41,6 +41,11 @@ const (
 
        // BEP 10
        Extended MessageType = 20
+
+       // BEP 52
+       HashRequest = 21
+       Hashes      = 22
+       HashReject  = 23
 )
 
 const (
index a1e98b1282ac040780c8df05aadaf3bb42226ccc..ded9b483e5f5eaccdc0e24e5480788c93cf55443 100644 (file)
@@ -862,6 +862,8 @@ func (c *PeerConn) mainReadLoop() (err error) {
                        c.updateRequests("PeerConn.mainReadLoop allowed fast")
                case pp.Extended:
                        err = c.onReadExtendedMsg(msg.ExtendedID, msg.ExtendedPayload)
+               case pp.HashRequest, pp.Hashes, pp.HashReject:
+                       err = log.WithLevel(log.Warning, fmt.Errorf("received unimplemented BitTorrent v2 message: %v", msg.Type))
                default:
                        err = fmt.Errorf("received unknown message type: %#v", msg.Type)
                }