/[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

Annotation of /lib/PXElator/amt.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 336 - (hide annotations)
Sat Aug 29 00:07:00 2009 UTC (14 years, 7 months ago) by dpavlin
File size: 995 byte(s)
just warn about unreachable clients, but wrap our soap invocation in eval
1 dpavlin 181 package amt;
2    
3     use warnings;
4     use strict;
5    
6 dpavlin 191 use lib '/srv/Intel-AMT/lib/';
7 dpavlin 181 use Intel::AMT::RemoteControl;
8     use Intel::AMT::NetworkAdministration;
9     use Data::Dump qw/dump/;
10 dpavlin 186 use Regexp::Common qw/net/;
11 dpavlin 181
12     use html;
13 dpavlin 330 use ping;
14 dpavlin 263 use CouchDB;
15 dpavlin 181
16     sub info {
17 dpavlin 262 my ( $amt, $client_ip ) = @_;
18 dpavlin 186 my ( $passwd, $ip ) = split(/\s+/, $amt);
19     ( $ip, $passwd ) = ( $passwd, $ip ) if $passwd =~ m/$RE{net}{IPv4}/;
20 dpavlin 181
21 dpavlin 262 $ip ||= $client_ip;
22    
23 dpavlin 330 if ( ! ping::host( $ip ) ) {
24 dpavlin 336 warn "$ip unreachable";
25 dpavlin 203 }
26    
27 dpavlin 186 warn "amt $ip ", '*' x length($passwd), "\n";
28    
29 dpavlin 181 $ENV{AMT_HOST} = $ip;
30     $ENV{AMT_PASSWORD} = $passwd;
31    
32 dpavlin 336 my $amt;
33     eval {
34     $amt = Intel::AMT::NetworkAdministration::network_settings;
35     $amt->{power_state} = Intel::AMT::RemoteControl::SystemPowerState;
36     CouchDB::audit('network', $amt );
37     };
38     warn "ERROR amt $@" if $@;
39 dpavlin 263
40 dpavlin 181 my $out;
41    
42 dpavlin 263 $out =
43     qq| <a href="http://$ip:16992/" target="$ip">amt</a>|
44 dpavlin 183 . qq| <a href="http://$ip:16992/ip.htm" target="$ip">ip</a>|
45 dpavlin 181 . qq|<br>|
46 dpavlin 263 . html::pre_dump( $amt )
47 dpavlin 181 ;
48    
49     return $out;
50     }
51    
52     1;

  ViewVC Help
Powered by ViewVC 1.1.26