]> Sergey Matveev's repositories - btrtrc.git/commitdiff
Add expvar for successful peer wire protocol handshake peer reserved bytes
authorMatt Joiner <anacrolix@gmail.com>
Wed, 13 Oct 2021 08:05:19 +0000 (19:05 +1100)
committerMatt Joiner <anacrolix@gmail.com>
Tue, 19 Oct 2021 03:08:56 +0000 (14:08 +1100)
client.go

index 83da43e63b160c4f2f7866773bbf62ec68b94894..3afe64a25be7c676c42fad408132c26f27afe1df 100644 (file)
--- a/client.go
+++ b/client.go
@@ -6,6 +6,7 @@ import (
        "crypto/rand"
        "encoding/binary"
        "errors"
+       "expvar"
        "fmt"
        "io"
        "net"
@@ -870,11 +871,20 @@ func (cl *Client) receiveHandshakes(c *PeerConn) (t *Torrent, err error) {
        return
 }
 
+var successfulPeerWireProtocolHandshakePeerReservedBytes expvar.Map
+
+func init() {
+       torrent.Set(
+               "successful_peer_wire_protocol_handshake_peer_reserved_bytes",
+               &successfulPeerWireProtocolHandshakePeerReservedBytes)
+}
+
 func (cl *Client) connBtHandshake(c *PeerConn, ih *metainfo.Hash) (ret metainfo.Hash, err error) {
        res, err := pp.Handshake(c.rw(), ih, cl.peerID, cl.config.Extensions)
        if err != nil {
                return
        }
+       successfulPeerWireProtocolHandshakePeerReservedBytes.Add(res.PeerExtensionBits.String(), 1)
        ret = res.Hash
        c.PeerExtensionBytes = res.PeerExtensionBits
        c.PeerID = res.PeerID