/[pxelator]/lib/PXElator/amt.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /lib/PXElator/amt.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 379 by dpavlin, Sun Aug 30 15:33:30 2009 UTC revision 380 by dpavlin, Sun Aug 30 16:36:37 2009 UTC
# Line 15  use CouchDB; Line 15  use CouchDB;
15  use Carp qw/confess/;  use Carp qw/confess/;
16    
17  sub ip {  sub ip {
18          my $client_ip = shift || confess "no ip";          my ( $client_ip, $amt ) = @_;
19          my ( $passwd, $ip ) = split(/\s+/, client::conf( $client_ip => 'amt' ));          $amt ||= client::conf( $client_ip => 'amt' );
20            my ( $passwd, $ip ) = split(/\s+/, $amt);
21          ( $ip, $passwd ) = ( $passwd, $ip ) if $passwd =~ m/$RE{net}{IPv4}/;          ( $ip, $passwd ) = ( $passwd, $ip ) if $passwd =~ m/$RE{net}{IPv4}/;
22    
23          $ip ||= $client_ip;          $ip ||= $client_ip;
24    
         if ( ! ping::host( $ip ) ) {  
                 warn "W: ping $ip unreachable\n";  
         }  
   
         warn "amt $ip ", '*' x length($passwd), "\n";  
   
25          $ENV{AMT_PASSWORD} = $passwd;          $ENV{AMT_PASSWORD} = $passwd;
26          $ENV{AMT_HOST} = $ip;          $ENV{AMT_HOST} = $ip;
   
 }  
   
 sub power_on {  
         ip @_;  
         ( power_state() & 0x0f ) == 0;  
27  }  }
28    
29  sub power_state {  sub power_state {
# Line 43  sub power_state { Line 32  sub power_state {
32          return $state;          return $state;
33  }  }
34    
35    sub power_on {
36            ip @_;
37            my $state = power_state;
38            defined $state && ( $state & 0x0f ) == 0;
39    }
40    
41  sub info {  sub info {
42          ip @_;          ip @_;
43    
# Line 53  sub info { Line 48  sub info {
48                  CouchDB::audit('network', $amt );                  CouchDB::audit('network', $amt );
49          };          };
50          warn "ERROR amt $@" if $@;          warn "ERROR amt $@" if $@;
51            $amt;
         my $out;  
         my $ip = $ENV{AMT_HOST};  
   
         $out =  
                   qq| <a href="http://$ip:16992/" target="$ip">amt</a>|  
                 . qq| <a href="http://$ip:16992/ip.htm" target="$ip">ip</a>|  
                 . qq|<br>|  
                 . html::pre_dump( $amt )  
                 ;  
   
         return $out;  
52  }  }
53    
54    

Legend:
Removed from v.379  
changed lines
  Added in v.380

  ViewVC Help
Powered by ViewVC 1.1.26