poky: subtree update:c17113f1e2..3b87508a9a

Adrian Bunk (18):
      help2man: Upgrade 1.47.10 -> 1.47.11
      glib-networking: Upgrade 2.60.2 -> 2.60.3
      flac: Upgrade 1.3.2 -> 1.3.3
      subversion: Upgrade 1.12.0 -> 1.12.2
      world-broken.inc: Remove
      meta/recipes.txt: Stop documenting the long removed recipes-lsb4
      python: Remove PYTHONLSBOPTS that hasn't been set for some time
      systemd: Print a buildtime warning about the status with musl
      linux-dtb.inc: Remove
      systemd: Update to the latest 242 branch
      Remove LSB support
      Remove LSB support bits
      libxcrypt: Fix the build with -Os
      systemd: Update to the latest 242 branch
      Remove leftovers from the eglinfo removal
      Update to KERNEL_DEVICETREE variable.
      ref-manual: Remove documentation for the removed bluez5 distro feature
      ref-manual: Remove documentation for the removed gnome class

Alex Kiernan (1):
      iputils: Set prefix correctly for usrmerge

Alexander Kanavin (23):
      python3-numpy: update to 1.17.0
      images: use 512M of RAM in qemu if 'opengl" is in DISTRO_FEATURES
      boost: update to 1.71.0
      beaglebone: use the default of 256M rather than 512M
      rpm: resolve a host contamination issue for mono packaging
      qemu: set default RAM to 256M for all machines
      mesa: disable gallium swrast driver on x86 x32
      ltp: move from python 2.x to python 3.x
      lsb-release: fix upstream version check
      libffi: fix upstream version check
      qemu: switch to '-vga std' emulated hardware from vmware/cirrus for x86/mips
      ca-certificates: use python 3 for builds
      libpsl: use python 3 during builds
      pseudo: use python 3 during builds
      llvm: use python 3 during builds
      virglrenderer: update 0.7.0 -> 0.8.0
      webkitgtk: use Python 3 for builds
      webkitgtk: update 2.24.3 -> 2.24.4
      default-providers.inc: set mesa as the provider for native(sdk) virtual/libgl
      libepoxy: enable x11 PACKAGECONFIG for native/nativesdk
      eglinfo: remove the recipe
      local.conf.sample: add a commented-out option to enable the gtk UI qemu frontend
      package.bbclass: allow shell-style wildcards in PRIVATE_LIBS

Alistair Francis (2):
      linux-yocto-dev: Mark qemuriscv64 as compatible
      qemuriscv: Generate a wic rootFS with a larger filesystem

Andre McCurdy (11):
      bitbake.conf: drop FETCHCMD, GITDIR, etc fetcher over-rides
      tune-arm1136jf-s.inc: add hardfloat support
      tune-arm1176jz-s.inc: add support for arm1176jz-s CPU specific tuning
      tune-ep9312.inc: fix TUNEVALID description
      packagegroup-core-boot: drop duplicate MACHINE_ESSENTIAL_EXTRA_RDEPENDS, etc
      rootfs-postcommands.bbclass: add inittab tweak to read_only_rootfs_hook()
      base-files: nsswitch.conf is glibc specific
      sqlite3: make CFLAGS consistent across native, nativesdk and target cases
      sqlite3: explicitly set target endian-ness
      feature-arm-thumb.inc: fix ARM_THUMB_SUFFIX
      dropbear: don't create invalid symlinks if ssh, scp, etc are disabled

Anuj Mittal (1):
      libjpeg-turbo: upgrade 2.0.2 -> 2.0.3

Armin Kuster (4):
      bitbake: tests/fetch: Resolve fetch error in bitbake-selftest
      gcc-9.2: Security fix for CVE-2019-14250
      gcc-8.3: Security fix for CVE-2019-14250
      gcc-8.3: remove 8.3 from zeus

Bruce Ashfield (11):
      bluez5: fix build against libc-headers 5.2+
      kernel-devsrc: remove python2 dependency
      perf: change dependencies on python to python3
      perf: v5.3+ build fixes
      devsrc: update arm64 scripts/prepare for kernels 5.3+
      linux-libc-headers: update to v5.2 headers
      linux-yocto: introduce 5.2 recipes
      qemu: bump linux-yocto preferred version to 5.2
      linux-yocto/5.2: update qemuriscv64 SRCREV
      linux-yocto/5.2: config tweaks and kallsyms fix
      linux-yocto: drop 5.0 recipes

Changhyeok Bae (1):
      iputils: upgrade to s20190709

Changqing Li (8):
      libedit: fix failed to get history
      avahi-ui: support usrmerge
      bootchart2: support usrmerge
      systemd-bootchart: support usrmerge
      bootchart2: switch to add patch from change source in do_install
      mdadm: skip timeout testcase 11spare-migration
      dnf.py: installroot support usrmerge
      man-db: support usrmerge

Chen Qi (7):
      bbtests.py: remove recipe-depends.dot
      commands.py: fix typo
      bitbake: cooker.py: remove generation of recipe-depends.dot
      bind: fix build with python3 PACKAGECONFIG enabled
      python-testtools: rdepend on doctest module
      python-numpy: rdepend on multiprocessing module
      python3: make misc package rdepend on pydoc and pickle modules

Christophe PRIOUZEAU (1):
      common-licenses: update BSD-2-CLAUSE license text

Dan Callaghan (1):
      autotools: always include config_site.d files in CONFIG_SITE

Daniel Klauer (1):
      image.bbclass: Fix debug output for rootfs size

Denys Zagorui (1):
      gzip: add nativesdk support

Drew Moseley (1):
      runqemu: Fix typo in help text.

He Zhe (4):
      ltp: cve/meltdown.c: Fix kernel symbol finding
      ltp: syscalls: rt_sigwaitinfo01: Fix failure for MIPS arches
      qemu: Add pkg-config handling for libgcrypt
      qemu: Fix dependency of PACKAGECONFIG libcurl

Jacob Kroon (2):
      btrfs-tools: Add PACKAGECONFIG knob for controlling python support
      rm_work: Remove redundant 'after' in addtask statement

Jason Wessel (2):
      serial-getty@.service: Allow device to fast fail if it does not exist
      Revert "kernel.bbclass: adjust a condition checking"

Joshua Watt (9):
      bitbake: bitbake: respect force flag in runall and runonly
      oeqa: reproducible: Cleanup reproducible build
      oeqa: reproducible: Use subTest for packages
      oeqa: Set LD_LIBRARY_PATH when executing native commands
      oeqa: reproducible: Record packages in test results
      oeqa: Enable reproducible build test
      oeqa: reproducible: Do two clean builds
      oeqa: reproducible: Preserve sstate mirror for first build
      resulttool: Add reproducible log extraction

Kai Kang (4):
      avahi: launch avahi-daemon after connman
      cups: redefine CUPS_SERVERBIN
      texinfo: fix multilib file confliction
      sysstat: 12.1.3 -> 12.1.6

Kevin Hao (1):
      meta-yocto-bsp: Bump to the v5.2 kernel

Khem Raj (12):
      go-1.12: update to 1.12.9 minor release
      powerpc-tunes: Introduce bigendian tune
      tune-riscv: Drop littleendian and introduce bigendian tune
      gcc: Move STANDARD_STARTFILE_PREFIX_1 and STANDARD_STARTFILE_PREFIX_2 back to gcc.c
      gcc: Fix ldbl-128 support for musl
      libgpg-error: Fix build with gawk 5.x
      libgpg-error: Fix build with gawk 5.x
      musl: Update to latest master
      gcc-9.2: Fix risc-v dynamic linker relocation
      python3native, pythonnative: export PYTHON_LIBRARY and PYTHON_INCLUDE_DIR
      oeqa: Recognise svlogd as another logger
      python3-manifest.json: Fix typo in summary

Mark Asselstine (1):
      sdkext: use simpler kernel module for devtool test

Mark Hatle (1):
      yocto-check-layer: Allow any case for README file detection

Martin Hundebøll (1):
      initscripts: remove warnings on read-only-rootfs (again)

Martin Jansa (3):
      bitbake: utils: Fix movefile() exception handling with python3
      bitbake: fetch2: show warning when renaming the archive with bad checksum failed
      bitbake: bitbake-user-manual: Improve the example for Removal (Override Style Syntax)

Mazliana (1):
      oeqa/kerneldevelopment: Able to apply a single patch to the Linux kernel source

Ming Liu (1):
      weston: uprev to 7.0.0

Nathan Rossi (30):
      binutils: Fix mips patch which changes default emulation
      oeqa/utils/nfs: Add unfs_server function to setup a userspace NFS server
      scripts/lib/resulttool/report.py: Add more result types
      gcc-common.inc: Process staging fixme with correct target/native sysroot
      oeqa/core/tests: Skip test_fail_duplicated_module
      oeqa/core/tests: Fix test_data module tests
      Clean up remnants of glibc-initial
      oe-selftest: Implement console 'keepalive' output
      dejagnu: Add dejagnu for binutils/gcc test suites
      binutils-cross-testsuite: Create recipe for test suite execution
      gcc-runtime: Add do_check task for executing gcc test suites
      glibc-testsuite: Create a recipe to implement glibc test suite
      gcc-testsuite.inc: Fix ssh.exp, ensure multilib_flags are populated
      security_flags.inc: Add overrides for glibc-testsuite to match glibc
      archiver.bbclass: Do not archive srpm's if there are no package tasks
      oeqa/core: Implement proper extra result collection and serialization
      oeqa/core: Rework OETestTag and remove unused OETestFilter
      oeqa/selftest: Add test run filtering based on test tags
      oeqa/core/runner.py: Fix OETestTag listing
      oeqa/selftest/binutils: Create selftest case for binutils test suite
      oeqa/selftest/gcc: Create selftest case for gcc test suite
      oeqa/selftest/glibc: Create selftest case for glibc test suite
      oeqa/selftest/cases/glibc.py: Don't install python3 and pexpect
      oeqa/selftest: For toolchain tests do not fail if a test failed
      oeqa/selftest: Toolchain tests suffix "-user" for qemu usermode results
      oeqa/selftest: Use extraresults on self instead of self.tc
      oeqa/selftest/context.py: Change -t/-T args to be optional
      oeqa/core/decorator: Fix super class modifying subclass tags
      oeqa/selftest/cases/gcc.py: Split into classes for parallelism
      oeqa/selftest/cases/glibc.py: Rework and tag with toolchain-user/system

Neil Armstrong (1):
      mesa: Add support for the panfrost PACKAGECONFIG

Oleksandr Kravchuk (8):
      libsolv: update to 0.7.6
      libevdev: update to 1.8.0
      ell: update to 0.22
      go-dep: update to 0.5.4
      libsecret: 0.19.0
      python3-pbr: update to 5.4.3
      python3-git: update to 3.0.2
      libxcrypt: update to 4.4.8

Peiran Hong (1):
      diffutils: Added perl to support ptest & Skipped one test case

Peter Kjellerstedt (2):
      libffi: Make it build for MIPS o32
      devtool: Avoid failure for recipes with S == WORKDIR and no local files

Richard Purdie (11):
      poky-altcfg: Replace poky-lsb with poky-altcfg
      ca-certificates: Fix reproducibilty and multilib issue
      gcc-cross: Clean up fixed-includes
      systemtap: Use latest and greatest git version for 5.2 kernel support
      gcc-cross: Fix header file corruption problems
      poky: Use 5.2 kernel by default
      binutils/glibc-testsuite: inherit nopackages to fix world builds
      systemtap: Drop patches merged upstream
      poky-tiny/poky-altcfg: Use busybox-mdev and systemd
      oeqa/selftest: Markup 'machine' specific test cases
      oeqa/selftest: Tweak binutils tests tags as toolchain/user and system

Robert Yang (3):
      ccache: 3.7.1 -> 3.7.3
      nfs-utils: 2.3.3 -> 2.4.1
      build-compare: 2015.02.10 -> 2019.08.14

Ross Burton (11):
      libedit: remove FETCHCMD append
      libnl: upgrade to 3.5.0
      libnl: don't patch libnl-3.0.pc
      systemd: explicitly set the path to nologin
      core-image-sato: don't use 512MB in qemumips
      patch: add CVE tags to patches
      pango: 1.44.6 upgrade
      pango: add PACKAGECONFIG for libthai support
      harfbuzz: upgrade to 2.6.1
      systemd: ensure reproducible builds by clearly exposing the time epoch support
      ref-system-requirements: add Debian 10 to supported distribution list

Scott Rifenbark (5):
      ref-manual: Updated the "AS" variable
      ref-manual: Updates to "Building Your Recipe"
      dev-manual: Updated "Creating a Team Development Environment"
      poky-end: Added "pylint3" package to Ubuntu essentials.
      ref-manual: sync list of image types with source

Tim Blechmann (1):
      icecc: blacklist systemtap

Trevor Gamblin (2):
      lighttpd: drop hard-coded lua version in PACKAGECONFIG
      libevent: add granularity to ptest log

Vijai Kumar K (1):
      lib/oe/gpg_sign.py: Remove unwanted import

Wes Lindauer (1):
      bitbake: bitbake: cooker: Ensure bbappends are found in stable order

Yi Zhao (1):
      libbsd: upgrade 0.9.1 -> 0.10.0

Yuan Chao (1):
      man-db: upgrade 2.8.6.1 -> 2.8.7

Zang Ruochen (7):
      libarchive:upgrade 3.3.3 -> 3.4.0
      python3-pip:upgrade 19.2.2 -> 19.2.3
      logrotate:upgrade 3.15.0 -> 3.15.1
      libogg:upgrade 1.3.3 -> 1.3.4
      dtc:upgrade 1.5.0 -> 1.5.1
      python3-dbus:upgrade 1.2.8 -> 1.2.10
      meson:upgrade 0.51.1 -> 0.51.2

Change-Id: I341e8df65e8196114088a2d6d6eb3a33296188b4
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/poky/meta/recipes-extended/libarchive/libarchive/CVE-2018-1000877.patch b/poky/meta/recipes-extended/libarchive/libarchive/CVE-2018-1000877.patch
deleted file mode 100644
index ce63837..0000000
--- a/poky/meta/recipes-extended/libarchive/libarchive/CVE-2018-1000877.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-CVE: CVE-2018-1000877
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-From 021efa522ad729ff0f5806c4ce53e4a6cc1daa31 Mon Sep 17 00:00:00 2001
-From: Daniel Axtens <dja@axtens.net>
-Date: Tue, 20 Nov 2018 17:56:29 +1100
-Subject: [PATCH] Avoid a double-free when a window size of 0 is specified
-
-new_size can be 0 with a malicious or corrupted RAR archive.
-
-realloc(area, 0) is equivalent to free(area), so the region would
-be free()d here and the free()d again in the cleanup function.
-
-Found with a setup running AFL, afl-rb, and qsym.
----
- libarchive/archive_read_support_format_rar.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/libarchive/archive_read_support_format_rar.c b/libarchive/archive_read_support_format_rar.c
-index 23452222..6f419c27 100644
---- a/libarchive/archive_read_support_format_rar.c
-+++ b/libarchive/archive_read_support_format_rar.c
-@@ -2300,6 +2300,11 @@ parse_codes(struct archive_read *a)
-       new_size = DICTIONARY_MAX_SIZE;
-     else
-       new_size = rar_fls((unsigned int)rar->unp_size) << 1;
-+    if (new_size == 0) {
-+      archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
-+                        "Zero window size is invalid.");
-+      return (ARCHIVE_FATAL);
-+    }
-     new_window = realloc(rar->lzss.window, new_size);
-     if (new_window == NULL) {
-       archive_set_error(&a->archive, ENOMEM,
--- 
-2.20.0
-
diff --git a/poky/meta/recipes-extended/libarchive/libarchive/CVE-2018-1000878.patch b/poky/meta/recipes-extended/libarchive/libarchive/CVE-2018-1000878.patch
deleted file mode 100644
index 7468fd3..0000000
--- a/poky/meta/recipes-extended/libarchive/libarchive/CVE-2018-1000878.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-CVE: CVE-2018-1000878
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-From bfcfe6f04ed20db2504db8a254d1f40a1d84eb28 Mon Sep 17 00:00:00 2001
-From: Daniel Axtens <dja@axtens.net>
-Date: Tue, 4 Dec 2018 00:55:22 +1100
-Subject: [PATCH] rar: file split across multi-part archives must match
-
-Fuzzing uncovered some UAF and memory overrun bugs where a file in a
-single file archive reported that it was split across multiple
-volumes. This was caused by ppmd7 operations calling
-rar_br_fillup. This would invoke rar_read_ahead, which would in some
-situations invoke archive_read_format_rar_read_header.  That would
-check the new file name against the old file name, and if they didn't
-match up it would free the ppmd7 buffer and allocate a new
-one. However, because the ppmd7 decoder wasn't actually done with the
-buffer, it would continue to used the freed buffer. Both reads and
-writes to the freed region can be observed.
-
-This is quite tricky to solve: once the buffer has been freed it is
-too late, as the ppmd7 decoder functions almost universally assume
-success - there's no way for ppmd_read to signal error, nor are there
-good ways for functions like Range_Normalise to propagate them. So we
-can't detect after the fact that we're in an invalid state - e.g. by
-checking rar->cursor, we have to prevent ourselves from ever ending up
-there. So, when we are in the dangerous part or rar_read_ahead that
-assumes a valid split, we set a flag force read_header to either go
-down the path for split files or bail. This means that the ppmd7
-decoder keeps a valid buffer and just runs out of data.
-
-Found with a combination of AFL, afl-rb and qsym.
----
- libarchive/archive_read_support_format_rar.c | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/libarchive/archive_read_support_format_rar.c b/libarchive/archive_read_support_format_rar.c
-index 6f419c27..a8cc5c94 100644
---- a/libarchive/archive_read_support_format_rar.c
-+++ b/libarchive/archive_read_support_format_rar.c
-@@ -258,6 +258,7 @@ struct rar
-   struct data_block_offsets *dbo;
-   unsigned int cursor;
-   unsigned int nodes;
-+  char filename_must_match;
- 
-   /* LZSS members */
-   struct huffman_code maincode;
-@@ -1560,6 +1561,12 @@ read_header(struct archive_read *a, struct archive_entry *entry,
-     }
-     return ret;
-   }
-+  else if (rar->filename_must_match)
-+  {
-+    archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
-+      "Mismatch of file parts split across multi-volume archive");
-+    return (ARCHIVE_FATAL);
-+  }
- 
-   rar->filename_save = (char*)realloc(rar->filename_save,
-                                       filename_size + 1);
-@@ -2933,12 +2940,14 @@ rar_read_ahead(struct archive_read *a, size_t min, ssize_t *avail)
-     else if (*avail == 0 && rar->main_flags & MHD_VOLUME &&
-       rar->file_flags & FHD_SPLIT_AFTER)
-     {
-+      rar->filename_must_match = 1;
-       ret = archive_read_format_rar_read_header(a, a->entry);
-       if (ret == (ARCHIVE_EOF))
-       {
-         rar->has_endarc_header = 1;
-         ret = archive_read_format_rar_read_header(a, a->entry);
-       }
-+      rar->filename_must_match = 0;
-       if (ret != (ARCHIVE_OK))
-         return NULL;
-       return rar_read_ahead(a, min, avail);
--- 
-2.20.0
-
diff --git a/poky/meta/recipes-extended/libarchive/libarchive/CVE-2018-1000879.patch b/poky/meta/recipes-extended/libarchive/libarchive/CVE-2018-1000879.patch
deleted file mode 100644
index 9f25932..0000000
--- a/poky/meta/recipes-extended/libarchive/libarchive/CVE-2018-1000879.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-CVE: CVE-2018-1000879
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-From 15bf44fd2c1ad0e3fd87048b3fcc90c4dcff1175 Mon Sep 17 00:00:00 2001
-From: Daniel Axtens <dja@axtens.net>
-Date: Tue, 4 Dec 2018 14:29:42 +1100
-Subject: [PATCH] Skip 0-length ACL fields
-
-Currently, it is possible to create an archive that crashes bsdtar
-with a malformed ACL:
-
-Program received signal SIGSEGV, Segmentation fault.
-archive_acl_from_text_l (acl=<optimised out>, text=0x7e2e92 "", want_type=<optimised out>, sc=<optimised out>) at libarchive/archive_acl.c:1726
-1726				switch (*s) {
-(gdb) p n
-$1 = 1
-(gdb) p field[n]
-$2 = {start = 0x0, end = 0x0}
-
-Stop this by checking that the length is not zero before beginning
-the switch statement.
-
-I am pretty sure this is the bug mentioned in the qsym paper [1],
-and I was able to replicate it with a qsym + AFL + afl-rb setup.
-
-[1] https://www.usenix.org/conference/usenixsecurity18/presentation/yun
----
- libarchive/archive_acl.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/libarchive/archive_acl.c b/libarchive/archive_acl.c
-index 512beee1..7beeee86 100644
---- a/libarchive/archive_acl.c
-+++ b/libarchive/archive_acl.c
-@@ -1723,6 +1723,11 @@ archive_acl_from_text_l(struct archive_acl *acl, const char *text,
- 			st = field[n].start + 1;
- 			len = field[n].end - field[n].start;
- 
-+			if (len == 0) {
-+				ret = ARCHIVE_WARN;
-+				continue;
-+			}
-+
- 			switch (*s) {
- 			case 'u':
- 				if (len == 1 || (len == 4
--- 
-2.20.0
-
diff --git a/poky/meta/recipes-extended/libarchive/libarchive/CVE-2018-1000880.patch b/poky/meta/recipes-extended/libarchive/libarchive/CVE-2018-1000880.patch
deleted file mode 100644
index bc264a1..0000000
--- a/poky/meta/recipes-extended/libarchive/libarchive/CVE-2018-1000880.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-CVE: CVE-2018-1000880
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-From 9c84b7426660c09c18cc349f6d70b5f8168b5680 Mon Sep 17 00:00:00 2001
-From: Daniel Axtens <dja@axtens.net>
-Date: Tue, 4 Dec 2018 16:33:42 +1100
-Subject: [PATCH] warc: consume data once read
-
-The warc decoder only used read ahead, it wouldn't actually consume
-data that had previously been printed. This means that if you specify
-an invalid content length, it will just reprint the same data over
-and over and over again until it hits the desired length.
-
-This means that a WARC resource with e.g.
-Content-Length: 666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666665
-but only a few hundred bytes of data, causes a quasi-infinite loop.
-
-Consume data in subsequent calls to _warc_read.
-
-Found with an AFL + afl-rb + qsym setup.
----
- libarchive/archive_read_support_format_warc.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/libarchive/archive_read_support_format_warc.c b/libarchive/archive_read_support_format_warc.c
-index e8753853..e8fc8428 100644
---- a/libarchive/archive_read_support_format_warc.c
-+++ b/libarchive/archive_read_support_format_warc.c
-@@ -386,6 +386,11 @@ _warc_read(struct archive_read *a, const void **buf, size_t *bsz, int64_t *off)
- 		return (ARCHIVE_EOF);
- 	}
- 
-+	if (w->unconsumed) {
-+		__archive_read_consume(a, w->unconsumed);
-+		w->unconsumed = 0U;
-+	}
-+
- 	rab = __archive_read_ahead(a, 1U, &nrd);
- 	if (nrd < 0) {
- 		*bsz = 0U;
--- 
-2.20.0
-
diff --git a/poky/meta/recipes-extended/libarchive/libarchive/CVE-2019-1000019.patch b/poky/meta/recipes-extended/libarchive/libarchive/CVE-2019-1000019.patch
deleted file mode 100644
index 7f39893..0000000
--- a/poky/meta/recipes-extended/libarchive/libarchive/CVE-2019-1000019.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-CVE: CVE-2019-1000019
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-From 65a23f5dbee4497064e9bb467f81138a62b0dae1 Mon Sep 17 00:00:00 2001
-From: Daniel Axtens <dja@axtens.net>
-Date: Tue, 1 Jan 2019 16:01:40 +1100
-Subject: [PATCH 2/2] 7zip: fix crash when parsing certain archives
-
-Fuzzing with CRCs disabled revealed that a call to get_uncompressed_data()
-would sometimes fail to return at least 'minimum' bytes. This can cause
-the crc32() invocation in header_bytes to read off into invalid memory.
-
-A specially crafted archive can use this to cause a crash.
-
-An ASAN trace is below, but ASAN is not required - an uninstrumented
-binary will also crash.
-
-==7719==ERROR: AddressSanitizer: SEGV on unknown address 0x631000040000 (pc 0x7fbdb3b3ec1d bp 0x7ffe77a51310 sp 0x7ffe77a51150 T0)
-==7719==The signal is caused by a READ memory access.
-    #0 0x7fbdb3b3ec1c in crc32_z (/lib/x86_64-linux-gnu/libz.so.1+0x2c1c)
-    #1 0x84f5eb in header_bytes (/tmp/libarchive/bsdtar+0x84f5eb)
-    #2 0x856156 in read_Header (/tmp/libarchive/bsdtar+0x856156)
-    #3 0x84e134 in slurp_central_directory (/tmp/libarchive/bsdtar+0x84e134)
-    #4 0x849690 in archive_read_format_7zip_read_header (/tmp/libarchive/bsdtar+0x849690)
-    #5 0x5713b7 in _archive_read_next_header2 (/tmp/libarchive/bsdtar+0x5713b7)
-    #6 0x570e63 in _archive_read_next_header (/tmp/libarchive/bsdtar+0x570e63)
-    #7 0x6f08bd in archive_read_next_header (/tmp/libarchive/bsdtar+0x6f08bd)
-    #8 0x52373f in read_archive (/tmp/libarchive/bsdtar+0x52373f)
-    #9 0x5257be in tar_mode_x (/tmp/libarchive/bsdtar+0x5257be)
-    #10 0x51daeb in main (/tmp/libarchive/bsdtar+0x51daeb)
-    #11 0x7fbdb27cab96 in __libc_start_main /build/glibc-OTsEL5/glibc-2.27/csu/../csu/libc-start.c:310
-    #12 0x41dd09 in _start (/tmp/libarchive/bsdtar+0x41dd09)
-
-This was primarly done with afl and FairFuzz. Some early corpus entries
-may have been generated by qsym.
----
- libarchive/archive_read_support_format_7zip.c | 8 +-------
- 1 file changed, 1 insertion(+), 7 deletions(-)
-
-diff --git a/libarchive/archive_read_support_format_7zip.c b/libarchive/archive_read_support_format_7zip.c
-index bccbf8966..b6d1505d3 100644
---- a/libarchive/archive_read_support_format_7zip.c
-+++ b/libarchive/archive_read_support_format_7zip.c
-@@ -2964,13 +2964,7 @@ get_uncompressed_data(struct archive_read *a, const void **buff, size_t size,
- 	if (zip->codec == _7Z_COPY && zip->codec2 == (unsigned long)-1) {
- 		/* Copy mode. */
- 
--		/*
--		 * Note: '1' here is a performance optimization.
--		 * Recall that the decompression layer returns a count of
--		 * available bytes; asking for more than that forces the
--		 * decompressor to combine reads by copying data.
--		 */
--		*buff = __archive_read_ahead(a, 1, &bytes_avail);
-+		*buff = __archive_read_ahead(a, minimum, &bytes_avail);
- 		if (bytes_avail <= 0) {
- 			archive_set_error(&a->archive,
- 			    ARCHIVE_ERRNO_FILE_FORMAT,
diff --git a/poky/meta/recipes-extended/libarchive/libarchive/CVE-2019-1000020.patch b/poky/meta/recipes-extended/libarchive/libarchive/CVE-2019-1000020.patch
deleted file mode 100644
index 25a76fd..0000000
--- a/poky/meta/recipes-extended/libarchive/libarchive/CVE-2019-1000020.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-CVE: CVE-2019-1000020
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-From 8312eaa576014cd9b965012af51bc1f967b12423 Mon Sep 17 00:00:00 2001
-From: Daniel Axtens <dja@axtens.net>
-Date: Tue, 1 Jan 2019 17:10:49 +1100
-Subject: [PATCH 1/2] iso9660: Fail when expected Rockridge extensions is
- missing
-
-A corrupted or malicious ISO9660 image can cause read_CE() to loop
-forever.
-
-read_CE() calls parse_rockridge(), expecting a Rockridge extension
-to be read. However, parse_rockridge() is structured as a while
-loop starting with a sanity check, and if the sanity check fails
-before the loop has run, the function returns ARCHIVE_OK without
-advancing the position in the file. This causes read_CE() to retry
-indefinitely.
-
-Make parse_rockridge() return ARCHIVE_WARN if it didn't read an
-extension. As someone with no real knowledge of the format, this
-seems more apt than ARCHIVE_FATAL, but both the call-sites escalate
-it to a fatal error immediately anyway.
-
-Found with a combination of AFL, afl-rb (FairFuzz) and qsym.
----
- libarchive/archive_read_support_format_iso9660.c | 11 ++++++++++-
- 1 file changed, 10 insertions(+), 1 deletion(-)
-
-diff --git a/libarchive/archive_read_support_format_iso9660.c b/libarchive/archive_read_support_format_iso9660.c
-index 28acfefbb..bad8f1dfe 100644
---- a/libarchive/archive_read_support_format_iso9660.c
-+++ b/libarchive/archive_read_support_format_iso9660.c
-@@ -2102,6 +2102,7 @@ parse_rockridge(struct archive_read *a, struct file_info *file,
-     const unsigned char *p, const unsigned char *end)
- {
- 	struct iso9660 *iso9660;
-+	int entry_seen = 0;
- 
- 	iso9660 = (struct iso9660 *)(a->format->data);
- 
-@@ -2257,8 +2258,16 @@ parse_rockridge(struct archive_read *a, struct file_info *file,
- 		}
- 
- 		p += p[2];
-+		entry_seen = 1;
-+	}
-+
-+	if (entry_seen)
-+		return (ARCHIVE_OK);
-+	else {
-+		archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
-+				  "Tried to parse Rockridge extensions, but none found");
-+		return (ARCHIVE_WARN);
- 	}
--	return (ARCHIVE_OK);
- }
- 
- static int
-
diff --git a/poky/meta/recipes-extended/libarchive/libarchive/bug1066.patch b/poky/meta/recipes-extended/libarchive/libarchive/bug1066.patch
deleted file mode 100644
index 0a662b5..0000000
--- a/poky/meta/recipes-extended/libarchive/libarchive/bug1066.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-libarchive-3.3.3: Fix bug1066
-
-[No upstream tracking] -- https://github.com/libarchive/libarchive/pull/1066
-
-archive_write_set_format_*.c: fix out of bounds read on empty string () filename
-for guntar, pax and v7tar
-
-There is an out of bounds read flaw in the archive_write_gnutar_header,
-archive_write_pax_header and archive_write_v7tar_header functions which
-could leds to cause a denial of service.
-
-Upstream-Status: Backport [https://github.com/libarchive/libarchive/commit/c246ec5d058a3f70a2d3fb765f92fe9db77b25df]
-Bug: 1066
-Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
-
-diff --git a/libarchive/archive_write_set_format_gnutar.c b/libarchive/archive_write_set_format_gnutar.c
-index 2d858c9..1966c53 100644
---- a/libarchive/archive_write_set_format_gnutar.c
-+++ b/libarchive/archive_write_set_format_gnutar.c
-@@ -339,7 +339,7 @@ archive_write_gnutar_header(struct archive_write *a,
- 		 * case getting WCS failed. On POSIX, this is a
- 		 * normal operation.
- 		 */
--		if (p != NULL && p[strlen(p) - 1] != '/') {
-+		if (p != NULL && p[0] != '\0' && p[strlen(p) - 1] != '/') {
- 			struct archive_string as;
- 
- 			archive_string_init(&as);
-diff --git a/libarchive/archive_write_set_format_pax.c b/libarchive/archive_write_set_format_pax.c
-index 6a301ac..4cfa8ff 100644
---- a/libarchive/archive_write_set_format_pax.c
-+++ b/libarchive/archive_write_set_format_pax.c
-@@ -660,7 +660,7 @@ archive_write_pax_header(struct archive_write *a,
- 			 * case getting WCS failed. On POSIX, this is a
- 			 * normal operation.
- 			 */
--			if (p != NULL && p[strlen(p) - 1] != '/') {
-+			if (p != NULL && p[0] != '\0' && p[strlen(p) - 1] != '/') {
- 				struct archive_string as;
- 
- 				archive_string_init(&as);
-diff --git a/libarchive/archive_write_set_format_v7tar.c b/libarchive/archive_write_set_format_v7tar.c
-index 62b1522..53c0db0 100644
---- a/libarchive/archive_write_set_format_v7tar.c
-+++ b/libarchive/archive_write_set_format_v7tar.c
-@@ -284,7 +284,7 @@ archive_write_v7tar_header(struct archive_write *a, struct archive_entry *entry)
- 		 * case getting WCS failed. On POSIX, this is a
- 		 * normal operation.
- 		 */
--		if (p != NULL && p[strlen(p) - 1] != '/') {
-+		if (p != NULL && p[0] != '\0' && p[strlen(p) - 1] != '/') {
- 			struct archive_string as;
- 
- 			archive_string_init(&as);
diff --git a/poky/meta/recipes-extended/libarchive/libarchive/non-recursive-extract-and-list.patch b/poky/meta/recipes-extended/libarchive/libarchive/non-recursive-extract-and-list.patch
deleted file mode 100644
index cd7be51..0000000
--- a/poky/meta/recipes-extended/libarchive/libarchive/non-recursive-extract-and-list.patch
+++ /dev/null
@@ -1,153 +0,0 @@
-From 47f7566f6829c2b14e21bbbba699916de4998c72 Mon Sep 17 00:00:00 2001
-From: Patrick Ohly <patrick.ohly@intel.com>
-Date: Mon, 24 Oct 2016 12:54:48 +0200
-Subject: [PATCH 1/1] non-recursive extract and list
-
-Sometimes it makes sense to extract or list a directory contained in
-an archive without also doing the same for the content of the
-directory, i.e. allowing -n (= --no-recursion) in combination with the
-x and t modes.
-
-bsdtar uses the match functionality in libarchive to track include
-matches. A new libarchive API call
-archive_match_include_directories_recursively() gets introduced to
-influence the matching behavior, with the default behavior as before.
-
-Non-recursive matching can be achieved by anchoring the path match at
-both start and end. Asking for a directory which itself isn't in the
-archive when in non-recursive mode is an error and handled by the
-existing mechanism for tracking unused inclusion entries.
-
-Upstream-Status: Submitted [https://github.com/libarchive/libarchive/pull/812]
-
-Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
-
----
- libarchive/archive.h       |  2 ++
- libarchive/archive_match.c | 30 +++++++++++++++++++++++++++++-
- tar/bsdtar.1               |  3 +--
- tar/bsdtar.c               | 12 ++++++++++--
- 4 files changed, 42 insertions(+), 5 deletions(-)
-
-diff --git a/libarchive/archive.h b/libarchive/archive.h
-index 32710201..59fb4aa6 100644
---- a/libarchive/archive.h
-+++ b/libarchive/archive.h
-@@ -1093,6 +1093,8 @@ __LA_DECL int	archive_match_excluded(struct archive *,
-  */
- __LA_DECL int	archive_match_path_excluded(struct archive *,
- 		    struct archive_entry *);
-+/* Control recursive inclusion of directory content when directory is included. Default on. */
-+__LA_DECL int	archive_match_include_directories_recursively(struct archive *, int _enabled);
- /* Add exclusion pathname pattern. */
- __LA_DECL int	archive_match_exclude_pattern(struct archive *, const char *);
- __LA_DECL int	archive_match_exclude_pattern_w(struct archive *,
-diff --git a/libarchive/archive_match.c b/libarchive/archive_match.c
-index be72066e..bb6a3407 100644
---- a/libarchive/archive_match.c
-+++ b/libarchive/archive_match.c
-@@ -93,6 +93,9 @@ struct archive_match {
- 	/* exclusion/inclusion set flag. */
- 	int			 setflag;
- 
-+	/* Recursively include directory content? */
-+	int			 recursive_include;
-+
- 	/*
- 	 * Matching filename patterns.
- 	 */
-@@ -223,6 +226,7 @@ archive_match_new(void)
- 		return (NULL);
- 	a->archive.magic = ARCHIVE_MATCH_MAGIC;
- 	a->archive.state = ARCHIVE_STATE_NEW;
-+	a->recursive_include = 1;
- 	match_list_init(&(a->inclusions));
- 	match_list_init(&(a->exclusions));
- 	__archive_rb_tree_init(&(a->exclusion_tree), &rb_ops_mbs);
-@@ -471,6 +475,28 @@ archive_match_path_excluded(struct archive *_a,
- }
- 
- /*
-+ * When recursive inclusion of directory content is enabled,
-+ * an inclusion pattern that matches a directory will also
-+ * include everything beneath that directory. Enabled by default.
-+ *
-+ * For compatibility with GNU tar, exclusion patterns always
-+ * match if a subset of the full patch matches (i.e., they are
-+ * are not rooted at the beginning of the path) and thus there
-+ * is no corresponding non-recursive exclusion mode.
-+ */
-+int
-+archive_match_include_directories_recursively(struct archive *_a, int _enabled)
-+{
-+	struct archive_match *a;
-+
-+	archive_check_magic(_a, ARCHIVE_MATCH_MAGIC,
-+	    ARCHIVE_STATE_NEW, "archive_match_include_directories_recursively");
-+	a = (struct archive_match *)_a;
-+	a->recursive_include = _enabled;
-+	return (ARCHIVE_OK);
-+}
-+
-+/*
-  * Utility functions to get statistic information for inclusion patterns.
-  */
- int
-@@ -781,7 +807,9 @@ static int
- match_path_inclusion(struct archive_match *a, struct match *m,
-     int mbs, const void *pn)
- {
--	int flag = PATHMATCH_NO_ANCHOR_END;
-+	int flag = a->recursive_include ?
-+		PATHMATCH_NO_ANCHOR_END : /* Prefix match is good enough. */
-+		0; /* Full match required. */
- 	int r;
- 
- 	if (mbs) {
-diff --git a/tar/bsdtar.1 b/tar/bsdtar.1
-index 132e1145..1dd2a847 100644
---- a/tar/bsdtar.1
-+++ b/tar/bsdtar.1
-@@ -386,8 +386,7 @@ and the default behavior in c, r, and u modes or if
- .Nm
- is run in x mode as root.
- .It Fl n , Fl Fl norecurse , Fl Fl no-recursion
--(c, r, u modes only)
--Do not recursively archive the contents of directories.
-+Do not recursively archive (c, r, u), extract (x) or list (t) the contents of directories.
- .It Fl Fl newer Ar date
- (c, r, u modes only)
- Only include files and directories newer than the specified date.
-diff --git a/tar/bsdtar.c b/tar/bsdtar.c
-index 11dedbf9..d014cc3e 100644
---- a/tar/bsdtar.c
-+++ b/tar/bsdtar.c
-@@ -794,8 +794,6 @@ main(int argc, char **argv)
- 			break;
- 		}
- 	}
--	if (bsdtar->flags & OPTFLAG_NO_SUBDIRS)
--		only_mode(bsdtar, "-n", "cru");
- 	if (bsdtar->flags & OPTFLAG_STDOUT)
- 		only_mode(bsdtar, "-O", "xt");
- 	if (bsdtar->flags & OPTFLAG_UNLINK_FIRST)
-@@ -845,6 +843,16 @@ main(int argc, char **argv)
- 		only_mode(bsdtar, buff, "cru");
- 	}
- 
-+	/*
-+	 * When creating an archive from a directory tree, the directory
-+	 * walking code will already avoid entering directories when
-+	 * recursive inclusion of directory content is disabled, therefore
-+	 * changing the matching behavior has no effect for creation modes.
-+	 * It is relevant for extraction or listing.
-+	 */
-+	archive_match_include_directories_recursively(bsdtar->matching,
-+						      !(bsdtar->flags & OPTFLAG_NO_SUBDIRS));
-+
- 	/* Filename "-" implies stdio. */
- 	if (strcmp(bsdtar->filename, "-") == 0)
- 		bsdtar->filename = NULL;
--- 
-2.11.0
-
diff --git a/poky/meta/recipes-extended/libarchive/libarchive_3.3.3.bb b/poky/meta/recipes-extended/libarchive/libarchive_3.4.0.bb
similarity index 78%
rename from poky/meta/recipes-extended/libarchive/libarchive_3.3.3.bb
rename to poky/meta/recipes-extended/libarchive/libarchive_3.4.0.bb
index af5ca65..c789cd4 100644
--- a/poky/meta/recipes-extended/libarchive/libarchive_3.3.3.bb
+++ b/poky/meta/recipes-extended/libarchive/libarchive_3.4.0.bb
@@ -3,7 +3,7 @@
 HOMEPAGE = "http://www.libarchive.org/"
 SECTION = "devel"
 LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=ed99aca006bc346974bb745a35336425"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fe01f5e02b1f0cc934d593a7b0ddceb6"
 
 DEPENDS = "e2fsprogs-native"
 
@@ -32,18 +32,10 @@
 EXTRA_OECONF += "--enable-largefile"
 
 SRC_URI = "http://libarchive.org/downloads/libarchive-${PV}.tar.gz \
-           file://non-recursive-extract-and-list.patch \
-           file://bug1066.patch \
-           file://CVE-2018-1000877.patch \
-           file://CVE-2018-1000878.patch \
-           file://CVE-2018-1000879.patch \
-           file://CVE-2018-1000880.patch \
-           file://CVE-2019-1000019.patch \
-           file://CVE-2019-1000020.patch \
 "
 
-SRC_URI[md5sum] = "4038e366ca5b659dae3efcc744e72120"
-SRC_URI[sha256sum] = "ba7eb1781c9fbbae178c4c6bad1c6eb08edab9a1496c64833d1715d022b30e2e"
+SRC_URI[md5sum] = "6046396255bd7cf6d0f6603a9bda39ac"
+SRC_URI[sha256sum] = "8643d50ed40c759f5412a3af4e353cffbce4fdf3b5cf321cb72cacf06b2d825e"
 
 inherit autotools update-alternatives pkgconfig