Compare commits

...

No commits in common. "c8" and "c9s" have entirely different histories.
c8 ... c9s

33 changed files with 4958 additions and 426 deletions

14
.gitignore vendored
View File

@ -1 +1,13 @@
SOURCES/ipmitool-1.8.18.tar.bz2 ipmitool-1.8.11.tar.bz2
/ipmitool-1.8.12.tar.bz2
/exchange-bmc-os-info
/exchange-bmc-os-info.service
/exchange-bmc-os-info.sysconf
/set-bmc-url.sh
/ipmitool-1.8.12-130731.tar.bz2
/ipmitool-1.8.13.tar.bz2
/ipmitool-1.8.15.tar.bz2
/ipmitool-1.8.16.tar.bz2
/ipmitool-1.8.17.tar.bz2
/ipmitool-1.8.18.tar.bz2
/ipmitool-1.8.18.tar.gz

5
.ipmitool.metadata Normal file
View File

@ -0,0 +1,5 @@
451e703dd06f957aa4b1ae20d30346d68f8c2db9 exchange-bmc-os-info
d5c8e795c90354456ef63d35ba9ce71a828d60a4 exchange-bmc-os-info.service
637bedd6378c9c7be80358e70bbacb6147d0a8b3 exchange-bmc-os-info.sysconf
2f74a708abaf78ceb5edc73164ea4437ccf4d924 set-bmc-url.sh
ebb7c4387c11130ea874531beedba774f6431839 ipmitool-1.8.18.tar.gz

40
0008-add-extern.patch Normal file
View File

@ -0,0 +1,40 @@
From 95f666fa10c32233ee202d8b99d05b5e13528a25 Mon Sep 17 00:00:00 2001
From: Vaclav Dolezal <vdolezal@redhat.com>
Date: Thu, 23 Jan 2020 11:26:32 +0100
Subject: [PATCH] hpmfwupg: move variable definition to .c file
Signed-off-by: Vaclav Dolezal <vdolezal@redhat.com>
---
include/ipmitool/ipmi_hpmfwupg.h | 2 +-
lib/ipmi_hpmfwupg.c | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/include/ipmitool/ipmi_hpmfwupg.h b/include/ipmitool/ipmi_hpmfwupg.h
index de65292..07f597b 100644
--- a/include/ipmitool/ipmi_hpmfwupg.h
+++ b/include/ipmitool/ipmi_hpmfwupg.h
@@ -800,7 +800,7 @@ typedef struct _VERSIONINFO {
char descString[HPMFWUPG_DESC_STRING_LENGTH + 1];
}VERSIONINFO, *PVERSIONINFO;
-VERSIONINFO gVersionInfo[HPMFWUPG_COMPONENT_ID_MAX];
+extern VERSIONINFO gVersionInfo[HPMFWUPG_COMPONENT_ID_MAX];
#define TARGET_VER (0x01)
#define ROLLBACK_VER (0x02)
diff --git a/lib/ipmi_hpmfwupg.c b/lib/ipmi_hpmfwupg.c
index bbcffc0..d7cdcd6 100644
--- a/lib/ipmi_hpmfwupg.c
+++ b/lib/ipmi_hpmfwupg.c
@@ -58,6 +58,8 @@ ipmi_intf_get_max_request_data_size(struct ipmi_intf * intf);
extern int verbose;
+VERSIONINFO gVersionInfo[HPMFWUPG_COMPONENT_ID_MAX];
+
int HpmfwupgUpgrade(struct ipmi_intf *intf, char *imageFilename,
int activate, int, int);
int HpmfwupgValidateImageIntegrity(struct HpmfwupgUpgradeCtx *pFwupgCtx);
--
2.20.1

View File

@ -1,4 +1,4 @@
From 260293c0ee5a268bc7fc1483e5304546745122a6 Mon Sep 17 00:00:00 2001 From f2df2aa5a010544d53589a5b048677406eb40ee8 Mon Sep 17 00:00:00 2001
From: Vernon Mauery <vernon.mauery@intel.com> From: Vernon Mauery <vernon.mauery@intel.com>
Date: Mon, 9 Apr 2018 12:28:57 -0700 Date: Mon, 9 Apr 2018 12:28:57 -0700
Subject: [PATCH] lanplus: Auto-select 'best' cipher suite available Subject: [PATCH] lanplus: Auto-select 'best' cipher suite available

View File

@ -1,4 +1,4 @@
From a365e624fff752bfe79438f6c177399492ccfdde Mon Sep 17 00:00:00 2001 From f65ea137f0d03f883219a791a49cf8ea7e16776a Mon Sep 17 00:00:00 2001
From: Vaclav Dolezal <vdolezal@redhat.com> From: Vaclav Dolezal <vdolezal@redhat.com>
Date: Fri, 1 Mar 2019 14:46:12 +0100 Date: Fri, 1 Mar 2019 14:46:12 +0100
Subject: [PATCH] Fix "ipmitool pef {status,info}" not printing final newline Subject: [PATCH] Fix "ipmitool pef {status,info}" not printing final newline
@ -29,5 +29,5 @@ index bbf25f2..4be749e 100644
} }
-- --
2.25.4 2.20.1

View File

@ -0,0 +1,57 @@
From 57b57b27fe2c17e3030c41ee5566af36ccd33941 Mon Sep 17 00:00:00 2001
From: Vaclav Dolezal <vdolezal@redhat.com>
Date: Thu, 30 Jan 2020 16:18:37 +0100
Subject: [PATCH] Expand column with name in ipmitool sdr/sensor output
---
lib/ipmi_sdr.c | 4 ++--
lib/ipmi_sensor.c | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/lib/ipmi_sdr.c b/lib/ipmi_sdr.c
index fd2c02d..0f6faab 100644
--- a/lib/ipmi_sdr.c
+++ b/lib/ipmi_sdr.c
@@ -1619,7 +1619,7 @@ ipmi_sdr_print_sensor_fc(struct ipmi_intf *intf,
/*
* print sensor name, reading, state
*/
- printf("%-16s | ", sr->s_id);
+ printf("%-24s | ", sr->s_id);
memset(sval, 0, sizeof (sval));
@@ -1657,7 +1657,7 @@ ipmi_sdr_print_sensor_fc(struct ipmi_intf *intf,
/*
* print sensor name, number, state, entity, reading
*/
- printf("%-16s | %02Xh | ",
+ printf("%-24s | %02Xh | ",
sr->s_id, sensor->keys.sensor_num);
if (IS_THRESHOLD_SENSOR(sensor)) {
diff --git a/lib/ipmi_sensor.c b/lib/ipmi_sensor.c
index a0b7eb8..7328508 100644
--- a/lib/ipmi_sensor.c
+++ b/lib/ipmi_sensor.c
@@ -175,7 +175,7 @@ ipmi_sensor_print_fc_discrete(struct ipmi_intf *intf,
/* output format
* id value units status thresholds....
*/
- printf("%-16s ", sr->s_id);
+ printf("%-24s ", sr->s_id);
if (sr->s_reading_valid) {
if (sr->s_has_analog_value) {
/* don't show discrete component */
@@ -276,7 +276,7 @@ ipmi_sensor_print_fc_threshold(struct ipmi_intf *intf,
/* output format
* id value units status thresholds....
*/
- printf("%-16s ", sr->s_id);
+ printf("%-24s ", sr->s_id);
if (sr->s_reading_valid) {
if (sr->s_has_analog_value)
printf("| %-10.3f | %-10s | %-6s",
--
2.20.1

View File

@ -1,4 +1,4 @@
From a1732e68bce148255785e67eb035520729274d86 Mon Sep 17 00:00:00 2001 From b3e74778c65ba3ffc8a9b3133c87588ee5d18a74 Mon Sep 17 00:00:00 2001
From: Chrostoper Ertl <chertl@microsoft.com> From: Chrostoper Ertl <chertl@microsoft.com>
Date: Thu, 28 Nov 2019 16:33:59 +0000 Date: Thu, 28 Nov 2019 16:33:59 +0000
Subject: [PATCH] Fixes for CVE-2020-5208 Subject: [PATCH] Fixes for CVE-2020-5208
@ -13,20 +13,17 @@ pick 41d7026946fafbd4d1ec0bcaca3ea30a6e8eed22 session: Fix buffer overflow in ip
pick 9452be87181a6e83cfcc768b3ed8321763db50e4 channel: Fix buffer overflow pick 9452be87181a6e83cfcc768b3ed8321763db50e4 channel: Fix buffer overflow
pick d45572d71e70840e0d4c50bf48218492b79c1a10 lanp: Fix buffer overflows in get_lan_param_select pick d45572d71e70840e0d4c50bf48218492b79c1a10 lanp: Fix buffer overflows in get_lan_param_select
pick 7ccea283dd62a05a320c1921e3d8d71a87772637 fru, sdr: Fix id_string buffer overflows pick 7ccea283dd62a05a320c1921e3d8d71a87772637 fru, sdr: Fix id_string buffer overflows
[vdolezal@redhat.com]: fixed memleak of `spd_data` in
lib/dimm_spd.c:ipmi_spd_print_fru()
--- ---
lib/dimm_spd.c | 11 ++++++++++- lib/dimm_spd.c | 9 ++++++++-
lib/ipmi_channel.c | 5 ++++- lib/ipmi_channel.c | 5 ++++-
lib/ipmi_fru.c | 35 ++++++++++++++++++++++++++++++++--- lib/ipmi_fru.c | 35 ++++++++++++++++++++++++++++++++---
lib/ipmi_lanp.c | 14 +++++++------- lib/ipmi_lanp.c | 14 +++++++-------
lib/ipmi_sdr.c | 40 ++++++++++++++++++++++++---------------- lib/ipmi_sdr.c | 40 ++++++++++++++++++++++++----------------
lib/ipmi_session.c | 12 ++++++++---- lib/ipmi_session.c | 12 ++++++++----
6 files changed, 85 insertions(+), 32 deletions(-) 6 files changed, 83 insertions(+), 32 deletions(-)
diff --git a/lib/dimm_spd.c b/lib/dimm_spd.c diff --git a/lib/dimm_spd.c b/lib/dimm_spd.c
index 41e30db..ebcc94c 100644 index 41e30db..68f3b4f 100644
--- a/lib/dimm_spd.c --- a/lib/dimm_spd.c
+++ b/lib/dimm_spd.c +++ b/lib/dimm_spd.c
@@ -1621,7 +1621,7 @@ ipmi_spd_print_fru(struct ipmi_intf * intf, uint8_t id) @@ -1621,7 +1621,7 @@ ipmi_spd_print_fru(struct ipmi_intf * intf, uint8_t id)
@ -38,7 +35,7 @@ index 41e30db..ebcc94c 100644
msg_data[0] = id; msg_data[0] = id;
@@ -1697,6 +1697,15 @@ ipmi_spd_print_fru(struct ipmi_intf * intf, uint8_t id) @@ -1697,6 +1697,13 @@ ipmi_spd_print_fru(struct ipmi_intf * intf, uint8_t id)
} }
len = rsp->data[0]; len = rsp->data[0];
@ -47,8 +44,6 @@ index 41e30db..ebcc94c 100644
+ || len > fru.size - offset) + || len > fru.size - offset)
+ { + {
+ printf(" Not enough buffer size"); + printf(" Not enough buffer size");
+ free(spd_data);
+ spd_data = NULL;
+ return -1; + return -1;
+ } + }
memcpy(&spd_data[offset], rsp->data + 1, len); memcpy(&spd_data[offset], rsp->data + 1, len);
@ -253,7 +248,7 @@ index 65d881b..022c7f1 100644
if (str2uchar(argv[1], &data[3]) != 0) { if (str2uchar(argv[1], &data[3]) != 0) {
lprintf(LOG_ERR, "Invalid retry: %s", argv[1]); lprintf(LOG_ERR, "Invalid retry: %s", argv[1]);
diff --git a/lib/ipmi_sdr.c b/lib/ipmi_sdr.c diff --git a/lib/ipmi_sdr.c b/lib/ipmi_sdr.c
index fd2c02d..01d81f7 100644 index 0f6faab..9890132 100644
--- a/lib/ipmi_sdr.c --- a/lib/ipmi_sdr.c
+++ b/lib/ipmi_sdr.c +++ b/lib/ipmi_sdr.c
@@ -2086,7 +2086,7 @@ ipmi_sdr_print_sensor_eventonly(struct ipmi_intf *intf, @@ -2086,7 +2086,7 @@ ipmi_sdr_print_sensor_eventonly(struct ipmi_intf *intf,

View File

@ -1,326 +0,0 @@
#!/bin/sh
#############################################################################
#
# exchange-bmc-os-info: Set OS and BMC (Baseboard Management Controller)
# parameters during system startup.
#
# version: 0.72
#
# Authors: Charles Rose <charles_rose@dell.com>
# Jordan Hargrave <jordan_hargrave@dell.com>
#
# Description: Script to set OS information in the BMC; fetch BMC IP/URL
# and set in the OS for use by other scripts/user.
#
# BMC IP and URL are made available in /var/run/bmc-info
#
# Example to launch BMC web-interface:
# # . /var/run/bmc-info
# # xdg-open $BMC_URL
#
# See here for details:
# https://fedoraproject.org/wiki/Features/AgentFreeManagement
#
# OEM Specific: OEM specific ipmi commands go in:
# 'oem_set_os_version' and 'oem_get_bmc_url'
#############################################################################
#
# chkconfig: 345 99 00
# description: Set OS name, hostname in BMC; make BMC IP/URL available in OS
# processname: exchange-bmc-os-info
# config: /etc/sysconfig/exchange-bmc-os-info
#
### BEGIN INIT INFO
# Provides: exchange-bmc-os-info
# Required-Start: ipmi
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
#############################################################################
# GLOBALS
#############################################################################
CONFIGFILE=/etc/sysconfig/exchange-bmc-os-info
IPMI_TOOL=/usr/bin/ipmitool
BMC_INFO=/var/run/bmc-info
# BMC Manufacturer ID used in 'oem_set_os_version' and 'oem_get_bmc_url'
DELL="674"
#OTHER_OEM="123"
# Defaults for ${CONFIGFILE}
SET_OS_INFO="yes"
RESET_OS_INFO="no"
SET_BMC_INFO="yes"
# getsysinfo and setsysinfo commands
IPMI_SET_SYSINFO="${IPMI_TOOL} mc setsysinfo"
IPMI_GET_SYSINFO="${IPMI_TOOL} mc getsysinfo"
#############################################################################
SCRIPT_NAME=$(basename $0)
# source config
[ -r ${CONFIGFILE} ] && . ${CONFIGFILE}
RETVAL=0
if [ -f /bin/gettext.sh ]; then
GETTEXT=1
. /bin/gettext.sh
OUTPUT="eval_gettext"
else
GETTEXT=0
OUTPUT="echo"
fi
#############################################################################
# Get Vendor ID of BMC for use in 'oem_set_os_version' and 'oem_get_bmc_url'
#
get_bmc_vendor_id()
{
BMC_VENDOR=$(${IPMI_TOOL} mc info 2>/dev/null | \
sed -n "s#^Manufacturer ID.*: ##p")
[ -z "${BMC_VENDOR}" ] && RETVAL=4
}
# set/getsysinfo support was added to ipmitool post v1.8.12 via this patch
# http://sourceforge.net/mailarchive/message.php?msg_id=29647222
check_ipmitool()
{
if [ -x ${IPMI_TOOL} ]; then
[ ! ${IPMI_GET_SYSINFO} >/dev/null 2>&1 ] && \
RETVAL=3
else
RETVAL=2
fi
}
bmc_exists()
{
check_ipmitool
[ $RETVAL -eq 0 ] && get_bmc_vendor_id
return $RETVAL
}
#############################################################################
get_os_info()
{
OS_HOSTNAME=$(hostname)
KERNEL_VERSION=$(uname -r -m)
if [ -e /etc/lsb-release ] ; then
. /etc/lsb-release
NAME=${DISTRIB_ID}
VERSION="${DISTRIB_RELEASE} ${DISTRIB_CODENAME}"
fi
# we prefer systemd's /etc/os-release over other sources
[ -e /etc/os-release ] && . /etc/os-release
OS_NAME=${NAME}
OS_VERSION="${VERSION} kernel ${KERNEL_VERSION}"
}
oem_set_os_version()
{
# OS Version setting is not standard yet
# we need per vendor oem commands
case "${BMC_VENDOR}" in
$DELL) ${IPMI_SET_SYSINFO} delloem_os_version \
"${OS_VERSION}" > /dev/null 2>&1
return $?
;;
# Add OEM specific commands.
# Example:
# $OTHER_OEM) ${IPMI_SET_SYSINFO} otheroem_os_version \
# "${OS_VERSION}" > /dev/null 2>&1
# return $?
# ;;
*) return 0
;;
esac
}
set_os_info()
{
# Set and reset OS info in the BMC
if [ "$1" = "reset" ]; then
OS_NAME=""
OS_HOSTNAME=""
OS_VERSION=""
fi
${IPMI_SET_SYSINFO} os_name "${OS_NAME}" >/dev/null 2>&1 \
|| RETVAL=6
${IPMI_SET_SYSINFO} primary_os_name "${OS_NAME}" >/dev/null 2>&1 \
|| RETVAL=6
${IPMI_SET_SYSINFO} system_name "${OS_HOSTNAME}" >/dev/null 2>&1 \
|| RETVAL=6
oem_set_os_version || RETVAL=6
}
#############################################################################
valid_url()
{
url="(https?|http)://[a-z0-9-]+(\.[a-z0-9-]+)+([/?].*)?"
printf -- "%s" "${TMP_URL}"| grep -Eq "^${url}"
return $?
}
oem_get_bmc_url()
{
# BMC URL is not standard yet
# we need per vendor oem commands
case "$BMC_VENDOR" in
$DELL) TMP_URL=$(${IPMI_GET_SYSINFO} delloem_url 2> /dev/null)
;;
# Add OEM specific commands
# Example:
# $OTHER_OEM)
# TMP_URL=$(${IPMI_GET_SYSINFO} otheroem_url 2> /dev/null)
# ;;
*) TMP_URL="" ;;
esac
valid_url && BMC_URL=${TMP_URL} || BMC_URL=""
}
valid_ip()
{
#Thanks to mkyong.com
octet="([01]?[[:digit:]][[:digit:]]?|2[0-4][[:digit:]]|25[0-5])"
printf -- "%s" "${TMP_IPv4}"| grep -Eq "^${octet}\\.${octet}\\.${octet}\\.${octet}$"
return $?
}
get_bmc_ip()
{
#Thanks to http://ingvar.blog.redpill-linpro.com
for CHANNEL in `seq 1 14`
do
[ $(${IPMI_TOOL} lan print ${CHANNEL} 2>/dev/null \
| grep -q "^Set") ] || break
done
# Get BMC_IPv4 and BMC_URL from BMC
TMP_IPv4=$(${IPMI_TOOL} lan print ${CHANNEL} 2>/dev/null \
| sed -n "s#^IP Address .*: ##p")
valid_ip && BMC_IPv4=${TMP_IPv4} || BMC_IPv4=""
}
get_bmc_info()
{
get_bmc_ip
if [ -z "${BMC_IPv4}" ] || [ "${BMC_IPv4}" = "0.0.0.0" ]; then
BMC_IPv4=""
RETVAL=5
else
# URL makes sense only if there is an IP
oem_get_bmc_url
fi
}
set_bmc_info()
{
if [ ! $(touch "${BMC_INFO}" && chmod 600 "${BMC_INFO}") ]; then
printf "BMC_IPv4=%s\n" "${BMC_IPv4}" > "${BMC_INFO}"
[ -n "${BMC_URL}" ] && \
printf "BMC_URL=%s\n" "${BMC_URL}" >> "${BMC_INFO}"
else
RETVAL=5
fi
}
unset_bmc_info()
{
[ -f ${BMC_INFO} ] && rm -f ${BMC_INFO} > /dev/null 2>&1
}
#############################################################################
start()
{
if bmc_exists; then
[ "${SET_OS_INFO}" = "yes" ] && \
get_os_info && set_os_info
if [ "${SET_BMC_INFO}" = "yes" ]; then
get_bmc_info
if [ ${RETVAL} -eq 0 ]; then
set_bmc_info
fi
fi
fi
}
#############################################################################
stop()
{
if bmc_exists; then
# reset OS info while system reboots
# aids with debugging OS boot-up issues
if [ "${RESET_OS_INFO}" = "yes" ]; then
set_os_info reset
fi
unset_bmc_info
fi
}
#############################################################################
restart()
{
stop
[ $RETVAL -eq 0 ] && start
}
#############################################################################
status()
{
[ -r ${BMC_INFO} ] && \
grep -q "BMC_IPv4" "${BMC_INFO}" >/dev/null 1>&2 && \
BMC_STATUS="ok" || BMC_STATUS="inactive"
${OUTPUT} "${SCRIPT_NAME}: ${BMC_STATUS}" 1>&2
[ ${GETTEXT} -eq 1 ] && echo
}
#############################################################################
usage()
{
${OUTPUT} "Usage: ${SCRIPT_NAME} {start|stop|restart|status}" 1>&2
[ ${GETTEXT} -eq 1 ] && echo
RETVAL=1
}
#############################################################################
# MAIN
#############################################################################
case "$1" in
start) start ;;
stop) stop ;;
restart) restart ;;
status) status ;;
*) usage ;;
esac
case "$RETVAL" in
0|1) ;;
2) ${OUTPUT} "${SCRIPT_NAME}: ipmitool(1) not found." 1>&2 ;;
3) ${OUTPUT} "${SCRIPT_NAME}: this version of ipmitool does not support getsysinfo." 1>&2 ;;
4) ${OUTPUT} "${SCRIPT_NAME}: failed to communicate with BMC." 1>&2 ;;
5) ${OUTPUT} "${SCRIPT_NAME}: failed to set OS information in BMC." 1>&2 ;;
6) ${OUTPUT} "${SCRIPT_NAME}: failed to get BMC information." 1>&2 ;;
*) ${OUTPUT} "${SCRIPT_NAME}: unexpected error." 1>&2 ;;
esac
if [ ${RETVAL} -gt 1 ]; then
${OUTPUT} " Return code: ${RETVAL}" 1>&2
[ ${GETTEXT} -eq 1 ] && echo
fi
exit ${RETVAL}
#############################################################################
# end of file
#############################################################################

View File

@ -1,13 +0,0 @@
[Unit]
Description=Exchange Information between BMC and OS
After=ipmi.service network.target
Requires=ipmi.service
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/libexec/exchange-bmc-os-info start
ExecStop=/usr/libexec/exchange-bmc-os-info stop
[Install]
WantedBy=multi-user.target

View File

@ -1,26 +0,0 @@
# exchange-bmc-os-info
#
# Config file to control Exchange of information between
# the OS and Service Processor/Baseboard Management Controller (BMC)
#
# See here for details
# https://fedoraproject.org/wiki/Features/AgentFreeManagement
### Set OS Info in BMC/Service Processor ###
# Name: SET_OS_INFO
# Description: Set OS Name, Version and Hostname in the Service Processor (BMC)
# Default: yes
SET_OS_INFO="yes"
### Reset OS Info in BMC/Service Processor ###
# Name: RESET_OS_INFO
# Description: Reset OS Name, Version and Hostname in the Service Processor (BMC).
# Useful when the OS Name/Hostname should be empty on reboot
# Default: no
RESET_OS_INFO="no"
### Set BMC/Service Processor Info in OS ###
# Name; SET_BMC_INFO
# Description: Set IP Address and URL of Service Processor/BMC in /run/bmc-info
# Default: yes
SET_BMC_INFO="yes"

View File

@ -1 +0,0 @@
IPMIEVD_OPTIONS="sel daemon pidfile=/var/run/ipmievd.pid"

View File

@ -1,11 +0,0 @@
# Export BMC URL
#
BMC_INFO="/var/run/bmc-info"
if [ "$(id -u)" = "0" ]; then
[ -f ${BMC_INFO} ] && . ${BMC_INFO} && \
export "${BMC_URL}" "${BMC_IPv4}" >/dev/null 2>&1
fi
unset BMC_INFO

4759
cxoem-jb-cx6.patch Normal file

File diff suppressed because it is too large Load Diff

6
gating.yaml Normal file
View File

@ -0,0 +1,6 @@
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.other.functional}

View File

@ -7,7 +7,7 @@ After=ipmi.service
EnvironmentFile=-/etc/sysconfig/ipmievd EnvironmentFile=-/etc/sysconfig/ipmievd
ExecStart=/usr/sbin/ipmievd $IPMIEVD_OPTIONS ExecStart=/usr/sbin/ipmievd $IPMIEVD_OPTIONS
Type=forking Type=forking
PIDFile=/var/run/ipmievd.pid PIDFile=/run/ipmievd.pid
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target

View File

@ -1,10 +1,13 @@
%global gitname IPMITOOL
%global gitversion 1_8_18
Name: ipmitool Name: ipmitool
Summary: Utility for IPMI control Summary: Utility for IPMI control
Version: 1.8.18 Version: 1.8.18
Release: 19%{?dist} Release: 27%{?dist}
License: BSD License: BSD
URL: http://ipmitool.sourceforge.net/ URL: http://ipmitool.sourceforge.net/
Source0: http://downloads.sourceforge.net/project/%{name}/%{name}/%{version}/%{name}-%{version}.tar.bz2 Source0: https://github.com/%{name}/%{name}/archive/%{gitname}_%{gitversion}/%{name}-%{version}.tar.gz
Source1: openipmi-ipmievd.sysconf Source1: openipmi-ipmievd.sysconf
Source2: ipmievd.service Source2: ipmievd.service
Source3: exchange-bmc-os-info.service Source3: exchange-bmc-os-info.service
@ -20,12 +23,14 @@ Patch4: 0004-slowswid.patch
Patch5: 0005-sensor-id-length.patch Patch5: 0005-sensor-id-length.patch
Patch6: 0006-enable-usb.patch Patch6: 0006-enable-usb.patch
Patch7: 0007-check-input.patch Patch7: 0007-check-input.patch
Patch8: 0008-use-best-cipher.patch Patch8: 0008-add-extern.patch
Patch9: 0009-CVE-2020-5208.patch Patch9: 0009-best-cipher.patch
Patch10: 0010-quanta-oem-support.patch Patch10: 0010-pef-missing-newline.patch
Patch11: 0011-pef-missing-newline.patch Patch11: 0011-expand-sensor-name-column.patch
Patch12: 0012-lanplus-cipher-retry.patch Patch12: 0012-CVE-2020-5208.patch
Patch13: 0013-lanplus-Cleanup.-Refix-6dec83ff-fix-be2c0c4b.patch Patch13: 0013-quanta-oem-support.patch
Patch14: 0014-lanplus-cipher-retry.patch
Patch15: 0015-lanplus-Cleanup.-Refix-6dec83ff-fix-be2c0c4b.patch
Patch20: 0020-plugins-open-Fix-for-interrupted-select.patch Patch20: 0020-plugins-open-Fix-for-interrupted-select.patch
Patch21: 0021-open-checking-received-msg-id-against-expectation.patch Patch21: 0021-open-checking-received-msg-id-against-expectation.patch
Patch22: 0022-nvidia-iana.patch Patch22: 0022-nvidia-iana.patch
@ -83,6 +88,7 @@ Requires: ipmitool
BuildArch: noarch BuildArch: noarch
%{?systemd_requires} %{?systemd_requires}
BuildRequires: systemd BuildRequires: systemd
BuildRequires: make
Summary: Let OS and BMC exchange info Summary: Let OS and BMC exchange info
@ -93,7 +99,7 @@ for the host OS to use.
%prep %prep
%autosetup -p1 %autosetup -n %{name}-%{gitname}_%{gitversion} -p1
for f in AUTHORS ChangeLog; do for f in AUTHORS ChangeLog; do
iconv -f iso-8859-1 -t utf8 < ${f} > ${f}.utf8 iconv -f iso-8859-1 -t utf8 < ${f} > ${f}.utf8
@ -117,9 +123,7 @@ autoconf
automake --foreign automake --foreign
# end: release auto-tools # end: release auto-tools
%configure \ %configure --disable-dependency-tracking --enable-file-security --disable-intf-free
CFLAGS="%{optflags} -fno-strict-aliasing" \
--disable-dependency-tracking --enable-file-security --disable-intf-free
make %{?_smp_mflags} make %{?_smp_mflags}
%install %install
@ -190,43 +194,68 @@ install -Dm 755 contrib/bmc-snmp-proxy %{buildroot}%{_libexecdir}/bmc-sn
%{_libexecdir}/bmc-snmp-proxy %{_libexecdir}/bmc-snmp-proxy
%changelog %changelog
* Mon Jul 31 2023 Pavel Cahyna <pcahyna@redhat.com> - 1.8.18-19 * Thu Jul 27 2023 Pavel Cahyna <pcahyna@redhat.com> - 1.8.18-27
- Backport upstream PR 120 to fix segfault on invalid unit types - Backport upstream PR 120 to fix segfault on invalid unit types
Resolves: rhbz#2224578 Resolves: rhbz#2224578
- Add vendor ID for NVIDIA BMCs - Add vendor ID for NVIDIA BMCs
Resolves: rhbz#2218358 Resolves: rhbz#2218358
- Update /var/run to /run in ipmievd.service that systemd warns about
Resolves: rhbz#2100475
- Add upstream ipmievd patch to check received msg id against expectation - Add upstream ipmievd patch to check received msg id against expectation
Fixes problem where SEL response is not recognized correctly Fixes problem where SEL response is not recognized correctly
when SEL request times out when SEL request times out
Resolves: rhbz#2224569 Resolves: rhbz#2224569
* Mon Jul 19 2021 Pavel Cahyna <pcahyna@redhat.com> - 1.8.18-18 * Mon Feb 7 2022 Pavel Cahyna <pcahyna@redhat.com> - 1.8.18-25
- Protect against negative values to memmove that caused - Apply changes from RHEL 8 (#1811941, #1831158, #1951480)
"ipmitool sol activate" to crash against an IBM DataPower appliance Resolves: rhbz#2051621
(#1951480)
Cherry-picked from upstream PR#78.
* Wed Jun 03 2020 Václav Doležal <vdolezal@redhat.com> - 1.8.18-17 * Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1.8.18-24
- Disable retry of pre-session "Get cipher suites" command as some - Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
BMCs are ignoring it (#1831158) Related: rhbz#1991688
* Thu Apr 30 2020 Václav Doležal <vdolezal@redhat.com> - 1.8.18-16 * Wed Jun 16 2021 Mohan Boddu <mboddu@redhat.com> - 1.8.18-23
- Fix "ipmitool pef {status,info}" not printing final newline (#1840546) - Rebuilt for RHEL 9 BETA for openssl 3.0
Related: rhbz#1971065
* Thu Apr 30 2020 Václav Doležal <vdolezal@redhat.com> - 1.8.18-15 * Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 1.8.18-22
- Backport OEM support for Quanta (#1811941) - Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Fri Feb 07 2020 Václav Doležal <vdolezal@redhat.com> - 1.8.18-14 * Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.18-21
- Fix memory leak (found by covscan) - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Fri Feb 07 2020 Václav Doležal <vdolezal@redhat.com> - 1.8.18-13 * Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.18-20
- Backport fix for CVE-2020-5208 (#1799039) - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Nov 15 2019 Václav Doležal <vdolezal@redhat.com> - 1.8.18-12 * Thu Feb 06 2020 Václav Doležal <vdolezal@redhat.com> - 1.8.18-19
- Disable -fstrict-aliasing (RPMDiff issue) - Backport fix for CVE-2020-5208 (#1798722); for details see
https://github.com/ipmitool/ipmitool/security/advisories/GHSA-g659-9qxw-p7cp
* Tue Oct 15 2019 Václav Doležal <vdolezal@redhat.com> - 1.8.18-11 * Mon Feb 03 2020 Václav Doležal <vdolezal@redhat.com> - 1.8.18-18
- Choose the best cipher suite available when connecting over LAN (#1749360) - Backport patch to autoselect best cipher suite when working over lanplus backend
- Fixed 'ipmitool pef status/info' not printing final newline
- Expanded column for sensor name in 'ipmi sdr/sensor' output so longer names are aligned
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.18-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Jan 23 2020 Václav Doležal <vdolezal@redhat.com> - 1.8.18-16
- Fix FTBFS with GCC 10
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.18-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.8.18-14
- Rebuild for readline 8.0
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.18-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.18-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Apr 10 2018 Josef Ridky <jridky@redhat.com> - 1.8.18-11
- Project moved to github
* Thu Feb 22 2018 Josef Ridky <jridky@redhat.com> - 1.8.18-10 * Thu Feb 22 2018 Josef Ridky <jridky@redhat.com> - 1.8.18-10
- Spec clean up - Spec clean up

1
openipmi-ipmievd.sysconf Normal file
View File

@ -0,0 +1 @@
IPMIEVD_OPTIONS="sel daemon pidfile=/run/ipmievd.pid"

5
sources Normal file
View File

@ -0,0 +1,5 @@
SHA512 (exchange-bmc-os-info) = 77aad6f132b0ab56dcf8f8a5d1efbba9196c2fbb5771e5106833455a071a5dc79109d945a7adc0022f9604cbfd4a01ea1ea54ce15a2409c85f5effbf6cfc4f09
SHA512 (exchange-bmc-os-info.service) = 4349e7be9879c55c64e6233f749db7d656a12b421ad53a41d612e8c891abbe108d0fabe57d5753b5c1367da4f34e2e3bb579ea4ba8bc39b81ec64b66d5f65f79
SHA512 (exchange-bmc-os-info.sysconf) = 475f5645eb6a7038efe5568950235fa43a081f26490b7e17de2279e022950144f197e1a545177447ce1ec345862e7fb8fb802eaa3728bc9e32868e34c081263a
SHA512 (set-bmc-url.sh) = 99bceee522b23e0c4bc55f9e4bdc08ece9ecbf8a50511fa8f8b90ecc94d8f9715e74bb15a5f1e7c2162e7ac2e1933aff0c78b464e1010f21c784d84c0b1bfe2a
SHA512 (ipmitool-1.8.18.tar.gz) = 2f2b9c4ce76eb2afdac168edbd41241352c2d4d18286494ffb57dcf750f18448d144543faa8a5494f077c78a4f5ae730624d3798ba6e621249c42fd868d86406