/usr/local/CPAN/Ocsinventory-Agent/Ocsinventory/Agent/Backend/OS/AIX/Slots.pm


package Ocsinventory::Agent::Backend::OS::AIX::Slots;
use strict;
sub check {can_run("lsdev")}

sub run {
  my $params = shift;
  my $inventory = $params->{inventory};
  
  my $description;
  my $designation;
  my $name;
  my $status;  
  my @slot;
  my $flag=0;
 
  @slot=`lsdev -Cc bus -F 'name:description'`;
  for(@slot){	
	/^(.+):(.+)/;	
	$name = $1;
	$status = 'available';
	$designation = $2;	
	$flag=0;
	my @lsvpd = `lsvpd`;
  	s/^\*// for (@lsvpd);
	for (@lsvpd){
	 if ((/^AX $name/) ) {$flag=1}
	 if ((/^YL (.+)/) && ($flag)){	  
	    $description = $2;
	    }
	 if ((/^FC .+/) && $flag) {$flag=0;last}
	 }	 	 
    $inventory->addSlots({
	  DESCRIPTION =>  $description,
	  DESIGNATION =>  $designation,
	  NAME 		  =>  $name,
	  STATUS	  =>  $status,
	});
  }
}
1;