Documentation
¶
Overview ¶
Package hive exposes the hive protocol implementation which is the discovery protocol used to inform and be informed about other peers in the network. It gossips about all peers by default and performs no specific prioritization about which peers are gossipped to others.
Index ¶
- Variables
- type ChequebookStorer
- type Options
- type Service
- func (s *Service) BroadcastPeers(ctx context.Context, addressee swarm.Address, peers ...swarm.Address) error
- func (s *Service) Close() error
- func (s *Service) Metrics() []prometheus.Collector
- func (s *Service) Protocol() p2p.ProtocolSpec
- func (s *Service) SetAddPeersHandler(h func(addr ...swarm.Address))
Constants ¶
This section is empty.
Variables ¶
var (
ErrRateLimitExceeded = errors.New("rate limit exceeded")
)
var ErrShutdownInProgress = errors.New("shutdown in progress")
Functions ¶
This section is empty.
Types ¶
type ChequebookStorer ¶ added in v2.8.0
type ChequebookStorer interface {
Put(peer swarm.Address, chequebook common.Address, timestamp int64, source bzz.TimestampSource, writeAddressbook func() error) error
}
ChequebookStorer persists the overlay→chequebook mapping. Put holds its internal mutex for the duration of writeAddressbook, so registry and addressbook writes are atomic with respect to concurrent ingestions.
type Options ¶ added in v2.8.0
type Options struct {
BootnodeMode bool
AllowPrivateCIDRs bool
ChequebookVerifier chequebook.Verifier
ChequebookStorer ChequebookStorer
}
Options configures hive.Service at construction. Chequebook fields are optional: a nil ChequebookVerifier disables the verification gate (and records without a chequebook are accepted); a nil ChequebookStorer means no overlay→chequebook persistence — addressbook writes happen directly.
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
func (*Service) BroadcastPeers ¶
func (*Service) Metrics ¶
func (s *Service) Metrics() []prometheus.Collector
func (*Service) Protocol ¶
func (s *Service) Protocol() p2p.ProtocolSpec