dcrd/connmgr
Roei Erez 5048959fdc
connmgr: Check for canceled connection before connect
This is a port of btcd commit 9bfb2ca0346b57e246cc96fa31074df521175240.

This will ensure cancelation is reliable for all cases.
2019-05-24 08:30:24 -03:00
..
connmanager_test.go connmgr: Add cancellation of pending requests 2019-05-24 08:30:24 -03:00
connmanager.go connmgr: Check for canceled connection before connect 2019-05-24 08:30:24 -03:00
doc.go connmgr: Refactor connection management into pkg 2017-03-21 19:42:19 -05:00
dynamicbanscore_test.go travis: add ineffassign linter 2017-12-01 09:14:04 -05:00
dynamicbanscore.go connmgr: unexport the DynamicBanScore mutex. 2017-03-21 19:43:02 -05:00
go.mod multi: Add go 1.11 directive to all modules. 2019-03-18 02:02:35 -05:00
go.sum multi: Remove non-root module replacements. 2019-02-08 18:01:43 -06:00
log.go multi: deprecate DisableLog 2019-03-18 11:16:35 -05:00
README.md multi: Update markdown in README files to match change in github parser. 2017-05-26 12:06:19 -04:00
seed.go chaincfg: Introduce new type DNSSeed 2018-01-17 23:02:21 +00:00
tor.go travis: add ineffassign linter 2017-12-01 09:14:04 -05:00

connmgr

Build Status ISC License GoDoc

Package connmgr implements a generic Decred network connection manager.

Overview

This package handles all the general connection concerns such as maintaining a set number of outbound connections, sourcing peers, banning, limiting max connections, tor lookup, etc.

The package provides a generic connection manager which is able to accept connection requests from a source or a set of given addresses, dial them and notify the caller on connections. The main intended use is to initialize a pool of active connections and maintain them to remain connected to the P2P network.

In addition the connection manager provides the following utilities:

  • Notifications on connections or disconnections
  • Handle failures and retry new addresses from the source
  • Connect only to specified addresses
  • Permanent connections with increasing backoff retry timers
  • Disconnect or Remove an established connection

Installation and Updating

$ go get -u github.com/decred/dcrd/connmgr

License

Package connmgr is licensed under the copyfree ISC License.