use client IP if it's not specified in amt file
authorDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 19 Aug 2009 11:02:15 +0000 (11:02 +0000)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 19 Aug 2009 11:02:15 +0000 (11:02 +0000)
(assuming that AMT is on DHCP settings)

lib/PXElator/amt.pm
lib/PXElator/httpd.pm

index 0a16b63..2f3c96b 100644 (file)
@@ -13,10 +13,12 @@ use Net::Ping;
 use html;
 
 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 ) ) {
index 9e3bfdc..7fac25e 100644 (file)
@@ -240,7 +240,7 @@ warn "XXX pids = ", dump( $daemons::pids );
                                ;
 
                        if ( my $amt = client::conf( $ip, 'amt' ) ) {
-                               print $client qq|<h2>AMT</h2>|, amt::info( $amt );
+                               print $client qq|<h2>AMT</h2>|, amt::info( $amt, $ip );
                        }
                } else {