diff --git a/xCAT-server/lib/xcat/plugins/yaboot.pm b/xCAT-server/lib/xcat/plugins/yaboot.pm index 08bea97fd..00ad07a26 100644 --- a/xCAT-server/lib/xcat/plugins/yaboot.pm +++ b/xCAT-server/lib/xcat/plugins/yaboot.pm @@ -160,8 +160,12 @@ sub setstate { foreach $ip (keys %ipaddrs) { my @ipa=split(/\./,$ip); my $pname = sprintf("%02x%02x%02x%02x",@ipa); - #special case for sles 11 - my @mac_substr = split /\:/, $machash{$node}->[0]->{mac}; + #special case for sles 11 + my $mac = lc($machash{$node}->[0]->{mac}); + if (! (grep /\:/, $mac) ) { + $mac =~ s/(..)(..)(..)(..)(..)(..)/$1:$2:$3:$4:$5:$6/; + } + my @mac_substr = split /\:/, $mac; my $sles_yaboot_link = sprintf("yaboot.conf-%s-%s-%s-%s-%s-%s", @mac_substr); unlink($tftpdir."/etc/".$pname); link($tftpdir."/etc/".$node,$tftpdir."/etc/".$pname);