update to 0.2.16.01
This commit is contained in:
parent
61f64e0558
commit
7729bd08da
@ -1,94 +0,0 @@
|
||||
From 2d4e6952417ec6f08b6f135d2b5d0e19b7dae30d Mon Sep 17 00:00:00 2001
|
||||
From: "H. Peter Anvin" <hpa@zytor.com>
|
||||
Date: Mon, 7 Nov 2022 10:26:03 -0800
|
||||
Subject: [PATCH] quote_for_pmake: fix counter underrun resulting in segfault
|
||||
|
||||
while (nbs--) { ... } ends with nbs == -1. Rather than a minimal fix,
|
||||
introduce mempset() to make these kinds of errors less likely in the
|
||||
future.
|
||||
|
||||
Fixes: https://bugzilla.nasm.us/show_bug.cgi?id=3392815
|
||||
Reported-by: <13579and24680@gmail.com>
|
||||
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
||||
---
|
||||
asm/nasm.c | 12 +++++-------
|
||||
configure.ac | 1 +
|
||||
include/compiler.h | 7 +++++++
|
||||
3 files changed, 13 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/asm/nasm.c b/asm/nasm.c
|
||||
index 6af927547..1e337c7ba 100644
|
||||
--- a/asm/nasm.c
|
||||
+++ b/asm/nasm.c
|
||||
@@ -1,6 +1,6 @@
|
||||
/* ----------------------------------------------------------------------- *
|
||||
*
|
||||
- * Copyright 1996-2020 The NASM Authors - All Rights Reserved
|
||||
+ * Copyright 1996-2022 The NASM Authors - All Rights Reserved
|
||||
* See the file AUTHORS included with the NASM distribution for
|
||||
* the specific copyright holders.
|
||||
*
|
||||
@@ -817,8 +817,7 @@ static char *quote_for_pmake(const char *str)
|
||||
}
|
||||
|
||||
/* Convert N backslashes at the end of filename to 2N backslashes */
|
||||
- if (nbs)
|
||||
- n += nbs;
|
||||
+ n += nbs;
|
||||
|
||||
os = q = nasm_malloc(n);
|
||||
|
||||
@@ -827,10 +826,10 @@ static char *quote_for_pmake(const char *str)
|
||||
switch (*p) {
|
||||
case ' ':
|
||||
case '\t':
|
||||
- while (nbs--)
|
||||
- *q++ = '\\';
|
||||
+ q = mempset(q, '\\', nbs);
|
||||
*q++ = '\\';
|
||||
*q++ = *p;
|
||||
+ nbs = 0;
|
||||
break;
|
||||
case '$':
|
||||
*q++ = *p;
|
||||
@@ -852,9 +851,8 @@ static char *quote_for_pmake(const char *str)
|
||||
break;
|
||||
}
|
||||
}
|
||||
- while (nbs--)
|
||||
- *q++ = '\\';
|
||||
|
||||
+ q = mempset(q, '\\', nbs);
|
||||
*q = '\0';
|
||||
|
||||
return os;
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 04a9f648b..42cd19884 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -200,6 +200,7 @@ AC_CHECK_FUNCS(strrchrnul)
|
||||
AC_CHECK_FUNCS(iscntrl)
|
||||
AC_CHECK_FUNCS(isascii)
|
||||
AC_CHECK_FUNCS(mempcpy)
|
||||
+AC_CHECK_FUNCS(mempset)
|
||||
|
||||
AC_CHECK_FUNCS(getuid)
|
||||
AC_CHECK_FUNCS(getgid)
|
||||
diff --git a/include/compiler.h b/include/compiler.h
|
||||
index c5bac6e57..407c16093 100644
|
||||
--- a/include/compiler.h
|
||||
+++ b/include/compiler.h
|
||||
@@ -252,6 +252,13 @@ static inline void *mempcpy(void *dst, const void *src, size_t n)
|
||||
}
|
||||
#endif
|
||||
|
||||
+#ifndef HAVE_MEMPSET
|
||||
+static inline void *mempset(void *dst, int c, size_t n)
|
||||
+{
|
||||
+ return (char *)memset(dst, c, n) + n;
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
/*
|
||||
* Hack to support external-linkage inline functions
|
||||
*/
|
||||
@ -12,18 +12,18 @@ diff --git a/Makefile.in b/Makefile.in
|
||||
index 5725ed3..9282215 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -497,10 +497,10 @@ splint:
|
||||
@@ -459,10 +459,10 @@
|
||||
splint -weak *.c
|
||||
|
||||
test: nasm$(X)
|
||||
test: $(PROGS)
|
||||
- cd test && $(RUNPERL) performtest.pl --nasm=../nasm *.asm
|
||||
+ cd test && $(RUNPERL) performtest.pl --nasm=../nasm *.asm --verbose
|
||||
|
||||
golden: nasm$(X)
|
||||
golden: $(PROGS)
|
||||
- cd test && $(RUNPERL) performtest.pl --golden --nasm=../nasm *.asm
|
||||
+ cd test && $(RUNPERL) performtest.pl --golden --nasm=../nasm *.asm --verbose
|
||||
|
||||
travis: nasm$(X)
|
||||
travis: $(PROGS)
|
||||
$(PYTHON3) travis/nasm-t.py run
|
||||
--
|
||||
2.23.0
|
||||
|
||||
Binary file not shown.
Binary file not shown.
BIN
nasm-2.16.01-xdoc.tar.xz
Normal file
BIN
nasm-2.16.01-xdoc.tar.xz
Normal file
Binary file not shown.
BIN
nasm-2.16.01.tar.xz
Normal file
BIN
nasm-2.16.01.tar.xz
Normal file
Binary file not shown.
37
nasm.spec
37
nasm.spec
@ -7,23 +7,19 @@
|
||||
%endif
|
||||
|
||||
Name: nasm
|
||||
Version: 2.15.05
|
||||
Release: 5
|
||||
Version: 2.16.01
|
||||
Release: 1
|
||||
Summary: The Netwide Assembler, a portable x86 assembler with Intel-like syntax
|
||||
License: BSD-2-Clause
|
||||
URL: http://www.nasm.us
|
||||
Source0: http://www.nasm.us/pub/nasm/releasebuilds/%{version}/%{name}-%{version}.tar.bz2
|
||||
Source1: http://www.nasm.us/pub/nasm/releasebuilds/%{version}/%{name}-%{version}-xdoc.tar.bz2
|
||||
Source0: http://www.nasm.us/pub/nasm/releasebuilds/%{version}/%{name}-%{version}.tar.xz
|
||||
Source1: http://www.nasm.us/pub/nasm/releasebuilds/%{version}/%{name}-%{version}-xdoc.tar.xz
|
||||
|
||||
Patch6000: enable-make-check.patch
|
||||
Patch6001: fix-help-info-error.patch
|
||||
# https://github.com/netwide-assembler/nasm/commit/2d4e6952417ec6f08b6f135d2b5d0e19b7dae30d
|
||||
Patch6002: CVE-2022-44370.patch
|
||||
#https://bugzilla.nasm.us/attachment.cgi?id=411648
|
||||
BuildRequires: perl(Env) autoconf asciidoc xmlto gcc make git
|
||||
|
||||
Provides: %{name}-rdoff
|
||||
Obsoletes: %{name}-rdoff
|
||||
BuildRequires: perl(Env) autoconf asciidoc xmlto gcc make git automake
|
||||
Obsoletes: nasm-rdoff < 2.16.01-1
|
||||
|
||||
%description
|
||||
NASM is the Netwide Assembler, a free portable assembler for the Intel
|
||||
@ -35,7 +31,7 @@ format, includes linker, library manager, loader, and information dump.
|
||||
Summary: Help files for NASM
|
||||
%if %{with documentation}
|
||||
BuildRequires: perl(Font::TTF::Font) perl(File::Spec)
|
||||
BuildRequires: perl(Sort::Versions)
|
||||
BuildRequires: perl(Sort::Versions) perl(sort)
|
||||
BuildRequires: adobe-source-sans-pro-fonts adobe-source-code-pro-fonts
|
||||
BuildRequires: ghostscript
|
||||
Provides: %{name}-doc
|
||||
@ -49,6 +45,7 @@ and text formats.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{name}-%{version} -p1
|
||||
tar xJf %{SOURCE1} --strip-components 1
|
||||
|
||||
%build
|
||||
%configure
|
||||
@ -60,7 +57,7 @@ make all %{?_smp_mflags}
|
||||
%endif
|
||||
|
||||
%install
|
||||
%make_install install_rdf
|
||||
%make_install
|
||||
|
||||
%check
|
||||
make golden
|
||||
@ -68,18 +65,9 @@ make test
|
||||
|
||||
%files
|
||||
%doc CHANGES README.md
|
||||
%license AUTHORS
|
||||
%license AUTHORS LICENSE
|
||||
%{_bindir}/nasm
|
||||
%{_bindir}/ndisasm
|
||||
%{_bindir}/ldrdf
|
||||
%{_bindir}/rdf2bin
|
||||
%{_bindir}/rdf2ihx
|
||||
%{_bindir}/rdf2com
|
||||
%{_bindir}/rdfdump
|
||||
%{_bindir}/rdflib
|
||||
%{_bindir}/rdx
|
||||
%{_bindir}/rdf2ith
|
||||
%{_bindir}/rdf2srec
|
||||
|
||||
%files help
|
||||
%if %{with documentation}
|
||||
@ -87,10 +75,11 @@ make test
|
||||
%endif
|
||||
%{_mandir}/man1/nasm*
|
||||
%{_mandir}/man1/ndisasm*
|
||||
%{_mandir}/man1/rd*
|
||||
%{_mandir}/man1/ld*
|
||||
|
||||
%changelog
|
||||
* Thu May 18 2023 liyanan <thistleslyn@163.com> - 2.16.01-1
|
||||
- update to 2.16.01
|
||||
|
||||
* Wed Apr 12 2023 yaoxin <yao_xin001@hoperun.com> - 2.15.05-5
|
||||
- Fix CVE-2022-44370
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user