diff options
| author | horus_arch | 2015-03-20 23:16:27 +0100 |
|---|---|---|
| committer | horus_arch | 2015-03-20 23:16:27 +0100 |
| commit | 491462e033ae78a5b5c4f93ed8d5663e4da0a9e3 (patch) | |
| tree | cdc82ee4c600a86ba6bc7b92a589b129a01c7429 /domain.go | |
| parent | 17bea88eb3f6e2bc5f63641437a997cc8bd32881 (diff) | |
| download | freemail-491462e033ae78a5b5c4f93ed8d5663e4da0a9e3.tar.gz | |
Fix bug which prevented creating a new entry.
Diffstat (limited to 'domain.go')
| -rw-r--r-- | domain.go | 21 |
1 files changed, 17 insertions, 4 deletions
@@ -33,12 +33,13 @@ func (vD VirtualDomain) CreateDomain() bool { } func (vD VirtualDomain) ValidateDomain(ref string) bool { + log.Println("Validating " + vD.Name) if vD.Name == "" { return false } addr, err := net.LookupIP(vD.Name) if err != nil { - log.Println(err) + log.Println(vD.Name + " " + err.Error()) return false } if len(addr) == 0 { @@ -46,23 +47,35 @@ func (vD VirtualDomain) ValidateDomain(ref string) bool { } serverIP, err := net.LookupIP(ref) if err != nil { - log.Println(err) + log.Println(ref + " " + err.Error()) return false } return reflect.DeepEqual(serverIP, addr) } func (vD VirtualDomain) ValidateDomainMX(ref string) bool { + log.Println("Validating MX " + vD.Name) if vD.Name == "" { + log.Println("Empty domain.") return false } mx, err := net.LookupMX(vD.Name) if err != nil { - log.Println(err) + log.Println("Lookup error " + vD.Name + " " + err.Error()) return false } match := false + + serverIP, err := net.LookupIP(ref) + if err != nil { + log.Println("Lookup error for server " + ref + " " + err.Error()) + return false + } for _, v := range mx { - if v.Host == ref { + mxIP, err := net.LookupIP(v.Host) + if err != nil { + log.Println(err) + } + if reflect.DeepEqual(serverIP, mxIP) { match = true } } |
