@@ -6,6 +6,7 @@ package network
66import  (
77	"context" 
88	"errors" 
9+ 	"fmt" 
910	"math/big" 
1011	"strings" 
1112	"sync" 
@@ -14,6 +15,7 @@ import (
1415	"github.com/ChainSafe/gossamer/dot/peerset" 
1516	"github.com/ChainSafe/gossamer/dot/telemetry" 
1617	"github.com/ChainSafe/gossamer/internal/log" 
18+ 	"github.com/ChainSafe/gossamer/internal/mdns" 
1719	"github.com/ChainSafe/gossamer/internal/metrics" 
1820	"github.com/ChainSafe/gossamer/lib/common" 
1921	libp2pnetwork "github.com/libp2p/go-libp2p-core/network" 
@@ -103,7 +105,7 @@ type Service struct {
103105
104106	cfg            * Config 
105107	host           * host 
106- 	mdns           * mdns 
108+ 	mdns           MDNS 
107109	gossip         * gossip 
108110	bufPool        * sync.Pool 
109111	streamManager  * streamManager 
@@ -186,12 +188,20 @@ func NewService(cfg *Config) (*Service, error) {
186188		},
187189	}
188190
191+ 	serviceTag  :=  string (host .protocolID )
192+ 	notifee  :=  mdns .NewNotifeeTracker (host .p2pHost .Peerstore (), host .cm .peerSetHandler )
193+ 	mdnsLogger  :=  log .NewFromGlobal (log .AddContext ("module" , "mdns" ))
194+ 	mdnsLogger .Debugf (
195+ 		"Creating mDNS discovery service with host %s and protocol %s..." ,
196+ 		host .id (), host .protocolID )
197+ 	mdnsService  :=  mdns .NewService (host .p2pHost , serviceTag , mdnsLogger , notifee )
198+ 
189199	network  :=  & Service {
190200		ctx :                    ctx ,
191201		cancel :                 cancel ,
192202		cfg :                    cfg ,
193203		host :                   host ,
194- 		mdns :                   newMDNS ( host ) ,
204+ 		mdns :                   mdnsService ,
195205		gossip :                 newGossip (),
196206		blockState :             cfg .BlockState ,
197207		transactionHandler :     cfg .TransactionHandler ,
@@ -303,7 +313,10 @@ func (s *Service) Start() error {
303313	s .startPeerSetHandler ()
304314
305315	if  ! s .noMDNS  {
306- 		s .mdns .start ()
316+ 		err  =  s .mdns .Start ()
317+ 		if  err  !=  nil  {
318+ 			return  fmt .Errorf ("starting mDNS service: %w" , err )
319+ 		}
307320	}
308321
309322	if  ! s .noDiscover  {
@@ -443,7 +456,7 @@ func (s *Service) Stop() error {
443456	s .cancel ()
444457
445458	// close mDNS discovery service 
446- 	err  :=  s .mdns .close ()
459+ 	err  :=  s .mdns .Stop ()
447460	if  err  !=  nil  {
448461		logger .Errorf ("Failed to close mDNS discovery service: %s" , err )
449462	}
0 commit comments