mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-03-30 15:08:33 +00:00

* [NOD-1313] Refactor AddressManager (#918) * [NOD-1313] Refactor AddressManager. * [NOD-1313]Remove old tests.Minor improvements,fixes. * [NOD-1313] After merge fixes. Fix import cycle. * [NOD-1313] Integration tests fixes. * [NOD-1313] Allocate new slice for the returned key. * [NOD-1313] AddressManager improvements and fixes. * Move local and banned addresses to separate lists. * Move AddressManager config to the separate file. * Add LocalAddressManager. * Remove redundant KnownAddress structure. * Restore local addresses functionality. * Call initListeners from the LocalAddressManager. * AddressManager minor improvements and fixes. * [NOD-1313] Minor fixes. * [NOD-1313] Implement HandleGetPeerAddresses. Refactoring. * [NOD-1313] After-merge fixes. * [NOD-1313] Minor improvements. * AddressManager: added BannedAddresses() method. * AddressManager: HandleGetPeerAddresses() add banned addresses separately. * AddressManager: remove addressEntry redundant struct. * ConnectionManager: checkOutgoingConnections() minor improvements and fixes. * Minor refactoring. * Minor fixes. * [NOD-1313] GetPeerAddresses RPC message update * GetPeerAddresses RPC: add BannedAddresses in the separate field. * Update protobuf. * [NOD-1534] Update messages.pb.go Co-authored-by: Kirill <gammerxpower@gmail.com>
28 lines
681 B
Go
28 lines
681 B
Go
package addressmanager
|
|
|
|
import (
|
|
"net"
|
|
|
|
"github.com/kaspanet/kaspad/infrastructure/config"
|
|
)
|
|
|
|
// Config is a descriptor which specifies the AddressManager instance configuration.
|
|
type Config struct {
|
|
AcceptUnroutable bool
|
|
DefaultPort string
|
|
ExternalIPs []string
|
|
Listeners []string
|
|
Lookup func(string) ([]net.IP, error)
|
|
}
|
|
|
|
// NewConfig returns a new address manager Config.
|
|
func NewConfig(cfg *config.Config) *Config {
|
|
return &Config{
|
|
AcceptUnroutable: cfg.NetParams().AcceptUnroutable,
|
|
DefaultPort: cfg.NetParams().DefaultPort,
|
|
ExternalIPs: cfg.ExternalIPs,
|
|
Listeners: cfg.Listeners,
|
|
Lookup: cfg.Lookup,
|
|
}
|
|
}
|