maddy/internal/exterrors/dns.go
fox.cpp bf188e454f
Move most code from the repo root into subdirectories
The intention is to keep to repo root clean while the list of packages
is slowly growing.

Additionally, a bunch of small (~30 LoC) files in the repo root is
merged into a single maddy.go file, for the same reason.

Most of the internal code is moved into the internal/ directory. Go
toolchain will make it impossible to import these packages from external
applications.

Some packages are renamed and moved into the pkg/ directory in the root.
According to https://github.com/golang-standards/project-layout this is
the de-facto standard to place "library code that's ok to use by
external applications" in.

To clearly define the purpose of top-level directories, README.md files
are added to each.
2019-12-06 01:35:12 +03:00

17 lines
406 B
Go

package exterrors
import (
"net"
)
func UnwrapDNSErr(err error) (reason string, misc map[string]interface{}) {
dnsErr, ok := err.(*net.DNSError)
if !ok {
// Return non-nil in case the user will try to 'extend' it with its own
// values.
return "", map[string]interface{}{}
}
// Nor server name, nor DNS name are usually useful, so exclude them.
return dnsErr.Err, map[string]interface{}{}
}