From 94058be412912ffd9e29626db38210cc5aa1dacb Mon Sep 17 00:00:00 2001 From: Jan Wagner Date: Fri, 25 Jan 2008 22:37:40 +0000 Subject: [PATCH] include segfault fix --- debian/changelog | 2 + debian/patches/00list | 1 + .../29_check_ntp_fixsefault_deprecate.dpatch | 81 +++++++++++++++++++ 3 files changed, 84 insertions(+) create mode 100644 debian/patches/29_check_ntp_fixsefault_deprecate.dpatch diff --git a/debian/changelog b/debian/changelog index 95bcb02..1e1986d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,8 @@ nagios-plugins (1.4.11-1) UNRELEASED; urgency=low * add typo fix for check_mailq into 50_misc_typos.dpatch (closes: #435525). * add 28_check_pgsql_include_for_8.3.dpatch to get check_pgsql working together with libpq-dev (closes: #462509). + * add 29_check_ntp_fixsefault_deprecate.dpatch to fix segfaults for + check_ntp and check_ntp_time -- Sean Finney Fri, 07 Dec 2007 01:01:17 +0100 diff --git a/debian/patches/00list b/debian/patches/00list index 0e9e2cd..a2d644e 100644 --- a/debian/patches/00list +++ b/debian/patches/00list @@ -6,4 +6,5 @@ 26_implicit-basename.dpatch 27_check_radius_segfault.dpatch 28_check_pgsql_include_for_8.3.dpatch +29_check_ntp_fixsefault_deprecate.dpatch 50_misc_typos.dpatch diff --git a/debian/patches/29_check_ntp_fixsefault_deprecate.dpatch b/debian/patches/29_check_ntp_fixsefault_deprecate.dpatch new file mode 100644 index 0000000..ec5811b --- /dev/null +++ b/debian/patches/29_check_ntp_fixsefault_deprecate.dpatch @@ -0,0 +1,81 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 29_check_ntp_fixsefault_deprecate.dpatch by Thomas Guyot-Sionnest +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix check_ntp_time and check_ntp segfault, add deprecate hints + +@DPATCH@ +--- nagios-plugins-1.4.11/plugins/check_ntp_time.c 2007/12/11 05:57:35 1861 ++++ nagios-plugins-1.4.11/plugins/check_ntp_time.c 2008/01/05 14:09:29 1887 +@@ -274,7 +274,7 @@ + /* if we haven't reached the current list's end, move everyone + * over one to the right, and insert the new candidate */ + if(ii; j--){ ++ for(j=4; j>i; j--){ + candidates[j]=candidates[j-1]; + } + } +@@ -337,6 +337,7 @@ + servers=(ntp_server_results*)malloc(sizeof(ntp_server_results)*num_hosts); + if(servers==NULL) die(STATE_UNKNOWN, "can not allocate server array"); + memset(servers, 0, sizeof(ntp_server_results)*num_hosts); ++ DBG(printf("Found %d peers to check\n", num_hosts)); + + /* setup each socket for writing, and the corresponding struct pollfd */ + ai_tmp=ai; +--- nagios-plugins-1.4.11/plugins/check_ntp.c 2007/12/11 05:57:35 1861 ++++ nagios-plugins-1.4.11/plugins/check_ntp.c 2008/01/05 14:09:29 1887 +@@ -329,7 +329,7 @@ + /* if we haven't reached the current list's end, move everyone + * over one to the right, and insert the new candidate */ + if(ii; j--){ ++ for(j=4; j>i; j--){ + candidates[j]=candidates[j-1]; + } + } +@@ -392,6 +392,7 @@ + servers=(ntp_server_results*)malloc(sizeof(ntp_server_results)*num_hosts); + if(servers==NULL) die(STATE_UNKNOWN, "can not allocate server array"); + memset(servers, 0, sizeof(ntp_server_results)*num_hosts); ++ DBG(printf("Found %d peers to check\n", num_hosts)); + + /* setup each socket for writing, and the corresponding struct pollfd */ + ai_tmp=ai; +@@ -837,11 +838,11 @@ + + printf ("Copyright (c) 2006 Sean Finney\n"); + printf (COPYRIGHT, copyright, email); +- +- printf ("%s\n", _("This plugin checks the selected ntp server")); + +- printf ("\n\n"); +- ++ printf ("%s\n", _("This plugin checks the selected ntp server")); ++ ++ printf ("\n\n"); ++ + print_usage(); + printf (_(UT_HELP_VRSN)); + printf (_(UT_HOST_PORT), 'p', "123"); +@@ -871,11 +872,17 @@ + printf(" %s\n", ("./check_ntp -H ntpserv -w 0.5 -c 1 -j -1:100 -k -1:200")); + + printf (_(UT_SUPPORT)); ++ ++ printf("\n"); ++ printf ("%s\n", _("WARNING: check_ntp is deprecated. Please use check_ntp_peer or")); ++ printf ("%s\n\n", _("check_ntp_time istead.")); + } + + void + print_usage(void) + { +- printf (_("Usage:")); +- printf(" %s -H [-w ] [-c ] [-j ] [-k ] [-v verbose]\n", progname); ++ printf ("%s\n", _("WARNING: check_ntp is deprecated. Please use check_ntp_peer or")); ++ printf ("%s\n\n", _("check_ntp_time istead.")); ++ printf (_("Usage:")); ++ printf(" %s -H [-w ] [-c ] [-j ] [-k ] [-v verbose]\n", progname); + }