diff --git a/plugins/check_ping.c b/plugins/check_ping.c
index 50878337118d22db9af5022d7170e2226375bb3e..6b566608961059c90c8206a8ee94fdcdca347cf9 100644 (file)
--- a/plugins/check_ping.c
+++ b/plugins/check_ping.c
int n_addresses;
int max_addr = 1;
int max_packets = -1;
int n_addresses;
int max_addr = 1;
int max_packets = -1;
-int verbose = FALSE;
+int verbose = 0;
float rta = UNKNOWN_TRIP_TIME;
int pl = UNKNOWN_PACKET_LOSS;
float rta = UNKNOWN_TRIP_TIME;
int pl = UNKNOWN_PACKET_LOSS;
int this_result = STATE_UNKNOWN;
int i;
int this_result = STATE_UNKNOWN;
int i;
+ setlocale (LC_ALL, "");
setlocale (LC_NUMERIC, "C");
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
setlocale (LC_NUMERIC, "C");
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
asprintf (&cmd, rawcmd, addresses[i], max_packets);
#endif
asprintf (&cmd, rawcmd, addresses[i], max_packets);
#endif
- if (verbose)
- printf ("%s ==> ", cmd);
+ if (verbose >= 2)
+ printf ("CMD: %s\n", cmd);
/* run the command */
this_result = run_ping (cmd, addresses[i]);
/* run the command */
this_result = run_ping (cmd, addresses[i]);
printf ("</A>");
printf ("\n");
printf ("</A>");
printf ("\n");
- if (verbose)
+ if (verbose >= 2)
printf ("%f:%d%% %f:%d%%\n", wrta, wpl, crta, cpl);
result = max_state (result, this_result);
printf ("%f:%d%% %f:%d%%\n", wrta, wpl, crta, cpl);
result = max_state (result, this_result);
timeout_interval = atoi (optarg);
break;
case 'v': /* verbose mode */
timeout_interval = atoi (optarg);
break;
case 'v': /* verbose mode */
- verbose = TRUE;
+ verbose++;
break;
case '4': /* IPv4 only */
address_family = AF_INET;
break;
case '4': /* IPv4 only */
address_family = AF_INET;
while (fgets (buf, MAX_INPUT_BUFFER - 1, child_process)) {
while (fgets (buf, MAX_INPUT_BUFFER - 1, child_process)) {
+ if (verbose >= 3)
+ printf("Output: %s", buf);
+
result = max_state (result, error_scan (buf, addr));
/* get the percent loss statistics */
if(sscanf(buf,"%*d packets transmitted, %*d packets received, +%*d errors, %d%% packet loss",&pl)==1 ||
result = max_state (result, error_scan (buf, addr));
/* get the percent loss statistics */
if(sscanf(buf,"%*d packets transmitted, %*d packets received, +%*d errors, %d%% packet loss",&pl)==1 ||
- sscanf(buf,"%*d packets transmitted, %*d packets received, %d%% packet loss",&pl)==1 ||
+ sscanf(buf,"%*d packets transmitted, %*d packets received, +%*d duplicates, %d%% packet loss", &pl) == 1 ||
+ sscanf(buf,"%*d packets transmitted, %*d received, +%*d duplicates, %d%% packet loss", &pl) == 1 ||
+ sscanf(buf,"%*d packets transmitted, %*d packets received, %d%% packet loss",&pl)==1 ||
sscanf(buf,"%*d packets transmitted, %*d packets received, %d%% loss, time",&pl)==1 ||
sscanf(buf,"%*d packets transmitted, %*d received, %d%% loss, time", &pl)==1 ||
sscanf(buf,"%*d packets transmitted, %*d received, %d%% packet loss, time", &pl)==1 ||
sscanf(buf,"%*d packets transmitted, %*d packets received, %d%% loss, time",&pl)==1 ||
sscanf(buf,"%*d packets transmitted, %*d received, %d%% loss, time", &pl)==1 ||
sscanf(buf,"%*d packets transmitted, %*d received, %d%% packet loss, time", &pl)==1 ||
- sscanf(buf,"%*d packets transmitted, %*d received, +%*d errors, %d%% packet loss", &pl) == 1 ||
+ sscanf(buf,"%*d packets transmitted, %*d received, +%*d errors, %d%% packet loss", &pl) == 1 ||
sscanf(buf,"%*d packets transmitted %*d received, +%*d errors, %d%% packet loss", &pl) == 1
)
continue;
sscanf(buf,"%*d packets transmitted %*d received, +%*d errors, %d%% packet loss", &pl) == 1
)
continue;