Public bug reported: Binary package hint: nagios-plugins-basic
Command execution returns error with double value: # /usr/lib/nagios/plugins/check_smtp -H localhost -w 0.2 check_smtp: Warning time must be a positive integer Usage:check_smtp -H host [-p port] [-e expect] [-C command] [-f from addr][-A authtype -U authuser -P authpass] [-w warn] [-c crit] [-t timeout] [-S] [-D days] [-n] [-v] [-4|-6] But docu ( /usr/lib/nagios/plugins/check_smtp -h) says: -w, --warning=DOUBLE Response time to result in warning status (seconds) -c, --critical=DOUBLE Response time to result in critical status (seconds) I think, that the integer check is done on error, since all other commands with -w / -c option take double arguments and sub second response time checks are really useful. ----------------------------------------- Current package: Status: install ok installed Priority: extra Section: net Installed-Size: 1252 Maintainer: Ubuntu Core Developers <ubuntu-devel-disc...@lists.ubuntu.com> Architecture: i386 Source: nagios-plugins Version: 1.4.11-1ubuntu5 ---------------------------------------- Patch vs nagios-plugins-1.4.12 source (untested): --- check_smtp.orig 2009-01-19 10:57:05.000000000 +0100 +++ check_smtp.c 2009-01-19 11:34:04.000000000 +0100 @@ -103,9 +103,9 @@ char *authtype = NULL; char *authuser = NULL; char *authpass = NULL; -int warning_time = 0; +double warning_time = 0; int check_warning_time = FALSE; -int critical_time = 0; +double critical_time = 0; int check_critical_time = FALSE; int verbose = 0; int use_ssl = FALSE; @@ -432,9 +432,9 @@ elapsed_time = (double)microsec / 1.0e6; if (result == STATE_OK) { - if (check_critical_time && elapsed_time > (double) critical_time) + if (check_critical_time && elapsed_time > critical_time) result = STATE_CRITICAL; - else if (check_warning_time && elapsed_time > (double) warning_time) + else if (check_warning_time && elapsed_time > warning_time) result = STATE_WARNING; } @@ -565,21 +565,19 @@ nresponses++; break; case 'c': /* critical time threshold */ - if (is_intnonneg (optarg)) { - critical_time = atoi (optarg); - check_critical_time = TRUE; - } + if (!is_nonnegative (optarg)) + usage4 (_("Critical time must be a positive")); else { - usage4 (_("Critical time must be a positive integer")); + critical_time = strtod (optarg, NULL); + check_critical_time = TRUE; } break; case 'w': /* warning time threshold */ - if (is_intnonneg (optarg)) { - warning_time = atoi (optarg); - check_warning_time = TRUE; - } + if (!is_nonnegative (optarg)) + usage4 (_("Warning time must be a positive")); else { - usage4 (_("Warning time must be a positive integer")); + warning_time = strtod (optarg, NULL); + check_warning_time = TRUE; } break; case 'v': /* verbose */ Cross comparison with other files (e.g. check_http.c) showed that there might be more of these issues, e.g. wrong message outputs/conversions case 'w': /* warning time threshold */ if (!is_nonnegative (optarg)) usage2 (_("Warning threshold must be integer"), optarg); else { warning_time = strtod (optarg, NULL); check_warning_time = TRUE; } break; ** Affects: nagios-plugins (Ubuntu) Importance: Undecided Status: New -- nagios check_smtp expects integer instead of double https://bugs.launchpad.net/bugs/318703 You received this bug notification because you are a member of Ubuntu Server Team, which is subscribed to nagios-plugins in ubuntu. -- Ubuntu-server-bugs mailing list Ubuntu-server-bugs@lists.ubuntu.com Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-server-bugs