diff --git a/pyghmi/ipmi/private/session.py b/pyghmi/ipmi/private/session.py index 5c639a51..c71be8d1 100644 --- a/pyghmi/ipmi/private/session.py +++ b/pyghmi/ipmi/private/session.py @@ -1166,7 +1166,7 @@ class Session(object): if not (pkt[0][0] == 6 and pkt[0][2:4] == b'\xff\x07'): continue if pkt[1] in self.bmc_handlers: - self._handle_ipmi_packet(pkt[0], sockaddr=pkt[1]) + self._handle_ipmi_packet(pkt[0], sockaddr=pkt[1], qent=pkt) elif pkt[2] in self.bmc_handlers: self.sessionless_data(pkt[0], pkt[1]) @@ -1182,7 +1182,7 @@ class Session(object): if mysocket in cls.bmc_handlers: cls.bmc_handlers[mysocket].sessionless_data(data, sockaddr) - def _handle_ipmi_packet(self, data, sockaddr=None): + def _handle_ipmi_packet(self, data, sockaddr=None, qent=None): if self.sockaddr is None and sockaddr is not None: self.sockaddr = sockaddr elif (self.sockaddr is not None and @@ -1193,6 +1193,17 @@ class Session(object): # satisfactory answer if data[4] in (0, 2): # This is an ipmi 1.5 paylod remsequencenumber = struct.unpack('