/[Intel-AMT]/trunk/lib/Intel/AMT/NetworkAdministration.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 /trunk/lib/Intel/AMT/NetworkAdministration.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 17 - (hide annotations)
Sun Aug 9 18:23:26 2009 UTC (14 years, 9 months ago) by dpavlin
File size: 2004 byte(s)
added network_settings
1 dpavlin 17 package Intel::AMT::NetworkAdministration;
2    
3     use warnings;
4     use strict;
5    
6     use Data::Dump qw/dump/;
7    
8     =for reference
9    
10     dpavlin@t61p:~/Desktop/docs/amt/AMT-5.1-SDK/Linux/Intel_AMT/Samples/Soap/NetworkAdministration/c++$ grep FunctionCall *
11     NetworkAdministrationSample.cpp: FunctionCall("GetHostName");
12     NetworkAdministrationSample.cpp: FunctionCall("SetHostName");
13     NetworkAdministrationSample.cpp: FunctionCall("EnumerateInterfaces");
14     NetworkAdministrationSample.cpp: FunctionCall("GetInterfaceSettings");
15     NetworkAdministrationSample.cpp: FunctionCall("SetInterfaceSettings");
16     NetworkAdministrationSample.cpp: FunctionCall("GetVlanParameters");
17     NetworkAdministrationSample.cpp: FunctionCall("SetVlanParameters");
18     NetworkAdministrationSample.cpp: FunctionCall("GetPingResponse");
19     NetworkAdministrationSample.cpp: FunctionCall("SetPingResponse");
20    
21     =cut
22    
23     use lib 'lib';
24     use base qw/Intel::AMT::SOAP/;
25    
26     our $soap = Intel::AMT::SOAP::_soap( 'NetworkAdministration' );
27    
28     sub ipv4 {
29     my $addr = shift;
30     return $addr unless $addr;
31     # sprintf("%x ",$addr) .
32     join('.',
33     ($addr & 0xff000000) >> 24,
34     ($addr & 0x00ff0000) >> 16,
35     ($addr & 0x0000ff00) >> 8,
36     $addr & 0x000000ff,
37     );
38     }
39    
40     sub network_settings {
41     my $info = {
42     hostname => $soap->GetHostName()->paramsout,
43     domainname => $soap->GetDomainName()->paramsout,
44     interfaces => [ $soap->EnumerateInterfaces->paramsout ],
45     vlan => [ $soap->GetVlanParameters->paramsout ],
46     ping => $soap->GetPingResponse->paramsout,
47     };
48    
49     warn "# network_settings ",dump( $info );
50    
51     foreach my $if ( @{ $info->{interfaces} } ) {
52     my $detail = $soap->GetInterfaceSettings( SOAP::Data->name('InterfaceHandle'=>$if) )->paramsout;
53     foreach my $param ( keys %{ $detail->{IPv4Parameters} } ) {
54     if ( my $ip = $detail->{IPv4Parameters}->{$param} ) {
55     $detail->{IPv4Parameters}->{$param} = ipv4( $ip );
56     }
57     }
58     $info->{interface_settings}->{$if} = $detail;
59     }
60    
61     return $info;
62     };
63    
64     1;

  ViewVC Help
Powered by ViewVC 1.1.26