%global _hardened_build 1 Name: ipmitool Summary: Utility for IPMI control Version: 1.8.18 Release: 11%{?dist} License: BSD Group: System Environment/Base URL: http://ipmitool.sourceforge.net/ Source0: http://downloads.sourceforge.net/project/%{name}/%{name}/%{version}/%{name}-%{version}.tar.bz2 Source1: openipmi-ipmievd.sysconf Source2: ipmievd.service Source3: exchange-bmc-os-info.service Source4: exchange-bmc-os-info.sysconf Source5: set-bmc-url.sh Source6: exchange-bmc-os-info BuildRequires: openssl-devel readline-devel ncurses-devel BuildRequires: systemd-units # bootstrap BuildRequires: automake autoconf libtool Requires:OpenIPMI-modalias Requires(post): systemd-sysv Requires(post): systemd-units Requires(preun): systemd-units Requires(postun): systemd-units Obsoletes: OpenIPMI-tools < 2.0.14-3 Provides: OpenIPMI-tools = 2.0.14-3 Patch1: 0001-ipmitool-1.8.10-ipmievd-init.patch.patch Patch2: 0002-ipmitool-1.8.10-ipmievd-condrestart.patch.patch Patch4: 0004-ipmitool-1.8.11-set-kg-key.patch.patch Patch7: 0007-ipmitool-1.8.11-remove-umask0.patch.patch Patch9: 0009-ipmitool-1.8.11-bz1126333-slowswid.patch.patch Patch10: 0010-ipmitool-1.8.11-bz878614-overname.patch.patch Patch13: 0013-lanplus-Cleanup.-Refix-6dec83ff-fix-be2c0c4b.patch Patch15: 0015-ID-390-Support-for-new-Communication-Interface-USB-M.patch Patch16: 0016-ipmitool-1.8.18-verbose.patch Patch17: 0017-ipmitool-1.8.18-check-input-values.patch Patch18: 0018-CVE-2020-5208.patch Patch19: 0019-CVE-2020-5208_2.patch Patch20: 0020-plugins-open-Fix-for-interrupted-select.patch Patch21: 0021-open-checking-received-msg-id-against-expectation.patch %description This package contains a utility for interfacing with devices that support the Intelligent Platform Management Interface specification. IPMI is an open standard for machine health, inventory, and remote power control. This utility can communicate with IPMI-enabled devices through either a kernel driver such as OpenIPMI or over the RMCP LAN protocol defined in the IPMI specification. IPMIv2 adds support for encrypted LAN communications and remote Serial-over-LAN functionality. It provides commands for reading the Sensor Data Repository (SDR) and displaying sensor values, displaying the contents of the System Event Log (SEL), printing Field Replaceable Unit (FRU) information, reading and setting LAN configuration, and chassis power control. %package -n bmc-snmp-proxy Requires: net-snmp Requires: exchange-bmc-os-info Requires:OpenIPMI-modalias BuildArch: noarch Summary: Reconfigure SNMP to include host SNMP agent within BMC %description -n bmc-snmp-proxy Given a host with BMC, this package would extend system configuration of net-snmp to include redirections to BMC based SNMP. %package -n exchange-bmc-os-info Requires: hostname Requires: ipmitool OpenIPMI Requires:OpenIPMI-modalias BuildArch: noarch Requires(post): systemd-sysv Requires(post): systemd-units Requires(preun): systemd-units Requires(postun): systemd-units Summary: Let OS and BMC exchange info %description -n exchange-bmc-os-info Given a host with BMC, this package would pass the hostname & OS information to the BMC and also capture the BMC ip info for the host OS to use. %prep %setup -q %patch1 -p1 %patch2 -p1 %patch4 -p1 %patch7 -p1 %patch9 -p1 %patch10 -p1 %patch13 -p1 %patch15 -p1 %patch16 -p1 %patch17 -p1 %patch18 -p1 %patch19 -p1 %patch20 -p1 %patch21 -p1 for f in AUTHORS ChangeLog; do iconv -f iso-8859-1 -t utf8 < ${f} > ${f}.utf8 mv ${f}.utf8 ${f} done %build # --disable-dependency-tracking speeds up the build # --enable-file-security adds some security checks # --disable-intf-free disables FreeIPMI support - we don't want to depend on # FreeIPMI libraries, FreeIPMI has its own ipmitoool-like utility. # begin: release auto-tools # Used to be needed by aarch64 support, now only cxoem patch makefiles are left. aclocal libtoolize --automake --copy autoheader automake --foreign --add-missing --copy aclocal autoconf automake --foreign # end: release auto-tools %configure \ CFLAGS="%{optflags} -fno-strict-aliasing" \ --disable-dependency-tracking --enable-file-security --disable-intf-free make %{?_smp_mflags} %install make DESTDIR=%{buildroot} install install -Dpm 644 %{SOURCE2} %{buildroot}%{_unitdir}/ipmievd.service install -Dpm 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/sysconfig/ipmievd install -Dm 644 %{SOURCE3} %{buildroot}%{_unitdir}/exchange-bmc-os-info.service install -Dm 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/sysconfig/exchange-bmc-os-info install -Dm 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/profile.d/set-bmc-url.sh install -Dm 755 %{SOURCE6} %{buildroot}%{_libexecdir}/exchange-bmc-os-info install -Dm 644 contrib/bmc-snmp-proxy.sysconf %{buildroot}%{_sysconfdir}/sysconfig/bmc-snmp-proxy install -Dm 644 contrib/bmc-snmp-proxy.service %{buildroot}%{_unitdir}/bmc-snmp-proxy.service install -Dm 755 contrib/bmc-snmp-proxy %{buildroot}%{_libexecdir}/bmc-snmp-proxy %post %systemd_post ipmievd.service %preun %systemd_preun ipmievd.service %postun %systemd_postun_with_restart ipmievd.service %post -n exchange-bmc-os-info %systemd_post exchange-bmc-os-info.service %preun -n exchange-bmc-os-info %systemd_preun exchange-bmc-os-info.service %postun -n exchange-bmc-os-info %systemd_postun_with_restart exchange-bmc-os-info.service %triggerun -- ipmievd < 1.8.11-7 # Save the current service runlevel info # User must manually run systemd-sysv-convert --apply ipmievd # to migrate them to systemd targets /usr/bin/systemd-sysv-convert --save ipmievd >/dev/null 2>&1 ||: # Run these because the SysV package being removed won't do them /sbin/chkconfig --del ipmievd >/dev/null 2>&1 || : /bin/systemctl try-restart ipmievd.service >/dev/null 2>&1 || : %files %config(noreplace) %{_sysconfdir}/sysconfig/ipmievd %{_unitdir}/ipmievd.service %{_bindir}/* %{_sbindir}/* %{_mandir}/man*/* %doc %{_datadir}/doc/ipmitool %{_datadir}/ipmitool %files -n exchange-bmc-os-info %config(noreplace) %{_sysconfdir}/sysconfig/exchange-bmc-os-info %{_sysconfdir}/profile.d/set-bmc-url.sh %{_unitdir}/exchange-bmc-os-info.service %{_libexecdir}/exchange-bmc-os-info %files -n bmc-snmp-proxy %config(noreplace) %{_sysconfdir}/sysconfig/bmc-snmp-proxy %{_unitdir}/bmc-snmp-proxy.service %{_libexecdir}/bmc-snmp-proxy %changelog * Wed Aug 9 2023 Pavel Cahyna - 1.8.18-11 - Add upstream ipmievd patch to check received msg id against expectation Fixes problem where SEL response is not recognized correctly when SEL request times out Resolves: rhbz#2224569 * Fri Dec 17 2021 Pavel Cahyna - 0:1.8.18-10 - Protect against negative values to memmove that caused "ipmitool sol activate" to crash against an IBM DataPower appliance (#1951480) and IP-131 Dayton blades in a SGI ICE-X (#2025519) Cherry-picked from upstream PR#78. * Wed Mar 04 2020 Václav Doležal - 0:1.8.18-9 - Disable -fstrict-aliasing (RPMDiff issue) * Tue Mar 03 2020 Václav Doležal - 0:1.8.18-8 - Backport fix for CVE-2020-5208 * Tue Feb 06 2018 Josef Ridky - 0:1.8.18-7 - Remove debug prints shown without -v option (#1483163) * Tue Oct 03 2017 Josef Ridky - 0:1.8.18-6 - Hide unrequested verbose output (#1483163) - Fix doc for check input values (#1495098) * Mon Apr 10 2017 Josef Ridky - 0:1.8.18-5 - Remove RPMDiff fix file (#1439269) related to #1398658 * Tue Feb 21 2017 Josef Ridky - 0:1.8.18-4 - Fix RPMDiff issues and rebuild * Thu Feb 16 2017 Josef Ridky - 0:1.8.18-3 - Fix issues with warning: dereferencing type-punned pointer will break strict-aliasing rules from RPMDiff * Mon Feb 13 2017 Josef Ridky - 0:1.8.18-2 - Fix issue in file sources * Thu Feb 02 2017 Josef Ridky - 0:1.8.18-1 - New upstream release 1.8.18 (#1398658) * Tue May 03 2016 Boris Ranto - 0:1.8.15-7 - New release (0:1.8.15-7) - ID:437 - sel: Fix "sel time set