import python-dmidecode-3.12.2-15.el8

This commit is contained in:
CentOS Sources 2019-11-05 15:21:28 -05:00 committed by Andrew Lukoshko
parent fef7dc2f04
commit ea5a994424
2 changed files with 75 additions and 1 deletions

View File

@ -0,0 +1,63 @@
From 4e29e6d5687cf25ac16e48ad41498526e6a56ca8 Mon Sep 17 00:00:00 2001
From: Lianbo Jiang <lijiang@redhat.com>
Date: Sun, 28 Apr 2019 14:06:59 +0800
Subject: [PATCH] Fix memory type detail map size
Note: (https://github.com/nima/python-dmidecode/pull/5/commits/
edca64c89d084a8c42b9c48a51eb5ac13eac52c6)
For index and array size in xml map, bit mapped type descriptions
array size must be kept coerent with bit mask otherwise it could
cause an error, e.g:
Python 3.6.8 (default, Apr 3 2019, 12:10:30)
[GCC 8.2.1 20180905 (Red Hat 8.2.1-3)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import dmidecode
>>> dmidecode.memory()
IndexError: list assignment index out of range
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
SystemError: <built-in function memory> returned a result with an error set
Signed-off-by: Lianbo Jiang <lijiang@redhat.com>
---
src/dmidecode.c | 4 ++--
src/pymap.xml | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/dmidecode.c b/src/dmidecode.c
index 0615bad315fb..d74a374a3a0f 100644
--- a/src/dmidecode.c
+++ b/src/dmidecode.c
@@ -2905,9 +2905,9 @@ void dmi_memory_device_type_detail(xmlNode *node, u16 code)
dmixml_AddAttribute(data_n, "dmispec", "7.18.3");
dmixml_AddAttribute(data_n, "flags", "0x%04x", code);
- if((code & 0x1FFE) != 0) {
+ if((code & 0xFFFE) != 0) {
int i;
- for(i = 1; i <= 14; i++) {
+ for(i = 1; i <= 15; i++) {
if(code & (1 << i)) {
xmlNode *td_n = dmixml_AddTextChild(data_n, "flag", "%s", detail[i - 1]);
assert( td_n != NULL );
diff --git a/src/pymap.xml b/src/pymap.xml
index 7d5de70bda65..7325a8527018 100644
--- a/src/pymap.xml
+++ b/src/pymap.xml
@@ -440,7 +440,7 @@
valuetype="string" value="concat(TotalWidth, ' ', TotalWidth/@unit)"/>
<Map keytype="constant" key="AssetTag" valuetype="string" value="AssetTag"/>
<Map keytype="constant" key="Type Detail" valuetype="list:string" value="TypeDetails/flag"
- fixedsize="12" index_attr="index"/>
+ fixedsize="15" index_attr="index"/>
<Map keytype="constant" key="Array Handle" valuetype="string" value="@ArrayHandle"/>
<Map keytype="constant" key="Form Factor" valuetype="string" value="FormFactor"/>
<Map keytype="constant" key="Size"
--
2.17.1

View File

@ -1,7 +1,7 @@
Name: python-dmidecode
Summary: Python module to access DMI data
Version: 3.12.2
Release: 13%{?dist}
Release: 15%{?dist}
License: GPLv2
Group: System Environment/Libraries
URL: http://projects.autonomy.net.au/python-dmidecode/
@ -26,6 +26,8 @@ Summary: Python 3 module to access DMI data
Requires: libxml2-python3
ExclusiveArch: x86_64
Patch0: 0001-Fix-memory-type-detail-map-size.patch
%description -n python3-dmidecode
python3-dmidecode is a Python 3 extension module that uses the
code-base of the 'dmidecode' utility, and presents the data
@ -36,6 +38,7 @@ as Python 3 data structures or as XML data using libxml2.
%prep
%setup -q
%patch0 -p1
%build
# Not to get undefined symbol: dmixml_GetContent
@ -63,6 +66,14 @@ popd
%{_datadir}/python-dmidecode/
%changelog
* Wed May 08 2019 Lianbo Jiang <lijiang@redhat.com> - 3.12.2-15
- Fix an index out of range when calling dmidecode.memory().
- Resolves: #1665443
* Mon Apr 15 2019 Lianbo Jiang <lijiang@redhat.com> - 3.12.2-14
- Add the gating test
- Resolves: #1680625
* Fri Sep 14 2018 Lianbo Jiang <lijiang@redhat.com> - 3.12.2-13
- Disable build python-dmidecode package other than x86_64 architecture
- Resolves: #1626424