Compare commits

..

No commits in common. "74bfddc1e4f3c459bfc30e13113b73e127f7e402" and "1decb6925bbde8c6c9015ec603b8ca0b9cdd587b" have entirely different histories.

2 changed files with 27 additions and 71 deletions

View File

@ -22,7 +22,6 @@ import (
type hostnameStatus struct {
ready bool
hidden bool
changed bool
lastname string // used to watch for changes in the hostname
@ -269,29 +268,36 @@ func (hs *hostnameStatus) updateStatus() {
}
hs.domainname.Set(me.statusOS.GetDomainName())
var tmp []string
tmp = me.statusOS.GetIPv4()
tmp := me.statusOS.GetIPv4()
sort.Strings(tmp)
s = strings.Join(tmp, "\n")
if s != hs.currentIPv4.Get() {
log.Log(CHANGE, "DNS IPv4 Addresses changed", tmp)
hs.currentIPv4.Set(s)
hs.changed = true
}
hs.currentIPv4.Set(strings.Join(tmp, "\n"))
tmp = me.statusOS.GetIPv6()
sort.Strings(tmp)
s = strings.Join(tmp, "\n")
if s != hs.currentIPv6.Get() {
log.Log(CHANGE, "DNS IPv6 Addresses changed", tmp)
hs.currentIPv6.Set(s)
hs.changed = true
}
hs.currentIPv6.Set(strings.Join(tmp, "\n"))
if me.statusOS.ValidHostname() {
vals = lookupDoH(me.statusOS.GetHostname(), "AAAA")
log.Log(STATUS, "DNS IPv6 Addresses for ", me.statusOS.GetHostname(), "=", vals)
if len(vals) == 0 {
s = "(none)"
} else {
hs.setIPv6("Check for real IPv6 addresses here")
/*
if hs.missingAAAA() {
hs.setIPv6("Add the missing IPv6 address")
}
*/
for _, addr := range vals {
log.Log(STATUS, addr)
s += addr + " (DELETE)" + "\n"
hs.setIPv6("NEEDS DELETE")
// hs.dnsValue.SetText(addr)
// hs.dnsAction.SetText("DELETE")
}
}
sort.Strings(vals)
hs.dnsAAAA.Set(strings.Join(vals, "\n"))
vals = lookupDoH(me.statusOS.GetHostname(), "A")
@ -309,11 +315,6 @@ func (hs *hostnameStatus) updateStatus() {
hs.set(hs.dnsA, "CNAME " + s)
hs.setIPv4("GOOD")
}
if hs.changed {
log.Log(CHANGE, "stuff changed. trying fixIPv6dns()")
fixIPv6dns()
hs.changed = false
}
}
if hs.IPv4() && hs.IPv6() {
@ -321,55 +322,10 @@ func (hs *hostnameStatus) updateStatus() {
} else {
hs.status.Set("BROKEN")
}
if hs.verifyIPv6() {
hs.statusIPv6.Set("WORKING")
} else {
hs.statusIPv6.Set("BROKEN")
}
}
func (hs *hostnameStatus) verifyIPv6() bool {
var working bool = true
osAAAA := make(map[string]string)
dnsAAAA := make(map[string]string)
log.Log(INFO, "What are the AAAA resource records in the OS?")
tmp := me.statusOS.GetIPv6()
if len(tmp) == 0 {
// you don't have any IPv6 addresses in your OS right now
return false
}
for _, aaaa := range me.statusOS.GetIPv6() {
log.Log(INFO, "FOUND OS AAAA ip", aaaa)
osAAAA[aaaa] = "os"
}
log.Log(INFO, "What are the AAAA resource records in DNS?")
for _, aaaa := range me.statusDNS.GetIPv6() {
log.Log(INFO, "FOUND DNS AAAA ip", aaaa)
dnsAAAA[aaaa] = "dns"
}
for aaaa, _ := range dnsAAAA {
if osAAAA[aaaa] == "os" {
log.Log(INFO, "DNS AAAA is in OS", aaaa)
} else {
working = false
log.Log(INFO, "DNS AAAA is not in OS", aaaa)
}
}
for aaaa, _ := range osAAAA {
if dnsAAAA[aaaa] == "dns" {
log.Log(INFO, "OS AAAA is in DNS", aaaa)
} else {
working = false
log.Log(INFO, "OS AAAA is not in DNS", aaaa)
}
}
return working
// lookup the DNS provider
// hs.dnsAPI.Set(me.DnsAPI.S)
lookupNSprovider("wit.com")
}
func (hs *hostnameStatus) Show() {

View File

@ -88,7 +88,7 @@ func main() {
lastProvider := "unknown"
go myTicker(10 * time.Second, "DNSloop", func() {
log.Log(INFO, "me.statusDNS.Update() START")
log.Log(CHANGE, "me.statusDNS.Update() START")
me.statusDNS.Update()
provider := me.statusDNS.GetDNSapi()
@ -127,7 +127,7 @@ func main() {
})
// check the four known things to see if they are all WORKING
myTicker(10 * time.Second, "MAIN LOOP", func() {
myTicker(3 * time.Second, "MAIN LOOP", func() {
if me.hostnameStatus.GetText() != "WORKING" {
log.Log(CHANGE, "The hostname is not WORKING yet", me.hostnameStatus.GetText())
return
@ -144,7 +144,7 @@ func main() {
log.Log(CHANGE, "The DNS API provider is not yet working", me.DnsAPIstatus.GetText())
return
}
log.Log(CHANGE, "EVERYTHING IS WORKING. YOU HAVE IPv6 BLISS. TODO: don't check so often now")
log.Log(CHANGE, "EVERYTHING IS WORKING. YOU HAVE IPv6 BLISS")
})
}