00/30] Platch review for thud-next
Comments regarding this patch series due by Wednesday.
The following changes since commit f162d5bfe6eaeca24f441c83c87252c8d05744fc:
core-image-sato-sdk-ptest: Tweak size to stay within 4GB limit (2019-05-17 22:05:59 -0700)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib stable/thud-nmut
http://cgit.openembedded.org/openembedded-core-contrib/log/?h=stable/thud-nmut
Armin Kuster (16):
glibc: Security fix CVE-2019-9169
elfutils: Security fixes CVE-2019-7146,7149,7150
qemu: Several CVE fixes
python: Update to 2.7.16
busybox: Security fixes for CVE-2018-20679 CVE-2019-5747
sqlite3: Security fixes for CVE-2018-20505 & 20506
file: Multiple Secruity fixes
go: update to minor update 1.11.10
qemu: Security fix for CVE-2018-19489
Tar: Security fix CVE-2019-0023
glib-2.0: Security fix for CVE-2019-12450
wget: Security fix for CVE-2019-5953
Curl: Securiyt fix CVE-2019-5435 CVE-2019-5436
qemu: Security fix for CVE-2019-12155
qemu: Security fixes CVE-2018-20815 CVE-2019-9824
glib: Security fix for CVE-2019-9633
Chen Qi (2):
cups: upgrade to 2.2.9
cups: upgrade to 2.2.10
Hongxu Jia (1):
go-target.inc: fix go not found while multilib enabled
Joshua DeWeese (1):
wpa_supplicant: Changed systemd template units
Khem Raj (1):
go: Upgrade 1.11.1 -> 1.11.4 minor release
Martin Jansa (1):
python: add a fix for CVE-2019-9948 and CVE-2019-9636
Richard Purdie (4):
go-crosssdk: PN should use SDK_SYS, not TARGET_ARCH
yocto-uninative: Update to 2.5 release
uninative: Switch from bz2 to xz
uninative: Update to 2.6 release
Robert Yang (1):
uboot-sign.bbclass: Remove tab indentations in python code
Ross Burton (3):
cairo: fix CVE-2018-19876 CVE-2019-6461 CVE-2019-6462
lighttpd: fix CVE-2019-11072
glibc: backport CVE fixes
meta/classes/uboot-sign.bbclass | 20 +-
meta/classes/uninative.bbclass | 4 +-
meta/conf/distro/include/yocto-uninative.inc | 8 +-
...place-systemd-install-Alias-with-WantedBy.patch | 52 ++++
.../wpa-supplicant/wpa-supplicant_2.6.bb | 1 +
.../busybox/busybox/CVE-2018-20679.patch | 142 +++++++++
.../busybox/busybox/CVE-2019-5747.patch | 60 ++++
meta/recipes-core/busybox/busybox_1.29.3.bb | 2 +
.../glib-2.0/glib-2.0/CVE-2019-12450.patch | 59 ++++
.../glib-2.0/glib-2.0/CVE-2019-9633_p1.patch | 316 +++++++++++++++++++++
.../glib-2.0/glib-2.0/CVE-2019-9633_p2.patch | 231 +++++++++++++++
meta/recipes-core/glib-2.0/glib-2.0_2.58.0.bb | 3 +
meta/recipes-core/glibc/glibc/CVE-2016-10739.patch | 232 +++++++++++++++
meta/recipes-core/glibc/glibc/CVE-2018-19591.patch | 48 ++++
meta/recipes-core/glibc/glibc/CVE-2019-9169.patch | 63 ++++
meta/recipes-core/glibc/glibc_2.28.bb | 3 +
meta/recipes-devtools/elfutils/elfutils_0.175.bb | 4 +
.../elfutils/files/CVE-2019-7146_p1.patch | 52 ++++
.../elfutils/files/CVE-2019-7146_p2.patch | 65 +++++
.../elfutils/files/CVE-2019-7149.patch | 148 ++++++++++
.../elfutils/files/CVE-2019-7150.patch | 51 ++++
.../recipes-devtools/file/file/CVE-2019-8904.patch | 30 ++
.../file/file/CVE-2019-8905_CVE-2019-8907.patch | 120 ++++++++
.../recipes-devtools/file/file/CVE-2019-8906.patch | 27 ++
meta/recipes-devtools/file/file_5.34.bb | 3 +
meta/recipes-devtools/go/go-1.11.inc | 7 +-
...07-cmd-go-make-GOROOT-precious-by-default.patch | 6 +-
.../0008-use-GOBUILDMODE-to-set-buildmode.patch | 13 +-
meta/recipes-devtools/go/go-crosssdk.inc | 2 +-
meta/recipes-devtools/go/go-target.inc | 2 +-
...on-native_2.7.15.bb => python-native_2.7.16.bb} | 2 -
meta/recipes-devtools/python/python.inc | 18 +-
...23-Use-XML_SetHashSalt-in-_elementtree-GH.patch | 96 -------
...ix-test_ssl-when-a-filename-cannot-be-enc.patch | 55 ----
...LS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch | 120 --------
...34540-Convert-shutil._call_external_zip-t.patch | 67 -----
...dd-missing-closing-wrapper-in-test_tls1_3.patch | 37 ---
...ix-test_ssl.test_options-to-account-for-O.patch | 37 ---
...ix-test_default_ecdh_curve-needs-no-tlsv1.patch | 34 ---
.../python/bpo-35907-cve-2019-9948-fix.patch | 55 ++++
.../python/python/bpo-35907-cve-2019-9948.patch | 55 ++++
.../python/bpo-36216-cve-2019-9636-fix.patch | 28 ++
.../python/python/bpo-36216-cve-2019-9636.patch | 111 ++++++++
.../python/{python_2.7.15.bb => python_2.7.16.bb} | 6 +-
.../qemu/qemu/CVE-2018-16867.patch | 49 ++++
.../qemu/qemu/CVE-2018-16872.patch | 89 ++++++
.../qemu/qemu/CVE-2018-18849.patch | 86 ++++++
.../qemu/qemu/CVE-2018-19364_p1.patch | 51 ++++
.../qemu/qemu/CVE-2018-19364_p2.patch | 115 ++++++++
.../qemu/qemu/CVE-2018-19489.patch | 83 ++++++
.../qemu/qemu/CVE-2018-20815_p1.patch | 42 +++
.../qemu/qemu/CVE-2018-20815_p2.patch | 52 ++++
.../qemu/qemu/CVE-2019-12155.patch | 38 +++
.../recipes-devtools/qemu/qemu/CVE-2019-9824.patch | 47 +++
meta/recipes-devtools/qemu/qemu_3.0.0.bb | 10 +
.../0001-don-t-try-to-run-generated-binaries.patch | 29 +-
.../cups/{cups_2.2.8.bb => cups_2.2.10.bb} | 4 +-
.../lighttpd/lighttpd/fix-http-parseopts.patch | 51 ++++
meta/recipes-extended/lighttpd/lighttpd_1.4.51.bb | 1 +
meta/recipes-extended/tar/tar/CVE-2019-9923.patch | 38 +++
meta/recipes-extended/tar/tar_1.30.bb | 1 +
.../recipes-extended/wget/wget/CVE-2019-5953.patch | 51 ++++
meta/recipes-extended/wget/wget_1.19.5.bb | 1 +
.../cairo/cairo/CVE-2019-6461.patch | 19 ++
.../cairo/cairo/CVE-2019-6462.patch | 20 ++
meta/recipes-graphics/cairo/cairo_1.14.12.bb | 2 +
meta/recipes-support/curl/curl/CVE-2019-5435.patch | 200 +++++++++++++
meta/recipes-support/curl/curl/CVE-2019-5436.patch | 32 +++
meta/recipes-support/curl/curl_7.61.0.bb | 2 +
.../sqlite/files/CVE-2018-20505.patch | 31 ++
.../sqlite/files/CVE-2018-20506.patch | 103 +++++++
meta/recipes-support/sqlite/sqlite3_3.23.1.bb | 2 +
72 files changed, 3233 insertions(+), 511 deletions(-)
create mode 100644 meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/0001-replace-systemd-install-Alias-with-WantedBy.patch
create mode 100644 meta/recipes-core/busybox/busybox/CVE-2018-20679.patch
create mode 100644 meta/recipes-core/busybox/busybox/CVE-2019-5747.patch
create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/CVE-2019-12450.patch
create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/CVE-2019-9633_p1.patch
create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/CVE-2019-9633_p2.patch
create mode 100644 meta/recipes-core/glibc/glibc/CVE-2016-10739.patch
create mode 100644 meta/recipes-core/glibc/glibc/CVE-2018-19591.patch
create mode 100644 meta/recipes-core/glibc/glibc/CVE-2019-9169.patch
create mode 100644 meta/recipes-devtools/elfutils/files/CVE-2019-7146_p1.patch
create mode 100644 meta/recipes-devtools/elfutils/files/CVE-2019-7146_p2.patch
create mode 100644 meta/recipes-devtools/elfutils/files/CVE-2019-7149.patch
create mode 100644 meta/recipes-devtools/elfutils/files/CVE-2019-7150.patch
create mode 100644 meta/recipes-devtools/file/file/CVE-2019-8904.patch
create mode 100644 meta/recipes-devtools/file/file/CVE-2019-8905_CVE-2019-8907.patch
create mode 100644 meta/recipes-devtools/file/file/CVE-2019-8906.patch
rename meta/recipes-devtools/python/{python-native_2.7.15.bb => python-native_2.7.16.bb} (96%)
delete mode 100644 meta/recipes-devtools/python/python/0001-2.7-bpo-34623-Use-XML_SetHashSalt-in-_elementtree-GH.patch
delete mode 100644 meta/recipes-devtools/python/python/0001-bpo-33354-Fix-test_ssl-when-a-filename-cannot-be-enc.patch
delete mode 100644 meta/recipes-devtools/python/python/0001-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch
delete mode 100644 meta/recipes-devtools/python/python/0001-closes-bpo-34540-Convert-shutil._call_external_zip-t.patch
delete mode 100644 meta/recipes-devtools/python/python/0002-bpo-34818-Add-missing-closing-wrapper-in-test_tls1_3.patch
delete mode 100644 meta/recipes-devtools/python/python/0003-bpo-34834-Fix-test_ssl.test_options-to-account-for-O.patch
delete mode 100644 meta/recipes-devtools/python/python/0004-bpo-34836-fix-test_default_ecdh_curve-needs-no-tlsv1.patch
create mode 100644 meta/recipes-devtools/python/python/bpo-35907-cve-2019-9948-fix.patch
create mode 100644 meta/recipes-devtools/python/python/bpo-35907-cve-2019-9948.patch
create mode 100644 meta/recipes-devtools/python/python/bpo-36216-cve-2019-9636-fix.patch
create mode 100644 meta/recipes-devtools/python/python/bpo-36216-cve-2019-9636.patch
rename meta/recipes-devtools/python/{python_2.7.15.bb => python_2.7.16.bb} (98%)
create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-16867.patch
create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-16872.patch
create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-18849.patch
create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-19364_p1.patch
create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-19364_p2.patch
create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-19489.patch
create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-20815_p1.patch
create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-20815_p2.patch
create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2019-12155.patch
create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2019-9824.patch
rename meta/recipes-extended/cups/{cups_2.2.8.bb => cups_2.2.10.bb} (40%)
create mode 100644 meta/recipes-extended/lighttpd/lighttpd/fix-http-parseopts.patch
create mode 100644 meta/recipes-extended/tar/tar/CVE-2019-9923.patch
create mode 100644 meta/recipes-extended/wget/wget/CVE-2019-5953.patch
create mode 100644 meta/recipes-graphics/cairo/cairo/CVE-2019-6461.patch
create mode 100644 meta/recipes-graphics/cairo/cairo/CVE-2019-6462.patch
create mode 100644 meta/recipes-support/curl/curl/CVE-2019-5435.patch
create mode 100644 meta/recipes-support/curl/curl/CVE-2019-5436.patch
create mode 100644 meta/recipes-support/sqlite/files/CVE-2018-20505.patch
create mode 100644 meta/recipes-support/sqlite/files/CVE-2018-20506.patchSignature · 1 line
2.7.4
[thud] 01/30] glibc: Security fix CVE-2019-9169
From: Armin Kuster <[email protected]>
--- meta/recipes-core/glibc/glibc/CVE-2019-9169.patch | 63 +++++++++++++++++++++++ meta/recipes-core/glibc/glibc_2.28.bb | 1 + 2 files changed, 64 insertions(+) create mode 100644 meta/recipes-core/glibc/glibc/CVE-2019-9169.patch
meta/recipes-core/glibc/glibc/CVE-2019-9169.patch new file +63 -0
@@ -0,0 +1,63 @@ +From 583dd860d5b833037175247230a328f0050dbfe9 Mon Sep 17 00:00:00 2001 +From: Paul Eggert <[email protected]> +Date: Mon, 21 Jan 2019 11:08:13 -0800 +Subject: [PATCH] regex: fix read overrun [BZ #24114] + +Problem found by AddressSanitizer, reported by Hongxu Chen in: +https://debbugs.gnu.org/34140 +* posix/regexec.c (proceed_next_node): +Do not read past end of input buffer. + +Upstream-Status: Backport +https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commit;h=583dd860d5b833037175247230a328f0050dbfe9 + +CVE: CVE-2019-9169 +Signed-off-by: Armin Kuster <[email protected]> + +--- + ChangeLog | 10 +++++++++- + posix/regexec.c | 6 ++++-- + 2 files changed, 13 insertions(+), 3 deletions(-) + +Index: git/ChangeLog +=================================================================== +--- git.orig/ChangeLog ++++ git/ChangeLog +@@ -1,3 +1,11 @@ ++2019-01-31 Paul Eggert <[email protected]> ++ ++ regex: fix read overrun [BZ #24114] ++ Problem found by AddressSanitizer, reported by Hongxu Chen in: ++ https://debbugs.gnu.org/34140 ++ * posix/regexec.c (proceed_next_node): ++ Do not read past end of input buffer. ++ + 2018-09-30 Martin Jansa <[email protected]> + Partial fix for [BZ #23716] + * locale/weight.h: Fix build with -Os. +@@ -10917,7 +10925,7 @@ + (CFLAGS-wcstof_l.c): Likewise. + (CPPFLAGS-tst-wchar-h.c): Likewise. + (CPPFLAGS-wcstold_l.c): Likewise. +---- ++ + 2017-12-11 Paul A. Clarke <[email protected]> + + * sysdeps/ieee754/flt-32/s_cosf.c: New implementation. +Index: git/posix/regexec.c +=================================================================== +--- git.orig/posix/regexec.c ++++ git/posix/regexec.c +@@ -1289,8 +1289,10 @@ proceed_next_node (const re_match_contex + else if (naccepted) + { + char *buf = (char *) re_string_get_buffer (&mctx->input); +- if (memcmp (buf + regs[subexp_idx].rm_so, buf + *pidx, +- naccepted) != 0) ++ if (mctx->input.valid_len - *pidx < naccepted ++ || (memcmp (buf + regs[subexp_idx].rm_so, buf + *pidx, ++ naccepted) ++ != 0)) + return -1; + } + }
meta/recipes-core/glibc/glibc_2.28.bb +1 -0
@@ -47,6 +47,7 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ file://0032-sysdeps-ieee754-soft-fp-ignore-maybe-uninitialized-w.patch \ file://0033-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch \ file://0034-inject-file-assembly-directives.patch \ + file://CVE-2019-9169.patch \ " NATIVESDKFIXES ?= ""
Signature · 1 line
2.7.4
[thud] 02/30] elfutils: Security fixes CVE-2019-7146, 7149, 7150
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: http://sourceware.org/git/elfutils.git
MR: 97563, 97568, 97558
Type: Security Fix
Disposition: Backport from http://sourceware.org/git/elfutils.git
ChangeID: 6183c2a25d5e32eec1846a428dd165e1de659f24 Description:
Affects <= 0.175
Fixes:
CVE-2019-7146
CVE-2019-7149
CVE-2019-7150
--- meta/recipes-devtools/elfutils/elfutils_0.175.bb | 4 + .../elfutils/files/CVE-2019-7146_p1.patch | 52 ++++++++ .../elfutils/files/CVE-2019-7146_p2.patch | 65 +++++++++ .../elfutils/files/CVE-2019-7149.patch | 148 +++++++++++++++++++++ .../elfutils/files/CVE-2019-7150.patch | 51 +++++++ 5 files changed, 320 insertions(+) create mode 100644 meta/recipes-devtools/elfutils/files/CVE-2019-7146_p1.patch create mode 100644 meta/recipes-devtools/elfutils/files/CVE-2019-7146_p2.patch create mode 100644 meta/recipes-devtools/elfutils/files/CVE-2019-7149.patch create mode 100644 meta/recipes-devtools/elfutils/files/CVE-2019-7150.patch
meta/recipes-devtools/elfutils/elfutils_0.175.bb +4 -0
@@ -27,6 +27,10 @@ SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \ file://debian/hurd_path.patch \ file://debian/ignore_strmerge.diff \ file://debian/disable_werror.patch \ + file://CVE-2019-7149.patch \ + file://CVE-2019-7150.patch \ + file://CVE-2019-7146_p1.patch \ + file://CVE-2019-7146_p2.patch \ " SRC_URI_append_libc-musl = " file://0008-build-Provide-alternatives-for-glibc-assumptions-hel.patch"
meta/recipes-devtools/elfutils/files/CVE-2019-7146_p1.patch new file +52 -0
52 lines not on this page · raw message
meta/recipes-devtools/elfutils/files/CVE-2019-7146_p2.patch new file +65 -0
65 lines not on this page · raw message
meta/recipes-devtools/elfutils/files/CVE-2019-7149.patch new file +148 -0
148 lines not on this page · raw message
meta/recipes-devtools/elfutils/files/CVE-2019-7150.patch new file +51 -0
51 lines not on this page · raw message
Signature · 1 line
2.7.4
[thud] 03/30] qemu: Several CVE fixes
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: qemu.org
MR: 97258, 97342, 97438, 97443
Type: Security Fix
Disposition: Backport from git.qemu.org/qemu.git
ChangeID: a5e9fd03ca5bebc880dcc3c4567e10a9ae47dba5 Description:
These issues affect qemu < 3.1.0
Fixes:
CVE-2018-16867
CVE-2018-16872
CVE-2018-18849
CVE-2018-19364
--- .../qemu/qemu/CVE-2018-16867.patch | 49 +++++++++ .../qemu/qemu/CVE-2018-16872.patch | 89 ++++++++++++++++ .../qemu/qemu/CVE-2018-18849.patch | 86 +++++++++++++++ .../qemu/qemu/CVE-2018-19364_p1.patch | 51 +++++++++ .../qemu/qemu/CVE-2018-19364_p2.patch | 115 +++++++++++++++++++++ meta/recipes-devtools/qemu/qemu_3.0.0.bb | 5 + 6 files changed, 395 insertions(+) create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-16867.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-16872.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-18849.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-19364_p1.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-19364_p2.patch
meta/recipes-devtools/qemu/qemu/CVE-2018-16867.patch new file +49 -0
@@ -0,0 +1,49 @@ +From 61f87388af0af72ad61dee00ddd267b8047049f2 Mon Sep 17 00:00:00 2001 +From: Gerd Hoffmann <[email protected]> +Date: Mon, 3 Dec 2018 11:10:45 +0100 +Subject: [PATCH] usb-mtp: outlaw slashes in filenames +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Slash is unix directory separator, so they are not allowed in filenames. +Note this also stops the classic escape via "../". + +Fixes: CVE-2018-16867 +Reported-by: Michael Hanselmann <[email protected]> +Signed-off-by: Gerd Hoffmann <[email protected]> +Reviewed-by: Philippe Mathieu-Daudé <[email protected]> +Message-id: [email protected] +(cherry picked from commit c52d46e041b42bb1ee6f692e00a0abe37a9659f6) +Signed-off-by: Michael Roth <[email protected]> + +Upstream-Status: Backport +CVE: CVE-2018-16867 +Affects: < 3.1.0 + +Signed-off-by: Armin Kuster <[email protected]> + +--- + hw/usb/dev-mtp.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c +index 1ded7ac..899c8a3 100644 +--- a/hw/usb/dev-mtp.c ++++ b/hw/usb/dev-mtp.c +@@ -1667,6 +1667,12 @@ static void usb_mtp_write_metadata(MTPState *s) + + utf16_to_str(dataset->length, dataset->filename, filename); + ++ if (strchr(filename, '/')) { ++ usb_mtp_queue_result(s, RES_PARAMETER_NOT_SUPPORTED, d->trans, ++ 0, 0, 0, 0); ++ return; ++ } ++ + o = usb_mtp_object_lookup_name(p, filename, dataset->length); + if (o != NULL) { + next_handle = o->handle; +-- +2.7.4 +
meta/recipes-devtools/qemu/qemu/CVE-2018-16872.patch new file +89 -0
89 lines not on this page · raw message
meta/recipes-devtools/qemu/qemu/CVE-2018-18849.patch new file +86 -0
86 lines not on this page · raw message
meta/recipes-devtools/qemu/qemu/CVE-2018-19364_p1.patch new file +51 -0
51 lines not on this page · raw message
meta/recipes-devtools/qemu/qemu/CVE-2018-19364_p2.patch new file +115 -0
115 lines not on this page · raw message
meta/recipes-devtools/qemu/qemu_3.0.0.bb +5 -0
@@ -25,6 +25,11 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \ file://CVE-2018-17958.patch \ file://CVE-2018-17962.patch \ file://CVE-2018-17963.patch \ + file://CVE-2018-16867.patch \ + file://CVE-2018-16872.patch \ + file://CVE-2018-18849.patch \ + file://CVE-2018-19364_p1.patch \ + file://CVE-2018-19364_p2.patch \ " UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
Signature · 1 line
2.7.4
[thud] 04/30] python: Update to 2.7.16
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: Python.org
MR: 98220
Type: Security Fix & Integration
Disposition: Backport from python.org
ChangeID: 96fdd2dee9fe9317eb72584583ae0100c0be9eaa Description:
Bug fix update per Python.org
https://www.python.org/downloads/release/python-2716/
drop backported patch
License-update: copyright years
Helps prepare Thud for 2.7 EOL support moving forward.
Update includes:
CVE-CVE-2019-5010
https://github.com/python/cpython/commit/06b15424b0dcacb1c551b2a36e739fffa8d0c595
---
...on-native_2.7.15.bb => python-native_2.7.16.bb} | 2 -
meta/recipes-devtools/python/python.inc | 18 ++--
...23-Use-XML_SetHashSalt-in-_elementtree-GH.patch | 96 -----------------
...ix-test_ssl-when-a-filename-cannot-be-enc.patch | 55 ----------
...LS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch | 120 ---------------------
...34540-Convert-shutil._call_external_zip-t.patch | 67 ------------
...dd-missing-closing-wrapper-in-test_tls1_3.patch | 37 -------
...ix-test_ssl.test_options-to-account-for-O.patch | 37 -------
...ix-test_default_ecdh_curve-needs-no-tlsv1.patch | 34 ------
.../python/{python_2.7.15.bb => python_2.7.16.bb} | 2 -
10 files changed, 6 insertions(+), 462 deletions(-)
rename meta/recipes-devtools/python/{python-native_2.7.15.bb => python-native_2.7.16.bb} (96%)
delete mode 100644 meta/recipes-devtools/python/python/0001-2.7-bpo-34623-Use-XML_SetHashSalt-in-_elementtree-GH.patch
delete mode 100644 meta/recipes-devtools/python/python/0001-bpo-33354-Fix-test_ssl-when-a-filename-cannot-be-enc.patch
delete mode 100644 meta/recipes-devtools/python/python/0001-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch
delete mode 100644 meta/recipes-devtools/python/python/0001-closes-bpo-34540-Convert-shutil._call_external_zip-t.patch
delete mode 100644 meta/recipes-devtools/python/python/0002-bpo-34818-Add-missing-closing-wrapper-in-test_tls1_3.patch
delete mode 100644 meta/recipes-devtools/python/python/0003-bpo-34834-Fix-test_ssl.test_options-to-account-for-O.patch
delete mode 100644 meta/recipes-devtools/python/python/0004-bpo-34836-fix-test_default_ecdh_curve-needs-no-tlsv1.patch
rename meta/recipes-devtools/python/{python_2.7.15.bb => python_2.7.16.bb} (98%)meta/recipes-devtools/python/python-native_2.7.16.bb renamed from meta/recipes-devtools/python/python-native_2.7.15.bb +0 -2
@@ -1,7 +1,6 @@ require python.inc EXTRANATIVEPATH += "bzip2-native" DEPENDS = "openssl-native bzip2-replacement-native zlib-native readline-native sqlite3-native expat-native gdbm-native db-native" -PR = "${INC_PR}.1" SRC_URI += "\ file://05-enable-ctypes-cross-build.patch \
@@ -17,7 +16,6 @@ SRC_URI += "\ file://parallel-makeinst-create-bindir.patch \ file://revert_use_of_sysconfigdata.patch \ file://0001-python-native-fix-one-do_populate_sysroot-warning.patch \ - file://0001-2.7-bpo-34623-Use-XML_SetHashSalt-in-_elementtree-GH.patch \ " S = "${WORKDIR}/Python-${PV}"
meta/recipes-devtools/python/python.inc +6 -12
@@ -5,18 +5,12 @@ SECTION = "devel/python" # bump this on every change in contrib/python/generate-manifest-2.7.py INC_PR = "r1" -LIC_FILES_CHKSUM = "file://LICENSE;md5=f257cc14f81685691652a3d3e1b5d754" - -SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \ - file://0001-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch \ - file://0002-bpo-34818-Add-missing-closing-wrapper-in-test_tls1_3.patch \ - file://0003-bpo-34834-Fix-test_ssl.test_options-to-account-for-O.patch \ - file://0004-bpo-34836-fix-test_default_ecdh_curve-needs-no-tlsv1.patch \ - file://0001-bpo-33354-Fix-test_ssl-when-a-filename-cannot-be-enc.patch \ - " - -SRC_URI[md5sum] = "a80ae3cc478460b922242f43a1b4094d" -SRC_URI[sha256sum] = "22d9b1ac5b26135ad2b8c2901a9413537e08749a753356ee913c84dbd2df5574" +LIC_FILES_CHKSUM = "file://LICENSE;md5=e466242989bd33c1bd2b6a526a742498" + +SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz" + +SRC_URI[md5sum] = "30157d85a2c0479c09ea2cbe61f2aaf5" +SRC_URI[sha256sum] = "f222ef602647eecb6853681156d32de4450a2c39f4de93bd5b20235f2e660ed7" # python recipe is actually python 2.x # also, exclude pre-releases for both python 2.x and 3.x
meta/recipes-devtools/python/python/0001-2.7-bpo-34623-Use-XML_SetHashSalt-in-_elementtree-GH.patch deleted +0 -96
96 lines not on this page · raw message
meta/recipes-devtools/python/python/0001-bpo-33354-Fix-test_ssl-when-a-filename-cannot-be-enc.patch deleted +0 -55
55 lines not on this page · raw message
meta/recipes-devtools/python/python/0001-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch deleted +0 -120
120 lines not on this page · raw message
meta/recipes-devtools/python/python/0001-closes-bpo-34540-Convert-shutil._call_external_zip-t.patch deleted +0 -67
67 lines not on this page · raw message
meta/recipes-devtools/python/python/0002-bpo-34818-Add-missing-closing-wrapper-in-test_tls1_3.patch deleted +0 -37
@@ -1,37 +0,0 @@ -From 0e1f3856a7e1511fb64d99646c54ddf3897cd444 Mon Sep 17 00:00:00 2001 -From: Dimitri John Ledkov <[email protected]> -Date: Fri, 28 Sep 2018 14:15:52 +0100 -Subject: [PATCH 2/4] bpo-34818: Add missing closing() wrapper in test_tls1_3. - -Python 2.7 socket classes do not implement context manager protocol, -hence closing() is required around it. Resolves testcase error -traceback. - -Signed-off-by: Dimitri John Ledkov <[email protected]> - -https://bugs.python.org/issue34818 - -Patch taken from Ubuntu. - -Upstream-Status: Submitted [https://github.com/python/cpython/pull/9622] -Signed-off-by: Anuj Mittal <[email protected]> ---- - Lib/test/test_ssl.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py -index f51572e319..7a14053cee 100644 ---- a/Lib/test/test_ssl.py -+++ b/Lib/test/test_ssl.py -@@ -2817,7 +2817,7 @@ else: - ssl.OP_NO_TLSv1 | ssl.OP_NO_TLSv1_1 | ssl.OP_NO_TLSv1_2 - ) - with ThreadedEchoServer(context=context) as server: -- with context.wrap_socket(socket.socket()) as s: -+ with closing(context.wrap_socket(socket.socket())) as s: - s.connect((HOST, server.port)) - self.assertIn(s.cipher()[0], [ - 'TLS_AES_256_GCM_SHA384', --- -2.17.1 -
meta/recipes-devtools/python/python/0003-bpo-34834-Fix-test_ssl.test_options-to-account-for-O.patch deleted +0 -37
@@ -1,37 +0,0 @@ -From 8b06d56d26eee289fec22b9b72ab4c7cc3d6c482 Mon Sep 17 00:00:00 2001 -From: Dimitri John Ledkov <[email protected]> -Date: Fri, 28 Sep 2018 16:34:16 +0100 -Subject: [PATCH 3/4] bpo-34834: Fix test_ssl.test_options to account for - OP_ENABLE_MIDDLEBOX_COMPAT. - -Signed-off-by: Dimitri John Ledkov <[email protected]> - -https://bugs.python.org/issue34834 - -Patch taken from Ubuntu. -Upstream-Status: Submitted [https://github.com/python/cpython/pull/9624] - -Signed-off-by: Anuj Mittal <[email protected]> ---- - Lib/test/test_ssl.py | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py -index 7a14053cee..efc906a5ba 100644 ---- a/Lib/test/test_ssl.py -+++ b/Lib/test/test_ssl.py -@@ -777,6 +777,11 @@ class ContextTests(unittest.TestCase): - default = (ssl.OP_ALL | ssl.OP_NO_SSLv2 | ssl.OP_NO_SSLv3) - if not IS_LIBRESSL and ssl.OPENSSL_VERSION_INFO >= (1, 1, 0): - default |= ssl.OP_NO_COMPRESSION -+ if not IS_LIBRESSL and ssl.OPENSSL_VERSION_INFO >= (1, 1, 1): -+ # define MIDDLEBOX constant, as python2.7 does not know about it -+ # but it is used by default. -+ OP_ENABLE_MIDDLEBOX_COMPAT = 1048576L -+ default |= OP_ENABLE_MIDDLEBOX_COMPAT - self.assertEqual(default, ctx.options) - ctx.options |= ssl.OP_NO_TLSv1 - self.assertEqual(default | ssl.OP_NO_TLSv1, ctx.options) --- -2.17.1 -
meta/recipes-devtools/python/python/0004-bpo-34836-fix-test_default_ecdh_curve-needs-no-tlsv1.patch deleted +0 -34
@@ -1,34 +0,0 @@ -From 946a7969345c6697697effd226ec396d3fea05b7 Mon Sep 17 00:00:00 2001 -From: Dimitri John Ledkov <[email protected]> -Date: Fri, 28 Sep 2018 17:30:19 +0100 -Subject: [PATCH 4/4] bpo-34836: fix test_default_ecdh_curve, needs no tlsv1.3. - -Signed-off-by: Dimitri John Ledkov <[email protected]> - -https://bugs.python.org/issue34836 - -Patch taken from Ubuntu. -Upstream-Status: Submitted [https://github.com/python/cpython/pull/9626] - -Signed-off-by: Anuj Mittal <[email protected]> ---- - Lib/test/test_ssl.py | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py -index efc906a5ba..4a3286cd5f 100644 ---- a/Lib/test/test_ssl.py -+++ b/Lib/test/test_ssl.py -@@ -2836,6 +2836,9 @@ else: - # should be enabled by default on SSL contexts. - context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) - context.load_cert_chain(CERTFILE) -+ # TLSv1.3 defaults to PFS key agreement and no longer has KEA in -+ # cipher name. -+ context.options |= ssl.OP_NO_TLSv1_3 - # Prior to OpenSSL 1.0.0, ECDH ciphers have to be enabled - # explicitly using the 'ECCdraft' cipher alias. Otherwise, - # our default cipher list should prefer ECDH-based ciphers --- -2.17.1 -
meta/recipes-devtools/python/python_2.7.16.bb renamed from meta/recipes-devtools/python/python_2.7.15.bb +0 -2
@@ -31,8 +31,6 @@ SRC_URI += "\ file://pass-missing-libraries-to-Extension-for-mul.patch \ file://support_SOURCE_DATE_EPOCH_in_py_compile_2.7.patch \ file://float-endian.patch \ - file://0001-closes-bpo-34540-Convert-shutil._call_external_zip-t.patch \ - file://0001-2.7-bpo-34623-Use-XML_SetHashSalt-in-_elementtree-GH.patch \ " S = "${WORKDIR}/Python-${PV}"
Signature · 1 line
2.7.4
[thud] 05/30] python: add a fix for CVE-2019-9948 and CVE-2019-9636
In reply to Armin KusterFrom: Martin Jansa <[email protected]>
Source: OpenEmbedded.org
MR: 98320, 98319
Type: Security Fix
Disposition: Backport from https://git.openembedded.org/openembedded-core/commit/meta/recipes-devtools/python/python_2.7.16.bb?id=9d23b982fa4e0290761b3d15f6959779fed72ad6
ChangeID: e79b6fe3b7b4253bf0d76b029070ae869d5234bd
Description:
Fixes:
CVE-2019-9948
CVE-2019-9636
CVE-2019-9940 is a dup of 9948 per python.org
CVE-2019-9947 appears to be a dup of 9940 per https://bugs.python.org/issue30458#msg295067
--- .../python/bpo-35907-cve-2019-9948-fix.patch | 55 ++++++++++ .../python/python/bpo-35907-cve-2019-9948.patch | 55 ++++++++++ .../python/bpo-36216-cve-2019-9636-fix.patch | 28 ++++++ .../python/python/bpo-36216-cve-2019-9636.patch | 111 +++++++++++++++++++++ meta/recipes-devtools/python/python_2.7.16.bb | 4 + 5 files changed, 253 insertions(+) create mode 100644 meta/recipes-devtools/python/python/bpo-35907-cve-2019-9948-fix.patch create mode 100644 meta/recipes-devtools/python/python/bpo-35907-cve-2019-9948.patch create mode 100644 meta/recipes-devtools/python/python/bpo-36216-cve-2019-9636-fix.patch create mode 100644 meta/recipes-devtools/python/python/bpo-36216-cve-2019-9636.patch
meta/recipes-devtools/python/python/bpo-35907-cve-2019-9948-fix.patch new file +55 -0
@@ -0,0 +1,55 @@ +From 179a5f75f1121dab271fe8f90eb35145f9dcbbda Mon Sep 17 00:00:00 2001 +From: Sihoon Lee <[email protected]> +Date: Fri, 17 May 2019 02:41:06 +0900 +Subject: [PATCH] Update test_urllib.py and urllib.py\nchange assertEqual into + assertRasies in DummyURLopener test, and simplify mitigation + +Upstream-Status: Submitted https://github.com/python/cpython/pull/11842 + +CVE: CVE-2019-9948 + +Signed-off-by: Martin Jansa <[email protected]> +--- + Lib/test/test_urllib.py | 11 +++-------- + Lib/urllib.py | 4 ++-- + 2 files changed, 5 insertions(+), 10 deletions(-) + +diff --git a/Lib/test/test_urllib.py b/Lib/test/test_urllib.py +index e5f210e62a18..1e23dfb0bb16 100644 +--- a/Lib/test/test_urllib.py ++++ b/Lib/test/test_urllib.py +@@ -1027,14 +1027,9 @@ def test_local_file_open(self): + class DummyURLopener(urllib.URLopener): + def open_local_file(self, url): + return url +- self.assertEqual(DummyURLopener().open( +- 'local-file://example'), '//example') +- self.assertEqual(DummyURLopener().open( +- 'local_file://example'), '//example') +- self.assertRaises(IOError, urllib.urlopen, +- 'local-file://example') +- self.assertRaises(IOError, urllib.urlopen, +- 'local_file://example') ++ for url in ('local_file://example', 'local-file://example'): ++ self.assertRaises(IOError, DummyURLopener().open, url) ++ self.assertRaises(IOError, urllib.urlopen, url) + + # Just commented them out. + # Can't really tell why keep failing in windows and sparc. +diff --git a/Lib/urllib.py b/Lib/urllib.py +index a24e9a5c68fb..39b834054e9e 100644 +--- a/Lib/urllib.py ++++ b/Lib/urllib.py +@@ -203,10 +203,10 @@ def open(self, fullurl, data=None): + name = 'open_' + urltype + self.type = urltype + name = name.replace('-', '_') +- ++ + # bpo-35907: # disallow the file reading with the type not allowed + if not hasattr(self, name) or \ +- (self == _urlopener and name == 'open_local_file'): ++ getattr(self, name) == self.open_local_file: + if proxy: + return self.open_unknown_proxy(proxy, fullurl, data) + else:
meta/recipes-devtools/python/python/bpo-35907-cve-2019-9948.patch new file +55 -0
55 lines not on this page · raw message
meta/recipes-devtools/python/python/bpo-36216-cve-2019-9636-fix.patch new file +28 -0
@@ -0,0 +1,28 @@ +From 06b5ee585d6e76bdbb4002f642d864d860cbbd2b Mon Sep 17 00:00:00 2001 +From: Steve Dower <[email protected]> +Date: Tue, 12 Mar 2019 08:23:33 -0700 +Subject: [PATCH] bpo-36216: Only print test messages when verbose + +CVE: CVE-2019-9636 + +Upstream-Status: Backport https://github.com/python/cpython/pull/12291/commits/06b5ee585d6e76bdbb4002f642d864d860cbbd2b + +Signed-off-by: Martin Jansa <[email protected]> +--- + Lib/test/test_urlparse.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/Lib/test/test_urlparse.py b/Lib/test/test_urlparse.py +index 73b0228ea8e3..1830d0b28688 100644 +--- a/Lib/test/test_urlparse.py ++++ b/Lib/test/test_urlparse.py +@@ -644,7 +644,8 @@ def test_urlsplit_normalization(self): + for scheme in [u"http", u"https", u"ftp"]: + for c in denorm_chars: + url = u"{}://netloc{}false.netloc/path".format(scheme, c) +- print "Checking %r" % url ++ if test_support.verbose: ++ print "Checking %r" % url + with self.assertRaises(ValueError): + urlparse.urlsplit(url) +
meta/recipes-devtools/python/python/bpo-36216-cve-2019-9636.patch new file +111 -0
111 lines not on this page · raw message
meta/recipes-devtools/python/python_2.7.16.bb +4 -0
@@ -31,6 +31,10 @@ SRC_URI += "\ file://pass-missing-libraries-to-Extension-for-mul.patch \ file://support_SOURCE_DATE_EPOCH_in_py_compile_2.7.patch \ file://float-endian.patch \ + file://bpo-35907-cve-2019-9948.patch \ + file://bpo-35907-cve-2019-9948-fix.patch \ + file://bpo-36216-cve-2019-9636.patch \ + file://bpo-36216-cve-2019-9636-fix.patch \ " S = "${WORKDIR}/Python-${PV}"
Signature · 1 line
2.7.4
[thud] 06/30] busybox: Security fixes for CVE-2018-20679 CVE-2019-5747
In reply to Armin KusterSource: busybox.git
MR: 97332
Type: Security Fix
Disposition: Backport from busybox.git
ChangeID: ec203c79e7322de1ed5721d08b6f59b1eca67c7d Description:
Affects < 1.30.0
Fixes:
CVE-2018-20679
CVE-2019-5747
--- .../busybox/busybox/CVE-2018-20679.patch | 142 +++++++++++++++++++++ .../busybox/busybox/CVE-2019-5747.patch | 60 +++++++++ meta/recipes-core/busybox/busybox_1.29.3.bb | 2 + 3 files changed, 204 insertions(+) create mode 100644 meta/recipes-core/busybox/busybox/CVE-2018-20679.patch create mode 100644 meta/recipes-core/busybox/busybox/CVE-2019-5747.patch
meta/recipes-core/busybox/busybox/CVE-2018-20679.patch new file +142 -0
@@ -0,0 +1,142 @@ +From 6d3b4bb24da9a07c263f3c1acf8df85382ff562c Mon Sep 17 00:00:00 2001 +From: Denys Vlasenko <[email protected]> +Date: Mon, 17 Dec 2018 18:07:18 +0100 +Subject: [PATCH] udhcpc: check that 4-byte options are indeed 4-byte, closes + 11506 + +function old new delta +udhcp_get_option32 - 27 +27 +udhcp_get_option 231 248 +17 +------------------------------------------------------------------------------ +(add/remove: 1/0 grow/shrink: 1/0 up/down: 44/0) Total: 44 bytes + +Signed-off-by: Denys Vlasenko <[email protected]> + +Upstream-Status: Backport +CVE: CVE-2018-20679 + +Affects < 1.30.0 + +signed-off-by: Armin Kuster <[email protected]> + +--- + networking/udhcp/common.c | 19 +++++++++++++++++++ + networking/udhcp/common.h | 4 ++++ + networking/udhcp/dhcpc.c | 6 +++--- + networking/udhcp/dhcpd.c | 6 +++--- + 4 files changed, 29 insertions(+), 6 deletions(-) + +Index: busybox-1.29.3/networking/udhcp/common.c +=================================================================== +--- busybox-1.29.3.orig/networking/udhcp/common.c ++++ busybox-1.29.3/networking/udhcp/common.c +@@ -270,6 +270,15 @@ uint8_t* FAST_FUNC udhcp_get_option(stru + goto complain; /* complain and return NULL */ + + if (optionptr[OPT_CODE] == code) { ++ if (optionptr[OPT_LEN] == 0) { ++ /* So far no valid option with length 0 known. ++ * Having this check means that searching ++ * for DHCP_MESSAGE_TYPE need not worry ++ * that returned pointer might be unsafe ++ * to dereference. ++ */ ++ goto complain; /* complain and return NULL */ ++ } + log_option("option found", optionptr); + return optionptr + OPT_DATA; + } +@@ -287,6 +296,16 @@ uint8_t* FAST_FUNC udhcp_get_option(stru + return NULL; + } + ++uint8_t* FAST_FUNC udhcp_get_option32(struct dhcp_packet *packet, int code) ++{ ++ uint8_t *r = udhcp_get_option(packet, code); ++ if (r) { ++ if (r[-1] != 4) ++ r = NULL; ++ } ++ return r; ++} ++ + /* Return the position of the 'end' option (no bounds checking) */ + int FAST_FUNC udhcp_end_option(uint8_t *optionptr) + { +Index: busybox-1.29.3/networking/udhcp/common.h +=================================================================== +--- busybox-1.29.3.orig/networking/udhcp/common.h ++++ busybox-1.29.3/networking/udhcp/common.h +@@ -204,6 +204,10 @@ extern const uint8_t dhcp_option_lengths + unsigned FAST_FUNC udhcp_option_idx(const char *name, const char *option_strings); + + uint8_t *udhcp_get_option(struct dhcp_packet *packet, int code) FAST_FUNC; ++/* Same as above + ensures that option length is 4 bytes ++ * (returns NULL if size is different) ++ */ ++uint8_t *udhcp_get_option32(struct dhcp_packet *packet, int code) FAST_FUNC; + int udhcp_end_option(uint8_t *optionptr) FAST_FUNC; + void udhcp_add_binary_option(struct dhcp_packet *packet, uint8_t *addopt) FAST_FUNC; + #if ENABLE_UDHCPC || ENABLE_UDHCPD +Index: busybox-1.29.3/networking/udhcp/dhcpc.c +=================================================================== +--- busybox-1.29.3.orig/networking/udhcp/dhcpc.c ++++ busybox-1.29.3/networking/udhcp/dhcpc.c +@@ -1694,7 +1694,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c + * They say ISC DHCP client supports this case. + */ + server_addr = 0; +- temp = udhcp_get_option(&packet, DHCP_SERVER_ID); ++ temp = udhcp_get_option32(&packet, DHCP_SERVER_ID); + if (!temp) { + bb_error_msg("no server ID, using 0.0.0.0"); + } else { +@@ -1721,7 +1721,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c + struct in_addr temp_addr; + uint8_t *temp; + +- temp = udhcp_get_option(&packet, DHCP_LEASE_TIME); ++ temp = udhcp_get_option32(&packet, DHCP_LEASE_TIME); + if (!temp) { + bb_error_msg("no lease time with ACK, using 1 hour lease"); + lease_seconds = 60 * 60; +@@ -1817,7 +1817,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c + uint32_t svid; + uint8_t *temp; + +- temp = udhcp_get_option(&packet, DHCP_SERVER_ID); ++ temp = udhcp_get_option32(&packet, DHCP_SERVER_ID); + if (!temp) { + non_matching_svid: + log1("received DHCP NAK with wrong" +Index: busybox-1.29.3/networking/udhcp/dhcpd.c +=================================================================== +--- busybox-1.29.3.orig/networking/udhcp/dhcpd.c ++++ busybox-1.29.3/networking/udhcp/dhcpd.c +@@ -640,7 +640,7 @@ static void add_server_options(struct dh + static uint32_t select_lease_time(struct dhcp_packet *packet) + { + uint32_t lease_time_sec = server_config.max_lease_sec; +- uint8_t *lease_time_opt = udhcp_get_option(packet, DHCP_LEASE_TIME); ++ uint8_t *lease_time_opt = udhcp_get_option32(packet, DHCP_LEASE_TIME); + if (lease_time_opt) { + move_from_unaligned32(lease_time_sec, lease_time_opt); + lease_time_sec = ntohl(lease_time_sec); +@@ -987,7 +987,7 @@ int udhcpd_main(int argc UNUSED_PARAM, c + } + + /* Get SERVER_ID if present */ +- server_id_opt = udhcp_get_option(&packet, DHCP_SERVER_ID); ++ server_id_opt = udhcp_get_option32(&packet, DHCP_SERVER_ID); + if (server_id_opt) { + uint32_t server_id_network_order; + move_from_unaligned32(server_id_network_order, server_id_opt); +@@ -1011,7 +1011,7 @@ int udhcpd_main(int argc UNUSED_PARAM, c + } + + /* Get REQUESTED_IP if present */ +- requested_ip_opt = udhcp_get_option(&packet, DHCP_REQUESTED_IP); ++ requested_ip_opt = udhcp_get_option32(&packet, DHCP_REQUESTED_IP); + if (requested_ip_opt) { + move_from_unaligned32(requested_nip, requested_ip_opt); + }
meta/recipes-core/busybox/busybox/CVE-2019-5747.patch new file +60 -0
60 lines not on this page · raw message
meta/recipes-core/busybox/busybox_1.29.3.bb +2 -0
@@ -41,6 +41,8 @@ SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \ file://rcS \ file://rcK \ file://makefile-libbb-race.patch \ + file://CVE-2018-20679.patch \ + file://CVE-2019-5747.patch \ " SRC_URI_append_libc-musl = " file://musl.cfg "
Signature · 1 line
2.7.4
[thud] 07/30] sqlite3: Security fixes for CVE-2018-20505 & 20506
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: sqlite.org
MR: 97484, 97490
Type: Security Fix
Disposition: Backport from sqilte.org
ChangeID: c6105b5d3ce4fb2c0f38c3cab745b769d2df38f5 Description:
Affects < 3.26.0
fixes:
CVE-2018-20505
CVE-2018-20506
--- .../sqlite/files/CVE-2018-20505.patch | 31 +++++++ .../sqlite/files/CVE-2018-20506.patch | 103 +++++++++++++++++++++ meta/recipes-support/sqlite/sqlite3_3.23.1.bb | 2 + 3 files changed, 136 insertions(+) create mode 100644 meta/recipes-support/sqlite/files/CVE-2018-20505.patch create mode 100644 meta/recipes-support/sqlite/files/CVE-2018-20506.patch
meta/recipes-support/sqlite/files/CVE-2018-20505.patch new file +31 -0
@@ -0,0 +1,31 @@ +From: D. Richard Hipp <[email protected]> +Date: Sat, 3 Nov 2018 13:11:24 +0000 (+0000) +Subject: Fix a assert() in the query planner that can arise when doing row-value +X-Git-Tag: version-3.26.0~59 +X-Git-Url: https://repo.or.cz/sqlite.git/commitdiff_plain/24298027a30cf7941f16a8cc878d0c1f9f14308f + +Fix a assert() in the query planner that can arise when doing row-value +operations on a PRIMARY KEY that contains duplicate columns. +Ticket [1a84668dcfdebaf12415d]. + +https://sqlite.org/src/info/1a84668dcfdebaf12415d + +upstream-Status: Backport +CVE: CVE-2018-20505 +affects <= 3.26.0 + +Signed-off-by: Armin Kuster <[email protected]> + +Index: sqlite-autoconf-3230100/sqlite3.c +=================================================================== +--- sqlite-autoconf-3230100.orig/sqlite3.c ++++ sqlite-autoconf-3230100/sqlite3.c +@@ -131231,7 +131231,7 @@ static Expr *removeUnindexableInClauseTe + for(i=iEq; i<pLoop->nLTerm; i++){ + if( pLoop->aLTerm[i]->pExpr==pX ){ + int iField = pLoop->aLTerm[i]->iField - 1; +- assert( pOrigRhs->a[iField].pExpr!=0 ); ++ if( pOrigRhs->a[iField].pExpr==0 ) continue; /* Duplicate PK column */ + pRhs = sqlite3ExprListAppend(pParse, pRhs, pOrigRhs->a[iField].pExpr); + pOrigRhs->a[iField].pExpr = 0; + assert( pOrigLhs->a[iField].pExpr!=0 );
meta/recipes-support/sqlite/files/CVE-2018-20506.patch new file +103 -0
103 lines not on this page · raw message
meta/recipes-support/sqlite/sqlite3_3.23.1.bb +2 -0
@@ -5,6 +5,8 @@ LIC_FILES_CHKSUM = "file://sqlite3.h;endline=11;md5=786d3dc581eff03f4fd9e4a77ed0 SRC_URI = "\ http://www.sqlite.org/2018/sqlite-autoconf-${SQLITE_PV}.tar.gz \ + file://CVE-2018-20505.patch \ + file://CVE-2018-20506.patch \ " SRC_URI[md5sum] = "99a51b40a66872872a91c92f6d0134fa" SRC_URI[sha256sum] = "92842b283e5e744eff5da29ed3c69391de7368fccc4d0ee6bf62490ce555ef25"
Signature · 1 line
2.7.4
[thud] 08/30] file: Multiple Secruity fixes
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: https://github.com/file
MR: 97573, 97578, 97583, 97588
Type: Security Fix
Disposition: Backport from https://github.com/file/file
ChangeID: 159e532d518623f19ba777c8edc24d2dc7e3a4e9 Description:
CVE-2019-8905 is the same fix as CVE-2019-8907
Affects < 5.36.0
Fixes:
CVE-2019-8904
CVE-2019-8906
CVE-2019-8906
CVE-2019-8907
--- .../recipes-devtools/file/file/CVE-2019-8904.patch | 30 ++++++ .../file/file/CVE-2019-8905_CVE-2019-8907.patch | 120 +++++++++++++++++++++ .../recipes-devtools/file/file/CVE-2019-8906.patch | 27 +++++ meta/recipes-devtools/file/file_5.34.bb | 3 + 4 files changed, 180 insertions(+) create mode 100644 meta/recipes-devtools/file/file/CVE-2019-8904.patch create mode 100644 meta/recipes-devtools/file/file/CVE-2019-8905_CVE-2019-8907.patch create mode 100644 meta/recipes-devtools/file/file/CVE-2019-8906.patch
meta/recipes-devtools/file/file/CVE-2019-8904.patch new file +30 -0
@@ -0,0 +1,30 @@ +From 94b7501f48e134e77716e7ebefc73d6bbe72ba55 Mon Sep 17 00:00:00 2001 +From: Christos Zoulas <[email protected]> +Date: Mon, 18 Feb 2019 17:30:41 +0000 +Subject: [PATCH] PR/62: spinpx: Avoid non-nul-terminated string read. + +Upstream-Status: Backport +CVE: CVE-2019-8904 +Affects < 5.36 +[Fixup for thud context] +Signed-off-by: Armin Kuster <[email protected]> + +--- + src/readelf.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +Index: git/src/readelf.c +=================================================================== +--- git.orig/src/readelf.c ++++ git/src/readelf.c +@@ -558,8 +558,8 @@ do_bid_note(struct magic_set *ms, unsign + } + if (namesz == 4 && strcmp((char *)&nbuf[noff], "Go") == 0 && + type == NT_GO_BUILD_ID && descsz < 128) { +- if (file_printf(ms, ", Go BuildID=%s", +- (char *)&nbuf[doff]) == -1) ++ if (file_printf(ms, ", Go BuildID=%.*s", ++ CAST(int, descsz), CAST(char *, &nbuf[doff])) == -1) + return 1; + return 1; + }
meta/recipes-devtools/file/file/CVE-2019-8905_CVE-2019-8907.patch new file +120 -0
120 lines not on this page · raw message
meta/recipes-devtools/file/file/CVE-2019-8906.patch new file +27 -0
@@ -0,0 +1,27 @@ +From 2858eaf99f6cc5aae129bcbf1e24ad160240185f Mon Sep 17 00:00:00 2001 +From: Christos Zoulas <[email protected]> +Date: Wed, 2 Jan 2019 19:44:14 +0000 +Subject: [PATCH] Avoid OOB read (found by ASAN reported by F. Alonso) + +Upstream-Status: Backport +CVE: CVE-2019-8906 +Affects < 5.36 +[Fixup for thud context] +Signed-off-by: Armin Kuster <[email protected]> +--- + src/readelf.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +Index: git/src/readelf.c +=================================================================== +--- git.orig/src/readelf.c ++++ git/src/readelf.c +@@ -745,7 +745,7 @@ do_core_note(struct magic_set *ms, unsig + char sbuf[512]; + struct NetBSD_elfcore_procinfo pi; + memset(&pi, 0, sizeof(pi)); +- memcpy(&pi, nbuf + doff, descsz); ++ memcpy(&pi, nbuf + doff, MIN(descsz, sizeof(pi))); + + if (file_printf(ms, ", from '%.31s', pid=%u, uid=%u, " + "gid=%u, nlwps=%u, lwp=%u (signal %u/code %u)",
meta/recipes-devtools/file/file_5.34.bb +3 -0
@@ -16,6 +16,9 @@ UPSTREAM_CHECK_GITTAGREGEX = "FILE(?P<pver>(?!6_23).+)" SRC_URI = "git://github.com/file/file.git \ file://debian-742262.patch \ + file://CVE-2019-8906.patch \ + file://CVE-2019-8904.patch \ + file://CVE-2019-8905_CVE-2019-8907.patch \ " SRCREV = "315cef2f699da3c31a54bd3c6c6070680fbaf1f5"
Signature · 1 line
2.7.4
[thud] 09/30] cups: upgrade to 2.2.9
In reply to Armin KusterFrom: Chen Qi <[email protected]>
Source: OpenEmbedded.org
MR: 97351
Type: Integration
Disposition: Backport from https://git.openembedded.org/openembedded-core/commit/meta/recipes-extended/cups?h=warrior&id=ee57d79aec06e9b160cf2713636cda650ba68d5a
ChangeID: ee57d79aec06e9b160cf2713636cda650ba68d5a
Description:
The following patch is rebased.
0001-don-t-try-to-run-generated-binaries.patch
CUPS 2.2.9 is a bug fix release that addresses issues in the scheduler, IPP Everywhere support, CUPS library, and USB printer support. Changes include:
Localization changes (Issue #5348, Issue #5362, Issue #5408) Documentation updates (Issue #5369)
The lpadmin command would create a non-working printer in some error cases (Issue #5305)
The scheduler would crash if an empty AccessLog directive was specified (Issue #5309)
Fixed a regression in the changes to ippValidateAttribute (Issue #5322, Issue #5330)
Fixed a crash bug in the Epson dot matrix driver (Issue #5323) Automatic debug logging of job errors did not work with systemd (Issue #5337) The web interface did not list the IPP Everywhere "driver" (Issue #5338) The IPP Everywhere "driver" now properly supports face-up printers (Issue #5345)
Fixed some typos in the label printer drivers (Issue #5350) Multi-file jobs could get stuck if the backend failed (Issue #5359, Issue #5413)
The IPP Everywhere "driver" no longer does local filtering when printing to a shared CUPS printer (Issue #5361)
The lpadmin command now correctly reports IPP errors when configuring an IPP Everywhere printer (Issue #5370)
Fixed some memory leaks discovered by Coverity (Issue #5375)
The PPD compiler incorrectly terminated JCL options (Issue #5379) The cupstestppd utility did not generate errors for missing/mismatched CloseUI/JCLCloseUI keywords (Issue #5381)
The scheduler now reports the actual location of the log file (Issue #5398) Added a USB quirk rule (Issue #5420)
The scheduler was being backgrounded on macOS, causing applications to spin (rdar://40436080)
The scheduler did not validate that required initial request attributes were in the operation group (rdar://41098178)
Authentication in the web interface did not work on macOS (rdar://41444473) Fixed an issue with HTTP Digest authentication (rdar://41709086) The scheduler could crash when job history was purged (rdar://42198057) Dropped non-working RSS subscriptions UI from web interface templates. Fixed a memory leak for some IPP (extension) syntaxes.
---
.../0001-don-t-try-to-run-generated-binaries.patch | 29 +++++++++++-----------
.../cups/{cups_2.2.8.bb => cups_2.2.9.bb} | 4 +--
2 files changed, 17 insertions(+), 16 deletions(-)
rename meta/recipes-extended/cups/{cups_2.2.8.bb => cups_2.2.9.bb} (40%)meta/recipes-extended/cups/cups/0001-don-t-try-to-run-generated-binaries.patch +15 -14
@@ -1,20 +1,21 @@ -Upstream-Status: Inappropriate [embedded specific] - -From 90069586167b930befce7303aea57078f04b4ed8 Mon Sep 17 00:00:00 2001 +From 1fb07162a9ed187cccf06e34c9bf841d15c6e64e Mon Sep 17 00:00:00 2001 From: Koen Kooi <[email protected]> Date: Sun, 30 Jan 2011 16:37:27 +0100 Subject: [PATCH] don't try to run generated binaries +Upstream-Status: Inappropriate [embedded specific] + Signed-off-by: Koen Kooi <[email protected]> + --- - ppdc/Makefile | 30 +++++++++++++++--------------- - 1 files changed, 15 insertions(+), 15 deletions(-) + ppdc/Makefile | 32 ++++++++++++++++---------------- + 1 file changed, 16 insertions(+), 16 deletions(-) -Index: cups-2.2.6/ppdc/Makefile -=================================================================== ---- cups-2.2.6.orig/ppdc/Makefile -+++ cups-2.2.6/ppdc/Makefile -@@ -228,8 +228,8 @@ genstrings: genstrings.o libcupsppdc.a +diff --git a/ppdc/Makefile b/ppdc/Makefile +index e563988..973dd3f 100644 +--- a/ppdc/Makefile ++++ b/ppdc/Makefile +@@ -189,8 +189,8 @@ genstrings: genstrings.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) \ $(LD_CXX) $(ARCHFLAGS) $(LDFLAGS) -o genstrings genstrings.o \ libcupsppdc.a ../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) \ $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
@@ -25,10 +26,10 @@ Index: cups-2.2.6/ppdc/Makefile # -@@ -246,9 +246,9 @@ ppdc-static: ppdc.o libcupsppdc.a ../cu - $(LD_CXX) $(ARCHFLAGS) $(LDFLAGS) -o ppdc-static ppdc.o libcupsppdc.a \ +@@ -209,9 +209,9 @@ ppdc-static: ppdc.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) foo.drv foo-fr.po ../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \ $(COMMONLIBS) $(LIBZ) + $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ - echo Testing PPD compiler... - ./ppdc-static -l en,fr -I ../data foo.drv - ./ppdc-static -l en,fr -z -I ../data foo.drv
@@ -38,10 +39,10 @@ Index: cups-2.2.6/ppdc/Makefile # -@@ -274,17 +274,17 @@ ppdi-static: ppdc-static ppdi.o libcups - $(LD_CXX) $(ARCHFLAGS) $(LDFLAGS) -o ppdi-static ppdi.o libcupsppdc.a \ +@@ -240,17 +240,17 @@ ppdi-static: ppdc-static ppdi.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) ../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \ $(COMMONLIBS) $(LIBZ) + $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ - echo Testing PPD importer... - $(RM) -r ppd ppd2 sample-import.drv - ./ppdc-static -l en -I ../data sample.drv
meta/recipes-extended/cups/cups_2.2.9.bb renamed from meta/recipes-extended/cups/cups_2.2.8.bb +2 -2
@@ -2,5 +2,5 @@ require cups.inc LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=f212b4338db0da8cb892e94bf2949460" -SRC_URI[md5sum] = "33150d08993a04c8e22176e93805a051" -SRC_URI[sha256sum] = "3968fc1d26fc48727508db1c1380e36c6694ab90177fd6920aec5f6cc73af9e4" +SRC_URI[md5sum] = "798e83bb1a240f5417a252903d83ae0c" +SRC_URI[sha256sum] = "6d22d5da253b97643320da0bf95574acd85ff2abe3ec1a51d36093841d891156"
Signature · 1 line
2.7.4
[thud] 10/30] cups: upgrade to 2.2.10
In reply to Armin KusterFrom: Chen Qi <[email protected]>
Source: OpenEmbedded.org
MR: 97351
Type: Security Fix
Disposition: Backport from https://git.openembedded.org/openembedded-core/commit/meta/recipes-extended/cups?h=warrior&id=fbe7a0c9bab7c9be7fd2c0da8b2af61e66de1ebd
ChangeID: fbe7a0c9bab7c9be7fd2c0da8b2af61e66de1ebd
Description:
CUPS 2.2.10 is a bug fix release that addresses issues in the scheduler, IPP Everywhere support, CUPS library, and USB printer support. Changes include:
CVE-2018-4300: Linux session cookies used a predictable random number seed.
The lpoptions command now works with IPP Everywhere printers that have not yet been added as local queues (Issue #5045) Added USB quirk rules (Issue #5395, Issue #5443)
The generated PPD files for IPP Everywhere printers did not contain the cupsManualCopies keyword (Issue #5433) Kerberos credentials might be truncated (Issue #5435)
The handling of MaxJobTime 0 did not match the documentation (Issue #5438)
Incorporated the page accounting changes from CUPS 2.3 (Issue #5439)
Fixed a bug adding a queue with the -E option (Issue #5440)
Fixed a crash bug when mapping PPD duplex options to IPP attributes (rdar://46183976)
---
meta/recipes-extended/cups/{cups_2.2.9.bb => cups_2.2.10.bb} | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
rename meta/recipes-extended/cups/{cups_2.2.9.bb => cups_2.2.10.bb} (40%)meta/recipes-extended/cups/cups_2.2.10.bb renamed from meta/recipes-extended/cups/cups_2.2.9.bb +2 -2
@@ -2,5 +2,5 @@ require cups.inc LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=f212b4338db0da8cb892e94bf2949460" -SRC_URI[md5sum] = "798e83bb1a240f5417a252903d83ae0c" -SRC_URI[sha256sum] = "6d22d5da253b97643320da0bf95574acd85ff2abe3ec1a51d36093841d891156" +SRC_URI[md5sum] = "3d22d747403ec5dcd0b66d1332564816" +SRC_URI[sha256sum] = "77c8b2b3bb7fe8b5fbfffc307f2c817b2d7ec67b657f261a1dd1c61ab81205bb"
Signature · 1 line
2.7.4
[thud] 11/30] cairo: fix CVE-2018-19876 CVE-2019-6461 CVE-2019-6462
In reply to Armin KusterFrom: Ross Burton <[email protected]>
Source: OpenEmbedded.org
MR: 97538, 97543
Type: Security Fix
Disposition: Backport from https://git.openembedded.org/openembedded-core/commit/meta/recipes-graphics/cairo?h=warrior&id=078e4d5c2114d942806cd0d5ad501805a011e841
ChangeID: fa8bdd44ad8613bb0679a1f6d9d670c3b47a0677
Description:
CVE-2018-19876 is a backport from upstream.
CVE-2019-6461 and CVE-2019-6462 are patches taken from Clear Linux.
Issue was introduced in 1.15.8 by:
commit 721b7ea0a785afaa04b6da63f970c3c57666fdfe
--- .../recipes-graphics/cairo/cairo/CVE-2019-6461.patch | 19 +++++++++++++++++++ .../recipes-graphics/cairo/cairo/CVE-2019-6462.patch | 20 ++++++++++++++++++++ meta/recipes-graphics/cairo/cairo_1.14.12.bb | 2 ++ 3 files changed, 41 insertions(+) create mode 100644 meta/recipes-graphics/cairo/cairo/CVE-2019-6461.patch create mode 100644 meta/recipes-graphics/cairo/cairo/CVE-2019-6462.patch
meta/recipes-graphics/cairo/cairo/CVE-2019-6461.patch new file +19 -0
@@ -0,0 +1,19 @@ +There is a potential infinite-loop in function _arc_error_normalized(). + +CVE: CVE-2019-6461 +Upstream-Status: Pending +Signed-off-by: Ross Burton <[email protected]> + +diff --git a/src/cairo-arc.c b/src/cairo-arc.c +index 390397bae..f9249dbeb 100644 +--- a/src/cairo-arc.c ++++ b/src/cairo-arc.c +@@ -99,7 +99,7 @@ _arc_max_angle_for_tolerance_normalized (double tolerance) + do { + angle = M_PI / i++; + error = _arc_error_normalized (angle); +- } while (error > tolerance); ++ } while (error > tolerance && error > __DBL_EPSILON__); + + return angle; + }
meta/recipes-graphics/cairo/cairo/CVE-2019-6462.patch new file +20 -0
@@ -0,0 +1,20 @@ +There is an assertion in function _cairo_arc_in_direction(). + +CVE: CVE-2019-6462 +Upstream-Status: Pending +Signed-off-by: Ross Burton <[email protected]> + +diff --git a/src/cairo-arc.c b/src/cairo-arc.c +index 390397bae..1bde774a4 100644 +--- a/src/cairo-arc.c ++++ b/src/cairo-arc.c +@@ -186,7 +186,8 @@ _cairo_arc_in_direction (cairo_t *cr, + if (cairo_status (cr)) + return; + +- assert (angle_max >= angle_min); ++ if (angle_max < angle_min) ++ return; + + if (angle_max - angle_min > 2 * M_PI * MAX_FULL_CIRCLES) { + angle_max = fmod (angle_max - angle_min, 2 * M_PI);
meta/recipes-graphics/cairo/cairo_1.14.12.bb +2 -0
@@ -25,6 +25,8 @@ DEPENDS = "fontconfig glib-2.0 libpng pixman zlib" SRC_URI = "http://cairographics.org/releases/cairo-${PV}.tar.xz \ file://cairo-get_bitmap_surface-bsc1036789-CVE-2017-7475.diff \ file://0001-cairo-Fix-CVE-2017-9814.patch \ + file://CVE-2019-6461.patch \ + file://CVE-2019-6462.patch \ " SRC_URI[md5sum] = "9f0db9dbfca0966be8acd682e636d165"
Signature · 1 line
2.7.4
[thud] 12/30] go-target.inc: fix go not found while multilib enabled
In reply to Armin KusterFrom: Hongxu Jia <[email protected]>
Go binaries were installed to ${libdir}/go/bin, and create symlink in ${bindir}, while enabling multilib, libdir was extended (such as /usr/lib64), but BASELIB was not (still /lib), so use baselib (such as /lib64)) to replace
--- meta/recipes-devtools/go/go-target.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-devtools/go/go-target.inc +1 -1
@@ -40,7 +40,7 @@ do_install() { for f in ${B}/${GO_BUILD_BINDIR}/*; do name=`basename $f` install -m 0755 $f ${D}${libdir}/go/bin/ - ln -sf ../${BASELIB}/go/bin/$name ${D}${bindir}/ + ln -sf ../${baselib}/go/bin/$name ${D}${bindir}/ done }
Signature · 1 line
2.7.4
[thud] 13/30] go-crosssdk: PN should use SDK_SYS, not TARGET_ARCH
In reply to Armin KusterFrom: Richard Purdie <[email protected]>
The crosssdk dependencies are handled using the virtual/ namespace so this name doesn't matter in the general sense. We want to be able to provide recipe maintainer information through overrides though, so this standardises it with the behaviour from gcc-crosssdk and ensures the maintainer overrides work.
--- meta/recipes-devtools/go/go-crosssdk.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-devtools/go/go-crosssdk.inc +1 -1
@@ -1,7 +1,7 @@ inherit crosssdk DEPENDS = "go-native virtual/${TARGET_PREFIX}gcc-crosssdk virtual/nativesdk-${TARGET_PREFIX}compilerlibs virtual/${TARGET_PREFIX}binutils-crosssdk" -PN = "go-crosssdk-${TARGET_ARCH}" +PN = "go-crosssdk-${SDK_SYS}" PROVIDES = "virtual/${TARGET_PREFIX}go-crosssdk" export GOHOSTOS = "${BUILD_GOOS}"
Signature · 1 line
2.7.4
[thud] 14/30] go: Upgrade 1.11.1 -> 1.11.4 minor release
In reply to Armin KusterFrom: Khem Raj <[email protected]>
Source: OpenEmbedded.org
MR: 98328, 98329, 98330
Type: Security Fix
Disposition: Backport from https://git.openembedded.org/openembedded-core/commit/meta/recipes-devtools/go?h=warrior&id=b964551a0d08aa921d4e0ceea2f1e28a5e83510e
ChangeID: 0b4cc69c357ba14c4e7a6c7ff926cfc6f09489b2 Description:
include:
CVE-2018-16873
CVE-2018-16874
CVE-2018-16875
Changes: https://golang.org/doc/devel/release.html#go1.11
--- meta/recipes-devtools/go/go-1.11.inc | 7 +++---- .../0007-cmd-go-make-GOROOT-precious-by-default.patch | 6 +++--- .../go/go-1.11/0008-use-GOBUILDMODE-to-set-buildmode.patch | 13 +++++-------- 3 files changed, 11 insertions(+), 15 deletions(-)
meta/recipes-devtools/go/go-1.11.inc +3 -4
@@ -1,7 +1,7 @@ require go-common.inc GO_BASEVERSION = "1.11" -GO_MINOR = ".1" +GO_MINOR = ".4" PV .= "${GO_MINOR}" FILESEXTRAPATHS_prepend := "${FILE_DIRNAME}/go-${GO_BASEVERSION}:"
@@ -17,8 +17,7 @@ SRC_URI += "\ file://0007-cmd-go-make-GOROOT-precious-by-default.patch \ file://0008-use-GOBUILDMODE-to-set-buildmode.patch \ " - SRC_URI_append_libc-musl = " file://0009-ld-replace-glibc-dynamic-linker-with-musl.patch" -SRC_URI[main.md5sum] = "eb9e9792247143705a7aacea9398cde0" -SRC_URI[main.sha256sum] = "558f8c169ae215e25b81421596e8de7572bd3ba824b79add22fba6e284db1117" +SRC_URI[main.md5sum] = "a77697673215be465d1b583680ef2318" +SRC_URI[main.sha256sum] = "4cfd42720a6b1e79a8024895fa6607b69972e8e32446df76d6ce79801bbadb15"
meta/recipes-devtools/go/go-1.11/0007-cmd-go-make-GOROOT-precious-by-default.patch +3 -3
@@ -65,8 +65,8 @@ Index: go/src/cmd/go/internal/work/exec.go =================================================================== --- go.orig/src/cmd/go/internal/work/exec.go +++ go/src/cmd/go/internal/work/exec.go -@@ -440,6 +440,23 @@ func (b *Builder) build(a *Action) (err - return fmt.Errorf("module requires Go %s", p.Module.GoVersion) +@@ -436,6 +436,23 @@ func (b *Builder) build(a *Action) (err + return fmt.Errorf("missing or invalid binary-only package; expected file %q", a.Package.Target) } + if goRootPrecious && (a.Package.Standard || a.Package.Goroot) {
@@ -89,7 +89,7 @@ Index: go/src/cmd/go/internal/work/exec.go if err := b.Mkdir(a.Objdir); err != nil { return err } -@@ -1435,6 +1452,14 @@ func BuildInstallFunc(b *Builder, a *Act +@@ -1438,6 +1455,14 @@ func BuildInstallFunc(b *Builder, a *Act return nil }
meta/recipes-devtools/go/go-1.11/0008-use-GOBUILDMODE-to-set-buildmode.patch +5 -8
@@ -18,11 +18,11 @@ Signed-off-by: Hongxu Jia <[email protected]> src/cmd/go/internal/work/build.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) -diff --git a/src/cmd/go/internal/work/build.go b/src/cmd/go/internal/work/build.go -index 145b875..595d703 100644 ---- a/src/cmd/go/internal/work/build.go -+++ b/src/cmd/go/internal/work/build.go -@@ -218,7 +218,11 @@ func AddBuildFlags(cmd *base.Command) { +Index: go/src/cmd/go/internal/work/build.go +=================================================================== +--- go.orig/src/cmd/go/internal/work/build.go ++++ go/src/cmd/go/internal/work/build.go +@@ -223,7 +223,11 @@ func AddBuildFlags(cmd *base.Command) { cmd.Flag.Var(&load.BuildAsmflags, "asmflags", "") cmd.Flag.Var(buildCompiler{}, "compiler", "")
@@ -35,6 +35,3 @@ index 145b875..595d703 100644 cmd.Flag.Var(&load.BuildGcflags, "gcflags", "") cmd.Flag.Var(&load.BuildGccgoflags, "gccgoflags", "") cmd.Flag.StringVar(&cfg.BuildMod, "mod", "", "") --- -2.7.4 -
Signature · 1 line
2.7.4
[thud] 15/30] go: update to minor update 1.11.10
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: golang.org
MR: 97548,
Type: Security Fix
Disposition: Backport from https://github.com/golang/go/issues?q=milestone%3AGo1.11.5
ChangeID: 54377c454f038a41bf35dd447a784e3e66db6268
Description:
Bug fix updates only
https://golang.org/doc/devel/release.html#go1.11
Fixes:
Affects <= 1.11.6
CVE-2019-6486
CVE-2019-9741
--- meta/recipes-devtools/go/go-1.11.inc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
meta/recipes-devtools/go/go-1.11.inc +3 -3
@@ -1,7 +1,7 @@ require go-common.inc GO_BASEVERSION = "1.11" -GO_MINOR = ".4" +GO_MINOR = ".10" PV .= "${GO_MINOR}" FILESEXTRAPATHS_prepend := "${FILE_DIRNAME}/go-${GO_BASEVERSION}:"
@@ -19,5 +19,5 @@ SRC_URI += "\ " SRC_URI_append_libc-musl = " file://0009-ld-replace-glibc-dynamic-linker-with-musl.patch" -SRC_URI[main.md5sum] = "a77697673215be465d1b583680ef2318" -SRC_URI[main.sha256sum] = "4cfd42720a6b1e79a8024895fa6607b69972e8e32446df76d6ce79801bbadb15" +SRC_URI[main.md5sum] = "f2d2e44b9954b827daa8ad4d936a7a82" +SRC_URI[main.sha256sum] = "df27e96a9d1d362c46ecd975f1faa56b8c300f5c529074e9ea79bdd885493c1b"
Signature · 1 line
2.7.4
[thud] 16/30] wpa_supplicant: Changed systemd template units
In reply to Armin KusterFrom: Joshua DeWeese <[email protected]>
I goofed up the scissor line on the last attempt. Not sure how much it matters, but here it is correct this time.
Here it is, updated to work with wpa-supplicant_2.6.bb.
-- >8 --
https://www.freedesktop.org/software/systemd/man/systemd.unit.html#WantedBy=
When building root filesystems with any of the wpa_supplicant systemd template service files enabled (current default is to have them disabled) the systemd-native-fake script would not process the line:
Alias=multi-user.target.wants/wpa_supplicant@%i.service
appropriately due the the use of "%i."
According to the systemd documentation "WantedBy=foo.service in a service bar.service is mostly equivalent to Alias=foo.service.wants/bar.service in the same file." However, this is not really the intended purpose of install Aliases.
All lines of the form:
Alias=multi-user.target.wants/*%i.service
Were replaced with the following lines:
WantedBy=multi-user.target
--- ...place-systemd-install-Alias-with-WantedBy.patch | 52 ++++++++++++++++++++++ .../wpa-supplicant/wpa-supplicant_2.6.bb | 1 + 2 files changed, 53 insertions(+) create mode 100644 meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/0001-replace-systemd-install-Alias-with-WantedBy.patch
meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/0001-replace-systemd-install-Alias-with-WantedBy.patch new file +52 -0
@@ -0,0 +1,52 @@ +From 94c401733a5a3d294cc412671166e6adfb409f53 Mon Sep 17 00:00:00 2001 +From: Joshua DeWeese <[email protected]> +Date: Wed, 30 Jan 2019 16:19:47 -0500 +Subject: [PATCH] replace systemd install Alias with WantedBy + +According to the systemd documentation "WantedBy=foo.service in a +service bar.service is mostly equivalent to +Alias=foo.service.wants/bar.service in the same file." However, +this is not really the intended purpose of install Aliases. + +Upstream-Status: Submitted [[email protected]] + +Signed-off-by: Joshua DeWeese <[email protected]> +--- + wpa_supplicant/systemd/wpa_supplicant-nl80211.service.arg.in | 2 +- + wpa_supplicant/systemd/wpa_supplicant-wired.service.arg.in | 2 +- + wpa_supplicant/systemd/wpa_supplicant.service.arg.in | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/wpa_supplicant/systemd/wpa_supplicant-nl80211.service.arg.in b/wpa_supplicant/systemd/wpa_supplicant-nl80211.service.arg.in +index 03ac507..da69a87 100644 +--- a/wpa_supplicant/systemd/wpa_supplicant-nl80211.service.arg.in ++++ b/wpa_supplicant/systemd/wpa_supplicant-nl80211.service.arg.in +@@ -12,4 +12,4 @@ Type=simple + ExecStart=@BINDIR@/wpa_supplicant -c/etc/wpa_supplicant/wpa_supplicant-nl80211-%I.conf -Dnl80211 -i%I + + [Install] +-Alias=multi-user.target.wants/wpa_supplicant-nl80211@%i.service ++WantedBy=multi-user.target +diff --git a/wpa_supplicant/systemd/wpa_supplicant-wired.service.arg.in b/wpa_supplicant/systemd/wpa_supplicant-wired.service.arg.in +index c8a744d..ca3054b 100644 +--- a/wpa_supplicant/systemd/wpa_supplicant-wired.service.arg.in ++++ b/wpa_supplicant/systemd/wpa_supplicant-wired.service.arg.in +@@ -12,4 +12,4 @@ Type=simple + ExecStart=@BINDIR@/wpa_supplicant -c/etc/wpa_supplicant/wpa_supplicant-wired-%I.conf -Dwired -i%I + + [Install] +-Alias=multi-user.target.wants/wpa_supplicant-wired@%i.service ++WantedBy=multi-user.target +diff --git a/wpa_supplicant/systemd/wpa_supplicant.service.arg.in b/wpa_supplicant/systemd/wpa_supplicant.service.arg.in +index 7788b38..55d2b9c 100644 +--- a/wpa_supplicant/systemd/wpa_supplicant.service.arg.in ++++ b/wpa_supplicant/systemd/wpa_supplicant.service.arg.in +@@ -12,4 +12,4 @@ Type=simple + ExecStart=@BINDIR@/wpa_supplicant -c/etc/wpa_supplicant/wpa_supplicant-%I.conf -i%I + + [Install] +-Alias=multi-user.target.wants/wpa_supplicant@%i.service ++WantedBy=multi-user.target +-- +2.7.4 +
meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.6.bb +1 -0
@@ -33,6 +33,7 @@ SRC_URI = "http://w1.fi/releases/wpa_supplicant-${PV}.tar.gz \ file://key-replay-cve-multiple7.patch \ file://key-replay-cve-multiple8.patch \ file://wpa_supplicant-CVE-2018-14526.patch \ + file://0001-replace-systemd-install-Alias-with-WantedBy.patch \ " SRC_URI[md5sum] = "091569eb4440b7d7f2b4276dbfc03c3c" SRC_URI[sha256sum] = "b4936d34c4e6cdd44954beba74296d964bc2c9668ecaa5255e499636fe2b1450"
Signature · 1 line
2.7.4
[thud] 17/30] qemu: Security fix for CVE-2018-19489
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: Qemu.org
MR: 97453
Type: Security Fix
Disposition: Backport from git.qemu.org/gemu.git
ChangeID: a06fcb432d447cec2ed1caf112822dd1b4831ace Description:
In the spirt of YP Compatible, sending change upstream.
fixes CVE CVE-2018-19489
Affect < = 4.0.0
--- .../qemu/qemu/CVE-2018-19489.patch | 83 ++++++++++++++++++++++ meta/recipes-devtools/qemu/qemu_3.0.0.bb | 1 + 2 files changed, 84 insertions(+) create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-19489.patch
meta/recipes-devtools/qemu/qemu/CVE-2018-19489.patch new file +83 -0
@@ -0,0 +1,83 @@ +From 1d20398694a3b67a388d955b7a945ba4aa90a8a8 Mon Sep 17 00:00:00 2001 +From: Greg Kurz <[email protected]> +Date: Fri, 23 Nov 2018 13:28:03 +0100 +Subject: [PATCH] 9p: fix QEMU crash when renaming files + +When using the 9P2000.u version of the protocol, the following shell +command line in the guest can cause QEMU to crash: + + while true; do rm -rf aa; mkdir -p a/b & touch a/b/c & mv a aa; done + +With 9P2000.u, file renaming is handled by the WSTAT command. The +v9fs_wstat() function calls v9fs_complete_rename(), which calls +v9fs_fix_path() for every fid whose path is affected by the change. +The involved calls to v9fs_path_copy() may race with any other access +to the fid path performed by some worker thread, causing a crash like +shown below: + +Thread 12 "qemu-system-x86" received signal SIGSEGV, Segmentation fault. +0x0000555555a25da2 in local_open_nofollow (fs_ctx=0x555557d958b8, path=0x0, + flags=65536, mode=0) at hw/9pfs/9p-local.c:59 +59 while (*path && fd != -1) { +(gdb) bt +#0 0x0000555555a25da2 in local_open_nofollow (fs_ctx=0x555557d958b8, + path=0x0, flags=65536, mode=0) at hw/9pfs/9p-local.c:59 +#1 0x0000555555a25e0c in local_opendir_nofollow (fs_ctx=0x555557d958b8, + path=0x0) at hw/9pfs/9p-local.c:92 +#2 0x0000555555a261b8 in local_lstat (fs_ctx=0x555557d958b8, + fs_path=0x555556b56858, stbuf=0x7fff84830ef0) at hw/9pfs/9p-local.c:185 +#3 0x0000555555a2b367 in v9fs_co_lstat (pdu=0x555557d97498, + path=0x555556b56858, stbuf=0x7fff84830ef0) at hw/9pfs/cofile.c:53 +#4 0x0000555555a1e9e2 in v9fs_stat (opaque=0x555557d97498) + at hw/9pfs/9p.c:1083 +#5 0x0000555555e060a2 in coroutine_trampoline (i0=-669165424, i1=32767) + at util/coroutine-ucontext.c:116 +#6 0x00007fffef4f5600 in __start_context () at /lib64/libc.so.6 +#7 0x0000000000000000 in () +(gdb) + +The fix is to take the path write lock when calling v9fs_complete_rename(), +like in v9fs_rename(). + +Impact: DoS triggered by unprivileged guest users. + +Fixes: CVE-2018-19489 +Cc: P J P <[email protected]> +Reported-by: zhibin hu <[email protected]> +Reviewed-by: Prasad J Pandit <[email protected]> +Signed-off-by: Greg Kurz <[email protected]> + +Upstream-Status: Backport +Affects: < 4.0.0 +CVE: CVE-2018-19489 +Signed-off-by: Armin Kuster <[email protected]> + +--- + hw/9pfs/9p.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c +index 267a255..bdf7919 100644 +--- a/hw/9pfs/9p.c ++++ b/hw/9pfs/9p.c +@@ -2855,6 +2855,7 @@ static void coroutine_fn v9fs_wstat(void *opaque) + struct stat stbuf; + V9fsFidState *fidp; + V9fsPDU *pdu = opaque; ++ V9fsState *s = pdu->s; + + v9fs_stat_init(&v9stat); + err = pdu_unmarshal(pdu, offset, "dwS", &fid, &unused, &v9stat); +@@ -2920,7 +2921,9 @@ static void coroutine_fn v9fs_wstat(void *opaque) + } + } + if (v9stat.name.size != 0) { ++ v9fs_path_write_lock(s); + err = v9fs_complete_rename(pdu, fidp, -1, &v9stat.name); ++ v9fs_path_unlock(s); + if (err < 0) { + goto out; + } +-- +2.7.4 +
meta/recipes-devtools/qemu/qemu_3.0.0.bb +1 -0
@@ -30,6 +30,7 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \ file://CVE-2018-18849.patch \ file://CVE-2018-19364_p1.patch \ file://CVE-2018-19364_p2.patch \ + file://CVE-2018-19489.patch \ " UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
Signature · 1 line
2.7.4
[thud] 18/30] Tar: Security fix CVE-2019-0023
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: tar.git
MR: 97928
Type: Security Fix
Disposition: Backport from http://git.savannah.gnu.org/cgit/tar.git/commit/?id=cb07844454d8cc9fb21f53ace75975f91185a120
ChangeID: 7aee4c0daf8ce813242fe7b872583560a32bc4e3
Description:
Affects tar < 1.32
fixes CVE-2019-9923
--- meta/recipes-extended/tar/tar/CVE-2019-9923.patch | 38 +++++++++++++++++++++++ meta/recipes-extended/tar/tar_1.30.bb | 1 + 2 files changed, 39 insertions(+) create mode 100644 meta/recipes-extended/tar/tar/CVE-2019-9923.patch
meta/recipes-extended/tar/tar/CVE-2019-9923.patch new file +38 -0
@@ -0,0 +1,38 @@ +From cb07844454d8cc9fb21f53ace75975f91185a120 Mon Sep 17 00:00:00 2001 +From: Sergey Poznyakoff <[email protected]> +Date: Mon, 14 Jan 2019 15:22:09 +0200 +Subject: [PATCH] Fix possible NULL dereference (savannah bug #55369) + +* src/sparse.c (pax_decode_header): Check return from find_next_block. + +Upstream-Status: Backport +CVE: CVE-2019-9923 +Affects: tar < 1.32 +Signed-off-by: Armin kuster <[email protected]> + +--- + src/sparse.c | 4 ++++ + 1 file changed, 4 insertions(+) + +Index: tar-1.30/src/sparse.c +=================================================================== +--- tar-1.30.orig/src/sparse.c ++++ tar-1.30/src/sparse.c +@@ -1231,6 +1231,8 @@ pax_decode_header (struct tar_sparse_fil + set_next_block_after (b); \ + file->dumped_size += BLOCKSIZE; \ + b = find_next_block (); \ ++ if (!b) \ ++ FATAL_ERROR ((0, 0, _("Unexpected EOF in archive"))); \ + src = b->buffer; \ + endp = b->buffer + BLOCKSIZE; \ + } \ +@@ -1243,6 +1245,8 @@ pax_decode_header (struct tar_sparse_fil + set_next_block_after (current_header); + file->dumped_size += BLOCKSIZE; + blk = find_next_block (); ++ if (!blk) ++ FATAL_ERROR ((0, 0, _("Unexpected EOF in archive"))); + p = blk->buffer; + COPY_BUF (blk,nbuf,p); + if (!decode_num (&u, nbuf, TYPE_MAXIMUM (size_t)))
meta/recipes-extended/tar/tar_1.30.bb +1 -0
@@ -9,6 +9,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" SRC_URI = "${GNU_MIRROR}/tar/tar-${PV}.tar.bz2 \ file://remove-gets.patch \ file://musl_dirent.patch \ + file://CVE-2019-9923.patch \ " SRC_URI[md5sum] = "8404e4c1fc5a3000228ab2b8ad674a65"
Signature · 1 line
2.7.4
[thud] 19/30] glib-2.0: Security fix for CVE-2019-12450
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: glib-2.0
MR: 98443
Type: Security Fix
Disposition: Backport from https://gitlab.gnome.org/GNOME/glib/commit/d8f8f4d637ce43f8699ba94c9b7648beda0ca174
ChangeID: 880b9b349cb8d82c7c1314a3657ec9094baba741
Description:
--- .../glib-2.0/glib-2.0/CVE-2019-12450.patch | 59 ++++++++++++++++++++++ meta/recipes-core/glib-2.0/glib-2.0_2.58.0.bb | 1 + 2 files changed, 60 insertions(+) create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/CVE-2019-12450.patch
meta/recipes-core/glib-2.0/glib-2.0/CVE-2019-12450.patch new file +59 -0
@@ -0,0 +1,59 @@ +From d8f8f4d637ce43f8699ba94c9b7648beda0ca174 Mon Sep 17 00:00:00 2001 +From: Ondrej Holy <[email protected]> +Date: Thu, 23 May 2019 10:41:53 +0200 +Subject: [PATCH] gfile: Limit access to files when copying + +file_copy_fallback creates new files with default permissions and +set the correct permissions after the operation is finished. This +might cause that the files can be accessible by more users during +the operation than expected. Use G_FILE_CREATE_PRIVATE for the new +files to limit access to those files. + +Upstream-Status: Backport +https://gitlab.gnome.org/GNOME/glib/commit/d8f8f4d637ce43f8699ba94c9b7648beda0ca174 +CVE: CVE-2019-12450 +Signed-off-by: Armin kuster <[email protected]> + +--- + gio/gfile.c | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/gio/gfile.c b/gio/gfile.c +index 24b136d..74b5804 100644 +--- a/gio/gfile.c ++++ b/gio/gfile.c +@@ -3284,12 +3284,12 @@ file_copy_fallback (GFile *source, + out = (GOutputStream*)_g_local_file_output_stream_replace (_g_local_file_get_filename (G_LOCAL_FILE (destination)), + FALSE, NULL, + flags & G_FILE_COPY_BACKUP, +- G_FILE_CREATE_REPLACE_DESTINATION, +- info, ++ G_FILE_CREATE_REPLACE_DESTINATION | ++ G_FILE_CREATE_PRIVATE, info, + cancellable, error); + else + out = (GOutputStream*)_g_local_file_output_stream_create (_g_local_file_get_filename (G_LOCAL_FILE (destination)), +- FALSE, 0, info, ++ FALSE, G_FILE_CREATE_PRIVATE, info, + cancellable, error); + } + else if (flags & G_FILE_COPY_OVERWRITE) +@@ -3297,12 +3297,13 @@ file_copy_fallback (GFile *source, + out = (GOutputStream *)g_file_replace (destination, + NULL, + flags & G_FILE_COPY_BACKUP, +- G_FILE_CREATE_REPLACE_DESTINATION, ++ G_FILE_CREATE_REPLACE_DESTINATION | ++ G_FILE_CREATE_PRIVATE, + cancellable, error); + } + else + { +- out = (GOutputStream *)g_file_create (destination, 0, cancellable, error); ++ out = (GOutputStream *)g_file_create (destination, G_FILE_CREATE_PRIVATE, cancellable, error); + } + + if (!out) +-- +2.7.4 +
meta/recipes-core/glib-2.0/glib-2.0_2.58.0.bb +1 -0
@@ -14,6 +14,7 @@ SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \ file://0001-Do-not-ignore-return-value-of-write.patch \ file://0010-Do-not-hardcode-python-path-into-various-tools.patch \ file://date-lt.patch \ + file://CVE-2019-12450.patch \ " SRC_URI_append_class-native = " file://relocate-modules.patch"
Signature · 1 line
2.7.4
[thud] 20/30] wget: Security fix for CVE-2019-5953
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: http://git.savannah.gnu.org/cgit/wget.git
MR: 89341
Type: Security Fix
Disposition: Backport from http://git.savannah.gnu.org/cgit/wget.git/commit/?id=692d5c5215de0db482c252492a92fc424cc6a97c
ChangeID: 1c19a2fd7ead88cc4ee92d425179d60d4635864b
Description:
Fixes CVE-2019-5953
Affects: < 1.20.1
--- .../recipes-extended/wget/wget/CVE-2019-5953.patch | 51 ++++++++++++++++++++++ meta/recipes-extended/wget/wget_1.19.5.bb | 1 + 2 files changed, 52 insertions(+) create mode 100644 meta/recipes-extended/wget/wget/CVE-2019-5953.patch
meta/recipes-extended/wget/wget/CVE-2019-5953.patch new file +51 -0
@@ -0,0 +1,51 @@ +From 692d5c5215de0db482c252492a92fc424cc6a97c Mon Sep 17 00:00:00 2001 +From: Tim Ruehsen <[email protected]> +Date: Fri, 5 Apr 2019 11:50:44 +0200 +Subject: [PATCH] Fix a buffer overflow vulnerability + +* src/iri.c(do_conversion): Reallocate the output buffer to a larger + size if it is already full + +Upstream-Status: Backport +http://git.savannah.gnu.org/cgit/wget.git/commit/?id=692d5c5215de0db482c252492a92fc424cc6a97c +CVE: CVE-2019-5953 +Signed-off-by: Armin Kuster <[email protected]> + +--- + src/iri.c | 12 +++++++++--- + 1 file changed, 9 insertions(+), 3 deletions(-) + +Index: wget-1.19.5/src/iri.c +=================================================================== +--- wget-1.19.5.orig/src/iri.c ++++ wget-1.19.5/src/iri.c +@@ -151,8 +151,11 @@ do_conversion (const char *tocode, const + *out = s = xmalloc (outlen + 1); + done = 0; + ++ DEBUGP (("iconv %s -> %s\n", tocode, fromcode)); ++ + for (;;) + { ++ DEBUGP (("iconv outlen=%d inlen=%d\n", outlen, inlen)); + if (iconv (cd, (ICONV_CONST char **) &in, &inlen, out, &outlen) != (size_t)(-1) && + iconv (cd, NULL, NULL, out, &outlen) != (size_t)(-1)) + { +@@ -187,11 +190,14 @@ do_conversion (const char *tocode, const + } + else if (errno == E2BIG) /* Output buffer full */ + { ++ logprintf (LOG_VERBOSE, ++ _("Reallocate output buffer len=%d outlen=%d inlen=%d\n"), len, outlen, inlen); + tooshort++; + done = len; +- len = outlen = done + inlen * 2; +- s = xrealloc (s, outlen + 1); +- *out = s + done; ++ len = done + inlen * 2; ++ s = xrealloc (s, len + 1); ++ *out = s + done - outlen; ++ outlen += inlen * 2; + } + else /* Weird, we got an unspecified error */ + {
meta/recipes-extended/wget/wget_1.19.5.bb +1 -0
@@ -1,6 +1,7 @@ SRC_URI = "${GNU_MIRROR}/wget/wget-${PV}.tar.gz \ file://0001-Unset-need_charset_alias-when-building-for-musl.patch \ file://0002-improve-reproducibility.patch \ + file://CVE-2019-5953.patch \ " SRC_URI[md5sum] = "2db6f03d655041f82eb64b8c8a1fa7da"
Signature · 1 line
2.7.4
[thud] 21/30] Curl: Securiyt fix CVE-2019-5435 CVE-2019-5436
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: CUrl.org
MR: 98455
Type: Security Fix
Disposition: Backport from https://curl.haxx.se/
ChangeID: 86b094a440ea473b114764e8d64df8142d561609 Description:
Fixes CVE-2019-5435 CVE-2019-5436
--- meta/recipes-support/curl/curl/CVE-2019-5435.patch | 200 +++++++++++++++++++++ meta/recipes-support/curl/curl/CVE-2019-5436.patch | 32 ++++ meta/recipes-support/curl/curl_7.61.0.bb | 2 + 3 files changed, 234 insertions(+) create mode 100644 meta/recipes-support/curl/curl/CVE-2019-5435.patch create mode 100644 meta/recipes-support/curl/curl/CVE-2019-5436.patch
meta/recipes-support/curl/curl/CVE-2019-5435.patch new file +200 -0
@@ -0,0 +1,200 @@ +From 5fc28510a4664f46459d9a40187d81cc08571e60 Mon Sep 17 00:00:00 2001 +From: Daniel Stenberg <[email protected]> +Date: Mon, 29 Apr 2019 08:00:49 +0200 +Subject: [PATCH] CURL_MAX_INPUT_LENGTH: largest acceptable string input size + +This limits all accepted input strings passed to libcurl to be less than +CURL_MAX_INPUT_LENGTH (8000000) bytes, for these API calls: +curl_easy_setopt() and curl_url_set(). + +The 8000000 number is arbitrary picked and is meant to detect mistakes +or abuse, not to limit actual practical use cases. By limiting the +acceptable string lengths we also reduce the risk of integer overflows +all over. + +NOTE: This does not apply to `CURLOPT_POSTFIELDS`. + +Test 1559 verifies. + +Closes #3805 + +Upstream-Status: Backport +Dropped a few changes to apply against this version +https://github.com/curl/curl/commit/5fc28510a4664f4 + +CVE: CVE-2019-5435 +affects: libcurl 7.19.4 to and including 7.64.1 +Signed-off-by: Armin Kuster <[email protected]> + +--- + lib/setopt.c | 7 +++++ + lib/urldata.h | 4 +++ + 7 files changed, 146 insertions(+), 3 deletions(-) + create mode 100644 tests/data/test1559 + create mode 100644 tests/libtest/lib1559.c + +Index: curl-7.61.0/lib/setopt.c +=================================================================== +--- curl-7.61.0.orig/lib/setopt.c ++++ curl-7.61.0/lib/setopt.c +@@ -60,6 +60,13 @@ CURLcode Curl_setstropt(char **charp, co + if(s) { + char *str = strdup(s); + ++ if(str) { ++ size_t len = strlen(str); ++ if(len > CURL_MAX_INPUT_LENGTH) { ++ free(str); ++ return CURLE_BAD_FUNCTION_ARGUMENT; ++ } ++ } + if(!str) + return CURLE_OUT_OF_MEMORY; + +Index: curl-7.61.0/lib/urldata.h +=================================================================== +--- curl-7.61.0.orig/lib/urldata.h ++++ curl-7.61.0/lib/urldata.h +@@ -79,6 +79,10 @@ + */ + #define RESP_TIMEOUT (1800*1000) + ++/* Max string intput length is a precaution against abuse and to detect junk ++ input easier and better. */ ++#define CURL_MAX_INPUT_LENGTH 8000000 ++ + #include "cookie.h" + #include "psl.h" + #include "formdata.h" +Index: curl-7.61.0/tests/data/test1559 +=================================================================== +--- /dev/null ++++ curl-7.61.0/tests/data/test1559 +@@ -0,0 +1,44 @@ ++<testcase> ++<info> ++<keywords> ++CURLOPT_URL ++</keywords> ++</info> ++ ++<reply> ++</reply> ++ ++<client> ++<server> ++none ++</server> ++ ++# require HTTP so that CURLOPT_POSTFIELDS works as assumed ++<features> ++http ++</features> ++<tool> ++lib1559 ++</tool> ++ ++<name> ++Set excessive URL lengths ++</name> ++</client> ++ ++# ++# Verify that the test runs to completion without crashing ++<verify> ++<errorcode> ++0 ++</errorcode> ++<stdout> ++CURLOPT_URL 10000000 bytes URL == 43 ++CURLOPT_POSTFIELDS 10000000 bytes data == 0 ++CURLUPART_URL 10000000 bytes URL == 3 ++CURLUPART_SCHEME 10000000 bytes scheme == 3 ++CURLUPART_USER 10000000 bytes user == 3 ++</stdout> ++</verify> ++ ++</testcase> +Index: curl-7.61.0/tests/libtest/lib1559.c +=================================================================== +--- /dev/null ++++ curl-7.61.0/tests/libtest/lib1559.c +@@ -0,0 +1,78 @@ ++/*************************************************************************** ++ * _ _ ____ _ ++ * Project ___| | | | _ \| | ++ * / __| | | | |_) | | ++ * | (__| |_| | _ <| |___ ++ * \___|\___/|_| \_\_____| ++ * ++ * Copyright (C) 1998 - 2019, Daniel Stenberg, <[email protected]>, et al. ++ * ++ * This software is licensed as described in the file COPYING, which ++ * you should have received as part of this distribution. The terms ++ * are also available at https://curl.haxx.se/docs/copyright.html. ++ * ++ * You may opt to use, copy, modify, merge, publish, distribute and/or sell ++ * copies of the Software, and permit persons to whom the Software is ++ * furnished to do so, under the terms of the COPYING file. ++ * ++ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY ++ * KIND, either express or implied. ++ * ++ ***************************************************************************/ ++#include "test.h" ++ ++#include "testutil.h" ++#include "warnless.h" ++#include "memdebug.h" ++ ++#define EXCESSIVE 10*1000*1000 ++int test(char *URL) ++{ ++ CURLcode res = 0; ++ CURL *curl = NULL; ++ char *longurl = malloc(EXCESSIVE); ++ CURLU *u; ++ (void)URL; ++ ++ memset(longurl, 'a', EXCESSIVE); ++ longurl[EXCESSIVE-1] = 0; ++ ++ global_init(CURL_GLOBAL_ALL); ++ easy_init(curl); ++ ++ res = curl_easy_setopt(curl, CURLOPT_URL, longurl); ++ printf("CURLOPT_URL %d bytes URL == %d\n", ++ EXCESSIVE, (int)res); ++ ++ res = curl_easy_setopt(curl, CURLOPT_POSTFIELDS, longurl); ++ printf("CURLOPT_POSTFIELDS %d bytes data == %d\n", ++ EXCESSIVE, (int)res); ++ ++ u = curl_url(); ++ if(u) { ++ CURLUcode uc = curl_url_set(u, CURLUPART_URL, longurl, 0); ++ printf("CURLUPART_URL %d bytes URL == %d\n", ++ EXCESSIVE, (int)uc); ++ uc = curl_url_set(u, CURLUPART_SCHEME, longurl, CURLU_NON_SUPPORT_SCHEME); ++ printf("CURLUPART_SCHEME %d bytes scheme == %d\n", ++ EXCESSIVE, (int)uc); ++ uc = curl_url_set(u, CURLUPART_USER, longurl, 0); ++ printf("CURLUPART_USER %d bytes user == %d\n", ++ EXCESSIVE, (int)uc); ++ curl_url_cleanup(u); ++ } ++ ++ free(longurl); ++ ++ curl_easy_cleanup(curl); ++ curl_global_cleanup(); ++ ++ return 0; ++ ++test_cleanup: ++ ++ curl_easy_cleanup(curl); ++ curl_global_cleanup(); ++ ++ return res; /* return the final return code */ ++}
meta/recipes-support/curl/curl/CVE-2019-5436.patch new file +32 -0
@@ -0,0 +1,32 @@ +From 2576003415625d7b5f0e390902f8097830b82275 Mon Sep 17 00:00:00 2001 +From: Daniel Stenberg <[email protected]> +Date: Fri, 3 May 2019 22:20:37 +0200 +Subject: [PATCH] tftp: use the current blksize for recvfrom() + +bug: https://curl.haxx.se/docs/CVE-2019-5436.html +Reported-by: l00p3r on hackerone +CVE-2019-5436 + +Upstream-Status: Backport +https://github.com/curl/curl/commit/2576003415625d7b5f0e390902f8097830b82275 +CVE: CVE-2019-5436 +affects: libcurl 7.19.4 to and including 7.64.1 +Signed-off-by: Armin Kuster <[email protected]> + +--- + lib/tftp.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: curl-7.61.0/lib/tftp.c +=================================================================== +--- curl-7.61.0.orig/lib/tftp.c ++++ curl-7.61.0/lib/tftp.c +@@ -1005,7 +1005,7 @@ static CURLcode tftp_connect(struct conn + state->sockfd = state->conn->sock[FIRSTSOCKET]; + state->state = TFTP_STATE_START; + state->error = TFTP_ERR_NONE; +- state->blksize = TFTP_BLKSIZE_DEFAULT; ++ state->blksize = blksize; + state->requested_blksize = blksize; + + ((struct sockaddr *)&state->local_addr)->sa_family =
meta/recipes-support/curl/curl_7.61.0.bb +2 -0
@@ -11,6 +11,8 @@ SRC_URI = "http://curl.haxx.se/download/curl-${PV}.tar.bz2 \ file://CVE-2018-16839.patch \ file://CVE-2018-16840.patch \ file://CVE-2018-16842.patch \ + file://CVE-2019-5435.patch \ + file://CVE-2019-5436.patch \ " SRC_URI[md5sum] = "31d0a9f48dc796a7db351898a1e5058a"
Signature · 1 line
2.7.4
[thud] 22/30] qemu: Security fix for CVE-2019-12155
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: qemu.org
MR: 98382
Type: Security Fix
Disposition: Backport from https://git.qemu.org/?p=qemu.git;a=commit;h=d52680fc932efb8a2f334cc6993e705ed1e31e99
ChangeID: e4e5983ec1fa489eb8a0db08d1afa0606e59dde3
Description:
Fixes CVE-2019-12155
Affects: <= 4.0.0
--- .../qemu/qemu/CVE-2019-12155.patch | 38 ++++++++++++++++++++++ meta/recipes-devtools/qemu/qemu_3.0.0.bb | 1 + 2 files changed, 39 insertions(+) create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2019-12155.patch
meta/recipes-devtools/qemu/qemu/CVE-2019-12155.patch new file +38 -0
@@ -0,0 +1,38 @@ +From d52680fc932efb8a2f334cc6993e705ed1e31e99 Mon Sep 17 00:00:00 2001 +From: Prasad J Pandit <[email protected]> +Date: Thu, 25 Apr 2019 12:05:34 +0530 +Subject: [PATCH] qxl: check release info object + +When releasing spice resources in release_resource() routine, +if release info object 'ext.info' is null, it leads to null +pointer dereference. Add check to avoid it. + +Reported-by: Bugs SysSec <[email protected]> +Signed-off-by: Prasad J Pandit <[email protected]> +Message-id: [email protected] +Signed-off-by: Gerd Hoffmann <[email protected]> + +Upstream-Status: Backport +https://git.qemu.org/?p=qemu.git;a=commit;h=d52680fc932efb8a2f334cc6993e705ed1e31e99 + +CVE: CVE-2019-12155 +Affects: <= 4.0.0 +Signed-off-by: Armin Kuster <[email protected]> +--- + hw/display/qxl.c | 3 +++ + 1 file changed, 3 insertions(+) + +Index: qemu-3.0.0/hw/display/qxl.c +=================================================================== +--- qemu-3.0.0.orig/hw/display/qxl.c ++++ qemu-3.0.0/hw/display/qxl.c +@@ -764,6 +764,9 @@ static void interface_release_resource(Q + QXLReleaseRing *ring; + uint64_t *item, id; + ++ if (!ext.info) { ++ return; ++ } + if (ext.group_id == MEMSLOT_GROUP_HOST) { + /* host group -> vga mode update request */ + QXLCommandExt *cmdext = (void *)(intptr_t)(ext.info->id);
meta/recipes-devtools/qemu/qemu_3.0.0.bb +1 -0
@@ -31,6 +31,7 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \ file://CVE-2018-19364_p1.patch \ file://CVE-2018-19364_p2.patch \ file://CVE-2018-19489.patch \ + file://CVE-2019-12155.patch \ " UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
Signature · 1 line
2.7.4
[thud] 23/30] yocto-uninative: Update to 2.5 release
In reply to Armin KusterFrom: Richard Purdie <[email protected]>
This includes libstdc++ changes from gcc 9.X.
It also switches uninative from bz2 to xz compression.
--- meta/conf/distro/include/yocto-uninative.inc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
meta/conf/distro/include/yocto-uninative.inc +4 -4
@@ -8,7 +8,7 @@ UNINATIVE_MAXGLIBCVERSION = "2.29" -UNINATIVE_URL ?= "http://downloads.yoctoproject.org/releases/uninative/2.4/" -UNINATIVE_CHECKSUM[aarch64] ?= "af2e2faf6cf00ff45cc1bcd5e3fb00cee7f79b3ec7c3be15917ad4ff8c154cfe" -UNINATIVE_CHECKSUM[i686] ?= "fafacfc537a6ce2bd122bd16c146881ab5ac69bd575abf6cb68a0dd33fa70ea2" -UNINATIVE_CHECKSUM[x86_64] ?= "06f91685b782f2ccfedf3070b3ba0fe4a5ba2f0766dad5c9d1642dccf95accd0" +UNINATIVE_URL ?= "http://downloads.yoctoproject.org/releases/uninative/2.5/" +UNINATIVE_CHECKSUM[aarch64] ?= "ca977ff95c77f983570141908d451ff7d78add2864471605af404302bb36a1fa" +UNINATIVE_CHECKSUM[i686] ?= "7b5822891c293795faf8a4a80586b36f8cde405387524916a24f9055ea82f7ca" +UNINATIVE_CHECKSUM[x86_64] ?= "ed0ac07c710b711925cb976685dd855fb1d442dd840d00194751c18bf480c4ed"
Signature · 1 line
2.7.4
[thud] 24/30] uninative: Switch from bz2 to xz
In reply to Armin KusterFrom: Richard Purdie <[email protected]>
(From OE-Core rev: 29fc9210b973be68de474e75068e4c72371afe5a)
--- meta/classes/uninative.bbclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
meta/classes/uninative.bbclass +2 -2
@@ -2,7 +2,7 @@ UNINATIVE_LOADER ?= "${UNINATIVE_STAGING_DIR}-uninative/${BUILD_ARCH}-linux/lib/ UNINATIVE_STAGING_DIR ?= "${STAGING_DIR}" UNINATIVE_URL ?= "unset" -UNINATIVE_TARBALL ?= "${BUILD_ARCH}-nativesdk-libc.tar.bz2" +UNINATIVE_TARBALL ?= "${BUILD_ARCH}-nativesdk-libc.tar.xz" # Example checksums #UNINATIVE_CHECKSUM[aarch64] = "dead" #UNINATIVE_CHECKSUM[i686] = "dead"
@@ -89,7 +89,7 @@ python uninative_event_fetchloader() { cmd = d.expand("\ mkdir -p ${UNINATIVE_STAGING_DIR}-uninative; \ cd ${UNINATIVE_STAGING_DIR}-uninative; \ -tar -xjf ${UNINATIVE_DLDIR}/%s/${UNINATIVE_TARBALL}; \ +tar -xJf ${UNINATIVE_DLDIR}/%s/${UNINATIVE_TARBALL}; \ ${UNINATIVE_STAGING_DIR}-uninative/relocate_sdk.py \ ${UNINATIVE_STAGING_DIR}-uninative/${BUILD_ARCH}-linux \ ${UNINATIVE_LOADER} \
Signature · 1 line
2.7.4
[thud] 25/30] uninative: Update to 2.6 release
In reply to Armin KusterFrom: Richard Purdie <[email protected]>
The 2.6 release contains both libcrypt.so.1 and libcrypt.so.2 which fixes compatibility with recent fedora/suse releases.
The difference is one is built with obsolete APIs enabled and one disabled. We now ship both in uninative for compatibility regardless of which distro a binary is built on.
--- meta/conf/distro/include/yocto-uninative.inc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
meta/conf/distro/include/yocto-uninative.inc +4 -4
@@ -8,7 +8,7 @@ UNINATIVE_MAXGLIBCVERSION = "2.29" -UNINATIVE_URL ?= "http://downloads.yoctoproject.org/releases/uninative/2.5/" -UNINATIVE_CHECKSUM[aarch64] ?= "ca977ff95c77f983570141908d451ff7d78add2864471605af404302bb36a1fa" -UNINATIVE_CHECKSUM[i686] ?= "7b5822891c293795faf8a4a80586b36f8cde405387524916a24f9055ea82f7ca" -UNINATIVE_CHECKSUM[x86_64] ?= "ed0ac07c710b711925cb976685dd855fb1d442dd840d00194751c18bf480c4ed" +UNINATIVE_URL ?= "http://downloads.yoctoproject.org/releases/uninative/2.6/" +UNINATIVE_CHECKSUM[aarch64] ?= "a37118fc8b423f48146120707b81dd15017512c3e8ef9e6ca2cb3a033f4f4046" +UNINATIVE_CHECKSUM[i686] ?= "3234fc3ded810225071f23a0e9a99f4f8c2480059945a848eff076ce78122ade" +UNINATIVE_CHECKSUM[x86_64] ?= "133387753a9acf3e1b788103c59fac91e968e2ee331d7a4b9498e926ada7be57"
Signature · 1 line
2.7.4
[thud] 26/30] lighttpd: fix CVE-2019-11072
In reply to Armin KusterFrom: Ross Burton <[email protected]>
--- .../lighttpd/lighttpd/fix-http-parseopts.patch | 51 ++++++++++++++++++++++ meta/recipes-extended/lighttpd/lighttpd_1.4.51.bb | 1 + 2 files changed, 52 insertions(+) create mode 100644 meta/recipes-extended/lighttpd/lighttpd/fix-http-parseopts.patch
meta/recipes-extended/lighttpd/lighttpd/fix-http-parseopts.patch new file +51 -0
@@ -0,0 +1,51 @@ +CVE: CVE-2019-11072 +Upstream-Status: Backport +Signed-off-by: Ross Burton <[email protected]> + +From 32120d5b8b3203fc21ccb9eafb0eaf824bb59354 Mon Sep 17 00:00:00 2001 +From: Glenn Strauss <[email protected]> +Date: Wed, 10 Apr 2019 11:28:10 -0400 +Subject: [PATCH] [core] fix abort in http-parseopts (fixes #2945) + +fix abort in server.http-parseopts with url-path-2f-decode enabled + +(thx stze) + +x-ref: + "Security - SIGABRT during GET request handling with url-path-2f-decode enabled" + https://redmine.lighttpd.net/issues/2945 +--- + src/burl.c | 6 ++++-- + src/t/test_burl.c | 2 ++ + 2 files changed, 6 insertions(+), 2 deletions(-) + +diff --git a/src/burl.c b/src/burl.c +index 51182628..c4b928fd 100644 +--- a/src/burl.c ++++ b/src/burl.c +@@ -252,8 +252,10 @@ static int burl_normalize_2F_to_slash_fix (buffer *b, int qs, int i) + } + } + if (qs >= 0) { +- memmove(s+j, s+qs, blen - qs); +- j += blen - qs; ++ const int qslen = blen - qs; ++ memmove(s+j, s+qs, (size_t)qslen); ++ qs = j; ++ j += qslen; + } + buffer_string_set_length(b, j); + return qs; +diff --git a/src/t/test_burl.c b/src/t/test_burl.c +index 7be9be50..f7a16815 100644 +--- a/src/t/test_burl.c ++++ b/src/t/test_burl.c +@@ -97,6 +97,8 @@ static void test_burl_normalize (void) { + flags |= HTTP_PARSEOPT_URL_NORMALIZE_PATH_2F_DECODE; + run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/a/b?c=/"), CONST_STR_LEN("/a/b?c=/")); + run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/a/b?c=%2f"), CONST_STR_LEN("/a/b?c=/")); ++ run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("%2f?"), CONST_STR_LEN("/?")); ++ run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/%2f?"), CONST_STR_LEN("//?")); + run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/a%2fb"), CONST_STR_LEN("/a/b")); + run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/a%2Fb"), CONST_STR_LEN("/a/b")); + run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/a%2fb?c=/"), CONST_STR_LEN("/a/b?c=/"));
meta/recipes-extended/lighttpd/lighttpd_1.4.51.bb +1 -0
@@ -18,6 +18,7 @@ SRC_URI = "http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${PV}.t file://lighttpd \ file://lighttpd.service \ file://0001-Use-pkg-config-for-pcre-dependency-instead-of-config.patch \ + file://fix-http-parseopts.patch \ " SRC_URI[md5sum] = "6e68c19601af332fa3c5f174245f59bf"
Signature · 1 line
2.7.4
[thud] 27/30] glibc: backport CVE fixes
In reply to Armin KusterFrom: Ross Burton <[email protected]>
Backport the fixes for several CVEs from the 2.28 stable branch:
- CVE-2016-10739
- CVE-2018-19591
--- meta/recipes-core/glibc/glibc/CVE-2016-10739.patch | 232 +++++++++++++++++++++ meta/recipes-core/glibc/glibc/CVE-2018-19591.patch | 48 +++++ meta/recipes-core/glibc/glibc_2.28.bb | 2 + 3 files changed, 282 insertions(+) create mode 100644 meta/recipes-core/glibc/glibc/CVE-2016-10739.patch create mode 100644 meta/recipes-core/glibc/glibc/CVE-2018-19591.patch
meta/recipes-core/glibc/glibc/CVE-2016-10739.patch new file +232 -0
@@ -0,0 +1,232 @@ +CVE: CVE-2016-10739 +Upstream-Status: Backport +Signed-off-by: Ross Burton <[email protected]> + +From 8e92ca5dd7a7e38a4dddf1ebc4e1e8f0cb27e4aa Mon Sep 17 00:00:00 2001 +From: Florian Weimer <[email protected]> +Date: Mon, 21 Jan 2019 08:59:42 +0100 +Subject: [PATCH] resolv: Reformat inet_addr, inet_aton to GNU style + +(cherry picked from commit 5e30b8ef0758763effa115634e0ed7d8938e4bc0) +--- + ChangeLog | 5 ++ + resolv/inet_addr.c | 192 ++++++++++++++++++++++++++++------------------------- + 2 files changed, 106 insertions(+), 91 deletions(-) + +diff --git a/resolv/inet_addr.c b/resolv/inet_addr.c +index 022f7ea084..32f58b0e13 100644 +--- a/resolv/inet_addr.c ++++ b/resolv/inet_addr.c +@@ -1,3 +1,21 @@ ++/* Legacy IPv4 text-to-address functions. ++ Copyright (C) 2019 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ <http://www.gnu.org/licenses/>. */ ++ + /* + * Copyright (c) 1983, 1990, 1993 + * The Regents of the University of California. All rights reserved. +@@ -78,105 +96,97 @@ + #include <limits.h> + #include <errno.h> + +-/* +- * Ascii internet address interpretation routine. +- * The value returned is in network order. +- */ ++/* ASCII IPv4 Internet address interpretation routine. The value ++ returned is in network order. */ + in_addr_t +-__inet_addr(const char *cp) { +- struct in_addr val; ++__inet_addr (const char *cp) ++{ ++ struct in_addr val; + +- if (__inet_aton(cp, &val)) +- return (val.s_addr); +- return (INADDR_NONE); ++ if (__inet_aton (cp, &val)) ++ return val.s_addr; ++ return INADDR_NONE; + } + weak_alias (__inet_addr, inet_addr) + +-/* +- * Check whether "cp" is a valid ascii representation +- * of an Internet address and convert to a binary address. +- * Returns 1 if the address is valid, 0 if not. +- * This replaces inet_addr, the return value from which +- * cannot distinguish between failure and a local broadcast address. +- */ ++/* Check whether "cp" is a valid ASCII representation of an IPv4 ++ Internet address and convert it to a binary address. Returns 1 if ++ the address is valid, 0 if not. This replaces inet_addr, the ++ return value from which cannot distinguish between failure and a ++ local broadcast address. */ + int +-__inet_aton(const char *cp, struct in_addr *addr) ++__inet_aton (const char *cp, struct in_addr *addr) + { +- static const in_addr_t max[4] = { 0xffffffff, 0xffffff, 0xffff, 0xff }; +- in_addr_t val; +- char c; +- union iaddr { +- uint8_t bytes[4]; +- uint32_t word; +- } res; +- uint8_t *pp = res.bytes; +- int digit; +- +- int saved_errno = errno; +- __set_errno (0); +- +- res.word = 0; +- +- c = *cp; +- for (;;) { +- /* +- * Collect number up to ``.''. +- * Values are specified as for C: +- * 0x=hex, 0=octal, isdigit=decimal. +- */ +- if (!isdigit(c)) +- goto ret_0; +- { +- char *endp; +- unsigned long ul = strtoul (cp, (char **) &endp, 0); +- if (ul == ULONG_MAX && errno == ERANGE) +- goto ret_0; +- if (ul > 0xfffffffful) +- goto ret_0; +- val = ul; +- digit = cp != endp; +- cp = endp; +- } +- c = *cp; +- if (c == '.') { +- /* +- * Internet format: +- * a.b.c.d +- * a.b.c (with c treated as 16 bits) +- * a.b (with b treated as 24 bits) +- */ +- if (pp > res.bytes + 2 || val > 0xff) +- goto ret_0; +- *pp++ = val; +- c = *++cp; +- } else +- break; +- } +- /* +- * Check for trailing characters. +- */ +- if (c != '\0' && (!isascii(c) || !isspace(c))) +- goto ret_0; +- /* +- * Did we get a valid digit? +- */ +- if (!digit) +- goto ret_0; +- +- /* Check whether the last part is in its limits depending on +- the number of parts in total. */ +- if (val > max[pp - res.bytes]) ++ static const in_addr_t max[4] = { 0xffffffff, 0xffffff, 0xffff, 0xff }; ++ in_addr_t val; ++ char c; ++ union iaddr ++ { ++ uint8_t bytes[4]; ++ uint32_t word; ++ } res; ++ uint8_t *pp = res.bytes; ++ int digit; ++ ++ int saved_errno = errno; ++ __set_errno (0); ++ ++ res.word = 0; ++ ++ c = *cp; ++ for (;;) ++ { ++ /* Collect number up to ``.''. Values are specified as for C: ++ 0x=hex, 0=octal, isdigit=decimal. */ ++ if (!isdigit (c)) ++ goto ret_0; ++ { ++ char *endp; ++ unsigned long ul = strtoul (cp, &endp, 0); ++ if (ul == ULONG_MAX && errno == ERANGE) + goto ret_0; +- +- if (addr != NULL) +- addr->s_addr = res.word | htonl (val); +- +- __set_errno (saved_errno); +- return (1); +- +-ret_0: +- __set_errno (saved_errno); +- return (0); ++ if (ul > 0xfffffffful) ++ goto ret_0; ++ val = ul; ++ digit = cp != endp; ++ cp = endp; ++ } ++ c = *cp; ++ if (c == '.') ++ { ++ /* Internet format: ++ a.b.c.d ++ a.b.c (with c treated as 16 bits) ++ a.b (with b treated as 24 bits). */ ++ if (pp > res.bytes + 2 || val > 0xff) ++ goto ret_0; ++ *pp++ = val; ++ c = *++cp; ++ } ++ else ++ break; ++ } ++ /* Check for trailing characters. */ ++ if (c != '\0' && (!isascii (c) || !isspace (c))) ++ goto ret_0; ++ /* Did we get a valid digit? */ ++ if (!digit) ++ goto ret_0; ++ ++ /* Check whether the last part is in its limits depending on the ++ number of parts in total. */ ++ if (val > max[pp - res.bytes]) ++ goto ret_0; ++ ++ if (addr != NULL) ++ addr->s_addr = res.word | htonl (val); ++ ++ __set_errno (saved_errno); ++ return 1; ++ ++ ret_0: ++ __set_errno (saved_errno); ++ return 0; + } + weak_alias (__inet_aton, inet_aton) + libc_hidden_def (__inet_aton) +-- +2.11.0
meta/recipes-core/glibc/glibc/CVE-2018-19591.patch new file +48 -0
48 lines not on this page · raw message
meta/recipes-core/glibc/glibc_2.28.bb +2 -0
@@ -48,6 +48,8 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ file://0033-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch \ file://0034-inject-file-assembly-directives.patch \ file://CVE-2019-9169.patch \ + file://CVE-2016-10739.patch \ + file://CVE-2018-19591.patch \ " NATIVESDKFIXES ?= ""
Signature · 1 line
2.7.4
[thud] 28/30] qemu: Security fixes CVE-2018-20815 CVE-2019-9824
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: qemu.org
MR: 98623
Type: Security Fix
Disposition: Backport from qemu.org
ChangeID: 03b3f28e5860ef1cb9f58dce89f252bd7ed59f37 Description:
Fixes both CVE-2018-20815 and CVE-2019-9824
--- .../qemu/qemu/CVE-2018-20815_p1.patch | 42 +++++++++++++++++ .../qemu/qemu/CVE-2018-20815_p2.patch | 52 ++++++++++++++++++++++ .../recipes-devtools/qemu/qemu/CVE-2019-9824.patch | 47 +++++++++++++++++++ meta/recipes-devtools/qemu/qemu_3.0.0.bb | 3 ++ 4 files changed, 144 insertions(+) create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-20815_p1.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-20815_p2.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2019-9824.patch
meta/recipes-devtools/qemu/qemu/CVE-2018-20815_p1.patch new file +42 -0
@@ -0,0 +1,42 @@ +From da885fe1ee8b4589047484bd7fa05a4905b52b17 Mon Sep 17 00:00:00 2001 +From: Peter Maydell <[email protected]> +Date: Fri, 14 Dec 2018 13:30:52 +0000 +Subject: [PATCH] device_tree.c: Don't use load_image() + +The load_image() function is deprecated, as it does not let the +caller specify how large the buffer to read the file into is. +Instead use load_image_size(). + +Signed-off-by: Peter Maydell <[email protected]> +Reviewed-by: Richard Henderson <[email protected]> +Reviewed-by: Stefan Hajnoczi <[email protected]> +Reviewed-by: Michael S. Tsirkin <[email protected]> +Reviewed-by: Eric Blake <[email protected]> +Message-id: [email protected] + +Upstream-Status: Backport +CVE: CVE-2018-20815 +affects <= 3.0.1 + +Signed-off-by: Armin Kuster <[email protected]> + +--- + device_tree.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/device_tree.c b/device_tree.c +index 6d9c972..296278e 100644 +--- a/device_tree.c ++++ b/device_tree.c +@@ -91,7 +91,7 @@ void *load_device_tree(const char *filename_path, int *sizep) + /* First allocate space in qemu for device tree */ + fdt = g_malloc0(dt_size); + +- dt_file_load_size = load_image(filename_path, fdt); ++ dt_file_load_size = load_image_size(filename_path, fdt, dt_size); + if (dt_file_load_size < 0) { + error_report("Unable to open device tree file '%s'", + filename_path); +-- +2.7.4 +
meta/recipes-devtools/qemu/qemu/CVE-2018-20815_p2.patch new file +52 -0
52 lines not on this page · raw message
meta/recipes-devtools/qemu/qemu/CVE-2019-9824.patch new file +47 -0
47 lines not on this page · raw message
meta/recipes-devtools/qemu/qemu_3.0.0.bb +3 -0
@@ -32,6 +32,9 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \ file://CVE-2018-19364_p2.patch \ file://CVE-2018-19489.patch \ file://CVE-2019-12155.patch \ + file://CVE-2018-20815_p1.patch \ + file://CVE-2018-20815_p2.patch \ + file://CVE-2019-9824.patch \ " UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
Signature · 1 line
2.7.4
[thud] 30/30] uboot-sign.bbclass: Remove tab indentations in python code
In reply to Armin KusterFrom: Robert Yang <[email protected]>
Use 4 spaces to replace a tab.
--- meta/classes/uboot-sign.bbclass | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-)
meta/classes/uboot-sign.bbclass +10 -10
@@ -80,16 +80,16 @@ do_concat_dtb () { } python () { - uboot_pn = d.getVar('PREFERRED_PROVIDER_u-boot') or 'u-boot' - if d.getVar('UBOOT_SIGN_ENABLE') == '1' and d.getVar('PN') == uboot_pn: - kernel_pn = d.getVar('PREFERRED_PROVIDER_virtual/kernel') + uboot_pn = d.getVar('PREFERRED_PROVIDER_u-boot') or 'u-boot' + if d.getVar('UBOOT_SIGN_ENABLE') == '1' and d.getVar('PN') == uboot_pn: + kernel_pn = d.getVar('PREFERRED_PROVIDER_virtual/kernel') - # u-boot.dtb and u-boot-nodtb.bin are deployed _before_ do_deploy - # Thus, do_deploy_setscene will also populate them in DEPLOY_IMAGE_DIR - bb.build.addtask('do_deploy_dtb', 'do_deploy', 'do_compile', d) + # u-boot.dtb and u-boot-nodtb.bin are deployed _before_ do_deploy + # Thus, do_deploy_setscene will also populate them in DEPLOY_IMAGE_DIR + bb.build.addtask('do_deploy_dtb', 'do_deploy', 'do_compile', d) - # do_concat_dtb is scheduled _before_ do_install as it overwrite the - # u-boot.bin in both DEPLOYDIR and DEPLOY_IMAGE_DIR. - bb.build.addtask('do_concat_dtb', 'do_install', None, d) - d.appendVarFlag('do_concat_dtb', 'depends', ' %s:do_assemble_fitimage' % kernel_pn) + # do_concat_dtb is scheduled _before_ do_install as it overwrite the + # u-boot.bin in both DEPLOYDIR and DEPLOY_IMAGE_DIR. + bb.build.addtask('do_concat_dtb', 'do_install', None, d) + d.appendVarFlag('do_concat_dtb', 'depends', ' %s:do_assemble_fitimage' % kernel_pn) }
Signature · 1 line
2.7.4
[thud] 29/30] glib: Security fix for CVE-2019-9633
In reply to Armin KusterFrom: Armin Kuster <[email protected]>
Source: gnome.org
MR: 98802
Type: Security Fix
Disposition: Backport from https://gitlab.gnome.org/GNOME/glib/commit/d553d92d6e9f53cbe5a34166fcb919ba652c6a8e
ChangeID: b73c332f27f47ddc1b1cfd7424f24778acc0c318
Description:
includes supporting patch.
Fixes CVE-2019-9633
--- .../glib-2.0/glib-2.0/CVE-2019-9633_p1.patch | 316 +++++++++++++++++++++ .../glib-2.0/glib-2.0/CVE-2019-9633_p2.patch | 231 +++++++++++++++ meta/recipes-core/glib-2.0/glib-2.0_2.58.0.bb | 2 + 3 files changed, 549 insertions(+) create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/CVE-2019-9633_p1.patch create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/CVE-2019-9633_p2.patch
meta/recipes-core/glib-2.0/glib-2.0/CVE-2019-9633_p1.patch new file +316 -0
@@ -0,0 +1,316 @@ +From c1e32b90576af11556c8a9178e43902f3394a4b0 Mon Sep 17 00:00:00 2001 +From: Patrick Griffis <[email protected]> +Date: Mon, 29 Oct 2018 09:53:07 -0400 +Subject: [PATCH] gsocketclient: Improve handling of slow initial connections + +Currently a new connection will not be attempted until the previous +one has timed out and as the current API only exposes a single +timeout value in practice it often means that it will wait 30 seconds +(or forever with 0 (the default)) on each connection. + +This is unacceptable so we are now trying to follow the behavior +RFC 8305 recommends by making multiple connection attempts if +the connection takes longer than 250ms. The first connection +to make it to completion then wins. + +Upstream-Status: Backport +CVE: CVE-2019-9633 patch 1 +Affects: < 2.59.2 +Signed-off-by: Armin Kuster <[email protected]> + +--- + gio/gsocketclient.c | 176 ++++++++++++++++++++++++++++++++++++++++++++-------- + 1 file changed, 151 insertions(+), 25 deletions(-) + +diff --git a/gio/gsocketclient.c b/gio/gsocketclient.c +index ddd1497..5c6513c 100644 +--- a/gio/gsocketclient.c ++++ b/gio/gsocketclient.c +@@ -2,6 +2,7 @@ + * + * Copyright © 2008, 2009 codethink + * Copyright © 2009 Red Hat, Inc ++ * Copyright © 2018 Igalia S.L. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public +@@ -49,6 +50,10 @@ + #include <gio/ginetaddress.h> + #include "glibintl.h" + ++/* As recommended by RFC 8305 this is the time it waits ++ * on a connection before starting another concurrent attempt. ++ */ ++#define HAPPY_EYEBALLS_CONNECTION_ATTEMPT_TIMEOUT_MS 250 + + /** + * SECTION:gsocketclient +@@ -1328,28 +1333,82 @@ typedef struct + GSocketConnectable *connectable; + GSocketAddressEnumerator *enumerator; + GProxyAddress *proxy_addr; +- GSocketAddress *current_addr; +- GSocket *current_socket; ++ GSocket *socket; + GIOStream *connection; + ++ GSList *connection_attempts; + GError *last_error; + } GSocketClientAsyncConnectData; + ++static void connection_attempt_unref (gpointer attempt); ++ + static void + g_socket_client_async_connect_data_free (GSocketClientAsyncConnectData *data) + { + g_clear_object (&data->connectable); + g_clear_object (&data->enumerator); + g_clear_object (&data->proxy_addr); +- g_clear_object (&data->current_addr); +- g_clear_object (&data->current_socket); ++ g_clear_object (&data->socket); + g_clear_object (&data->connection); ++ g_slist_free_full (data->connection_attempts, connection_attempt_unref); + + g_clear_error (&data->last_error); + + g_slice_free (GSocketClientAsyncConnectData, data); + } + ++typedef struct ++{ ++ GSocketAddress *address; ++ GSocket *socket; ++ GIOStream *connection; ++ GSocketClientAsyncConnectData *data; /* unowned */ ++ GSource *timeout_source; ++ GCancellable *cancellable; ++ grefcount ref; ++} ConnectionAttempt; ++ ++static ConnectionAttempt * ++connection_attempt_new (void) ++{ ++ ConnectionAttempt *attempt = g_new0 (ConnectionAttempt, 1); ++ g_ref_count_init (&attempt->ref); ++ return attempt; ++} ++ ++static ConnectionAttempt * ++connection_attempt_ref (ConnectionAttempt *attempt) ++{ ++ g_ref_count_inc (&attempt->ref); ++ return attempt; ++} ++ ++static void ++connection_attempt_unref (gpointer pointer) ++{ ++ ConnectionAttempt *attempt = pointer; ++ if (g_ref_count_dec (&attempt->ref)) ++ { ++ g_clear_object (&attempt->address); ++ g_clear_object (&attempt->socket); ++ g_clear_object (&attempt->connection); ++ g_clear_object (&attempt->cancellable); ++ if (attempt->timeout_source) ++ { ++ g_source_destroy (attempt->timeout_source); ++ g_source_unref (attempt->timeout_source); ++ } ++ g_free (attempt); ++ } ++} ++ ++static void ++connection_attempt_remove (ConnectionAttempt *attempt) ++{ ++ attempt->data->connection_attempts = g_slist_remove (attempt->data->connection_attempts, attempt); ++ connection_attempt_unref (attempt); ++} ++ + static void + g_socket_client_async_connect_complete (GSocketClientAsyncConnectData *data) + { +@@ -1359,8 +1418,7 @@ g_socket_client_async_connect_complete (GSocketClientAsyncConnectData *data) + { + GSocketConnection *wrapper_connection; + +- wrapper_connection = g_tcp_wrapper_connection_new (data->connection, +- data->current_socket); ++ wrapper_connection = g_tcp_wrapper_connection_new (data->connection, data->socket); + g_object_unref (data->connection); + data->connection = (GIOStream *)wrapper_connection; + } +@@ -1389,8 +1447,7 @@ static void + enumerator_next_async (GSocketClientAsyncConnectData *data) + { + /* We need to cleanup the state */ +- g_clear_object (&data->current_socket); +- g_clear_object (&data->current_addr); ++ g_clear_object (&data->socket); + g_clear_object (&data->proxy_addr); + g_clear_object (&data->connection); + +@@ -1485,34 +1542,68 @@ g_socket_client_connected_callback (GObject *source, + GAsyncResult *result, + gpointer user_data) + { +- GSocketClientAsyncConnectData *data = user_data; ++ ConnectionAttempt *attempt = user_data; ++ GSocketClientAsyncConnectData *data = attempt->data; ++ GSList *l; + GError *error = NULL; + GProxy *proxy; + const gchar *protocol; + +- if (g_task_return_error_if_cancelled (data->task)) ++ /* data is NULL once the task is completed */ ++ if (data && g_task_return_error_if_cancelled (data->task)) + { + g_object_unref (data->task); ++ connection_attempt_unref (attempt); + return; + } + ++ if (attempt->timeout_source) ++ { ++ g_source_destroy (attempt->timeout_source); ++ g_clear_pointer (&attempt->timeout_source, g_source_unref); ++ } ++ + if (!g_socket_connection_connect_finish (G_SOCKET_CONNECTION (source), + result, &error)) + { +- clarify_connect_error (error, data->connectable, +- data->current_addr); +- set_last_error (data, error); ++ if (!g_cancellable_is_cancelled (attempt->cancellable)) ++ { ++ clarify_connect_error (error, data->connectable, attempt->address); ++ set_last_error (data, error); ++ } ++ else ++ g_clear_error (&error); ++ ++ if (data) ++ { ++ connection_attempt_remove (attempt); ++ enumerator_next_async (data); ++ } ++ else ++ connection_attempt_unref (attempt); + +- /* try next one */ +- enumerator_next_async (data); + return; + } + ++ data->socket = g_steal_pointer (&attempt->socket); ++ data->connection = g_steal_pointer (&attempt->connection); ++ ++ for (l = data->connection_attempts; l; l = g_slist_next (l)) ++ { ++ ConnectionAttempt *attempt_entry = l->data; ++ g_cancellable_cancel (attempt_entry->cancellable); ++ attempt_entry->data = NULL; ++ connection_attempt_unref (attempt_entry); ++ } ++ g_slist_free (data->connection_attempts); ++ data->connection_attempts = NULL; ++ connection_attempt_unref (attempt); ++ + g_socket_connection_set_cached_remote_address ((GSocketConnection*)data->connection, NULL); + g_socket_client_emit_event (data->client, G_SOCKET_CLIENT_CONNECTED, data->connectable, data->connection); + + /* wrong, but backward compatible */ +- g_socket_set_blocking (data->current_socket, TRUE); ++ g_socket_set_blocking (data->socket, TRUE); + + if (!data->proxy_addr) + { +@@ -1565,6 +1656,26 @@ g_socket_client_connected_callback (GObject *source, + } + } + ++static gboolean ++on_connection_attempt_timeout (gpointer data) ++{ ++ ConnectionAttempt *attempt = data; ++ ++ enumerator_next_async (attempt->data); ++ ++ g_clear_pointer (&attempt->timeout_source, g_source_unref); ++ return G_SOURCE_REMOVE; ++} ++ ++static void ++on_connection_cancelled (GCancellable *cancellable, ++ gpointer data) ++{ ++ GCancellable *attempt_cancellable = data; ++ ++ g_cancellable_cancel (attempt_cancellable); ++} ++ + static void + g_socket_client_enumerator_callback (GObject *object, + GAsyncResult *result, +@@ -1573,6 +1684,7 @@ g_socket_client_enumerator_callback (GObject *object, + GSocketClientAsyncConnectData *data = user_data; + GSocketAddress *address = NULL; + GSocket *socket; ++ ConnectionAttempt *attempt; + GError *error = NULL; + + if (g_task_return_error_if_cancelled (data->task)) +@@ -1585,6 +1697,9 @@ g_socket_client_enumerator_callback (GObject *object, + result, &error); + if (address == NULL) + { ++ if (data->connection_attempts) ++ return; ++ + g_socket_client_emit_event (data->client, G_SOCKET_CLIENT_COMPLETE, data->connectable, NULL); + if (!error) + { +@@ -1621,16 +1736,27 @@ g_socket_client_enumerator_callback (GObject *object, + return; + } + +- data->current_socket = socket; +- data->current_addr = address; +- data->connection = (GIOStream *) g_socket_connection_factory_create_connection (socket); +- +- g_socket_connection_set_cached_remote_address ((GSocketConnection*)data->connection, address); +- g_socket_client_emit_event (data->client, G_SOCKET_CLIENT_CONNECTING, data->connectable, data->connection); +- g_socket_connection_connect_async (G_SOCKET_CONNECTION (data->connection), ++ attempt = connection_attempt_new (); ++ attempt->data = data; ++ attempt->socket = socket; ++ attempt->address = address; ++ attempt->cancellable = g_cancellable_new (); ++ attempt->connection = (GIOStream *)g_socket_connection_factory_create_connection (socket); ++ attempt->timeout_source = g_timeout_source_new (HAPPY_EYEBALLS_CONNECTION_ATTEMPT_TIMEOUT_MS); ++ g_source_set_callback (attempt->timeout_source, on_connection_attempt_timeout, attempt, NULL); ++ g_source_attach (attempt->timeout_source, g_main_context_get_thread_default ()); ++ data->connection_attempts = g_slist_append (data->connection_attempts, attempt); ++ ++ if (g_task_get_cancellable (data->task)) ++ g_cancellable_connect (g_task_get_cancellable (data->task), G_CALLBACK (on_connection_cancelled), ++ g_object_ref (attempt->cancellable), g_object_unref); ++ ++ g_socket_connection_set_cached_remote_address ((GSocketConnection *)attempt->connection, address); ++ g_socket_client_emit_event (data->client, G_SOCKET_CLIENT_CONNECTING, data->connectable, attempt->connection); ++ g_socket_connection_connect_async (G_SOCKET_CONNECTION (attempt->connection), + address, +- g_task_get_cancellable (data->task), +- g_socket_client_connected_callback, data); ++ attempt->cancellable, ++ g_socket_client_connected_callback, connection_attempt_ref (attempt)); + } + + /** +-- +2.7.4 +
meta/recipes-core/glib-2.0/glib-2.0/CVE-2019-9633_p2.patch new file +231 -0
231 lines not on this page · raw message
meta/recipes-core/glib-2.0/glib-2.0_2.58.0.bb +2 -0
@@ -15,6 +15,8 @@ SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \ file://0010-Do-not-hardcode-python-path-into-various-tools.patch \ file://date-lt.patch \ file://CVE-2019-12450.patch \ + file://CVE-2019-9633_p1.patch \ + file://CVE-2019-9633_p2.patch \ " SRC_URI_append_class-native = " file://relocate-modules.patch"
Signature · 1 line
2.7.4
Quoted 52 lines · Armin Kuster
Comments regarding this patch series due by Wednesday.
The following changes since commit
f162d5bfe6eaeca24f441c83c87252c8d05744fc:core-image-sato-sdk-ptest: Tweak size to stay within 4GB limit (2019-05-17 22:05:59 -0700)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contribstable/thud-nmut
http://cgit.openembedded.org/openembedded-core-contrib/log/?h=stable/thud-nmutArmin Kuster (16):
glibc: Security fix CVE-2019-9169
elfutils: Security fixes CVE-2019-7146,7149,7150
qemu: Several CVE fixes
python: Update to 2.7.16
busybox: Security fixes for CVE-2018-20679 CVE-2019-5747
sqlite3: Security fixes for CVE-2018-20505 & 20506
file: Multiple Secruity fixes
go: update to minor update 1.11.10
qemu: Security fix for CVE-2018-19489
Tar: Security fix CVE-2019-0023
glib-2.0: Security fix for CVE-2019-12450
wget: Security fix for CVE-2019-5953
Curl: Securiyt fix CVE-2019-5435 CVE-2019-5436
qemu: Security fix for CVE-2019-12155
qemu: Security fixes CVE-2018-20815 CVE-2019-9824
glib: Security fix for CVE-2019-9633Chen Qi (2):
cups: upgrade to 2.2.9
cups: upgrade to 2.2.10Hongxu Jia (1):
go-target.inc: fix go not found while multilib enabledJoshua DeWeese (1):
wpa_supplicant: Changed systemd template unitsKhem Raj (1):
go: Upgrade 1.11.1 -> 1.11.4 minor releaseMartin Jansa (1):
python: add a fix for CVE-2019-9948 and CVE-2019-9636Richard Purdie (4):
go-crosssdk: PN should useSDK_SYS, notTARGET_ARCH
yocto-uninative: Update to 2.5 release
uninative: Switch from bz2 to xz
uninative: Update to 2.6 release
Quoted 8 lines
Robert Yang (1):
uboot-sign.bbclass: Remove tab indentations in python codeRoss Burton (3):
cairo: fix CVE-2018-19876 CVE-2019-6461 CVE-2019-6462
lighttpd: fix CVE-2019-11072
glibc: backport CVE fixes
Looks fine to me
Quoted 131 lines
meta/classes/uboot-sign.bbclass | 20 +- meta/classes/uninative.bbclass | 4 +- meta/conf/distro/include/yocto-uninative.inc | 8 +- ...place-systemd-install-Alias-with-WantedBy.patch | 52 ++++ .../wpa-supplicant/wpa-supplicant_2.6.bb | 1 + .../busybox/busybox/CVE-2018-20679.patch | 142 +++++++++ .../busybox/busybox/CVE-2019-5747.patch | 60 ++++ meta/recipes-core/busybox/busybox_1.29.3.bb | 2 + .../glib-2.0/glib-2.0/CVE-2019-12450.patch | 59 ++++ .../glib-2.0/glib-2.0/CVE-2019-9633_p1.patch | 316 +++++++++++++++++++++ .../glib-2.0/glib-2.0/CVE-2019-9633_p2.patch | 231 +++++++++++++++ meta/recipes-core/glib-2.0/glib-2.0_2.58.0.bb | 3 + meta/recipes-core/glibc/glibc/CVE-2016-10739.patch | 232 +++++++++++++++ meta/recipes-core/glibc/glibc/CVE-2018-19591.patch | 48 ++++ meta/recipes-core/glibc/glibc/CVE-2019-9169.patch | 63 ++++ meta/recipes-core/glibc/glibc_2.28.bb | 3 + meta/recipes-devtools/elfutils/elfutils_0.175.bb | 4 + .../elfutils/files/CVE-2019-7146_p1.patch | 52 ++++ .../elfutils/files/CVE-2019-7146_p2.patch | 65 +++++ .../elfutils/files/CVE-2019-7149.patch | 148 ++++++++++ .../elfutils/files/CVE-2019-7150.patch | 51 ++++ .../recipes-devtools/file/file/CVE-2019-8904.patch | 30 ++ .../file/file/CVE-2019-8905_CVE-2019-8907.patch | 120 ++++++++ .../recipes-devtools/file/file/CVE-2019-8906.patch | 27 ++ meta/recipes-devtools/file/file_5.34.bb | 3 + meta/recipes-devtools/go/go-1.11.inc | 7 +- ...07-cmd-go-make-GOROOT-precious-by-default.patch | 6 +- .../0008-use-GOBUILDMODE-to-set-buildmode.patch | 13 +- meta/recipes-devtools/go/go-crosssdk.inc | 2 +- meta/recipes-devtools/go/go-target.inc | 2 +- ...on-native_2.7.15.bb => python-native_2.7.16.bb} | 2 - meta/recipes-devtools/python/python.inc | 18 +- ...23-Use-XML_SetHashSalt-in-_elementtree-GH.patch | 96 ------- ...ix-test_ssl-when-a-filename-cannot-be-enc.patch | 55 ---- ...LS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch | 120 -------- ...34540-Convert-shutil._call_external_zip-t.patch | 67 ----- ...dd-missing-closing-wrapper-in-test_tls1_3.patch | 37 --- ...ix-test_ssl.test_options-to-account-for-O.patch | 37 --- ...ix-test_default_ecdh_curve-needs-no-tlsv1.patch | 34 --- .../python/bpo-35907-cve-2019-9948-fix.patch | 55 ++++ .../python/python/bpo-35907-cve-2019-9948.patch | 55 ++++ .../python/bpo-36216-cve-2019-9636-fix.patch | 28 ++ .../python/python/bpo-36216-cve-2019-9636.patch | 111 ++++++++ .../python/{python_2.7.15.bb => python_2.7.16.bb} | 6 +- .../qemu/qemu/CVE-2018-16867.patch | 49 ++++ .../qemu/qemu/CVE-2018-16872.patch | 89 ++++++ .../qemu/qemu/CVE-2018-18849.patch | 86 ++++++ .../qemu/qemu/CVE-2018-19364_p1.patch | 51 ++++ .../qemu/qemu/CVE-2018-19364_p2.patch | 115 ++++++++ .../qemu/qemu/CVE-2018-19489.patch | 83 ++++++ .../qemu/qemu/CVE-2018-20815_p1.patch | 42 +++ .../qemu/qemu/CVE-2018-20815_p2.patch | 52 ++++ .../qemu/qemu/CVE-2019-12155.patch | 38 +++ .../recipes-devtools/qemu/qemu/CVE-2019-9824.patch | 47 +++ meta/recipes-devtools/qemu/qemu_3.0.0.bb | 10 + .../0001-don-t-try-to-run-generated-binaries.patch | 29 +- .../cups/{cups_2.2.8.bb => cups_2.2.10.bb} | 4 +- .../lighttpd/lighttpd/fix-http-parseopts.patch | 51 ++++ meta/recipes-extended/lighttpd/lighttpd_1.4.51.bb | 1 + meta/recipes-extended/tar/tar/CVE-2019-9923.patch | 38 +++ meta/recipes-extended/tar/tar_1.30.bb | 1 + .../recipes-extended/wget/wget/CVE-2019-5953.patch | 51 ++++ meta/recipes-extended/wget/wget_1.19.5.bb | 1 + .../cairo/cairo/CVE-2019-6461.patch | 19 ++ .../cairo/cairo/CVE-2019-6462.patch | 20 ++ meta/recipes-graphics/cairo/cairo_1.14.12.bb | 2 + meta/recipes-support/curl/curl/CVE-2019-5435.patch | 200 +++++++++++++ meta/recipes-support/curl/curl/CVE-2019-5436.patch | 32 +++ meta/recipes-support/curl/curl_7.61.0.bb | 2 + .../sqlite/files/CVE-2018-20505.patch | 31 ++ .../sqlite/files/CVE-2018-20506.patch | 103 +++++++ meta/recipes-support/sqlite/sqlite3_3.23.1.bb | 2 + 72 files changed, 3233 insertions(+), 511 deletions(-) create mode 100644 meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/0001-replace-systemd-install-Alias-with-WantedBy.patch create mode 100644 meta/recipes-core/busybox/busybox/CVE-2018-20679.patch create mode 100644 meta/recipes-core/busybox/busybox/CVE-2019-5747.patch create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/CVE-2019-12450.patch create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/CVE-2019-9633_p1.patch create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/CVE-2019-9633_p2.patch create mode 100644 meta/recipes-core/glibc/glibc/CVE-2016-10739.patch create mode 100644 meta/recipes-core/glibc/glibc/CVE-2018-19591.patch create mode 100644 meta/recipes-core/glibc/glibc/CVE-2019-9169.patch create mode 100644 meta/recipes-devtools/elfutils/files/CVE-2019-7146_p1.patch create mode 100644 meta/recipes-devtools/elfutils/files/CVE-2019-7146_p2.patch create mode 100644 meta/recipes-devtools/elfutils/files/CVE-2019-7149.patch create mode 100644 meta/recipes-devtools/elfutils/files/CVE-2019-7150.patch create mode 100644 meta/recipes-devtools/file/file/CVE-2019-8904.patch create mode 100644 meta/recipes-devtools/file/file/CVE-2019-8905_CVE-2019-8907.patch create mode 100644 meta/recipes-devtools/file/file/CVE-2019-8906.patch rename meta/recipes-devtools/python/{python-native_2.7.15.bb => python-native_2.7.16.bb} (96%) delete mode 100644 meta/recipes-devtools/python/python/0001-2.7-bpo-34623-Use-XML_SetHashSalt-in-_elementtree-GH.patch delete mode 100644 meta/recipes-devtools/python/python/0001-bpo-33354-Fix-test_ssl-when-a-filename-cannot-be-enc.patch delete mode 100644 meta/recipes-devtools/python/python/0001-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch delete mode 100644 meta/recipes-devtools/python/python/0001-closes-bpo-34540-Convert-shutil._call_external_zip-t.patch delete mode 100644 meta/recipes-devtools/python/python/0002-bpo-34818-Add-missing-closing-wrapper-in-test_tls1_3.patch delete mode 100644 meta/recipes-devtools/python/python/0003-bpo-34834-Fix-test_ssl.test_options-to-account-for-O.patch delete mode 100644 meta/recipes-devtools/python/python/0004-bpo-34836-fix-test_default_ecdh_curve-needs-no-tlsv1.patch create mode 100644 meta/recipes-devtools/python/python/bpo-35907-cve-2019-9948-fix.patch create mode 100644 meta/recipes-devtools/python/python/bpo-35907-cve-2019-9948.patch create mode 100644 meta/recipes-devtools/python/python/bpo-36216-cve-2019-9636-fix.patch create mode 100644 meta/recipes-devtools/python/python/bpo-36216-cve-2019-9636.patch rename meta/recipes-devtools/python/{python_2.7.15.bb => python_2.7.16.bb} (98%) create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-16867.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-16872.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-18849.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-19364_p1.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-19364_p2.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-19489.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-20815_p1.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2018-20815_p2.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2019-12155.patch create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2019-9824.patch rename meta/recipes-extended/cups/{cups_2.2.8.bb => cups_2.2.10.bb} (40%) create mode 100644 meta/recipes-extended/lighttpd/lighttpd/fix-http-parseopts.patch create mode 100644 meta/recipes-extended/tar/tar/CVE-2019-9923.patch create mode 100644 meta/recipes-extended/wget/wget/CVE-2019-5953.patch create mode 100644 meta/recipes-graphics/cairo/cairo/CVE-2019-6461.patch create mode 100644 meta/recipes-graphics/cairo/cairo/CVE-2019-6462.patch create mode 100644 meta/recipes-support/curl/curl/CVE-2019-5435.patch create mode 100644 meta/recipes-support/curl/curl/CVE-2019-5436.patch create mode 100644 meta/recipes-support/sqlite/files/CVE-2018-20505.patch create mode 100644 meta/recipes-support/sqlite/files/CVE-2018-20506.patch--
2.7.4--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core