Commit fixes segafult in ipmi_sol_payload_access_status in 'lib/ipmi_sol.c' when
no response is received. This is caused by passing NULL to lprintf() as
parameter, resp. accessing response data that aren't there.
Reported by: Ales Ledvinka
ID: 3582310 - 'lib/ipmi_fru.c' - ipmi_fru_main() - misuse of printf()
Commit is a major re-work of ipmi_fru_main().
* Help print-outs moved into functions.
* Proper return codes on error/help, although some TODOs remain.
* "discovery" 'fru get'
* hopefully less bloat in ipmi_fru_main()
Commit removes pointless(?) and unhandled cast from uint32_t to uint8_t and
back. intf->target_addr is uint32_t, don't try to "squeeze" it into uint8_t
then.
Reported by: Duncan Idaho
Commit fixes possible int *flow in ipmi_sdr_print_type() in 'lib/ipmi_sdr.c'.
str2uchar() is used instead of strtol() which wasn't being checked for errors.
Reported by: Duncan Idaho
Commit fixes *flow via atoi() and not checking strtol() properly. is_fru_id()
wrapper has been added to mitigate code repetition.
Reported by: Dune Idaho
PROPER - Commit fixes ipmi_get_sol_info()'s return value, so (-1) is returned on
error, eg. response is NULL. It doesn't matter whether it is first or last
response, we bail out immediately.
Commit also fixes missing argument to one lprintf() and
indentation(spaces->tabs).
This bug is connected with ``ID: 1835038 - 'lib/ipmi_sol.c' -
ipmi_get_sol_info() returns always 0''.
Reported by: Duncan Idaho
Commit fixes ipmi_get_sol_info()'s return value, so (-1) is returned on error,
eg. response is NULL. It doesn't matter whether it is first or last response, we
bail out immediately.
Commit also fixes missing argument to one lprintf() and
indentation(spaces->tabs).
This bug is connected with ``ID: 1835038 - 'lib/ipmi_sol.c' -
ipmi_get_sol_info() returns always 0''.
Reported by: Duncan Idaho
ID: 3578275 - 'lib/ipmi_fru.c' - memory leaks
Commit fixes several memory leaks and possible call of free() on memory that has
been already freed.
Despite 'goto' should be avoided as much as possible, its use seemed to be quite
reasonable in this case.
Commit fixes possible NULL pointer by adding check whether fru_bloc, returned
from build_fru_bloc(), is NULL or not. If it is, print an error message and
return (-1).
Commit fixes two memory leaks in 'lib/ipmi_main.c'. They were caused by not
freeing memory allocated by strdup() which uses malloc() underneath.
Reported by Duncan Idaho.
Some of configure's knobs and switches, eg. --disable-intf-open, don't work.
This is caused by poor choice of variable names, resp. using the same variable
names Autoconf is using. And Autoconf doesn't like it, resp. gets confused.
Variable names prefixed with an 'x' in order to make them 'unique'.
Commit removes pointless(?) and unhandled cast from uint32_t to uint8_t and
back. intf->target_addr is uint32_t, don't try to "squeeze" it into uint8_t
then.
Commit removes false presumption there is no BMC driver for SPARC platform in
Solaris. Also, this makes BMC driver default to yes, being built, on Solaris.
Commit fixes inconsistent behaviour of 'sel set time' command. This was caused
by random init values of tm structures.
Also, the state of DST should be looked up now.
Date: Mon Aug 13 14:35:28 2012 +0200
Fixed ipmievd start under systemd.
Systemd init system starts services with parent PID=1. Still, it is expected
that the daemon forks and exits with nozero exit status, if its initialization
fails.
Signed-off-by: Duncan Idaho <dune.idaho@gmail.com>
Commit fixes case when ipmitool is built without any LAN interface support,
resp. without LAN and LAN+ support. In such case, build would fail because
md5.c and md5.h are not being linked.
Commit adds 'src/plugins/lan/md5.c' and 'src/plugins/lan/md5.c' to
'lib/Makefile.am'.
Support added for Post Fatal Error or Events of
sensor type 0x0F. This includes the Fatal Errors
generated from BIOS, BIOS POST, CPU and Others.
Signed-off-by: Srinivas Gowda G <Srinivas_G_Gowda@Dell.com>
IDPT memory - 0x2B. Support for status check of
communication channel between BMC/Other Hardware/CPU. Support for
Flex Address and Virtual MAC Support for Non-Fatal
PCIE error sensor type 0xC2 and Fatal IO Error 0xC3
Signed-off-by: Srinivas Gowda G <Srinivas_G_Gowda@Dell.com>
is generated for Uncorrectable ECC and errors with respect to
each Memory Bank,Card or DIMM. The Sensor type
included in this patch are 0x0C and 0x10.
Signed-off-by: Srinivas Gowda G <Srinivas_G_Gowda@Dell.com>
for example - if the current UNC is set to 10, one can set the UC to a value less than 10.
In this patch the values are first read and validated against the user specified values and then set.
Signed-off-by: Srinivas Gowda G <Srinivas_G_Gowda@Dell.com>
a sensor reading when the reading/state unavailable bit was set. This
change makes sure a valid readiing is never returned for a sensor marked
reading/state unavailable.
implemented without an HP oem specific switch by modifying each interface
open routine to read and cache the OEM manufacturer (via the Get Device ID
command) immediately upon open and to reset the cached OEM manufacturer
id to unknown upon interface close. The cached manufacturer value in the
interface is then be used at run time to implement the manufacturer
specific code.
A non threshold sensor has an analog value if it is defined as having
analog units and it has either valid percentage or modifier units
defined and the manufacturer is IPMI_OEM_HP. The determination of
whether or not a given sensor has an analog value is contained in a
single function (sdr_sensor_has_analog_reading).
This patch also encapsulates the reading of all sensor values in
ipmitool into a a single ipmitool function, ipmi_sdr_read_sensor_value.
The prior independent sensor reading code paths have been collapsed into
one sensor reading code path. This encapsulation enabled consistent
validation of all data returned by the IPMI get sensor reading command.
In implementing a single sensor value read function, I resolved the
inconsistencies between what the "sensor" and "sdr" arguments displayed
and I also resolved numerous cases where uninitialized information in
the IPMI reply from get sensor reading was being interpreted and
incorrectly displayed.
From: Jan Safranek <jsafrane@redhat.com>
e..g 'ipmitool delloem lan help' should *not* check remote system for DELL
OEM commands before listing help. People tend to write scripts on different
machines and listing help is very helpful. In addition, why check for
setled support if only lan support is needed?
From: Jan Safranek <jsafrane@redhat.com>
'ipmitool dellem powermonitor' command should convert data from
network-format to the native one, otherwise it shows garbage on ppc/ppc64
platform.