[oe-commits] [openembedded-core] 01/17: nasm: Upgrade 2.13.03 -> 2.14

git at git.openembedded.org git at git.openembedded.org
Mon Nov 19 17:04:27 UTC 2018


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master-next
in repository openembedded-core.

commit ac9b892f06237a384a60d0404e6ed0afd63c1005
Author: Richard Purdie <richard.purdie at linuxfoundation.org>
AuthorDate: Sat Nov 17 17:19:41 2018 +0000

    nasm: Upgrade 2.13.03 -> 2.14
    
    The patches are all backports or have equivalent changes in the new
    release so can be dropped.
    
    Upstream reworked the install handling to use DESTDIR instead of INSTALLROOT
    and we no longer need to create directories.
    
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 ...t-we-are-not-reading-past-end-of-a-buffer.patch | 65 ----------------------
 ...rop-pure-function-attribute-from-seg_init.patch | 27 ---------
 .../0001-assemble-Check-global-line-limit.patch    | 50 -----------------
 .../0001-eval-Eliminate-division-by-zero.patch     | 40 -------------
 .../nasm/nasm/0001-fix-CVE-2018-8882.patch         | 30 ----------
 ...proc-parse_size-Check-for-string-provided.patch | 37 ------------
 meta/recipes-devtools/nasm/nasm_2.13.03.bb         | 35 ------------
 meta/recipes-devtools/nasm/nasm_2.14.bb            | 25 +++++++++
 8 files changed, 25 insertions(+), 284 deletions(-)

diff --git a/meta/recipes-devtools/nasm/nasm/0001-Verify-that-we-are-not-reading-past-end-of-a-buffer.patch b/meta/recipes-devtools/nasm/nasm/0001-Verify-that-we-are-not-reading-past-end-of-a-buffer.patch
deleted file mode 100644
index a56a08b..0000000
--- a/meta/recipes-devtools/nasm/nasm/0001-Verify-that-we-are-not-reading-past-end-of-a-buffer.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From c5785fdf1d660eaefb9711284414262d0cfe8843 Mon Sep 17 00:00:00 2001
-From: Adam Majer <amajer at suse.de>
-Date: Fri, 17 Aug 2018 14:48:17 +0800
-Subject: [PATCH] Verify that we are not reading past end of a buffer
-
-Simple reproducer is just,
-
-    ret &d:ep
-
-which triggers a buffer overread due to parsing of an invalid
-segment override.
-
-Signed-off-by: Adam Majer <amajer at suse.de>
-
-Upstream-Status: Submitted [https://bugzilla.nasm.us/show_bug.cgi?id=3392447]
-CVE: CVE-2018-8883
-Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
----
- include/opflags.h | 2 +-
- include/tables.h  | 1 +
- x86/regs.pl       | 3 ++-
- 3 files changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/include/opflags.h b/include/opflags.h
-index ef2838c1..8d4b6b1e 100644
---- a/include/opflags.h
-+++ b/include/opflags.h
-@@ -166,7 +166,7 @@
- #define REG_CLASS_BND           GEN_REG_CLASS(9)
- 
- #define is_class(class, op)         (!((opflags_t)(class) & ~(opflags_t)(op)))
--#define is_reg_class(class, reg)    is_class((class), nasm_reg_flags[(reg)])
-+#define is_reg_class(class, reg)    is_class((class), ((reg) < nasm_reg_flags_size ? nasm_reg_flags[(reg)] : 0))
- 
- #define IS_SREG(reg)                is_reg_class(REG_SREG, (reg))
- #define IS_FSGS(reg)                is_reg_class(REG_FSGS, (reg))
-diff --git a/include/tables.h b/include/tables.h
-index 24a665e2..458752ce 100644
---- a/include/tables.h
-+++ b/include/tables.h
-@@ -64,6 +64,7 @@ extern const char * const nasm_reg_names[];
- typedef uint64_t opflags_t;
- typedef uint16_t  decoflags_t;
- extern const opflags_t nasm_reg_flags[];
-+extern const size_t nasm_reg_flags_size;
- /* regvals.c */
- extern const int nasm_regvals[];
- 
-diff --git a/x86/regs.pl b/x86/regs.pl
-index 3a1b56f5..cb5cea68 100755
---- a/x86/regs.pl
-+++ b/x86/regs.pl
-@@ -158,7 +158,8 @@ if ( $fmt eq 'h' ) {
- 	printf "    %-15s /* %-5s */\n",
- 		$regs{$reg}.',', $reg;
-     }
--    print "};\n";
-+    print "};\n\n";
-+    print "const size_t nasm_reg_flags_size = sizeof(nasm_reg_flags) / sizeof(opflags_t);\n";
- } elsif ( $fmt eq 'vc' ) {
-     # Output regvals.c
-     print "/* automatically generated from $file - do not edit */\n\n";
--- 
-2.17.1
-
diff --git a/meta/recipes-devtools/nasm/nasm/0001-asmlib-Drop-pure-function-attribute-from-seg_init.patch b/meta/recipes-devtools/nasm/nasm/0001-asmlib-Drop-pure-function-attribute-from-seg_init.patch
deleted file mode 100644
index 12ae3a9..0000000
--- a/meta/recipes-devtools/nasm/nasm/0001-asmlib-Drop-pure-function-attribute-from-seg_init.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 77c3a77210d8ca8b94e999c711156e984a8dc737 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem at gmail.com>
-Date: Sat, 31 Mar 2018 11:05:33 -0700
-Subject: [PATCH] asmlib: Drop pure function attribute from seg_init
-
-seg_init returns void, so it is impure function
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
----
-Upstream-Status: Submitted
-
- include/nasmlib.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/include/nasmlib.h b/include/nasmlib.h
-index 79e866b..b80b7e2 100644
---- a/include/nasmlib.h
-+++ b/include/nasmlib.h
-@@ -191,7 +191,7 @@ int64_t readstrnum(char *str, int length, bool *warn);
-  * seg_init: Initialise the segment-number allocator.
-  * seg_alloc: allocate a hitherto unused segment number.
-  */
--void pure_func seg_init(void);
-+void seg_init(void);
- int32_t pure_func seg_alloc(void);
- 
- /*
diff --git a/meta/recipes-devtools/nasm/nasm/0001-assemble-Check-global-line-limit.patch b/meta/recipes-devtools/nasm/nasm/0001-assemble-Check-global-line-limit.patch
deleted file mode 100644
index 682d4c7..0000000
--- a/meta/recipes-devtools/nasm/nasm/0001-assemble-Check-global-line-limit.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 7a46d6b9e3a1d8a0ab0d816ef1bf194ad285e082 Mon Sep 17 00:00:00 2001
-From: "Chang S. Bae" <chang.seok.bae at intel.com>
-Date: Fri, 17 Aug 2018 14:26:03 +0800
-Subject: [PATCH] assemble: Check global line limit
-
-Without the limit, the while loop opens to semi-infinite
-that will exhaustively consume the heap space. Also, the
-index value gets into the garbage.
-
-https://bugzilla.nasm.us/show_bug.cgi?id=3392474
-
-Reported-by : Dongliang Mu <mudongliangabcd at gmail.com>
-Signed-off-by: Chang S. Bae <chang.seok.bae at intel.com>
-Signed-off-by: Cyrill Gorcunov <gorcunov at gmail.com>
-
-Upstream-Status: Backport from upstream [http://repo.or.cz/nasm.git]
-CVE: CVE-2018-10316
-Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
----
- asm/nasm.c | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/asm/nasm.c b/asm/nasm.c
-index 8497ec9..81f6cee 100644
---- a/asm/nasm.c
-+++ b/asm/nasm.c
-@@ -99,6 +99,8 @@ static char outname[FILENAME_MAX];
- static char listname[FILENAME_MAX];
- static char errname[FILENAME_MAX];
- static int globallineno;        /* for forward-reference tracking */
-+#define GLOBALLINENO_MAX    INT32_MAX
-+
- /* static int pass = 0; */
- const struct ofmt *ofmt = &OF_DEFAULT;
- const struct ofmt_alias *ofmt_alias = NULL;
-@@ -1360,7 +1362,10 @@ static void assemble_file(char *fname, StrList **depend_ptr)
-         location.offset = offs = get_curr_offs();
- 
-         while ((line = preproc->getline())) {
--            globallineno++;
-+            if (globallineno++ == GLOBALLINENO_MAX)
-+                nasm_error(ERR_FATAL,
-+                    "overall line number reaches the maximum %d\n",
-+                    GLOBALLINENO_MAX);
- 
-             /*
-              * Here we parse our directives; this is not handled by the
--- 
-2.7.4
-
diff --git a/meta/recipes-devtools/nasm/nasm/0001-eval-Eliminate-division-by-zero.patch b/meta/recipes-devtools/nasm/nasm/0001-eval-Eliminate-division-by-zero.patch
deleted file mode 100644
index 6c33249..0000000
--- a/meta/recipes-devtools/nasm/nasm/0001-eval-Eliminate-division-by-zero.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From ceec0d818798aeaa75ed4907e6135b0247ed46b2 Mon Sep 17 00:00:00 2001
-From: Cyrill Gorcunov <gorcunov at gmail.com>
-Date: Sun, 14 Oct 2018 01:26:19 +0300
-Subject: [PATCH] eval: Eliminate division by zero
-
-When doing division we should detect if the value we're
-divided by is not zero. Instead of is_unknown() helper
-we should use is_just_unknown().
-
-https://bugzilla.nasm.us/show_bug.cgi?id=3392515
-https://bugzilla.nasm.us/show_bug.cgi?id=3392473
-
-Reported-by: Jun <jxx13 at psu.edu>
-Reported-by: stuartly <situlingyun at gmail.com>
-Signed-off-by: Cyrill Gorcunov <gorcunov at gmail.com>
-
-Upstream-Status: Backport [https://github.com/netwide-assembler/nasm/commit/ceec0d818798aeaa75ed4907e6135b0247ed46b2.patch]
-CVE: CVE-2018-10016
-Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
-
----
- asm/eval.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/asm/eval.c b/asm/eval.c
-index 1a6680f..7e727a4 100644
---- a/asm/eval.c
-+++ b/asm/eval.c
-@@ -580,7 +580,7 @@ static expr *expr5(int critical)
-                   " scalar values");
-             return NULL;
-         }
--        if (j != '*' && !is_unknown(f) && reloc_value(f) == 0) {
-+        if (j != '*' && !is_just_unknown(f) && reloc_value(f) == 0) {
-             nasm_error(ERR_NONFATAL, "division by zero");
-             return NULL;
-         }
--- 
-2.10.2
-
diff --git a/meta/recipes-devtools/nasm/nasm/0001-fix-CVE-2018-8882.patch b/meta/recipes-devtools/nasm/nasm/0001-fix-CVE-2018-8882.patch
deleted file mode 100644
index bc706c3..0000000
--- a/meta/recipes-devtools/nasm/nasm/0001-fix-CVE-2018-8882.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 33438037e00ec750bff020578b1a5b6f75f60555 Mon Sep 17 00:00:00 2001
-From: Adam Majer <amajer at suse.de>
-Date: Fri, 17 Aug 2018 14:41:02 +0800
-Subject: [PATCH] fix CVE-2018-8882
-
-https://bugzilla.nasm.us/show_bug.cgi?id=3392445
-
-Upstream-Status: Submitted [https://bugzilla.nasm.us/show_bug.cgi?id=3392445]
-CVE: CVE-2018-8882
-Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
----
- asm/float.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/asm/float.c b/asm/float.c
-index dcf69fea..2965d3db 100644
---- a/asm/float.c
-+++ b/asm/float.c
-@@ -608,6 +608,8 @@ static void ieee_shr(fp_limb *mant, int i)
-         if (offs)
-             for (j = MANT_LIMBS-1; j >= offs; j--)
-                 mant[j] = mant[j-offs];
-+    } else if (MANT_LIMBS-1-offs < 0) {
-+        j = MANT_LIMBS-1;
-     } else {
-         n = mant[MANT_LIMBS-1-offs] >> sr;
-         for (j = MANT_LIMBS-1; j > offs; j--) {
--- 
-2.17.1
-
diff --git a/meta/recipes-devtools/nasm/nasm/0001-preproc-parse_size-Check-for-string-provided.patch b/meta/recipes-devtools/nasm/nasm/0001-preproc-parse_size-Check-for-string-provided.patch
deleted file mode 100644
index 2121fd1..0000000
--- a/meta/recipes-devtools/nasm/nasm/0001-preproc-parse_size-Check-for-string-provided.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From a2f43331a853b7cc449cae3361ee1fb54c7fad8d Mon Sep 17 00:00:00 2001
-From: Cyrill Gorcunov <gorcunov at gmail.com>
-Date: Sat, 29 Sep 2018 14:30:14 +0300
-Subject: [PATCH] preproc: parse_size -- Check for string provided
-
-In case if the string is nil we will have sigsegv.
-
-https://bugzilla.nasm.us/show_bug.cgi?id=3392507
-
-Signed-off-by: Cyrill Gorcunov <gorcunov at gmail.com>
-
-CVE: CVE-2018-1000667
-Upstream-Status: Backport
-https://repo.or.cz/nasm/nasm.git/commit/c713b5f994cf7b29164c3b6838b91f0499591434
-
-Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
----
- asm/preproc.c | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/asm/preproc.c b/asm/preproc.c
-index 475926d..1d770a5 100644
---- a/asm/preproc.c
-+++ b/asm/preproc.c
-@@ -2216,8 +2216,7 @@ static int parse_size(const char *str) {
-         { "byte", "dword", "oword", "qword", "tword", "word", "yword" };
-     static const int sizes[] =
-         { 0, 1, 4, 16, 8, 10, 2, 32 };
--
--    return sizes[bsii(str, size_names, ARRAY_SIZE(size_names))+1];
-+    return str ? sizes[bsii(str, size_names, ARRAY_SIZE(size_names))+1] : 0;
- }
- 
- /*
--- 
-2.8.1
-
diff --git a/meta/recipes-devtools/nasm/nasm_2.13.03.bb b/meta/recipes-devtools/nasm/nasm_2.13.03.bb
deleted file mode 100644
index de4c554..0000000
--- a/meta/recipes-devtools/nasm/nasm_2.13.03.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "General-purpose x86 assembler"
-SECTION = "devel"
-LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=90904486f8fbf1861cf42752e1a39efe"
-
-SRC_URI = "http://www.nasm.us/pub/nasm/releasebuilds/${PV}/nasm-${PV}.tar.bz2 \
-           file://0001-asmlib-Drop-pure-function-attribute-from-seg_init.patch \
-           file://0001-assemble-Check-global-line-limit.patch \
-           file://0001-fix-CVE-2018-8882.patch \
-           file://0001-Verify-that-we-are-not-reading-past-end-of-a-buffer.patch \
-           file://0001-eval-Eliminate-division-by-zero.patch \
-           file://0001-preproc-parse_size-Check-for-string-provided.patch \
-           "
-
-SRC_URI[md5sum] = "0c581d482f39d5111879ca9601938f74"
-SRC_URI[sha256sum] = "63ec86477ad3f0f6292325fd89e1d93aea2e2fd490070863f17d48f7cd387011"
-
-inherit autotools-brokensep
-
-do_configure_prepend () {
-	if [ -f ${S}/aclocal.m4 ] && [ ! -f ${S}/acinclude.m4 ]; then
-		mv ${S}/aclocal.m4 ${S}/acinclude.m4
-	fi
-}
-
-do_install() {
-	install -d ${D}${bindir}
-	install -d ${D}${mandir}/man1
-
-	oe_runmake 'INSTALLROOT=${D}' install
-}
-
-BBCLASSEXTEND = "native"
-
-DEPENDS = "groff-native"
diff --git a/meta/recipes-devtools/nasm/nasm_2.14.bb b/meta/recipes-devtools/nasm/nasm_2.14.bb
new file mode 100644
index 0000000..231d4e6
--- /dev/null
+++ b/meta/recipes-devtools/nasm/nasm_2.14.bb
@@ -0,0 +1,25 @@
+SUMMARY = "General-purpose x86 assembler"
+SECTION = "devel"
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=90904486f8fbf1861cf42752e1a39efe"
+
+SRC_URI = "http://www.nasm.us/pub/nasm/releasebuilds/${PV}/nasm-${PV}.tar.bz2"
+
+SRC_URI[md5sum] = "238a240d3f869a52f8ac38ee3f8faafa"
+SRC_URI[sha256sum] = "d43cfd27cad53d0c22a9bf9702e9dffcc7018a0df21d15b92c56d250d747c744"
+
+inherit autotools-brokensep
+
+do_configure_prepend () {
+	if [ -f ${S}/aclocal.m4 ] && [ ! -f ${S}/acinclude.m4 ]; then
+		mv ${S}/aclocal.m4 ${S}/acinclude.m4
+	fi
+}
+
+do_install() {
+	oe_runmake 'DESTDIR=${D}' install
+}
+
+BBCLASSEXTEND = "native"
+
+DEPENDS = "groff-native"

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list