--- lib/PXElator/amt.pm 2009/08/10 12:28:03 191
+++ lib/PXElator/amt.pm 2009/08/19 11:51:51 263
@@ -8,27 +8,41 @@
use Intel::AMT::NetworkAdministration;
use Data::Dump qw/dump/;
use Regexp::Common qw/net/;
+use Net::Ping;
use html;
+use CouchDB;
sub info {
- my $amt = shift;
+ my ( $amt, $client_ip ) = @_;
my ( $passwd, $ip ) = split(/\s+/, $amt);
( $ip, $passwd ) = ( $passwd, $ip ) if $passwd =~ m/$RE{net}{IPv4}/;
+ $ip ||= $client_ip;
+
+ my $p = Net::Ping->new;
+
+ if ( ! $p->ping( $ip, 0.7 ) ) {
+ return "$ip unreachable";
+ }
+
warn "amt $ip ", '*' x length($passwd), "\n";
$ENV{AMT_HOST} = $ip;
$ENV{AMT_PASSWORD} = $passwd;
+ my $amt = Intel::AMT::NetworkAdministration::network_settings;
+ $amt->{power_state} = Intel::AMT::RemoteControl::SystemPowerState;
+
+ CouchDB::audit('network', $amt );
+
my $out;
- $out = qq|power: S| . Intel::AMT::RemoteControl::SystemPowerState
- . qq|
|
- . qq| amt|
+ $out =
+ qq| amt|
. qq| ip|
. qq|
|
- . html::pre_dump( Intel::AMT::NetworkAdministration::network_settings )
+ . html::pre_dump( $amt )
;
return $out;