From b15adb7762b6caaecaa83637abfcf5fdb4802092 Mon Sep 17 00:00:00 2001 From: Holger Weiss Date: Mon, 2 Sep 2013 13:16:24 +0200 Subject: Remove "contrib" plugins These days, sites such as "Nagios Exchange" are a much better place for publishing plugins not maintained by the Plugins Development Team. --- contrib/check_ipxping.c | 201 ------------------------------------------------ 1 file changed, 201 deletions(-) delete mode 100644 contrib/check_ipxping.c (limited to 'contrib/check_ipxping.c') diff --git a/contrib/check_ipxping.c b/contrib/check_ipxping.c deleted file mode 100644 index 937b921a..00000000 --- a/contrib/check_ipxping.c +++ /dev/null @@ -1,201 +0,0 @@ -/****************************************************************************************** - * - * CHECK_IPXPING.C - * - * Program: IPX ping plugin for Nagios - * License: GPL - * Copyright (c) 1999 Ethan Galstad (nagios@nagios.org) - * - * Last Modified: 09-24-1999 - * - * Command line: CHECK_IPXPING - * - * Description: - * - * This plugin will use the /usr/bin/ipxping command to ping the specified host using the - * IPX protocol. Note: Linux users must have IPX support compiled into the kernerl and - * must have IPX configured correctly in order for this plugin to work. - * If the round trip time value is above the level, a STATE_WARNING is - * returned. If it exceeds the level, a STATE_CRITICAL is returned. - * - * - * - * IMPORTANT!! - * - * This plugin will only work with the ipxping command that has been ported to Linux. - * The version for Sun takes different command line arguments and differs in its output. - * - *****************************************************************************************/ - -#include "config.h" -#include "common.h" -#include "netutils.h" -#include "popen.h" - -/* this should be moved out to the configure script! */ -#define IPXPING_COMMAND "/tmp/ipxping/ipxping" - -/* these should be moved to the common header file */ -#define MAX_IPXNET_ADDRESS_LENGTH 12 -#define MAX_IPXHOST_ADDRESS_LENGTH 18 - -int socket_timeout=DEFAULT_SOCKET_TIMEOUT; -char dest_network[MAX_IPXNET_ADDRESS_LENGTH]; -char dest_address[MAX_IPXHOST_ADDRESS_LENGTH]; -int wrtt; -int crtt; - -int process_arguments(int,char **); - -FILE * spopen(const char *); -int spclose(FILE *); - -int main(int argc, char **argv){ - char command_line[MAX_INPUT_BUFFER]; - int rtt; - int bytes_returned; - int result=STATE_OK; - FILE *fp; - char input_buffer[MAX_INPUT_BUFFER]; - char *substr; - int current_line; - - if(process_arguments(argc,argv)!=OK){ - printf("Incorrect arguments supplied\n"); - printf("\n"); - printf("IPX ping plugin for Nagios\n"); - printf("Copyright (c) 1999 Ethan Galstad (nagios@nagios.org)\n"); - printf("Last Modified: 09-24-1999\n"); - printf("License: GPL\n"); - printf("\n"); - printf("Usage: %s [-to to_sec]\n",argv[0]); - printf("\n"); - printf("Options:\n"); - printf(" = IPX network that the remote host lies on. (Hex Format - 00:00:00:00)\n"); - printf(" = MAC address of the remote host. (Hex Format - 00:00:00:00:00:00)\n"); - printf(" = Round trip time in milliseconds necessary to result in a WARNING state\n"); - printf(" = Round trip time in milliseconds necessary to result in a CRITICAL state\n"); - printf(" [to_sec] = Seconds before we should timeout waiting for ping result. Default = %d sec\n",DEFAULT_SOCKET_TIMEOUT); - printf("\n"); - printf("Notes:\n"); - printf("This plugin will use the /usr/bin/ipxping command to ping the specified host using\n"); - printf("the IPX protocol. IPX support must be compiled into the kernel and your host must\n"); - printf("be correctly configured to use IPX before this plugin will work! An RPM package of\n"); - printf("the ipxping binary can be found at...\n"); - printf("http://www.rpmfind.net/linux/RPM/contrib/libc5/i386/ipxping-0.0-2.i386.shtml\n"); - printf("\n"); - return STATE_UNKNOWN; - } - - /* create the command line to use... */ - sprintf(command_line,"%s %s %s",IPXPING_COMMAND,dest_network,dest_address); - - /* initialize alarm signal handling */ - signal(SIGALRM,socket_timeout_alarm_handler); - - /* set socket timeout */ - alarm(socket_timeout); - - /* run the command */ - fp = spopen(command_line); - if(fp==NULL){ - printf("Unable to open pipe: %s",command_line); - return STATE_UNKNOWN; - } - - current_line=0; - while(fgets(input_buffer,MAX_INPUT_BUFFER-1,fp)){ - - current_line++; - - /* skip the first line of the output */ - if(current_line==1) - continue; - - /* we didn't get the "is alive" */ - if(current_line==2 && !strstr(input_buffer,"is alive")) - result=STATE_CRITICAL; - - /* get the round trip time */ - if(current_line==3){ - substr=strtok(input_buffer,":"); - substr=strtok(NULL,"\n"); - rtt=atoi(substr); - } - - /* get the number of bytes returned */ - if(current_line==4 && strstr(input_buffer,"bytes returned")){ - bytes_returned=atoi(input_buffer); - } - } - - /* close the pipe */ - spclose(fp); - - /* reset the alarm */ - alarm(0); - - if(current_line==1 || result==STATE_CRITICAL) - printf("IPX Ping problem - No response from host\n"); - else{ - - if(rtt>crtt) - result=STATE_CRITICAL; - else if(rtt>wrtt) - result=STATE_WARNING; - - printf("IPX Ping %s - RTT = %d ms, %d bytes returned from %s %s\n",(result==STATE_OK)?"ok":"problem",rtt,bytes_returned,dest_network,dest_address); - } - - - return result; - } - - - -/* process all arguments passed on the command line */ -int process_arguments(int argc, char **argv){ - int x; - - /* no options were supplied */ - if(argc<5) - return ERROR; - - /* get the destination network address */ - strncpy(dest_network,argv[1],sizeof(dest_network)-1); - dest_network[sizeof(dest_network)-1]='\x0'; - - /* get the destination host address */ - strncpy(dest_address,argv[2],sizeof(dest_address)-1); - dest_address[sizeof(dest_address)-1]='\x0'; - - /* get the round trip time variables */ - wrtt=atoi(argv[3]); - crtt=atoi(argv[4]); - - /* process remaining arguments */ - for(x=6;x<=argc;x++){ - - /* we got the timeout to use */ - if(!strcmp(argv[x-1],"-to")){ - if(x