FreeIPMI 1.6.14 - 01/27/24 -------------------------- o Fix build issue common to non-x86 systems. FreeIPMI 1.6.13 - 01/26/24 -------------------------- o Fix build issues on systems where inb/outb are declared with inline assembly. o Add additional sensor/event interpretations. FreeIPMI 1.6.12 - 11/19/23 -------------------------- o Use poll() over select() to avoid fd limit in openipmi driver. o Fix potential portability problems on systems without cbrt(). o Minor documentation updates. FreeIPMI 1.6.11 - 06/07/23 -------------------------- o Fix double free corner case in ipmiseld. o Support ISO 8601 date inputs to date range options in ipmi-sel. o Support Xilinx OEM FRU records. o Fix corner case in libipmimonitoring, support sensor if units is "RPM per minute", but just return "RPM" as the units. o Fix portability compilation on cygwin. o Fix typo in fiid template field that could lead to packet interpretation errors. FreeIPMI 1.6.10 - 08/30/22 -------------------------- o Support IPv6 Lan configuration in ipmi-config. IPv6 configuration is supported in the new Lan6_Conf section. o Fix static compilation issues by renaming a number of internal functions. o Misc documentation corrections. FreeIPMI 1.6.9 - 01/19/22 ------------------------- o Support --with-systemconfigdir build option. o Fix build issue on musl where putmsg/getmsg are not available. o Fix build issue when inb/outb are not available on some systems. o Fix static build issues with gcrypt. o Add conserver documentation in faq. o Minor documentation updates. FreeIPMI 1.6.8 - 05/19/21 ------------------------- o Fix incorrect sensor read corner case on BMCs that use non-default LUNs (LP#1926299). o Remove hard coded paths from system config files (i.e. mostly files in /etc). Have paths updated based on options to configure. FreeIPMI 1.6.7 - 02/12/21 ------------------------- o Do not require IPMI access when running ipmi-fru with the --fru-file option. o Fix default permissions of various config and system files. o Minor documentation updates. FreeIPMI 1.6.6 - 09/04/20 ------------------------- o In libfreeipmi, fix segfault in SPMI parsing leading to immediate failures on some hardware across all tools. FreeIPMI 1.6.5 - 05/21/20 ------------------------- o Add FRU parsing workaround for Fujitsu Primergy RX1330, in which a CEh is used to indicate that no FRU data is available. o Misc minor fixes. FreeIPMI 1.6.4 - 08/23/19 ------------------------- o In libfreeipmi, add additional workarounds for packets that are re-ordered during sensor bridging. o In libfreeipmi, add additional sensor / event interpretations. o In libfreeipmi, fix error return value on bridging requests. o Add workaround in ipmi-sel for QuantaPlex T42D-2U motherboard, which lists a SDR record that makes no sense. o Add workaround for Dell Poweredge FC830, which have an error when reading the last SDR record on a motherboard. o Support Supermicro X10 OEM dimm events. FreeIPMI 1.6.3 - 01/23/19 ------------------------- o In ipmi-locate, support parsing SPMI tables exported via sysfs. o Support Intel S2600GZ OEM sensor and SEL events. o Support Intel S2600WP OEM sensor and SEL events. o Support Gigabyte MG20-OP0-ZB OEM SEL events. o Fix DISCRETE_READING workaround in libipmimonitoring. o In libfreeipmi, add workaround for packets that are re-ordered during sensor bridging. o Minor bug fixes. o Various documentation updates/fixes. FreeIPMI 1.6.2 - 05/03/18 ------------------------- o Fix error in bridging where bridged requests were sent to the wrong LUN. o Fix command parsing bugs in legacy ipmi-config scripts (i.e. bmc-config, ipmi-pef-config, etc.) o Do not output full path of daemons in syslog, output only the daemon name (i.e. output "ipmidetected" instead of "/usr/sbin/ipmidetectd"). o Update channel range from 0-7 to 0-11, per errata IPMI update. FreeIPMI 1.6.1 - 02/02/18 ------------------------- o Add IPv6 hostname support to FreeIPMI, all of FreeIPMI can now take IPv6 addresses as inputs to "host" parameters, options, or inputs. o Support significant portions of IPMI IPv6 configuration in libfreeipmi. o Add --no-session option in ipmi-raw. o Add SDR cache options to ipmi-config. o Legacy -f short option for --flush-cache and -Q short option for quiet-cache. Backwards compatible for tools that supported it before. o In ipmi-oem, support Gigabyte get-bmc-services and set-bmc-services. o Various performance improvements: - Remove excessive calls to secure_memset to clear memory. - Remove excessive memsets and clears of data. - Remove unnecessary "double input checks". - Remove expensive input checks in libfreeipmi fiid library. Fallout from this may include FIID_ERR_FIELD_NOT_FOUND errors in different fiid functions. - Remove unnecessary input checks in libfreeipmi fiid library. - Add recent 'lookups' of fields in fiid library to internal cache. o Various minor fixes/improvements - Update libfreeipmi core API to use poll() instead of select(), to avoid issues with applications with a high number of threads. FreeIPMI 1.5.7 - 08/16/17 ------------------------- o In libipmimonitoring, fix several mem-leak corner cases. FreeIPMI 1.5.6 - 07/05/17 ------------------------- o In libfreeipmi locate (used by ipmi-locate), use DMI firmware in sysfs if it exists. o Minor mem-leak corner case fix in libfreeipmi. o Minor documentation fixes. o Minor error message clarifications. FreeIPMI 1.5.5 - 11/02/16 ------------------------- o Fix invalid flag clear in libipmiconsole that can lead to a potential double close on a file descriptor. o Support Supermicro H8SGL-F OEM sensors and events. FreeIPMI 1.5.4 - 09/30/16 ------------------------- o Various changes/fixes in libipmiconsole - If user retrieves file descriptor from ipmiconsole_ctx_fd, user is required to close it. ipmiconsole_ctx_destroy no longer closes it. This is to avoid a potential double close which can be a problem for multithreaded applications. This is a change in behavior, but we do not believe this will affect most applications since most users close the file descriptor under most scenarios anyways. - ipmiconsole_ctx_destroy() should now be called to free resources even if ipmiconsole_engine_teardown() has been called. This has been done to create consistent behavior in the API and avoid a former segfault possibility. This is a change in behavior, but we do not believe this will affect most applications since ipmiconsole_engine_teardown() is only called when an application is being shutdown. - The use of IPMICONSOLE_ENGINE_CLOSE_FD has been clarified in the header file. Some of the prior text was unclear. Behavior has not been changed. o In ipmi-oem, support Intel get-bmc-services and set-bmc-services commands. o In ipmi-oem, support Gigabyte get-nic-mode and set-nic-mode commands. o Support Gigabyte MD90-FS0-ZB OEM SEL events. FreeIPMI 1.5.3 - 08/01/16 ------------------------- o Update Fujitsu OEM extension product id support range. o In ipmiconsole, support --debugfile option for more difficult debugging scenarios. o In all sensor related tools, increase max number of record ids and sensor types that can be handled. o Fix several invalid completion code errors/values. FreeIPMI 1.5.2 - 05/24/16 ------------------------- o Update configuration file parsing code to handle values up to 1024 characters in length. o Set FD_CLOEXEC for ipmi driver device files opened within libfreeipmi. o Support --read-fru, --write-fru, and --device-id option in bmc-device. o Support --fru-file option in ipmi-fru. o Various library updates in libfreeipmi to handle new features. FreeIPMI 1.5.1 - 12/01/15 ------------------------- o Update Intel Node Manager support for 3.0 specification. - Update API and fiid templates in libfreeipmi. - Support new OEM SEL events - Update ipmi-oem commands. - Support new get/set-turbo-synchronization-ratio - Support new 'policypowerdomain' option in get-node-manager-capabilities and set-node-manager-policy. - Update output of get-node-manager-policy and get-node-manager-capabilities for changes. - get/set-node-manager-alert-thresholds converted to get/set-node-manager-policy-alert-thresholds. Legacy commands still supported. o Update libfreeipmi for IPMI 2.0 Errata 7. - Support/handle FRU Multirecord NVM Express type. o Support Get Device SDR Info, Get Device SDR, and Reserve Device SDR Repository commands in libfreeipmi. o Support ipmi-sel OEM interpretation of Linux kernel panics. o Re-organize OEM header files into per-vendor files. o In ipmi-oem, fix error in "DNS Register BMC" output in "get-dns-config" output in Inventec, Quanta, and Wistron vendor sections. o Support systemd through --with-systemdsystemunitdir configure option. o Minor corner case bug fixes. FreeIPMI 1.4.11 - 10/29/15 -------------------------- o Fix logic error with a few OEM SEL events for Intel E5 2600 V3 motherboard. o Fix various logic errors in ipmi-oem Intel Node Manager extensions. o Documentation updates. FreeIPMI 1.4.10 - 10/20/15 -------------------------- o In ipmi-oem, support Supermicro get-power-supply-status2. o In ipmi-locate, fix probing issue on arm32 & 64. o Handle several additional completion code error message in libfreeipmi. o Handle several error handling corner cases in ipmi-sensors. o Support Intel E5 2600 V3 motherboard OEM SEL events. o Fix several errors in ipmi-oem intelnm get-node-manager-statistics output. o Fix logic errors in ipmi-oem intelnm set-node-manager-policy. FreeIPMI 1.4.9 - 06/01/15 ------------------------- o Fix strtol parse corner cases in several commands. o Minor documentation fixes. FreeIPMI 1.4.8 - 01/07/15 ------------------------- o Fix segfault in crypt code with libgcrypt versions >= 1.6.0. o Fix --fanout command line parse bug. FreeIPMI 1.4.7 - 12/10/14 ------------------------- o Fix typo from FRU spec, language "Tegulu" is actually "Telugu". o Fix typo in SEL session output, "Invalid Username of Password" to "Invalid Username or Password". o Loop on select() call if interrupted by EINTR in openipmi, ssif, and sunbmc inband drivers. o Fix integer overflow bug in ipmi-config when configure vlan ID > 255. o Add workaround for ipmi-config issue on Supermicro X10DDW-i. o Fix error handling bug in bmc-info. FreeIPMI 1.4.6 - 10/29/14 ------------------------- o In ipmi-fru, support output of DDR4 SDRAM modules. o Fix EFI probing on non IA64 systems. o Fix corner case in ipmi-raw w/ standard input or --file and empty lines. o Fix parsing corner case in ipmi-chassis. o Support SSIF bridging. FreeIPMI 1.4.5 - 07/28/14 ------------------------- o Fix libipmiconsole calculation bug w/ SOL character send size. o Support Supermicro H8DGU and H8DG6 OEM sensors and events. o Minor documentation updates. FreeIPMI 1.4.4 - 06/27/14 ------------------------- o Support retrys of SSIF reads to handle SSIF NACKs. FreeIPMI 1.4.3 - 05/07/14 ------------------------- o Fix compile bug in 1.4.2 release. FreeIPMI 1.4.2 - 05/06/14 ------------------------- o In ipmi-oem, support Supermicro get-power-supply-status and get-pmbus-power-supply-status commands. o Support 'ipmiping' workaround in ipmipower. o Minor documentation updates. FreeIPMI 1.4.1 - 03/01/14 ------------------------- Tools - New Features -------------------- o Support new tool ipmi-config. Ipmi-config is a consolidated configuration tool implementing everything that was previously in bmc-config, ipmi-pef-config, ipmi-sensors-config, and ipmi-chassis-config. - The consolidated tool will allow users to checkout, commit, and diff sections/fields across the four former tools using only one tool. - The consolidated tool will also allow users to checkout, commit, and diff new sections/fields not yet covered in the four former tools. - Legacy scripts for bmc-config, ipmi-pef-config, ipmi-sensors-config, and ipmi-chassis-config will point to the new tool with all appropriate options to ensure full backwards compatability. - The ipmi-pef-config --info option has been made legacy. It is still supported but no longer advertised. o Support Intel Data Center Host Interface / Management Engine as optional driver type for in-band communication. - Typically these are loaded as /dev/dcmi and /dev/mei drivers. - This driver is identified as the "inteldcmi" type, as it is specific to Intel systems. o Support OEM extensions for Intel Windmill, Wiwynn Windmill, and Quanta Winterfell motherboards in ipmi-sel and ipmi-sensors. These motherboards are also know as motherboards for the Open Compute Project (OCP). o Support DCMI configuration in ipmi-config. o Update FreeIPMI for changes in IPMI 2.0 Errata 5. Include are: - New sensor events for Power Supply and OS Boot sensors. New events are supported in all areas, ipmi-sensors, ipmi-sel, libipmimonitoring, etc. - PEF now supports 255 filter numbers, not 127. This is supported in ipmi-config (formerly ipmi-pef-config). - Support get/set of new System Info Parameters Present OS Version, BMC URL, and Base OS/Hypervisor URL. This is supported in bmc-info and bmc-device. o Update ipmi-oem Intel Node Manager OEM commands for changes listed in Intelligent Power Node Manager 2.0 specification. - Due to changes in the specification, minor text changes may exist in some output from intelnm OEM commands. o Update ipmi-sel to support new SEL events in Intelligent Power Node Manager 2.0 specification. o Support 'serialalertsdeferred' workaround in ipmiconsole. o Support 'solpacketseq' workaround in ipmiconsole. o Fix portability issues for Apple / OS X. Tools - Bug Fixes/Minor Changes ------------------------------- o Fix bmc-info output of GUID, format was output with two bytes out of order. - May affect scripts parsing and using the GUID. o Bmc-info now supports --get-system-guid and outputs the System GUID as well as the Device GUID by default. - The Device GUID is not prefixed with the text "Device GUID" instead of just "GUID". Any scripts scripting against this will need to be adjusted. o Bmc-info now supports a workaround of 'guidformat' to read the GUID with a format a number of vendors have incorrectly used. o In ipmi-config's sensor configuration, decimal values that cannot be encoded accurately now report a clearer error message. Libraries --------- o Update libfreeipmi and libipmimonitoring to support IPMI 2.0 Errata 5. Included are: - Support new sensor events for Power Supply and OS Boot sensors. - Support PEF filter numbers up to 255. - Support new System Info Parameters for Present OS Version, BMC URL, and Base OS/Hypervisor URL. o Update libfreeipmi to support Intel Node Manager payloads per Intel Intelligent Power Node Manager 2.0 specification. - Due to changes in the specification, some payload fields have been changed. o Update libfreeipmi SEL sub-library to handle new event messages in Intelligent Power Node Manager 2.0 specification. o Support SERIAL_ALERTS_DEFERRED workaround in libipmiconsole. o Support INCREMENT_SOL_PACKET_SEQUENCE workaround in libipmiconsole. FreeIPMI 1.3.4 - 12/12/13 ------------------------- o Support 'solchannelsupport' workraound in ipmiconsole / IPMICONSOLE_WORKAROUND_SKIP_CHANNEL_PAYLOAD_SUPPORT workaround flag in libipmiconsole. o Fix SDR cache workaround for motherboards with invalid SDR record counts listed. o Workaround Supermicro bug in bmc-watchdog. o Fix error checks in sensor decoding functions, leading to possible problems in ipmi-sensors-config. o Update documentation with additional workarounds for motherboards. o Fix various minor bugs. FreeIPMI 1.3.3 - 10/29/13 ------------------------- o Add support for intelnm get-node-manager-alert-destination and set-node-manager-alert-destination in ipmi-oem. o Under very verbose mode, ipmi-sel will now record types for OEM records. This should allow OEM parses outside of FreeIPMI to more effectively parse OEM specific SEL records. o Fix big endian portability bugs. FreeIPMI 1.3.2 - 09/10/13 ------------------------- o Update FreeIPMI tools to check libfreeipmi API error codes correctly. o Update ipmi-api.h to list mappings of IPMI completion codes and RMCPPlus codes to API Error codes. FreeIPMI 1.3.1 - 08/22/13 ------------------------- Tools - New Features -------------------- o In all tools reporting time (ipmi-sel, ipmi-fru, ipmi-oem, bmc-device, ipmi-sensors, ipmi-dcmi), timestamps are now reporting under the assumption the timestamp is already in localtime (compared to being in UTC time and converted to localtime). This is by definition in the IPMI specification. o In all tools reporting time (ipmi-sel, ipmi-fru, ipmi-oem, bmc-device, ipmi-sensors, ipmi-dcmi), support --utc-to-localtime, --localtime-to-utc, and --utc-offset options to allow users to adjust timestamps as needed for certain environments. o In ipmi-fru, support output of DDR3 SDRAM modules. o In ipmi-fru, support output of new FRU multirecords, most notably extended DC output and extended DC load (per FRU Revision 1.2 update). o In bmc-device, support --get-sel-time-utc-offset and --set-sel-time-utc-offset. Tools - Bug Fixes/Minor Changes ------------------------------- o In ipmi-fru, report power supply low/high end voltage ranges as signed numbers (per FRU Revision 1.2 update). o In ipmi-fru, output "unspecified" for manufacturing date/time or peak capacity as appropriate (per FRU Revision 1.2 update). o In ipmi-fru, bridge additional FRU entries as appropriate. o In all tools reporting time (ipmi-sel, ipmi-fru, ipmi-oem, bmc-device, ipmi-sensors, ipmi-dcmi), special timestamps such as Post-Init and Unspecified will now be output. o Fix output corner case with entity sensor names in various tools. Libraries --------- o In libfreeipmi, support additional chassis types (per FRU Revision 1.2 update). o In libfreeipmi, support new FRU multirecord types (per FRU Revision 1.2 update). o In libfreeipmi, support new IPMI_FRU_FLAGS_READ_RAW 'fru' sub-library flag to read data from the FRU raw without parsing headers/records. o In libfreeipmi, add support for DDR3 SDRAM FRU entries and JEDEC manufacturer IDs. o In libfreeipmi, add support for Get SEL Time UTC Offset and Set SEL Time UTC Offset payloads. o In libfreeipmi 'sel' sub-library, support IPMI_SEL_PARAMETER_UTC_OFFSET, IPMI_SEL_STRING_FLAGS_UTC_TO_LOCALTIME, and IPMI_SEL_STRING_FLAGS_LOCALTIME_TO_UTC options/flags. o In libfreeipmi, do not pad legacy byte on IPMI 1.5 packets. Legacy byte should be padded on ethernet frame, not IP packet. o In libfreeipmi, 'sdr' sub-library, when creating SDR cache, add checksums to cache to ensure data in cache is not corrupted. Older caches without checksums still backwards compatible supported. o In libfreeipmi, support new IPMI_ERR_COMMAND_INVALID_OR_UNSUPPORTED error code for IPMI commands that are invalid or unsupported. FreeIPMI 1.2.9 - 07/17/13 ------------------------- o Fix threshold output corner case in ipmi-sensors. o Fix invalid declaration in libipmimonitoring header. o Fix older compiler build problems. FreeIPMI 1.2.8 - 06/21/13 ------------------------- o Fix portability build bug on ARM systems. o Add 'internal IPMI error' troubleshooting to manpages. o Fix bmc-info corner case on Bull 510 systems. FreeIPMI 1.2.7 - 05/16/13 ------------------------- o Fix sensor output errors with OEM sensors. FreeIPMI 1.2.6 - 04/29/13 ------------------------- o Support HP Proliant DL160 G8 OEM sensors. o Support Supermicro X9SCM-iiF OEM sensors and events. o Support output of temperature sampling period to ipmi-dcmi. o Clarify error message when SOL session cannot be stolen in ipmiconsole/libipmiconsole. o Fix dcmi rolling average time period output error o Fix ipmi-dcmi output errors with --get-dcmi-sensor-info. o Fix corner case in calculation of confidentiality pad length with AES-CBC-128 encryption. Incorrect pad effects some vendor firmware implementations. o Send IPMI 2.0 packets differently than IPMI 1.5 packets, as the former does not require legacy pad data to be appended to payloads. o Fix Intel OEM SEL buffer overflow. o Fix out of trunk source build. Libraries --------- o Support new ipmi_rmcpplus_sendto() and ipmi_rmcpplus_recvfrom() functions. o Support new HP Proliant DL160 G8 OEM sensor events. FreeIPMI 1.2.5 - 02/26/13 ------------------------- o In all config tools (bmc-config, ipmi-pef-config, ipmi-chassis-config, ipmi-sensors-config), fix bug when user specifies --checkout and --filename option and no data outputs to file. o In all config tools, exit with value 1 when non-fatal errors occur. Exit with value 2 when fatal errors occur. o Support Supermicro X9SPU-F-O OEM sensors and events. o Support Supermicro X9DRI-LN4F+ OEM intepretations (previously forgotten). o Clarify use of --filename in config tool manpages. FreeIPMI 1.2.4 - 01/10/13 ------------------------- o Support Supermicro X9DRI-LN4F+ OEM sensors and events. o Fix output corner case for "session-based" channels. o Fix ipmi-oem set-power-restore-delay corner case in time settings. o Fix ipmiseld memleak. o Fix libfreeipmi potential fd leak when generating random numbers. o Fix libfreeipmi error output bug in RMCP interface. o Fix several minor corner cases discovered by static code analysis. FreeIPMI 1.2.3 - 11/14/12 ------------------------- Tools ------ o In ipmi-oem, support new Dell Poweredge R720 OEM commands extensions, including: - get-nic-selection-failover - set-nic-selection-failover - power-monitoring-over-interval - power-monitoring-interval-range - get-last-post-code o In ipmi-oem, update active-lom-status for Dell Poweredge R720. o In ipmi-oem, support new Dell Poweredge R720 get-system-info option 'cmc-info'. o In ipmi-oem, Dell get-system-info "slot-number" key changed to "blade-slot-info". Legacy option still supported. o In ipmi-sel, support Dell Poweredge R720 OEM SEL extensions. o In all tools, support nochecksumcheck workaround option. o In all daemons (ipmiseld, ipmidetectd, bmc-watchdog), check for syscall errors during daemon setup. Libraries --------- o In libfreeipmi, support Dell R720 OEM extension intepretations. o In libfreeipmi, libipmimonitoring, and libipmiconsole, support NO_CHECKSUM_CHECK workaround flag. o In libipmiconsole, IPMICONSOLE_DEBUG_FILE logs debug to files in current working directory and not /var/log. PID is also appended to debug files. Misc ---- o Various documentation updates and fixes. FreeIPMI 1.2.2 - 10/02/12 ------------------------- Tools ------ o Support new --sol-payload-instance and --deactivate-all-instances options in ipmiconsole. o Fix ipmiseld compile issue with -Werror=format-security. Libraries --------- o In libipmiconsole, add new ipmiconsole_ctx_set_config() and ipmiconsole_ctx_get_config() functions. o In libipmiconsole, add support for specifying and handling different SOL payload instances. This support includes: - Support new IPMICONSOLE_CTX_CONFIG_OPTION_SOL_PAYLOAD_INSTANCE configuration option. - In libipmiconsole, support new IPMICONSOLE_BEHAVIOR_DEACTIVATE_ALL_INSTANCES behavior flag. - Return more appropriate error codes when activation limits are discovered. o In libfreeipmi, fix debug output corner case when outputting byte arrays. Misc ---- o Various documentation updates and fixes. FreeIPMI 1.2.1 - 08/22/12 ------------------------- Tools - New Features -------------------- o Support new ipmiseld daemon, a daemon that regularly polls the SEL and stores the events to the local syslog. o In ipmipower, support --oem-power-type option to support OEM specific power control operations. Included in this support were the follow changes to ipmipower: - Support initial OEM power type of C410X. - Re-architect to allow input of extra information for an OEM power operation via the '+' operator after the hostname. - Re-architect to allow input of target hostname multiple times under OEM power cases. - Re-architect to allow serialization of power control operations to the same host. o Globally in tools, support --target-channel-number and --target-slave-address to specify specific targets. o Globally in tools, support ability to specify alternate port via optional [:port] in hostname or host config. o In ipmi-fru, support --bridge-fru option to allow reading FRU entries from satellite controllers. o In bmc-config, add configuration support for Maximum_Privilege_Cipher_Suite_Id_15 under RMCPplus_Conf_Privilege. o Globally support Cipher Suite ID 15 and 16 based on comments from Intel. o In ipmi-sensors, support --output-sensor-thresholds, to allow outputting of sensor thresholds in default output for scripting. o In ipmi-sel, support new --post-clear option. o In bmc-device, support new --set-sensor-reading-and-event-status option. o In ipmi-oem, support additional Intel Node Manager commands, including: - get-node-manager-capabilities - node-manager-policy-control - get-node-manager-policy - set-node-manager-policy - remove-node-manager-policy - get-node-manager-alert-thresholds - set-node-manager-alert-thresholds - get-node-manager-policy-suspend-periods - set-node-manager-policy-suspend-periods - set-node-manager-power-draw-range o In ipmi-oem, support Wistron OEM commands extensions. o In ipmi-sel, support Wistron OEM SEL interpretations. o In ipmi-fru, support Wistron OEM FRU records. o In ipmi-pef-config, support configuration volatile Alert String 0 and Lan Alert Destination 0. Tools - Bug Fixes/Minor Changes ------------------------------- o In ipmi-fru, if builtin FRU device (ID 0) has SDR entry, output SDR entry name rather than fixed string. o In ipmipower, exit with value 1 on IPMI errors in addition to system errors. o In ipmidetect, exit with exit value 2 when an error occurs. Exit value of 0 or 1 are reserved for scripting. o In bmc-watchdog, properly support assumeio and spinpoll workarounds. o In bmc-watchdog and ipmidetectd daemon, support handling of SIGQUIT signal in addition to SIGTERM and SIGINT, properly umask generated pidfile, and delete pidfile when necessary. o In bmc-watchdog, log all errors to syslog instead of unique file. o In bmc-watchdog, remove --logfile option. o In bmc-watchdog, support --verbose-logging option for increased logging. o In ipmidetectd daemon, create/handle pidfile. o In ipmidetectd daemon and ipmidetect, update command line parsing to use argp instead of getopt. This change leads to some changes for consistency with the rest of FreeIPMI, but changes some command line options. - -v is no longer supported, -V outputs version information - -h is no longer supported, -? outputs help o In ipmi-raw, make --channel-number and --slave-address legacy options. They are now overriden by --target-channel-number and --target-slave-address. o Re-work entity sensor names calculation to more properly meet IPMI specification. Users may see slight changes in the output of sensor names when using the --entity-sensor-names option or similar output in ipmi-sensors, ipmi-sel, ipmi-pet, or ipmi-oem. o Re-work shared sensors name output to more properly meet IPMI specification. Users may see slight changes in the output of sensor names when using the --shared-sensors option or similar output in ipmi-sensors, ipmi-sel, or ipmi-pet. o In ipmi-fru, deprecate --skip-checks option in favor of "skipchecks" workaround flag. o Support "assumemaxsdrrecordcount" workaround in all tools that use SDR. o Support "noauthcodecheck" workaround in all tools that use IPMI 1.5. o Support workaround to load SDR properly on systems which return invalid lengthed SDR records. Noticed on Xyratex HB-F8-SRAY. o Support workaround handling of IPMIPOWER_MSG_TYPE_PRIVILEGE_LEVEL_CANNOT_BE_OBTAINED completion code when returned from activate session command. Noticed on Xyratex HB-F8-SRAY. Libraries --------- o In libfreeipmi, create new 'sdr' sub-library which is merger of the earlier 'sdr-cache' and 'sdr-parse' libraries. - This results in an ABI change. Generally speaking, all "ipmi_sdr_cache" and "ipmi_sdr_parse" functions, types, and macros are changed to "ipmi_sdr", although some minor exceptions exist. - For example: ipmi_sdr_cache_ctx_t -> ipmi_sdr_ctx_t ipmi_sdr_parse_ctx_t -> ipmi_sdr_ctx_t ipmi_sdr_cache_ctx_create() -> ipmi_sdr_ctx_create() ipmi_sdr_parse_ctx_destroy() -> ipmi_sdr_ctx_destroy() IPMI_SDR_CACHE_ERR_PERMISSION -> IPMI_SDR_ERR_PERMISSION IPMI_SDR_PARSE_ERR_PARAMETERS -> IPMI_SDR_ERR_PARAMETERS - Please see the new ipmi-sdr.h header file for full changes. o In libfreeipmi, create new 'sel' sub-library which replaces the 'sel-parse' library. - This results in an ABI change. Generally speaking, all ipmi_sel_parse" functions, types, and macros are changed to "ipmi_sel", although some minor exceptions exist. - For example: ipmi_sel_parse_ctx_t -> ipmi_sel_ctx_t ipmi_sel_parse_ctx_destroy() -> ipmi_sel_ctx_destroy() IPMI_SEL_PARSE_ERR_PARAMETERS -> IPMI_SEL_ERR_PARAMETERS - Please see the new ipmi-sel.h header file for full changes. o In libfreeipmi, create new 'fru' sub-library which replaces the 'fru-parse' library. - This results in an ABI change. Generally speaking, all ipmi_fru_parse" functions, types, and macros are changed to "ipmi_fru", although some minor exceptions exist. - For example: ipmi_fru_parse_ctx_t -> ipmi_fru_ctx_t ipmi_fru_parse_ctx_destroy() -> ipmi_fru_ctx_destroy() IPMI_FRU_PARSE_ERR_PARAMETERS -> IPMI_FRU_ERR_PARAMETERS - Please see the new ipmi-fru.h header file for full changes. o In libfreeipmi, support Cipher Suite 15 and 16 implementation based on comments from Intel. o In libfreeipmi, add Cipher Suite 18 and 19 information, but do not support. o In libfreeipmi, support SEL string output format '%E' for combined event data1, data2, and data3 output. o In libfreeipmi, support SEL string output format '%I' for interpretation event output. o In libfreeipmi, fix bug in SEL string output in which both sensor name and severity used '%s'. Severity now uses '%S'. o In libfreeipmi, support ability to config interpret config file and sel library and receive appropriate error. o In libfreeipmi, support reservation-id registration and clearing in the sel sub-library. o In libfreeipmi, sel sub-library now supports a "no sel entries loaded" error. o In libfreeipmi, condense sel record parsing functions. One set of functions now handles the previous case of both sets. o In libfreeipmi, fru sub-library now supports ipmi_fru_parse_read_multirecord_record_type_id function. o In libfreeipmi, support additional sensor/SEL interpretations, including: - OS Boot - OS Critical State State - Platform Alert State - Boot Error State - System Event Transition State o In libfreeipmi, add missing macro definitions. o In libipmimonitoring, support Cipher Suite ID 15, 16, and 17. o In libfreeipmi, libipmiconsole, libipmimonitoring, support ability to specify alternate port via optional [:port] in hostname. o In libfreeipmi, add additional IPMI commands/payloads. o In libfreeipmi, fix several macro names which did not meet standardization needs. o In libfreeipmi, support new IPMI_ERR_DRIVER_BUSY error code. o In libfreeipmi sdr, support more complete parsing of Management Controller Locator Records. o In libfreeipmi, KCS driver now sleeps a small amount between IPMB retries to avoid spinning. o In libfreeipmi and libipmimonitoring, do not export functions that shouldn't be. o In libfreeipmi, support stats functions and new utility functions in sdr sub-library. o In libfreeipmi, sel sub-library now supports the output of entity sensor names. o In libfreeipmi, fru sub library now supports new function to determine multirecord type. o In libfreeipmi, fix argument size bugs with Intel Node Manager functions. o In libipmimonitoring, support entity sensor name output options. Misc ---- o Add diagnostic/exit-value information to most manpages. FreeIPMI 1.1.7 - 07/30/12 ------------------------- o In ipmi-sensors and ipmi-sel, fix units output corner case. o In bmc-info, detect unsupported system info corner case. o Update documentation with motherboard support. FreeIPMI 1.1.6 - 06/28/12 ------------------------- Tools ------ o In ipmi-sel, support Supermicro SEL OEM interpretations in --output-event-state. o In ipmi-sel and ipmi-sensors, support additional sensor/SEL interpretations including: - Version Change - System Firmware Progress Transition Severity - Button/Switch Transition Severity - Chassis Transition Severity - POST Memory Resize State - Cable/Interconnect Transition Severity - Boot Error Transition Severity - Slot Connector Transition Severity - Memory State - Memory Transition Severity o In bmc-config, ipmi-chassis-config, ipmi-pef-config, and ipmi-chassis-config, support cipher suite ID argument. o Support Supermicro X9DRi-F OEM sensors and events. o Fix Intel S2600JF/Appro 512x OEM SEL interpretations based on comments from Intel. Libraries --------- o Support Supermicro SEL OEM interpretations. o Support new sensor/SEL interpretations. Misc ---- o Various documentation updates and fixes. FreeIPMI 1.1.5 - 05/17/12 ------------------------- Tools ------ o Support Supermicro OEM sensors/SEL on H8DGU-F motherboards. o In ipmiconsole, fix password length check bug. o In bmc-watchdog, fix --start-if-stopped and --reset-if-running options. o In ipmidetectd, fix usage output typos. o In ipmi-sensors-config, fix several parallel output corner cases. o For consistency to other tools, turn on quiet-caching if communicating with multiple hosts in bmc-device and ipmi-oem. o In ipmi-sensors, fix bug in which multiple workarounds could not be used or used in combination with bridging. o Fix start run levels in ipmidetectd init script. Libraries --------- o In libfreeipmi fru-parse API, handle additional device busy errors. Misc ---- o Various documentation updates. FreeIPMI 1.1.4 - 04/19/12 ------------------------- Tools ------ o In ipmi-oem, fix error message output in several Supermicro OEM commands. o In ipmi-oem, add Intel --get-power-restore-delay and --set-power-restore-delay support. o In ipmi-sel, support Intel S2600JF/Appro 512x OEM SEL interpretations. Libraries ---------- o In libfreeipmi, support new sensor and SEL event interpretations, including Session Audit, Voltage Limits. o In libfreeipmi, support new OEM interpretations for Intel S5000PAL NMI State and SMI timeout sensors/SEL events. o In libfreeipmi, support Intel S2600JF/Appro 512x OEM SEL interpretations. Misc ---- o Various documentation updates. FreeIPMI 1.1.3 - 03/06/12 ------------------------- Tools ------ o Support Supermicro CPU temperature SEL events. o In ipmi-oem, fix corner case with Dell C410x power control calculation. o In all tools, fix error messages to differentiate between invalid and unsupported cipher suite IDs. o In bmc-config, fix a Cipher Suite Privilege configuration corner case in the workaround for an HP DL145 workaround. o In bmc-config, add workaround for Cipher Suite Privilege configuration on Intel S2600JF/Appro 512X. o Various documentation updates. Libraries ---------- o In libfreeipmi, fix incorrect packet layout for the Get Lan Configuration Parameters RMCPplus Messaging Cipher Suite Entry Support response. o In libipmimonitoring, properly return connection timeout error on connection timeout. Misc ---- o Fix build when using --docdir. o Various documentation updates. FreeIPMI 1.1.2 - 02/06/12 ------------------------- Tools ------ o In ipmi-oem, support new Dell C410x OEM extensions slot-power-toggle, slot-power-control, get-port-map, set-port-map. o Fix daemon setup race condition in ipmidetectd and bmc-watchdog that can affect systemd. o In ipmiconsole, support new --serial-keepalive-empty option. o In bmc-device, support new --rearm-sensor option. o In ipmi-oem, add additional Dell get-system-info options - slot-number - system-revision - embedded-video-status - idrac-info - idrac-ipv4-url - idrac-gui-webserver-control - cmc-ipv4-url, - cmc-ipv6-info - cmc-ipv6-url o In ipmi-oem, support Dell 12G mac addresses under get-system-info. o In ipmi-sensors, some sensors that reported "Unknown" may now report "N/A" due to an interpretation change of several IPMI error codes. o In ipmi-sensors, workaround sensor reading issue on Sun Blade x6250 and Sun Blade 6000M2. o Fix several freeipmi.conf config file parsing bugs. Libraries ---------- o In libipmiconsole, fix serial keepalive timeout calculation bug that can lead to excessive packets retransmitted. o In libipmiconsole, support new SERIAL_KEEPALIVE_EMPTY engine flag. o In libipmiconsole, do not deactivate a SOL payload if it appears the SOL payload has been stolen, but we did not receive a SOL deactivating flag. o In libipmiconsole, fix corner case in which session not closed cleanly when DEACTIVATE_ONLY flag specified. o In libipmiconsole, workaround bug in Dell Poweredge M605, M610, and M915 where instance count of SOL is always returned as 0. o In libfreeipmi, add functions for re-arm sensor events IPMI payload. o In libfreeipmi/sensor-read, under some error conditions return error of "unavailable" instead of "cannot be obtained" error code. o In libfreeipmi/sensor-read, add workarounds to handle issues on Sun Blade x6250 and Sun Blade 6000M2. Misc ---- o Various documentation updates. o Redo formattig of include/freeipmi/templates/ documents. FreeIPMI 1.1.1 - 01/03/12 ------------------------- Tools ----- o Support new tool ipmi-pet, tool to parse/interpret platform event traps. o Support new --sdr-cache-file option specify specific SDR cache file in all SDR related tools (ipmi-sensors, ipmi-sel, ipmi-fru, etc.). o In ipmi-fru, do not consider a busy device a fatal error. o In ipmi-sensors, support 'ignoreauthcode' workaround option. o In ipmi-sensors, support Quanta QSSC-S4R/Appro GB812X-CN OEM SDRs and sensors. o In ipmi-sel, support Quanta QSSC-S4R/Appro GB812X-CN OEM SEL events. o In ipmi-sel, fix several OEM specific event output bugs. o In ipmi-pef-config, fix configuration bug for Enable_PEF_Event_Messages. o In ipmi-raw, for file/stdin input, output line number when there is an error. Libraries --------- o Update libfreeipmi for DCMI 1.5 additions. o Update libfreeipmi fru-parse sub-library to support FRU parsing without an IPMI connection. o In libfreeipmi, support IPMI_FLAGS_NOSESSION flag to open a context for IPMI communication w/o establishing a session. o In libfreeipmi, support IPMI_FLAGS_NO_LEGAL_CHECK flag, to workaround motherboards to may return illegal IPMI packets. o In libfreeipmi, support IPMI_FLAGS_IGNORE_AUTHENTICATION_CODE flag, to workaround specific situations where motherboards return incorrectly generated authentication codes. o In libfreeipmi fru-parse sub-library, support IPMI_FRU_PARSE_ERR_DEVICE_BUSY error code. o In libfreeipmi, add support for IPMI firmware firewall and command discovery payloads. o In libfreeipmi, support Quanta QSSC-S4R/Appro GB812X-CN OEM SEL events. o Fix various macro names (typos, invalid naming, etc.) Contributions ------------- o petalert.pl - snmptrapd handler script to alert when Platform Event Traps (PET) occur. FreeIPMI 1.0.10 - 12/13/11 -------------------------- o Clarify bmc-watchdog error messages. o Various documentation updates. FreeIPMI 1.0.9 - 11/21/11 ------------------------- o Support Supermicro OEM sensors on X9SCA-F-O motherboards. o Support Supermicro OEM sensors on X9SCM-F motherboards with newer firmware. FreeIPMI 1.0.8 - 10/27/11 ------------------------- o Fix corner case in which invalid SDR entry could be loaded when shared sensors exist on event only records. o Fix several event output corner cases. o Fix 'assumesystemevent' workaround for ipmi-sel. o Fix ipmi-raw and ipmi-oem allocation bug on newer systems, such as RHEL6. o Support Intel Node Manager sensor/SEL events for Intel S2600JF/Appro 512X. o Document workarounds for Intel S2600JF/Appro 512X. o Per definition, output GUID w/ lower case characters in bmc-info. o Other minor bug fixes. FreeIPMI 1.0.7 - 09/28/11 ------------------------- o Support many new sensor state and sel event interpretations. o Fix parsing bugs for freeipmi_interpret_sel.conf. o Support 'assumebmcowner' workaround in ipmi-sensors. o Support dynamic linking in libfreeipmi. o Output pidfile in bmc-watchdog to support easier init script killing. o Do not poll stdin in ipmipower when operating in non-interactive mode. o Support IGNORE_SCANNING_DISABLED workaround in libipmimonitoring. o Support Supermicro OEM sensors on X7DB8, X8DTN, X7SBI-LN4, X8DTL, X8DTN+-F, and X8SIE motherboards. o Fix handling error codes in optional parts of ipmi-dcmi. o Fix various debug dumping bugs. o Fix ipmimonitoring script install bug on some systems. o Fix symbol global vs. locals in libipmimonitoring. o Minor documentation and manpage updates. FreeIPMI 1.0.6 - 09/01/11 ------------------------- o Support 'ignorescanningdisabled' workaround in ipmi-sensors. o Support Supermicro X8SIL-F, X9SCL, and X9SCM motherboard OEM sensors. o Update bmc-watchdog logrotate script to reduce unnecessary output. o Fix ipmi-fru output typo. FreeIPMI 1.0.5 - 06/30/11 ------------------------- o Fix various issues in ipmi-dcmi, including command line parsing bugs, asset tag/string identifier overwriting, and fix assumptions based on new information in v1.5 errata. o Support pkg-config files for libraries. o Various documentation updates. FreeIPMI 1.0.4 - 04/21/11 ------------------------- o Support "discretereading" workaround in ipmi-sensors and associated libraries. o Support "spinpoll" workaround/performance optimization in tools and libraries. o Support additional sensor/SEL interpretations for Intel motherboards. o Add convenience input checking functions to libipmiconsole. o Fix bug in libipmimonitoring to allow additional OEM interpretations. FreeIPMI 1.0.3 - 03/29/11 ------------------------- o Support additional error handling in bmc-info. o Support ability to set "none" workaround flags on the command line and in tools. o In libipmiconsole, force ipmiconsole_engine_init() to be called before ipmiconsole_ctx_create(). o Fix libipmiconsole callback semantics. o Fix libipmiconsole bugs in overriding standard defaults vs. config file defaults. o Fix potential race in libipmiconsole during engine teardown. o Add package version macros to libfreeipmi. o Add library version macros to all libraries. o Fix Solaris build bug. o Fix config output bug in ipmipower. FreeIPMI 1.0.2 - 02/22/11 ------------------------- o Support --ignore-unrecognized-events in ipmi-sensors. o Clarify error messages in ipmi-locate. o Support Supermicro X7DBR-3, X8DTL-3F, X8DT3-LN4F motherboard OEM sensors. o Support Dell Module/Board OEM sensor interpretation on Poweredge R210 motherboards. o In bmc-info, support motherboards that don't implement Get Device Guid. o In bmc-watchdog, fix error logging corner case. o Support new -r option in ganglia_ipmi_sensors.pl plugin to modify ipmi hostname. o Add workaround for SDR caching compliance bug in HP Proliant DL585G7. o In bmc-config, add workaround for motherboards that do not allow you to configure identical usernames. o Various documentation updates. FreeIPMI 1.0.1 - 01/20/11 ------------------------- Major Changes, Additions, and Features -------------------------------------- o Remove ipmimonitoring tool. Tool is now superseded by ipmi-sensors and the new --output-sensor-state option. o Support --output-event-state option for ipmi-sel to support SEL event interpretation. o All config-tools now support multi-channel configuration under verbose mode. o Re-architect libipmimonitoring to support all defined IPMI sensor types, OEM bitmasks, and OEM interpretations. o Add SEL monitoring support to libipmimonitoring. o Support new 'interpret' sub-library in libfreeipmi. o Support interpretation rules for sensors when no states/events occur. o Support interpretation rules for out of spec sensor states/events. o Support interpretation rules for OEM sensors and events. o Move all config files to /etc/freeipmi/. Support legacy config files for backwards compatibility. o Support serial keepalive in ipmiconsole to check if serial connection has remained alive across system reboots. o Create symlinks and manpage pointers for 'ipmi-power', 'ipmi-ping', 'rmcp-ping', 'ipmi-console', and 'ipmi-detect' to give some additional consistency to the tool naming. o Various documentation updates. o Update to support DCMI 1.1. o Update all licensing information to GPLv3. Tools - Detailed Enhancements/Changes/Fixes ------------------------------------------- o ipmi-sensors - Support --output-sensor-state option. - Support --sensor-state-config-file option. - Support --output-event-bitmask option. - Support Intel Node Manager sensors. - Some sensor states may now report 'N/A' if an invalid sensor event occurred. - Report 'N/A' instead of 'Unknown' is requested sensor does not exist on motherboard. - Support number input for --sensor-types and --exclude-sensor-types. - The "Unrecognized State" event string is now output as "Unrecognized Event = X" or "OEM Event = X" where X is the event bitmask. o ipmi-sel - Support --output-event-state option. - Support --event-state-config-file option. - Support --sensor-types option. - Support --exclude-sensor-types option. - Support --output-manufacturer-id option. - Support --date-range option. - Support --exclude-date-range option. - Alter OEM record output to align with columns by outputting "N/A" in appropriate fields and putting manufacturer ID in event output. o ipmi-dcmi - Support --set-asset-tag option. - Support --get-management-controller-identifier-string option. - Support --set-management-controller-identifier-string option. o ipmiconsole - Support --serial-keepalive option. - Rework 'intel20' workaround to not allow a non two-part authentication. o ipmipower - Rework 'intel20' workaround to not allow a non two-part authentication. o bmc-config - Support --lan-channel-number. - Support --serial-channel-number. - Support --sol-channel-number. - Support 'solchannelassumelanchannel' workaround. - Support IPv4 header parameter configuration under verbose mode. - Support RMCP port configuration under verbose mode. - Move Vlan configuration to output only on verbose. - Show verbose-only sections in --list. - Do not output section comments if key-pair specified on command line. - Allow checkout of sections/key-pairs if specified on command line, even if not available by default. - Support very-verbose output by specifying -vv. Move some output from verbose output to very verbose output. o ipmi-pef-config - Support --lan-channel-number. - Do not output section comments if key-pair specified on command line. - Allow checkout of sections/key-pairs if specified on command line, even if not available by default. - Support very-verbose output by specifying -vv. Move some output from verbose output to very verbose output. o ipmi-sensors-config - Do not output section comments if key-pair specified on command line. - Allow checkout of sections/key-pairs if specified on command line, even if not available by default. - Support very-verbose output by specifying -vv. Move some output from verbose output to very verbose output. o ipmi-chassis-config - Do not output section comments if key-pair specified on command line. - Allow checkout of sections/key-pairs if specified on command line, even if not available by default. - Support very-verbose output by specifying -vv. Move some output from verbose output to very verbose output. o ipmi-oem - Support Intel get/set-smtp-config. - Support basic Intel Node Manager OEM commands. o ipmimonitoring - Removed tool. Tool is now superseded by ipmi-sensors and the new --output-sensor-state option. - Legacy output support maintained via --ipmimonitoring-legacy-output option. o ipmi-locate - Do not output system defaults by default. - Support --defaults option. Libraries - Detailed Enhancements/Changes/Fixes ----------------------------------------------- o libfreeipmi - Support new 'interpret' sub-library. - Support new 'payload' sub-library and templates. Split off SOL Payload templates, functions, etc. into this section. - Support new 'oem' sub-library and templates. - Support OEM Intel Node Manager extensions. - 'sel-parse' library now does not require valid ipmi_ctx. Functions performing ipmi communication will simply error. - Rework 'intel20' workaround to not allow a non two-part authentication. - Add DCMI 1.1 support. - Split workaround flags for inband, IPMI 1.5, and IPMI 2.0 to save bits. - Improve SDR caching speed for many modern motherboards. - Support more IPMI templates. - Fix some API differences from spec. - Fix some template bugs/typos. - Rename number of macros for consistency to IPMI spec. o libipmimonitoring - Add SEL monitoring support to libipmimonitoring. - Re-architect to support all defined IPMI sensor types. - Re-architect to use 'interpret' sub-library. - Rename a number of functions to differentiate sensor vs. SEL functions. - Support percent (i.e. '%') units. - Support OEM bitmasks and bitmask strings. - Add bitmask type IPMI_MONITORING_SENSOR_BITMASK_TYPE_OEM. - Add ipmi_monitoring_read_sensor_bitmask_string(). - Remove ipmi_monitoring_sensor_bitmask_string(). - Through libfreeipmi 'interpret' sub-library, support OEM sensor interpretations. Initial OEM interpretations include: - Dell Poweredge R610/R710 - Supermicro X8DTH - Support IPMI_MONITORING_ERR_SENSOR_CONFIG_FILE_DOES_NOT_EXIST error code. - Remove unused IPMI_MONITORING_ERR_CONFIG_FILE_PARSE error code. - Split workaround flags for inband, IPMI 1.5, and IPMI 2.0 to save bits. o libipmiconsole - Support serial keepalive to check for loss of serial connection. - Support libipmiconsole.conf defaults file. - Support default thread_count of 4 if zero input for thread_count. Contributions ------------- o ganglia_ipmi_sensors.pl - Updated for new output format and options. - Support ability to monitor sensor state. - Support -T and -t options to allow option to monitor only sensor state or sensor readings. o ganglia_ipmimonitoring.pl - Removed. Superseded by ganglia_ipmi_sensors.pl. o nagios_ipmi_sensors.pl - New tool to replace nagios_ipmimonitoring.pl. o nagios_ipmimonitoring.pl - Removed. Superseded by nagios_ipmi_sensors.pl. FreeIPMI 0.8.12 - 10/28/10 -------------------------- o In bmc-config, workaround RMCP+ Privilege Level configuration bugs on HP DL145 servers. o Fix N/A output corner case in ipmi-sel. o Support Supermicro X8DTU-6+ motherboard OEM sensors. FreeIPMI 0.8.11 - 10/28/10 -------------------------- o Support Fujitsu iRMC S1 and iRMC S2 OEM extensions in ipmi-sensors and ipmi-sel. o Support --output-oem-event-string in ipmi-sel. o Other minor documentation/bug fixes. FreeIPMI 0.8.10 - 09/28/10 -------------------------- o Support many new Inventec OEM extensions in ipmi-oem. o Support many new Quanta OEM extensions in ipmi-oem. o Support many new Intel OEM extensions in ipmi-oem. o Support Intel s5500WB OEM extensions in ipmi-sel. o Support Intel Node Manager SEL events across Quanta S99Q, Inventec 5441, Inventec 5442, and Intel S5500WB motherboards. o Move some OEM extensions from Dell section to Inventec section in ipmi-oem. Were previously thought to be additions by Dell, but in fact are not. Backwards compatability supported. o Support 'assumeio' inband workaround globally. o Gracefully handle some errors in ipmi-sensors. o Fix in-band probing corner case. o Fix various parameter input checks in ipmi-oem. o Fix help output corner cases in ipmi-oem. o Other minor documentation/bug fixes. FreeIPMI 0.8.9 - 08/20/10 ------------------------- o In ipmi-sel and ipmimonitoring, workaround Supermicro H8QME SEL compliance issues in ipmi-sel. o In ipmi-sel, do not report error if SEL is empty. o Support Fujitsu 'get-sel-entry-long-text' in ipmi-oem. o Fix workaround flags bug in ipmimonitoring. o Revert 'Open Session Privilege Workaround' changes in 0.8.8, were unnecessary. o Fix daylight savings bug when configuring BMC times in bmc-device. o Support 'veryslowcommit' workaround for config tools to work around very slow BMCs. o Support --enable-rawdumps compile option. o Support SHA256 in IPMI 2.0. o Other minor bug fixes. FreeIPMI 0.8.8 - 07/20/10 ------------------------- o Support Supermicro 'get-bmc-services-status' and 'set-bmc-services-status' in ipmi-oem. o Support bmc-watchdog 'ignorestateflag' workaround around more issues. o Support Open Session Privilege Workaround around more related compliance issues. o Fix bmc-watchdog --version option. o Fix legacy workaround corner case in channel detection for Intel nodes. o Support Quanta reset-to-defaults command in ipmi-oem. o Modify ipmiconsole protocol to not deactivate SOL protocol is SOL is already deactivated. o Modify ipmiconsole protocol to not error out under several malformed packet scenarios. o Fix ipmiping/rmcpping command line parsing corner case. o Minor documentation updates. o Minor error message output fixes. o Support --without-random-device configure option for some embedded systems. FreeIPMI 0.8.7 - 06/17/10 ------------------------- o Support Supermicro X8DTG OEM sensors. o Support Supermicro X8DTG workarounds with 'integritycheckvalue' workaround flag. o Document workarounds for Intel S5500WBV/Penguin Relion 700 motherboard. o Map IPMI 2.0 "invalid role" error code to "privilege level cannot be obtained" for better usability. o Fix bmc-config Security Keys commit by making some required fields optional. o Fix bmc-watchdog init script return codes on Suse. o Support 'ignorestateflag' workaround in bmc-watchdog. o Fix ipmi-sensors corner case for sensors with percentage units. o Support 'slowcommit' workaround for config tools to work around slower BMCs. o Update documentation w/ Supermicro X8DTG issues. o Update documentation w/ inband troubleshooting. FreeIPMI 0.8.6 - 05/24/10 ------------------------- o Support Quanta S99Q/Dell FS12-TY OEM SEL events. o In ipmi-oem, support Quanta S99Q/Dell FS12-TY OEM commands. o Fix --key-pair parsing bug in all config tools. o Locally support sunbmc driver if bmc_intf.h header not found. o If Sunbmc driver is not supported, report "Device Not Supported" instead of "Internal Error". o Fix error output messages. o Fix Solaris install issue. o Other minor fixes. FreeIPMI 0.8.5 - 04/29/10 ------------------------- o Support Inventec 5442/Dell Xanadu III OEM events. o Workaround Quanta S99Q/Dell FS12-TY Node Busy errors. o Fix some library error checks limiting bmc-config Bad Password Threshold configuration. o Fix some library macro names based on actual OEM names. o Fix documentation typos. FreeIPMI 0.8.4 - 03/05/10 ------------------------- o Fix IPMI 2.0 sequence number wrap around corner case. o Fix ipmi-sensors --comma-separated-output corner case. o In ipmi-sensors, output multiple event strings w/ space delimiter in simple output. o In ipmi-oem, support Dell get-active-lom-status. o In ipmi-oem, support IBM get-led. o In ipmi-sel, fix possible --assume-system-event-records corner case. o Fix Posix portability issue w/ time functions. o Minor documentation updates. FreeIPMI 0.8.3 - 02/02/10 ------------------------- o Support Sun Microsystems OEM SEL events. o Fix Solaris 64 bit portability bugs. o In ipmi-oem, fix some Dell options and output given Dell docs (backwards compatability maintained on options). - Rename 'get-power-headroom-info' to 'get-power-head-room'. o Minor bug fixes. o Minor documentation updates. o Minor documentation fixes. FreeIPMI 0.8.2 - 01/05/10 ------------------------- o Add fixes to deal with OSes that will report ECONNRESET or ECONNREFUSED on failed UDP sends. o In ipmi-sensors, fix output corner case w/ device types and modifiers. o In ipmi-sel, tweak column size to fix output for common scenario. o In ipmi-sel, fix output corner case when --ignore-sdr-cache is specified. o In ipmi-dcmi, handle interpretation issue on --set-power-limit. o In ipmi-dcmi, fix various output bugs. o In ipmi-dcmi, add more detailed error messages. o In ipmi-dcmi, fix command line parsing of --activate-deactivate-power-limit. o Support --interpret-oem-data option in ipmi-dcmi. o In ipmi-oem, fix various Fujitsu ambiguities from the official documentation. o In ipmi-oem, fix various Dell options and output given Dell docs (backwards compatability maintained on options). - Rename 'product-name' to 'platform-model-name' for Dell get-system-info. - Dell get-power-info is now get-power-consumption-data - Dell reset-power-info is now reset-power-consumption-data - Dell get-power-supply-info is now power-supply-info - Include additional output in Dell power-supply-info. - Dell get-instantaneous-power-consumption-info is now get-instantaneous-power-consumption-data. - Support instance number for get-instantaneous-power-consumption-data. - Dell get-average-power-history and get-peak-power-history collapsed into get-power-consumption-statistics. - Support 'min' option for Dell get-power-consumption-statistics. o In ipmi-oem, support additional OEM commands - Dell get-chassis-identify-status - Dell get-system-info 'guid', 'chassis-service-tag', 'chassis-related-service-tag', and 'board-revision' inputs. o In ipmi-sensors, output Entity ID string with "Container Entity ID" and "FRU Entity ID" if string available. o Fix --eliminate corner case when elimination of nodes leads to 0 hosts specified. o Report proper error message when underlying crypt library is incompatible. o In ipmidetectd, support quick port reuse on server setup. o Fix hostrange parsing corner case. o Fix Cygwin portability bugs. o Fix minor output corner cases on sensor units. o Fix header file typing inconsistencies. o Fix header file documentation. o Various documentation updates and fixes. FreeIPMI 0.8.1 - 12/07/09 ------------------------- Tools - High Level Description of Changes ----------------------------------------- o Support ipmi-dcmi, Data Center Management Interface (often referred to as DCM or DCMI). o Make output of ipmi-sel, ipmi-sensors, and ipmimonitoring easier to read and consistent to each other. Under default output, sensors listed in ipmi-sensors and ipmimonitoring are identical. Legacy output is supported through the --legacy-output option. o Rename pef-config to ipmi-pef-config for naming consistency. o Make output of ipmi-chassis, bmc-info, bmc-device, and info output of ipmi-sel, ipmi-sensors, and ipmi-pef-config consistent to each other. o When querying active/inactive, allowed/unallowed, true/false, etc. status fields in ipmi-chassis, bmc-info, and bmc-device, output all fields instead of only the active/allowed/true/etc. fields. o Support exclusion equivalent options (such as --exclude-sensor-types) in various tools such as ipmi-sel, ipmi-sensors, and ipmimonitoring. o Support sensor unit percentages, rates, and modifiers (e.g. "% hit", "gigabyte per minute", "pounds / cu in") in most tools. o Support non-abbreviated units (e.g. "Amps" instead of "A") in most tools. o Output IANA Manufacturer Name when appropriate in most tools. o Support Entity ID based sensor naming through the --entity-sensor-names option in many tools. o Support OEM interpreted output through the --interpret-oem-data option in many tools. o "Library-ize" much of the functionality originally only included in tools. o Re-work libipmimonitoring to return sensor events for all sensors, not just non-threshold sensors. Resulted in an API change. o Removed many short options for more consistent command line "architecture" between tools and to ensure short options are more consistent between tools. Limit short options to only the most popular options. Short options have been removed from ipmipower, ipmiconsole, bmc-watchdog, ipmi-chassis, ipmimonitoring, ipmi-sel, and ipmi-raw. See details below for specific short options removed. o Various new options and features added to most tools. o Various minor feature enhancements. o Various bug fixes. o Various documentation updates. Tools - Detailed Enhancements/Changes/Fixes ------------------------------------------- o ipmi-dcmi - A new tool to support the data center managemen interface (often referred to as DCM or DCMI). o ipmi-sel - Alter output to make fields easier to read, consistent to other tools, and more consistent to IPMI (legacy output option supported). - Use short-message event strings instead of long ones for readability. - Make output of ipmi-chassis, bmc-info, bmc-device, and info output of ipmi-sel, ipmi-sensors, and ipmi-pef-config consistent to each other. - Support --verbose option to offer verbose and very verbose SEL event information. - Support --display and --display-range options. - Support --exclude-display and --exclude-display-range options. - Support --tail option. - Support --system-event-only and --oem-event-only options. - Support --non-abbreviated-units option to output no abbreviated units (e.g. "Amps" instead of "A"). - Support --entity-sensor-names option. - Support --no-sensor-type-output option. - Support --interpret-oem-data option. - Support Inventec 5441/Dell Xanadu2 OEM SEL records. - Support Dell Poweredge R610 OEM SEL records. - Support Dell Poweredge R710 OEM SEL records. - Support --comma-separated-output option. - Support --no-header-output option. - Rename --delete-all to --clear for consistency to IPMI spec. Backwards compatability maintained. - Output manufacturer name with "Manufacturer ID" if name available. - Support sensor unit percentages, rates and modifiers (e.g. "% hit", "gigabyte per minute", "pounds / cu in"). - Output allocation information with --info if available. - Output hex code more often if translation to string not available. - Output OEM hex codes in consistent format. - Re-work to use new libfreeipmi sel-parse sub library. - Remove legacy option to dump hex output to optional filename. - Removed the following short options (long options remain). - 'c' (--delete-all) - 'd' (--delete) - 'R' (--delete-range) - 'x' (--hex-dump) - Support additional options in FreeIPMI config file. o ipmi-sensors - Alter output to make fields easier to read, consistent to other tools, and more consistent to IPMI (legacy output option supported). - Make output of ipmi-chassis, bmc-info, bmc-device, and info output of ipmi-sel, ipmi-sensors, and ipmi-pef-config consistent to each other. - For consistency to other tools, outputs of "NA" are now "N/A". - Events are now surrounded by single quotes (') instead of square brackets ([]). - Sensors that can't be read or don't exist (i.e. "N/A", "Unknown") are now *not* surrounded by single quotes (') or square brackets ([]). - Software sensors output "N/A" instead of "Unknown" now. - Globally rename "Group" to "Sensor Type" for correctness to IPMI spec. Leads to rename of --groups option to --sensor-types and --list-groups to --list-sensor-types. Backwards compatability maintained. - Support --non-abbreviated-units option to output no abbreviated units (e.g. "Amps" instead of "A"). - Rename --sensors option to --record-ids. Maintain old options for backwards compatability. - Support --exclude-record-ids option. - Support --exclude-sensor-types option. - Support "all" and "none" inputs for sensor-types and record-ids options. - Support --comma-separated-output option. - Support --no-header-output option. - Support --shared-sensors option. - Support --entity-sensor-names option. - Support --no-sensor-type-output option. - Support --interpret-oem-data option. - Support Dell Poweredge R610 OEM sensors. - Support Dell Poweredge R710 OEM sensors. - Support Supermicro X8DTH OEM sensors. - Do not output Sensor Reading for discrete sensors under verbose mode (because the result is always "N/A"). - Do not output SDR event records type under verbose output, only in very verbose output. - Support sensor unit percentages, rates and modifiers (e.g. "% hit", "gigabyte per minute", "pounds / cu in"). - Output allocation information with --sdr-info if available. - Output Entity ID under verbose instead of very verbose mode. - Under very verbose output, "Sensor Status" is now "Sensor Event". - Under very verbose output, if multiple sensor states are triggered, always output a prefix of "Sensor Event". - Under very verbose output, always output a prefix of "Assertion Event Enabled" or "Deassertion Event Enabled" for assertion and deassertion event listings (changed from a single "Assertion Events Enabled" or "Deassertion Events Enabled"). - Under verbose output, do not output Nominal reading, Normal Min., or Normal Max. if SDR flags do not indicate the values are specified. - Under very verbose output, output Sensor Direction. - Under very verbose output, output Tolerance. - Under very verbose output, output Resolution. - Under very verbose output, output Accuracy. - Under very verbose output, output sensor sharing information. - Under very verbose output, output entity instance type. - Under very verbose output, output OEM bytes in generic device locator records. - Output record-type names in addition to record type hex code in very-verbose output. - Output device-type names and device-modifiers in addition to hex codes in very-verbose output. - Under very verbose output, default to abbreviated units. - Output linearization in hex in verbose outputs. - Output linearization name in verbose outputs. - Output analog data format in hex in verbose outputs. - Output analog data format name in verbose outputs. - Output manufacturer name with "Manufacturer ID" if name available. - Output Entity ID string with "Entity ID" if string available. - Output hex code of sensor type in addition to type name in very-verbose output. - Re-work to use new libfreeipmi sensor-read sub library. - Support additional options in FreeIPMI config file. o ipmimonitoring - Alter output to make fields easier to read, consistent to other tools, and more consistent to IPMI (legacy output option supported). - "Monitoring Status" is now listed as "Sensor State" for consistency to libipmimonitoring library definition. - Sensor events are now output for all sensors. Sensor readings are only output appropriately for non-discrete sensors. - Rename a number of config fields for overall FreeIPMI consistency, may break backwards compatability. - Globally rename "Group" to "Sensor Type" for correctness to IPMI spec. Leads to rename of --groups option to --sensor-types and --list-groups to --list-sensor-types. Backwards compatability maintained. - With default output, output same sensors as listed in ipmi-sensors, including some sensors that can't be interpreted. - Sensors that can't be read or don't exist (i.e. "N/A", "Unknown") are now *not* surrounded by single quotes ('). - A sensor event of "NONE" is now output instead of "OK" if no sensor events are indicated. - Support --exclude-record-ids option. - Support --exclude-sensor-types option. - Support "all" and "none" inputs for sensor-types and record-ids options. - Support --ignore-non-interpretable-sensors option. - Rename --sensors option to --record-ids. Maintain old options for backwards compatability. - Remove --regenerate-sdr-cache legacy option due to conflict with newer option. - Support --non-abbreviated-units option to output no abbreviated units (e.g. "Amps" instead of "A"). - Support --comma-separated-output option. - Support --no-header-output option. - Support --entity-sensor-names option. - Support --no-sensor-type-output option. - Support --interpret-oem-data option. - Support --shared-sensors option. - Utilize libipmimonitoring callback routines to make sensors output as they are read, rather than just at the end. This removes the impression that the tool "hangs" on start. - Fix inconsistency in output, header output of "Record_ID" now "Record ID". - Support additional options in FreeIPMI config file. - Removed the following short options (long options remain). - 'c' (legacy --cache-dir) o ipmi-fru - Output hex with 'h' suffix instead of '0x' prefix for consistency to other FreeIPMI tools. - Output manufacturer name with "Manufacturer ID" if name available. - Do not output string "Info Area", the text is redundant. - Very verbose support removed. - Language codes now output under verbose mode. Language code output as string instead of hex code. - Slightly alter Base/Extended Compatibility Code Mask output for common case. - Support --interpret-oem-data option. - Various output changes under error conditions. - Re-work to use new libfreeipmi fru-parse sub library. - Check for valid device ID inputs. - Support additional options in FreeIPMI config file. o ipmipower - Removed the following short options (long options remain). - 'R' (legacy --ipmi-version) - 'j' (--pulse) - 'm' (--soft) - 'g' (--on-if-off) - 'A' (--wait-until-off) - 'G' (--wait-until-on) - 't' (legacy --session-timeout) - 'y' (legacy --retransmission-timeout) - 'q' (--retransmission--wait-timeout) - 'b' (--retransmission-backoff-count) - 'i' (--ping-interval) - 'z' (--ping-timeout) - 'v' (--ping-packet-count) - 'w' (--ping-percent) - 'x' (--ping-consec-count) o ipmiconsole - Removed the following short options (long options remain). - 'c' (legacy --cipher-suite-id, 'I' support remains) o bmc-device - Make output of ipmi-chassis, bmc-info, bmc-device, and info output of ipmi-sel, ipmi-sensors, and ipmi-pef-config consistent to each other. - Indicate hex code output consistently with 'h' suffix instead of '0x' prefix. - Support --get-bmc-global-eanbles, --set-system-firmware-version, --set-system-name, --set-primary-operating-system-name, and --set-operating-system-name. o bmc-info - When querying active/inactive, allowed/unallowed, true/false, etc. status fields output all fields instead of only the active/allowed/true/etc. fields. - Make output of ipmi-chassis, bmc-info, bmc-device, and info output of ipmi-sel, ipmi-sensors, and ipmi-pef-config consistent to each other. - Output GUID by default. - Output system info by default. - Rename --guid to --get-device-guid. Legacy option still supported. - When outputting only the GUID, don't prefix "GUID : " in the output. - Support --get-system-info. - Support --get-channel-info. - Support --get-device-id. - Support --interpret-oem-data option. Do not automatically assume OEM data is correct and output by default. - Output manufacturer name with "Manufacturer ID" if name available. o ipmi-chassis - Make output of ipmi-chassis, bmc-info, bmc-device, and info output of ipmi-sel, ipmi-sensors, and ipmi-pef-config consistent to each other. - When querying active/inactive, allowed/unallowed, true/false, etc. status fields output all fields instead of only the active/allowed/true/etc. fields. - Output some text more consistently to IPMI specification. - Rename --get-status option to --get-chassis-status. Legacy option still supported. - Rename --get-capabilities option to --get-chassis-capabilities. Legacy option still supported. - Check interval input ranges. - Removed the following short options (long options remain). - 'c' (--get-chassis-capabilities) - 's' (--get-chassis-status) - 'O' (--chassis-control) - 'i' (--chassis-identify) - 'X' (legacy --set-power-restore-policy) - 'S' (legacy --set-power-cycle-interval) - 'R' (--get-system-restart-cause) - 'H' (--get-power-on-hours-counter) - 'G' (legacy --get-boot-flags) - 'L' (legacy --set-boot-flags) o ipmi-raw - Support --channel-number and --slave-address for command bridging. - Removed the following short options (long options remain). - 'f' (--file) o bmc-config - Collapse "Password20" field into "Password" field so "Password" supports both IPMI 1.5 and IPMI 2.0 length passwords. "Password20" still supported as legacy support. - Update to include new BMC Password Threshold configuration. - Support ability to report read only field error. - Support ability to report not supported field error. - Support additional options in FreeIPMI config file. o ipmi-chassis-config - Update to include new configurable boot options in IPMI errata. - Update to include new device instance selector in IPMI errata. - Support ability to report read only field error. - Support ability to report not supported field error. - Support additional options in FreeIPMI config file. o ipmi-sensors-config - Support sensor unit percentages, rates and modifiers (e.g. "% hit", "gigabyte per minute", "pounds / cu in"). - Support ability to report read only field error. - Support ability to report not supported field error. - Support additional options in FreeIPMI config file. o ipmi-pef-config/pef-config - Rename pef-config to ipmi-pef-config for consistency to other tools. Keep backwards compatability with symlinks and such. - Make output of ipmi-chassis, bmc-info, bmc-device, and info output of ipmi-sel, ipmi-sensors, and ipmi-pef-config consistent to each other. - Support workaround for Alert Policy config on Fujitsu motherboards. - Support ability to report read only field error. - Support ability to report not supported field error. - Support additional options in FreeIPMI config file. o ipmi-oem - Support common 'list' command to all OEM IDs. - If user does not input OEM ID, list OEM IDs and Commands. - If user does not input OEM command, list OEM commands for a particular OEM ID. - Add additional Dell OEM commands. - Add additional Inventec OEM commands. - Add additional Sun OEM commands. - Rename "get/set-nic-status" as "get/set-nic-mode" to meet vendor doc naming. Backwards compatability included. o bmc-watchdog - Removed the following short options. - 'h' (legacy -?) - 'H' (legacy -?) o Make init scripts LSB compliant. o Various documentation updates. Libraries --------- o libfreeipmi - Add new fru-parse sub library. - Add new sdr-parse sub library. - Add new sel-parse sub library. - Add new sensor-read sub library. - Add dcmi support. - The locate sub library now uses a context style API for consistency to the rest of libfreeipmi. - Re-architect all 'unassemble' functions to return 1 if packet fully and correctly parsed, 0 if not, and -1 on error. - Support SDR sensor sharing in sdr-cache library. - Collapse all BAD_COMPLETION_CODE variant errors into single BAD_COMPLETION_CODE error. - New 'ipmi_ctx_find_inband' call to find an inband device. - New freeipmi/template/ files to document fiid fields for fiid templates. - New error code IPMI_ERR_NOT_FOUND in libfreeipmi API sub library supported. - Add a number of 'errormsg' functions so common code of foo_strerror(foo_errnum(ctx)) can be condensed to foo_errormsg(ctx). - Add 'ipmb' raw functions. - Various API cleanup. - Return int instead of int8_t or int32_t consistently. - Pass unsigned int instead of uint32_t for buffer lengths. - Fix function naming inconsistencies. - Fix API inconsistencies. - Appropriately indicate const pointers in parameters. - Make buffers void * instead of uint8_t * consistently. - Various fixes to maintain consistency between sub library APIs. - Add IANA Enterprise Numbers definitions. - Add Entity IDs definitions. - Remove IPMI_ERR_LIBRARY_ERROR errnum. Use IPMI_ERR_INTERNAL_ERROR errnum instead. - IPMI_*CTX_ERR* renamed to IPMI_*ERR* for consistency throughout. - The fiid sub library now includes wrapper functions for a number of fiid library functions. - Suppot FIID_FIELD_MAKES_PACKET_SUFFICIENT fiid field flags and new functions. - Support ipmi_sensor_units_string utility function to support units, percentages, rates, and units modifiers (e.g. "% hit", "gigabyte per minute", "pounds / cu in"). - Properly handle int/unsigned int potential overflow conditions. - Fix several sensor units abbreviations. - More detailed KCS and SSIF debug output with header information. - Always output debug key fields (e.g. 'raw_data' from ipmi-raw) in byte array format instead of an integer even if the field length is < 64 bits. - Update various macros, fields, etc. for IPMI errata updates. - Support 'session_handle' in close session packets (IPMI errata 387). Results in API change for all close session packet calls. - Support 'device instance locator' in chassis boot configuration. Results in API change. - Support 'change_bits' flag in Set User Access. Results in API change. - Remove duplicate sensor number checks in sdr-cache sub library, which was invalid b/c of potential duplicate generator ids. - Collapse v1.5 and v2.0 "Get Authentication Capabilities" templates, functions, etc. into one. Results in API change. - Collapse v1.5 and v2.0 "Set User Password" templates, functions, etc. into one. Results in API change. o libipmimonitoring - Support callback functions in API to monitor sensors as they are read/analyzed instead of after all sensors have been read/analyzed. - Support new function ipmi_monitoring_read_sensor_bitmask() to read bitmask of each sensor. - Add IPMI_MONITORING_SENSOR_BITMASK_TYPE_THRESHOLD bitmask type. - Remove IPMI_MONITORING_SENSOR_READING_TYPE_UNSIGNED_INTEGER16_BITMASK sensor reading type. Every sensor technically has a bitmask, but not all sensors have a sensor reading. - Rename IPMI_MONITORING_SENSOR_READING_FLAGS_IGNORE_UNREADABLE_SENSORS to IPMI_MONITORING_SENSOR_READING_FLAGS_IGNORE_NON_INTERPRETABLE_SENSORS. Legacy macro still supported. - Add IPMI_MONITORING_SENSOR_READING_FLAGS_INTERPRET_OEM_DATA flag. - Add IPMI_MONITORING_SENSOR_READING_FLAGS_SHARED_SENSORS flag. - Rename a number of macros for overall FreeIPMI consistency, may break backwards compatability. - Globally rename "Group" to "Sensor Type" for correctness to IPMI spec. - Update various macros, fields, config, etc. for IPMI errata updates. - Variety of API functions reworked or renamed for new functionality. Will require recompile and rework in existing code. Contributions ------------- o Update Ganglia and Nagios plugins for changes in ipmi-sensors and ipmimonitoring. FreeIPMI 0.7.16 - 11/30/09 -------------------------- o In ipmi-oem, add additional Fujitsu OEM support. o Fix portability to kfreebsd. FreeIPMI 0.7.15 - 11/19/09 -------------------------- o Add "solstatus" workaround to ipmiconsole. o Support hex codes to event filter sensor type inputs in pef-config. o In ipmiconsole, handle corner cases surrounding non-default SOL ports more cleanly. o In ipmi-oem, support Fujitsu OEM commands. o Document workarounds for additional motherboards. FreeIPMI 0.7.14 - 10/16/09 -------------------------- o Fix consolidated-output corner cases. FreeIPMI 0.7.13 - 09/30/09 -------------------------- o Support --platform-event in bmc-device. o Support read/clear eeprom in ipmi-oem. o Fix corner case in system firmware progress error data2 output. o Fix documentation typos. FreeIPMI 0.7.12 - 09/08/09 -------------------------- o In bmc-config, fix SOL config corner case. Assume LAN channel if SOL channel cannot be read. o In bmc-config, configure Password before Enable_User by default for security. o Add SDR reading/loading workarounds for Fujitsu RX 100 motherboards. o Add --assume-system-event-records to ipmi-sel to workaround HP DL 380 G5 motherboards. o In bmc-config, add workarounds for Dell Poweredge servers. o In ipmi-oem, support additional Dell Poweredge OEM commands. o In ipmi-oem, support additional Supermicro OEM commands. o Document workarounds necessary for newer Supermicro motherboards. o Fix several error output corner cases. FreeIPMI 0.7.11 - 07/28/09 -------------------------- o In ipmi-fru, fix FRU output corner cases. o In ipmi-oem, support Dell poweredge, Dell Xanadu2, and new Inventec OEM commands. o In ipmi-sensors and ipmimonitoring, continue reading sensors after a "request parameter not supported" error. o In libfreeipmi, support Get System Information parameters command. o Support --without-encryption build option . o Do not require execute permissions on driver devices. o Fix portability for some embedded systems. FreeIPMI 0.7.10 - 06/16/09 -------------------------- o In all tools, properly deal with workaround flags when specifying different devices than what workaround flags are intended for. o In bmc-config, fix bug setting volatile vs. non-volatile settings. o Fix in-band probing priority ordering to fix issues with machines that support multiple drivers. o In ipmi-sensors and ipmimonitoring, continue reading sensors after a "command response cannot be provided" error. o Add additional workaround handling into Sun 2.0 workaround. o In ipmimonitoring, fix sunbmc driver interface bug. o In ipmiconsole, consider IPMICONSOLE_ERR_BMC_IMPLEMENTATION a non-fatal error. o Update workaround documentation with additional motherboards. FreeIPMI 0.7.9 - 05/15/09 ------------------------- o In bmc-config, fix diff check for "Password20" field. o In ipmi-fru, fix various output typoes and output errors. - Output "Product Name" instead of "Product Product Name". - Output "FRU Chassis Type" instead of "Chassis Type". - Output "Version" instead of "Version Type". - Fix invalid DC Output and DC Load voltage outputs. mV multiplier of 10 was previously not factored in. o In ipmi-chassis, fix chassis-identify parameter parsing bug. o In ipmi-chassis, fix output corner cases. o In ipmipower, support identify-on, identify-off, identify-status in interactive mode. o In ipmipower, fix closing session corner case bug. o Update ipmi-oem manpage with extra information. o Fix bmc-device --get-mca-auxiliary-log-status bug. o Fix debug output corner case in ipmi-oem. o Fix glibc 2.8 portability bug with ipmi-raw. o Fix freeipmi.conf comment typos. FreeIPMI 0.7.8 - 04/10/09 ------------------------- o Support and document Inventec 5441 workarounds. Most notably, added "opensesspriv" workaround to tools and OPEN_SESSION_PRIVILEGE workaround to libraries. o In ipmi-fru, do not fail on invalid chassis info area type, output that type is unknown and continue to parse area. o In bmc-info, output device ID, manufacturer ID, and product ID as integers, not hex. o Fix glibc 2.8 compile bug. FreeIPMI 0.7.7 - 04/03/09 ------------------------- o Support inventec get-nic-status, set-nic-status, get-mac-address, and set-mac-address OEM commands in ipmi-oem. o Make default privilege level ADMIN for ipmi-oem. o In bmc-info, output both chars of firmware minor revision (i.e. 1.01 instead of 1.1). o Fix libfreeipmi field validity checks for sensor units. o Support "oem_reserved" group input to ipmi-sensors. o Fix Solaris porting bugs. o Fix potential config file bug by clearing out stack data appropriatly. o Support build option (--with-dont-check-for-root) to not have tools check for root for in-band IPMI communication. Permission checks are subsequently dealt with at underlying system calls and drivers. (i.e. open() on /dev/ipmi0). o Update bmc-config manpage with Dell specific workaround. o Remove "experimental" note from SUNBMC driver documentation. FreeIPMI 0.7.6 - 02/25/09 ------------------------- o In ipmimonitoring, output sensor group names consistently to other tools: "Cable Interconnect" -> "Cable/Interconnect" "Slot Connector" -> "Slot/Connector" "Module Board" -> "Module/Board" o In ipmi-sensors, don't output threshold related fields for non-threshold sensors in verbose modes. o In bmc-config, ipmi-chassis-config, ipmi-sensors, ipmi-sensors-config, ipmimonitoring, and pef-config, support --config-file option. o In ipmi-chassis-config, fix typo of "FLOOPY" to "FLOPPY". o In ipmi-sensors-config, fix event bit bug in which assertion events were configured for deassertion events. o Fix bmc-watchdog init script portability to Suse. o Update ipmi-sel manpage. FreeIPMI 0.7.5 - 01/12/09 ------------------------- o In ipmi-fru, do not output error messages for FRU entries that do not exist on a motherboard. o In ipmi-sel, fix SEL message output corner case. o In ipmi-sel, ipmi-sensors, and ipmimonitoring, check that inputted record IDs are not illegal record ID values. o In bmc-config, fix "Enable_User" checkout corner case bug. o Fix/clarify minor documentation typos/wording. FreeIPMI 0.7.4 - 12/15/08 ------------------------- o Change -I short option (for --chassis-identify) to -i in ipmi-chassis to avoid conflicting short option with -I (for --cipher-suite-id). o Support output of "" in bmc-config for fields that require a username to be configured before data may be read/written. o Support supermicro reset-intrusion OEM ID and command in ipmi-oem. o Support --list option in ipmi-oem. o Output checksum errors by default in ipmi-fru. o Fix ipmipower/ipmiconsole corner case bugs for IPMI 2.0 with certain cipher suite IDs. o Fix bmc-config Enable_User workaround bug. o Fix Intel IPMI 2.0 workarounds in all tools/libraries. o Fix state machine cycle corner case in ipmiconsole/libipmiconsole. o Fix Suse build issue in spec file. o Fix glibc 2.8 build issues. o Fix/clarify minor documentation typos/wording. FreeIPMI 0.7.3 - 12/01/08 ------------------------- o Add workaround into ipmi-sensors and ipmi-sensors-config for motherboards that do not support the Get Sensor Thresholds command. o Output 'NA' on sensors in ipmi-sensors and ipmimonitoring that have sensor scanning disabled. In libipmimonitoring, appropriately handle sensors with sensor scanning disabled and return 'unreadable sensor'. o Add the following ipmimonitoring/libipmimonitoring interpretations. Power Unit Device Installation Fan Transition Availability Power Supply State Drive Slot State Drive Slot Predictive Failure System ACPI Power State Button Switch Button Switch State Entity Presence Device Install Processor State o Fix typos in macro names and string names for sensor types to accurately coincide with IPMI specification. May lead to slightly different inputs/outputs in ipmi-sensors and pef-config. Altered strings include: "Platform Chassis Intrusion" -> "Physical Security" "Platform Security Violation" -> "Platform Security Violation Attempt" "Post Memory Resize" -> "POST Memory Resize" "System Firmware" -> "System Firmware Progress" "Button" -> "Button/Switch" "Microcontroller" -> "Microcontroller/Coprocessor" "Cable Interconnect" -> "Cable/Interconnect" "Slot Connector" -> "Slot/Connector" "ACPI Power State" -> "System ACPI Power State" "Monitor Asic" -> "Monitor ASIC/IC" o Fix ipmi-sensors non-recoverable threshold output corner case. o Fix ipmi-sensors group selection corner cases. o Fix ipmiconsole workarounds command line parse corner case. o Fix ipmi-sel/libfreeipmi event data output corner cases. o Use a reservation ID on all SEL entry operations to workaround some manufacturer compliance issues. o Fix config option names in ipmimonitoring/libipmimonitoring. o Add forgotten bitmask flags in libipmimonitoring. o In ipmi-sensors default output, output non-recoverable or non-critical thresholds if both non-critical thresholds are not available. o Remove unused libfreeipmi workaround flags/macros. Contain tool specific workaround flags within tools. o Optionally output auxiliary information in bmc-info. o Add ipmi_monitoring_sensors.conf.5 manpage. o Various documentation updates. FreeIPMI 0.7.2 - 11/18/08 ------------------------- o Add Sensor Owner ID output to verbose and very verbose output in ipmi-sensors. Alter previous ipmi-sensors output of slave address and system software id to deal with slave address/system software ID vs. sensor owner ID semantics. o Fix ipmi-raw cmdline parsing corner case. o Fix/clarify documentation. FreeIPMI 0.7.1 - 11/07/08 ------------------------- Tools - New Significant Additions/Features ------------------------------------------ o Add new tool ipmi-chassis-config for chassis configuration, such as boot device and power restore policy configuration. o Add new tool bmc-device to support advanced BMC commands including cold reset, warm reset, setting BMC times, and more. o Support FreeIPMI configuration file for most tools (bmc-config, bmc-info, bmc-device, bmc-watchdog, ipmi-chassis, ipmi-chassis-config, ipmi-fru, ipmi-oem, ipmi-raw, ipmi-sel, ipmi-sensors, ipmi-sensors-config, ipmiconsole, ipmimonitoring, ipmipower, pef-config) to avoid typing common options on the command line. See freeipmi.conf(5) for more information. o Add hostrange support to all config tools (bmc-config, pef-config, ipmi-sensors-config, ipmi-chassis-config) to support parallel configuration on a cluster. o Support --bridge-sensors in ipmi-sensors and ipmimonitoring to access non-BMC owned sensors (experimental). o Support --sensor-config-file on ipmimonitoring to support alternate interpretation rules. o Add additional "connection timeout" error message to tools to differentiate between no IPMI communication at all vs. session timeout in the middle of a command's operations. o Support hysteresis and sensor event configuration in ipmi-sensors-config. o Support additional sensor monitoring interpretations in ipmimonitoring. o Output additional sensor information in ipmi-sensors under verbose modes, such as lun, channel and event enable information. o Support --always-prefix option in most tools for easier scripting. o Support --sdr-cache-recreate in all SDR related tools for easier scripting. o Support --guid option in bmc-info to retrieve global ID (guid). o Support "SUNBMC" in-band driver for Solaris (experimental). Please see README.sunbmc for compilation instructions. Tools - Enhancements/Changes/Bug Fixes -------------------------------------- o Global in most tools - Rename --no-probing option to --disable-auto-probe for consistency in FreeIPMI. Backwards compatability maintained. o Global in config tools (bmc-config, pef-config, ipmi-sensors-config) - More carefully check for fatal vs. non-fatal errors when performing configuration. This change may result in slight behavior differences. For example, a session-timeout may have previously been considered a non-fatal error, making the config tools continue on attempting more configuration activities. Now, it would error out on the first session-timeout indication. o ipmi-sensors - Check variety of corner cases such as whether sensor readings, hysteresis, thresholds, etc. are even available before reading them. Some sensors may output slightly different information than before. For example, suppose a power supply sensor exists for a power supply that is not installed. If the sensor is enabled on the motherboard, ipmi-sensors would likely report "OK". If the sensor is disabled on the motherboard, ipmi-sensors would now likely report "NA". Previously, "OK" would have been reported under both conditions. - Output "NA" for sensors whose slave addresses are not the BMC. - Output "Unknown" for sensors whose readings cannot be determined. - Output multiple sensor status messages on separate lines, rather than all on one line under verbose modes. - Output "Unrecognized State" if the sensor specifies a state that is unrecognized. - Busy sensors are now output with "Unknown" instead of causing errors. - When fields are not relevant, do not output as much information in verbose and very verbose mode. For example, don't output hysteresis or threshold information for power supply sensors. - Alter some output ordering for consistency to IPMI spec. - Shorten/adjust some state strings for readability under non-verbose output. For example, "Fully Redundant (formerly "Redundancy Regained")" is now just "Fully Redundant". - Change default privilege from user to operator. o ipmimonitoring - Support -v verbose option to output sensors readings that aren't readable. - Check corner case for sensor readability. May lead to slightly different output in ipmimonitoring. For example, suppose a power supply sensor exists for a power supply that is not installed. If the sensor is enabled on the motherboard, ipmimonitoring would normally report "Nominal". If the sensor is disabled on the motherboard, ipmimonitoring would normally not output a sensor state (it would output "N/A" under verbose mode). Previously, "Nominal" would have been reported under both conditions. - Consider sensors without BMC slave addresses unreadable. May result in sensors not being output like before. - Busy sensors may result in sensors not being output rather than causing errors. - Output "Unrecognized State" if the sensor specifies a state that is unrecognized. - Output multiple bitmask strings if multiple bits are set. - Output "OK", similarly to ipmi-sensors when no bitmask strings are returned from a sensor reading. - Shorten/adjust some state strings for readability. For example, "Fully Redundant (formerly "Redundancy Regained")" is now just "Fully Redundant". - Change default privilege from user to operator. o ipmipower - Removed many early experimental features from ipmipower so ipmipower is more like other tools. Removed ipmi-version, cipher-suite-id, privilege-level, and authentication-type auto discovery. Removed ability to enable/disable a number of experimental features. - Changed --config to --config-file in ipmipower for consistency to other tools. Backwards compatability maintiained. - Replace --ipmi-version option with --driver-type. Backwards compatability maintained. - Removed hostname config file option. Require users to always input atleast hostname. - Changed primary config file to /etc/freeipmi.conf. Legacy config file searched for and still supported. - Prefixed config file options with 'ipmipower' for consistency to new global FreeIPMI config file. Old options still supported. o bmc-config - Support configuration of UserN:Lan_Session_Limit and UserN:Serial_Session_Limit (where N is a user id number). - By default, do not output unsupported authentication type enables when checking out the Lan_Conf_Auth section. Output unsupported authentication type enables under verbose output. - By default, do not output serial configuration parameters on checkout. Output serial configuration under verbose output. - Remove checkout of "Misc" section and "Power_Restore_Policy" field, which is now handled by ipmi-chassis-config. Backwards compatability commit and diff maintained. - Remove case sensitivity when checking a number of fields. o ipmi-chassis - Alter ipmi-chassis output to print "unknown" when field is not known. - Alter some ipmi-chassis output text to be more consistent to IPMI spec. - Hide configuration options now supported in ipmi-chassis-config. o ipmi-fru - Output FRU device names along with IDs in ipmi-fru. - Reduce excessive newline outputs in ipmi-fru. - Output more information by default. Change the output of verbose vs. very verbose output. o ipmi-sel - Change default privilege from user to operator. - Search of SDR records by sensor number and sensor owner id. - Support SEL Event Record debug dumping. o ipmiconsole - Support --session-timeout and --retransmission-timeout options. - Removed -C short option for consistency to other tools. - Removed hostname config file option. Require users to always input atleast hostname. - Changed primary config file to /etc/freeipmi.conf. Legacy config file searched for and still supported. - Prefixed config file options with 'ipmiconsole' for consistency to new global FreeIPMI config file. Old options still supported. o bmc-watchdog - Remove legacy 'v' option for version. Libraries --------- o libfreeipmi - Add additional IPMI commands. - Support new "connection timeout" error message. - Support new "command invalid for selected interface" error message. - Support ipmb bridging in KCS, OPENIPMI, LAN, and LAN_2_0 interfaces. - Check for additional corner cases in fiid API. - Support SUNBMC driver. o libipmimonitoring - Support new "connection timeout" error message. - Handle variety of corner case situations better, such as dealing with sensor readings that are unavailable. - Provide more information to user on unreadable/uninterpretable sensor readings. - Support SUNBMC driver. - Provide new IPMI_MONITORING_SENSOR_READING_FLAGS_BRIDGE_SENSORS flag. - Support several new sensor interpretation rules. - Return short message strings in ipmi_monitoring_bitmask_string(). o Various naming consistency fixes to IPMI specification. o Various minor bug fixes. Contributions ------------- o Ganglia plugin scripts ganglia_ipmimonitoring.pl and ganglia_ipmi_sensors.pl. o Nagios plugin script nagios_ipmimonitoring.pl. FreeIPMI 0.6.10 - 10/13/08 -------------------------- o Fix ipmi-fru FRU parsing corner case. FreeIPMI 0.6.9 - 09/26/08 ------------------------- o Handle ipmiconsole/libipmiconsole non-default port corner cases. o Fix --debug portability. o Document new workarounds. FreeIPMI 0.6.8 - 09/22/08 ------------------------- o Handle "invalid parameters" error codes in ipmi-sensors and ipmimonitoring/libipmimonitoring to work around some motherboards. o Fix bug in ipmimonitoring sensors configuration file parsing. o Fix corner case in libipmimonitoring sdr-cache filename creation. o Fix config tool exit code corner case. FreeIPMI 0.6.7 - 09/11/08 ------------------------- o Handle "illegal sensor" error code in ipmi-sensors and ipmimonitoring/libipmimonitoring. FreeIPMI 0.6.6 - 08/26/08 ------------------------- o Output NA/Unknown for non-BMC owned sensors in ipmi-sensors. o Do not output readings for non-BMC owned sensors in ipmimonitoring. o libfreeipmi/ipmi-chassis fix invalid console redirection input check. FreeIPMI 0.6.5 - 08/02/08 ------------------------- o Fix ipmimonitoring group assignment bug. o Fix several invalid error outputs. o Fix several minor bugs. o Minor documentation cleanup. FreeIPMI 0.6.4 - 06/04/08 ------------------------- o Do not exit ipmi-sensors or ipmimonitoring for sensors that return "sensor data not present" errors. Output "NA", "Unknown", skip sensor output, etc. as needed. o Fix bug in ipmi-sensors and ipmimonitoring when dealing with optional sensor state assertions after a sensor read. o Fix bug in ipmi-sensors and ipmimonitoring when dealing with reserved fields in sensor state assertions after a sensor read. o Add workaround in ipmi-sensors and ipmimonitoring when dealing with sensors that improperly report sensor assertions after a sensor read (i.e. no assertions set when required, or invalid assertions set). o Fix minor corner cases. o Fix manpage typos. FreeIPMI 0.6.3 - 05/27/08 ------------------------- o Fix --eliminate option in ipmipower. o Fix --quiet-cache option to work with flushing cache. o Fix ipmi-sensors-config flush cache corner case. o Fix ipmi-fru output corner case. o Fix workarounds parsing bug. o Fix/clarify various manpage text. FreeIPMI 0.6.2 - 05/15/08 ------------------------- o Fix ipmi-fru output corner cases. o Fix ipmi-chassis boot-device configuration bug. o Fix ipmiconsole config file parsing corner case. o Fix ipmipower max password length corner case check. o Fix command line parsing error messages. o Remove excess error output messages. o Add missing manpage option listings. FreeIPMI 0.6.1 - 04/27/08 ------------------------- For Users --------- o Add new tool ipmi-sensors-config. o Add new tool ipmi-oem. o Support --groups (plural) for multiple groups listing in ipmi-sensors. Older --group (non-plural) option maintained for backwards compatability. o Support --list-groups and --flush in ipmimonitoring for consistency to ipmi-sensors. o Change --cache-dir to --sdr-cache-dir in ipmimonitoring for consistency to ipmi-sensors. o Change short option -f option to -n in pef-config and bmc-config for consistency to ipmi-sensors-config. The -f option is maintained for backwards compatability. o Support -e (--escape-char) for alternate escape character in ipmiconsole. o Change --wait-until-off short option from -B to -G. o Support -B in ipmipower for consistency to other tools, although -B offers no purpose in ipmipower. o Support -F in ipmipower for consistency to other tools. o Enhanced speed of ipmi-fru, by skipping unnecessary FRU data reads. o SSIF Inband driver will timeout after a certain period of time. o Support additional sensor monitoring interpretations in ipmimonitoring. o Provide more detailed error messages in config tools. o Support shared SDR caches for ipmi-sensors, ipmi-fru, ipmi-sel, ipmi-sensors-config, and ipmimonitoring. (libipmimonitoring will still use a different default cache directory.) This will require a new cache generation for these tools. o Support driver-type options for ipmipower ipmi version option. o Modified SDR caching output messages in ipmi-sensors, ipmi-sel, ipmi-fru, ipmi-sensors-config and ipmimonitoring to provide more useful information. o In ipmi-sensors, updated SDR output under verbose and very verbose output modes with: o More IPMI compliant field names. For example, 'Sensor Name' has been replaced with 'ID String'. o More correct output. For example, 'NA' will be output instead of '0.0' when a value is not truly available. Fields that don't exist will not have a default output. o Fix incorrect hysterisis calculation and output. o Fix incorrect OEM data output. o Support more SDR record types for output. o Output more SDR record information in general. o Added new freeipmi(7) and libfreeipmi(3) manpages. o Various other bug fixes, documentation fixes, and enhancements. For Developers -------------- o Many libfreeipmi API changes. Not counting specific tool changes listed above, these API changes should not affect FreeIPMI user tools. o locate/probing API revamped. o SMIC driver/api removed. o 'udm' renamed to 'api' globally. o 'ipmi_device_t' device context renamed to 'ipmi_ctx_t'. o New sdr-caching library added. o Code re-organized into subdirectories. o New header files for more ipmi spec subsections added. o Support new 'ipmi_monitoring_sdr_cache_filenames' function in libipmimonitoring. o Support IPMI_MONITORING_SENSOR_UNITS_WATTS sensor units in libipmimonitoring. o Store SDR with different format for ipmi-sensors, ipmi-fru, ipmi-sel, and ipmi-sensors-config, ipmimonitoring/libipmimonitoring for easier future extensibility. o Packet names added to IPMI dump outputs in all tools for easier packet identification in debugging. o Make IPMI dump outputs consistent across all tools. o Support driver timeout error codes in all drivers and APIs. o SDR record dumping added into all tools. o Various other bug fixes and enhancements. FreeIPMI 0.5.6 - 03/27/08 ------------------------- o Fix bmc-watchdog probing corner case. o Fix bmc-watchdog openipmi corner case. FreeIPMI 0.5.5 - 02/25/08 ------------------------- o Fix bmc-info firmware and IPMI version output. o Fix Sun endian bug workaround. o Fix FRU data output corner cases. o Fix workaround documentation. FreeIPMI 0.5.4 - 02/07/08 ------------------------- o Output addresses in hex in ipmi-locate. o Clarify device addresses in manpages. o Support --ignore-sdr-cache option in ipmi-sel and ipmi-fru. o Minor SDR caching bug fixes. o Minor ipmimonitoring corner case fixes. o Various SSIF corner case fixes. FreeIPMI 0.5.3 - 01/02/08 ------------------------- o Fix minor ipmimonitoring command line option combination bugs. o Fix several minor corner cases in ipmi-sel, ipmi-sensors, and ipmimonitoring. o Fix corner case in all tools by recognizing 127.0.0.1 as the same as localhost. o Fix documentation/manpage text/typos. FreeIPMI 0.5.2 - 12/21/07 ------------------------- o Clarify "Password Verification Timeout" troubleshooting information. o Fix ipmipower cmdline parse bug. o Support suffixes in hostrange inputs. FreeIPMI 0.5.1 - 12/07/07 ------------------------- For Users --------- o Added previously missing IPMI 2.0 (-D LAN_2_0) support into ipmi-chassis, ipmi-fru, ipmi-sensors, ipmi-sel, ipmi-raw, and ipmimonitoring. o Added more strict IPMI over LAN implementation into ipmi-chassis, ipmi-fru, ipmi-sensors, ipmi-sel, ipmi-raw, and ipmimonitoring. o OpenIPMI and KCS Inband drivers will timeout after a certain period of time, so tools will no longer hang if the BMC is non-functional. o Ported IPMI compliance workarounds from ipmipower, ipmiconsole, and ipmimonitoring into ipmi-chassis, ipmi-fru, ipmi-sensors, ipmi-sel, and ipmi-raw. o Updated all manpages with more instructions, information, examples, and trouble shooting tips. o Support --debug option under the non-debug builds. o Rewrote error messages to provide more accurate descriptions. o Removed CALLBACK and OEM privilege capabilities in most tools. o Removed the quiet and silent options from bmc-config. o Added openipmi driver to bmc-watchdog. o Added keypair command line support to pef-config. o Removed bmc-autoconfig tool. o Added more details comments and instructions to bmc-config checkout. o Converted ipmiconsole, ipmipower, and ipmimonitoring to use argp instead of getopt for consistency of usage output. o Re-word "ASUS 2.0" workaround into generic "IGNORE SOL PAYLOAD SIZE" workaround. o Support new "IGNORE SOL PORT" workaround. o Made many command line options, interactive prompt, and config file options consistent across FreeIPMI tools. Inconsistencies between dashes and underscores have been fixed in a number of places. Backwards compatability has been maintained when possible. Notable changes include: o --priv-level and --privilege options are now --privilege-level. o --auth-type options are now --authentication-type. o --reg-space or --register-space options are now --register-spacing. o --hostnames (plural) is now --hostname (not-plural). o --timeout is now --session-timeout. o --retry is now --retransmission. o All tools now use -W (--workarounds) to specify workarounds. o The "plain" authentication type is now the "straight_password_key" authentication type. o The short option -r for --register-spacing has been removed for consistency with other command line options. o Short options for most debugging options have been removed. o All -H and -h (help) options have been changed to -? for consistency in all tools. o All -v (version) options have been changed to -V for consistency with all tools. o The -T option and -I option in ipmipower have been flipped for consistency with other tools. o The -c option in ipmiconsole is now the -I option for consistency with other tools. o Short option -I changed to -D in bmc-watchdog for consistency with other tools. o The -i option in bmc-config is now the -c option. o The -k option in bmc-config and pef-config is now the -e option. o Various other minor bug fixes and enhancements. For Developers -------------- o Added IPMI 2.0 into UDM. o Added workaround support into UDM for IPMI 1.5 and IPMI 2.0. o Added IPMI 2.0 into the libipmimonitoring API. o Added scalability fixes into libipmiconsole for Conman. o Fix various library variable names and macros for consistency. Notable changes. 1) ipmi_ver_minor and ipmi_ver_major in struct ipmi_locate_info have been renamed to ipmi_version_minor and ipmi_version_major. 2) reg_space/register_space have been renamed to register_spacing globally. 3) privilege has been replaced to privilege_level globally. 4) Various library error codes have been renamed for consistency for error codes in other libraries. For example OUTMEM has been changed to OUT_OF_MEMORY globally. 5) Various error codes and messages have been renamed/redone to give more useful information. For example, IPMI_ERR_PRIVILEGE is now IPMI_ERR_PRIVILEGE_LEVEL_CANNOT_BE_OBTAINED and the error message has been updated appropriately. o Various bug fixes and enhancements. FreeIPMI 0.4.6 - 10/11/07 ------------------------- o Fix sdr cache corruption bug. FreeIPMI 0.4.5 - 10/02/07 ------------------------- o Fix command line parse issue in ipmidetect. o Fix rpm daemon install scripts for ipmidetectd. FreeIPMI 0.4.4 - 09/19/07 ------------------------- o Alter userncame-capabilities workaround to authentication-capabilities workaronds to cover more situations. o Fix libipmiconsole new console port corner case. o Fix manpage typos. FreeIPMI 0.4.3 - 08/14/07 ------------------------- o Add ASUS P5M2 workarounds in ipmipower, ipmiconsole, and ipmimonitoring. o Fix bad input assert corner cases. o Fix non-default install bug. o Fix range check in bmc-config SOL config that was inconsistent with IPMI spec. o Fix ipmipower config file logic bug. o Fix ipmipower config output logic bug. o Fix potential pre-processor compile bug. o Fix manpage typos. o Fix error output messages in bmc-config. o Fix legacy config option issues. o Fix usage help in ipmiconsole. FreeIPMI 0.4.2 - 08/02/07 ------------------------- o ipmimonitoring: Fixed free bug that can cause segfaults. o Fix SLES packaging issue. FreeIPMI 0.4.1 - 07/26/07 ------------------------- For Users --------- o Added hostrange support to ipmi-sensors, ipmi-sel, ipmi-raw, and bmc-info o Added ipmimonitoring o Added ipmidetect o Added pef-config o Added ipmi-chassis o Added ipmi-fru o Added -T option to ipmiconsole. o Re-architected workarounds options for Ipmipower due to increasing number of vendor specific workarounds implemented. -W, -S, -Z, -X, -Y options removed. New -W option implemented. o Adjust ipmipower options to follow hostrange convention of other tools. o -Q option added for ipmi-sensors and ipmi-sel. o -q option added for ipmi-sensors. o Add verbose checkout/commit progress information for large checkout(s)/commit(s). o Add sensor names to ipmi-sel output when possible. o Output more descriptive error messages in most FreeIPMI tools. o '0x' parsing support in ipmi-raw. o Sun IPMI 2.0 workarounds in ipmipower and ipmiconsole. o Various bug fixes throughout FreeIPMI. For Developers -------------- o Added SDR debugging capabilities to ipmi-sdr and ipmi-sensors. o Added libipmimonitoring o Added libipmidetect o Additional IPMI sub section support in libfreeipmi. o Re-architected UDM for more descriptive error codes. o Various bug fixes/performance fixes to libipmiconsole, libfreeipmi. FreeIPMI 0.3.3 - 05/05/07 ------------------------- o Support per-msg-auth in LAN udm and majority of FreeIPMI tools. o Support hex k-g input/output. o Fix ipmipower per-msg-auth. o Fix ipmiconsole k_g key corner case. o Fix libipmiconsole state machine corner case. o Fix OpenIPMI driver build bug. o Fix strdup corner case in bmc-config. o Allow OEM network functions. FreeIPMI 0.3.2 - 03/29/07 ------------------------- o -N option added to ipmiconsole. o -L option added to ipmiconsole. o -K option added to ipmipower and ipmiconsole. o -P option replaced w/ -W option in ipmipower. o -P option added to most tools. o Fix seg-fault in ipmiconsole. o Fix various bugs in in libipmiconsole and ipmiconsole. o Fix secure malloc bug. FreeIPMI 0.3.1 - 12/18/06 ------------------------- o FreeBSD Support o libfreeipmi: Header file include/C++ fixes. o ipmi-sensors, ipmi-sel: Fix SDR cache creation bug for /tmp. o ipmi-sensors: Fix SDR parsing corner case bugs. o ipmipower, ipmiconsole: Fix mem-leak possibility. FreeIPMI 0.3.0 - 11/13/06 ------------------------- For Users --------- o Added ipmiconsole. o IPMI 2.0 connection support added to ipmipower. o IPMI 2.0 ping support added to ipmiping. o IPMI 2.0 and Serial-Over-LAN (SOL) configuration added to bmc-config. o Added sectional input/output support to bmc-config (--listsections and --section options). o Added OpenIPMI driver support to bmc-info, ipmi-raw, ipmi-sel, ipmi-sensors. o ipmi-raw raw input/output style change to support luns and network functions. o bmc-info, ipmi-raw, ipmi-sel, ipmi-sensors out-of-band communication made more reliable. o Sensor reading added to ipmi-sel for better output o Intel 2.0 workarounds added to ipmipower. o Supermicro 2.0 workarounds added to ipmipower. o --wait-until-on, --wait-until-off, --retry-wait-timeout options added to ipmipower. o --delete-range option added to ipmi-sel o --flush-cache option added to ipmi-sel. o --sdr-cache-directory option added to ipmi-sel and ipmi-sensors. o Removed fish o Removed garpd o Various bug fixes throughout FreeIPMI. For Developers -------------- o IPMI 2.0 support added to libfreeipmi. o Added libipmiconsole. o ipmi-sensors, ipmi-sel, and bmc-config re-written in C. o Added OpenIPMI driver support to libfreeipmi. o Libfreeipmi Fiid interface re-implemented. o Libfreeipmi code significantly cleaned up. o In debug mode, packet dump, function trace, and various debugging added to libfreeipmi.