From: Matt Joiner Date: Tue, 10 Jul 2018 02:23:00 +0000 (+1000) Subject: Use half open limit directly from Config X-Git-Tag: v1.0.0~93 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=2685ef6aa9354ae0ab3f84c62435a8988c3e04f6;p=btrtrc.git Use half open limit directly from Config --- 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()) }