From 152d8715ffe61f6c3d05ac5ebd310ed48639bd9b Mon Sep 17 00:00:00 2001 From: Matt Joiner Date: Tue, 13 Oct 2020 13:02:39 +1100 Subject: [PATCH] Add PeerConnClosed callback --- callbacks.go | 1 + peerconn.go | 3 +++ 2 files changed, 4 insertions(+) diff --git a/callbacks.go b/callbacks.go index 0e73d809..83e24815 100644 --- a/callbacks.go +++ b/callbacks.go @@ -10,4 +10,5 @@ type Callbacks struct { CompletedHandshake func(_ *PeerConn, infoHash InfoHash) ReadMessage func(*PeerConn, *pp.Message) ReadExtendedHandshake func(*PeerConn, *pp.ExtendedHandshakeMessage) + PeerConnClosed func(*PeerConn) } diff --git a/peerconn.go b/peerconn.go index cc8bdeb8..e13e9fa3 100644 --- a/peerconn.go +++ b/peerconn.go @@ -355,6 +355,9 @@ func (cn *PeerConn) _close() { if cn.conn != nil { cn.conn.Close() } + if cb := cn.t.cl.config.Callbacks.PeerConnClosed; cb != nil { + cb(cn) + } } func (cn *peer) peerHasPiece(piece pieceIndex) bool { -- 2.48.1