Changeset 13 for trunk/klask


Ignore:
Timestamp:
Jan 31, 2008, 11:37:27 AM (16 years ago)
Author:
g7moreau
Message:
  • Suppress the last call to a hardcore router address
  • Rename global variable KLASK_DB -> KLASK_DB_FILE and so on
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/klask

    r12 r13  
    1313# libcrypt-des-perl libcrypt-hcesha-perl   libdigest-hmac-perl
    1414
    15 my $KLASK_DB  = '/var/cache/klask/klaskdb';
    16 my $KLASK_SW  = '/var/cache/klask/switchdb';
    17 my $KLASK_CFG = '/etc/klask.conf';
    18 
    19 my $KLASK_CFG = YAML::LoadFile("$KLASK_CFG");
     15my $KLASK_DB_FILE  = '/var/cache/klask/klaskdb';
     16my $KLASK_SW_FILE  = '/var/cache/klask/switchdb';
     17my $KLASK_CFG_FILE = '/etc/klask.conf';
     18
     19my $KLASK_CFG = YAML::LoadFile("$KLASK_CFG_FILE");
    2020
    2121my %DEFAULT = %{$KLASK_CFG->{default}};
     
    317317
    318318   my $ret = {};
    319 #   $ret->{unknow} = {};
    320 #   $ret->{unknow}{description} = "unknow";
    321 #   $ret->{unknow}{port} = "0";
    322319
    323320   return $ret if $arp eq 'unknow';
     
    325322   for my $sw (@SWITCH) {
    326323      $switch_port_count{$sw->{hostname}} = {} if not exists $switch_port_count{$sw->{hostname}};
    327 #      $sw->{_port} = {} if not exists $sw->{_port};
    328324      }
    329325
    330326   my $research = "1.3.6.1.2.1.17.4.3.1.2".arp_hex_to_dec($arp);
    331 #print " $arp -> $research\n";
    332327   LOOP_ON_ALL_SWITCH:
    333328   for my $sw (@SWITCH) {
    334329      my ($session, $error) = Net::SNMP->session( %{$sw->{local_session}} );
    335 print "$error \n" if $error;
    336 #         -hostname   => $sw->{hostname},
    337 #         -community  => $sw->{community} || $DEFAULT{community} || 'public',
    338 #         -port       => $sw->{snmpport}  || $DEFAULT{snmpport}  || 161
    339 #         );
    340 #print "$sw->{hostname} --  $research \n";
     330      print "$error \n" if $error;
     331
    341332      my $result = $session->get_request(
    342333         -varbindlist => [$research]
    343334         );
     335
    344336      if(defined($result) and $result->{$research} ne 'noSuchInstance'){
    345 #print "+++ $sw->{hostname} -> $result->{$research}\n" ;
    346337         my $swport = $result->{$research};
    347338
     
    352343
    353344         $switch_port_count{$sw->{hostname}}->{$swport}++;
    354 #         $sw->{_port}{$swport}++;
    355          }
    356       else {
    357 #print "$sw->{hostname} --  $research --".$session->error()."\n";
    358345         }
    359346
    360347      $session->close;
    361348      }
    362 #print "end \n";
    363349   return $ret;
    364350   }
     
    482468
    483469   fastping(@computer);
    484    my $computerdb = YAML::LoadFile("$KLASK_DB");
     470   my $computerdb = YAML::LoadFile("$KLASK_DB_FILE");
    485471   
    486472   LOOP_ON_COMPUTER:
     
    510496      @network = get_list_network() if not @network;
    511497
    512    my $computerdb = YAML::LoadFile("$KLASK_DB");
     498   my $computerdb = YAML::LoadFile("$KLASK_DB_FILE");
    513499   my $timestamp = time;
    514500   
     
    647633   printf "\n";
    648634
    649    my $dirdb = $KLASK_DB;
     635   my $dirdb = $KLASK_DB_FILE;
    650636      $dirdb =~ s#/[^/]*$##;
    651637   mkdir "$dirdb", 0755 unless -d "$dirdb";
    652    YAML::DumpFile("$KLASK_DB", $computerdb);
     638   YAML::DumpFile("$KLASK_DB_FILE", $computerdb);
    653639
    654640   for my $one_computer (keys %computer_not_detected) {
     
    662648   my @computer = @_;
    663649   
    664    my $computerdb = YAML::LoadFile("$KLASK_DB");
     650   my $computerdb = YAML::LoadFile("$KLASK_DB_FILE");
    665651
    666652   LOOP_ON_COMPUTER:
     
    672658      }
    673659
    674    my $dirdb = $KLASK_DB;
     660   my $dirdb = $KLASK_DB_FILE;
    675661      $dirdb =~ s#/[^/]*$##;
    676662   mkdir "$dirdb", 0755 unless -d "$dirdb";
    677    YAML::DumpFile("$KLASK_DB", $computerdb);
     663   YAML::DumpFile("$KLASK_DB_FILE", $computerdb);
    678664   }
    679665
    680666sub cmd_exportdb {
    681    my $computerdb = YAML::LoadFile("$KLASK_DB");
     667   my $computerdb = YAML::LoadFile("$KLASK_DB_FILE");
    682668
    683669   printf "%-24s %-4s            %-30s %-15s %-18s %-s\n", qw(Switch Port Hostname IPv4-Address MAC-Address Date);
     
    711697
    712698sub cmd_iplocation {
    713    my $computerdb = YAML::LoadFile("$KLASK_DB");
     699   my $computerdb = YAML::LoadFile("$KLASK_DB_FILE");
    714700
    715701   LOOP_ON_IP_ADDRESS:
     
    768754#   for my $one_computer ('194.254.66.254') {
    769755   for my $one_router ( get_list_main_router(get_list_network()) ) {
    770       my %resol_arp = resolve_ip_arp_host($one_router,'*','low');            #resolution arp
     756      my %resol_arp = resolve_ip_arp_host($one_router,'*','low');            # resolution arp
    771757      next DETECT_ALL_ROUTER if $resol_arp{mac_address} eq 'unknow';
    772758     
    773       $where{$resol_arp{ipv4_address}} = find_all_switch_port($resol_arp{mac_address}); #retrouve les emplacements
     759      $where{$resol_arp{ipv4_address}} = find_all_switch_port($resol_arp{mac_address}); # retrouve les emplacements des routeurs
    774760      }
    775761
    776762   ALL_ROUTER_IP_ADDRESS:
    777    for my $ip (Net::Netmask::sort_by_ip_address('194.254.66.254')) {
    778    
    779       next ALL_ROUTER_IP_ADDRESS if not exists $where{$ip};
     763   for my $ip (Net::Netmask::sort_by_ip_address(keys %where)) { # '194.254.66.254')) {
     764   
     765      next ALL_ROUTER_IP_ADDRESS if not exists $where{$ip}; # /a priori/ idiot car ne sers à rien...
    780766
    781767      ALL_SWITCH_CONNECTED:
     
    932918      };
    933919     
    934    YAML::DumpFile("$KLASK_SW", $switch_connection);
     920   YAML::DumpFile("$KLASK_SW_FILE", $switch_connection);
    935921   }
    936922
     
    957943sub cmd_exportsw_txt {
    958944
    959    my $switch_connection = YAML::LoadFile("$KLASK_SW");
     945   my $switch_connection = YAML::LoadFile("$KLASK_SW_FILE");
    960946
    961947   my %db_switch_output_port       = %{$switch_connection->{output_port}};
     
    992978sub cmd_exportsw_dot {
    993979
    994    my $switch_connection = YAML::LoadFile("$KLASK_SW");
     980   my $switch_connection = YAML::LoadFile("$KLASK_SW_FILE");
    995981   
    996982   my %db_switch_output_port       = %{$switch_connection->{output_port}};
Note: See TracChangeset for help on using the changeset viewer.