Merge pull request #667 from strukturag/dnsmonitor-port

Support ports in full URLs for DNS monitor.
This commit is contained in:
Joachim Bauch 2024-02-27 09:00:49 +01:00 committed by GitHub
commit 3ea60cfe31
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 8 additions and 5 deletions

View file

@ -197,11 +197,11 @@ func (m *DnsMonitor) Add(target string, callback DnsMonitorCallback) (*DnsMonito
}
hostname = parsed.Host
} else {
// Hostname with optional port passed.
// Hostname only passed.
hostname = target
if h, _, err := net.SplitHostPort(target); err == nil {
hostname = h
}
}
if h, _, err := net.SplitHostPort(hostname); err == nil {
hostname = h
}
m.mu.Lock()

View file

@ -240,7 +240,7 @@ func TestDnsMonitor(t *testing.T) {
rec1 := newDnsMonitorReceiverForTest(t)
rec1.Expect(ips1, ips1, nil, nil)
entry1, err := monitor.Add("https://foo", rec1.OnLookup)
entry1, err := monitor.Add("https://foo:12345", rec1.OnLookup)
if err != nil {
t.Fatal(err)
}

View file

@ -160,6 +160,9 @@ func main() {
if err != nil {
log.Fatal("Could not create DNS monitor: ", err)
}
if err := dnsMonitor.Start(); err != nil {
log.Fatal("Could not start DNS monitor: ", err)
}
defer dnsMonitor.Stop()
etcdClient, err := signaling.NewEtcdClient(config, "mcu")