diff --git a/notify.go b/notify.go index 1067cb4eb782f61084b4d29fd96a192515a7d8bc..07d2e1eb856d1e615c98257aee7e145f3b2bafe7 100644 --- a/notify.go +++ b/notify.go @@ -32,3 +32,12 @@ func (p *PubSubNotif) Listen(n network.Network, _ ma.Multiaddr) { func (p *PubSubNotif) ListenClose(n network.Network, _ ma.Multiaddr) { } + +func (p *PubSubNotif) Initialize() { + for _, pr := range p.host.Network().Peers() { + select { + case p.newPeers <- pr: + case <-p.ctx.Done(): + } + } +} diff --git a/pubsub.go b/pubsub.go index 6f898a2560cd0ce72a80d96220381c4d199b0eaa..3483ba360aa45c12a49ddb697aff5ab08bf2f2cd 100644 --- a/pubsub.go +++ b/pubsub.go @@ -292,6 +292,8 @@ func NewPubSub(ctx context.Context, h host.Host, rt PubSubRouter, opts ...Option go ps.processLoop(ctx) + (*PubSubNotif)(ps).Initialize() + return ps, nil }