!38 [sync] PR-34: backport patch from upstream
From: @openeuler-sync-bot Reviewed-by: @xujing99 Signed-off-by: @xujing99
This commit is contained in:
commit
a95f3b583d
@ -0,0 +1,35 @@
|
|||||||
|
From a886ea40a29a08954ff80772e267828a1d440cc9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Eric Blake <eblake@redhat.com>
|
||||||
|
Date: Fri, 13 Jan 2023 16:27:54 -0600
|
||||||
|
Subject: [PATCH] output: Avoid tickling UBSAN with memcpy(dest, NULL, 0)
|
||||||
|
|
||||||
|
Even though all libc handle it sanely (because size 0 says there is
|
||||||
|
nothing to copy), NULL is not a valid source pointer per a strict
|
||||||
|
reading of C, so UBSAN flags it:
|
||||||
|
|
||||||
|
+output.c:511:9: runtime error: null pointer passed as argument 2, which is declared to never be null
|
||||||
|
|
||||||
|
* src/output.c (make_room_for): Skip no-op memcpy.
|
||||||
|
Fixes: https://savannah.gnu.org/support/index.php?110809
|
||||||
|
Reported-by: Sam James
|
||||||
|
---
|
||||||
|
src/output.c | 3 ++-
|
||||||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/output.c b/src/output.c
|
||||||
|
index 956089b1..6dc8280a 100644
|
||||||
|
--- a/src/output.c
|
||||||
|
+++ b/src/output.c
|
||||||
|
@@ -508,7 +508,8 @@ make_room_for (int length)
|
||||||
|
{
|
||||||
|
char *buffer = output_diversion->u.buffer;
|
||||||
|
output_diversion->u.buffer = xcharalloc ((size_t) wanted_size);
|
||||||
|
- memcpy (output_diversion->u.buffer, buffer, output_diversion->used);
|
||||||
|
+ if (output_diversion->used)
|
||||||
|
+ memcpy (output_diversion->u.buffer, buffer, output_diversion->used);
|
||||||
|
free (buffer);
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.33.0
|
||||||
|
|
||||||
6
m4.spec
6
m4.spec
@ -1,11 +1,12 @@
|
|||||||
Name: m4
|
Name: m4
|
||||||
Version: 1.4.19
|
Version: 1.4.19
|
||||||
Release: 3
|
Release: 4
|
||||||
Summary: A GNU implementation of macro processor
|
Summary: A GNU implementation of macro processor
|
||||||
License: GPLv3+
|
License: GPLv3+
|
||||||
URL: https://www.gnu.org/software/m4/
|
URL: https://www.gnu.org/software/m4/
|
||||||
Source0: https://ftp.gnu.org/gnu/m4/%{name}-%{version}.tar.xz
|
Source0: https://ftp.gnu.org/gnu/m4/%{name}-%{version}.tar.xz
|
||||||
Patch1: 0001-Delete-test-execute_sh.patch
|
Patch1: 0001-Delete-test-execute_sh.patch
|
||||||
|
Patch6000: backport-output-Avoid-tickling-UBSAN-with-memcpy-dest-NULL-0.patch
|
||||||
|
|
||||||
BuildRequires: gcc autoconf automake gettext-devel
|
BuildRequires: gcc autoconf automake gettext-devel
|
||||||
Provides: bundled(gnulib)
|
Provides: bundled(gnulib)
|
||||||
@ -55,6 +56,9 @@ make check
|
|||||||
%{_infodir}/m4*
|
%{_infodir}/m4*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Jul 31 2024 zhangruifang <zhangruifang@h-partners.com> - 1.4.19-4
|
||||||
|
- backport patch from upstream
|
||||||
|
|
||||||
* Tue Oct 25 2022 renhongxun <renhongxun@h-partners.com> - 1.4.19-3
|
* Tue Oct 25 2022 renhongxun <renhongxun@h-partners.com> - 1.4.19-3
|
||||||
- Rebuild for next release
|
- Rebuild for next release
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user