From ebb60eebee99bd5a25f25d90692988bc3488e3a8 Mon Sep 17 00:00:00 2001 From: Jean-Michel Audet Date: Wed, 29 Jul 2009 14:49:08 +0000 Subject: [PATCH] - In function ipmi_sdr_add_record, there is a missing '<' in the calculation of the in progress bit in order to determine when a Partial Add SDR entry is terminated. This cause the IPMI firmware to simply drop the SDR (required by the spec). --- ipmitool/lib/ipmi_sdradd.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ipmitool/lib/ipmi_sdradd.c b/ipmitool/lib/ipmi_sdradd.c index 88b04e6..fa73a9d 100644 --- a/ipmitool/lib/ipmi_sdradd.c +++ b/ipmitool/lib/ipmi_sdradd.c @@ -141,7 +141,9 @@ ipmi_sdr_add_record(struct ipmi_intf *intf, struct sdr_record_list *sdrr) while (i < len) { int data_len = 0; - if (len - i < sdr_max_write_len) { + /* JMA - Add = here since it was not setting the bit when lenght was fitting + boundary. This was causing some sensors to be rejected from SDRR */ + if (len - i <= sdr_max_write_len) { /* last crunch */ data_len = len - i; sdr_rq->in_progress = LAST_RECORD;