Compare commits

..

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

10 changed files with 228 additions and 118 deletions

View File

@ -1 +0,0 @@
80898f5e95d905080426fdff7899d81eb4f888c2 SOURCES/dmidecode-3.5.tar.xz

11
.gitignore vendored
View File

@ -1 +1,10 @@
SOURCES/dmidecode-3.5.tar.xz /dmidecode-2.11.tar.bz2
/dmidecode-2.12.tar.bz2
/dmidecode-3.0.tar.xz
/dmidecode-3.0-unmask_lrdimm.patch
/dmidecode-3.1.tar.xz
/dmidecode-3.2.tar.xz
/dmidecode-3.3.tar.xz
/dmidecode-3.4.tar.xz
/dmidecode-3.5.tar.xz
/dmidecode-3.6.tar.xz

View File

@ -1,64 +0,0 @@
From c76ddda0ba0aa99a55945e3290095c2ec493c892 Mon Sep 17 00:00:00 2001
From: Jean Delvare <jdelvare@suse.de>
Date: Wed, 26 Apr 2023 15:44:27 +0200
Subject: [PATCH] Consistently use read_file() when reading from a dump file
Use read_file() instead of mem_chunk() to read the entry point from a
dump file. This is faster, and consistent with how we then read the
actual DMI table from that dump file.
This made no functional difference so far, which is why it went
unnoticed for years. But now that a file type check was added to the
mem_chunk() function, we must stop using it to read from regular
files.
This will again allow root to use the --from-dump option.
Signed-off-by: Jean Delvare <jdelvare@suse.de>
Tested-by: Jerry Hoemann <jerry.hoemann@hpe.com>
---
dmidecode.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/dmidecode.c b/dmidecode.c
index 54f59c1..52ddbf1 100644
--- a/dmidecode.c
+++ b/dmidecode.c
@@ -6025,17 +6025,25 @@ int main(int argc, char * const argv[])
pr_comment("dmidecode %s", VERSION);
/* Read from dump if so instructed */
+ size = 0x20;
if (opt.flags & FLAG_FROM_DUMP)
{
if (!(opt.flags & FLAG_QUIET))
pr_info("Reading SMBIOS/DMI data from file %s.",
opt.dumpfile);
- if ((buf = mem_chunk(0, 0x20, opt.dumpfile)) == NULL)
+ if ((buf = read_file(0, &size, opt.dumpfile)) == NULL)
{
ret = 1;
goto exit_free;
}
+ /* Truncated entry point can't be processed */
+ if (size < 0x20)
+ {
+ ret = 1;
+ goto done;
+ }
+
if (memcmp(buf, "_SM3_", 5) == 0)
{
if (smbios3_decode(buf, opt.dumpfile, 0))
@@ -6059,7 +6067,6 @@ int main(int argc, char * const argv[])
* contain one of several types of entry points, so read enough for
* the largest one, then determine what type it contains.
*/
- size = 0x20;
if (!(opt.flags & FLAG_NO_SYSFS)
&& (buf = read_file(0, &size, SYS_ENTRY_FILE)) != NULL)
{
--
2.43.0

View File

@ -1,14 +1,11 @@
Summary: Tool to analyse BIOS DMI data Summary: Tool to analyse BIOS DMI data
Name: dmidecode Name: dmidecode
Version: 3.5 Version: 3.6
Release: 1%{?dist} Release: 3%{?dist}
Epoch: 1 Epoch: 1
License: GPLv2+ License: GPL-2.0-or-later
Source0: http://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.xz Source0: https://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.xz
URL: http://www.nongnu.org/dmidecode/ URL: https://www.nongnu.org/dmidecode/
Patch0: 0001-Consistently-use-read_file-when-reading-from-a-dump-.patch
BuildRequires: gcc make BuildRequires: gcc make
ExclusiveArch: %{ix86} x86_64 ia64 aarch64 ExclusiveArch: %{ix86} x86_64 ia64 aarch64
@ -27,14 +24,13 @@ I/O ports (e.g. serial, parallel, USB).
%autosetup %autosetup
%build %build
make %{?_smp_mflags} CFLAGS="%{optflags}" LDFLAGS="%{__global_ldflags}" %make_build CFLAGS="%{optflags}" LDFLAGS="%{__global_ldflags}"
%install %install
make %{?_smp_mflags} DESTDIR=%{buildroot} prefix=%{_prefix} install-bin install-man %make_install %{?_smp_mflags} prefix=%{_prefix} install-bin install-man
%files %files
%doc AUTHORS NEWS README %doc AUTHORS NEWS README
%{!?_licensedir:%global license %%doc}
%license LICENSE %license LICENSE
%{_sbindir}/dmidecode %{_sbindir}/dmidecode
%ifnarch ia64 aarch64 %ifnarch ia64 aarch64
@ -45,61 +41,84 @@ make %{?_smp_mflags} DESTDIR=%{buildroot} prefix=%{_prefix} install-bin install-
%{_mandir}/man8/* %{_mandir}/man8/*
%changelog %changelog
* Wed Dec 20 2023 Lichen Liu <lichliu@redhat.com> - 1:3.5-1 * Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1:3.6-3
- Rebase to upstream 3.5 - Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
* Thu Jun 08 2023 Lichen Liu <lichliu@redhat.com> - 1:3.3-5 * Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 1:3.6-2
- Resolves: rhbz#2186860 - Bump release for June 2024 mass rebuild
* Wed Jan 26 2022 Coiby Xu <coxu@redhat.com> - 1:3.3-4 * Sat Jun 01 2024 Jonathan Wright <jonathan@almalinux.org> - 1:3.6-1
- Resolves: rhbz#2042224 - update to 3.6 rhbz#2276863
* Wed Jan 05 2022 Coiby Xu <coxu@redhat.com> - 1:3.3-3 * Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.5-3
- Resolves: rhbz#2027665 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Tue Nov 10 2021 Coiby Xu <coxu@redhat.com> - 1:3.3-2 * Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.5-2
- Resolves: rhbz#1996651 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Tue Nov 9 2021 Coiby Xu <coxu@redhat.com> - 1:3.3-1 * Thu Aug 10 2023 Coiby Xu <coxu@redhat.com> - 1:3.5-1
- Rebase to upsteam 3.3 - Update to 3.5
- Resolves: rhbz#1998772
* Fri Apr 9 2021 Coiby Xu <coxu@redhat.com> - 1:3.2-10 * Thu Aug 10 2023 Coiby Xu <coxu@redhat.com> - 1:3.4-5
- Fix crash with -u option - Use SPDX identifiers for license
- Resolves: rhbz#1885823
* Thu Dec 10 2020 Lianbo Jiang <lijiang@redhat.com> - 1:3.2-8 * Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.4-4
- CI found an error in the commit <c54348130a2a>, need to fix it. - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
- Resolves: rhbz#1858350
* Tue Dec 08 2020 Lianbo Jiang <lijiang@redhat.com> - 1:3.2-7 * Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.4-3
- Fix the "OUT OF SPEC" error for empty NVMe and DIMM slots - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
- Resolves: rhbz#1858350
* Wed May 20 2020 Lianbo Jiang <lijiang@redhat.com> - 1:3.2-6 * Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.4-2
- Updated to the latest upstream(5b3c8e995026 ("Allow overriding - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
build settings from the environment"))
- Resolves: rhbz#1796581
* Sun Oct 27 2019 Lianbo Jiang <lijiang@redhat.com> - 1:3.2-5 * Tue Jul 12 2022 Davide Cavalca <dcavalca@fedoraproject.org> 1:3.4-1
- Fix the "OUT OF SPEC" for type 9 - Update to 3.4; Fixes: RHBZ#2101507
- Resolves: rhbz#1763678
* Mon Oct 21 2019 Lianbo Jiang <lijiang@redhat.com> - 1:3.2-4 * Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.3-3
- Updated to the latest upstream(a808e6ef4ebc ("Typo")) - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
- Resolves: rhbz#1725435
* Mon Apr 22 2019 Lianbo Jiang <lijiang@redhat.com> - 1:3.2-3 * Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.3-2
- Add "Logical non-volatile device" to the memory device types - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
- Resolves: rhbz#1664573
* Mon Apr 15 2019 Lianbo Jiang <lijiang@redhat.com> - 1:3.2-2 * Wed May 19 2021 Coiby Xu <coxu@redhat.com> - 1:3.3-1
- add CI gating test. - updated to upstream v3.3
- Resolves: rhbz#1680617 - Supported SMBIOS spec up to v3.3.0
* Wed Sep 19 2018 Lianbo Jiang <lijiang@redhat.com> - 1:3.2-1 * Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.2-9
- update to upstream dmidecode-3.2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
- Resolves: rhbz#1628211
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.2-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 13 2020 Tom Stellard <tstellar@redhat.com> - 1:3.2-7
- Use make macros
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
* Mon Feb 03 2020 Tom Stellard <tstellar@redhat.com> - 1:3.2-6
- Use make_build macro instead of plain make
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Nov 18 2019 Anton Arapov <aarapov@redhat.com> - 1:3.2-4
- v3.2 patched up to upstream commit 62bce59f
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Tue Sep 18 2018 Anton Arapov <aarapov@redhat.com> - 1:3.2-1
- updated to upstream v3.2
- Supported SMBIOS spec up to v3.2.0
* Thu Aug 02 2018 Anton Arapov <aarapov@redhat.com> - 1:3.1-7
- patched up to upstream commit bd78a5dfd4
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.1-5 * Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

6
gating.yaml Normal file
View File

@ -0,0 +1,6 @@
--- !Policy
product_versions:
- rhel-10
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

1
sources Normal file
View File

@ -0,0 +1 @@
SHA512 (dmidecode-3.6.tar.xz) = b1e47a2121062581876ba2daf3ce80b1c39612d078718609b8bc97d4e7a4b47427200502468b5d71f0d0dcb5ba299fb2e808791b62dc5b50e67acac60c51a461

64
tests/selftest/Makefile Normal file
View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /CoreOS/patch/Sanity/selftest
# Description: Executes upstream test suite
# Author: Miroslav Vadkerti <mvadkert@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2010 Red Hat, Inc. All rights reserved.
#
# This copyrighted material is made available to anyone wishing
# to use, modify, copy, or redistribute it subject to the terms
# and conditions of the GNU General Public License version 2.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public
# License along with this program; if not, write to the Free
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/CoreOS/dmidecode/Sanity/selftest
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Just executes binaries and checks for right exitcode." >> $(METADATA)
@echo "Type: Sanity" >> $(METADATA)
@echo "TestTime: 4m" >> $(METADATA)
@echo "RunFor: dmidecode" >> $(METADATA)
@echo "Requires: dmidecode" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Architectures: i386 x86_64 ia64" >> $(METADATA)
rhts-lint $(METADATA)

4
tests/selftest/PURPOSE Normal file
View File

@ -0,0 +1,4 @@
PURPOSE of /CoreOS/dmidecode/Sanity/selftest
Description: Just executes binaries and checks for right exitcode.
Author: Matej Susta <msusta@redhat.com>

60
tests/selftest/runtest.sh Executable file
View File

@ -0,0 +1,60 @@
#!/bin/bash
# vim: dict=/usr/share/rhts-library/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /CoreOS/dmidecode/Sanity/basic-sanity-check
# Description: Just executes binaries and checks for right exitcode.
# Author: Matej Susta <msusta@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2009 Red Hat, Inc. All rights reserved.
#
# This copyrighted material is made available to anyone wishing
# to use, modify, copy, or redistribute it subject to the terms
# and conditions of the GNU General Public License version 2.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public
# License along with this program; if not, write to the Free
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include rhts environment
. /usr/bin/rhts-environment.sh
. /usr/share/rhts-library/rhtslib.sh
PACKAGE="dmidecode"
rlJournalStart
rlPhaseStartSetup Setup
rlAssertRpm $PACKAGE
if [ "`uname -p`" = "ia64" ]; then
IA64=1
fi
rlPhaseEnd
rlPhaseStartTest Testing
(($IA64)) || rlRun "biosdecode" 0 "biosdecode"
rlRun "dmidecode >$TmpDir/normal" 0 "dmidecode without args"
grep "OUT OF SPEC" "$TmpDir/normal" && rlLogWarning "OUT OF SPEC issue, see bug #714591 and bug #714595"
rlAssertNotGrep "BAD INDEX" "$TmpDir/normal"
# DBG:
echo "##### NORMAL #####"
cat $TmpDir/normal
rlRun "dmidecode --quiet >$TmpDir/quiet" 0 "dmidecode in quieter mode"
rlRun "diff $TmpDir/normal $TmpDir/quiet" 1 "quiet should be quiet"
rlRun "dmidecode --type 0 >$TmpDir/type" 0 "dmidecode for type"
rlRun "diff $TmpDir/normal $TmpDir/type" 1 "type output check"
# rlRun "dmidecode --dump --quiet" 2 "dmidecode shouldn't like dump+quiet"
(($IA64)) || rlRun "ownership" 0 "ownership"
(($IA64)) || rlRun "vpddecode" 0 "vpddecode"
rlPhaseEnd
rlJournalPrintText

12
tests/tests.yml Normal file
View File

@ -0,0 +1,12 @@
---
# This first play always runs on the local staging system
- hosts: localhost
roles:
- role: standard-test-beakerlib
tags:
- classic
tests:
- selftest
required_packages:
- make
- gcc