[monitoring-plugins] Update netutils.c
gcoxmoz
git at monitoring-plugins.org
Fri Oct 2 20:00:12 CEST 2015
Module: monitoring-plugins
Branch: master
Commit: 0a89db746dfe930c4705f4a1cef007c1888799dd
Author: gcoxmoz <gcox at mozilla.com>
Date: Sat May 17 00:58:46 2014 -0400
URL: https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=0a89db7
Update netutils.c
Return an encoded state rather than an explicit state if a connection failed.
---
plugins/netutils.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/plugins/netutils.c b/plugins/netutils.c
index 0044046..f5e7dff 100644
--- a/plugins/netutils.c
+++ b/plugins/netutils.c
@@ -161,6 +161,10 @@ process_request (const char *server_address, int server_port, int proto,
int
np_net_connect (const char *host_name, int port, int *sd, int proto)
{
+ /* send back STATE_UNKOWN if there's an error
+ send back STATE_OK if we connect
+ send back STATE_CRITICAL if we can't connect.
+ Let upstream figure out what to send to the user. */
struct addrinfo hints;
struct addrinfo *r, *res;
struct sockaddr_un su;
@@ -249,12 +253,12 @@ np_net_connect (const char *host_name, int port, int *sd, int proto)
else if (was_refused) {
switch (econn_refuse_state) { /* a user-defined expected outcome */
case STATE_OK:
- case STATE_WARNING: /* user wants WARN or OK on refusal */
- return econn_refuse_state;
+ case STATE_WARNING: /* user wants WARN or OK on refusal, stay quiet */
+ return STATE_CRITICAL;
break;
- case STATE_CRITICAL: /* user did not set econn_refuse_state */
+ case STATE_CRITICAL: /* user did not set econn_refuse_state, or wanted critical */
printf ("%s\n", strerror(errno));
- return econn_refuse_state;
+ return STATE_CRITICAL;
break;
default: /* it's a logic error if we do not end up in STATE_(OK|WARNING|CRITICAL) */
return STATE_UNKNOWN;
More information about the Commits
mailing list