All of lore.kernel.org
 help / color / mirror / Atom feed
* [hardknott][PATCH] busybox: fix traceroute failure
@ 2021-07-08  2:12 Yu, Mingli
  2021-07-08  6:17 ` [OE-core] " Anuj Mittal
  0 siblings, 1 reply; 4+ messages in thread
From: Yu, Mingli @ 2021-07-08  2:12 UTC (permalink / raw)
  To: openembedded-core

From: Mingli Yu <mingli.yu@windriver.com>

Backport a patch to fix the below traceroute failure:
 $ traceroute -f 64 -I -n -m 240 10.226.43.84 46
traceroute: NO OPT x!

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
---
 .../0001-traceroute-fix-option-parsing.patch  | 31 +++++++++++++++++++
 meta/recipes-core/busybox/busybox_1.33.0.bb   |  1 +
 2 files changed, 32 insertions(+)
 create mode 100644 meta/recipes-core/busybox/busybox/0001-traceroute-fix-option-parsing.patch

diff --git a/meta/recipes-core/busybox/busybox/0001-traceroute-fix-option-parsing.patch b/meta/recipes-core/busybox/busybox/0001-traceroute-fix-option-parsing.patch
new file mode 100644
index 0000000000..1e03b7dbfb
--- /dev/null
+++ b/meta/recipes-core/busybox/busybox/0001-traceroute-fix-option-parsing.patch
@@ -0,0 +1,31 @@
+From 89358a7131d3e75c74af834bb117b4fad7914983 Mon Sep 17 00:00:00 2001
+From: Denys Vlasenko <vda.linux@googlemail.com>
+Date: Tue, 2 Feb 2021 13:48:21 +0100
+Subject: [PATCH] traceroute: fix option parsing
+
+Fix option parsing
+
+Upstream-Status: Backport [https://git.busybox.net/busybox/commit/?h=1_33_stable&id=89358a7131d3e75c74af834bb117b4fad7914983]
+
+Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ networking/traceroute.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/networking/traceroute.c b/networking/traceroute.c
+index 3f1a9ab46..29f5e480b 100644
+--- a/networking/traceroute.c
++++ b/networking/traceroute.c
+@@ -896,7 +896,7 @@ traceroute_init(int op, char **argv)
+ 
+ 	op |= getopt32(argv, "^"
+ 		OPT_STRING
+-		"\0" "-1:x-x" /* minimum 1 arg */
++		"\0" "-1" /* minimum 1 arg */
+ 		, &tos_str, &device, &max_ttl_str, &port_str, &nprobes_str
+ 		, &source, &waittime_str, &pausemsecs_str, &first_ttl_str
+ 	);
+-- 
+2.31.1
+
diff --git a/meta/recipes-core/busybox/busybox_1.33.0.bb b/meta/recipes-core/busybox/busybox_1.33.0.bb
index b2a30ba16f..2d18ec072c 100644
--- a/meta/recipes-core/busybox/busybox_1.33.0.bb
+++ b/meta/recipes-core/busybox/busybox_1.33.0.bb
@@ -48,6 +48,7 @@ SRC_URI = "https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
            file://pgrep.cfg \
            file://0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch \
            file://0001-gen_build_files-Use-C-locale-when-calling-sed-on-glo.patch \
+           file://0001-traceroute-fix-option-parsing.patch \
            "
 SRC_URI_append_libc-musl = " file://musl.cfg "
 
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [OE-core] [hardknott][PATCH] busybox: fix traceroute failure
  2021-07-08  2:12 [hardknott][PATCH] busybox: fix traceroute failure Yu, Mingli
@ 2021-07-08  6:17 ` Anuj Mittal
  2021-07-08  6:53   ` [PATCH v2] busybox: upgrade 1.33.0 -> 1.33.1 Yu, Mingli
  2021-07-08  6:55   ` [hardknott][PATCH " Yu, Mingli
  0 siblings, 2 replies; 4+ messages in thread
From: Anuj Mittal @ 2021-07-08  6:17 UTC (permalink / raw)
  To: openembedded-core, mingli.yu

On Thu, 2021-07-08 at 10:12 +0800, Yu, Mingli wrote:
> From: Mingli Yu <mingli.yu@windriver.com>
> 
> Backport a patch to fix the below traceroute failure:
>  $ traceroute -f 64 -I -n -m 240 10.226.43.84 46
> traceroute: NO OPT x!

We can just take the 1.33.1 upgrade from master branch instead as it's
a bug fix update:

https://git.busybox.net/busybox/log/?h=1_33_stable&qt=range&q=1_33_1...1_33_0

Thanks,

Anuj

> 
> Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
> ---
>  .../0001-traceroute-fix-option-parsing.patch  | 31 +++++++++++++++++++
>  meta/recipes-core/busybox/busybox_1.33.0.bb   |  1 +
>  2 files changed, 32 insertions(+)
>  create mode 100644 meta/recipes-core/busybox/busybox/0001-traceroute-
> fix-option-parsing.patch
> 
> diff --git a/meta/recipes-core/busybox/busybox/0001-traceroute-fix-
> option-parsing.patch b/meta/recipes-core/busybox/busybox/0001-
> traceroute-fix-option-parsing.patch
> new file mode 100644
> index 0000000000..1e03b7dbfb
> --- /dev/null
> +++ b/meta/recipes-core/busybox/busybox/0001-traceroute-fix-option-
> parsing.patch
> @@ -0,0 +1,31 @@
> +From 89358a7131d3e75c74af834bb117b4fad7914983 Mon Sep 17 00:00:00 2001
> +From: Denys Vlasenko <vda.linux@googlemail.com>
> +Date: Tue, 2 Feb 2021 13:48:21 +0100
> +Subject: [PATCH] traceroute: fix option parsing
> +
> +Fix option parsing
> +
> +Upstream-Status: Backport
> [https://git.busybox.net/busybox/commit/?h=1_33_stable&id=89358a7131d3e75c74af834bb117b4fad7914983
> ]
> +
> +Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
> +Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
> +---
> + networking/traceroute.c | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/networking/traceroute.c b/networking/traceroute.c
> +index 3f1a9ab46..29f5e480b 100644
> +--- a/networking/traceroute.c
> ++++ b/networking/traceroute.c
> +@@ -896,7 +896,7 @@ traceroute_init(int op, char **argv)
> + 
> +       op |= getopt32(argv, "^"
> +               OPT_STRING
> +-              "\0" "-1:x-x" /* minimum 1 arg */
> ++              "\0" "-1" /* minimum 1 arg */
> +               , &tos_str, &device, &max_ttl_str, &port_str,
> &nprobes_str
> +               , &source, &waittime_str, &pausemsecs_str,
> &first_ttl_str
> +       );
> +-- 
> +2.31.1
> +
> diff --git a/meta/recipes-core/busybox/busybox_1.33.0.bb
> b/meta/recipes-core/busybox/busybox_1.33.0.bb
> index b2a30ba16f..2d18ec072c 100644
> --- a/meta/recipes-core/busybox/busybox_1.33.0.bb
> +++ b/meta/recipes-core/busybox/busybox_1.33.0.bb
> @@ -48,6 +48,7 @@ SRC_URI =
> "https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
>             file://pgrep.cfg \
>            
> file://0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch \
>            
> file://0001-gen_build_files-Use-C-locale-when-calling-sed-on-glo.patch 
> \
> +           file://0001-traceroute-fix-option-parsing.patch \
>             "
>  SRC_URI_append_libc-musl = " file://musl.cfg "
>  
> 
> 
> 


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v2] busybox: upgrade 1.33.0 -> 1.33.1
  2021-07-08  6:17 ` [OE-core] " Anuj Mittal
@ 2021-07-08  6:53   ` Yu, Mingli
  2021-07-08  6:55   ` [hardknott][PATCH " Yu, Mingli
  1 sibling, 0 replies; 4+ messages in thread
From: Yu, Mingli @ 2021-07-08  6:53 UTC (permalink / raw)
  To: openembedded-core, anuj.mittal

From: zhengruoqin <zhengrq.fnst@fujitsu.com>

0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch
removed since it is included in 1.33.1

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 544236b12a72ee5be5ef0147249ead112082b871)
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
---
 ...ss_gunzip-Fix-DoS-if-gzip-is-corrupt.patch | 58 -------------------
 .../{busybox_1.33.0.bb => busybox_1.33.1.bb}  |  3 +-
 2 files changed, 1 insertion(+), 60 deletions(-)
 delete mode 100644 meta/recipes-core/busybox/busybox/0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch
 rename meta/recipes-core/busybox/{busybox_1.33.0.bb => busybox_1.33.1.bb} (92%)

diff --git a/meta/recipes-core/busybox/busybox/0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch b/meta/recipes-core/busybox/busybox/0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch
deleted file mode 100644
index 67c9f189cc..0000000000
--- a/meta/recipes-core/busybox/busybox/0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From fe791386ebc270219ca00406c9fdadc5130b64ee Mon Sep 17 00:00:00 2001
-From: Samuel Sapalski <samuel.sapalski@nokia.com>
-Date: Wed, 3 Mar 2021 16:31:22 +0100
-Subject: [PATCH] decompress_gunzip: Fix DoS if gzip is corrupt
-
-On certain corrupt gzip files, huft_build will set the error bit on
-the result pointer. If afterwards abort_unzip is called huft_free
-might run into a segmentation fault or an invalid pointer to
-free(p).
-
-In order to mitigate this, we check in huft_free if the error bit
-is set and clear it before the linked list is freed.
-
-Signed-off-by: Samuel Sapalski <samuel.sapalski@nokia.com>
-Signed-off-by: Peter Kaestle <peter.kaestle@nokia.com>
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-
-Upstream-Status: Backport
-CVE: CVE-2021-28831
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
----
- archival/libarchive/decompress_gunzip.c | 12 ++++++++++--
- 1 file changed, 10 insertions(+), 2 deletions(-)
-
-diff --git a/archival/libarchive/decompress_gunzip.c b/archival/libarchive/decompress_gunzip.c
-index eb3b64930..e93cd5005 100644
---- a/archival/libarchive/decompress_gunzip.c
-+++ b/archival/libarchive/decompress_gunzip.c
-@@ -220,10 +220,20 @@ static const uint8_t border[] ALIGN1 = {
-  * each table.
-  * t: table to free
-  */
-+#define BAD_HUFT(p) ((uintptr_t)(p) & 1)
-+#define ERR_RET     ((huft_t*)(uintptr_t)1)
- static void huft_free(huft_t *p)
- {
- 	huft_t *q;
- 
-+	/*
-+	 * If 'p' has the error bit set we have to clear it, otherwise we might run
-+	 * into a segmentation fault or an invalid pointer to free(p)
-+	 */
-+	if (BAD_HUFT(p)) {
-+		p = (huft_t*)((uintptr_t)(p) ^ (uintptr_t)(ERR_RET));
-+	}
-+
- 	/* Go through linked list, freeing from the malloced (t[-1]) address. */
- 	while (p) {
- 		q = (--p)->v.t;
-@@ -289,8 +299,6 @@ static unsigned fill_bitbuffer(STATE_PARAM unsigned bitbuffer, unsigned *current
-  * or a valid pointer to a Huffman table, ORed with 0x1 if incompete table
-  * is given: "fixed inflate" decoder feeds us such data.
-  */
--#define BAD_HUFT(p) ((uintptr_t)(p) & 1)
--#define ERR_RET     ((huft_t*)(uintptr_t)1)
- static huft_t* huft_build(const unsigned *b, const unsigned n,
- 			const unsigned s, const struct cp_ext *cp_ext,
- 			unsigned *m)
diff --git a/meta/recipes-core/busybox/busybox_1.33.0.bb b/meta/recipes-core/busybox/busybox_1.33.1.bb
similarity index 92%
rename from meta/recipes-core/busybox/busybox_1.33.0.bb
rename to meta/recipes-core/busybox/busybox_1.33.1.bb
index b2a30ba16f..3a70a8056e 100644
--- a/meta/recipes-core/busybox/busybox_1.33.0.bb
+++ b/meta/recipes-core/busybox/busybox_1.33.1.bb
@@ -46,9 +46,8 @@ SRC_URI = "https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
            file://0001-sysctl-ignore-EIO-of-stable_secret-below-proc-sys-ne.patch \
            file://rev.cfg \
            file://pgrep.cfg \
-           file://0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch \
            file://0001-gen_build_files-Use-C-locale-when-calling-sed-on-glo.patch \
            "
 SRC_URI_append_libc-musl = " file://musl.cfg "
 
-SRC_URI[tarball.sha256sum] = "d568681c91a85edc6710770cebc1e80e042ad74d305b5c2e6d57a5f3de3b8fbd"
+SRC_URI[tarball.sha256sum] = "12cec6bd2b16d8a9446dd16130f2b92982f1819f6e1c5f5887b6db03f5660d28"
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [hardknott][PATCH v2] busybox: upgrade 1.33.0 -> 1.33.1
  2021-07-08  6:17 ` [OE-core] " Anuj Mittal
  2021-07-08  6:53   ` [PATCH v2] busybox: upgrade 1.33.0 -> 1.33.1 Yu, Mingli
@ 2021-07-08  6:55   ` Yu, Mingli
  1 sibling, 0 replies; 4+ messages in thread
From: Yu, Mingli @ 2021-07-08  6:55 UTC (permalink / raw)
  To: openembedded-core, anuj.mittal

From: zhengruoqin <zhengrq.fnst@fujitsu.com>

0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch
removed since it is included in 1.33.1

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 544236b12a72ee5be5ef0147249ead112082b871)
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
---
 ...ss_gunzip-Fix-DoS-if-gzip-is-corrupt.patch | 58 -------------------
 .../{busybox_1.33.0.bb => busybox_1.33.1.bb}  |  3 +-
 2 files changed, 1 insertion(+), 60 deletions(-)
 delete mode 100644 meta/recipes-core/busybox/busybox/0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch
 rename meta/recipes-core/busybox/{busybox_1.33.0.bb => busybox_1.33.1.bb} (92%)

diff --git a/meta/recipes-core/busybox/busybox/0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch b/meta/recipes-core/busybox/busybox/0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch
deleted file mode 100644
index 67c9f189cc..0000000000
--- a/meta/recipes-core/busybox/busybox/0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From fe791386ebc270219ca00406c9fdadc5130b64ee Mon Sep 17 00:00:00 2001
-From: Samuel Sapalski <samuel.sapalski@nokia.com>
-Date: Wed, 3 Mar 2021 16:31:22 +0100
-Subject: [PATCH] decompress_gunzip: Fix DoS if gzip is corrupt
-
-On certain corrupt gzip files, huft_build will set the error bit on
-the result pointer. If afterwards abort_unzip is called huft_free
-might run into a segmentation fault or an invalid pointer to
-free(p).
-
-In order to mitigate this, we check in huft_free if the error bit
-is set and clear it before the linked list is freed.
-
-Signed-off-by: Samuel Sapalski <samuel.sapalski@nokia.com>
-Signed-off-by: Peter Kaestle <peter.kaestle@nokia.com>
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-
-Upstream-Status: Backport
-CVE: CVE-2021-28831
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
----
- archival/libarchive/decompress_gunzip.c | 12 ++++++++++--
- 1 file changed, 10 insertions(+), 2 deletions(-)
-
-diff --git a/archival/libarchive/decompress_gunzip.c b/archival/libarchive/decompress_gunzip.c
-index eb3b64930..e93cd5005 100644
---- a/archival/libarchive/decompress_gunzip.c
-+++ b/archival/libarchive/decompress_gunzip.c
-@@ -220,10 +220,20 @@ static const uint8_t border[] ALIGN1 = {
-  * each table.
-  * t: table to free
-  */
-+#define BAD_HUFT(p) ((uintptr_t)(p) & 1)
-+#define ERR_RET     ((huft_t*)(uintptr_t)1)
- static void huft_free(huft_t *p)
- {
- 	huft_t *q;
- 
-+	/*
-+	 * If 'p' has the error bit set we have to clear it, otherwise we might run
-+	 * into a segmentation fault or an invalid pointer to free(p)
-+	 */
-+	if (BAD_HUFT(p)) {
-+		p = (huft_t*)((uintptr_t)(p) ^ (uintptr_t)(ERR_RET));
-+	}
-+
- 	/* Go through linked list, freeing from the malloced (t[-1]) address. */
- 	while (p) {
- 		q = (--p)->v.t;
-@@ -289,8 +299,6 @@ static unsigned fill_bitbuffer(STATE_PARAM unsigned bitbuffer, unsigned *current
-  * or a valid pointer to a Huffman table, ORed with 0x1 if incompete table
-  * is given: "fixed inflate" decoder feeds us such data.
-  */
--#define BAD_HUFT(p) ((uintptr_t)(p) & 1)
--#define ERR_RET     ((huft_t*)(uintptr_t)1)
- static huft_t* huft_build(const unsigned *b, const unsigned n,
- 			const unsigned s, const struct cp_ext *cp_ext,
- 			unsigned *m)
diff --git a/meta/recipes-core/busybox/busybox_1.33.0.bb b/meta/recipes-core/busybox/busybox_1.33.1.bb
similarity index 92%
rename from meta/recipes-core/busybox/busybox_1.33.0.bb
rename to meta/recipes-core/busybox/busybox_1.33.1.bb
index b2a30ba16f..3a70a8056e 100644
--- a/meta/recipes-core/busybox/busybox_1.33.0.bb
+++ b/meta/recipes-core/busybox/busybox_1.33.1.bb
@@ -46,9 +46,8 @@ SRC_URI = "https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
            file://0001-sysctl-ignore-EIO-of-stable_secret-below-proc-sys-ne.patch \
            file://rev.cfg \
            file://pgrep.cfg \
-           file://0001-decompress_gunzip-Fix-DoS-if-gzip-is-corrupt.patch \
            file://0001-gen_build_files-Use-C-locale-when-calling-sed-on-glo.patch \
            "
 SRC_URI_append_libc-musl = " file://musl.cfg "
 
-SRC_URI[tarball.sha256sum] = "d568681c91a85edc6710770cebc1e80e042ad74d305b5c2e6d57a5f3de3b8fbd"
+SRC_URI[tarball.sha256sum] = "12cec6bd2b16d8a9446dd16130f2b92982f1819f6e1c5f5887b6db03f5660d28"
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-07-08  6:56 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-08  2:12 [hardknott][PATCH] busybox: fix traceroute failure Yu, Mingli
2021-07-08  6:17 ` [OE-core] " Anuj Mittal
2021-07-08  6:53   ` [PATCH v2] busybox: upgrade 1.33.0 -> 1.33.1 Yu, Mingli
2021-07-08  6:55   ` [hardknott][PATCH " Yu, Mingli

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.