feat(cli): Add dig compatible error exit code 9
This patch implements the error exit code for "No reply from server" that dig uses to indicate that it was unable to resolve an address due to the inability to reach any resolver. References: https://linux.die.net/man/1/dig
This commit is contained in:
parent
0da9178683
commit
7de223f297
1 changed files with 10 additions and 1 deletions
|
@ -148,16 +148,25 @@ func main() {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Resolve Queries.
|
// Resolve Queries.
|
||||||
var responses []resolvers.Response
|
var (
|
||||||
|
responses []resolvers.Response
|
||||||
|
responseErrors []error
|
||||||
|
)
|
||||||
for _, q := range app.Questions {
|
for _, q := range app.Questions {
|
||||||
for _, rslv := range app.Resolvers {
|
for _, rslv := range app.Resolvers {
|
||||||
resp, err := rslv.Lookup(q)
|
resp, err := rslv.Lookup(q)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
app.Logger.WithError(err).Error("error looking up DNS records")
|
app.Logger.WithError(err).Error("error looking up DNS records")
|
||||||
|
responseErrors = append(responseErrors, err)
|
||||||
}
|
}
|
||||||
responses = append(responses, resp)
|
responses = append(responses, resp)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if len(responses) == 0 && len(responseErrors) > 0 {
|
||||||
|
app.Logger.Exit(9)
|
||||||
|
}
|
||||||
|
|
||||||
app.Output(responses)
|
app.Output(responses)
|
||||||
|
|
||||||
// Quitting.
|
// Quitting.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue