From 2685ef6aa9354ae0ab3f84c62435a8988c3e04f6 Mon Sep 17 00:00:00 2001 From: Matt Joiner Date: Tue, 10 Jul 2018 12:23:00 +1000 Subject: [PATCH] Use half open limit directly from Config --- client.go | 2 -- torrent.go | 4 ++-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/client.go b/client.go index 3c8cc28a..975106f4 100644 --- a/client.go +++ b/client.go @@ -48,7 +48,6 @@ type Client struct { config *ClientConfig logger *log.Logger - halfOpenLimit int peerID PeerID defaultStorage *storage.Client onClose []func() @@ -180,7 +179,6 @@ func NewClient(cfg *ClientConfig) (cl *Client, err error) { } }() cl = &Client{ - halfOpenLimit: cfg.HalfOpenConnsPerTorrent, config: cfg, dopplegangerAddrs: make(map[string]struct{}), torrents: make(map[metainfo.Hash]*Torrent), diff --git a/torrent.go b/torrent.go index 29363058..0360c514 100644 --- a/torrent.go +++ b/torrent.go @@ -1059,7 +1059,7 @@ func (t *Torrent) maxHalfOpen() int { extraIncoming := int64(t.numReceivedConns() - t.maxEstablishedConns/2) // We want to allow some experimentation with new peers, and to try to // upset an oversupply of received connections. - return int(min(max(5, extraIncoming)+establishedHeadroom, int64(t.cl.halfOpenLimit))) + return int(min(max(5, extraIncoming)+establishedHeadroom, int64(t.cl.config.HalfOpenConnsPerTorrent))) } func (t *Torrent) openNewConns() { @@ -1792,5 +1792,5 @@ func (t *Torrent) pieceQueuedForHash(i pieceIndex) bool { } func (t *Torrent) dialTimeout() time.Duration { - return reducedDialTimeout(t.cl.config.MinDialTimeout, t.cl.config.NominalDialTimeout, t.cl.halfOpenLimit, t.peers.Len()) + return reducedDialTimeout(t.cl.config.MinDialTimeout, t.cl.config.NominalDialTimeout, t.cl.config.HalfOpenConnsPerTorrent, t.peers.Len()) }