mirror of
https://git.yoctoproject.org/poky
synced 2026-04-14 08:02:30 +02:00
nasm: fix CVE-2019-14248
See: https://bugzilla.nasm.us/show_bug.cgi?id=3392576 (From OE-Core rev: 49dca79c6e5f631d1f55422864ee57c86cafe1a4) Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
dbd22b6cd7
commit
d8da51bd3b
43
meta/recipes-devtools/nasm/nasm/CVE-2019-14248.patch
Normal file
43
meta/recipes-devtools/nasm/nasm/CVE-2019-14248.patch
Normal file
@@ -0,0 +1,43 @@
|
||||
From 93d41d82963b2cfd0b24c906f5a8daf53281b559 Mon Sep 17 00:00:00 2001
|
||||
From: "H. Peter Anvin (Intel)" <hpa@zytor.com>
|
||||
Date: Fri, 16 Aug 2019 01:12:54 -0700
|
||||
Subject: [PATCH] BR 3392576: don't segfault on a bad %pragma limit
|
||||
|
||||
Don't segfault on a bad %pragma limit. Instead treat a NULL pointer as
|
||||
an empty string.
|
||||
|
||||
Reported-by: Ren Kimura <rkx1209dev@gmail.com>
|
||||
Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
|
||||
|
||||
CVE: CVE-2019-14248
|
||||
Upstream-Status: Backport [https://repo.or.cz/nasm.git/commit/93d41d82963b2cfd0b24c906f5a8daf53281b559]
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
---
|
||||
asm/nasm.c | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/asm/nasm.c b/asm/nasm.c
|
||||
index c84d675..65116ab 100644
|
||||
--- a/asm/nasm.c
|
||||
+++ b/asm/nasm.c
|
||||
@@ -212,6 +212,11 @@ nasm_set_limit(const char *limit, const char *valstr)
|
||||
bool rn_error;
|
||||
int errlevel;
|
||||
|
||||
+ if (!limit)
|
||||
+ limit = "";
|
||||
+ if (!valstr)
|
||||
+ valstr = "";
|
||||
+
|
||||
for (i = 0; i <= LIMIT_MAX; i++) {
|
||||
if (!nasm_stricmp(limit, limit_info[i].name))
|
||||
break;
|
||||
@@ -204,7 +209,7 @@ nasm_set_limit(const char *limit, const char *valstr)
|
||||
errlevel = ERR_WARNING|ERR_NOFILE|ERR_USAGE;
|
||||
else
|
||||
errlevel = ERR_WARNING|ERR_PASS1|WARN_UNKNOWN_PRAGMA;
|
||||
- nasm_error(errlevel, "unknown limit: `%s'", limit);
|
||||
+ nasm_error(errlevel, "invalid limit value: `%s'", valstr);
|
||||
return DIRR_ERROR;
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=90904486f8fbf1861cf42752e1a39efe"
|
||||
|
||||
SRC_URI = "http://www.nasm.us/pub/nasm/releasebuilds/${PV}/nasm-${PV}.tar.bz2 \
|
||||
file://CVE-2018-19755.patch \
|
||||
file://CVE-2019-14248.patch \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "3f489aa48ad2aa1f967dc5e293bbd06f"
|
||||
|
||||
Reference in New Issue
Block a user