public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
* [OE-core][scarthgap 00/18] Patch review
@ 2024-08-04 17:09 Steve Sakoman
  0 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-08-04 17:09 UTC (permalink / raw)
  To: openembedded-core

Please review this set of changes for scarthgap and have comments back by
end of day Tuesday, August 6

Passed a-full on autobuilder:

https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/7208

The following changes since commit 1c9d3c22718bf49ae85c2d06e0ee60ebdc2fd0c1:

  openssh: systemd notification was implemented upstream (2024-07-28 19:27:16 -0700)

are available in the Git repository at:

  https://git.openembedded.org/openembedded-core-contrib stable/scarthgap-nut
  https://git.openembedded.org/openembedded-core-contrib/log/?h=stable/scarthgap-nut

Changqing Li (1):
  rt-tests: rt_bmark.py: fix TypeError

Christian Taedcke (1):
  iptables: fix memory corruption when parsing nft rules

Khem Raj (2):
  busybox: CVE-2023-42364 and CVE-2023-42365 fixes
  busybox: Add fix for CVE-2023-42366

Mark Hatle (5):
  package.py: Fix static debuginfo split
  package.py: Fix static library processing
  selftest-hardlink: Add additional test cases
  create-spdx-*: Support multilibs via SPDX_MULTILIB_SSTATE_ARCHS
  oeqa sdk cases: Skip SDK test cases when TCLIBC is newlib

Niko Mauno (1):
  libyaml: Fix warning regarding unpatched CVE

Patrick Wicki (1):
  gpgme: move gpgme-tool to own sub-package

Peter Marko (1):
  libstd-rs,rust-cross-canadian: set CVE_PRODUCT to rust

Ranjitsinh Rathod (1):
  rust: Add new varaible RUST_ENABLE_EXTRA_TOOLS

Richard Purdie (3):
  create-spdx-3.0/populate_sdk_base: Add SDK_CLASSES inherit mechanism
    to fix tarball SPDX manifests
  pseudo: Fix to work with glibc 2.40
  pseudo: Update to include open symlink handling bugfix

Wadim Egorov (1):
  watchdog: Set watchdog_module in default config

Yogita Urade (1):
  qemu: upgrade 8.2.2 -> 8.2.3

 .../selftest-hardlink/selftest-hardlink.bb    |  13 ++
 meta/classes-recipe/populate_sdk_base.bbclass |   7 +
 meta/classes-recipe/testimage.bbclass         |   2 -
 meta/classes/create-spdx-2.2.bbclass          |  14 +-
 meta/lib/oe/package.py                        |  57 ++++-
 meta/lib/oeqa/sdk/cases/assimp.py             |   4 +
 meta/lib/oeqa/sdk/cases/buildcpio.py          |   5 +
 meta/lib/oeqa/sdk/cases/buildepoxy.py         |   4 +
 meta/lib/oeqa/sdk/cases/buildgalculator.py    |   4 +
 meta/lib/oeqa/sdk/cases/buildlzip.py          |   5 +
 meta/lib/oeqa/sdk/cases/gcc.py                |   4 +
 meta/lib/oeqa/selftest/cases/package.py       |  26 +++
 ...01-awk-fix-precedence-of-relative-to.patch | 197 ++++++++++++++++++
 ...1-awk.c-fix-CVE-2023-42366-bug-15874.patch |  37 ++++
 ...x-ternary-operator-and-precedence-of.patch |  96 +++++++++
 meta/recipes-core/busybox/busybox_1.36.1.bb   |   3 +
 meta/recipes-core/meta/buildtools-tarball.bb  |   3 +
 .../pseudo/files/glibc238.patch               |  10 +-
 meta/recipes-devtools/pseudo/pseudo_git.bb    |   2 +-
 ...u-native_8.2.2.bb => qemu-native_8.2.3.bb} |   0
 ...e_8.2.2.bb => qemu-system-native_8.2.3.bb} |   0
 meta/recipes-devtools/qemu/qemu.inc           |   8 +-
 ...4-Handle-the-vsyscall-page-in-open_s.patch |  56 -----
 .../qemu/qemu/CVE-2024-3446-01.patch          |  73 -------
 .../qemu/qemu/CVE-2024-3446-02.patch          |  48 -----
 .../qemu/qemu/CVE-2024-3446-03.patch          |  47 -----
 .../qemu/qemu/CVE-2024-3446-04.patch          |  52 -----
 .../qemu/qemu/CVE-2024-3567.patch             |  48 -----
 .../qemu/{qemu_8.2.2.bb => qemu_8.2.3.bb}     |   0
 .../recipes-devtools/rust/libstd-rs_1.75.0.bb |   2 +
 .../rust/rust-cross-canadian.inc              |   1 +
 meta/recipes-devtools/rust/rust_1.75.0.bb     |   6 +-
 ...se-Add-missing-braces-around-ternary.patch |  37 ++++
 .../iptables/iptables_1.8.10.bb               |   1 +
 .../watchdog/watchdog-config/watchdog.default |   1 +
 meta/recipes-rt/rt-tests/files/rt_bmark.py    |   2 +-
 meta/recipes-support/gpgme/gpgme_1.23.2.bb    |  16 +-
 meta/recipes-support/libyaml/libyaml_0.2.5.bb |   2 +
 38 files changed, 537 insertions(+), 356 deletions(-)
 create mode 100644 meta/recipes-core/busybox/busybox/0001-awk-fix-precedence-of-relative-to.patch
 create mode 100644 meta/recipes-core/busybox/busybox/0001-awk.c-fix-CVE-2023-42366-bug-15874.patch
 create mode 100644 meta/recipes-core/busybox/busybox/0002-awk-fix-ternary-operator-and-precedence-of.patch
 rename meta/recipes-devtools/qemu/{qemu-native_8.2.2.bb => qemu-native_8.2.3.bb} (100%)
 rename meta/recipes-devtools/qemu/{qemu-system-native_8.2.2.bb => qemu-system-native_8.2.3.bb} (100%)
 delete mode 100644 meta/recipes-devtools/qemu/qemu/0001-linux-user-x86_64-Handle-the-vsyscall-page-in-open_s.patch
 delete mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2024-3446-01.patch
 delete mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2024-3446-02.patch
 delete mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2024-3446-03.patch
 delete mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2024-3446-04.patch
 delete mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2024-3567.patch
 rename meta/recipes-devtools/qemu/{qemu_8.2.2.bb => qemu_8.2.3.bb} (100%)
 create mode 100644 meta/recipes-extended/iptables/iptables/0005-nft-ruleparse-Add-missing-braces-around-ternary.patch

-- 
2.34.1



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

* [OE-core][scarthgap 00/18] Patch review
@ 2024-08-21 12:50 Steve Sakoman
  0 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-08-21 12:50 UTC (permalink / raw)
  To: openembedded-core

Please review this set of changes for scarthgap and have comments back by
end of day Friday, August 23

Passed a-full on autobuilder:

https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/7256

The following changes since commit bbb8db8fec7fbee56fcdbc665a758b911d73a767:

  u-boot.inc: Refactor do_* steps into functions that can be overridden (2024-08-15 06:02:17 -0700)

are available in the Git repository at:

  https://git.openembedded.org/openembedded-core-contrib stable/scarthgap-nut
  https://git.openembedded.org/openembedded-core-contrib/log/?h=stable/scarthgap-nut

Alexis Lothoré (1):
  oeqa/utils/postactions: transfer whole archive over ssh instead of
    doing individual copies

Ashish Sharma (1):
  ruby: Backport fix for CVE-2024-27282

Daniel Semkowicz (1):
  os-release: Fix VERSION_CODENAME in case it is empty

Gauthier HADERER (1):
  populate_sdk_ext.bclass: make sure OECORE_NATIVE_SYSROOT is exported.

Jon Mason (2):
  oeqa/runtime/ssh: add retry logic and sleeps to allow for slower
    systems
  oeqa/runtime/ssh: check for all errors at the end

Jose Quaresma (1):
  go: upgrade 1.22.5 -> 1.22.6

Kai Kang (1):
  glibc: fix fortran header file conflict for arm

Martin Jansa (1):
  libgfortran.inc: fix nativesdk-libgfortran dependencies

Mingli Yu (1):
  llvm: Enable libllvm for native build

Richard Purdie (2):
  oeqa/runtime/ssh: In case of failure, show exit code and handle -15
    (SIGTERM)
  oeqa/selftest/reproducibile: Explicitly list virtual targets

Ross Burton (2):
  gstreamer1.0: disable flaky baseparser tests
  librsvg: don't try to run target code at build time

Siddharth Doshi (1):
  Tiff: Security fix for CVE-2024-7006

Trevor Gamblin (1):
  maintainers.inc: add self for unassigned python recipes

Ulrich Ölmann (1):
  initramfs-framework: fix typos

Weisser, Pascal.ext (1):
  qemuboot: Trigger write_qemuboot_conf task on changes of kernel image
    realpath

 meta/classes-recipe/populate_sdk_ext.bbclass  |  2 +-
 meta/classes-recipe/qemuboot.bbclass          |  3 +-
 meta/conf/distro/include/maintainers.inc      |  8 +--
 meta/lib/oeqa/runtime/cases/ssh.py            | 31 ++++++---
 meta/lib/oeqa/selftest/cases/reproducible.py  |  3 +-
 meta/lib/oeqa/utils/postactions.py            | 19 +++---
 meta/recipes-core/glibc/glibc-package.inc     |  8 ++-
 .../initrdscripts/initramfs-framework/init    |  2 +-
 .../initrdscripts/initramfs-framework/rootfs  |  2 +-
 meta/recipes-core/os-release/os-release.bb    |  2 +-
 meta/recipes-devtools/gcc/libgfortran.inc     |  3 +-
 .../go/{go-1.22.5.inc => go-1.22.6.inc}       |  2 +-
 ...e_1.22.5.bb => go-binary-native_1.22.6.bb} |  6 +-
 ..._1.22.5.bb => go-cross-canadian_1.22.6.bb} |  0
 ...{go-cross_1.22.5.bb => go-cross_1.22.6.bb} |  0
 ...osssdk_1.22.5.bb => go-crosssdk_1.22.6.bb} |  0
 ...runtime_1.22.5.bb => go-runtime_1.22.6.bb} |  0
 .../go/{go_1.22.5.bb => go_1.22.6.bb}         |  0
 meta/recipes-devtools/llvm/llvm_18.1.6.bb     |  1 -
 .../ruby/ruby/CVE-2024-27282.patch            | 28 ++++++++
 meta/recipes-devtools/ruby/ruby_3.2.2.bb      |  1 +
 .../librsvg/disable-rsvg-loader-test.patch    | 40 ++++++++++++
 meta/recipes-gnome/librsvg/librsvg_2.57.1.bb  |  1 +
 .../gstreamer/gstreamer1.0/run-ptest          |  7 +-
 .../libtiff/tiff/CVE-2024-7006.patch          | 65 +++++++++++++++++++
 meta/recipes-multimedia/libtiff/tiff_4.6.0.bb |  1 +
 26 files changed, 198 insertions(+), 37 deletions(-)
 rename meta/recipes-devtools/go/{go-1.22.5.inc => go-1.22.6.inc} (89%)
 rename meta/recipes-devtools/go/{go-binary-native_1.22.5.bb => go-binary-native_1.22.6.bb} (78%)
 rename meta/recipes-devtools/go/{go-cross-canadian_1.22.5.bb => go-cross-canadian_1.22.6.bb} (100%)
 rename meta/recipes-devtools/go/{go-cross_1.22.5.bb => go-cross_1.22.6.bb} (100%)
 rename meta/recipes-devtools/go/{go-crosssdk_1.22.5.bb => go-crosssdk_1.22.6.bb} (100%)
 rename meta/recipes-devtools/go/{go-runtime_1.22.5.bb => go-runtime_1.22.6.bb} (100%)
 rename meta/recipes-devtools/go/{go_1.22.5.bb => go_1.22.6.bb} (100%)
 create mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2024-27282.patch
 create mode 100644 meta/recipes-gnome/librsvg/librsvg/disable-rsvg-loader-test.patch
 create mode 100644 meta/recipes-multimedia/libtiff/tiff/CVE-2024-7006.patch

-- 
2.34.1



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

* [OE-core][scarthgap 00/18] Patch review
@ 2024-10-15 18:50 Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 01/18] rust: ignore CVE-2024-43402 Steve Sakoman
                   ` (17 more replies)
  0 siblings, 18 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

Please review this set of changes for scarthgap and have comments back by
end of day Thursday, October 17

Passed a-full on autobuilder:

https://valkyrie.yoctoproject.org/#/builders/29/builds/277

The following changes since commit 5ea3ba00532265165e0d30f6d2eed568f5b5867f:

  meta-world-pkgdata: Inherit nopackages (2024-10-06 06:07:52 -0700)

are available in the Git repository at:

  https://git.openembedded.org/openembedded-core-contrib stable/scarthgap-nut
  https://git.openembedded.org/openembedded-core-contrib/log/?h=stable/scarthgap-nut

Alexander Kanavin (1):
  sysvinit: take release tarballs from github

Claus Stovgaard (1):
  lib/oe/package-manager: skip processing installed-pkgs with empty
    globs

Hitendra Prajapati (2):
  cups: Backport fix for CVE-2024-47175
  libarchive: fix CVE-2024-48957 & CVE-2024-48958

Jaeyoon Jung (1):
  makedevs: Fix matching uid/gid

Jörg Sommer (2):
  ptest-runner: Update 2.4.4 -> 2.4.5
  runqemu: Fix detection of -serial parameter

Khem Raj (1):
  libpcre2: Update base uri PhilipHazel -> PCRE2Project

Louis Rannou (1):
  image_qa: fix error handling

Macpaul Lin (1):
  linux-firmware: upgrade 20240312 -> 20240909

Paul Barker (1):
  meta-ide-support: Mark recipe as MACHINE-specific

Paul Gerber (1):
  uboot-sign: fix counters in do_uboot_assemble_fitimage

Peter Marko (1):
  rust: ignore CVE-2024-43402

Purushottam Choudhary (1):
  virglrenderer: Add patch to fix -int-conversion build issue

Richard Purdie (2):
  license: Fix directory layout issues
  libsdl2: Fix non-deterministic configure option for libsamplerate

Teresa Remmet (1):
  recipes-bsp: usbutils: Fix usb-devices command using busybox

Yogita Urade (1):
  ruby: upgrade 3.2.2 -> 3.3.5

 meta/classes-global/license.bbclass           |  10 +-
 meta/classes-recipe/image.bbclass             |  11 +-
 meta/classes-recipe/uboot-sign.bbclass        |   3 +-
 meta/lib/oe/package_manager/__init__.py       |  76 +++---
 meta/lib/oe/utils.py                          |   2 +-
 meta/lib/oeqa/selftest/cases/meta_ide.py      |   4 +-
 ...devices-Fix-usb-devices-with-busybox.patch |  37 +++
 meta/recipes-bsp/usbutils/usbutils_017.bb     |   1 +
 meta/recipes-core/meta/meta-ide-support.bb    |   1 +
 meta/recipes-core/sysvinit/sysvinit_3.04.bb   |   5 +-
 .../makedevs/makedevs/makedevs.c              |  12 +-
 ...Alignof-to-define-ALIGN_OF-when-poss.patch |  52 ----
 ...e.in-do-not-write-host-cross-cc-item.patch |  32 ---
 ...Obey-LDFLAGS-for-the-link-of-libruby.patch |  25 --
 ...-Makefile.in-filter-out-f-prefix-map.patch |  42 ---
 ...eproducible-change-fixing-784225-too.patch |  26 +-
 .../0006-Make-gemspecs-reproducible.patch     |  18 +-
 .../ruby/ruby/CVE-2023-36617_1.patch          |  56 ----
 .../ruby/ruby/CVE-2023-36617_2.patch          |  52 ----
 .../ruby/ruby/CVE-2024-27281.patch            |  97 -------
 .../ruby/ruby/CVE-2024-27282.patch            |  28 --
 .../ruby/ruby/remove_has_include_macros.patch |  35 ---
 .../ruby/{ruby_3.2.2.bb => ruby_3.3.5.bb}     |  13 +-
 meta/recipes-devtools/rust/rust-source.inc    |   1 +
 meta/recipes-extended/cups/cups.inc           |   5 +
 .../cups/cups/CVE-2024-47175-1.patch          |  73 +++++
 .../cups/cups/CVE-2024-47175-2.patch          | 151 +++++++++++
 .../cups/cups/CVE-2024-47175-3.patch          | 119 +++++++++
 .../cups/cups/CVE-2024-47175-4.patch          | 249 ++++++++++++++++++
 .../cups/cups/CVE-2024-47175-5.patch          |  40 +++
 .../libarchive/CVE-2024-48957.patch           |  36 +++
 .../libarchive/CVE-2024-48958.patch           |  40 +++
 .../libarchive/libarchive_3.7.4.bb            |   5 +-
 .../libsdl2/libsdl2_2.30.1.bb                 |   1 +
 ...nversion-fatal-build-error-with-GCC-.patch |  41 +++
 .../virglrenderer/virglrenderer_1.0.1.bb      |   1 +
 ...20240312.bb => linux-firmware_20240909.bb} |   8 +-
 .../recipes-support/libpcre/libpcre2_10.43.bb |   2 +-
 ...-runner_2.4.4.bb => ptest-runner_2.4.5.bb} |   2 +-
 scripts/runqemu                               |   4 +-
 40 files changed, 898 insertions(+), 518 deletions(-)
 create mode 100755 meta/recipes-bsp/usbutils/usbutils/0001-usb-devices-Fix-usb-devices-with-busybox.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/0001-fiddle-Use-C11-_Alignof-to-define-ALIGN_OF-when-poss.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/0001-template-Makefile.in-do-not-write-host-cross-cc-item.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/0002-Obey-LDFLAGS-for-the-link-of-libruby.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/0002-template-Makefile.in-filter-out-f-prefix-map.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2023-36617_1.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2023-36617_2.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2024-27281.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2024-27282.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/remove_has_include_macros.patch
 rename meta/recipes-devtools/ruby/{ruby_3.2.2.bb => ruby_3.3.5.bb} (88%)
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2024-47175-1.patch
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2024-47175-2.patch
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2024-47175-3.patch
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2024-47175-4.patch
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2024-47175-5.patch
 create mode 100644 meta/recipes-extended/libarchive/libarchive/CVE-2024-48957.patch
 create mode 100644 meta/recipes-extended/libarchive/libarchive/CVE-2024-48958.patch
 create mode 100644 meta/recipes-graphics/virglrenderer/virglrenderer/0001-vrend-Fix-int-conversion-fatal-build-error-with-GCC-.patch
 rename meta/recipes-kernel/linux-firmware/{linux-firmware_20240312.bb => linux-firmware_20240909.bb} (99%)
 rename meta/recipes-support/ptest-runner/{ptest-runner_2.4.4.bb => ptest-runner_2.4.5.bb} (95%)

-- 
2.34.1



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

* [OE-core][scarthgap 01/18] rust: ignore CVE-2024-43402
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 02/18] cups: Backport fix for CVE-2024-47175 Steve Sakoman
                   ` (16 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Peter Marko <peter.marko@siemens.com>

This CVE was created because fix for CVE-2024-24576 was incomplete.
Ignore the new CVE in the same way as the old one.

See https://nvd.nist.gov/vuln/detail/CVE-2024-43402

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 meta/recipes-devtools/rust/rust-source.inc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-devtools/rust/rust-source.inc b/meta/recipes-devtools/rust/rust-source.inc
index b14221b6cb..8a8e48b8ca 100644
--- a/meta/recipes-devtools/rust/rust-source.inc
+++ b/meta/recipes-devtools/rust/rust-source.inc
@@ -22,3 +22,4 @@ UPSTREAM_CHECK_URI = "https://forge.rust-lang.org/infra/other-installation-metho
 UPSTREAM_CHECK_REGEX = "rustc-(?P<pver>\d+(\.\d+)+)-src"
 
 CVE_STATUS[CVE-2024-24576] = "not-applicable-platform: Issue only applies on Windows"
+CVE_STATUS[CVE-2024-43402] = "not-applicable-platform: Issue only applies on Windows"
-- 
2.34.1



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

* [OE-core][scarthgap 02/18] cups: Backport fix for CVE-2024-47175
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 01/18] rust: ignore CVE-2024-43402 Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 03/18] libarchive: fix CVE-2024-48957 & CVE-2024-48958 Steve Sakoman
                   ` (15 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Hitendra Prajapati <hprajapati@mvista.com>

Upstream-Status: Backport from
https://github.com/OpenPrinting/cups/commit/9939a70b750edd9d05270060cc5cf62ca98cfbe5
&
https://github.com/OpenPrinting/cups/commit/04bb2af4521b56c1699a2c2431c56c05a7102e69
&
https://github.com/OpenPrinting/cups/commit/e0630cd18f76340d302000f2bf6516e99602b844
&
https://github.com/OpenPrinting/cups/commit/1e6ca5913eceee906038bc04cc7ccfbe2923bdfd
&
https://github.com/OpenPrinting/cups/commit/2abe1ba8a66864aa82cd9836b37e57103b8e1a3b

Reference: https://security-tracker.debian.org/tracker/CVE-2024-47175

Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 meta/recipes-extended/cups/cups.inc           |   5 +
 .../cups/cups/CVE-2024-47175-1.patch          |  73 +++++
 .../cups/cups/CVE-2024-47175-2.patch          | 151 +++++++++++
 .../cups/cups/CVE-2024-47175-3.patch          | 119 +++++++++
 .../cups/cups/CVE-2024-47175-4.patch          | 249 ++++++++++++++++++
 .../cups/cups/CVE-2024-47175-5.patch          |  40 +++
 6 files changed, 637 insertions(+)
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2024-47175-1.patch
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2024-47175-2.patch
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2024-47175-3.patch
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2024-47175-4.patch
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2024-47175-5.patch

diff --git a/meta/recipes-extended/cups/cups.inc b/meta/recipes-extended/cups/cups.inc
index b70ba3ae58..5590eb0fa0 100644
--- a/meta/recipes-extended/cups/cups.inc
+++ b/meta/recipes-extended/cups/cups.inc
@@ -15,6 +15,11 @@ SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/cups-${PV}-source.tar.gz \
            file://0004-cups-fix-multilib-install-file-conflicts.patch \
            file://volatiles.99_cups \
            file://cups-volatiles.conf \
+           file://CVE-2024-47175-1.patch \
+           file://CVE-2024-47175-2.patch \
+           file://CVE-2024-47175-3.patch \
+           file://CVE-2024-47175-4.patch \
+           file://CVE-2024-47175-5.patch \
            "
 
 GITHUB_BASE_URI = "https://github.com/OpenPrinting/cups/releases"
diff --git a/meta/recipes-extended/cups/cups/CVE-2024-47175-1.patch b/meta/recipes-extended/cups/cups/CVE-2024-47175-1.patch
new file mode 100644
index 0000000000..8ec720ea0d
--- /dev/null
+++ b/meta/recipes-extended/cups/cups/CVE-2024-47175-1.patch
@@ -0,0 +1,73 @@
+From 9939a70b750edd9d05270060cc5cf62ca98cfbe5 Mon Sep 17 00:00:00 2001
+From: Michael R Sweet <msweet@msweet.org>
+Date: Mon, 9 Sep 2024 10:03:10 -0400
+Subject: [PATCH] Mirror IPP Everywhere printer changes from master.
+
+Upstream-Status: Backport [https://github.com/OpenPrinting/cups/commit/9939a70b750edd9d05270060cc5cf62ca98cfbe5]
+CVE: CVE-2024-47175
+Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
+---
+ cups/ppd-cache.c | 10 +++++-----
+ scheduler/ipp.c  |  7 +++++++
+ 2 files changed, 12 insertions(+), 5 deletions(-)
+
+diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c
+index e750fcc..cd2d6cb 100644
+--- a/cups/ppd-cache.c
++++ b/cups/ppd-cache.c
+@@ -3317,10 +3317,10 @@ _ppdCreateFromIPP2(
+   }
+   cupsFilePuts(fp, "\"\n");
+ 
+-  if ((attr = ippFindAttribute(supported, "printer-more-info", IPP_TAG_URI)) != NULL)
++  if ((attr = ippFindAttribute(supported, "printer-more-info", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
+     cupsFilePrintf(fp, "*APSupplies: \"%s\"\n", ippGetString(attr, 0, NULL));
+ 
+-  if ((attr = ippFindAttribute(supported, "printer-charge-info-uri", IPP_TAG_URI)) != NULL)
++  if ((attr = ippFindAttribute(supported, "printer-charge-info-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
+     cupsFilePrintf(fp, "*cupsChargeInfoURI: \"%s\"\n", ippGetString(attr, 0, NULL));
+ 
+   if ((attr = ippFindAttribute(supported, "printer-strings-uri", IPP_TAG_URI)) != NULL)
+@@ -3389,10 +3389,10 @@ _ppdCreateFromIPP2(
+   if (ippGetBoolean(ippFindAttribute(supported, "job-accounting-user-id-supported", IPP_TAG_BOOLEAN), 0))
+     cupsFilePuts(fp, "*cupsJobAccountingUserId: True\n");
+ 
+-  if ((attr = ippFindAttribute(supported, "printer-privacy-policy-uri", IPP_TAG_URI)) != NULL)
++  if ((attr = ippFindAttribute(supported, "printer-privacy-policy-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
+     cupsFilePrintf(fp, "*cupsPrivacyURI: \"%s\"\n", ippGetString(attr, 0, NULL));
+ 
+-  if ((attr = ippFindAttribute(supported, "printer-mandatory-job-attributes", IPP_TAG_KEYWORD)) != NULL)
++  if ((attr = ippFindAttribute(supported, "printer-mandatory-job-attributes", IPP_TAG_KEYWORD)) != NULL && ippValidateAttribute(attr))
+   {
+     char	prefix = '\"';		// Prefix for string
+ 
+@@ -3410,7 +3410,7 @@ _ppdCreateFromIPP2(
+     cupsFilePuts(fp, "\"\n");
+   }
+ 
+-  if ((attr = ippFindAttribute(supported, "printer-requested-job-attributes", IPP_TAG_KEYWORD)) != NULL)
++  if ((attr = ippFindAttribute(supported, "printer-requested-job-attributes", IPP_TAG_KEYWORD)) != NULL && ippValidateAttribute(attr))
+   {
+     char	prefix = '\"';		// Prefix for string
+ 
+diff --git a/scheduler/ipp.c b/scheduler/ipp.c
+index 37623c5..836e41d 100644
+--- a/scheduler/ipp.c
++++ b/scheduler/ipp.c
+@@ -5417,6 +5417,13 @@ create_local_bg_thread(
+     }
+   }
+ 
++  // Validate response from printer...
++  if (!ippValidateAttributes(response))
++  {
++    cupsdLogMessage(CUPSD_LOG_ERROR, "%s: Printer returned invalid data: %s", printer->name, cupsLastErrorString());
++    return (NULL);
++  }
++
+   // TODO: Grab printer icon file...
+   httpClose(http);
+ 
+-- 
+2.25.1
+
diff --git a/meta/recipes-extended/cups/cups/CVE-2024-47175-2.patch b/meta/recipes-extended/cups/cups/CVE-2024-47175-2.patch
new file mode 100644
index 0000000000..11e8209626
--- /dev/null
+++ b/meta/recipes-extended/cups/cups/CVE-2024-47175-2.patch
@@ -0,0 +1,151 @@
+From 04bb2af4521b56c1699a2c2431c56c05a7102e69 Mon Sep 17 00:00:00 2001
+From: Michael R Sweet <msweet@msweet.org>
+Date: Mon, 9 Sep 2024 14:05:42 -0400
+Subject: [PATCH] Refactor make-and-model code.
+
+Upstream-Status: Backport [https://github.com/OpenPrinting/cups/commit/04bb2af4521b56c1699a2c2431c56c05a7102e69]
+CVE: CVE-2024-47175
+Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
+---
+ cups/ppd-cache.c | 103 +++++++++++++++++++++++++++++++++++++++--------
+ 1 file changed, 87 insertions(+), 16 deletions(-)
+
+diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c
+index cd2d6cb..a4d7403 100644
+--- a/cups/ppd-cache.c
++++ b/cups/ppd-cache.c
+@@ -3197,9 +3197,10 @@ _ppdCreateFromIPP2(
+   ipp_t			*media_col,	/* Media collection */
+ 			*media_size;	/* Media size collection */
+   char			make[256],	/* Make and model */
+-			*model,		/* Model name */
++			*mptr,		/* Pointer into make and model */
+ 			ppdname[PPD_MAX_NAME];
+ 		    			/* PPD keyword */
++  const char		*model;		/* Model name */
+   int			i, j,		/* Looping vars */
+ 			count,		/* Number of values */
+ 			bottom,		/* Largest bottom margin */
+@@ -3260,34 +3261,104 @@ _ppdCreateFromIPP2(
+   }
+ 
+  /*
+-  * Standard stuff for PPD file...
++  * Get a sanitized make and model...
+   */
+ 
+-  cupsFilePuts(fp, "*PPD-Adobe: \"4.3\"\n");
+-  cupsFilePuts(fp, "*FormatVersion: \"4.3\"\n");
+-  cupsFilePrintf(fp, "*FileVersion: \"%d.%d\"\n", CUPS_VERSION_MAJOR, CUPS_VERSION_MINOR);
+-  cupsFilePuts(fp, "*LanguageVersion: English\n");
+-  cupsFilePuts(fp, "*LanguageEncoding: ISOLatin1\n");
+-  cupsFilePuts(fp, "*PSVersion: \"(3010.000) 0\"\n");
+-  cupsFilePuts(fp, "*LanguageLevel: \"3\"\n");
+-  cupsFilePuts(fp, "*FileSystem: False\n");
+-  cupsFilePuts(fp, "*PCFileName: \"ippeve.ppd\"\n");
++  if ((attr = ippFindAttribute(supported, "printer-make-and-model", IPP_TAG_TEXT)) != NULL && ippValidateAttribute(attr))
++  {
++   /*
++    * Sanitize the model name to only contain PPD-safe characters.
++    */
+ 
+-  if ((attr = ippFindAttribute(supported, "printer-make-and-model", IPP_TAG_TEXT)) != NULL)
+     strlcpy(make, ippGetString(attr, 0, NULL), sizeof(make));
++
++    for (mptr = make; *mptr; mptr ++)
++    {
++      if (*mptr < ' ' || *mptr >= 127 || *mptr == '\"')
++      {
++       /*
++	* Truncate the make and model on the first bad character...
++	*/
++
++	*mptr = '\0';
++	break;
++      }
++    }
++
++    while (mptr > make)
++    {
++     /*
++      * Strip trailing whitespace...
++      */
++
++      mptr --;
++      if (*mptr == ' ')
++	*mptr = '\0';
++    }
++
++    if (!make[0])
++    {
++     /*
++      * Use a default make and model if nothing remains...
++      */
++
++      strlcpy(make, "Unknown", sizeof(make));
++    }
++  }
+   else
+-    strlcpy(make, "Unknown Printer", sizeof(make));
++  {
++   /*
++    * Use a default make and model...
++    */
++
++    strlcpy(make, "Unknown", sizeof(make));
++  }
+ 
+   if (!_cups_strncasecmp(make, "Hewlett Packard ", 16) || !_cups_strncasecmp(make, "Hewlett-Packard ", 16))
+   {
++   /*
++    * Normalize HP printer make and model...
++    */
++
+     model = make + 16;
+     strlcpy(make, "HP", sizeof(make));
++
++    if (!_cups_strncasecmp(model, "HP ", 3))
++      model += 3;
++  }
++  else if ((mptr = strchr(make, ' ')) != NULL)
++  {
++   /*
++    * Separate "MAKE MODEL"...
++    */
++
++    while (*mptr && *mptr == ' ')
++      *mptr++ = '\0';
++
++    model = mptr;
+   }
+-  else if ((model = strchr(make, ' ')) != NULL)
+-    *model++ = '\0';
+   else
+-    model = make;
++  {
++   /*
++    * No separate model name...
++    */
+ 
++    model = "Printer";
++  }
++
++ /*
++  * Standard stuff for PPD file...
++  */
++
++  cupsFilePuts(fp, "*PPD-Adobe: \"4.3\"\n");
++  cupsFilePuts(fp, "*FormatVersion: \"4.3\"\n");
++  cupsFilePrintf(fp, "*FileVersion: \"%d.%d\"\n", CUPS_VERSION_MAJOR, CUPS_VERSION_MINOR);
++  cupsFilePuts(fp, "*LanguageVersion: English\n");
++  cupsFilePuts(fp, "*LanguageEncoding: ISOLatin1\n");
++  cupsFilePuts(fp, "*PSVersion: \"(3010.000) 0\"\n");
++  cupsFilePuts(fp, "*LanguageLevel: \"3\"\n");
++  cupsFilePuts(fp, "*FileSystem: False\n");
++  cupsFilePuts(fp, "*PCFileName: \"ippeve.ppd\"\n");
+   cupsFilePrintf(fp, "*Manufacturer: \"%s\"\n", make);
+   cupsFilePrintf(fp, "*ModelName: \"%s\"\n", model);
+   cupsFilePrintf(fp, "*Product: \"(%s)\"\n", model);
+-- 
+2.25.1
+
diff --git a/meta/recipes-extended/cups/cups/CVE-2024-47175-3.patch b/meta/recipes-extended/cups/cups/CVE-2024-47175-3.patch
new file mode 100644
index 0000000000..e7d012fb8a
--- /dev/null
+++ b/meta/recipes-extended/cups/cups/CVE-2024-47175-3.patch
@@ -0,0 +1,119 @@
+From e0630cd18f76340d302000f2bf6516e99602b844 Mon Sep 17 00:00:00 2001
+From: Michael R Sweet <msweet@msweet.org>
+Date: Mon, 9 Sep 2024 15:59:57 -0400
+Subject: [PATCH] PPDize preset and template names.
+
+Upstream-Status: Backport [https://github.com/OpenPrinting/cups/commit/e0630cd18f76340d302000f2bf6516e99602b844]
+CVE: CVE-2024-47175
+Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
+---
+ cups/ppd-cache.c | 33 ++++++++++++++++++++++++---------
+ 1 file changed, 24 insertions(+), 9 deletions(-)
+
+diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c
+index a4d7403..53c22be 100644
+--- a/cups/ppd-cache.c
++++ b/cups/ppd-cache.c
+@@ -4976,12 +4976,14 @@ _ppdCreateFromIPP2(
+ 
+       cupsArrayAdd(templates, (void *)keyword);
+ 
++      pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
++
+       snprintf(msgid, sizeof(msgid), "finishing-template.%s", keyword);
+       if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
+ 	if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
+ 	  msgstr = keyword;
+ 
+-      cupsFilePrintf(fp, "*cupsFinishingTemplate %s: \"\n", keyword);
++      cupsFilePrintf(fp, "*cupsFinishingTemplate %s: \"\n", ppdname);
+       for (finishing_attr = ippFirstAttribute(finishing_col); finishing_attr; finishing_attr = ippNextAttribute(finishing_col))
+       {
+         if (ippGetValueTag(finishing_attr) == IPP_TAG_BEGIN_COLLECTION)
+@@ -4994,7 +4996,7 @@ _ppdCreateFromIPP2(
+ 	}
+       }
+       cupsFilePuts(fp, "\"\n");
+-      cupsFilePrintf(fp, "*%s.cupsFinishingTemplate %s/%s: \"\"\n", lang->language, keyword, msgstr);
++      cupsFilePrintf(fp, "*%s.cupsFinishingTemplate %s/%s: \"\"\n", lang->language, ppdname, msgstr);
+       cupsFilePuts(fp, "*End\n");
+     }
+ 
+@@ -5040,7 +5042,8 @@ _ppdCreateFromIPP2(
+       if (!preset || !preset_name)
+         continue;
+ 
+-      cupsFilePrintf(fp, "*APPrinterPreset %s: \"\n", preset_name);
++      pwg_ppdize_name(preset_name, ppdname, sizeof(ppdname));
++      cupsFilePrintf(fp, "*APPrinterPreset %s: \"\n", ppdname);
+       for (member = ippFirstAttribute(preset); member; member = ippNextAttribute(preset))
+       {
+         member_name = ippGetName(member);
+@@ -5081,7 +5084,10 @@ _ppdCreateFromIPP2(
+             fin_col = ippGetCollection(member, i);
+ 
+             if ((keyword = ippGetString(ippFindAttribute(fin_col, "finishing-template", IPP_TAG_ZERO), 0, NULL)) != NULL)
+-              cupsFilePrintf(fp, "*cupsFinishingTemplate %s\n", keyword);
++            {
++              pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
++              cupsFilePrintf(fp, "*cupsFinishingTemplate %s\n", ppdname);
++            }
+           }
+         }
+         else if (!strcmp(member_name, "media"))
+@@ -5108,13 +5114,13 @@ _ppdCreateFromIPP2(
+           if ((keyword = ippGetString(ippFindAttribute(media_col, "media-source", IPP_TAG_ZERO), 0, NULL)) != NULL)
+           {
+             pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
+-            cupsFilePrintf(fp, "*InputSlot %s\n", keyword);
++            cupsFilePrintf(fp, "*InputSlot %s\n", ppdname);
+ 	  }
+ 
+           if ((keyword = ippGetString(ippFindAttribute(media_col, "media-type", IPP_TAG_ZERO), 0, NULL)) != NULL)
+           {
+             pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
+-            cupsFilePrintf(fp, "*MediaType %s\n", keyword);
++            cupsFilePrintf(fp, "*MediaType %s\n", ppdname);
+ 	  }
+         }
+         else if (!strcmp(member_name, "print-quality"))
+@@ -5160,7 +5166,10 @@ _ppdCreateFromIPP2(
+       cupsFilePuts(fp, "\"\n*End\n");
+ 
+       if ((localized_name = _cupsMessageLookup(strings, preset_name)) != preset_name)
+-        cupsFilePrintf(fp, "*%s.APPrinterPreset %s/%s: \"\"\n", lang->language, preset_name, localized_name);
++      {
++        pwg_ppdize_name(preset_name, ppdname, sizeof(ppdname));
++        cupsFilePrintf(fp, "*%s.APPrinterPreset %s/%s: \"\"\n", lang->language, ppdname, localized_name);
++      }
+     }
+   }
+ 
+@@ -5544,7 +5553,7 @@ pwg_ppdize_name(const char *ipp,	/* I - IPP keyword */
+ 	*end;				/* End of name buffer */
+ 
+ 
+-  if (!ipp)
++  if (!ipp || !_cups_isalnum(*ipp))
+   {
+     *name = '\0';
+     return;
+@@ -5559,8 +5568,14 @@ pwg_ppdize_name(const char *ipp,	/* I - IPP keyword */
+       ipp ++;
+       *ptr++ = (char)toupper(*ipp++ & 255);
+     }
+-    else
++    else if (*ipp == '_' || *ipp == '.' || *ipp == '-' || _cups_isalnum(*ipp))
++    {
+       *ptr++ = *ipp++;
++    }
++    else
++    {
++      ipp ++;
++    }
+   }
+ 
+   *ptr = '\0';
+-- 
+2.25.1
+
diff --git a/meta/recipes-extended/cups/cups/CVE-2024-47175-4.patch b/meta/recipes-extended/cups/cups/CVE-2024-47175-4.patch
new file mode 100644
index 0000000000..7665513485
--- /dev/null
+++ b/meta/recipes-extended/cups/cups/CVE-2024-47175-4.patch
@@ -0,0 +1,249 @@
+From 1e6ca5913eceee906038bc04cc7ccfbe2923bdfd Mon Sep 17 00:00:00 2001
+From: Michael R Sweet <msweet@msweet.org>
+Date: Mon, 23 Sep 2024 09:36:39 -0400
+Subject: [PATCH] Quote PPD localized strings.
+
+Upstream-Status: Backport [https://github.com/OpenPrinting/cups/commit/1e6ca5913eceee906038bc04cc7ccfbe2923bdfd]
+CVE: CVE-2024-47175
+Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
+---
+ cups/ppd-cache.c | 93 +++++++++++++++++++++++++++---------------------
+ 1 file changed, 53 insertions(+), 40 deletions(-)
+
+diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c
+index 53c22be..f425ac0 100644
+--- a/cups/ppd-cache.c
++++ b/cups/ppd-cache.c
+@@ -32,6 +32,7 @@
+ static int	cups_connect(http_t **http, const char *url, char *resource, size_t ressize);
+ static int	cups_get_url(http_t **http, const char *url, char *name, size_t namesize);
+ static const char *ppd_inputslot_for_keyword(_ppd_cache_t *pc, const char *keyword);
++static void	ppd_put_string(cups_file_t *fp, cups_lang_t *lang, cups_array_t *strings, const char *ppd_option, const char *ppd_choice, const char *pwg_msgid);
+ static void	pwg_add_finishing(cups_array_t *finishings, ipp_finishings_t template, const char *name, const char *value);
+ static void	pwg_add_message(cups_array_t *a, const char *msg, const char *str);
+ static int	pwg_compare_finishings(_pwg_finishings_t *a, _pwg_finishings_t *b);
+@@ -3394,7 +3395,7 @@ _ppdCreateFromIPP2(
+   if ((attr = ippFindAttribute(supported, "printer-charge-info-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
+     cupsFilePrintf(fp, "*cupsChargeInfoURI: \"%s\"\n", ippGetString(attr, 0, NULL));
+ 
+-  if ((attr = ippFindAttribute(supported, "printer-strings-uri", IPP_TAG_URI)) != NULL)
++  if ((attr = ippFindAttribute(supported, "printer-strings-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
+   {
+     http_t	*http = NULL;		/* Connection to printer */
+     char	stringsfile[1024];	/* Temporary strings file */
+@@ -3438,7 +3439,7 @@ _ppdCreateFromIPP2(
+ 
+ 	  response = cupsDoRequest(http, request, resource);
+ 
+-	  if ((attr = ippFindAttribute(response, "printer-strings-uri", IPP_TAG_URI)) != NULL)
++	  if ((attr = ippFindAttribute(response, "printer-strings-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
+ 	    cupsFilePrintf(fp, "*cupsStringsURI %s: \"%s\"\n", keyword, ippGetString(attr, 0, NULL));
+ 
+ 	  ippDelete(response);
+@@ -4044,18 +4045,16 @@ _ppdCreateFromIPP2(
+ 	cupsFilePrintf(fp, "*DefaultInputSlot: %s\n", ppdname);
+ 
+       for (j = 0; j < (int)(sizeof(sources) / sizeof(sources[0])); j ++)
++      {
+         if (!strcmp(sources[j], keyword))
+ 	{
+ 	  snprintf(msgid, sizeof(msgid), "media-source.%s", keyword);
+ 
+-	  if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
+-	    if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
+-	      msgstr = keyword;
+-
+ 	  cupsFilePrintf(fp, "*InputSlot %s: \"<</MediaPosition %d>>setpagedevice\"\n", ppdname, j);
+-	  cupsFilePrintf(fp, "*%s.InputSlot %s/%s: \"\"\n", lang->language, ppdname, msgstr);
++	  ppd_put_string(fp, lang, strings, "InputSlot", ppdname, msgid);
+ 	  break;
+ 	}
++      }
+     }
+     cupsFilePuts(fp, "*CloseUI: *InputSlot\n");
+   }
+@@ -4081,12 +4080,9 @@ _ppdCreateFromIPP2(
+       pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
+ 
+       snprintf(msgid, sizeof(msgid), "media-type.%s", keyword);
+-      if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
+-	if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
+-	  msgstr = keyword;
+ 
+       cupsFilePrintf(fp, "*MediaType %s: \"<</MediaType(%s)>>setpagedevice\"\n", ppdname, ppdname);
+-      cupsFilePrintf(fp, "*%s.MediaType %s/%s: \"\"\n", lang->language, ppdname, msgstr);
++      ppd_put_string(fp, lang, strings, "MediaType", ppdname, msgid);
+     }
+     cupsFilePuts(fp, "*CloseUI: *MediaType\n");
+   }
+@@ -4547,12 +4543,9 @@ _ppdCreateFromIPP2(
+       pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
+ 
+       snprintf(msgid, sizeof(msgid), "output-bin.%s", keyword);
+-      if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
+-	if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
+-	  msgstr = keyword;
+ 
+       cupsFilePrintf(fp, "*OutputBin %s: \"\"\n", ppdname);
+-      cupsFilePrintf(fp, "*%s.OutputBin %s/%s: \"\"\n", lang->language, ppdname, msgstr);
++      ppd_put_string(fp, lang, strings, "OutputBin", ppdname, msgid);
+ 
+       if ((tray_ptr = ippGetOctetString(trays, i, &tray_len)) != NULL)
+       {
+@@ -4671,9 +4664,6 @@ _ppdCreateFromIPP2(
+         cupsArrayAdd(names, (char *)keyword);
+ 
+ 	snprintf(msgid, sizeof(msgid), "finishings.%d", value);
+-	if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
+-	  if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
+-	    msgstr = keyword;
+ 
+         if (value >= IPP_FINISHINGS_NONE && value <= IPP_FINISHINGS_LAMINATE)
+           ppd_keyword = base_keywords[value - IPP_FINISHINGS_NONE];
+@@ -4688,7 +4678,7 @@ _ppdCreateFromIPP2(
+           continue;
+ 
+ 	cupsFilePrintf(fp, "*StapleLocation %s: \"\"\n", ppd_keyword);
+-	cupsFilePrintf(fp, "*%s.StapleLocation %s/%s: \"\"\n", lang->language, ppd_keyword, msgstr);
++	ppd_put_string(fp, lang, strings, "StapleLocation", ppd_keyword, msgid);
+ 	cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*StapleLocation %s\"\n", value, keyword, ppd_keyword);
+       }
+ 
+@@ -4751,9 +4741,6 @@ _ppdCreateFromIPP2(
+         cupsArrayAdd(names, (char *)keyword);
+ 
+ 	snprintf(msgid, sizeof(msgid), "finishings.%d", value);
+-	if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
+-	  if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
+-	    msgstr = keyword;
+ 
+         if (value >= IPP_FINISHINGS_NONE && value <= IPP_FINISHINGS_LAMINATE)
+           ppd_keyword = base_keywords[value - IPP_FINISHINGS_NONE];
+@@ -4768,7 +4755,7 @@ _ppdCreateFromIPP2(
+           continue;
+ 
+ 	cupsFilePrintf(fp, "*FoldType %s: \"\"\n", ppd_keyword);
+-	cupsFilePrintf(fp, "*%s.FoldType %s/%s: \"\"\n", lang->language, ppd_keyword, msgstr);
++	ppd_put_string(fp, lang, strings, "FoldType", ppd_keyword, msgid);
+ 	cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*FoldType %s\"\n", value, keyword, ppd_keyword);
+       }
+ 
+@@ -4839,9 +4826,6 @@ _ppdCreateFromIPP2(
+         cupsArrayAdd(names, (char *)keyword);
+ 
+ 	snprintf(msgid, sizeof(msgid), "finishings.%d", value);
+-	if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
+-	  if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
+-	    msgstr = keyword;
+ 
+         if (value >= IPP_FINISHINGS_NONE && value <= IPP_FINISHINGS_LAMINATE)
+           ppd_keyword = base_keywords[value - IPP_FINISHINGS_NONE];
+@@ -4856,7 +4840,7 @@ _ppdCreateFromIPP2(
+           continue;
+ 
+ 	cupsFilePrintf(fp, "*PunchMedia %s: \"\"\n", ppd_keyword);
+-	cupsFilePrintf(fp, "*%s.PunchMedia %s/%s: \"\"\n", lang->language, ppd_keyword, msgstr);
++	ppd_put_string(fp, lang, strings, "PunchMedia", ppd_keyword, msgid);
+ 	cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*PunchMedia %s\"\n", value, keyword, ppd_keyword);
+       }
+ 
+@@ -4927,9 +4911,6 @@ _ppdCreateFromIPP2(
+         cupsArrayAdd(names, (char *)keyword);
+ 
+ 	snprintf(msgid, sizeof(msgid), "finishings.%d", value);
+-	if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
+-	  if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
+-	    msgstr = keyword;
+ 
+         if (value == IPP_FINISHINGS_TRIM)
+           ppd_keyword = "Auto";
+@@ -4937,7 +4918,7 @@ _ppdCreateFromIPP2(
+ 	  ppd_keyword = trim_keywords[value - IPP_FINISHINGS_TRIM_AFTER_PAGES];
+ 
+ 	cupsFilePrintf(fp, "*CutMedia %s: \"\"\n", ppd_keyword);
+-	cupsFilePrintf(fp, "*%s.CutMedia %s/%s: \"\"\n", lang->language, ppd_keyword, msgstr);
++	ppd_put_string(fp, lang, strings, "CutMedia", ppd_keyword, msgid);
+ 	cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*CutMedia %s\"\n", value, keyword, ppd_keyword);
+       }
+ 
+@@ -4979,9 +4960,6 @@ _ppdCreateFromIPP2(
+       pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
+ 
+       snprintf(msgid, sizeof(msgid), "finishing-template.%s", keyword);
+-      if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
+-	if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
+-	  msgstr = keyword;
+ 
+       cupsFilePrintf(fp, "*cupsFinishingTemplate %s: \"\n", ppdname);
+       for (finishing_attr = ippFirstAttribute(finishing_col); finishing_attr; finishing_attr = ippNextAttribute(finishing_col))
+@@ -4996,7 +4974,7 @@ _ppdCreateFromIPP2(
+ 	}
+       }
+       cupsFilePuts(fp, "\"\n");
+-      cupsFilePrintf(fp, "*%s.cupsFinishingTemplate %s/%s: \"\"\n", lang->language, ppdname, msgstr);
++      ppd_put_string(fp, lang, strings, "cupsFinishingTemplate", ppdname, msgid);
+       cupsFilePuts(fp, "*End\n");
+     }
+ 
+@@ -5165,11 +5143,9 @@ _ppdCreateFromIPP2(
+ 
+       cupsFilePuts(fp, "\"\n*End\n");
+ 
+-      if ((localized_name = _cupsMessageLookup(strings, preset_name)) != preset_name)
+-      {
+-        pwg_ppdize_name(preset_name, ppdname, sizeof(ppdname));
+-        cupsFilePrintf(fp, "*%s.APPrinterPreset %s/%s: \"\"\n", lang->language, ppdname, localized_name);
+-      }
++      snprintf(msgid, sizeof(msgid), "preset-name.%s", preset_name);
++      pwg_ppdize_name(preset_name, ppdname, sizeof(ppdname));
++      ppd_put_string(fp, lang, strings, "APPrinterPreset", ppdname, msgid);
+     }
+   }
+ 
+@@ -5440,6 +5416,43 @@ cups_get_url(http_t     **http,		/* IO - Current HTTP connection */
+ }
+ 
+ 
++/*
++ * 'ppd_put_strings()' - Write localization attributes to a PPD file.
++ */
++
++static void
++ppd_put_string(cups_file_t  *fp,	/* I - PPD file */
++               cups_lang_t  *lang,	/* I - Language */
++               cups_array_t *strings,	/* I - Strings */
++	       const char   *ppd_option,/* I - PPD option */
++	       const char   *ppd_choice,/* I - PPD choice */
++	       const char   *pwg_msgid)	/* I - PWG message ID */
++{
++  const char	*text;			/* Localized text */
++
++
++  if ((text = _cupsLangString(lang, pwg_msgid)) == pwg_msgid || !strcmp(pwg_msgid, text))
++  {
++    if ((text = _cupsMessageLookup(strings, pwg_msgid)) == pwg_msgid)
++      return;
++  }
++
++  // Add the first line of localized text...
++  cupsFilePrintf(fp, "*%s.%s %s/", lang->language, ppd_option, ppd_choice);
++  while (*text && *text != '\n')
++  {
++    // Escape ":" and "<"...
++    if (*text == ':' || *text == '<')
++      cupsFilePrintf(fp, "<%02X>", *text);
++    else
++      cupsFilePutChar(fp, *text);
++
++    text ++;
++  }
++  cupsFilePuts(fp, ": \"\"\n");
++}
++
++
+ /*
+  * 'pwg_add_finishing()' - Add a finishings value.
+  */
+-- 
+2.25.1
+
diff --git a/meta/recipes-extended/cups/cups/CVE-2024-47175-5.patch b/meta/recipes-extended/cups/cups/CVE-2024-47175-5.patch
new file mode 100644
index 0000000000..77a30857e2
--- /dev/null
+++ b/meta/recipes-extended/cups/cups/CVE-2024-47175-5.patch
@@ -0,0 +1,40 @@
+From 2abe1ba8a66864aa82cd9836b37e57103b8e1a3b Mon Sep 17 00:00:00 2001
+From: Michael R Sweet <msweet@msweet.org>
+Date: Mon, 23 Sep 2024 10:11:31 -0400
+Subject: [PATCH] Fix warnings for unused vars.
+
+Upstream-Status: Backport [https://github.com/OpenPrinting/cups/commit/2abe1ba8a66864aa82cd9836b37e57103b8e1a3b]
+CVE: CVE-2024-47175
+Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
+---
+ cups/ppd-cache.c | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c
+index f425ac0..d2533b7 100644
+--- a/cups/ppd-cache.c
++++ b/cups/ppd-cache.c
+@@ -3223,8 +3223,7 @@ _ppdCreateFromIPP2(
+   int			have_qdraft = 0,/* Have draft quality? */
+ 			have_qhigh = 0;	/* Have high quality? */
+   char			msgid[256];	/* Message identifier (attr.value) */
+-  const char		*keyword,	/* Keyword value */
+-			*msgstr;	/* Localized string */
++  const char		*keyword;	/* Keyword value */
+   cups_array_t		*strings = NULL;/* Printer strings file */
+   struct lconv		*loc = localeconv();
+ 					/* Locale data */
+@@ -5010,9 +5009,8 @@ _ppdCreateFromIPP2(
+     {
+       ipp_t	*preset = ippGetCollection(attr, i);
+ 					/* Preset collection */
+-      const char *preset_name = ippGetString(ippFindAttribute(preset, "preset-name", IPP_TAG_ZERO), 0, NULL),
++      const char *preset_name = ippGetString(ippFindAttribute(preset, "preset-name", IPP_TAG_ZERO), 0, NULL);
+ 					/* Preset name */
+-		*localized_name;	/* Localized preset name */
+       ipp_attribute_t *member;		/* Member attribute in preset */
+       const char *member_name;		/* Member attribute name */
+       char      	member_value[256];	/* Member attribute value */
+-- 
+2.25.1
+
-- 
2.34.1



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

* [OE-core][scarthgap 03/18] libarchive: fix CVE-2024-48957 & CVE-2024-48958
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 01/18] rust: ignore CVE-2024-43402 Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 02/18] cups: Backport fix for CVE-2024-47175 Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 04/18] linux-firmware: upgrade 20240312 -> 20240909 Steve Sakoman
                   ` (14 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Hitendra Prajapati <hprajapati@mvista.com>

Backport fixes for:

* CVE-2024-48957 - Upstream-Status: Backport from https://github.com/libarchive/libarchive/commit/3006bc5d02ad3ae3c4f9274f60c1f9d2d834734b
* CVE-2024-48958 - Upstream-Status: Backport from https://github.com/libarchive/libarchive/commit/a1cb648d52f5b6d3f31184d9b6a7cbca628459b7

Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 .../libarchive/CVE-2024-48957.patch           | 36 +++++++++++++++++
 .../libarchive/CVE-2024-48958.patch           | 40 +++++++++++++++++++
 .../libarchive/libarchive_3.7.4.bb            |  5 ++-
 3 files changed, 80 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-extended/libarchive/libarchive/CVE-2024-48957.patch
 create mode 100644 meta/recipes-extended/libarchive/libarchive/CVE-2024-48958.patch

diff --git a/meta/recipes-extended/libarchive/libarchive/CVE-2024-48957.patch b/meta/recipes-extended/libarchive/libarchive/CVE-2024-48957.patch
new file mode 100644
index 0000000000..98877cf72c
--- /dev/null
+++ b/meta/recipes-extended/libarchive/libarchive/CVE-2024-48957.patch
@@ -0,0 +1,36 @@
+From 3006bc5d02ad3ae3c4f9274f60c1f9d2d834734b Mon Sep 17 00:00:00 2001
+From: Wei-Cheng Pan <legnaleurc@gmail.com>
+Date: Mon, 29 Apr 2024 06:53:19 +0900
+Subject: [PATCH] fix: OOB in rar audio filter (#2149)
+
+This patch ensures that `src` won't move ahead of `dst`, so `src` will
+not OOB. Similar situation like in a1cb648.
+
+Upstream-Status: Backport [https://github.com/libarchive/libarchive/commit/3006bc5d02ad3ae3c4f9274f60c1f9d2d834734b]
+CVE: CVE-2024-48957
+Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
+---
+ libarchive/archive_read_support_format_rar.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/libarchive/archive_read_support_format_rar.c b/libarchive/archive_read_support_format_rar.c
+index 79669a8..95a91dc 100644
+--- a/libarchive/archive_read_support_format_rar.c
++++ b/libarchive/archive_read_support_format_rar.c
+@@ -3714,6 +3714,13 @@ execute_filter_audio(struct rar_filter *filter, struct rar_virtual_machine *vm)
+     memset(&state, 0, sizeof(state));
+     for (j = i; j < length; j += numchannels)
+     {
++      /*
++       * The src block should not overlap with the dst block.
++       * If so it would be better to consider this archive is broken.
++       */
++      if (src >= dst)
++        return 0;
++
+       int8_t delta = (int8_t)*src++;
+       uint8_t predbyte, byte;
+       int prederror;
+-- 
+2.25.1
+
diff --git a/meta/recipes-extended/libarchive/libarchive/CVE-2024-48958.patch b/meta/recipes-extended/libarchive/libarchive/CVE-2024-48958.patch
new file mode 100644
index 0000000000..de266e9d95
--- /dev/null
+++ b/meta/recipes-extended/libarchive/libarchive/CVE-2024-48958.patch
@@ -0,0 +1,40 @@
+From a1cb648d52f5b6d3f31184d9b6a7cbca628459b7 Mon Sep 17 00:00:00 2001
+From: Wei-Cheng Pan <legnaleurc@gmail.com>
+Date: Mon, 29 Apr 2024 06:50:22 +0900
+Subject: [PATCH] fix: OOB in rar delta filter (#2148)
+
+Ensure that `src` won't move ahead of `dst`, so `src` will not OOB.
+Since `dst` won't move in this function, and we are only increasing `src`
+position, this check should be enough. It should be safe to early return
+because this function does not allocate resources.
+
+Upstream-Status: Backport [https://github.com/libarchive/libarchive/commit/a1cb648d52f5b6d3f31184d9b6a7cbca628459b7]
+CVE: CVE-2024-48958
+Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
+---
+ libarchive/archive_read_support_format_rar.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/libarchive/archive_read_support_format_rar.c b/libarchive/archive_read_support_format_rar.c
+index 95a91dc..4fc6626 100644
+--- a/libarchive/archive_read_support_format_rar.c
++++ b/libarchive/archive_read_support_format_rar.c
+@@ -3612,7 +3612,15 @@ execute_filter_delta(struct rar_filter *filter, struct rar_virtual_machine *vm)
+   {
+     uint8_t lastbyte = 0;
+     for (idx = i; idx < length; idx += numchannels)
++    {
++      /*
++       * The src block should not overlap with the dst block.
++       * If so it would be better to consider this archive is broken.
++       */
++      if (src >= dst)
++        return 0;
+       lastbyte = dst[idx] = lastbyte - *src++;
++    }
+   }
+ 
+   filter->filteredblockaddress = length;
+-- 
+2.25.1
+
diff --git a/meta/recipes-extended/libarchive/libarchive_3.7.4.bb b/meta/recipes-extended/libarchive/libarchive_3.7.4.bb
index da85764116..6e406611f9 100644
--- a/meta/recipes-extended/libarchive/libarchive_3.7.4.bb
+++ b/meta/recipes-extended/libarchive/libarchive_3.7.4.bb
@@ -30,7 +30,10 @@ PACKAGECONFIG[zstd] = "--with-zstd,--without-zstd,zstd,"
 EXTRA_OECONF += "--enable-largefile --without-iconv"
 
 SRC_URI = "http://libarchive.org/downloads/libarchive-${PV}.tar.gz"
-SRC_URI += "file://configurehack.patch"
+SRC_URI += "file://configurehack.patch \
+            file://CVE-2024-48957.patch \
+            file://CVE-2024-48958.patch \
+	"
 UPSTREAM_CHECK_URI = "http://libarchive.org/"
 
 SRC_URI[sha256sum] = "7875d49596286055b52439ed42f044bd8ad426aa4cc5aabd96bfe7abb971d5e8"
-- 
2.34.1



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

* [OE-core][scarthgap 04/18] linux-firmware: upgrade 20240312 -> 20240909
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (2 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 03/18] libarchive: fix CVE-2024-48957 & CVE-2024-48958 Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 05/18] ruby: upgrade 3.2.2 -> 3.3.5 Steve Sakoman
                   ` (13 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Macpaul Lin <macpaul.lin@mediatek.com>

License-Update: additional files

Signed-off-by: Macpaul Lin <macpaul.lin@mediatek.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 ...ux-firmware_20240312.bb => linux-firmware_20240909.bb} | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
 rename meta/recipes-kernel/linux-firmware/{linux-firmware_20240312.bb => linux-firmware_20240909.bb} (99%)

diff --git a/meta/recipes-kernel/linux-firmware/linux-firmware_20240312.bb b/meta/recipes-kernel/linux-firmware/linux-firmware_20240909.bb
similarity index 99%
rename from meta/recipes-kernel/linux-firmware/linux-firmware_20240312.bb
rename to meta/recipes-kernel/linux-firmware/linux-firmware_20240909.bb
index 5819d9287c..30c47d7720 100644
--- a/meta/recipes-kernel/linux-firmware/linux-firmware_20240312.bb
+++ b/meta/recipes-kernel/linux-firmware/linux-firmware_20240909.bb
@@ -82,7 +82,7 @@ LICENSE = "\
 LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \
                     file://LICENCE.adsp_sst;md5=615c45b91a5a4a9fe046d6ab9a2df728 \
                     file://LICENCE.agere;md5=af0133de6b4a9b2522defd5f188afd31 \
-                    file://LICENSE.amdgpu;md5=a2589a05ea5b6bd2b7f4f623c7e7a649 \
+                    file://LICENSE.amdgpu;md5=1433dfea38c97a2e563a248a863dcb94 \
                     file://LICENSE.amd-ucode;md5=6ca90c57f7b248de1e25c7f68ffc4698 \
                     file://LICENSE.amlogic_vdec;md5=dc44f59bf64a81643e500ad3f39a468a \
                     file://LICENSE.amphion_vpu;md5=2bcdc00527b2d0542bd92b52aaec2b60 \
@@ -142,7 +142,7 @@ LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \
                     file://LICENCE.rtlwifi_firmware.txt;md5=00d06cfd3eddd5a2698948ead2ad54a5 \
                     file://LICENSE.sdma_firmware;md5=51e8c19ecc2270f4b8ea30341ad63ce9 \
                     file://LICENCE.siano;md5=4556c1bf830067f12ca151ad953ec2a5 \
-                    file://LICENCE.ti-connectivity;md5=c5e02be633f1499c109d1652514d85ec \
+                    file://LICENCE.ti-connectivity;md5=3b1e9cf54aba8146dad4b735777d406f \
                     file://LICENCE.ti-keystone;md5=3a86335d32864b0bef996bee26cc0f2c \
                     file://LICENCE.ueagle-atm4-firmware;md5=4ed7ea6b507ccc583b9d594417714118 \
                     file://LICENCE.via_vt6656;md5=e4159694cba42d4377a912e78a6e850f \
@@ -154,7 +154,7 @@ LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \
                     "
 # WHENCE checksum is defined separately to ease overriding it if
 # class-devupstream is selected.
-WHENCE_CHKSUM  = "514da1cd8b363373030f0c16749feb8d"
+WHENCE_CHKSUM  = "6ae5ffd807c84809977286ad0b37acdb"
 
 # These are not common licenses, set NO_GENERIC_LICENSE for them
 # so that the license files will be copied from fetched source
@@ -241,7 +241,7 @@ SRC_URI:class-devupstream = "git://git.kernel.org/pub/scm/linux/kernel/git/firmw
 # Pin this to the 20220509 release, override this in local.conf
 SRCREV:class-devupstream ?= "b19cbdca78ab2adfd210c91be15a22568e8b8cae"
 
-SRC_URI[sha256sum] = "b2327a54ad1897c828008caf63af5ee15469ba723a5016be58f2b44f07bd4b94"
+SRC_URI[sha256sum] = "943fbd19883cf8eadf89e0b22422549db056557b1ecd30a56400615971369671"
 
 inherit allarch
 
-- 
2.34.1



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

* [OE-core][scarthgap 05/18] ruby: upgrade 3.2.2 -> 3.3.5
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (3 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 04/18] linux-firmware: upgrade 20240312 -> 20240909 Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 06/18] ptest-runner: Update 2.4.4 -> 2.4.5 Steve Sakoman
                   ` (12 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Yogita Urade <yogita.urade@windriver.com>

Includes fix for CVE-2024-41123 & CVE-2024-41946

Release notes:
https://github.com/ruby/ruby/releases/tag/v3_3_5

Rebase:
0005-Mark-Gemspec-reproducible-change-fixing-784225-too.patch
0006-Make-gemspecs-reproducible.patch

Drop:
0001-fiddle-Use-C11-_Alignof-to-define-ALIGN_OF-when-poss.patch
0002-Obey-LDFLAGS-for-the-link-of-libruby.patch
CVE-2023-36617_1.patch
CVE-2023-36617_2.patch
CVE-2024-27281.patch
CVE-2024-27282.patch
(merged upstream)

0001-template-Makefile.in-do-not-write-host-cross-cc-item.patch
0002-template-Makefile.in-filter-out-f-prefix-map.patch
remove_has_include_macros.patch
(code rewritten upstream)

License-Update: Updated LEGAL section

Signed-off-by: Yogita Urade <yogita.urade@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 ...Alignof-to-define-ALIGN_OF-when-poss.patch | 52 ----------
 ...e.in-do-not-write-host-cross-cc-item.patch | 32 ------
 ...Obey-LDFLAGS-for-the-link-of-libruby.patch | 25 -----
 ...-Makefile.in-filter-out-f-prefix-map.patch | 42 --------
 ...eproducible-change-fixing-784225-too.patch | 26 ++---
 .../0006-Make-gemspecs-reproducible.patch     | 18 ++--
 .../ruby/ruby/CVE-2023-36617_1.patch          | 56 -----------
 .../ruby/ruby/CVE-2023-36617_2.patch          | 52 ----------
 .../ruby/ruby/CVE-2024-27281.patch            | 97 -------------------
 .../ruby/ruby/CVE-2024-27282.patch            | 28 ------
 .../ruby/ruby/remove_has_include_macros.patch | 35 -------
 .../ruby/{ruby_3.2.2.bb => ruby_3.3.5.bb}     | 13 +--
 12 files changed, 25 insertions(+), 451 deletions(-)
 delete mode 100644 meta/recipes-devtools/ruby/ruby/0001-fiddle-Use-C11-_Alignof-to-define-ALIGN_OF-when-poss.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/0001-template-Makefile.in-do-not-write-host-cross-cc-item.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/0002-Obey-LDFLAGS-for-the-link-of-libruby.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/0002-template-Makefile.in-filter-out-f-prefix-map.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2023-36617_1.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2023-36617_2.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2024-27281.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2024-27282.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/remove_has_include_macros.patch
 rename meta/recipes-devtools/ruby/{ruby_3.2.2.bb => ruby_3.3.5.bb} (88%)

diff --git a/meta/recipes-devtools/ruby/ruby/0001-fiddle-Use-C11-_Alignof-to-define-ALIGN_OF-when-poss.patch b/meta/recipes-devtools/ruby/ruby/0001-fiddle-Use-C11-_Alignof-to-define-ALIGN_OF-when-poss.patch
deleted file mode 100644
index 1dff9c0f8c..0000000000
--- a/meta/recipes-devtools/ruby/ruby/0001-fiddle-Use-C11-_Alignof-to-define-ALIGN_OF-when-poss.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 6b3c202b46b9312c5bb0789145f13d8086e70948 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 15 Jan 2023 02:34:17 -0800
-Subject: [PATCH] fiddle: Use C11 _Alignof to define ALIGN_OF when possible
-
-WG14 N2350 made very clear that it is an UB having type definitions
-within "offsetof" [1]. This patch enhances the implementation of macro
-ALIGN_OF to use builtin "_Alignof" to avoid undefined behavior
-when using std=c11 or newer
-
-clang 16+ has started to flag this [2]
-
-Fixes build when using -std >= gnu11 and using clang16+
-
-Older compilers gcc < 4.9 or clang < 8 has buggy _Alignof even though it
-may support C11, exclude those compiler versions
-
-[1] https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2350.htm
-[2] https://reviews.llvm.org/D133574
-
-Upstream-Status: Submitted [https://github.com/ruby/fiddle/pull/120]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- ext/fiddle/fiddle.h | 12 +++++++++++-
- 1 file changed, 11 insertions(+), 1 deletion(-)
-
-diff --git a/ext/fiddle/fiddle.h b/ext/fiddle/fiddle.h
-index 10eb9ce..ffb395e 100644
---- a/ext/fiddle/fiddle.h
-+++ b/ext/fiddle/fiddle.h
-@@ -196,7 +196,17 @@
- #endif
- #define TYPE_UINTPTR_T (-TYPE_INTPTR_T)
- 
--#define ALIGN_OF(type) offsetof(struct {char align_c; type align_x;}, align_x)
-+/* GCC releases before GCC 4.9 had a bug in _Alignof.  See GCC bug 52023
-+   <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52023>.
-+   clang versions < 8.0.0 have the same bug.  */
-+#if (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 \
-+     || (defined __GNUC__ && __GNUC__ < 4 + (__GNUC_MINOR__ < 9) \
-+         && !defined __clang__) \
-+     || (defined __clang__ && __clang_major__ < 8))
-+# define ALIGN_OF(type) offsetof(struct {char align_c; type align_x;}, align_x)
-+#else
-+# define ALIGN_OF(type) _Alignof(type)
-+#endif
- 
- #define ALIGN_VOIDP  ALIGN_OF(void*)
- #define ALIGN_CHAR   ALIGN_OF(char)
--- 
-2.39.0
-
diff --git a/meta/recipes-devtools/ruby/ruby/0001-template-Makefile.in-do-not-write-host-cross-cc-item.patch b/meta/recipes-devtools/ruby/ruby/0001-template-Makefile.in-do-not-write-host-cross-cc-item.patch
deleted file mode 100644
index 226ef3af75..0000000000
--- a/meta/recipes-devtools/ruby/ruby/0001-template-Makefile.in-do-not-write-host-cross-cc-item.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 2368d07660a93a2c41d63f3ab6054ca4daeef820 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Tue, 17 Nov 2020 18:31:40 +0000
-Subject: [PATCH] template/Makefile.in: do not write host cross-cc items into
- target config
-
-This helps reproducibility.
-
-Upstream-Status: Inappropriate [oe-core specific]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- template/Makefile.in | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/template/Makefile.in b/template/Makefile.in
-index 10dc826..940ee07 100644
---- a/template/Makefile.in
-+++ b/template/Makefile.in
-@@ -657,11 +657,11 @@ mjit_config.h:
- 	echo '#endif'; \
- 	quote MJIT_MIN_HEADER_NAME "$(MJIT_MIN_HEADER_NAME)"; \
- 	sep=,; \
--	quote "MJIT_CC_COMMON  " $(MJIT_CC); \
-+	quote "MJIT_CC_COMMON  " ; \
- 	quote "MJIT_CFLAGS      MJIT_ARCHFLAG" $(MJIT_CFLAGS); \
- 	quote "MJIT_OPTFLAGS   " $(MJIT_OPTFLAGS); \
- 	quote "MJIT_DEBUGFLAGS " $(MJIT_DEBUGFLAGS); \
--	quote "MJIT_LDSHARED   " $(MJIT_LDSHARED); \
-+	quote "MJIT_LDSHARED   " ; \
- 	quote "MJIT_DLDFLAGS    MJIT_ARCHFLAG" $(MJIT_DLDFLAGS); \
- 	quote "MJIT_LIBS       " $(LIBRUBYARG_SHARED); \
- 	quote 'PRELOADENV       "@PRELOADENV@"'; \
diff --git a/meta/recipes-devtools/ruby/ruby/0002-Obey-LDFLAGS-for-the-link-of-libruby.patch b/meta/recipes-devtools/ruby/ruby/0002-Obey-LDFLAGS-for-the-link-of-libruby.patch
deleted file mode 100644
index 96ae86263b..0000000000
--- a/meta/recipes-devtools/ruby/ruby/0002-Obey-LDFLAGS-for-the-link-of-libruby.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 21d8e7700fa0a9c4bf569dd366134060ae858832 Mon Sep 17 00:00:00 2001
-From: Christopher Larson <chris_larson@mentor.com>
-Date: Thu, 5 May 2016 10:59:07 -0700
-Subject: [PATCH] Obey LDFLAGS for the link of libruby
-
-Signed-off-by: Christopher Larson <chris_larson@mentor.com>
-Upstream-Status: Pending
-
----
- template/Makefile.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/template/Makefile.in b/template/Makefile.in
-index 1456313..15b98a4 100644
---- a/template/Makefile.in
-+++ b/template/Makefile.in
-@@ -127,7 +127,7 @@ ENABLE_SHARED = @ENABLE_SHARED@
- LDSHARED = @LIBRUBY_LDSHARED@
- DLDSHARED = @DLDSHARED@
- XDLDFLAGS = @DLDFLAGS@
--DLDFLAGS = @LIBRUBY_DLDFLAGS@ $(XLDFLAGS) $(ARCH_FLAG)
-+DLDFLAGS = @LIBRUBY_DLDFLAGS@ @LDFLAGS@ $(XLDFLAGS) $(ARCH_FLAG)
- SOLIBS = @SOLIBS@
- ENABLE_DEBUG_ENV = @ENABLE_DEBUG_ENV@
- MAINLIBS = $(YJIT_LIBS) @MAINLIBS@
diff --git a/meta/recipes-devtools/ruby/ruby/0002-template-Makefile.in-filter-out-f-prefix-map.patch b/meta/recipes-devtools/ruby/ruby/0002-template-Makefile.in-filter-out-f-prefix-map.patch
deleted file mode 100644
index 2efbad7513..0000000000
--- a/meta/recipes-devtools/ruby/ruby/0002-template-Makefile.in-filter-out-f-prefix-map.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-Subject: [PATCH] template/Makefile.in: filter out -f*prefix-map
-
-If we add DEBUG_PREFIX_MAP into LDFLAGS, ruby and ruby-dbg are no longer
-reproducible.  Fix this.
-
-Upstream-Status: Inappropriate [oe-core specific]
-Signed-off-by: Tony Battersby <tonyb@cybernetics.com>
----
---- a/tool/mjit_archflag.sh
-+++ b/tool/mjit_archflag.sh
-@@ -7,6 +7,20 @@ quote() {
-     echo
- }
- 
-+quote_filtered() {
-+    printf "#${indent}define $1"
-+    while shift && [ "$#" -gt 0 ]; do
-+	case "$1" in
-+	    -ffile-prefix-map=*|-fdebug-prefix-map=*|-fmacro-prefix-map=*)
-+		;;
-+	    *)
-+		printf ' "%s"'$sep "$1"
-+		;;
-+	esac
-+    done
-+    echo
-+}
-+
- archs=""
- arch_flag=""
- 
---- a/template/Makefile.in
-+++ b/template/Makefile.in
-@@ -666,7 +666,7 @@ mjit_config.h:
- 	quote "MJIT_OPTFLAGS   " $(MJIT_OPTFLAGS); \
- 	quote "MJIT_DEBUGFLAGS " $(MJIT_DEBUGFLAGS); \
- 	quote "MJIT_LDSHARED   " ; \
--	quote "MJIT_DLDFLAGS    MJIT_ARCHFLAG" $(MJIT_DLDFLAGS); \
-+	quote_filtered "MJIT_DLDFLAGS    MJIT_ARCHFLAG" $(MJIT_DLDFLAGS); \
- 	quote "MJIT_LIBS       " $(LIBRUBYARG_SHARED); \
- 	quote 'PRELOADENV       "@PRELOADENV@"'; \
- 	indent=$${archs:+'  '}; \
diff --git a/meta/recipes-devtools/ruby/ruby/0005-Mark-Gemspec-reproducible-change-fixing-784225-too.patch b/meta/recipes-devtools/ruby/ruby/0005-Mark-Gemspec-reproducible-change-fixing-784225-too.patch
index 41f206523e..0902a201ec 100644
--- a/meta/recipes-devtools/ruby/ruby/0005-Mark-Gemspec-reproducible-change-fixing-784225-too.patch
+++ b/meta/recipes-devtools/ruby/ruby/0005-Mark-Gemspec-reproducible-change-fixing-784225-too.patch
@@ -12,20 +12,20 @@ Upstream-Status: Backport [debian]
  1 file changed, 3 insertions(+), 1 deletion(-)
 
 diff --git a/lib/rubygems/specification.rb b/lib/rubygems/specification.rb
-index 0d72cee..eb7bc25 100644
+index d6eac7f..4b2e95e 100644
 --- a/lib/rubygems/specification.rb
 +++ b/lib/rubygems/specification.rb
-@@ -1691,7 +1691,9 @@ class Gem::Specification < Gem::BasicSpecification
-         raise(Gem::InvalidSpecificationException,
-               "invalid date format in specification: #{date.inspect}")
-       end
--    when Time, DateLike then
-+    when Time then
-+      Time.utc(date.utc.year, date.utc.month, date.utc.day)
-+    when DateLike then
-       Time.utc(date.year, date.month, date.day)
-     else
-       TODAY
+@@ -1707,7 +1707,9 @@ class Gem::Specification < Gem::BasicSpecification
+                 raise(Gem::InvalidSpecificationException,
+                       "invalid date format in specification: #{date.inspect}")
+               end
+-            when Time, DateLike then
++            when Time then
++              Time.utc(date.utc.year, date.utc.month, date.utc.day)
++            when DateLike then
+               Time.utc(date.year, date.month, date.day)
+             else
+               TODAY
 -- 
-2.25.1
+2.40.0
 
diff --git a/meta/recipes-devtools/ruby/ruby/0006-Make-gemspecs-reproducible.patch b/meta/recipes-devtools/ruby/ruby/0006-Make-gemspecs-reproducible.patch
index 0a87cae17f..d32e209129 100644
--- a/meta/recipes-devtools/ruby/ruby/0006-Make-gemspecs-reproducible.patch
+++ b/meta/recipes-devtools/ruby/ruby/0006-Make-gemspecs-reproducible.patch
@@ -7,7 +7,6 @@ Without an explicit date, they will get the current date and make the
 build unreproducible
 
 Upstream-Status: Backport [debian]
-
 ---
  ext/bigdecimal/bigdecimal.gemspec | 1 +
  ext/fiddle/fiddle.gemspec         | 1 +
@@ -17,12 +16,12 @@ Upstream-Status: Backport [debian]
  5 files changed, 5 insertions(+)
 
 diff --git a/ext/bigdecimal/bigdecimal.gemspec b/ext/bigdecimal/bigdecimal.gemspec
-index d215757..5148d56 100644
+index f9f3b45..b9a469d 100644
 --- a/ext/bigdecimal/bigdecimal.gemspec
 +++ b/ext/bigdecimal/bigdecimal.gemspec
-@@ -4,6 +4,7 @@ Gem::Specification.new do |s|
-   s.name          = "bigdecimal"
-   s.version       = "3.1.3"
+@@ -14,6 +14,7 @@ Gem::Specification.new do |s|
+   s.name          = name
+   s.version       = source_version
    s.authors       = ["Kenta Murata", "Zachary Scott", "Shigeo Kobayashi"]
 +  s.date          = RUBY_RELEASE_DATE
    s.email         = ["mrkn@mrkn.jp"]
@@ -41,10 +40,10 @@ index 8781093..efdca32 100644
    spec.email         = ["aaron@tenderlovemaking.com", "hsbt@ruby-lang.org"]
  
 diff --git a/ext/io/console/io-console.gemspec b/ext/io/console/io-console.gemspec
-index d26a757..cc88c55 100644
+index d4f5276..8f89611 100644
 --- a/ext/io/console/io-console.gemspec
 +++ b/ext/io/console/io-console.gemspec
-@@ -4,6 +4,7 @@ _VERSION = "0.6.0"
+@@ -4,6 +4,7 @@ _VERSION = "0.7.1"
  Gem::Specification.new do |s|
    s.name = "io-console"
    s.version = _VERSION
@@ -65,7 +64,7 @@ index 1f4798e..48743cf 100644
    spec.email         = ["knu@idaemons.org", "ume@mahoroba.org"]
  
 diff --git a/lib/rdoc/rdoc.gemspec b/lib/rdoc/rdoc.gemspec
-index 3c96f7d..fec0872 100644
+index 93a281c..cc5c155 100644
 --- a/lib/rdoc/rdoc.gemspec
 +++ b/lib/rdoc/rdoc.gemspec
 @@ -7,6 +7,7 @@ end
@@ -76,3 +75,6 @@ index 3c96f7d..fec0872 100644
    s.version = RDoc::VERSION
  
    s.authors = [
+-- 
+2.40.0
+
diff --git a/meta/recipes-devtools/ruby/ruby/CVE-2023-36617_1.patch b/meta/recipes-devtools/ruby/ruby/CVE-2023-36617_1.patch
deleted file mode 100644
index 17c7e30176..0000000000
--- a/meta/recipes-devtools/ruby/ruby/CVE-2023-36617_1.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 2ebb50d2dc302917a6f57c1239dc9e700dfe0e34 Mon Sep 17 00:00:00 2001
-From: Nobuyoshi Nakada <nobu@ruby-lang.org>
-Date: Thu, 27 Jul 2023 15:53:01 +0800
-Subject: [PATCH] Fix quadratic backtracking on invalid relative URI
-
-https://hackerone.com/reports/1958260
-
-CVE: CVE-2023-36617
-
-Upstream-Status: Backport [https://github.com/ruby/uri/commit/9010ee2536adda10a0555ae1ed6fe2f5808e6bf1]
-
-Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
----
- lib/uri/rfc2396_parser.rb |  4 ++--
- test/uri/test_parser.rb   | 12 ++++++++++++
- 2 files changed, 14 insertions(+), 2 deletions(-)
-
-diff --git a/lib/uri/rfc2396_parser.rb b/lib/uri/rfc2396_parser.rb
-index 76a8f99..00c66cf 100644
---- a/lib/uri/rfc2396_parser.rb
-+++ b/lib/uri/rfc2396_parser.rb
-@@ -497,8 +497,8 @@ module URI
-       ret = {}
- 
-       # for URI::split
--      ret[:ABS_URI] = Regexp.new('\A\s*' + pattern[:X_ABS_URI] + '\s*\z', Regexp::EXTENDED)
--      ret[:REL_URI] = Regexp.new('\A\s*' + pattern[:X_REL_URI] + '\s*\z', Regexp::EXTENDED)
-+      ret[:ABS_URI] = Regexp.new('\A\s*+' + pattern[:X_ABS_URI] + '\s*\z', Regexp::EXTENDED)
-+      ret[:REL_URI] = Regexp.new('\A\s*+' + pattern[:X_REL_URI] + '\s*\z', Regexp::EXTENDED)
- 
-       # for URI::extract
-       ret[:URI_REF]     = Regexp.new(pattern[:URI_REF])
-diff --git a/test/uri/test_parser.rb b/test/uri/test_parser.rb
-index 72fb590..721e05e 100644
---- a/test/uri/test_parser.rb
-+++ b/test/uri/test_parser.rb
-@@ -79,4 +79,16 @@ class URI::TestParser < Test::Unit::TestCase
-     assert_equal([nil, nil, "example.com", nil, nil, "", nil, nil, nil], URI.split("//example.com"))
-     assert_equal([nil, nil, "[0::0]", nil, nil, "", nil, nil, nil], URI.split("//[0::0]"))
-   end
-+
-+  def test_rfc2822_parse_relative_uri
-+    pre = ->(length) {
-+      " " * length + "\0"
-+    }
-+    parser = URI::RFC2396_Parser.new
-+    assert_linear_performance((1..5).map {|i| 10**i}, pre: pre) do |uri|
-+      assert_raise(URI::InvalidURIError) do
-+        parser.split(uri)
-+      end
-+    end
-+  end
- end
--- 
-2.25.1
-
diff --git a/meta/recipes-devtools/ruby/ruby/CVE-2023-36617_2.patch b/meta/recipes-devtools/ruby/ruby/CVE-2023-36617_2.patch
deleted file mode 100644
index 7c51deaa42..0000000000
--- a/meta/recipes-devtools/ruby/ruby/CVE-2023-36617_2.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From eea5868120509c245216c4b5c2d4b5db1c593d0e Mon Sep 17 00:00:00 2001
-From: Nobuyoshi Nakada <nobu@ruby-lang.org>
-Date: Thu, 27 Jul 2023 16:16:30 +0800
-Subject: [PATCH] Fix quadratic backtracking on invalid port number
-
-https://hackerone.com/reports/1958260
-
-CVE: CVE-2023-36617
-
-Upstream-Status: Backport [https://github.com/ruby/uri/commit/9d7bcef1e6ad23c9c6e4932f297fb737888144c8]
-
-Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
----
- lib/uri/rfc3986_parser.rb |  2 +-
- test/uri/test_parser.rb   | 10 ++++++++++
- 2 files changed, 11 insertions(+), 1 deletion(-)
-
-diff --git a/lib/uri/rfc3986_parser.rb b/lib/uri/rfc3986_parser.rb
-index dd24a40..9b1663d 100644
---- a/lib/uri/rfc3986_parser.rb
-+++ b/lib/uri/rfc3986_parser.rb
-@@ -100,7 +100,7 @@ module URI
-         QUERY: /\A(?:%\h\h|[!$&-.0-;=@-Z_a-z~\/?])*\z/,
-         FRAGMENT: /\A(?:%\h\h|[!$&-.0-;=@-Z_a-z~\/?])*\z/,
-         OPAQUE: /\A(?:[^\/].*)?\z/,
--        PORT: /\A[\x09\x0a\x0c\x0d ]*\d*[\x09\x0a\x0c\x0d ]*\z/,
-+        PORT: /\A[\x09\x0a\x0c\x0d ]*+\d*[\x09\x0a\x0c\x0d ]*\z/,
-       }
-     end
- 
-diff --git a/test/uri/test_parser.rb b/test/uri/test_parser.rb
-index 721e05e..cee0acb 100644
---- a/test/uri/test_parser.rb
-+++ b/test/uri/test_parser.rb
-@@ -91,4 +91,14 @@ class URI::TestParser < Test::Unit::TestCase
-       end
-     end
-   end
-+
-+  def test_rfc3986_port_check
-+    pre = ->(length) {"\t" * length + "a"}
-+    uri = URI.parse("http://my.example.com")
-+    assert_linear_performance((1..5).map {|i| 10**i}, pre: pre) do |port|
-+      assert_raise(URI::InvalidComponentError) do
-+        uri.port = port
-+      end
-+    end
-+  end
- end
--- 
-2.25.1
-
diff --git a/meta/recipes-devtools/ruby/ruby/CVE-2024-27281.patch b/meta/recipes-devtools/ruby/ruby/CVE-2024-27281.patch
deleted file mode 100644
index f69f3bcf4f..0000000000
--- a/meta/recipes-devtools/ruby/ruby/CVE-2024-27281.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From da7a0c7553ef7250ca665a3fecdc01dbaacbb43d Mon Sep 17 00:00:00 2001
-From: Nobuyoshi Nakada <nobu@...>
-Date: Mon, 15 Apr 2024 11:40:00 +0000
-Subject: [PATCH] Filter marshaled objets
-
-CVE: CVE-2024-27281
-Upstream-Status: Backport [https://github.com/ruby/rdoc/commit/da7a0c7553ef7250ca665a3fecdc01dbaacbb43d]
-Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
----
- lib/rdoc/store.rb | 45 ++++++++++++++++++++++++++-------------------
- 1 file changed, 26 insertions(+), 19 deletions(-)
-
-diff --git a/lib/rdoc/store.rb b/lib/rdoc/store.rb
-index 9fc540d..5b663d7 100644
---- a/lib/rdoc/store.rb
-+++ b/lib/rdoc/store.rb
-@@ -556,9 +556,7 @@ class RDoc::Store
-   def load_cache
-     #orig_enc = @encoding
- 
--    File.open cache_path, 'rb' do |io|
--      @cache = Marshal.load io
--    end
-+    @cache = marshal_load(cache_path)
- 
-     load_enc = @cache[:encoding]
- 
-@@ -615,9 +613,7 @@ class RDoc::Store
-   def load_class_data klass_name
-     file = class_file klass_name
- 
--    File.open file, 'rb' do |io|
--      Marshal.load io
--    end
-+    marshal_load(file)
-   rescue Errno::ENOENT => e
-     error = MissingFileError.new(self, file, klass_name)
-     error.set_backtrace e.backtrace
-@@ -630,14 +626,10 @@ class RDoc::Store
-   def load_method klass_name, method_name
-     file = method_file klass_name, method_name
- 
--    File.open file, 'rb' do |io|
--      obj = Marshal.load io
--      obj.store = self
--      obj.parent =
--        find_class_or_module(klass_name) || load_class(klass_name) unless
--          obj.parent
--      obj
--    end
-+    obj = marshal_load(file)
-+    obj.store = self
-+    obj.parent ||= find_class_or_module(klass_name) || load_class(klass_name)
-+    obj
-   rescue Errno::ENOENT => e
-     error = MissingFileError.new(self, file, klass_name + method_name)
-     error.set_backtrace e.backtrace
-@@ -650,11 +642,9 @@ class RDoc::Store
-   def load_page page_name
-     file = page_file page_name
- 
--    File.open file, 'rb' do |io|
--      obj = Marshal.load io
--      obj.store = self
--      obj
--    end
-+    obj = marshal_load(file)
-+    obj.store = self
-+    obj
-   rescue Errno::ENOENT => e
-     error = MissingFileError.new(self, file, page_name)
-     error.set_backtrace e.backtrace
-@@ -976,4 +966,21 @@ class RDoc::Store
-     @unique_modules
-   end
- 
-+  private
-+  def marshal_load(file)
-+    File.open(file, 'rb') {|io| Marshal.load(io, MarshalFilter)}
-+  end
-+
-+  MarshalFilter = proc do |obj|
-+    case obj
-+    when true, false, nil, Array, Class, Encoding, Hash, Integer, String, Symbol, RDoc::Text
-+    else
-+      unless obj.class.name.start_with("RDoc::")
-+        raise TypeError, "not permitted class: #{obj.class.name}"
-+      end
-+    end
-+    obj
-+  end
-+  private_constant :MarshalFilter
-+
- end
--- 
-2.25.1
-
diff --git a/meta/recipes-devtools/ruby/ruby/CVE-2024-27282.patch b/meta/recipes-devtools/ruby/ruby/CVE-2024-27282.patch
deleted file mode 100644
index dde7979278..0000000000
--- a/meta/recipes-devtools/ruby/ruby/CVE-2024-27282.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 989a2355808a63fc45367785c82ffd46d18c900a Mon Sep 17 00:00:00 2001
-From: Hiroshi SHIBATA <hsbt@ruby-lang.org>
-Date: Fri, 12 Apr 2024 15:01:47 +1000
-Subject: [PATCH] Fix Use-After-Free issue for Regexp
-
-Co-authored-by: Isaac Peka <7493006+isaac-peka@users.noreply.github.com>
-
-Upstream-Status: Backport [https://github.com/ruby/ruby/commit/989a2355808a63fc45367785c82ffd46d18c900a]
-CVE: CVE-2024-27282
-Signed-off-by: Ashish Sharma <asharma@mvista.com>
-
- regexec.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/regexec.c b/regexec.c
-index 73694ab14a0b0a..140691ad42489f 100644
---- a/regexec.c
-+++ b/regexec.c
-@@ -3449,8 +3449,8 @@ match_at(regex_t* reg, const UChar* str, const UChar* end,
-     CASE(OP_MEMORY_END_PUSH_REC)  MOP_IN(OP_MEMORY_END_PUSH_REC);
-       GET_MEMNUM_INC(mem, p);
-       STACK_GET_MEM_START(mem, stkp); /* should be before push mem-end. */
--      STACK_PUSH_MEM_END(mem, s);
-       mem_start_stk[mem] = GET_STACK_INDEX(stkp);
-+      STACK_PUSH_MEM_END(mem, s);
-       MOP_OUT;
-       JUMP;
- 
diff --git a/meta/recipes-devtools/ruby/ruby/remove_has_include_macros.patch b/meta/recipes-devtools/ruby/ruby/remove_has_include_macros.patch
deleted file mode 100644
index b78e3db892..0000000000
--- a/meta/recipes-devtools/ruby/ruby/remove_has_include_macros.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From e74b57febec9bd806e29025e6eeb8091e7021d75 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 26 Jan 2020 11:27:40 -0800
-Subject: [PATCH] Filter out __has_include* compiler defines
-
-They are internal to compiler and this header is later on includes in C
-files, but newer gcc >= 10 complains about it.
-
-error in initial header file:
-| In file included from /tmp/20200124-86625-14hiju4.c:1:
-| /tmp/20200124-86625-11y6l6i.h:13849:9: error: "__has_include" cannot be used as a macro name
-| 13849 | #define __has_include __has_include
-|       |         ^~~~~~~~~~~~~
-| compilation terminated due to -Wfatal-errors.
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
- common.mk | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/common.mk b/common.mk
-index 664f750..3b8fbe6 100644
---- a/common.mk
-+++ b/common.mk
-@@ -238,6 +238,8 @@ $(TIMESTAMPDIR)/$(MJIT_HEADER:.h=)$(MJIT_HEADER_SUFFIX).time: probes.h vm.$(OBJE
- 	$(ECHO) building $(@F:.time=.h)
- 	$(Q)$(MINIRUBY) $(tooldir)/mjit_tabs.rb "$(MJIT_TABS)" \
- 		$(CPP) -DMJIT_HEADER $(MJIT_HEADER_FLAGS) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(srcdir)/vm.c $(CPPOUTFLAG)$(@F:.time=.h).new
-+	$(Q)sed -i -e "/#define __has_include __has_include/d" $(@F:.time=.h).new
-+	$(Q)sed -i -e "/#define __has_include_next __has_include_next/d" $(@F:.time=.h).new
- 	$(Q) $(IFCHANGE) "--timestamp=$@" $(@F:.time=.h) $(@F:.time=.h).new
- 
- $(MJIT_HEADER:.h=)$(MJIT_HEADER_SUFFIX).h: $(TIMESTAMPDIR)/$(MJIT_HEADER:.h=)$(MJIT_HEADER_SUFFIX).time
diff --git a/meta/recipes-devtools/ruby/ruby_3.2.2.bb b/meta/recipes-devtools/ruby/ruby_3.3.5.bb
similarity index 88%
rename from meta/recipes-devtools/ruby/ruby_3.2.2.bb
rename to meta/recipes-devtools/ruby/ruby_3.3.5.bb
index 508154dad5..fb0d711765 100644
--- a/meta/recipes-devtools/ruby/ruby_3.2.2.bb
+++ b/meta/recipes-devtools/ruby/ruby_3.3.5.bb
@@ -10,7 +10,7 @@ LICENSE = "Ruby | BSD-2-Clause | BSD-3-Clause | GPL-2.0-only | ISC | MIT"
 LIC_FILES_CHKSUM = "file://COPYING;md5=5b8c87559868796979806100db3f3805 \
                     file://BSDL;md5=8b50bc6de8f586dc66790ba11d064d75 \
                     file://GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
-                    file://LEGAL;md5=bcd74b47bbaf2051c5e49811a5faa97a \
+                    file://LEGAL;md5=81e6a4d81533b9263da4c3485a0ad883 \
                     "
 
 DEPENDS = "zlib openssl libyaml gdbm readline libffi"
@@ -20,21 +20,12 @@ DEPENDS:append:class-nativesdk = " ruby-native"
 SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}"
 SRC_URI = "http://cache.ruby-lang.org/pub/ruby/${SHRT_VER}/ruby-${PV}.tar.gz \
            file://0001-extmk-fix-cross-compilation-of-external-gems.patch \
-           file://0002-Obey-LDFLAGS-for-the-link-of-libruby.patch \
-           file://remove_has_include_macros.patch \
            file://run-ptest \
-           file://0001-template-Makefile.in-do-not-write-host-cross-cc-item.patch \
-           file://0002-template-Makefile.in-filter-out-f-prefix-map.patch \
            file://0003-rdoc-build-reproducible-documentation.patch \
            file://0004-lib-mkmf.rb-sort-list-of-object-files-in-generated-M.patch \
            file://0005-Mark-Gemspec-reproducible-change-fixing-784225-too.patch \
            file://0006-Make-gemspecs-reproducible.patch \
            file://0001-vm_dump.c-Define-REG_S1-and-REG_S2-for-musl-riscv.patch \
-           file://0001-fiddle-Use-C11-_Alignof-to-define-ALIGN_OF-when-poss.patch \
-           file://CVE-2023-36617_1.patch \
-           file://CVE-2023-36617_2.patch \
-           file://CVE-2024-27281.patch \
-           file://CVE-2024-27282.patch \
            "
 UPSTREAM_CHECK_URI = "https://www.ruby-lang.org/en/downloads/"
 
@@ -55,7 +46,7 @@ do_configure:prepend() {
 
 DEPENDS:append:libc-musl = " libucontext"
 
-SRC_URI[sha256sum] = "96c57558871a6748de5bc9f274e93f4b5aad06cd8f37befa0e8d94e7b8a423bc"
+SRC_URI[sha256sum] = "3781a3504222c2f26cb4b9eb9c1a12dbf4944d366ce24a9ff8cf99ecbce75196"
 
 PACKAGECONFIG ??= ""
 PACKAGECONFIG += "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
-- 
2.34.1



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

* [OE-core][scarthgap 06/18] ptest-runner: Update 2.4.4 -> 2.4.5
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (4 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 05/18] ruby: upgrade 3.2.2 -> 3.3.5 Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 07/18] sysvinit: take release tarballs from github Steve Sakoman
                   ` (11 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Jörg Sommer <joerg.sommer@navimatix.de>

Changelog:

aea9f42 ptest_list_remove: Fix pointer adjustment of prev and next

Signed-off-by: Jörg Sommer <joerg.sommer@navimatix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f70ec9bcd379b5fc4c85d7479d42789c2e22f4a9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 .../{ptest-runner_2.4.4.bb => ptest-runner_2.4.5.bb}            | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
 rename meta/recipes-support/ptest-runner/{ptest-runner_2.4.4.bb => ptest-runner_2.4.5.bb} (95%)

diff --git a/meta/recipes-support/ptest-runner/ptest-runner_2.4.4.bb b/meta/recipes-support/ptest-runner/ptest-runner_2.4.5.bb
similarity index 95%
rename from meta/recipes-support/ptest-runner/ptest-runner_2.4.4.bb
rename to meta/recipes-support/ptest-runner/ptest-runner_2.4.5.bb
index 2263e07280..d28ae7ca91 100644
--- a/meta/recipes-support/ptest-runner/ptest-runner_2.4.4.bb
+++ b/meta/recipes-support/ptest-runner/ptest-runner_2.4.5.bb
@@ -7,7 +7,7 @@ HOMEPAGE = "http://git.yoctoproject.org/cgit/cgit.cgi/ptest-runner2/about/"
 LICENSE = "GPL-2.0-or-later"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe"
 
-SRCREV = "95f528cff0bc52903b98c292d4a322fcffa74471"
+SRCREV = "aea9f42f87f2a78a973ae22cade8e45259f754e1"
 PV .= "+git"
 
 SRC_URI = "git://git.yoctoproject.org/ptest-runner2;branch=master;protocol=https \
-- 
2.34.1



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

* [OE-core][scarthgap 07/18] sysvinit: take release tarballs from github
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (5 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 06/18] ptest-runner: Update 2.4.4 -> 2.4.5 Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 08/18] libpcre2: Update base uri PhilipHazel -> PCRE2Project Steve Sakoman
                   ` (10 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Alexander Kanavin <alex@linutronix.de>

Upstream no longer publishes them on savannah, e.g.
release announcement for 3.10:
https://lists.gnu.org/archive/html/sysvinit-devel/2024-07/msg00016.html

There's been several new versions since:
https://github.com/slicer69/sysvinit/releases

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6cb71eaf3d225de14e62cfc1b76dc8094f8f4aed)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 meta/recipes-core/sysvinit/sysvinit_3.04.bb | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-core/sysvinit/sysvinit_3.04.bb b/meta/recipes-core/sysvinit/sysvinit_3.04.bb
index 6a612468f3..1dd5f575d2 100644
--- a/meta/recipes-core/sysvinit/sysvinit_3.04.bb
+++ b/meta/recipes-core/sysvinit/sysvinit_3.04.bb
@@ -9,7 +9,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
 
 RDEPENDS:${PN} = "${PN}-inittab"
 
-SRC_URI = "${SAVANNAH_GNU_MIRROR}/sysvinit/sysvinit-${PV}.tar.xz \
+GITHUB_BASE_URI = "https://github.com/slicer69/${BPN}/releases/"
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BP}.tar.xz \
            file://install.patch \
            file://crypt-lib.patch \
            file://pidof-add-m-option.patch \
@@ -27,7 +28,7 @@ SRC_URI[sha256sum] = "2a621fe6e4528bc91308b74867ddaaebbdf7753f02395c0c5bae817bd2
 
 S = "${WORKDIR}/sysvinit-${PV}"
 
-inherit update-alternatives features_check
+inherit update-alternatives features_check github-releases
 DEPENDS:append = " update-rc.d-native base-passwd virtual/crypt"
 do_package_setscene[depends] = "${MLPREFIX}base-passwd:do_populate_sysroot"
 
-- 
2.34.1



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

* [OE-core][scarthgap 08/18] libpcre2: Update base uri PhilipHazel -> PCRE2Project
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (6 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 07/18] sysvinit: take release tarballs from github Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 09/18] license: Fix directory layout issues Steve Sakoman
                   ` (9 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Khem Raj <raj.khem@gmail.com>

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit bd6d18228835773163a085070651e13ed961d66d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 meta/recipes-support/libpcre/libpcre2_10.43.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-support/libpcre/libpcre2_10.43.bb b/meta/recipes-support/libpcre/libpcre2_10.43.bb
index fd0bd79212..f744df88fa 100644
--- a/meta/recipes-support/libpcre/libpcre2_10.43.bb
+++ b/meta/recipes-support/libpcre/libpcre2_10.43.bb
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://LICENCE;md5=321a5eb46acae6b6c1ff2c7a866d836a"
 
 SRC_URI = "${GITHUB_BASE_URI}/download/pcre2-${PV}/pcre2-${PV}.tar.bz2"
 
-GITHUB_BASE_URI = "https://github.com/PhilipHazel/pcre2/releases"
+GITHUB_BASE_URI = "https://github.com/PCRE2Project/pcre2/releases"
 UPSTREAM_CHECK_REGEX = "releases/tag/pcre2-(?P<pver>\d+(\.\d+)+)$"
 
 SRC_URI[sha256sum] = "e2a53984ff0b07dfdb5ae4486bbb9b21cca8e7df2434096cc9bf1b728c350bcb"
-- 
2.34.1



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

* [OE-core][scarthgap 09/18] license: Fix directory layout issues
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (7 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 08/18] libpcre2: Update base uri PhilipHazel -> PCRE2Project Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 10/18] virglrenderer: Add patch to fix -int-conversion build issue Steve Sakoman
                   ` (8 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Richard Purdie <richard.purdie@linuxfoundation.org>

There are several issues:

a) pointless empty directories were being created as a path wasn't
   fixed in a previous commit
b) SSTATE_PKGARCH wasn't being captured into the task signature
   since it is in the ignore list by default. We want to capture
   the absolute value, not the dependencies
c) with those issues fixed, cross/native issues became apparent so
   those need to be fixed too.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

Backport from oe-core master: f68aed302a0e4b86fb8c16a6ef4e7295bed48b86

Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 meta/classes-global/license.bbclass | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/meta/classes-global/license.bbclass b/meta/classes-global/license.bbclass
index b2e0d3faba..d7c5d08a77 100644
--- a/meta/classes-global/license.bbclass
+++ b/meta/classes-global/license.bbclass
@@ -18,8 +18,14 @@ LICENSE_CREATE_PACKAGE ??= "0"
 LICENSE_PACKAGE_SUFFIX ??= "-lic"
 LICENSE_FILES_DIRECTORY ??= "${datadir}/licenses/"
 
+LICENSE_DEPLOY_PATHCOMPONENT = "${SSTATE_PKGARCH}"
+LICENSE_DEPLOY_PATHCOMPONENT:class-cross = "native"
+LICENSE_DEPLOY_PATHCOMPONENT:class-native = "native"
+# Ensure the *value* of SSTATE_PKGARCH is captured as it is used in the output paths
+LICENSE_DEPLOY_PATHCOMPONENT[vardepvalue] += "${LICENSE_DEPLOY_PATHCOMPONENT}"
+
 addtask populate_lic after do_patch before do_build
-do_populate_lic[dirs] = "${LICSSTATEDIR}/${PN}"
+do_populate_lic[dirs] = "${LICSSTATEDIR}/${LICENSE_DEPLOY_PATHCOMPONENT}/${PN}"
 do_populate_lic[cleandirs] = "${LICSSTATEDIR}"
 
 python do_populate_lic() {
@@ -29,7 +35,7 @@ python do_populate_lic() {
     lic_files_paths = find_license_files(d)
 
     # The base directory we wrangle licenses to
-    destdir = os.path.join(d.getVar('LICSSTATEDIR'), d.getVar('SSTATE_PKGARCH'), d.getVar('PN'))
+    destdir = os.path.join(d.getVar('LICSSTATEDIR'), d.getVar('LICENSE_DEPLOY_PATHCOMPONENT'), d.getVar('PN'))
     copy_license_files(lic_files_paths, destdir)
     info = get_recipe_info(d)
     with open(os.path.join(destdir, "recipeinfo"), "w") as f:
-- 
2.34.1



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

* [OE-core][scarthgap 10/18] virglrenderer: Add patch to fix -int-conversion build issue
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (8 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 09/18] license: Fix directory layout issues Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 11/18] lib/oe/package-manager: skip processing installed-pkgs with empty globs Steve Sakoman
                   ` (7 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Purushottam Choudhary <purushottam27.kumar@lge.com>

Fix int conversion related error during compilation
as some of the platforms where EGLNativeDisplayType
is an int instead of a pointer with GCC-14.

Signed-off-by: Purushottam Choudhary <purushottam27.kumar@lge.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f71f4936a273262343e34f278e6cfcc1e419aea3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 ...nversion-fatal-build-error-with-GCC-.patch | 41 +++++++++++++++++++
 .../virglrenderer/virglrenderer_1.0.1.bb      |  1 +
 2 files changed, 42 insertions(+)
 create mode 100644 meta/recipes-graphics/virglrenderer/virglrenderer/0001-vrend-Fix-int-conversion-fatal-build-error-with-GCC-.patch

diff --git a/meta/recipes-graphics/virglrenderer/virglrenderer/0001-vrend-Fix-int-conversion-fatal-build-error-with-GCC-.patch b/meta/recipes-graphics/virglrenderer/virglrenderer/0001-vrend-Fix-int-conversion-fatal-build-error-with-GCC-.patch
new file mode 100644
index 0000000000..9c49ee512a
--- /dev/null
+++ b/meta/recipes-graphics/virglrenderer/virglrenderer/0001-vrend-Fix-int-conversion-fatal-build-error-with-GCC-.patch
@@ -0,0 +1,41 @@
+From 464deabe4d1bfce6b8f414ab0945d9a62b66ddd4 Mon Sep 17 00:00:00 2001
+From: Purushottam Choudhary <purushottam27.kumar@lge.com>
+Date: Tue, 8 Oct 2024 11:47:21 +0530
+Subject: [PATCH] vrend: Fix int-conversion fatal build error with GCC-14
+
+Getting below error int conversion during compilation as one the
+platforms where EGLNativeDisplayType is an int instead of a pointer.
+
+| ../git/src/vrend_winsys_egl.c: In function 'virgl_egl_init':
+| ../git/src/vrend_winsys_egl.c:364:62: error: passing argument 2 of 'egl->funcs.epoxy_eglGetPlatformDisplay' makes pointer from
+|   364 |                                                              (EGLNativeDisplayType)egl->gbm->device, NULL);
+|       |                                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+|       |                                                              |
+|       |                                                              int
+| ../git/src/vrend_winsys_egl.c:364:62: note: expected 'void *' but argument is of type 'int'
+
+Upstream-Status: Backport [https://gitlab.freedesktop.org/virgl/virglrenderer/-/commit/464deabe4d1bfce6b8f414ab0945d9a62b66ddd4]
+
+Signed-off-by: Purushottam Choudhary <purushottam27.kumar@lge.com>
+Part-of: <https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/1440>
+---
+
+ src/vrend_winsys_egl.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/vrend_winsys_egl.c b/src/vrend_winsys_egl.c
+index 9d9f410c..8750f6b2 100644
+--- a/src/vrend_winsys_egl.c
++++ b/src/vrend_winsys_egl.c
+@@ -361,7 +361,7 @@ struct virgl_egl *virgl_egl_init(EGLNativeDisplayType display_id, bool surfacele
+ #ifdef ENABLE_GBM
+       else
+          egl->egl_display = egl->funcs.eglGetPlatformDisplay(EGL_PLATFORM_GBM_KHR,
+-                                                             (EGLNativeDisplayType)egl->gbm->device, NULL);
++                                                             (EGLNativeDisplayType*)egl->gbm->device, NULL);
+ #endif
+    } else {
+ #ifdef ENABLE_GBM
+-- 
+2.34.1
+
diff --git a/meta/recipes-graphics/virglrenderer/virglrenderer_1.0.1.bb b/meta/recipes-graphics/virglrenderer/virglrenderer_1.0.1.bb
index 0501b0c59c..87f25a3461 100644
--- a/meta/recipes-graphics/virglrenderer/virglrenderer_1.0.1.bb
+++ b/meta/recipes-graphics/virglrenderer/virglrenderer_1.0.1.bb
@@ -12,6 +12,7 @@ DEPENDS = "libdrm libepoxy virtual/egl virtual/libgbm"
 SRCREV = "690680e5f0f952e22424fca1538c1b24457a0868"
 SRC_URI = "git://gitlab.freedesktop.org/virgl/virglrenderer.git;branch=main;protocol=https \
            file://0001-meson.build-use-python3-directly-for-python.patch \
+           file://0001-vrend-Fix-int-conversion-fatal-build-error-with-GCC-.patch \
            "
 
 S = "${WORKDIR}/git"
-- 
2.34.1



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

* [OE-core][scarthgap 11/18] lib/oe/package-manager: skip processing installed-pkgs with empty globs
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (9 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 10/18] virglrenderer: Add patch to fix -int-conversion build issue Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 12/18] makedevs: Fix matching uid/gid Steve Sakoman
                   ` (6 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Claus Stovgaard <claus.stovgaard@gmail.com>

We can skip processing the installed-pkgs file if globs is empty.
This is the case if self.d.getVar for IMAGE_INSTALL_COMPLEMENTARY
returns an empty string. If globs is an empty string the result from
processing with empty glob in oe-pkgdata-util will always be 0 packages
to install.

Instead of return early on this we just skip and still generate the
locale archive if needed.

Signed-off-by: Claus Stovgaard <claus.stovgaard@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 160c45c83d5addf01e4834cf896af871bd6fca7f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 meta/lib/oe/package_manager/__init__.py | 76 ++++++++++++-------------
 1 file changed, 37 insertions(+), 39 deletions(-)

diff --git a/meta/lib/oe/package_manager/__init__.py b/meta/lib/oe/package_manager/__init__.py
index d3b2317894..2100a97c12 100644
--- a/meta/lib/oe/package_manager/__init__.py
+++ b/meta/lib/oe/package_manager/__init__.py
@@ -365,45 +365,43 @@ class PackageManager(object, metaclass=ABCMeta):
                 for complementary_linguas in (self.d.getVar('IMAGE_LINGUAS_COMPLEMENTARY') or "").split():
                     globs += (" " + complementary_linguas) % lang
 
-        if globs is None:
-            return
-
-        # we need to write the list of installed packages to a file because the
-        # oe-pkgdata-util reads it from a file
-        with tempfile.NamedTemporaryFile(mode="w+", prefix="installed-pkgs") as installed_pkgs:
-            pkgs = self.list_installed()
-
-            provided_pkgs = set()
-            for pkg in pkgs.values():
-                provided_pkgs |= set(pkg.get('provs', []))
-
-            output = oe.utils.format_pkg_list(pkgs, "arch")
-            installed_pkgs.write(output)
-            installed_pkgs.flush()
-
-            cmd = ["oe-pkgdata-util",
-                   "-p", self.d.getVar('PKGDATA_DIR'), "glob", installed_pkgs.name,
-                   globs]
-            exclude = self.d.getVar('PACKAGE_EXCLUDE_COMPLEMENTARY')
-            if exclude:
-                cmd.extend(['--exclude=' + '|'.join(exclude.split())])
-            try:
-                bb.note('Running %s' % cmd)
-                proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
-                stdout, stderr = proc.communicate()
-                if stderr: bb.note(stderr.decode("utf-8"))
-                complementary_pkgs = stdout.decode("utf-8")
-                complementary_pkgs = set(complementary_pkgs.split())
-                skip_pkgs = sorted(complementary_pkgs & provided_pkgs)
-                install_pkgs = sorted(complementary_pkgs - provided_pkgs)
-                bb.note("Installing complementary packages ... %s (skipped already provided packages %s)" % (
-                    ' '.join(install_pkgs),
-                    ' '.join(skip_pkgs)))
-                self.install(install_pkgs, hard_depends_only=True)
-            except subprocess.CalledProcessError as e:
-                bb.fatal("Could not compute complementary packages list. Command "
-                         "'%s' returned %d:\n%s" %
-                         (' '.join(cmd), e.returncode, e.output.decode("utf-8")))
+        if globs:
+            # we need to write the list of installed packages to a file because the
+            # oe-pkgdata-util reads it from a file
+            with tempfile.NamedTemporaryFile(mode="w+", prefix="installed-pkgs") as installed_pkgs:
+                pkgs = self.list_installed()
+
+                provided_pkgs = set()
+                for pkg in pkgs.values():
+                    provided_pkgs |= set(pkg.get('provs', []))
+
+                output = oe.utils.format_pkg_list(pkgs, "arch")
+                installed_pkgs.write(output)
+                installed_pkgs.flush()
+
+                cmd = ["oe-pkgdata-util",
+                    "-p", self.d.getVar('PKGDATA_DIR'), "glob", installed_pkgs.name,
+                    globs]
+                exclude = self.d.getVar('PACKAGE_EXCLUDE_COMPLEMENTARY')
+                if exclude:
+                    cmd.extend(['--exclude=' + '|'.join(exclude.split())])
+                try:
+                    bb.note('Running %s' % cmd)
+                    proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+                    stdout, stderr = proc.communicate()
+                    if stderr: bb.note(stderr.decode("utf-8"))
+                    complementary_pkgs = stdout.decode("utf-8")
+                    complementary_pkgs = set(complementary_pkgs.split())
+                    skip_pkgs = sorted(complementary_pkgs & provided_pkgs)
+                    install_pkgs = sorted(complementary_pkgs - provided_pkgs)
+                    bb.note("Installing complementary packages ... %s (skipped already provided packages %s)" % (
+                        ' '.join(install_pkgs),
+                        ' '.join(skip_pkgs)))
+                    self.install(install_pkgs, hard_depends_only=True)
+                except subprocess.CalledProcessError as e:
+                    bb.fatal("Could not compute complementary packages list. Command "
+                            "'%s' returned %d:\n%s" %
+                            (' '.join(cmd), e.returncode, e.output.decode("utf-8")))
 
         if self.d.getVar('IMAGE_LOCALES_ARCHIVE') == '1':
             target_arch = self.d.getVar('TARGET_ARCH')
-- 
2.34.1



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

* [OE-core][scarthgap 12/18] makedevs: Fix matching uid/gid
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (10 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 11/18] lib/oe/package-manager: skip processing installed-pkgs with empty globs Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 13/18] runqemu: Fix detection of -serial parameter Steve Sakoman
                   ` (5 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Jaeyoon Jung <jaeyoon.jung@lge.com>

Correct the length to compare in convert2guid() to fix an issue where it
ends up with returning a wrong id that matches partially. Also fix the
length of usr_buf and grp_buf in interpret_table_entry() which are used
as arguments of convert2guid().

Signed-off-by: Jaeyoon Jung <jaeyoon.jung@lge.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ca9d193a21e6b8669c4da1a68cd5e0791bb80a4b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 meta/recipes-devtools/makedevs/makedevs/makedevs.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/meta/recipes-devtools/makedevs/makedevs/makedevs.c b/meta/recipes-devtools/makedevs/makedevs/makedevs.c
index 2254b54891..411a669153 100644
--- a/meta/recipes-devtools/makedevs/makedevs/makedevs.c
+++ b/meta/recipes-devtools/makedevs/makedevs/makedevs.c
@@ -202,7 +202,7 @@ static unsigned long convert2guid(char *id_buf, struct name_id *search_list)
 		// Check for bad user/group name
 		node = search_list;
 		while (node != NULL) {
-			if (!strncmp(node->name, id_buf, strlen(id_buf))) {
+			if (!strncmp(node->name, id_buf, MAX_ID_LEN)) {
 				fprintf(stderr, "WARNING: Bad user/group name %s detected\n", id_buf);
 				break;
 			}
@@ -212,7 +212,7 @@ static unsigned long convert2guid(char *id_buf, struct name_id *search_list)
 	} else {
 		node = search_list;
 		while (node != NULL) {
-			if (!strncmp(node->name, id_buf, strlen(id_buf)))
+			if (!strncmp(node->name, id_buf, MAX_ID_LEN))
 				return node->id;
 			node = node->next;
 		}
@@ -362,13 +362,13 @@ static void add_new_fifo(char *name, char *path, unsigned long uid,
 static int interpret_table_entry(char *line)
 {
 	char *name;
-	char usr_buf[MAX_ID_LEN];
-	char grp_buf[MAX_ID_LEN];
-	char path[4096], type;
+	char usr_buf[MAX_ID_LEN+1];
+	char grp_buf[MAX_ID_LEN+1];
+	char path[PATH_MAX], type;
 	unsigned long mode = 0755, uid = 0, gid = 0, major = 0, minor = 0;
 	unsigned long start = 0, increment = 1, count = 0;
 
-	if (0 > sscanf(line, "%4095s %c %lo %39s %39s %lu %lu %lu %lu %lu", path,
+	if (0 > sscanf(line, "%4095s %c %lo %40s %40s %lu %lu %lu %lu %lu", path,
 		    &type, &mode, usr_buf, grp_buf, &major, &minor, &start,
 		    &increment, &count))
 	{
-- 
2.34.1



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

* [OE-core][scarthgap 13/18] runqemu: Fix detection of -serial parameter
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (11 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 12/18] makedevs: Fix matching uid/gid Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 14/18] uboot-sign: fix counters in do_uboot_assemble_fitimage Steve Sakoman
                   ` (4 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Jörg Sommer <joerg.sommer@navimatix.de>

The pattern `-serial` matches also `-device usb-serial` and `virtio-serial`
which are not the desired parameter. This causes the serial console ttyS1 is
missing and Systemd's getty@ttyS1 fails constantly.

Signed-off-by: Jörg Sommer <joerg.sommer@navimatix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b6d035894120b45b42f146ab5b3110522c58d178)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 scripts/runqemu | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/scripts/runqemu b/scripts/runqemu
index fe395d1bc6..2ab36fd03d 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -1487,7 +1487,7 @@ to your build configuration.
         # If no serial or serialtcp options were specified, only ttyS0 is created
         # and sysvinit shows an error trying to enable ttyS1:
         #     INIT: Id "S1" respawning too fast: disabled for 5 minutes
-        serial_num = len(re.findall("-serial", self.qemu_opt))
+        serial_num = len(re.findall("(^| )-serial ", self.qemu_opt))
 
         # Assume if the user passed serial options, they know what they want
         # and pad to two devices
@@ -1507,7 +1507,7 @@ to your build configuration.
 
                 self.qemu_opt += " %s" % self.get("QB_SERIAL_OPT")
 
-        serial_num = len(re.findall("-serial", self.qemu_opt))
+        serial_num = len(re.findall("(^| )-serial ", self.qemu_opt))
         if serial_num < 2:
             self.qemu_opt += " -serial null"
 
-- 
2.34.1



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

* [OE-core][scarthgap 14/18] uboot-sign: fix counters in do_uboot_assemble_fitimage
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (12 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 13/18] runqemu: Fix detection of -serial parameter Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 15/18] recipes-bsp: usbutils: Fix usb-devices command using busybox Steve Sakoman
                   ` (3 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Paul Gerber <paul.gerber@ew.tq-group.com>

Without unsetting `j` and `k` for each `UBOOT_MACHINE`, `j` and `k`
are incremented in the same frequency as `i` and therefore `$j -eq $i`
and `$k -eq $i` is always true for the first `type` from `UBOOT_CONFIG`
and the first `binary` from `UBOOT_BINARIES`.

Signed-off-by: Paul Gerber <paul.gerber@ew.tq-group.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3aef55c7ceb654b0012f20618bfd6ead1ef578b6)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 meta/classes-recipe/uboot-sign.bbclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/classes-recipe/uboot-sign.bbclass b/meta/classes-recipe/uboot-sign.bbclass
index c8e097f2f2..3e5f5dcf66 100644
--- a/meta/classes-recipe/uboot-sign.bbclass
+++ b/meta/classes-recipe/uboot-sign.bbclass
@@ -356,8 +356,9 @@ do_uboot_assemble_fitimage() {
 	fi
 
 	if [ -n "${UBOOT_CONFIG}" ]; then
-		unset i j k
+		unset i
 		for config in ${UBOOT_MACHINE}; do
+			unset j k
 			i=$(expr $i + 1);
 			for type in ${UBOOT_CONFIG}; do
 				j=$(expr $j + 1);
-- 
2.34.1



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

* [OE-core][scarthgap 15/18] recipes-bsp: usbutils: Fix usb-devices command using busybox
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (13 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 14/18] uboot-sign: fix counters in do_uboot_assemble_fitimage Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 16/18] libsdl2: Fix non-deterministic configure option for libsamplerate Steve Sakoman
                   ` (2 subsequent siblings)
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Teresa Remmet <t.remmet@phytec.de>

Unknown find parameter -printf makes usb-devices script unusable with
busybox. Replace the parameter to fix this issue.

Signed-off-by: Teresa Remmet <t.remmet@phytec.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c7c9f827e914b7c27856d995da553a2e41372321)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 ...devices-Fix-usb-devices-with-busybox.patch | 37 +++++++++++++++++++
 meta/recipes-bsp/usbutils/usbutils_017.bb     |  1 +
 2 files changed, 38 insertions(+)
 create mode 100755 meta/recipes-bsp/usbutils/usbutils/0001-usb-devices-Fix-usb-devices-with-busybox.patch

diff --git a/meta/recipes-bsp/usbutils/usbutils/0001-usb-devices-Fix-usb-devices-with-busybox.patch b/meta/recipes-bsp/usbutils/usbutils/0001-usb-devices-Fix-usb-devices-with-busybox.patch
new file mode 100755
index 0000000000..dbe5d7c18b
--- /dev/null
+++ b/meta/recipes-bsp/usbutils/usbutils/0001-usb-devices-Fix-usb-devices-with-busybox.patch
@@ -0,0 +1,37 @@
+From da155d965a34b5c5770dc30fa52eb7ef405f3a30 Mon Sep 17 00:00:00 2001
+From: Teresa Remmet <t.remmet@phytec.de>
+Date: Thu, 5 Sep 2024 08:37:48 +0200
+Subject: [PATCH] usb-devices: Fix usb-devices with busybox
+
+The busybox find command is missing the -printf parameter leading to
+the error:
+
+find: unrecognized: -printf
+
+Replace the parameter with sed.
+
+This patch was originally created by Daniel Fancsali.
+
+Upstream-Status: Backport [https://github.com/gregkh/usbutils/commit/da155d965a34b5c5770dc30fa52eb7ef405f3a30]
+
+Signed-off-by: Teresa Remmet <t.remmet@phytec.de>
+---
+ usb-devices | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/usb-devices b/usb-devices
+index 5f60ad5a1ed0..51f48b4ad628 100755
+--- a/usb-devices
++++ b/usb-devices
+@@ -192,7 +192,7 @@ if [ ! -d /sys/bus ]; then
+ 	exit 1
+ fi
+ 
+-for device in $(find /sys/bus/usb/devices -name 'usb*' -printf '%f\n' | sort -V)
++for device in $(find /sys/bus/usb/devices -name 'usb*' | sed -E 's#^.*/##g' | sort -V)
+ do
+ 	print_device "/sys/bus/usb/devices/$device" 0 0 0
+ done
+-- 
+2.34.1
+
diff --git a/meta/recipes-bsp/usbutils/usbutils_017.bb b/meta/recipes-bsp/usbutils/usbutils_017.bb
index a2e340ea4f..83d5c7287d 100644
--- a/meta/recipes-bsp/usbutils/usbutils_017.bb
+++ b/meta/recipes-bsp/usbutils/usbutils_017.bb
@@ -13,6 +13,7 @@ DEPENDS = "libusb1 virtual/libiconv udev"
 
 SRC_URI = "${KERNELORG_MIRROR}/linux/utils/usb/usbutils/usbutils-${PV}.tar.gz \
            file://0001-usbutils.pc.in-Fix-Cflags-entry.patch \
+           file://0001-usb-devices-Fix-usb-devices-with-busybox.patch \
           "
 SRC_URI[sha256sum] = "f704c4cb78a060db88b43aac6ebfd3d93c2c5cf1d6dd0e42936faaf00814ab00"
 
-- 
2.34.1



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

* [OE-core][scarthgap 16/18] libsdl2: Fix non-deterministic configure option for libsamplerate
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (14 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 15/18] recipes-bsp: usbutils: Fix usb-devices command using busybox Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 17/18] image_qa: fix error handling Steve Sakoman
  2024-10-15 18:50 ` [OE-core][scarthgap 18/18] meta-ide-support: Mark recipe as MACHINE-specific Steve Sakoman
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Richard Purdie <richard.purdie@linuxfoundation.org>

The libsamplerate option was floating and being enabled on some systems
and not others. Fix this to be deterministic.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 61455a839e568a3ae7e059ea95c02a1c88d39e1a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 meta/recipes-graphics/libsdl2/libsdl2_2.30.1.bb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-graphics/libsdl2/libsdl2_2.30.1.bb b/meta/recipes-graphics/libsdl2/libsdl2_2.30.1.bb
index 891e91190a..7a14104671 100644
--- a/meta/recipes-graphics/libsdl2/libsdl2_2.30.1.bb
+++ b/meta/recipes-graphics/libsdl2/libsdl2_2.30.1.bb
@@ -67,6 +67,7 @@ PACKAGECONFIG[directfb]   = "-DSDL_DIRECTFB=ON,-DSDL_DIRECTFB=OFF,directfb,direc
 PACKAGECONFIG[gles2]      = "-DSDL_OPENGLES=ON,-DSDL_OPENGLES=OFF,virtual/libgles2"
 PACKAGECONFIG[jack]       = "-DSDL_JACK=ON,-DSDL_JACK=OFF,jack"
 PACKAGECONFIG[kmsdrm]     = "-DSDL_KMSDRM=ON,-DSDL_KMSDRM=OFF,libdrm virtual/libgbm"
+PACKAGECONFIG[libsamplerate] = "-DSDL_LIBSAMPLERATE=ON,-DSDL_LIBSAMPLERATE=OFF,libsamplerate0"
 # The hidraw support doesn't catch Xbox, PS4 and Nintendo controllers,
 #  so we'll just use libusb when it's available.
 PACKAGECONFIG[libusb] = ",,libusb1"
-- 
2.34.1



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

* [OE-core][scarthgap 17/18] image_qa: fix error handling
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (15 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 16/18] libsdl2: Fix non-deterministic configure option for libsamplerate Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  2024-10-15 22:41   ` Richard Purdie
  2024-10-15 18:50 ` [OE-core][scarthgap 18/18] meta-ide-support: Mark recipe as MACHINE-specific Steve Sakoman
  17 siblings, 1 reply; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Louis Rannou <louis.rannou@non.se.com>

Make ImageQAFailed inherit BBHandledException so exceptions raised in tests are
catched when the actual test function is executed by bb.utils.better_exec.

Change the do_image_qa tasks so errors are handled with oe.qa.handle_error. Add
some comment to explain this requires to list the test in ERROR_QA or WARN_QA.

[YOCTO #14807]
https://bugzilla.yoctoproject.org/show_bug.cgi?id=14807

Signed-off-by: Louis Rannou <louis.rannou@non.se.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 905e224849fbbed1719e0add231b00e2d570b3b4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 meta/classes-recipe/image.bbclass | 11 ++++++-----
 meta/lib/oe/utils.py              |  2 +-
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/meta/classes-recipe/image.bbclass b/meta/classes-recipe/image.bbclass
index 28be6c6362..a682b5f3b2 100644
--- a/meta/classes-recipe/image.bbclass
+++ b/meta/classes-recipe/image.bbclass
@@ -308,23 +308,24 @@ addtask do_image_complete_setscene
 #
 # The functions should use ${IMAGE_ROOTFS} to find the unpacked rootfs
 # directory, which if QA passes will be the basis for the images.
+#
+# The functions should use oe.utils.ImageQAFailed(description, name) to raise
+# errors. The name must be listed in ERROR_QA or WARN_QA to prompt.
 fakeroot python do_image_qa () {
     from oe.utils import ImageQAFailed
 
     qa_cmds = (d.getVar('IMAGE_QA_COMMANDS') or '').split()
-    qamsg = ""
 
     for cmd in qa_cmds:
         try:
             bb.build.exec_func(cmd, d)
         except oe.utils.ImageQAFailed as e:
-            qamsg = qamsg + '\tImage QA function %s failed: %s\n' % (e.name, e.description)
+            qamsg = 'Image QA function %s failed: %s\n' % (e.name, e.description)
+            oe.qa.handle_error(e.name, qamsg, d)
         except Exception as e:
             qamsg = qamsg + '\tImage QA function %s failed: %s\n' % (cmd, e)
 
-    if qamsg:
-        imgname = d.getVar('IMAGE_NAME')
-        bb.fatal("QA errors found whilst validating image: %s\n%s" % (imgname, qamsg))
+    oe.qa.exit_if_errors(d)
 }
 addtask do_image_qa after do_rootfs before do_image
 
diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
index 14a7d07ef0..83f1440887 100644
--- a/meta/lib/oe/utils.py
+++ b/meta/lib/oe/utils.py
@@ -482,7 +482,7 @@ def get_multilib_datastore(variant, d):
         localdata.setVar("MLPREFIX", "")
     return localdata
 
-class ImageQAFailed(Exception):
+class ImageQAFailed(bb.BBHandledException):
     def __init__(self, description, name=None, logfile=None):
         self.description = description
         self.name = name
-- 
2.34.1



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

* [OE-core][scarthgap 18/18] meta-ide-support: Mark recipe as MACHINE-specific
  2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
                   ` (16 preceding siblings ...)
  2024-10-15 18:50 ` [OE-core][scarthgap 17/18] image_qa: fix error handling Steve Sakoman
@ 2024-10-15 18:50 ` Steve Sakoman
  17 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2024-10-15 18:50 UTC (permalink / raw)
  To: openembedded-core

From: Paul Barker <paul.barker.ct@bp.renesas.com>

meta-ide-support:do_write_test_data dumps the bitbake data dictionary to
a file using export2json(). As this obviously includes the value of
MACHINE, and other MACHINE-specific variables, the recipe needs to be
marked as MACHINE-specific.

RP: Note that this patch does change the name of the environment script
since it is no longer package arch specific but machine arch specific.

[RP: Fix selftest to reference new environment file]
Signed-off-by: Paul Barker <paul.barker.ct@bp.renesas.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3be2bc8a9b0c9d6a178329c8b451a6bedf255d6c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 meta/lib/oeqa/selftest/cases/meta_ide.py   | 4 ++--
 meta/recipes-core/meta/meta-ide-support.bb | 1 +
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/meta/lib/oeqa/selftest/cases/meta_ide.py b/meta/lib/oeqa/selftest/cases/meta_ide.py
index ffe0d2604d..5a17ca52ea 100644
--- a/meta/lib/oeqa/selftest/cases/meta_ide.py
+++ b/meta/lib/oeqa/selftest/cases/meta_ide.py
@@ -20,8 +20,8 @@ class MetaIDE(OESelftestTestCase):
         bitbake('meta-ide-support')
         bitbake('build-sysroots -c build_native_sysroot')
         bitbake('build-sysroots -c build_target_sysroot')
-        bb_vars = get_bb_vars(['MULTIMACH_TARGET_SYS', 'DEPLOY_DIR_IMAGE', 'COREBASE'])
-        cls.environment_script = 'environment-setup-%s' % bb_vars['MULTIMACH_TARGET_SYS']
+        bb_vars = get_bb_vars(['MACHINE_ARCH', 'TARGET_VENDOR', 'TARGET_OS', 'DEPLOY_DIR_IMAGE', 'COREBASE'])
+        cls.environment_script = 'environment-setup-%s%s-%s' % (bb_vars['MACHINE_ARCH'], bb_vars['TARGET_VENDOR'], bb_vars['TARGET_OS'])
         cls.deploydir = bb_vars['DEPLOY_DIR_IMAGE']
         cls.environment_script_path = '%s/%s' % (cls.deploydir, cls.environment_script)
         cls.corebasedir = bb_vars['COREBASE']
diff --git a/meta/recipes-core/meta/meta-ide-support.bb b/meta/recipes-core/meta/meta-ide-support.bb
index d85aa120c0..7ed422ce4d 100644
--- a/meta/recipes-core/meta/meta-ide-support.bb
+++ b/meta/recipes-core/meta/meta-ide-support.bb
@@ -1,6 +1,7 @@
 SUMMARY = "Integrated Development Environment support"
 DESCRIPTION = "Meta package for ensuring the build directory contains all appropriate toolchain packages for using an IDE"
 LICENSE = "MIT"
+PACKAGE_ARCH = "${MACHINE_ARCH}"
 
 DEPENDS = "virtual/libc gdb-cross-${TARGET_ARCH} qemu-native qemu-helper-native unfs3-native cmake-native autoconf-native automake-native meson-native intltool-native pkgconfig-native"
 RM_WORK_EXCLUDE += "${PN}"
-- 
2.34.1



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

* Re: [OE-core][scarthgap 17/18] image_qa: fix error handling
  2024-10-15 18:50 ` [OE-core][scarthgap 17/18] image_qa: fix error handling Steve Sakoman
@ 2024-10-15 22:41   ` Richard Purdie
  2024-10-16 13:26     ` Steve Sakoman
  0 siblings, 1 reply; 30+ messages in thread
From: Richard Purdie @ 2024-10-15 22:41 UTC (permalink / raw)
  To: steve, openembedded-core

On Tue, 2024-10-15 at 11:50 -0700, Steve Sakoman via lists.openembedded.org wrote:
> From: Louis Rannou <louis.rannou@non.se.com>
> 
> Make ImageQAFailed inherit BBHandledException so exceptions raised in tests are
> catched when the actual test function is executed by bb.utils.better_exec.
> 
> Change the do_image_qa tasks so errors are handled with oe.qa.handle_error. Add
> some comment to explain this requires to list the test in ERROR_QA or WARN_QA.
> 
> [YOCTO #14807]
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=14807
> 
> Signed-off-by: Louis Rannou <louis.rannou@non.se.com>
> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> (cherry picked from commit 905e224849fbbed1719e0add231b00e2d570b3b4)
> Signed-off-by: Steve Sakoman <steve@sakoman.com>
> ---
>  meta/classes-recipe/image.bbclass | 11 ++++++-----
>  meta/lib/oe/utils.py              |  2 +-
>  2 files changed, 7 insertions(+), 6 deletions(-)
> 
> diff --git a/meta/classes-recipe/image.bbclass b/meta/classes-recipe/image.bbclass
> index 28be6c6362..a682b5f3b2 100644
> --- a/meta/classes-recipe/image.bbclass
> +++ b/meta/classes-recipe/image.bbclass
> @@ -308,23 +308,24 @@ addtask do_image_complete_setscene
>  #
>  # The functions should use ${IMAGE_ROOTFS} to find the unpacked rootfs
>  # directory, which if QA passes will be the basis for the images.
> +#
> +# The functions should use oe.utils.ImageQAFailed(description, name) to raise
> +# errors. The name must be listed in ERROR_QA or WARN_QA to prompt.
>  fakeroot python do_image_qa () {
>      from oe.utils import ImageQAFailed
>  
>      qa_cmds = (d.getVar('IMAGE_QA_COMMANDS') or '').split()
> -    qamsg = ""
>  
>      for cmd in qa_cmds:
>          try:
>              bb.build.exec_func(cmd, d)
>          except oe.utils.ImageQAFailed as e:
> -            qamsg = qamsg + '\tImage QA function %s failed: %s\n' % (e.name, e.description)
> +            qamsg = 'Image QA function %s failed: %s\n' % (e.name, e.description)
> +            oe.qa.handle_error(e.name, qamsg, d)
>          except Exception as e:
>              qamsg = qamsg + '\tImage QA function %s failed: %s\n' % (cmd, e)
>  
> -    if qamsg:
> -        imgname = d.getVar('IMAGE_NAME')
> -        bb.fatal("QA errors found whilst validating image: %s\n%s" % (imgname, qamsg))
> +    oe.qa.exit_if_errors(d)
>  }
>  addtask do_image_qa after do_rootfs before do_image
>  
> diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
> index 14a7d07ef0..83f1440887 100644
> --- a/meta/lib/oe/utils.py
> +++ b/meta/lib/oe/utils.py
> @@ -482,7 +482,7 @@ def get_multilib_datastore(variant, d):
>          localdata.setVar("MLPREFIX", "")
>      return localdata
>  
> -class ImageQAFailed(Exception):
> +class ImageQAFailed(bb.BBHandledException):
>      def __init__(self, description, name=None, logfile=None):
>          self.description = description
>          self.name = name
> 

This caused further issues if I remember correctly.

https://git.yoctoproject.org/poky/commit/?id=b0eb2b9b3660dfda1c4c43cfcca6a2c4a84d6dc8

for example.

Cheers,

Richard




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

* Re: [OE-core][scarthgap 17/18] image_qa: fix error handling
  2024-10-15 22:41   ` Richard Purdie
@ 2024-10-16 13:26     ` Steve Sakoman
  2024-10-18 19:56       ` Peter Kjellerstedt
  0 siblings, 1 reply; 30+ messages in thread
From: Steve Sakoman @ 2024-10-16 13:26 UTC (permalink / raw)
  To: Richard Purdie; +Cc: openembedded-core

On Tue, Oct 15, 2024 at 3:41 PM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Tue, 2024-10-15 at 11:50 -0700, Steve Sakoman via lists.openembedded.org wrote:
> > From: Louis Rannou <louis.rannou@non.se.com>
> >
> > Make ImageQAFailed inherit BBHandledException so exceptions raised in tests are
> > catched when the actual test function is executed by bb.utils.better_exec.
> >
> > Change the do_image_qa tasks so errors are handled with oe.qa.handle_error. Add
> > some comment to explain this requires to list the test in ERROR_QA or WARN_QA.
> >
> > [YOCTO #14807]
> > https://bugzilla.yoctoproject.org/show_bug.cgi?id=14807
> >
> > Signed-off-by: Louis Rannou <louis.rannou@non.se.com>
> > Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> > (cherry picked from commit 905e224849fbbed1719e0add231b00e2d570b3b4)
> > Signed-off-by: Steve Sakoman <steve@sakoman.com>
> > ---
> >  meta/classes-recipe/image.bbclass | 11 ++++++-----
> >  meta/lib/oe/utils.py              |  2 +-
> >  2 files changed, 7 insertions(+), 6 deletions(-)
> >
> > diff --git a/meta/classes-recipe/image.bbclass b/meta/classes-recipe/image.bbclass
> > index 28be6c6362..a682b5f3b2 100644
> > --- a/meta/classes-recipe/image.bbclass
> > +++ b/meta/classes-recipe/image.bbclass
> > @@ -308,23 +308,24 @@ addtask do_image_complete_setscene
> >  #
> >  # The functions should use ${IMAGE_ROOTFS} to find the unpacked rootfs
> >  # directory, which if QA passes will be the basis for the images.
> > +#
> > +# The functions should use oe.utils.ImageQAFailed(description, name) to raise
> > +# errors. The name must be listed in ERROR_QA or WARN_QA to prompt.
> >  fakeroot python do_image_qa () {
> >      from oe.utils import ImageQAFailed
> >
> >      qa_cmds = (d.getVar('IMAGE_QA_COMMANDS') or '').split()
> > -    qamsg = ""
> >
> >      for cmd in qa_cmds:
> >          try:
> >              bb.build.exec_func(cmd, d)
> >          except oe.utils.ImageQAFailed as e:
> > -            qamsg = qamsg + '\tImage QA function %s failed: %s\n' % (e.name, e.description)
> > +            qamsg = 'Image QA function %s failed: %s\n' % (e.name, e.description)
> > +            oe.qa.handle_error(e.name, qamsg, d)
> >          except Exception as e:
> >              qamsg = qamsg + '\tImage QA function %s failed: %s\n' % (cmd, e)
> >
> > -    if qamsg:
> > -        imgname = d.getVar('IMAGE_NAME')
> > -        bb.fatal("QA errors found whilst validating image: %s\n%s" % (imgname, qamsg))
> > +    oe.qa.exit_if_errors(d)
> >  }
> >  addtask do_image_qa after do_rootfs before do_image
> >
> > diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
> > index 14a7d07ef0..83f1440887 100644
> > --- a/meta/lib/oe/utils.py
> > +++ b/meta/lib/oe/utils.py
> > @@ -482,7 +482,7 @@ def get_multilib_datastore(variant, d):
> >          localdata.setVar("MLPREFIX", "")
> >      return localdata
> >
> > -class ImageQAFailed(Exception):
> > +class ImageQAFailed(bb.BBHandledException):
> >      def __init__(self, description, name=None, logfile=None):
> >          self.description = description
> >          self.name = name
> >
>
> This caused further issues if I remember correctly.
>
> https://git.yoctoproject.org/poky/commit/?id=b0eb2b9b3660dfda1c4c43cfcca6a2c4a84d6dc8
>
> for example.

Thanks for reviewing!  I've got that one now and will also take it for styhead.

Steve


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

* RE: [OE-core][scarthgap 17/18] image_qa: fix error handling
  2024-10-16 13:26     ` Steve Sakoman
@ 2024-10-18 19:56       ` Peter Kjellerstedt
  2024-10-18 20:19         ` Steve Sakoman
  0 siblings, 1 reply; 30+ messages in thread
From: Peter Kjellerstedt @ 2024-10-18 19:56 UTC (permalink / raw)
  To: Steve Sakoman, Richard Purdie; +Cc: openembedded-core@lists.openembedded.org

> -----Original Message-----
> From: openembedded-core@lists.openembedded.org <openembedded-core@lists.openembedded.org> On Behalf Of Steve Sakoman
> Sent: den 16 oktober 2024 15:27
> To: Richard Purdie <richard.purdie@linuxfoundation.org>
> Cc: openembedded-core@lists.openembedded.org
> Subject: Re: [OE-core][scarthgap 17/18] image_qa: fix error handling
> 
> On Tue, Oct 15, 2024 at 3:41 PM Richard Purdie <richard.purdie@linuxfoundation.org> wrote:
> >
> > On Tue, 2024-10-15 at 11:50 -0700, Steve Sakoman via lists.openembedded.org wrote:
> > > From: Louis Rannou <louis.rannou@non.se.com>
> > >
> > > Make ImageQAFailed inherit BBHandledException so exceptions raised in tests are
> > > catched when the actual test function is executed by bb.utils.better_exec.
> > >
> > > Change the do_image_qa tasks so errors are handled with oe.qa.handle_error. Add
> > > some comment to explain this requires to list the test in ERROR_QA or WARN_QA.
> > >
> > > [YOCTO #14807]
> > > https://bugzilla.yoctoproject.org/show_bug.cgi?id=14807
> > >
> > > Signed-off-by: Louis Rannou <louis.rannou@non.se.com>
> > > Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> > > (cherry picked from commit 905e224849fbbed1719e0add231b00e2d570b3b4)
> > > Signed-off-by: Steve Sakoman <steve@sakoman.com>
> > > ---
> > >  meta/classes-recipe/image.bbclass | 11 ++++++-----
> > >  meta/lib/oe/utils.py              |  2 +-
> > >  2 files changed, 7 insertions(+), 6 deletions(-)
> > >
> > > diff --git a/meta/classes-recipe/image.bbclass b/meta/classes-recipe/image.bbclass
> > > index 28be6c6362..a682b5f3b2 100644
> > > --- a/meta/classes-recipe/image.bbclass
> > > +++ b/meta/classes-recipe/image.bbclass
> > > @@ -308,23 +308,24 @@ addtask do_image_complete_setscene
> > >  #
> > >  # The functions should use ${IMAGE_ROOTFS} to find the unpacked rootfs
> > >  # directory, which if QA passes will be the basis for the images.
> > > +#
> > > +# The functions should use oe.utils.ImageQAFailed(description, name) to raise
> > > +# errors. The name must be listed in ERROR_QA or WARN_QA to prompt.
> > >  fakeroot python do_image_qa () {
> > >      from oe.utils import ImageQAFailed
> > >
> > >      qa_cmds = (d.getVar('IMAGE_QA_COMMANDS') or '').split()
> > > -    qamsg = ""
> > >
> > >      for cmd in qa_cmds:
> > >          try:
> > >              bb.build.exec_func(cmd, d)
> > >          except oe.utils.ImageQAFailed as e:
> > > -            qamsg = qamsg + '\tImage QA function %s failed: %s\n' % (e.name, e.description)
> > > +            qamsg = 'Image QA function %s failed: %s\n' % (e.name, e.description)
> > > +            oe.qa.handle_error(e.name, qamsg, d)
> > >          except Exception as e:
> > >              qamsg = qamsg + '\tImage QA function %s failed: %s\n' % (cmd, e)
> > >
> > > -    if qamsg:
> > > -        imgname = d.getVar('IMAGE_NAME')
> > > -        bb.fatal("QA errors found whilst validating image: %s\n%s" % (imgname, qamsg))
> > > +    oe.qa.exit_if_errors(d)
> > >  }
> > >  addtask do_image_qa after do_rootfs before do_image
> > >
> > > diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
> > > index 14a7d07ef0..83f1440887 100644
> > > --- a/meta/lib/oe/utils.py
> > > +++ b/meta/lib/oe/utils.py
> > > @@ -482,7 +482,7 @@ def get_multilib_datastore(variant, d):
> > >          localdata.setVar("MLPREFIX", "")
> > >      return localdata
> > >
> > > -class ImageQAFailed(Exception):
> > > +class ImageQAFailed(bb.BBHandledException):
> > >      def __init__(self, description, name=None, logfile=None):
> > >          self.description = description
> > >          self.name = name
> > >
> >
> > This caused further issues if I remember correctly.
> >
> > https://git.yoctoproject.org/poky/commit/?id=b0eb2b9b3660dfda1c4c43cfcca6a2c4a84d6dc8
> >
> > for example.
> 
> Thanks for reviewing!  I've got that one now and will also take it for
> styhead.
> 
> Steve

Do note that I sent an alternative patch for Styhead that does not 
remove the ImageQAFailed exception. While I would be happy to see the 
version that went into master backported, I assumed that removing the 
ImageQAFailed exception would be considered as a change in behavior 
and thus not eligible for backporting.

The alternative version I created for Styhead can be found here:

https://lists.openembedded.org/g/openembedded-core/message/204982

//Peter


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

* Re: [OE-core][scarthgap 17/18] image_qa: fix error handling
  2024-10-18 19:56       ` Peter Kjellerstedt
@ 2024-10-18 20:19         ` Steve Sakoman
  2024-10-18 21:56           ` Peter Kjellerstedt
  0 siblings, 1 reply; 30+ messages in thread
From: Steve Sakoman @ 2024-10-18 20:19 UTC (permalink / raw)
  To: Peter Kjellerstedt
  Cc: Richard Purdie, openembedded-core@lists.openembedded.org

On Fri, Oct 18, 2024 at 12:56 PM Peter Kjellerstedt
<peter.kjellerstedt@axis.com> wrote:
>
> > -----Original Message-----
> > From: openembedded-core@lists.openembedded.org <openembedded-core@lists.openembedded.org> On Behalf Of Steve Sakoman
> > Sent: den 16 oktober 2024 15:27
> > To: Richard Purdie <richard.purdie@linuxfoundation.org>
> > Cc: openembedded-core@lists.openembedded.org
> > Subject: Re: [OE-core][scarthgap 17/18] image_qa: fix error handling
> >
> > On Tue, Oct 15, 2024 at 3:41 PM Richard Purdie <richard.purdie@linuxfoundation.org> wrote:
> > >
> > > On Tue, 2024-10-15 at 11:50 -0700, Steve Sakoman via lists.openembedded.org wrote:
> > > > From: Louis Rannou <louis.rannou@non.se.com>
> > > >
> > > > Make ImageQAFailed inherit BBHandledException so exceptions raised in tests are
> > > > catched when the actual test function is executed by bb.utils.better_exec.
> > > >
> > > > Change the do_image_qa tasks so errors are handled with oe.qa.handle_error. Add
> > > > some comment to explain this requires to list the test in ERROR_QA or WARN_QA.
> > > >
> > > > [YOCTO #14807]
> > > > https://bugzilla.yoctoproject.org/show_bug.cgi?id=14807
> > > >
> > > > Signed-off-by: Louis Rannou <louis.rannou@non.se.com>
> > > > Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> > > > (cherry picked from commit 905e224849fbbed1719e0add231b00e2d570b3b4)
> > > > Signed-off-by: Steve Sakoman <steve@sakoman.com>
> > > > ---
> > > >  meta/classes-recipe/image.bbclass | 11 ++++++-----
> > > >  meta/lib/oe/utils.py              |  2 +-
> > > >  2 files changed, 7 insertions(+), 6 deletions(-)
> > > >
> > > > diff --git a/meta/classes-recipe/image.bbclass b/meta/classes-recipe/image.bbclass
> > > > index 28be6c6362..a682b5f3b2 100644
> > > > --- a/meta/classes-recipe/image.bbclass
> > > > +++ b/meta/classes-recipe/image.bbclass
> > > > @@ -308,23 +308,24 @@ addtask do_image_complete_setscene
> > > >  #
> > > >  # The functions should use ${IMAGE_ROOTFS} to find the unpacked rootfs
> > > >  # directory, which if QA passes will be the basis for the images.
> > > > +#
> > > > +# The functions should use oe.utils.ImageQAFailed(description, name) to raise
> > > > +# errors. The name must be listed in ERROR_QA or WARN_QA to prompt.
> > > >  fakeroot python do_image_qa () {
> > > >      from oe.utils import ImageQAFailed
> > > >
> > > >      qa_cmds = (d.getVar('IMAGE_QA_COMMANDS') or '').split()
> > > > -    qamsg = ""
> > > >
> > > >      for cmd in qa_cmds:
> > > >          try:
> > > >              bb.build.exec_func(cmd, d)
> > > >          except oe.utils.ImageQAFailed as e:
> > > > -            qamsg = qamsg + '\tImage QA function %s failed: %s\n' % (e.name, e.description)
> > > > +            qamsg = 'Image QA function %s failed: %s\n' % (e.name, e.description)
> > > > +            oe.qa.handle_error(e.name, qamsg, d)
> > > >          except Exception as e:
> > > >              qamsg = qamsg + '\tImage QA function %s failed: %s\n' % (cmd, e)
> > > >
> > > > -    if qamsg:
> > > > -        imgname = d.getVar('IMAGE_NAME')
> > > > -        bb.fatal("QA errors found whilst validating image: %s\n%s" % (imgname, qamsg))
> > > > +    oe.qa.exit_if_errors(d)
> > > >  }
> > > >  addtask do_image_qa after do_rootfs before do_image
> > > >
> > > > diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
> > > > index 14a7d07ef0..83f1440887 100644
> > > > --- a/meta/lib/oe/utils.py
> > > > +++ b/meta/lib/oe/utils.py
> > > > @@ -482,7 +482,7 @@ def get_multilib_datastore(variant, d):
> > > >          localdata.setVar("MLPREFIX", "")
> > > >      return localdata
> > > >
> > > > -class ImageQAFailed(Exception):
> > > > +class ImageQAFailed(bb.BBHandledException):
> > > >      def __init__(self, description, name=None, logfile=None):
> > > >          self.description = description
> > > >          self.name = name
> > > >
> > >
> > > This caused further issues if I remember correctly.
> > >
> > > https://git.yoctoproject.org/poky/commit/?id=b0eb2b9b3660dfda1c4c43cfcca6a2c4a84d6dc8
> > >
> > > for example.
> >
> > Thanks for reviewing!  I've got that one now and will also take it for
> > styhead.
> >
> > Steve
>
> Do note that I sent an alternative patch for Styhead that does not
> remove the ImageQAFailed exception. While I would be happy to see the
> version that went into master backported, I assumed that removing the
> ImageQAFailed exception would be considered as a change in behavior
> and thus not eligible for backporting.
>
> The alternative version I created for Styhead can be found here:
>
> https://lists.openembedded.org/g/openembedded-core/message/204982

Since I already took the master version for scarthgap, I'm inclined to
take that version for styhead too.

Steve


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

* RE: [OE-core][scarthgap 17/18] image_qa: fix error handling
  2024-10-18 20:19         ` Steve Sakoman
@ 2024-10-18 21:56           ` Peter Kjellerstedt
  0 siblings, 0 replies; 30+ messages in thread
From: Peter Kjellerstedt @ 2024-10-18 21:56 UTC (permalink / raw)
  To: Steve Sakoman; +Cc: Richard Purdie, openembedded-core@lists.openembedded.org

> -----Original Message-----
> From: Steve Sakoman <steve@sakoman.com>
> Sent: den 18 oktober 2024 22:19
> To: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
> Cc: Richard Purdie <richard.purdie@linuxfoundation.org>; openembedded-
> core@lists.openembedded.org
> Subject: Re: [OE-core][scarthgap 17/18] image_qa: fix error handling
> 
> On Fri, Oct 18, 2024 at 12:56 PM Peter Kjellerstedt
> <peter.kjellerstedt@axis.com> wrote:
> >
> > > -----Original Message-----
> > > From: openembedded-core@lists.openembedded.org <openembedded-
> core@lists.openembedded.org> On Behalf Of Steve Sakoman
> > > Sent: den 16 oktober 2024 15:27
> > > To: Richard Purdie <richard.purdie@linuxfoundation.org>
> > > Cc: openembedded-core@lists.openembedded.org
> > > Subject: Re: [OE-core][scarthgap 17/18] image_qa: fix error handling
> > >
> > > On Tue, Oct 15, 2024 at 3:41 PM Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> > > >
> > > > On Tue, 2024-10-15 at 11:50 -0700, Steve Sakoman via
> lists.openembedded.org wrote:
> > > > > From: Louis Rannou <louis.rannou@non.se.com>
> > > > >
> > > > > Make ImageQAFailed inherit BBHandledException so exceptions raised
> in tests are
> > > > > catched when the actual test function is executed by
> bb.utils.better_exec.
> > > > >
> > > > > Change the do_image_qa tasks so errors are handled with
> oe.qa.handle_error. Add
> > > > > some comment to explain this requires to list the test in ERROR_QA
> or WARN_QA.
> > > > >
> > > > > [YOCTO #14807]
> > > > > https://bugzilla.yoctoproject.org/show_bug.cgi?id=14807
> > > > >
> > > > > Signed-off-by: Louis Rannou <louis.rannou@non.se.com>
> > > > > Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> > > > > (cherry picked from commit
> 905e224849fbbed1719e0add231b00e2d570b3b4)
> > > > > Signed-off-by: Steve Sakoman <steve@sakoman.com>
> > > > > ---
> > > > >  meta/classes-recipe/image.bbclass | 11 ++++++-----
> > > > >  meta/lib/oe/utils.py              |  2 +-
> > > > >  2 files changed, 7 insertions(+), 6 deletions(-)
> > > > >
> > > > > diff --git a/meta/classes-recipe/image.bbclass b/meta/classes-
> recipe/image.bbclass
> > > > > index 28be6c6362..a682b5f3b2 100644
> > > > > --- a/meta/classes-recipe/image.bbclass
> > > > > +++ b/meta/classes-recipe/image.bbclass
> > > > > @@ -308,23 +308,24 @@ addtask do_image_complete_setscene
> > > > >  #
> > > > >  # The functions should use ${IMAGE_ROOTFS} to find the unpacked
> rootfs
> > > > >  # directory, which if QA passes will be the basis for the images.
> > > > > +#
> > > > > +# The functions should use oe.utils.ImageQAFailed(description,
> name) to raise
> > > > > +# errors. The name must be listed in ERROR_QA or WARN_QA to
> prompt.
> > > > >  fakeroot python do_image_qa () {
> > > > >      from oe.utils import ImageQAFailed
> > > > >
> > > > >      qa_cmds = (d.getVar('IMAGE_QA_COMMANDS') or '').split()
> > > > > -    qamsg = ""
> > > > >
> > > > >      for cmd in qa_cmds:
> > > > >          try:
> > > > >              bb.build.exec_func(cmd, d)
> > > > >          except oe.utils.ImageQAFailed as e:
> > > > > -            qamsg = qamsg + '\tImage QA function %s failed: %s\n'
> % (e.name, e.description)
> > > > > +            qamsg = 'Image QA function %s failed: %s\n' %
> (e.name, e.description)
> > > > > +            oe.qa.handle_error(e.name, qamsg, d)
> > > > >          except Exception as e:
> > > > >              qamsg = qamsg + '\tImage QA function %s failed: %s\n'
> % (cmd, e)
> > > > >
> > > > > -    if qamsg:
> > > > > -        imgname = d.getVar('IMAGE_NAME')
> > > > > -        bb.fatal("QA errors found whilst validating image:
> %s\n%s" % (imgname, qamsg))
> > > > > +    oe.qa.exit_if_errors(d)
> > > > >  }
> > > > >  addtask do_image_qa after do_rootfs before do_image
> > > > >
> > > > > diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
> > > > > index 14a7d07ef0..83f1440887 100644
> > > > > --- a/meta/lib/oe/utils.py
> > > > > +++ b/meta/lib/oe/utils.py
> > > > > @@ -482,7 +482,7 @@ def get_multilib_datastore(variant, d):
> > > > >          localdata.setVar("MLPREFIX", "")
> > > > >      return localdata
> > > > >
> > > > > -class ImageQAFailed(Exception):
> > > > > +class ImageQAFailed(bb.BBHandledException):
> > > > >      def __init__(self, description, name=None, logfile=None):
> > > > >          self.description = description
> > > > >          self.name = name
> > > > >
> > > >
> > > > This caused further issues if I remember correctly.
> > > >
> > > > https://git.yoctoproject.org/poky/commit/?id=b0eb2b9b3660dfda1c4c43cfcca6a2c4a84d6dc8
> > > >
> > > > for example.
> > >
> > > Thanks for reviewing!  I've got that one now and will also take it for
> > > styhead.
> > >
> > > Steve
> >
> > Do note that I sent an alternative patch for Styhead that does not
> > remove the ImageQAFailed exception. While I would be happy to see the
> > version that went into master backported, I assumed that removing the
> > ImageQAFailed exception would be considered as a change in behavior
> > and thus not eligible for backporting.
> >
> > The alternative version I created for Styhead can be found here:
> >
> > https://lists.openembedded.org/g/openembedded-core/message/204982
> 
> Since I already took the master version for scarthgap, I'm inclined to
> take that version for styhead too.
> 
> Steve

Yes, in that case anything else would probably be weird.

//Peter


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

* [OE-core][scarthgap 00/18] Patch review
@ 2025-10-10  2:50 Steve Sakoman
  2025-10-12 19:02 ` Gyorgy Sarvari
  0 siblings, 1 reply; 30+ messages in thread
From: Steve Sakoman @ 2025-10-10  2:50 UTC (permalink / raw)
  To: openembedded-core

Please review this set of changes for scarthgap and have comments back by
end of day Monday, October 13

Passed a-full on autobuilder:

https://autobuilder.yoctoproject.org/valkyrie/#/builders/29/builds/2553

The following changes since commit 2696c50af9946f425ccaf7d0e7e0eb3fd87c36bb:

  expect: fix native build with GCC 15 (2025-10-02 08:40:43 -0700)

are available in the Git repository at:

  https://git.openembedded.org/openembedded-core-contrib stable/scarthgap-nut
  https://git.openembedded.org/openembedded-core-contrib/log/?h=stable/scarthgap-nut

Aleksandar Nikolic (1):
  scripts/install-buildtools: Update to 5.0.12

Archana Polampalli (1):
  go: fix CVE-2025-47906

Deepesh Varatharajan (1):
  glibc: stable 2.39 branch updates

Gyorgy Sarvari (1):
  conf/bitbake.conf: use gnu mirror instead of main server

Hitendra Prajapati (1):
  grub2: mark CVE-2024-2312 as not applicable

Peter Marko (10):
  busybox: patch CVE-2025-46394
  gstreamer1.0: ignore CVEs fixed in plugins
  gstreamer1.0: ignore CVE-2025-2759
  ghostscript: patch CVE-2025-59798
  ghostscript: patch CVE-2025-59799
  ghostscript: patch CVE-2025-59800
  expat: follow-up for CVE-2024-8176
  tiff: ignore 5 CVEs
  ffmpeg: ignore 8 CVEs fixed in 6.1.1 and 6.1.3 releases
  openssl: upgrade 3.2.4 -> 3.2.6

Ross Burton (1):
  pulseaudio: ignore CVE-2024-11586

Steve Sakoman (2):
  selftest/cases/meta_ide.py: use use gnu mirror instead of main server
  oeqa/sdk/cases/buildcpio.py: use gnu mirror instead of main server

 meta/conf/bitbake.conf                        |    2 +-
 meta/lib/oeqa/sdk/cases/buildcpio.py          |    2 +-
 meta/lib/oeqa/selftest/cases/meta_ide.py      |    2 +-
 meta/recipes-bsp/grub/grub2.inc               |    1 +
 .../openssl/openssl/CVE-2025-27587-1.patch    | 1918 -----------------
 .../openssl/openssl/CVE-2025-27587-2.patch    |  129 --
 .../{openssl_3.2.4.bb => openssl_3.2.6.bb}    |    4 +-
 .../busybox/busybox/CVE-2025-46394-01.patch   |   57 +
 .../busybox/busybox/CVE-2025-46394-02.patch   |   32 +
 meta/recipes-core/busybox/busybox_1.36.1.bb   |    2 +
 .../expat/expat/CVE-2024-8176-03.patch        |   35 +
 .../expat/expat/CVE-2024-8176-04.patch        |  115 +
 .../expat/expat/CVE-2024-8176-05.patch        |   78 +
 meta/recipes-core/expat/expat_2.6.4.bb        |    3 +
 meta/recipes-core/glibc/glibc-version.inc     |    4 +-
 meta/recipes-devtools/go/go-1.22.12.inc       |    1 +
 .../go/go/CVE-2025-47906.patch                |  183 ++
 .../ghostscript/CVE-2025-59798.patch          |  134 ++
 .../ghostscript/CVE-2025-59799.patch          |   41 +
 .../ghostscript/CVE-2025-59800.patch          |   36 +
 .../ghostscript/ghostscript_10.05.1.bb        |    3 +
 .../recipes-multimedia/ffmpeg/ffmpeg_6.1.3.bb |    4 +
 .../gstreamer/gstreamer1.0_1.22.12.bb         |   19 +-
 meta/recipes-multimedia/libtiff/tiff_4.6.0.bb |    4 +
 .../pulseaudio/pulseaudio.inc                 |    2 +
 scripts/install-buildtools                    |    4 +-
 26 files changed, 754 insertions(+), 2061 deletions(-)
 delete mode 100644 meta/recipes-connectivity/openssl/openssl/CVE-2025-27587-1.patch
 delete mode 100644 meta/recipes-connectivity/openssl/openssl/CVE-2025-27587-2.patch
 rename meta/recipes-connectivity/openssl/{openssl_3.2.4.bb => openssl_3.2.6.bb} (98%)
 create mode 100644 meta/recipes-core/busybox/busybox/CVE-2025-46394-01.patch
 create mode 100644 meta/recipes-core/busybox/busybox/CVE-2025-46394-02.patch
 create mode 100644 meta/recipes-core/expat/expat/CVE-2024-8176-03.patch
 create mode 100644 meta/recipes-core/expat/expat/CVE-2024-8176-04.patch
 create mode 100644 meta/recipes-core/expat/expat/CVE-2024-8176-05.patch
 create mode 100644 meta/recipes-devtools/go/go/CVE-2025-47906.patch
 create mode 100644 meta/recipes-extended/ghostscript/ghostscript/CVE-2025-59798.patch
 create mode 100644 meta/recipes-extended/ghostscript/ghostscript/CVE-2025-59799.patch
 create mode 100644 meta/recipes-extended/ghostscript/ghostscript/CVE-2025-59800.patch

-- 
2.43.0



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

* Re: [OE-core][scarthgap 00/18] Patch review
  2025-10-10  2:50 Steve Sakoman
@ 2025-10-12 19:02 ` Gyorgy Sarvari
  2025-10-12 19:19   ` Steve Sakoman
  0 siblings, 1 reply; 30+ messages in thread
From: Gyorgy Sarvari @ 2025-10-12 19:02 UTC (permalink / raw)
  To: steve, openembedded-core

On 10/10/25 04:50, Steve Sakoman via lists.openembedded.org wrote:
> Please review this set of changes for scarthgap and have comments back by
> end of day Monday, October 13
>
> Passed a-full on autobuilder:
>
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/29/builds/2553

This didn't pass... though I guess it's some infra problem?

> The following changes since commit 2696c50af9946f425ccaf7d0e7e0eb3fd87c36bb:
>
>   expect: fix native build with GCC 15 (2025-10-02 08:40:43 -0700)
>
> are available in the Git repository at:
>
>   https://git.openembedded.org/openembedded-core-contrib stable/scarthgap-nut
>   https://git.openembedded.org/openembedded-core-contrib/log/?h=stable/scarthgap-nut
>
> Aleksandar Nikolic (1):
>   scripts/install-buildtools: Update to 5.0.12
>
> Archana Polampalli (1):
>   go: fix CVE-2025-47906
>
> Deepesh Varatharajan (1):
>   glibc: stable 2.39 branch updates
>
> Gyorgy Sarvari (1):
>   conf/bitbake.conf: use gnu mirror instead of main server
>
> Hitendra Prajapati (1):
>   grub2: mark CVE-2024-2312 as not applicable
>
> Peter Marko (10):
>   busybox: patch CVE-2025-46394
>   gstreamer1.0: ignore CVEs fixed in plugins
>   gstreamer1.0: ignore CVE-2025-2759
>   ghostscript: patch CVE-2025-59798
>   ghostscript: patch CVE-2025-59799
>   ghostscript: patch CVE-2025-59800
>   expat: follow-up for CVE-2024-8176
>   tiff: ignore 5 CVEs
>   ffmpeg: ignore 8 CVEs fixed in 6.1.1 and 6.1.3 releases
>   openssl: upgrade 3.2.4 -> 3.2.6
>
> Ross Burton (1):
>   pulseaudio: ignore CVE-2024-11586
>
> Steve Sakoman (2):
>   selftest/cases/meta_ide.py: use use gnu mirror instead of main server
>   oeqa/sdk/cases/buildcpio.py: use gnu mirror instead of main server
>
>  meta/conf/bitbake.conf                        |    2 +-
>  meta/lib/oeqa/sdk/cases/buildcpio.py          |    2 +-
>  meta/lib/oeqa/selftest/cases/meta_ide.py      |    2 +-
>  meta/recipes-bsp/grub/grub2.inc               |    1 +
>  .../openssl/openssl/CVE-2025-27587-1.patch    | 1918 -----------------
>  .../openssl/openssl/CVE-2025-27587-2.patch    |  129 --
>  .../{openssl_3.2.4.bb => openssl_3.2.6.bb}    |    4 +-
>  .../busybox/busybox/CVE-2025-46394-01.patch   |   57 +
>  .../busybox/busybox/CVE-2025-46394-02.patch   |   32 +
>  meta/recipes-core/busybox/busybox_1.36.1.bb   |    2 +
>  .../expat/expat/CVE-2024-8176-03.patch        |   35 +
>  .../expat/expat/CVE-2024-8176-04.patch        |  115 +
>  .../expat/expat/CVE-2024-8176-05.patch        |   78 +
>  meta/recipes-core/expat/expat_2.6.4.bb        |    3 +
>  meta/recipes-core/glibc/glibc-version.inc     |    4 +-
>  meta/recipes-devtools/go/go-1.22.12.inc       |    1 +
>  .../go/go/CVE-2025-47906.patch                |  183 ++
>  .../ghostscript/CVE-2025-59798.patch          |  134 ++
>  .../ghostscript/CVE-2025-59799.patch          |   41 +
>  .../ghostscript/CVE-2025-59800.patch          |   36 +
>  .../ghostscript/ghostscript_10.05.1.bb        |    3 +
>  .../recipes-multimedia/ffmpeg/ffmpeg_6.1.3.bb |    4 +
>  .../gstreamer/gstreamer1.0_1.22.12.bb         |   19 +-
>  meta/recipes-multimedia/libtiff/tiff_4.6.0.bb |    4 +
>  .../pulseaudio/pulseaudio.inc                 |    2 +
>  scripts/install-buildtools                    |    4 +-
>  26 files changed, 754 insertions(+), 2061 deletions(-)
>  delete mode 100644 meta/recipes-connectivity/openssl/openssl/CVE-2025-27587-1.patch
>  delete mode 100644 meta/recipes-connectivity/openssl/openssl/CVE-2025-27587-2.patch
>  rename meta/recipes-connectivity/openssl/{openssl_3.2.4.bb => openssl_3.2.6.bb} (98%)
>  create mode 100644 meta/recipes-core/busybox/busybox/CVE-2025-46394-01.patch
>  create mode 100644 meta/recipes-core/busybox/busybox/CVE-2025-46394-02.patch
>  create mode 100644 meta/recipes-core/expat/expat/CVE-2024-8176-03.patch
>  create mode 100644 meta/recipes-core/expat/expat/CVE-2024-8176-04.patch
>  create mode 100644 meta/recipes-core/expat/expat/CVE-2024-8176-05.patch
>  create mode 100644 meta/recipes-devtools/go/go/CVE-2025-47906.patch
>  create mode 100644 meta/recipes-extended/ghostscript/ghostscript/CVE-2025-59798.patch
>  create mode 100644 meta/recipes-extended/ghostscript/ghostscript/CVE-2025-59799.patch
>  create mode 100644 meta/recipes-extended/ghostscript/ghostscript/CVE-2025-59800.patch
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#224644): https://lists.openembedded.org/g/openembedded-core/message/224644
> Mute This Topic: https://lists.openembedded.org/mt/115683663/6084445
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [skandigraun@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>



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

* Re: [OE-core][scarthgap 00/18] Patch review
  2025-10-12 19:02 ` Gyorgy Sarvari
@ 2025-10-12 19:19   ` Steve Sakoman
  0 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2025-10-12 19:19 UTC (permalink / raw)
  To: Gyorgy Sarvari; +Cc: openembedded-core

On Sun, Oct 12, 2025 at 12:02 PM Gyorgy Sarvari <skandigraun@gmail.com> wrote:
>
> On 10/10/25 04:50, Steve Sakoman via lists.openembedded.org wrote:
> > Please review this set of changes for scarthgap and have comments back by
> > end of day Monday, October 13
> >
> > Passed a-full on autobuilder:
> >
> > https://autobuilder.yoctoproject.org/valkyrie/#/builders/29/builds/2553
>
> This didn't pass... though I guess it's some infra problem?

Yes, intermittent issue.  I retested that one failing test and it succeeded:

https://autobuilder.yoctoproject.org/valkyrie/#/builders/66/builds/2483

Steve

>
> > The following changes since commit 2696c50af9946f425ccaf7d0e7e0eb3fd87c36bb:
> >
> >   expect: fix native build with GCC 15 (2025-10-02 08:40:43 -0700)
> >
> > are available in the Git repository at:
> >
> >   https://git.openembedded.org/openembedded-core-contrib stable/scarthgap-nut
> >   https://git.openembedded.org/openembedded-core-contrib/log/?h=stable/scarthgap-nut
> >
> > Aleksandar Nikolic (1):
> >   scripts/install-buildtools: Update to 5.0.12
> >
> > Archana Polampalli (1):
> >   go: fix CVE-2025-47906
> >
> > Deepesh Varatharajan (1):
> >   glibc: stable 2.39 branch updates
> >
> > Gyorgy Sarvari (1):
> >   conf/bitbake.conf: use gnu mirror instead of main server
> >
> > Hitendra Prajapati (1):
> >   grub2: mark CVE-2024-2312 as not applicable
> >
> > Peter Marko (10):
> >   busybox: patch CVE-2025-46394
> >   gstreamer1.0: ignore CVEs fixed in plugins
> >   gstreamer1.0: ignore CVE-2025-2759
> >   ghostscript: patch CVE-2025-59798
> >   ghostscript: patch CVE-2025-59799
> >   ghostscript: patch CVE-2025-59800
> >   expat: follow-up for CVE-2024-8176
> >   tiff: ignore 5 CVEs
> >   ffmpeg: ignore 8 CVEs fixed in 6.1.1 and 6.1.3 releases
> >   openssl: upgrade 3.2.4 -> 3.2.6
> >
> > Ross Burton (1):
> >   pulseaudio: ignore CVE-2024-11586
> >
> > Steve Sakoman (2):
> >   selftest/cases/meta_ide.py: use use gnu mirror instead of main server
> >   oeqa/sdk/cases/buildcpio.py: use gnu mirror instead of main server
> >
> >  meta/conf/bitbake.conf                        |    2 +-
> >  meta/lib/oeqa/sdk/cases/buildcpio.py          |    2 +-
> >  meta/lib/oeqa/selftest/cases/meta_ide.py      |    2 +-
> >  meta/recipes-bsp/grub/grub2.inc               |    1 +
> >  .../openssl/openssl/CVE-2025-27587-1.patch    | 1918 -----------------
> >  .../openssl/openssl/CVE-2025-27587-2.patch    |  129 --
> >  .../{openssl_3.2.4.bb => openssl_3.2.6.bb}    |    4 +-
> >  .../busybox/busybox/CVE-2025-46394-01.patch   |   57 +
> >  .../busybox/busybox/CVE-2025-46394-02.patch   |   32 +
> >  meta/recipes-core/busybox/busybox_1.36.1.bb   |    2 +
> >  .../expat/expat/CVE-2024-8176-03.patch        |   35 +
> >  .../expat/expat/CVE-2024-8176-04.patch        |  115 +
> >  .../expat/expat/CVE-2024-8176-05.patch        |   78 +
> >  meta/recipes-core/expat/expat_2.6.4.bb        |    3 +
> >  meta/recipes-core/glibc/glibc-version.inc     |    4 +-
> >  meta/recipes-devtools/go/go-1.22.12.inc       |    1 +
> >  .../go/go/CVE-2025-47906.patch                |  183 ++
> >  .../ghostscript/CVE-2025-59798.patch          |  134 ++
> >  .../ghostscript/CVE-2025-59799.patch          |   41 +
> >  .../ghostscript/CVE-2025-59800.patch          |   36 +
> >  .../ghostscript/ghostscript_10.05.1.bb        |    3 +
> >  .../recipes-multimedia/ffmpeg/ffmpeg_6.1.3.bb |    4 +
> >  .../gstreamer/gstreamer1.0_1.22.12.bb         |   19 +-
> >  meta/recipes-multimedia/libtiff/tiff_4.6.0.bb |    4 +
> >  .../pulseaudio/pulseaudio.inc                 |    2 +
> >  scripts/install-buildtools                    |    4 +-
> >  26 files changed, 754 insertions(+), 2061 deletions(-)
> >  delete mode 100644 meta/recipes-connectivity/openssl/openssl/CVE-2025-27587-1.patch
> >  delete mode 100644 meta/recipes-connectivity/openssl/openssl/CVE-2025-27587-2.patch
> >  rename meta/recipes-connectivity/openssl/{openssl_3.2.4.bb => openssl_3.2.6.bb} (98%)
> >  create mode 100644 meta/recipes-core/busybox/busybox/CVE-2025-46394-01.patch
> >  create mode 100644 meta/recipes-core/busybox/busybox/CVE-2025-46394-02.patch
> >  create mode 100644 meta/recipes-core/expat/expat/CVE-2024-8176-03.patch
> >  create mode 100644 meta/recipes-core/expat/expat/CVE-2024-8176-04.patch
> >  create mode 100644 meta/recipes-core/expat/expat/CVE-2024-8176-05.patch
> >  create mode 100644 meta/recipes-devtools/go/go/CVE-2025-47906.patch
> >  create mode 100644 meta/recipes-extended/ghostscript/ghostscript/CVE-2025-59798.patch
> >  create mode 100644 meta/recipes-extended/ghostscript/ghostscript/CVE-2025-59799.patch
> >  create mode 100644 meta/recipes-extended/ghostscript/ghostscript/CVE-2025-59800.patch
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#224644): https://lists.openembedded.org/g/openembedded-core/message/224644
> > Mute This Topic: https://lists.openembedded.org/mt/115683663/6084445
> > Group Owner: openembedded-core+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [skandigraun@gmail.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
>


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

* [OE-core][scarthgap 00/18] Patch review
@ 2025-12-23 21:22 Steve Sakoman
  0 siblings, 0 replies; 30+ messages in thread
From: Steve Sakoman @ 2025-12-23 21:22 UTC (permalink / raw)
  To: openembedded-core

Please review this set of changes for scarthgap and have comments back by
end of day Tuesday, December 30

Passed a-full on autobuilder:

https://autobuilder.yoctoproject.org/valkyrie/?#/builders/29/builds/2919

The following changes since commit 2b3d2b671a149cbeea2bdc9ba42192da2015c3b7:

  Revert "lib/oe/go: document map_arch, and raise an error on unknown architecture" (2025-12-11 13:41:59 -0800)

are available in the Git repository at:

  https://git.openembedded.org/openembedded-core-contrib stable/scarthgap-nut
  https://git.openembedded.org/openembedded-core-contrib/log/?h=stable/scarthgap-nut

Adarsh Jagadish Kamini (1):
  rsync: fix CVE-2025-10158

Aleksandar Nikolic (1):
  scripts/install-buildtools: Update to 5.0.14

Daniel Turull (1):
  cmake-native: fix CVE-2025-9301

Deepak Rathore (2):
  cups 2.4.11: Fix CVE-2025-58436
  cups 2.4.11: Fix CVE-2025-61915

Deepesh Varatharajan (1):
  binutils: Fix CVE-2025-11494

Enrico Jörns (1):
  cml1.bbclass: use consistent make flags for menuconfig

Jiaying Song (1):
  python3-urllib3: fix CVE-2025-66418 CVE-2025-66471

Kai Kang (1):
  qemu: fix CVE-2025-12464

Kamel Bouhara (Schneider Electric) (3):
  kernel.bbclass: Add task to export kernel configuration to SPDX
  spdx30_tasks: Add support for exporting PACKAGECONFIG to SPDX
  oeqa/selftest: oe-selftest: Add SPDX tests for kernel config and
    PACKAGECONFIG

Martin Jansa (1):
  cross.bbclass: Propagate dependencies to outhash

Mingli Yu (2):
  libxslt: Fix CVE-2025-11731
  ruby: Upgrade 3.3.5 -> 3.3.10

Moritz Haase (1):
  curl: Use host CA bundle by default for native(sdk) builds

Yash Shinde (2):
  binutils: fix CVE-2025-11839
  binutils: fix CVE-2025-11840

 meta/classes-recipe/cml1.bbclass              |   2 +-
 meta/classes-recipe/cross.bbclass             |  36 +
 meta/classes-recipe/kernel.bbclass            |  67 +-
 meta/classes/create-spdx-3.0.bbclass          |  11 +
 meta/lib/oe/spdx30_tasks.py                   |  20 +
 meta/lib/oeqa/selftest/cases/spdx.py          |  57 ++
 .../binutils/binutils-2.42.inc                |   3 +
 .../binutils/0028-CVE-2025-11494.patch        |  43 ++
 .../binutils/0029-CVE-2025-11839.patch        |  32 +
 .../binutils/0030-CVE-2025-11840.patch        |  37 +
 .../cmake/cmake-native_3.28.3.bb              |   1 +
 .../python3-urllib3/CVE-2025-66418.patch      |  80 +++
 .../python3-urllib3/CVE-2025-66471.patch      | 585 ++++++++++++++++
 .../python/python3-urllib3_2.2.2.bb           |   2 +
 meta/recipes-devtools/qemu/qemu.inc           |   1 +
 .../qemu/qemu/CVE-2025-12464.patch            |  70 ++
 .../rsync/files/CVE-2025-10158.patch          |  36 +
 meta/recipes-devtools/rsync/rsync_3.2.7.bb    |   1 +
 .../ruby/ruby/CVE-2025-27219.patch            |  31 -
 .../ruby/ruby/CVE-2025-27220.patch            |  78 ---
 .../ruby/ruby/CVE-2025-27221-0001.patch       |  57 --
 .../ruby/ruby/CVE-2025-27221-0002.patch       |  73 --
 .../ruby/{ruby_3.3.5.bb => ruby_3.3.10.bb}    |   6 +-
 meta/recipes-extended/cups/cups.inc           |   2 +
 .../cups/cups/CVE-2025-58436.patch            | 635 ++++++++++++++++++
 .../cups/cups/CVE-2025-61915.patch            | 491 ++++++++++++++
 meta/recipes-support/curl/curl_8.7.1.bb       |  11 +-
 .../libxslt/files/CVE-2025-11731.patch        |  42 ++
 .../recipes-support/libxslt/libxslt_1.1.43.bb |   3 +-
 scripts/install-buildtools                    |   4 +-
 30 files changed, 2263 insertions(+), 254 deletions(-)
 create mode 100644 meta/recipes-devtools/binutils/binutils/0028-CVE-2025-11494.patch
 create mode 100644 meta/recipes-devtools/binutils/binutils/0029-CVE-2025-11839.patch
 create mode 100644 meta/recipes-devtools/binutils/binutils/0030-CVE-2025-11840.patch
 create mode 100644 meta/recipes-devtools/python/python3-urllib3/CVE-2025-66418.patch
 create mode 100644 meta/recipes-devtools/python/python3-urllib3/CVE-2025-66471.patch
 create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2025-12464.patch
 create mode 100644 meta/recipes-devtools/rsync/files/CVE-2025-10158.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2025-27219.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2025-27220.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2025-27221-0001.patch
 delete mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2025-27221-0002.patch
 rename meta/recipes-devtools/ruby/{ruby_3.3.5.bb => ruby_3.3.10.bb} (95%)
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2025-58436.patch
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2025-61915.patch
 create mode 100644 meta/recipes-support/libxslt/files/CVE-2025-11731.patch

-- 
2.43.0



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

end of thread, other threads:[~2025-12-23 21:22 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-15 18:50 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 01/18] rust: ignore CVE-2024-43402 Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 02/18] cups: Backport fix for CVE-2024-47175 Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 03/18] libarchive: fix CVE-2024-48957 & CVE-2024-48958 Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 04/18] linux-firmware: upgrade 20240312 -> 20240909 Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 05/18] ruby: upgrade 3.2.2 -> 3.3.5 Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 06/18] ptest-runner: Update 2.4.4 -> 2.4.5 Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 07/18] sysvinit: take release tarballs from github Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 08/18] libpcre2: Update base uri PhilipHazel -> PCRE2Project Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 09/18] license: Fix directory layout issues Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 10/18] virglrenderer: Add patch to fix -int-conversion build issue Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 11/18] lib/oe/package-manager: skip processing installed-pkgs with empty globs Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 12/18] makedevs: Fix matching uid/gid Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 13/18] runqemu: Fix detection of -serial parameter Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 14/18] uboot-sign: fix counters in do_uboot_assemble_fitimage Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 15/18] recipes-bsp: usbutils: Fix usb-devices command using busybox Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 16/18] libsdl2: Fix non-deterministic configure option for libsamplerate Steve Sakoman
2024-10-15 18:50 ` [OE-core][scarthgap 17/18] image_qa: fix error handling Steve Sakoman
2024-10-15 22:41   ` Richard Purdie
2024-10-16 13:26     ` Steve Sakoman
2024-10-18 19:56       ` Peter Kjellerstedt
2024-10-18 20:19         ` Steve Sakoman
2024-10-18 21:56           ` Peter Kjellerstedt
2024-10-15 18:50 ` [OE-core][scarthgap 18/18] meta-ide-support: Mark recipe as MACHINE-specific Steve Sakoman
  -- strict thread matches above, loose matches on Subject: below --
2025-12-23 21:22 [OE-core][scarthgap 00/18] Patch review Steve Sakoman
2025-10-10  2:50 Steve Sakoman
2025-10-12 19:02 ` Gyorgy Sarvari
2025-10-12 19:19   ` Steve Sakoman
2024-08-21 12:50 Steve Sakoman
2024-08-04 17:09 Steve Sakoman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox