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

Contents of /trunk/lib/Intel/AMT/NetworkAdministration.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 17 - (show annotations)
Sun Aug 9 18:23:26 2009 UTC (14 years, 7 months ago) by dpavlin
File size: 2004 byte(s)
added network_settings
1 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