detect unreachable dns service in nslookup output (from bind-utils-9.8.2)

prevent core if error_scan detects an error in a line without ':'
This commit is contained in:
ghciv6 2020-05-20 23:02:42 +02:00
parent 00948e95f4
commit 905b09c38b

View file

@ -202,7 +202,10 @@ main (int argc, char **argv)
if (error_scan (chld_err.line[i]) != STATE_OK) {
result = max_state (result, error_scan (chld_err.line[i]));
msg = strchr(input_buffer, ':');
if(msg) msg++;
if(msg)
msg++;
else
msg = input_buffer;
}
}
@ -348,6 +351,8 @@ error_scan (char *input_buffer)
/* DNS server is not running... */
else if (strstr (input_buffer, "No response from server"))
die (STATE_CRITICAL, _("No response from DNS %s\n"), dns_server);
else if (strstr (input_buffer, "no servers could be reached"))
die (STATE_CRITICAL, _("No response from DNS %s\n"), dns_server);
/* Host name is valid, but server doesn't have records... */
else if (strstr (input_buffer, "No records"))