#!/usr/bin/perl 

#--------------------------------------------#
# Chequeo para host del clariion             #
# Para dos controladoras:                    #
# Los datos de las mismas va en el arrays ips#
#                                            #
# Check to clariion, for two controllers     #                                          
# ips arrays contains the ip for each one    #
#                                            #
# Version: 0.1 Fecha: 1/08/08                #
#                                            #
# Autores:                                   #
#          Dc. Fazio                         #
#          Pepo                              #
#                                            #
#*------------------------------------------*#
#

my @ips = ('xxx.xxx.xxx.xxx','xxx.xxx.xxx.xxx');
# status for nagios
my $STATE_OK="0";
my $STATE_WARNING="1";
my $STATE_CRITICAL="2";
my $STATE_UNKNOWN="3";
my $STATE_DEPENDENT="4";

# variable para comparar | variable to compare
my $STRING = "The array is operating normally.\n";
#print $STRING;
my $flag = 2;
my @ERR;

 for my $i (@ips){
	#print "$i\n";
		

my $salida = `/opt/Navisphere/bin/naviseccli -User <user>  -Password <pass> -Scope 0 -h $i faults -list`;


chomp ($salida);
			if ($salida eq $STRING){
			$flag = $flag -1 ;
						}
			else {
			
				push(@ERR,$i,$salida);
				next
			}
		}

#print "$flag\n";


# ---------------------------#
# Comparaciones de salida    #
#                            #
# compare ->  $flag          #
# 0 = OK                     #
# 1 = Warning                #
# 2 = Critical               #
#---------------------------##


	if ($flag eq 0){
			
			print "Estado OK: $STRING";
                        exit $STATE_OK;
			}
	elsif($flag eq 1){
			print "Estado WARNING: Errores en @ERR\n";
			exit $STATE_WARNING;
			}
	elsif ($flag eq 2){
			print "Estado Critical:Errores en @ERR\n";
			exit $STATE_CRITICAL;
			}


