[BACK]Return to check_pf_limits CVS log [TXT][DIR] Up to [local] / nagios / check_pf_limits

Diff for /nagios/check_pf_limits/check_pf_limits between version 1.1 and 1.4

version 1.1, 2010/01/14 22:21:34 version 1.4, 2010/01/14 22:57:15
Line 1 
Line 1 
 #!/usr/bin/perl -T  #!/usr/bin/perl -T
 # $AFresh1$  # $AFresh1: check_pf_limits,v 1.3 2010/01/14 22:42:12 andrew Exp $
 ########################################################################  ########################################################################
 # check_openbgpd *** A nagios check for OpenBSD bgpd  # check_openbgpd *** A nagios check for OpenBSD bgpd
 #  #
Line 178 
Line 178 
                 rate  => $rate,                  rate  => $rate,
             };              };
         }          }
         default { return }          default {return}
     }      }
   
     return 1;      return 1;
Line 250 
Line 250 
     );      );
   
     my %states;      my %states;
       my $status = $S->{info}{Status};
       if (0 == index $status, 'Enabled') {
           push @{ $states{OK} }, $status;
       }
       else {
           push @{ $states{CRITICAL} }, $status;
       }
   
   
     my %matched;      my %matched;
 STATE: foreach my $k ( keys %known_limits ) {  STATE: foreach my $k ( keys %known_limits ) {
         $matched{$k} = 1;          $matched{$k} = 1;
Line 273 
Line 282 
     }      }
   
     foreach my $k ( keys %{$C} ) {      foreach my $k ( keys %{$C} ) {
           next if 0 == index $k, '_';
         if ( !exists $matched{$k} ) {          if ( !exists $matched{$k} ) {
             push @{ $states{CRITICAL} }, '[' . $k . '] Unsupported Limit';              push @{ $states{CRITICAL} }, '[' . $k . '] Unsupported Limit';
         }          }
Line 342 
Line 352 
 sub getopt {  sub getopt {
     my (@argv) = @_;      my (@argv) = @_;
   
     my %checks;      my ( %checks, $w, $c );
     while (@argv) {      while (@argv) {
         my $opt = shift @argv;          my $opt = shift @argv;
         given ($opt) {          given ($opt) {
             state( $w, $c );  
             when ( '-V' || '--version' ) {              when ( '-V' || '--version' ) {
                 print_revision( $PROGNAME, '$Revision$ ' );                  print_revision( $PROGNAME, '$Revision$ ' );
                 exit $ERRORS{'OK'}                  exit $ERRORS{'OK'}
Line 359 
Line 368 
             when (/^-?-c(?:ritical)?/xms) {              when (/^-?-c(?:ritical)?/xms) {
                 $c = parse_check( shift @argv )                  $c = parse_check( shift @argv )
             }              }
             when (/^-?-u(?:nknown)?/xms) {  
                 $checks{_UNKNOWN} = {  
                     WARNING      => $w,  
                         CRITICAL => $c,  
                 }  
             }  
             when (/^-?-l(?:limit)?/xms) {              when (/^-?-l(?:limit)?/xms) {
                 while ( @argv && $argv[0] !~ /^-/xms ) {                  while ( @argv && $argv[0] !~ /^-/xms ) {
                     $checks{ shift @argv } = {                      $checks{ shift @argv } = {
Line 376 
Line 379 
             default { print_help(); exit $ERRORS{'UNKNOWN'} }              default { print_help(); exit $ERRORS{'UNKNOWN'} }
         }          }
     }      }
   
       if (defined $w) {
           $checks{_UNKNOWN}{WARNING} = $w;
       }
       if (defined $c) {
           $checks{_UNKNOWN}{CRITICAL} = $c;
       };
   
     return %checks;      return %checks;
 }  }
   
Line 415 
Line 426 
   
 Any known limits that are unspecified are checked with the last specified  Any known limits that are unspecified are checked with the last specified
 warning and criticical ENTRY.  warning and criticical ENTRY.
   
   Also checks if pf is enabled and is CRITICAL if not.
   
 Example:  Example:
   

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.4

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>