From e43b2b55304b6c2b1af0b767137d08d14ac22cfc Mon Sep 17 00:00:00 2001 From: Cuong Manh Le Date: Wed, 19 Jul 2023 09:08:02 +0700 Subject: [PATCH] internal/clientinfo: add doc comments for mdns operations While at it, also remove un-used channel argument of probe function. --- internal/clientinfo/mdns.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/internal/clientinfo/mdns.go b/internal/clientinfo/mdns.go index ac34713..e2a9588 100644 --- a/internal/clientinfo/mdns.go +++ b/internal/clientinfo/mdns.go @@ -73,10 +73,11 @@ func (m *mdns) init(quitCh chan struct{}) error { return nil } +// probeLoop performs mdns probe actively to get hostname updates. func (m *mdns) probeLoop(conns []*net.UDPConn, remoteAddr net.Addr, quitCh chan struct{}) { bo := backoff.NewBackoff("mdns probe", func(format string, args ...any) {}, time.Second*30) for { - err := m.probe(conns, remoteAddr, quitCh) + err := m.probe(conns, remoteAddr) if isErrNetUnreachableOrInvalid(err) { ctrld.ProxyLog.Warn().Msgf("stop probing %q: network unreachable or invalid", remoteAddr) break @@ -96,6 +97,7 @@ func (m *mdns) probeLoop(conns []*net.UDPConn, remoteAddr net.Addr, quitCh chan } } +// readLoop reads from mdns connection, save/update any hostnames found. func (m *mdns) readLoop(conn *net.UDPConn) { defer conn.Close() buf := make([]byte, dns.MaxMsgSize) @@ -141,7 +143,8 @@ func (m *mdns) readLoop(conn *net.UDPConn) { } } -func (m *mdns) probe(conns []*net.UDPConn, remoteAddr net.Addr, quitCh chan struct{}) error { +// probe performs mdns queries with known services. +func (m *mdns) probe(conns []*net.UDPConn, remoteAddr net.Addr) error { msg := new(dns.Msg) msg.Question = make([]dns.Question, len(services)) for i, service := range services {