summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDawid Frycki <dawid.frycki@intel.com>2019-06-24 17:16:09 -0700
committerAlexander Amelkin <mocbuhtig@amelkin.msk.ru>2019-07-01 16:18:31 +0300
commit2ee7aca4e4c40490459387d82d87bb4cd2f1a898 (patch)
treed92738d9f25565f0190e43979496be5654f68725
parentefd28d1bc1cdb018c5e27b7703717a278ac31558 (diff)
downloadipmitool-2ee7aca4e4c40490459387d82d87bb4cd2f1a898.tar.gz
lanplus: Fix embedded bridged responses handling
Resolves ipmitool/ipmitool#141 Signed-off-by: Dawid Frycki <dawid.frycki@intel.com>
-rw-r--r--src/plugins/lanplus/lanplus.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/plugins/lanplus/lanplus.c b/src/plugins/lanplus/lanplus.c
index 28cb31c..f5aba5e 100644
--- a/src/plugins/lanplus/lanplus.c
+++ b/src/plugins/lanplus/lanplus.c
@@ -762,12 +762,6 @@ ipmi_lan_poll_single(struct ipmi_intf * intf)
printbuf(&rsp->data[offset], (rsp->data_len-offset-1),
"bridge command response");
/*
- * decrement payload size
- * (cks2 for outer Send Message)
- */
- payload_size--;
-
- /*
* need to make a loop for embedded bridged response
*/
loop++;
@@ -793,6 +787,9 @@ ipmi_lan_poll_single(struct ipmi_intf * intf)
if (extra_data_length > 0) {
rsp->data_len = extra_data_length;
memmove(rsp->data, rsp->data + offset, extra_data_length);
+ offset = 0;
+ payload_start = 0;
+ payload_size = extra_data_length;
} else {
rsp->data_len = 0;
}