From 0834568452df3cac8c6e2aeeacfe80368d49ae6d Mon Sep 17 00:00:00 2001 From: yinle Date: Wed, 16 Mar 2011 13:40:07 +0000 Subject: [PATCH] Fix bug 3215523:FSP attr should change when CEC attr is modified. Change the process of finding fsp/bpa's password. git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@9061 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd --- perl-xCAT/xCAT/FSPUtils.pm | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/perl-xCAT/xCAT/FSPUtils.pm b/perl-xCAT/xCAT/FSPUtils.pm index 63e9b8b78..04a7359c1 100644 --- a/perl-xCAT/xCAT/FSPUtils.pm +++ b/perl-xCAT/xCAT/FSPUtils.pm @@ -143,6 +143,19 @@ sub fsp_api_action { } else { $tmp_node = $fsp_name; } + + # find parent for fsp/bpa, use parent's attributes first. + my $ntype = xCAT::DBobjUtils->getnodetype($tmp_node); + if ($ntype =~ /^(fsp|bpa)$/) { + my $ptab = xCAT::Table->new('ppc'); + if ($ptab) { + my $parent = $ptab->getNodeAttribs($tmp_node, ["parent"]); + if ($parent and $parent->{parent}) { + $tmp_node = $parent->{parent}; + } + } + } + ($user, $password) = xCAT::PPCdb::credentials( $tmp_node, $fsp_bpa_type,'HMC'); if ( !$password) { $res = "Cannot get password of userid 'HMC'. Please check table 'passwd' or 'ppcdirect'.";