From abe207e27123cd2b9c528cd6bec22246e78e6c51 Mon Sep 17 00:00:00 2001 From: jbjohnso Date: Fri, 5 Feb 2010 18:17:27 +0000 Subject: [PATCH] -Report timeout condition back up through stack git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@5170 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd --- xCAT-server/lib/perl/xCAT/IPMI.pm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/xCAT-server/lib/perl/xCAT/IPMI.pm b/xCAT-server/lib/perl/xCAT/IPMI.pm index 8330a2e22..f938c05d9 100644 --- a/xCAT-server/lib/perl/xCAT/IPMI.pm +++ b/xCAT-server/lib/perl/xCAT/IPMI.pm @@ -234,6 +234,10 @@ sub admin_level_set { sub got_channel_auth_cap { my $rsp = shift; my $self = shift; + if ($rsp->{error}) { + $self->{onlogon}->("ERROR: ".$rsp->{error}, $self->{onlogon_args}); + return; + } my $code = $rsp->{code}; #just to save me some typing if ($code == 0xcc and not defined $self->{ipmi15only}) { #ok, most likely a stupid ipmi 1.5 bmc $self->{ipmi15only}=1; @@ -348,6 +352,9 @@ sub timedout { $self->{timeout} = $self->{timeout}+1; if ($self->{timeout} > 4) { #giveup, really $self->{timeout}=1; + my $rsp={}; + $rsp->{error} = "timeout"; + $self->{ipmicallback}->($rsp,$self->{ipmicallback_args}); return; } $self->sendpayload(%{$self->{pendingargs}});