Changeset 64 for trunk


Ignore:
Timestamp:
Sep 8, 2009, 4:55:39 PM (15 years ago)
Author:
g7moreau
Message:
  • Change Class Filehandle by FileHandle?
  • Change one regular expression. Suppres /x, why ?
  • Change numerical_port function to tale acocunt of HP2424 switch
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/klask

    r63 r64  
    1010
    1111use Readonly;
    12 use Filehandle;
     12use FileHandle;
    1313use Net::SNMP;
    1414#use YAML;
     
    144144   my $cmd = shift;
    145145
    146    my $fh = new Filehandle;
     146   my $fh     = new FileHandle;
     147   my $result = '';
    147148   open $fh, q{-|}, "$cmd" or die "Can't exec $cmd\n";
    148    my $result = <$fh>;
     149   $result .= <$fh>;
    149150   close $fh;
    150151   chomp $result;
     
    234235
    235236   for my $sw_kind (keys %SWITCH_KIND) {
    236       next if not $sw_snmp_description =~ m/$SWITCH_KIND{$sw_kind}->{match}/xms;
     237      next if not $sw_snmp_description =~ m/$SWITCH_KIND{$sw_kind}->{match}/ms; # option xms break search, why ?
    237238
    238239      return $SWITCH_KIND{$sw_kind}->{model};
     
    481482   my $sw_port  = shift;
    482483
    483    return $sw_port if not $sw_model eq 'HP8000M';
    484 
    485    my $reste = (($sw_port - 1) % 8) + 1;
    486    my $major = int (($sw_port - 1) / 8);
    487 
    488    return "$INTERNAL_PORT_MAP{$major}$reste";
     484   if ($sw_model eq 'HP8000M') {
     485
     486      my $reste = (($sw_port - 1) % 8) + 1;
     487      my $major = int (($sw_port - 1) / 8);
     488      return "$INTERNAL_PORT_MAP{$major}$reste";
     489      }
     490
     491   if ($sw_model eq 'HP2424M') {
     492      if ($sw_port > 24) {
     493         
     494         my $reste = $sw_port - 24;
     495         return "A$reste";
     496         }
     497      }
     498
     499   if ($sw_model eq 'HP1600M') {
     500      if ($sw_port > 16) {
     501         
     502         my $reste = $sw_port - 16;
     503         return "A$reste";
     504         }
     505      }
     506
     507   return $sw_port;
    489508   }
    490509
     
    493512   my $sw_port  = shift;
    494513
    495    return $sw_port if not $sw_model eq 'HP8000';
    496 
    497    my $letter = substr $sw_port, 0, 1;
    498 
    499 #   return $port if $letter =~ m/\d/;
    500 
    501    my $reste =  substr $sw_port, 1;
    502 
    503    return $INTERNAL_PORT_MAP_REV{$letter} * 8 + $reste;
     514   if ($sw_model eq 'HP8000M') {
     515
     516      my $letter = substr $sw_port, 0, 1;
     517      my $reste =  substr $sw_port, 1;
     518
     519      return $INTERNAL_PORT_MAP_REV{$letter} * 8 + $reste;
     520      }
     521
     522   if ($sw_model eq 'HP2424M') {
     523      if ($sw_port =~ m/^A/xms ) {
     524
     525         my $reste =  substr $sw_port, 1;
     526
     527         return 24 + $reste;
     528         }
     529      }
     530
     531   if ($sw_model eq 'HP1600M') {
     532      if ($sw_port =~ m/^A/xms ) {
     533
     534         my $reste =  substr $sw_port, 1;
     535
     536         return 16 + $reste;
     537         }
     538      }
     539
     540   return $sw_port;
    504541   }
    505542
Note: See TracChangeset for help on using the changeset viewer.