most of these simply extend matching from "aarch64" to "aarch64eb"
in various forms of code. most remaining uses in pkgsrc of
"MACHINE_ARCH == aarch64" are because of missing aarch64eb support,
such as most of the binary-bootstrap requiring languages like rust,
go, and java.
no pkg-bump because this shouldn't change packages on systems that
could already build all of these.
- Fix the condition error in ascii_filter
The normal printable ASCII range is 32 to 127 (not included),
so fix the error in this if condition.
- Fix crash with -u option
A segmentation fault was reported with option -u. Turns out to be a
stupid thinko where the buffer offset was reset at the wrong loop
depth.
CHANGES from 3.2:
Version 3.3 (Wed Oct 14 2020)
- [BUILD] Allow overriding build settings from the environment.
- [COMPATIBILITY] Document how the UUID fields are interpreted.
- [PORTABILITY] Don't use memcpy on /dev/mem on arm64.
- [PORTABILITY] Only scan /dev/mem for entry point on x86.
- Support for SMBIOS 3.3.0. This includes new processor names, new port
connector types, and new memory device form factors, types and
technologies.
- Add bios-revision, firmware-revision and system-sku-number to -s option.
- Use the most appropriate unit for cache size.
- Decode system slot base bus width and peers.
- Important bug fixes:
Fix Redfish Hostname print length
Fix formatting of TPM table output
Fix System Slot Information for PCIe SSD
Don't choke on invalid processor voltage
- Use the most appropriate unit for cache size.
2020-03-23 Jean Delvare <jdelvare@suse.de>
Print type 33 name unconditionally.
Even if a type 33 structure is too short, we can still display its
type name as we do for all other structure types.
2020-03-23 Jean Delvare <jdelvare@suse.de>
Don't choke on invalid processor voltage.
If the processor voltage encoding has some of the reserved bits set
and none of the proper bits set, print it as "Unknown" instead of an
empty field.
2020-03-23 Jean Delvare <jdelvare@suse.de>
Fix the alignment of type 25 name.
No tabulation needed before DMI structure names.
pkglint --only "https instead of http" -r -F
With manual adjustments afterwards since pkglint 19.4.4 fixed a few
indentations in unrelated lines.
This mainly affects projects hosted at SourceForce, as well as
freedesktop.org, CTAN and GNU.
2019-10-15: Fix System Slot Information for PCIe SSD
Output for type 9 show <out of spec> for PCIe SSD. SMBIOS spec table
48 describes 2.5" and 3.5" PCIe SSD formats.
2019-08-26: Only scan /dev/mem for entry point on x86
x86 is the only architecture which can have a DMI entry point scanned
from /dev/mem. Do not attempt it on other architectures, because not
only it can't work, but it can even cause the system to reboot.
This fixes support request #109697:
https://savannah.nongnu.org/support/?109697
2019-08-26: Fix formatting of TPM table output
Added missing newlines.
Fixes: 48a8132058a0 ("dmidecode: Add support for structure type 43
(TPM Device)")
2019-01-16: Add "Logical non-volatile device" to the memory device types
When adding support for non-volative memory, we forgot to add
"Logical non-volatile device" to the list of memory types. This causes
NVDIMM modules to show up as <OUT OF SPEC>. Fix the problem by adding
the missing enumerated value.
Changes from 3.1:
Version 3.2 (Wed Sep 14 2018)
- [COMPATIBILITY] The UUID is now displayed using lowercase letters, per
RFC 4122 (#53569). You must ensure that any code parsing it is
case-insensitive.
- Support for SMBIOS 3.2.0. This includes new processor names, new socket
and port connector types, new system slot state and property, and support
for non-volatile memory (NVDIMM).
- Support for Redfish management controllers.
- A new command line option to query a specific structure by its handle.
- A new command line option to query the system family string.
- Support for 3 ThinkPad-specific structures (patch #9642).
- Support for HPE's new company name.
- Support UEFI on FreeBSD.
- Important bug fixes:
Fix firmware version of TPM device
Fix the HPE UEFI feature flag check
- (biosdecode) A new command line option to fully decode PIR information
(support request #109339).
2018-08-01: Avoid OOB read on invalid entry point length
Don't let the entry point checksum verification run beyond the end
of the buffer holding it (32 bytes). This bug was discovered by
Lionel Debroux using the AFL fuzzer and AddressSanitizer.
Signed-off-by: Jean Delvare <jdelvare@suse.de>
2018-08-01: Validate structure completeness before decoding
Ensure that the whole DMI structure fits in the announced table
length before performing any action on it. Otherwise we might end
up reading beyond the end of our memory buffer. This bug was
discovered by Lionel Debroux using the AFL fuzzer and
AddressSanitizer. Its probability is very low, as it requires a DMI
table corrupted in one of two very specific ways to trigger. This
bug exists since dmidecode version 2.9, although it is hard to
test because option --from-dump was only introduced in version
2.10.
Signed-off-by: Jean Delvare <jdelvare@suse.de>
2017-09-14: Reflect HPE's new company name
After Hewlett Packard Enterprise split from Hewlett-Packard, DMI OEM
tables reflect the new company name. Gen10 and subsequent systems will
use HPE. Gen9 and prior systems continue to use the old "HP" name.
2018-04-11: decode HPE UEFI type 219 Misc Features
The incorrect "Misc Feature" bit in type 219 table was being used to
identify that the platform is capable of booting with UEFI.
2018-01-31:
Fix firmware version of TPM device. Both the operator
(detected by clang, reported by Xorg) and the mask for the minor
firmware version field of TPM devices were wrong.
CHANGES from 3.0:
-----
2015-09-03 Jean Delvare <jdelvare@suse.de>
* version.h: Set version to 3.1.
2017-05-23 Jean Delvare <jdelvare@suse.de>
* dmidecode.c, dmiopt.c: Add a new option to extract OEM strings, like
we already have for many other strings.
* dmidecode.8: Document the new option.
2017-04-27 Jean Delvare <jdelvare@suse.de>
Update to support SMBIOS specification version 3.1.1.
* dmidecode.c: Add support for 3-digit versions.
* dmidecode.c: Add new enumerated values for processors (DMI type 4).
2017-04-27 Jean Delvare <jdelvare@suse.de>
Update to support SMBIOS specification version 3.1.0.
* dmidecode.c: Add support for extended BIOS ROM size (DMI type 0).
* dmidecode.c: Add new enumerated values for chassis types
(DMI type 3).
* dmidecode.c: Add new enumerated values for processors (DMI type 4).
* dmidecode.c: Don't assume 8-bit processor family in dmi_processor_id
(DMI type 4).
* dmidecode.c: Decode the MIDR register on ARM processors
(DMI type 4).
* dmidecode.c: Add support for large cache sizes (DMI type 7).
* dmidecode.c: Add Mini PCIe system slot enumerated values
(DMI type 9).
* dmidecode.c: Clarify the memory speed unit (DMI type 17).
* dmidecode.c: Add support for structure type 43 (TPM Device).
2017-04-11 Jean Delvare <jdelvare@suse.de>
* util.c: Don't leak a file descriptor in function read_file.
* util.c, util.c, dmidecode.c: Let callers pass an offset to function
read_file.
* dmidecode.c: Fix reading from SMBIOS 3 dump files using a 64-bit
entry point.
2017-04-10 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Decode the processor ID of the Intel Core M, AMD
Athlon X4 and AMD Opteron X1000/X2000 processors (DMI type 4).
* dmidecode.c: Display the IPMI interrupt number as a decimal
number (DMI type 38).
2017-01-20 Jean Delvare <jdelvare@suse.de>
* biosdecode.c: Decode the entry point defined in the Intel
Multiprocessor specification.
2017-01-20 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Only decode one DMI table.
This fixes Savannah bug #50022:
https://savannah.nongnu.org/bugs/?50022
2016-09-22 Jean Delvare <jdelvare@suse.de>
* README: Explain that we can no longer support Cygwin.
2016-06-30 Petr Oros <poros@redhat.com>
* dmidecode.c: Unmask LRDIMM in memory type detail (DMI type 17).
2015-11-02 Jean Delvare <jdelvare@suse.de>
* dmidecode.c, util.c, util.h: Let read_file return the actual data
size.
* dmidecode.c: Use read_file to read the DMI table from sysfs.
This fixes Savannah bug #46176:
https://savannah.nongnu.org/bugs/?46176
* dmidecode.c: Check the sysfs entry point length.
2015-10-21 Xie XiuQi <xiexiuqi@huawei.com>
* dmidecode.c: Handle SMBIOS 3.0 entry points on EFI systems.
2015-10-20 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Handle OEM-specific types in group associations
(DMI type 14).
2015-10-14 Jean Delvare <jdelvare@suse.de>
* util.c: Avoid SIGBUS on mmap failure.
This fixes Savannah bug #46066:
https://savannah.nongnu.org/bugs/?46066
* util.c: Fix error paths in mem_chunk.
2015-10-01 Roy Franz <roy.franz@linaro.org>
* dmiopt.c: Add "--no-sysfs" option description to -h output.
2017-01-20 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Only decode one DMI table.
This fixes Savannah bug #50022:
https://savannah.nongnu.org/bugs/?50022
2016-06-30 Petr Oros <poros@redhat.com>
* dmidecode.c: Unmask LRDIMM in memory type detail (DMI type 17).
2015-11-02 Jean Delvare <jdelvare@suse.de>
* dmidecode.c, util.c, util.h: Let read_file return the actual data
size.
* dmidecode.c: Use read_file to read the DMI table from sysfs.
This fixes Savannah bug #46176:
https://savannah.nongnu.org/bugs/?46176
2015-10-21 Xie XiuQi <xiexiuqi@huawei.com>
* dmidecode.c: Handle SMBIOS 3.0 entry points on EFI systems.
2015-10-01 Roy Franz <roy.franz@linaro.org>
* dmiopt.c: Add "--no-sysfs" option description to -h output.
Change MAINTAINER from shattered@ to msaitoh@. OK'ed by shattered.
CHANGES from 2.1.2:
2015-09-03 Jean Delvare <jdelvare@suse.de>
* version.h: Set version to 3.0.
2015-08-04 Tyler Bell <tyler.bell@hp.com>
* dmioem.c: Decode HP-specific DMI type 233
* dmioem.c: Refactored HP-specific types 209 and 221 to use common code
* dmioem.c: Documented spec for HP-specific types 209, 221 and 233
2015-05-21 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Fix up invalid DMI type 34 structure length.
* dmioem.c: Decode HP-specific DMI types 212 and 219.
* dmioem.c: Move function is_printable to dmidecode.c.
2015-05-13 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Add support for SMBIOS3 EFI table.
* dmidecode.c: Fix warnings about comparison between signed and
unsigned integers.
* util.c: Fix warnings about unused labels when building without
-DUSE_MMAP.
* dmioem.c: Strip spaces at the end of vendor names.
* dmioem.c: Decode Acer-specific DMI type 170.
2015-05-12 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Remove extra blank line after hidden DMI type 40
structure.
2015-05-04 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Move table decoding to a separate function.
* dmidecode.c: Simplify function dmi_table_dump.
* dmidecode.c: Display types 41 and 42 in quiet mode too.
* dmidecode.c: Get OEM vendor from System Information (DMI type 1).
2015-04-28 Jean Delvare <jdelvare@suse.de>
* dmidecode.h, dmiopt.h: Fix sparse errors.
* biosdecode.c, dmiopt.c, ownership.c, vpdopt.c: Fix sparse warnings.
* util.c: Fix sparse warning.
2015-04-27 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Fix --dump-bin when reading from sysfs.
2015-04-27 Jean Delvare <jdelvare@suse.de>
Update to support SMBIOS specification version 3.0.0.
* dmidecode.c: Add support for the new _SM3_ 64-bit entry point
defined in the SMBIOS specification version 3.0.0, including
support of 64-bit addresses and 32-bit table lengths.
* dmidecode.c: Add 3 new chassis types (DMI type 3).
* dmidecode.c: Add 4 new processor families (DMI type 4).
* dmidecode.c: Add 4 new Intel socket types (DMI type 4).
* dmidecode.c: Add 13 new slot types (DMI type 9).
* dmidecode.c: Add 4 new memory device types (DMI type 17).
* dmidecode.c: Add support for processors with more than 255 cores
or threads (DMI type 4).
* dmidecode.c: Stop decoding v3 tables at End-of-Table marker.
2015-04-21 Roy Franz <roy.franz@linaro.org>
* util.c, util.h: Add utility function read_file, which reads an
entire binary file into a buffer.
* dmidecode.c: Add passing of flags parameter to dmi_table.
* dmidecode.c: Add reading of SMBIOS tables from sysfs.
* dmidecode.c, dmiopt.c, dmiopt.h: Add --no-sysfs option to disable
use of sysfs.
* dmidecode.8: Document the changes above.
2015-04-20 Jean Delvare <jdelvare@suse.de>
* biosdecode.c: Add support for the _SM3_ entry point, as defined in
the SMBIOS 3.0.0 specification.
2014-11-14 Jean Delvare <jdelvare@suse.de>
* man/dmidecode.8: Add a note about DMI strings available from sysfs
on Linux.
2014-10-13 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Add support for DDR4 (DMI type 17). Patch from Tomohiro
Kimura. The value was taken from preliminary SMBIOS specification
version 3.0.0d.
This fixes Savannah bug #43370:
https://savannah.nongnu.org/bugs/?43370
2014-07-11 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Decode the CPUID of recent AMD processors (DMI type 4).
2014-03-20 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Let legacy_decode be quiet in dump mode too.
* dmidecode.c: Skip the SMBIOS version comparison in quiet mode.
Patch from Jens Rosenboom.
2014-02-25 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Fix spacing of memory module voltage attributes
(DMI type 17).
2014-01-13 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Decode ID of PCI Express 3 slots (DMI type 9).
This fixes Savannah bug #40178:
https://savannah.nongnu.org/bugs/?40178
2014-01-13 Jean Delvare <jdelvare@suse.de>
* LICENSE: Update to the latest upstream version. Amongst other
things, this fixes the FSF address.
2013-04-24 Jean Delvare <jdelvare@suse.de>
* dmidecode.c: Strip trailing zeroes from memory voltage values
(DMI type 17).
* dmidecode.c: Fix support for new processor upgrade types (DMI
type 4) and new memory device type (DMI type 17.)
Problems found with existing digests:
Package memconf distfile memconf-2.16/memconf.gz
b6f4b736cac388dddc5070670351cf7262aba048 [recorded]
95748686a5ad8144232f4d4abc9bf052721a196f [calculated]
Problems found locating distfiles:
Package dc-tools: missing distfile dc-tools/abs0-dc-burn-netbsd-1.5-0-gae55ec9
Package ipw-firmware: missing distfile ipw2100-fw-1.2.tgz
Package iwi-firmware: missing distfile ipw2200-fw-2.3.tgz
Package nvnet: missing distfile nvnet-netbsd-src-20050620.tgz
Package syslog-ng: missing distfile syslog-ng-3.7.2.tar.gz
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
The makefile uses uname -m to decide which programs to build on i386 vs.
x86_64 (and then builds the same programs on both, but thats a different
story). Teach it about i86pc, which is what SunOS usually returns on an
x86 machine.
"Support for SMBIOS 2.6.1 and 2.7 was added. This includes new enumerated values
for recent hardware, as well as support for large memory modules and arrays, and
a new entry type for management controller host interfaces. Additionally, many
minor bugs were fixed."
Patch provided by Sergey Svishchev via PR 40104.
dmidecode:
* Support for Solaris (x86 only, of course).
* Possibility to dump the SMBIOS/DMI table to a small binary file
(option --dump-bin).
* Possibility to read the SMBIOS/DMI table from such binary files
(option --from-dump).
* Support for SMBIOS 2.6. This includes new chassis types, new
processor family names, new processor family upgrade names, bus
address for system slots, and a new entry type for on-board devices,
amongst many other minor changes.
* Support for DMI entry type 31 (Boot integrity services).
* Many processor family names taken from the CIM Schema document.
vpddecode:
* No longer ask users to report broken records.
* Fix --quiet option.
And okayed by maintainer.
Many changes, see CHANGELOG for all. Here are some highlights:
* dmidecode.c: Add option -u, --dump. It disables decoding of the
entries, raw dumps are displayed instead. This option is mainly
intended for debugging.
* vpddecode.c: Add option -u, --dump. It disables decoding of the
VPD records, a raw dump is displayed instead. This option is
mainly intended for debugging.
* dmidecode.c: Add option -t, --type. It limits the output to
the given type(s) of DMI entries.
* dmiopt.c: Define keywords to be used with --type (instead of
numeric values).
* dmidecode.c, dmiopt.c, dmiopt.h: Add option -q, --quiet. It
makes the output less verbose.
* dmidecode.c, dmiopt.c, dmiopt.h: Add option -s, --string. It
prints one selected DMI string instead of the regular output.
This also installs AUTHORS, CHANGELOG, and README.
And I added "@dirrm share/doc/dmidecode" to PLIST.
patch-aa to use PKGMANDIR and also sets docdir.
Dmidecode is a tool for dumping a computer's DMI (some say SMBIOS)
table contents in a human-readable format. This table contains a
description of the system's hardware components, as well as other
useful pieces of information such as serial numbers and BIOS
revision.