From 8ca38ff61608914988e56f177eee597d6061cd45 Mon Sep 17 00:00:00 2001
From: yinle <yinle@8638fb3e-16cb-4fca-ae20-7b5d299a9bcd>
Date: Thu, 28 Apr 2011 07:57:48 +0000
Subject: [PATCH] Fix bug 3293003: lshwconn frame should give BPA's connection
 status

git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@9424 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
---
 perl-xCAT/xCAT/FSPconn.pm | 26 +++++++++++++++++++++++++-
 1 file changed, 25 insertions(+), 1 deletion(-)

diff --git a/perl-xCAT/xCAT/FSPconn.pm b/perl-xCAT/xCAT/FSPconn.pm
index ba80c5448..c3f3d74a8 100644
--- a/perl-xCAT/xCAT/FSPconn.pm
+++ b/perl-xCAT/xCAT/FSPconn.pm
@@ -332,7 +332,31 @@ sub lshwconn_parse_args
     {
         return( ["Failed to open table 'nodehm'.\n"]);
     }
-
+    #need to transfer CEC/Frame to FSPs/BPAs
+    my @inodes = ();
+    my @validnodes = ();
+    my $pnode;
+    my $cnode;
+    if ($request->{node})
+    {
+        foreach $pnode(@{$request->{node}})
+        {
+            my $ntype = xCAT::DBobjUtils->getnodetype($pnode);
+                if ($ntype =~ /^(cec|frame)$/)
+                {
+                    $cnode = xCAT::DBobjUtils->getchildren($pnode);
+                    foreach (@$cnode)
+                    {
+                        push @validnodes, $_;
+                    }
+                } else
+                {
+                    push @validnodes, $pnode;
+                }
+        }
+        $request->{node} = \@validnodes;
+    }    
+      
     my $nodetype;
     for my $node ( @{$request->{node}})
     {