6 use Data::Dump qw(dump);
10 my $debug = $ENV{DEBUG} || 0;
12 my @name_mac_files = ( qw( /dev/shm/sw-name-mac /dev/shm/wap-name-mac ), $ENV{NAME_MAC}, glob '/dev/shm/name-mac*' );
15 foreach my $name_mac ( @name_mac_files ) {
16 next unless -e $name_mac;
17 open(my $f, '<'. $name_mac);
21 #my ( $ip, $name, $mac ) = split(/ /,$_);
22 my ( $name, $mac ) = split(/ /,$_);
24 $mac2name->{$mac} = $name;
27 warn "## $name_mac $count";
31 my ( $mac, $name ) = @_;
34 if ( exists $mac2name->{$mac} ) {
35 my $mac_name = $mac2name->{$mac};
36 warn "ERROR: name different $name != $mac_name" if $name && $name ne $mac_name;
37 #return ( $mac, $mac_name );
38 return $mac . ' ' . $mac_name;
40 #return ( $mac, $name );
44 warn "# mac2name = ",dump($mac2name) if $debug;
49 $mac =~ s/^([0-9a-f]):/0$1:/;
50 while ( $mac =~ s/:([0-9a-f]):/:0$1:/g ) {};
51 $mac =~ s/:([0-9a-f])$/:0$1/;
57 s/((:?[0-9A-Fa-f]{2}[:-]){5}(:?[0-9A-Fa-f]{2}))/mac2name($1)/ge;