From ee9c06138b068ed34d5be8174d22f02d6d91255d Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Wed, 19 Apr 2023 10:28:13 -0400 Subject: [PATCH] Clear any logonwaiters on broken A session being marked broken may maintain a hold on logonwaiters. Clear those out in the process of marking it broken Change-Id: I6e1ad7f34cd541863e8663cc6fed66ab90d6bf95 --- pyghmi/ipmi/private/session.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pyghmi/ipmi/private/session.py b/pyghmi/ipmi/private/session.py index ec2866bd..70ec0e45 100644 --- a/pyghmi/ipmi/private/session.py +++ b/pyghmi/ipmi/private/session.py @@ -583,6 +583,12 @@ class Session(object): self.broken = True if self.socket: self.socketpool[self.socket] -= 1 + while self.logonwaiters: + waiter = self.logonwaiters.pop() + try: + waiter({'error': 'Session failed to initalize'}) + except Exception: + pass def onlogon(self, parameter): if 'error' in parameter: