Control: tags -1 moreinfo

On 2021-05-16 10:01:26, Jörg Frings-Fürst wrote:
> Package: release.debian.org
> Severity: normal
> User: release.debian....@packages.debian.org
> Usertags: unblock
> X-Debbugs-Cc: Adrian Bunk <b...@debian.org>
> 
> Please unblock package dmidecode
> 
> [ Reason ]
> This release fixes the bug that causes a segmentation fault (Debian Bug
> #987033).
> 
> [ Impact ]
> Dmidecode terminates with a segmentation fault when certain parameters are
> used.
> 
> [ Tests ]
> Before the fix dmidecode -u fails.
> After the fix, dmidecode -u runs as expected.
> 
> [ Risks ]
> The changes aree trival.
> 
> [ Checklist ]
>   [X] all changes are documented in the d/changelog
>   [X] I reviewed all changes and I approve them
>   [X] attach debdiff against the package in testing
> 
> [ Other info ]
> I ask about the unblock after a hint from Adrian Bunk.
> 
> 
> unblock dmidecode/3.3-2

> diff -Nru dmidecode-3.3/debian/changelog dmidecode-3.3/debian/changelog
> --- dmidecode-3.3/debian/changelog    2020-10-17 10:31:23.000000000 +0200
> +++ dmidecode-3.3/debian/changelog    2021-05-07 09:13:05.000000000 +0200
> @@ -1,3 +1,15 @@
> +dmidecode (3.3-2) unstable; urgency=medium
> +
> +  * Add upstream recommended patches (Closes: #987033):
> +    - New debian/patches/0145-Fix_condition_error_in_ascii_filter.patch.
> +    - New debian/patches/0150-Fix_crash.patch.
> +  * Declare compliance with Debian Policy 4.5.1 (No changes needed).
> +  * debian/copyright:
> +    - Add year 2021 to myself.
> +  * Remove longer not used patches.

I'd prefer an upload without the additional noise.

Please remove the moreinfo tag once the new version is available in
unstable.

Cheers

> +
> + -- Jörg Frings-Fürst <debian@jff.email>  Fri, 07 May 2021 09:13:05 +0200
> +
>  dmidecode (3.3-1) unstable; urgency=medium
>  
>    * New upstream release.
> diff -Nru dmidecode-3.3/debian/control dmidecode-3.3/debian/control
> --- dmidecode-3.3/debian/control      2020-10-17 09:58:18.000000000 +0200
> +++ dmidecode-3.3/debian/control      2021-05-07 08:54:34.000000000 +0200
> @@ -3,7 +3,7 @@
>  Priority: optional
>  Maintainer: Jörg Frings-Fürst <debian@jff.email>
>  Build-Depends: debhelper-compat (= 13)
> -Standards-Version: 4.5.0
> +Standards-Version: 4.5.1
>  Rules-Requires-Root: no
>  Vcs-Git: git://jff.email/opt/git/dmidecode.git
>  Vcs-Browser: https://jff.email/cgit/dmidecode.git/
> diff -Nru dmidecode-3.3/debian/copyright dmidecode-3.3/debian/copyright
> --- dmidecode-3.3/debian/copyright    2020-10-17 10:14:51.000000000 +0200
> +++ dmidecode-3.3/debian/copyright    2021-05-07 08:56:16.000000000 +0200
> @@ -13,7 +13,7 @@
>  Files: debian/*
>  Copyright: 2003-2007 Petter Reinholdtsen <p...@debian.org>
>             2011-2012 Daniel Baumann 
> <daniel.baum...@progress-technologies.net>
> -           2014-2020 Jörg Frings-Fürst <debian@jff.email>
> +           2014-2021 Jörg Frings-Fürst <debian@jff.email>
>  License: GPL-2+
>  
>  License: GPL-2+
> diff -Nru dmidecode-3.3/debian/patches/0005-build.patch 
> dmidecode-3.3/debian/patches/0005-build.patch
> --- dmidecode-3.3/debian/patches/0005-build.patch     2015-09-28 
> 12:36:46.000000000 +0200
> +++ dmidecode-3.3/debian/patches/0005-build.patch     1970-01-01 
> 01:00:00.000000000 +0100
> @@ -1,25 +0,0 @@
> -Author: Daniel Baumann <daniel.baum...@progress-technologies.net>
> -Description: Avoid overwriting build environment rather than to just extend 
> it.
> -
> -Index: trunk/Makefile
> -===================================================================
> ---- trunk.orig/Makefile
> -+++ trunk/Makefile
> -@@ -13,7 +13,7 @@
> - #
> - 
> - CC      = gcc
> --CFLAGS  = -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual 
> \
> -+CFLAGS += -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual 
> \
> -           -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef
> - 
> - # Let lseek and mmap support 64-bit wide offsets
> -@@ -27,7 +27,7 @@ CFLAGS += -O2
> - #CFLAGS += -g
> - 
> - # Pass linker flags here
> --LDFLAGS =
> -+#LDFLAGS =
> - 
> - DESTDIR =
> - prefix  = /usr/local
> diff -Nru dmidecode-3.3/debian/patches/0105-dmidecode-avoid-sigbus.patch 
> dmidecode-3.3/debian/patches/0105-dmidecode-avoid-sigbus.patch
> --- dmidecode-3.3/debian/patches/0105-dmidecode-avoid-sigbus.patch    
> 2015-10-01 06:33:47.000000000 +0200
> +++ dmidecode-3.3/debian/patches/0105-dmidecode-avoid-sigbus.patch    
> 1970-01-01 01:00:00.000000000 +0100
> @@ -1,50 +0,0 @@
> -Description: Avoid SIGBUS on mmap failure
> - mmap will fail with SIGBUS if trying to map a non-existent portion of
> - a file. While this should never happen with /dev/mem, it can happen if
> - passing a regular file with option -d. While people should no longer
> - do that, failure gracefully seems better than crashing. So check for
> - the file size before calling mmap.
> -Author: Jean Delvare <jdelv...@suse.de>
> -Origin: https://savannah.nongnu.org/bugs/download.php?file_id=35008
> -Bug: https://savannah.nongnu.org/bugs/index.php?46066
> -Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796963
> -Last-Update: 2015-10-01
> -----
> -This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
> ---- dmidecode.orig/util.c    2015-09-29 11:27:02.136566009 +0200
> -+++ dmidecode/util.c 2015-09-29 11:37:24.746191083 +0200
> -@@ -152,6 +152,7 @@ void *mem_chunk(off_t base, size_t len,
> -     void *p;
> -     int fd;
> - #ifdef USE_MMAP
> -+    struct stat statbuf;
> -     off_t mmoffset;
> -     void *mmp;
> - #endif
> -@@ -169,6 +170,26 @@ void *mem_chunk(off_t base, size_t len,
> -     }
> - 
> - #ifdef USE_MMAP
> -+    if (fstat(fd, &statbuf) == -1)
> -+    {
> -+            fprintf(stderr, "%s: ", devmem);
> -+            perror("stat");
> -+            free(p);
> -+            return NULL;
> -+    }
> -+
> -+    /*
> -+     * mmap() will fail with SIGBUS if trying to map beyond the end of
> -+     * the file.
> -+     */
> -+    if (S_ISREG(statbuf.st_mode) && base + (off_t)len > statbuf.st_size)
> -+    {
> -+            fprintf(stderr, "mmap: Can't map beyond end of file %s\n",
> -+                    devmem);
> -+            free(p);
> -+            return NULL;
> -+    }
> -+
> - #ifdef _SC_PAGESIZE
> -     mmoffset = base % sysconf(_SC_PAGESIZE);
> - #else
> diff -Nru dmidecode-3.3/debian/patches/0110-nosysfs.patch 
> dmidecode-3.3/debian/patches/0110-nosysfs.patch
> --- dmidecode-3.3/debian/patches/0110-nosysfs.patch   2016-05-15 
> 12:53:07.000000000 +0200
> +++ dmidecode-3.3/debian/patches/0110-nosysfs.patch   1970-01-01 
> 01:00:00.000000000 +0100
> @@ -1,32 +0,0 @@
> -From 33b5aafc6ee6b5de9f2526fb1cf4b14d1e16e4f0 Mon Sep 17 00:00:00 2001
> -From: Roy Franz <roy.fr...@linaro.org>
> -Date: Thu, 01 Oct 2015 06:41:43 +0000
> -Subject: Add "--no-sysfs" option description to -h output
> -
> -A description of --no-sysfs was not added to the output of "-h" when
> -the feature was added, so add it now.
> ----
> -Index: trunk/CHANGELOG
> -===================================================================
> ---- trunk.orig/CHANGELOG
> -+++ trunk/CHANGELOG
> -@@ -1,3 +1,7 @@
> -+2015-10-01  Roy Franz  <roy.fr...@linaro.org>
> -+
> -+    * dmiopt.c: Add "--no-sysfs" option description to -h output.
> -+
> - 2015-09-03  Jean Delvare  <jdelv...@suse.de>
> - 
> -     * version.h: Set version to 3.0.
> -Index: trunk/dmiopt.c
> -===================================================================
> ---- trunk.orig/dmiopt.c
> -+++ trunk/dmiopt.c
> -@@ -314,6 +314,7 @@ void print_help(void)
> -             " -u, --dump             Do not decode the entries\n"
> -             "     --dump-bin FILE    Dump the DMI data to a binary file\n"
> -             "     --from-dump FILE   Read the DMI data from a binary file\n"
> -+            "     --no-sysfs         Do not attempt to read DMI data from 
> sysfs files\n"
> -             " -V, --version          Display the version and exit\n";
> - 
> -     printf("%s", help);
> diff -Nru dmidecode-3.3/debian/patches/0115-no_smbios_DMI_entry_point.patch 
> dmidecode-3.3/debian/patches/0115-no_smbios_DMI_entry_point.patch
> --- dmidecode-3.3/debian/patches/0115-no_smbios_DMI_entry_point.patch 
> 2016-05-15 12:59:42.000000000 +0200
> +++ dmidecode-3.3/debian/patches/0115-no_smbios_DMI_entry_point.patch 
> 1970-01-01 01:00:00.000000000 +0100
> @@ -1,55 +0,0 @@
> -From bf7bad24ce141dab5b5acc3ffb98ce5fe4a8e0f9 Mon Sep 17 00:00:00 2001
> -From: Xie XiuQi <xiexi...@huawei.com>
> -Date: Wed, 21 Oct 2015 13:12:50 +0000
> -Subject: Fix 'No SMBIOS nor DMI entry point found' on SMBIOS3
> -
> -address_from_efi may return a SMBIOS or SMBIOS3 format entry
> -point, so add this condition.
> ----
> -Index: trunk/AUTHORS
> -===================================================================
> ---- trunk.orig/AUTHORS
> -+++ trunk/AUTHORS
> -@@ -19,6 +19,7 @@ Jarod Wilson <ja...@redhat.com>
> - Anton Arapov <an...@redhat.com>
> - Roy Franz <roy.fr...@linaro.org>
> - Tyler Bell <tyler.b...@hp.com>
> -+Xie XiuQi <xiexi...@huawei.com>
> - 
> - MANY THANKS TO (IN CHRONOLOGICAL ORDER)
> - Werner Heuser
> -Index: trunk/CHANGELOG
> -===================================================================
> ---- trunk.orig/CHANGELOG
> -+++ trunk/CHANGELOG
> -@@ -1,3 +1,7 @@
> -+2015-10-21  Xie XiuQi  <xiexi...@huawei.com>
> -+
> -+    * dmidecode.c: Handle SMBIOS 3.0 entry points on EFI systems.
> -+
> - 2015-10-01  Roy Franz  <roy.fr...@linaro.org>
> - 
> -     * dmiopt.c: Add "--no-sysfs" option description to -h output.
> -Index: trunk/dmidecode.c
> -===================================================================
> ---- trunk.orig/dmidecode.c
> -+++ trunk/dmidecode.c
> -@@ -4864,8 +4864,16 @@ int main(int argc, char * const argv[])
> -             goto exit_free;
> -     }
> - 
> --    if (smbios_decode(buf, opt.devmem, 0))
> --            found++;
> -+    if (memcmp(buf, "_SM3_", 5) == 0)
> -+    {
> -+            if (smbios3_decode(buf, opt.devmem, 0))
> -+                    found++;
> -+    }
> -+    else if (memcmp(buf, "_SM_", 4) == 0)
> -+    {
> -+            if (smbios_decode(buf, opt.devmem, 0))
> -+                    found++;
> -+    }
> -     goto done;
> - 
> - memory_scan:
> diff -Nru dmidecode-3.3/debian/patches/0120-return_actual_data_size.patch 
> dmidecode-3.3/debian/patches/0120-return_actual_data_size.patch
> --- dmidecode-3.3/debian/patches/0120-return_actual_data_size.patch   
> 2016-05-15 13:06:37.000000000 +0200
> +++ dmidecode-3.3/debian/patches/0120-return_actual_data_size.patch   
> 1970-01-01 01:00:00.000000000 +0100
> @@ -1,103 +0,0 @@
> -From de9a74e1c60210bee229fcf55b1678a99d1b44dd Mon Sep 17 00:00:00 2001
> -From: Jean Delvare <jdelv...@suse.de>
> -Date: Mon, 02 Nov 2015 08:45:26 +0000
> -Subject: Let read_file return the actual data size
> -
> -Let read_file return the actual data size to the caller. This gives
> -the caller the possibility to check that the data size is as expected
> -and large enough for the purpose, and report to the user if not.
> ----
> -Index: trunk/CHANGELOG
> -===================================================================
> ---- trunk.orig/CHANGELOG
> -+++ trunk/CHANGELOG
> -@@ -1,3 +1,8 @@
> -+2015-11-02  Jean Delvare  <jdelv...@suse.de>
> -+
> -+    * dmidecode.c, util.c, util.h: Let read_file return the actual data
> -+      size.
> -+
> - 2015-10-21  Xie XiuQi  <xiexi...@huawei.com>
> - 
> -     * dmidecode.c: Handle SMBIOS 3.0 entry points on EFI systems.
> -Index: trunk/dmidecode.c
> -===================================================================
> ---- trunk.orig/dmidecode.c
> -+++ trunk/dmidecode.c
> -@@ -4748,6 +4748,7 @@ int main(int argc, char * const argv[])
> -     int ret = 0;                /* Returned value */
> -     int found = 0;
> -     off_t fp;
> -+    size_t size;
> -     int efi;
> -     u8 *buf;
> - 
> -@@ -4817,8 +4818,9 @@ 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(0x20, SYS_ENTRY_FILE)) != NULL)
> -+     && (buf = read_file(&size, SYS_ENTRY_FILE)) != NULL)
> -     {
> -             if (!(opt.flags & FLAG_QUIET))
> -                     printf("Getting SMBIOS data from sysfs.\n");
> -Index: trunk/util.c
> -===================================================================
> ---- trunk.orig/util.c
> -+++ trunk/util.c
> -@@ -94,10 +94,11 @@ int checksum(const u8 *buf, size_t len)
> -  * needs to be freed by the caller.
> -  * This provides a similar usage model to mem_chunk()
> -  *
> -- * Returns pointer to buffer of max_len bytes, or NULL on error
> -+ * Returns pointer to buffer of max_len bytes, or NULL on error, and
> -+ * sets max_len to the length actually read.
> -  *
> -  */
> --void *read_file(size_t max_len, const char *filename)
> -+void *read_file(size_t *max_len, const char *filename)
> - {
> -     int fd;
> -     size_t r2 = 0;
> -@@ -115,7 +116,7 @@ void *read_file(size_t max_len, const ch
> -             return(NULL);
> -     }
> - 
> --    if ((p = malloc(max_len)) == NULL)
> -+    if ((p = malloc(*max_len)) == NULL)
> -     {
> -             perror("malloc");
> -             return NULL;
> -@@ -123,7 +124,7 @@ void *read_file(size_t max_len, const ch
> - 
> -     do
> -     {
> --            r = read(fd, p + r2, max_len - r2);
> -+            r = read(fd, p + r2, *max_len - r2);
> -             if (r == -1)
> -             {
> -                     if (errno != EINTR)
> -@@ -140,6 +141,8 @@ void *read_file(size_t max_len, const ch
> -     while (r != 0);
> - 
> -     close(fd);
> -+    *max_len = r2;
> -+
> -     return p;
> - }
> - 
> -Index: trunk/util.h
> -===================================================================
> ---- trunk.orig/util.h
> -+++ trunk/util.h
> -@@ -25,7 +25,7 @@
> - #define ARRAY_SIZE(x) (sizeof(x)/sizeof((x)[0]))
> - 
> - int checksum(const u8 *buf, size_t len);
> --void *read_file(size_t len, const char *filename);
> -+void *read_file(size_t *len, const char *filename);
> - void *mem_chunk(off_t base, size_t len, const char *devmem);
> - int write_dump(size_t base, size_t len, const void *data, const char 
> *dumpfile, int add);
> - u64 u64_range(u64 start, u64 end);
> diff -Nru 
> dmidecode-3.3/debian/patches/0125-use_read_file_to_read_DMI_table_from_sysfs.patch
>  
> dmidecode-3.3/debian/patches/0125-use_read_file_to_read_DMI_table_from_sysfs.patch
> --- 
> dmidecode-3.3/debian/patches/0125-use_read_file_to_read_DMI_table_from_sysfs.patch
>         2016-05-15 13:11:56.000000000 +0200
> +++ 
> dmidecode-3.3/debian/patches/0125-use_read_file_to_read_DMI_table_from_sysfs.patch
>         1970-01-01 01:00:00.000000000 +0100
> @@ -1,78 +0,0 @@
> -From 364055211b1956539c6a6268e111e244e1292c8c Mon Sep 17 00:00:00 2001
> -From: Jean Delvare <jdelv...@suse.de>
> -Date: Mon, 02 Nov 2015 08:45:31 +0000
> -Subject: dmidecode: Use read_file() to read the DMI table from sysfs
> -
> -We shouldn't use mem_chunk() to read the DMI table from sysfs. This
> -will fail for SMBIOS v3 implementations which specify a maximum length
> -for the table rather than its exact length. The kernel will trim the
> -table to the actual length, so the DMI file will be shorter than the
> -length announced in entry point.
> -
> -read_file() fits the bill in this case, as it deals with end of file
> -nicely.
> -
> -This also helps with corrupted DMI tables, as the kernel will not
> -export the part of the table that it wasn't able to parse, effectively
> -trimming it.
> -
> -This fixes bug #46176:
> -https://savannah.nongnu.org/bugs/?46176
> -Unexpected end of file error
> ----
> -Index: trunk/CHANGELOG
> -===================================================================
> ---- trunk.orig/CHANGELOG
> -+++ trunk/CHANGELOG
> -@@ -2,6 +2,9 @@
> - 
> -     * 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  <xiexi...@huawei.com>
> - 
> -Index: trunk/dmidecode.c
> -===================================================================
> ---- trunk.orig/dmidecode.c
> -+++ trunk/dmidecode.c
> -@@ -4521,16 +4521,29 @@ static void dmi_table(off_t base, u32 le
> -             printf("\n");
> -     }
> - 
> --    /*
> --     * When we are reading the DMI table from sysfs, we want to print
> --     * the address of the table (done above), but the offset of the
> --     * data in the file is 0.  When reading from /dev/mem, the offset
> --     * in the file is the address.
> --     */
> -     if (flags & FLAG_NO_FILE_OFFSET)
> --            base = 0;
> -+    {
> -+            /*
> -+             * When reading from sysfs, the file may be shorter than
> -+             * announced. For SMBIOS v3 this is expcted, as we only know
> -+             * the maximum table size, not the actual table size. For older
> -+             * implementations (and for SMBIOS v3 too), this would be the
> -+             * result of the kernel truncating the table on parse error.
> -+             */
> -+            size_t size = len;
> -+            buf = read_file(&size, devmem);
> -+            if (!(opt.flags & FLAG_QUIET) && num && size != (size_t)len)
> -+            {
> -+                    printf("Wrong DMI structures length: %u bytes "
> -+                            "announced, only %lu bytes available.\n",
> -+                            len, (unsigned long)size);
> -+            }
> -+            len = size;
> -+    }
> -+    else
> -+            buf = mem_chunk(base, len, devmem);
> - 
> --    if ((buf = mem_chunk(base, len, devmem)) == NULL)
> -+    if (buf == NULL)
> -     {
> -             fprintf(stderr, "Table is unreachable, sorry."
> - #ifndef USE_MMAP
> diff -Nru 
> dmidecode-3.3/debian/patches/0130-use_DWORD_for_table_max_size.patch 
> dmidecode-3.3/debian/patches/0130-use_DWORD_for_table_max_size.patch
> --- dmidecode-3.3/debian/patches/0130-use_DWORD_for_table_max_size.patch      
> 2016-05-15 13:14:12.000000000 +0200
> +++ dmidecode-3.3/debian/patches/0130-use_DWORD_for_table_max_size.patch      
> 1970-01-01 01:00:00.000000000 +0100
> @@ -1,27 +0,0 @@
> -From ab02b117511230e46bbef7febbd854b9c832c13c Mon Sep 17 00:00:00 2001
> -From: Xie XiuQi <xiexi...@huawei.com>
> -Date: Mon, 01 Feb 2016 08:30:31 +0000
> -Subject: Use DWORD for Structure table maximum size in SMBIOS3
> -
> -0Ch DWORD "Structure table maximum size"
> -
> -Maximum size of SMBIOS Structure Table, pointed to by
> -the Structure Table Address, in bytes. The actual size is
> -guaranteed to be less or equal to the maximum size.
> -
> -Signed-off-by: Xie XiuQi <xiexi...@huawei.com>
> -Signed-off-by: Jean Delvare <jdelv...@suse.de>
> ----
> -Index: trunk/dmidecode.c
> -===================================================================
> ---- trunk.orig/dmidecode.c
> -+++ trunk/dmidecode.c
> -@@ -4612,7 +4612,7 @@ static int smbios3_decode(u8 *buf, const
> -     }
> - 
> -     dmi_table(((off_t)offset.h << 32) | offset.l,
> --              WORD(buf + 0x0C), 0, ver, devmem, flags | FLAG_STOP_AT_EOT);
> -+              DWORD(buf + 0x0C), 0, ver, devmem, flags | FLAG_STOP_AT_EOT);
> - 
> -     if (opt.flags & FLAG_DUMP_BIN)
> -     {
> diff -Nru dmidecode-3.3/debian/patches/0135-hide_fixup_msg.patch 
> dmidecode-3.3/debian/patches/0135-hide_fixup_msg.patch
> --- dmidecode-3.3/debian/patches/0135-hide_fixup_msg.patch    2016-05-15 
> 13:18:54.000000000 +0200
> +++ dmidecode-3.3/debian/patches/0135-hide_fixup_msg.patch    1970-01-01 
> 01:00:00.000000000 +0100
> @@ -1,46 +0,0 @@
> -From cff11afa886a0147d734b650755d232b5e7f2099 Mon Sep 17 00:00:00 2001
> -From: Jean Delvare <jdelv...@suse.de>
> -Date: Tue, 03 May 2016 13:32:21 +0000
> -Subject: dmidecode: Hide irrelevant fixup message
> -
> -Only display the message about type 34 length fixup if the entry in
> -question is going to be displayed. Otherwise it's only confusing.
> -
> -This fixes bug #109024:
> -http://savannah.nongnu.org/support/?109024
> -
> -Fixes: 3f70b3515d91 ("dmidecode: Fix up invalid DMI type 34 structure 
> length")
> ----
> -Index: trunk/dmidecode.c
> -===================================================================
> ---- trunk.orig/dmidecode.c
> -+++ trunk/dmidecode.c
> -@@ -2946,7 +2946,7 @@ static void dmi_64bit_memory_error_addre
> -  * first 5 characters of the device name to be trimmed. It's easy to
> -  * check and fix, so do it, but warn.
> -  */
> --static void dmi_fixup_type_34(struct dmi_header *h)
> -+static void dmi_fixup_type_34(struct dmi_header *h, int display)
> - {
> -     u8 *p = h->data;
> - 
> -@@ -2954,7 +2954,9 @@ static void dmi_fixup_type_34(struct dmi
> -     if (h->length == 0x10
> -      && is_printable(p + 0x0B, 0x10 - 0x0B))
> -     {
> --            printf("Invalid entry length (%u). Fixed up to %u.\n", 0x10, 
> 0x0B);
> -+            if (!(opt.flags & FLAG_QUIET) && display)
> -+                    printf("Invalid entry length (%u). Fixed up to %u.\n",
> -+                            0x10, 0x0B);
> -             h->length = 0x0B;
> -     }
> - }
> -@@ -4443,7 +4445,7 @@ static void dmi_table_decode(u8 *buf, u3
> - 
> -             /* Fixup a common mistake */
> -             if (h.type == 34)
> --                    dmi_fixup_type_34(&h);
> -+                    dmi_fixup_type_34(&h, display);
> - 
> -             /* look for the next handle */
> -             next = data + h.length;
> diff -Nru dmidecode-3.3/debian/patches/0140-Fix_scan_entry_point.patch 
> dmidecode-3.3/debian/patches/0140-Fix_scan_entry_point.patch
> --- dmidecode-3.3/debian/patches/0140-Fix_scan_entry_point.patch      
> 2020-04-11 12:42:50.000000000 +0200
> +++ dmidecode-3.3/debian/patches/0140-Fix_scan_entry_point.patch      
> 1970-01-01 01:00:00.000000000 +0100
> @@ -1,54 +0,0 @@
> -Description: Cherry picked fix Only scan /dev/mem for entry point on x86
> -Author: <name and email of author, optional>
> -Origin: upstream, 
> http://git.savannah.nongnu.org/cgit/dmidecode.git/commit/?id=e12ec26e19e02281d3e7258c3aabb88a5cf5ec1d
> -Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=946911
> -Last-Update: 2019-12-19
> ----
> -This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
> -Index: trunk/dmidecode.c
> -===================================================================
> ---- trunk.orig/dmidecode.c
> -+++ trunk/dmidecode.c
> -@@ -2,7 +2,7 @@
> -  * DMI Decode
> -  *
> -  *   Copyright (C) 2000-2002 Alan Cox <a...@redhat.com>
> -- *   Copyright (C) 2002-2018 Jean Delvare <jdelv...@suse.de>
> -+ *   Copyright (C) 2002-2019 Jean Delvare <jdelv...@suse.de>
> -  *
> -  *   This program is free software; you can redistribute it and/or modify
> -  *   it under the terms of the GNU General Public License as published by
> -@@ -5534,7 +5534,7 @@ int main(int argc, char * const argv[])
> -     off_t fp;
> -     size_t size;
> -     int efi;
> --    u8 *buf;
> -+    u8 *buf = NULL;
> - 
> -     /*
> -      * We don't want stdout and stderr to be mixed up if both are
> -@@ -5638,7 +5638,7 @@ int main(int argc, char * const argv[])
> -                     printf("Failed to get SMBIOS data from sysfs.\n");
> -     }
> - 
> --    /* Next try EFI (ia64, Intel-based Mac) */
> -+    /* Next try EFI (ia64, Intel-based Mac, arm64) */
> -     efi = address_from_efi(&fp);
> -     switch (efi)
> -     {
> -@@ -5671,6 +5671,7 @@ int main(int argc, char * const argv[])
> -     goto done;
> - 
> - memory_scan:
> -+#if defined __i386__ || defined __x86_64__
> -     if (!(opt.flags & FLAG_QUIET))
> -             printf("Scanning %s for entry point.\n", opt.devmem);
> -     /* Fallback to memory scan (x86, x86_64) */
> -@@ -5713,6 +5714,7 @@ memory_scan:
> -                     }
> -             }
> -     }
> -+#endif
> - 
> - done:
> -     if (!found && !(opt.flags & FLAG_QUIET))
> diff -Nru 
> dmidecode-3.3/debian/patches/0145-Fix_condition_error_in_ascii_filter.patch 
> dmidecode-3.3/debian/patches/0145-Fix_condition_error_in_ascii_filter.patch
> --- 
> dmidecode-3.3/debian/patches/0145-Fix_condition_error_in_ascii_filter.patch   
>     1970-01-01 01:00:00.000000000 +0100
> +++ 
> dmidecode-3.3/debian/patches/0145-Fix_condition_error_in_ascii_filter.patch   
>     2021-05-07 08:41:39.000000000 +0200
> @@ -0,0 +1,18 @@
> +Description: Fix the condition error in ascii_filter
> +Origin: upstream, 
> http://git.savannah.gnu.org/cgit/dmidecode.git/commit/?id=1117390ccd9cea139638db6f460bb6de70e28f94
> +Last-Update: 2021-05-07
> +---
> +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
> +Index: trunk/dmidecode.c
> +===================================================================
> +--- trunk.orig/dmidecode.c
> ++++ trunk/dmidecode.c
> +@@ -116,7 +116,7 @@ static void ascii_filter(char *bp, size_
> +     size_t i;
> + 
> +     for (i = 0; i < len; i++)
> +-            if (bp[i] < 32 || bp[i] == 127)
> ++            if (bp[i] < 32 || bp[i] >= 127)
> +                     bp[i] = '.';
> + }
> + 
> diff -Nru dmidecode-3.3/debian/patches/0150-Fix_crash.patch 
> dmidecode-3.3/debian/patches/0150-Fix_crash.patch
> --- dmidecode-3.3/debian/patches/0150-Fix_crash.patch 1970-01-01 
> 01:00:00.000000000 +0100
> +++ dmidecode-3.3/debian/patches/0150-Fix_crash.patch 2021-05-07 
> 08:44:07.000000000 +0200
> @@ -0,0 +1,21 @@
> +Description: Fix crash with -u option
> +Origin: upstream, 
> http://git.savannah.gnu.org/cgit/dmidecode.git/commit/?id=11e134e54d15e67a64c39a623f492a28df922517
> +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=987033
> +Last-Update: 2021-05-07
> +---
> +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
> +Index: trunk/dmidecode.c
> +===================================================================
> +--- trunk.orig/dmidecode.c
> ++++ trunk/dmidecode.c
> +@@ -248,9 +248,9 @@ static void dmi_dump(const struct dmi_he
> +                     {
> +                             int j, l = strlen(s) + 1;
> + 
> +-                            off = 0;
> +                             for (row = 0; row < ((l - 1) >> 4) + 1; row++)
> +                             {
> ++                                    off = 0;
> +                                     for (j = 0; j < 16 && j < l - (row << 
> 4); j++)
> +                                             off += sprintf(raw_data + off,
> +                                                    j ? " %02X" : "%02X",
> diff -Nru dmidecode-3.3/debian/patches/series 
> dmidecode-3.3/debian/patches/series
> --- dmidecode-3.3/debian/patches/series       2020-10-17 09:39:24.000000000 
> +0200
> +++ dmidecode-3.3/debian/patches/series       2021-05-07 09:04:48.000000000 
> +0200
> @@ -1,11 +1,4 @@
> +0145-Fix_condition_error_in_ascii_filter.patch
> +0150-Fix_crash.patch
>  0100-ansi-c.patch
>  0001-hurd.patch
> -#0005-build.patch
> -#0105-dmidecode-avoid-sigbus.patch
> -#0110-nosysfs.patch
> -#0115-no_smbios_DMI_entry_point.patch
> -#0120-return_actual_data_size.patch
> -#0125-use_read_file_to_read_DMI_table_from_sysfs.patch
> -#0130-use_DWORD_for_table_max_size.patch
> -#0135-hide_fixup_msg.patch
> -#0140-Fix_scan_entry_point.patch


-- 
Sebastian Ramacher

Attachment: signature.asc
Description: PGP signature

Reply via email to