Re: [OE-core][PATCH] ncurses: upgrade to 6.4+20230625

2023-07-26 Thread Chen Qi via lists.openembedded.org
Thanks for the info. I thought it was a stable version. The upgrade was 
intended for resolving CVE: https://nvd.nist.gov/vuln/detail/CVE-2023-29491.
But now it's clear that such version is a development version, I'll just send 
out patch to fix the CVE.

Regards,
Qi

-Original Message-
From: Alexander Kanavin  
Sent: Thursday, July 27, 2023 12:25 PM
To: Chen, Qi 
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [OE-core][PATCH] ncurses: upgrade to 6.4+20230625

6.4+20230625 is a development snapshot, and not an actual stable release. We 
used to take them but that was due to misunderstanding about ncurses version 
policy. Is there a particular reason to move to it?

Alex

On Thu, 27 Jul 2023 at 04:25, Chen Qi via lists.openembedded.org 
 wrote:
>
> From: Chen Qi 
>
> The license checksum is updated because of the year change, the 
> license itself remains the same.
>
> The exit_prototype.patch is refreshed to avoid patch fuzz error.
>
> The repo is switched back to salsa.debian.org. It was switch from 
> salsa.debian.org to github mirror because, according to the commit 
> message, the github mirror was updated on a daily basis. But things 
> have changed and the github mirror hasn't been updated for months.
> So switch back to use salsa.debian.org.
>
> Signed-off-by: Chen Qi 
> ---
>  meta/recipes-core/ncurses/files/exit_prototype.patch | 10 +-
>  meta/recipes-core/ncurses/ncurses.inc|  4 ++--
>  meta/recipes-core/ncurses/ncurses_6.4.bb |  3 ++-
>  3 files changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/meta/recipes-core/ncurses/files/exit_prototype.patch 
> b/meta/recipes-core/ncurses/files/exit_prototype.patch
> index fd961512e0..9dddbbccf4 100644
> --- a/meta/recipes-core/ncurses/files/exit_prototype.patch
> +++ b/meta/recipes-core/ncurses/files/exit_prototype.patch
> @@ -1,4 +1,4 @@
> -From 4a769a441d7e57a23017c3037cde3e53fb9f35fe Mon Sep 17 00:00:00 
> 2001
> +From bc917b9bae0b11b02aa0ddd9ed62d9cd78ffc4f7 Mon Sep 17 00:00:00 
> +2001
>  From: Khem Raj 
>  Date: Tue, 30 Aug 2022 15:58:32 -0700
>  Subject: [PATCH] Add needed headers for including mbstate_t and 
> exit() @@ -11,18 +11,18 @@ Signed-off-by: Khem Raj 
>   1 file changed, 2 insertions(+)
>
>  diff --git a/configure b/configure
> -index f377f551..163f8899 100755
> +index c2462f7f..33668cf0 100755
>  --- a/configure
>  +++ b/configure
> -@@ -3423,6 +3423,7 @@ rm -f "conftest.$ac_objext" "conftest.$ac_ext"
> +@@ -3458,6 +3458,7 @@ rm -f "conftest.$ac_objext" "conftest.$ac_ext"
> cat >"conftest.$ac_ext" <<_ACEOF
> - #line 3424 "configure"
> + #line 3459 "configure"
>   #include "confdefs.h"
>  +#include 
>   $ac_declaration
>   int
>   main (void)
> -@@ -13111,6 +13112,7 @@ cat >"conftest.$ac_ext" <<_ACEOF
> +@@ -13526,6 +13527,7 @@ cat >"conftest.$ac_ext" <<_ACEOF
>   #include 
>   #include 
>   #include 
> diff --git a/meta/recipes-core/ncurses/ncurses.inc 
> b/meta/recipes-core/ncurses/ncurses.inc
> index 367f3b19f4..78d6f2619c 100644
> --- a/meta/recipes-core/ncurses/ncurses.inc
> +++ b/meta/recipes-core/ncurses/ncurses.inc
> @@ -2,7 +2,7 @@ SUMMARY = "The New Curses library"
>  DESCRIPTION = "SVr4 and XSI-Curses compatible curses library and terminfo 
> tools including tic, infocmp, captoinfo. Supports color, multiple highlights, 
> forms-drawing characters, and automatic recognition of keypad and 
> function-key sequences. Extensions include resizable windows and mouse 
> support on both xterm and Linux console using the gpm library."
>  HOMEPAGE = "http://www.gnu.org/software/ncurses/ncurses.html;
>  LICENSE = "MIT"
> -LIC_FILES_CHKSUM = 
> "file://COPYING;md5=c5a4600fdef86384c41ca33ecc70a4b8;endline=27"
> +LIC_FILES_CHKSUM = 
> "file://COPYING;md5=8f2e5b99d5b6c0e6ee7cb39b992733b6;endline=27"
>  SECTION = "libs"
>  DEPENDS = "ncurses-native"
>  DEPENDS:class-native = ""
> @@ -13,7 +13,7 @@ BINCONFIG = "${bindir}/ncurses5-config 
> ${bindir}/ncursesw5-config \  inherit autotools binconfig-disabled 
> multilib_header pkgconfig
>
>  # Upstream has useful patches at times at 
> ftp://invisible-island.net/ncurses/
> -SRC_URI = "git://github.com/mirror/ncurses.git;protocol=https;branch=master"
> +SRC_URI = 
> "git://salsa.debian.org/debian/ncurses.git;protocol=https;branch=master"
>
>  EXTRA_AUTORECONF = "-I m4"
>
> diff --git a/meta/recipes-core/ncurses/ncurses_6.4.bb 
> b/meta/recipes-core/ncurses/ncurses_6.4.bb
> index 1eb15673d1..b875aee250 100644
> --- a/meta/recipes-core/ncurses/ncurses_6.4.bb
> +++ b/meta/recipes-core/ncurses/ncurses_6.4.bb
> @@ -6,7 +6,8 @@ SRC_URI += "file://0001-tic-hang.patch \
> file://exit_prototype.patch \
> "
>  # commit id corresponds to the revision in package version -SRCREV = 
> "79b9071f2be20a24c7be031655a5638f6032f29f"
> +SRCREV = "964ec9f9c6e3ac3aaa1a9161c6fb75f6d7f589b5"
> +PV = "6.4+20230625"
>  S = "${WORKDIR}/git"
>  EXTRA_OECONF += "--with-abi-version=5"
>  UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+(\.\d+)+)$"
> --

Re: [OE-core] [PATCH v4] qemu: Add qemu-common package

2023-07-26 Thread Yu, Mingli

Ping.

Thanks,

On 7/17/23 15:11, Yu, Mingli wrote:

From: Mingli Yu 

We split the qemu package [1] to add support to make user can install
one qemu arch emulation rpm to ease the concerns who care much about
the rpm size in embedded device.

But for the user who only install the qemu-*.rpm can't do anything
except they install the qemu emulation rpm like qemu-system-x86-64-*.rpm
explicitly.

So add qemu-common package to package all thing into qemu-common when
not split the package, and package only the basic into qemu-common and
other arch related to each qemu arch emulation rpm when split the package
to fix the backward compatibility.

qenu-*.rpm which is meta package rdepends on qemu-common and the available
qemu arch emulation rpm like qemu-system-x86-64-*.rpm and etc.

[1] 
https://git.openembedded.org/openembedded-core/commit/?id=893846ead7ee54d53e9076150cd655e0c8bca5db

Signed-off-by: Mingli Yu 
---

v3->v4: remove the added native-sdk dependency.

  meta/recipes-devtools/qemu/qemu.inc  | 23 ---
  meta/recipes-devtools/qemu/qemu_8.0.3.bb |  2 +-
  2 files changed, 13 insertions(+), 12 deletions(-)

diff --git a/meta/recipes-devtools/qemu/qemu.inc 
b/meta/recipes-devtools/qemu/qemu.inc
index 16581db69d..76560f454d 100644
--- a/meta/recipes-devtools/qemu/qemu.inc
+++ b/meta/recipes-devtools/qemu/qemu.inc
@@ -225,15 +225,18 @@ PACKAGECONFIG[brlapi] = "--enable-brlapi,--disable-brlapi"
  PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack,"
  PACKAGECONFIG[debuginfo] = "--enable-libdw,--disable-libdw,elfutils"
  
-INSANE_SKIP:${PN} = "arch"

+INSANE_SKIP:${PN}-common = "arch"
  
  FILES:${PN} += "${datadir}/icons"
  
  # For user who want to install all arch packages

-PACKAGES =+ "${PN}-system-all ${PN}-user-all"
+PACKAGES =+ "${PN}-common"
+RDEPENDS:${PN} += "${PN}-common"
  
-ALLOW_EMPTY:${PN}-system-all = "1"

-ALLOW_EMPTY:${PN}-user-all = "1"
+ALLOW_EMPTY:${PN} = "1"
+FILES:${PN} = ""
+
+FILES:${PN}-common = "${bindir}/* ${includedir}/* ${libexecdir}/* ${datadir}/* 
${localstatedir}"
  
  PACKAGES_DYNAMIC += "^${PN}-user-.*  ^${PN}-system-.*"
  
@@ -241,15 +244,13 @@ PACKAGESPLITFUNCS =+ "split_qemu_packages"
  
  python split_qemu_packages () {

  archdir = d.expand('${bindir}/')
-syspackages = do_split_packages(d, archdir, r'^qemu-system-(.*)$', 
'${PN}-system-%s', 'QEMU full system emulation binaries(%s)' , prepend=True)
-if syspackages:
-d.setVar('RDEPENDS:' + d.getVar('PN') + '-system-all', ' 
'.join(syspackages))
+subpackages = do_split_packages(d, archdir, r'^qemu-system-(.*)$', 
'${PN}-system-%s', 'QEMU full system emulation binaries(%s)' , prepend=True, 
extra_depends='${PN}-common')
  
-userpackages = do_split_packages(d, archdir, r'^qemu-((?!system|edid|ga|img|io|nbd|pr-helper|storage-daemon).*)$', '${PN}-user-%s', 'QEMU full user emulation binaries(%s)' , prepend=True)

-if userpackages:
-d.setVar('RDEPENDS:' + d.getVar('PN') + '-user-all', ' 
'.join(userpackages))
+subpackages += do_split_packages(d, archdir, 
r'^qemu-((?!system|edid|ga|img|io|nbd|pr-helper|storage-daemon).*)$', 
'${PN}-user-%s', 'QEMU full user emulation binaries(%s)' , prepend=True, 
extra_depends='${PN}-common')
+if subpackages:
+d.appendVar('RDEPENDS:' + d.getVar('PN'), ' ' + ' '.join(subpackages))
  mipspackage = d.getVar('PN') + "-user-mips"
-if mipspackage in ' '.join(userpackages):
+if mipspackage in ' '.join(subpackages):
  d.appendVar('RDEPENDS:' + mipspackage, ' ' + d.getVar("MLPREFIX") + 
'bash')
  }
  
diff --git a/meta/recipes-devtools/qemu/qemu_8.0.3.bb b/meta/recipes-devtools/qemu/qemu_8.0.3.bb

index 42e133967e..5d3c47c3b0 100644
--- a/meta/recipes-devtools/qemu/qemu_8.0.3.bb
+++ b/meta/recipes-devtools/qemu/qemu_8.0.3.bb
@@ -8,7 +8,7 @@ DEPENDS:append:libc-musl = " libucontext"
  
  CFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_NO_X11=1', d)}"
  
-RDEPENDS:${PN}:class-target += "bash"

+RDEPENDS:${PN}-common:class-target += "bash"
  
  EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}"

  EXTRA_OECONF:append:class-target:mipsarcho32 = 
"${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', 
d)}"






-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184908): 
https://lists.openembedded.org/g/openembedded-core/message/184908
Mute This Topic: https://lists.openembedded.org/mt/100190357/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core][PATCH] ncurses: upgrade to 6.4+20230625

2023-07-26 Thread Alexander Kanavin
6.4+20230625 is a development snapshot, and not an actual stable
release. We used to take them but that was due to misunderstanding
about ncurses version policy. Is there a particular reason to move to
it?

Alex

On Thu, 27 Jul 2023 at 04:25, Chen Qi via lists.openembedded.org
 wrote:
>
> From: Chen Qi 
>
> The license checksum is updated because of the year change, the license
> itself remains the same.
>
> The exit_prototype.patch is refreshed to avoid patch fuzz error.
>
> The repo is switched back to salsa.debian.org. It was switch from
> salsa.debian.org to github mirror because, according to the commit
> message, the github mirror was updated on a daily basis. But things
> have changed and the github mirror hasn't been updated for months.
> So switch back to use salsa.debian.org.
>
> Signed-off-by: Chen Qi 
> ---
>  meta/recipes-core/ncurses/files/exit_prototype.patch | 10 +-
>  meta/recipes-core/ncurses/ncurses.inc|  4 ++--
>  meta/recipes-core/ncurses/ncurses_6.4.bb |  3 ++-
>  3 files changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/meta/recipes-core/ncurses/files/exit_prototype.patch 
> b/meta/recipes-core/ncurses/files/exit_prototype.patch
> index fd961512e0..9dddbbccf4 100644
> --- a/meta/recipes-core/ncurses/files/exit_prototype.patch
> +++ b/meta/recipes-core/ncurses/files/exit_prototype.patch
> @@ -1,4 +1,4 @@
> -From 4a769a441d7e57a23017c3037cde3e53fb9f35fe Mon Sep 17 00:00:00 2001
> +From bc917b9bae0b11b02aa0ddd9ed62d9cd78ffc4f7 Mon Sep 17 00:00:00 2001
>  From: Khem Raj 
>  Date: Tue, 30 Aug 2022 15:58:32 -0700
>  Subject: [PATCH] Add needed headers for including mbstate_t and exit()
> @@ -11,18 +11,18 @@ Signed-off-by: Khem Raj 
>   1 file changed, 2 insertions(+)
>
>  diff --git a/configure b/configure
> -index f377f551..163f8899 100755
> +index c2462f7f..33668cf0 100755
>  --- a/configure
>  +++ b/configure
> -@@ -3423,6 +3423,7 @@ rm -f "conftest.$ac_objext" "conftest.$ac_ext"
> +@@ -3458,6 +3458,7 @@ rm -f "conftest.$ac_objext" "conftest.$ac_ext"
> cat >"conftest.$ac_ext" <<_ACEOF
> - #line 3424 "configure"
> + #line 3459 "configure"
>   #include "confdefs.h"
>  +#include 
>   $ac_declaration
>   int
>   main (void)
> -@@ -13111,6 +13112,7 @@ cat >"conftest.$ac_ext" <<_ACEOF
> +@@ -13526,6 +13527,7 @@ cat >"conftest.$ac_ext" <<_ACEOF
>   #include 
>   #include 
>   #include 
> diff --git a/meta/recipes-core/ncurses/ncurses.inc 
> b/meta/recipes-core/ncurses/ncurses.inc
> index 367f3b19f4..78d6f2619c 100644
> --- a/meta/recipes-core/ncurses/ncurses.inc
> +++ b/meta/recipes-core/ncurses/ncurses.inc
> @@ -2,7 +2,7 @@ SUMMARY = "The New Curses library"
>  DESCRIPTION = "SVr4 and XSI-Curses compatible curses library and terminfo 
> tools including tic, infocmp, captoinfo. Supports color, multiple highlights, 
> forms-drawing characters, and automatic recognition of keypad and 
> function-key sequences. Extensions include resizable windows and mouse 
> support on both xterm and Linux console using the gpm library."
>  HOMEPAGE = "http://www.gnu.org/software/ncurses/ncurses.html;
>  LICENSE = "MIT"
> -LIC_FILES_CHKSUM = 
> "file://COPYING;md5=c5a4600fdef86384c41ca33ecc70a4b8;endline=27"
> +LIC_FILES_CHKSUM = 
> "file://COPYING;md5=8f2e5b99d5b6c0e6ee7cb39b992733b6;endline=27"
>  SECTION = "libs"
>  DEPENDS = "ncurses-native"
>  DEPENDS:class-native = ""
> @@ -13,7 +13,7 @@ BINCONFIG = "${bindir}/ncurses5-config 
> ${bindir}/ncursesw5-config \
>  inherit autotools binconfig-disabled multilib_header pkgconfig
>
>  # Upstream has useful patches at times at ftp://invisible-island.net/ncurses/
> -SRC_URI = "git://github.com/mirror/ncurses.git;protocol=https;branch=master"
> +SRC_URI = 
> "git://salsa.debian.org/debian/ncurses.git;protocol=https;branch=master"
>
>  EXTRA_AUTORECONF = "-I m4"
>
> diff --git a/meta/recipes-core/ncurses/ncurses_6.4.bb 
> b/meta/recipes-core/ncurses/ncurses_6.4.bb
> index 1eb15673d1..b875aee250 100644
> --- a/meta/recipes-core/ncurses/ncurses_6.4.bb
> +++ b/meta/recipes-core/ncurses/ncurses_6.4.bb
> @@ -6,7 +6,8 @@ SRC_URI += "file://0001-tic-hang.patch \
> file://exit_prototype.patch \
> "
>  # commit id corresponds to the revision in package version
> -SRCREV = "79b9071f2be20a24c7be031655a5638f6032f29f"
> +SRCREV = "964ec9f9c6e3ac3aaa1a9161c6fb75f6d7f589b5"
> +PV = "6.4+20230625"
>  S = "${WORKDIR}/git"
>  EXTRA_OECONF += "--with-abi-version=5"
>  UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+(\.\d+)+)$"
> --
> 2.40.0
>
>
> 
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184907): 
https://lists.openembedded.org/g/openembedded-core/message/184907
Mute This Topic: https://lists.openembedded.org/mt/100383999/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [kirkstone][PATCHv2] tiff: fix multiple CVEs

2023-07-26 Thread Hitendra Prajapati
Backport fixes for:
* CVE-2023-2908 - Upstream-Status: Backport from 
https://gitlab.com/libtiff/libtiff/-/commit/9bd48f0dbd64fb94dc2b5b05238fde0bfdd4ff3f
* CVE-2023-3316 - Upstream-Status: Backport from 
https://gitlab.com/libtiff/libtiff/-/commit/d63de61b1ec3385f6383ef9a1f453e4b8b11d536
* CVE-2023-3618 - Upstream-Status: Backport from 
https://gitlab.com/libtiff/libtiff/-/commit/881a070194783561fd209b7c789a4e75566f7f37
 && 
https://gitlab.com/libtiff/libtiff/-/commit/b5c7d4c4e0ac16b5cfb11acaaeaa493334f8

Signed-off-by: Hitendra Prajapati 
---
 .../libtiff/tiff/CVE-2023-2908.patch  | 33 +++
 .../libtiff/tiff/CVE-2023-3316.patch  | 59 +++
 .../libtiff/tiff/CVE-2023-3618-1.patch| 34 +++
 .../libtiff/tiff/CVE-2023-3618-2.patch| 47 +++
 meta/recipes-multimedia/libtiff/tiff_4.3.0.bb |  4 ++
 5 files changed, 177 insertions(+)
 create mode 100644 meta/recipes-multimedia/libtiff/tiff/CVE-2023-2908.patch
 create mode 100644 meta/recipes-multimedia/libtiff/tiff/CVE-2023-3316.patch
 create mode 100644 meta/recipes-multimedia/libtiff/tiff/CVE-2023-3618-1.patch
 create mode 100644 meta/recipes-multimedia/libtiff/tiff/CVE-2023-3618-2.patch

diff --git a/meta/recipes-multimedia/libtiff/tiff/CVE-2023-2908.patch 
b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-2908.patch
new file mode 100644
index 00..cf94fd23d8
--- /dev/null
+++ b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-2908.patch
@@ -0,0 +1,33 @@
+From 8c0859a80444c90b8dfb862a9f16de74e16f0a9e Mon Sep 17 00:00:00 2001
+From: xiaoxiaoafeifei 
+Date: Fri, 21 Apr 2023 13:01:34 +
+Subject: [PATCH] countInkNamesString(): fix `UndefinedBehaviorSanitizer`:
+ applying zero offset to null pointer
+
+Upstream-Status: Backport 
[https://gitlab.com/libtiff/libtiff/-/commit/9bd48f0dbd64fb94dc2b5b05238fde0bfdd4ff3f]
+CVE: CVE-2023-2908
+Signed-off-by: Hitendra Prajapati 
+---
+ libtiff/tif_dir.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libtiff/tif_dir.c b/libtiff/tif_dir.c
+index 349dfe4..1402c8e 100644
+--- a/libtiff/tif_dir.c
 b/libtiff/tif_dir.c
+@@ -145,10 +145,10 @@ static uint16_t
+ countInkNamesString(TIFF *tif, uint32_t slen, const char *s)
+ {
+   uint16_t i = 0;
+-  const char *ep = s + slen;
+-  const char *cp = s;
+ 
+   if (slen > 0) {
++  const char *ep = s + slen;
++  const char *cp = s;
+   do {
+   for (; cp < ep && *cp != '\0'; cp++) {}
+   if (cp >= ep)
+-- 
+2.25.1
+
diff --git a/meta/recipes-multimedia/libtiff/tiff/CVE-2023-3316.patch 
b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-3316.patch
new file mode 100644
index 00..1aa4ba45ac
--- /dev/null
+++ b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-3316.patch
@@ -0,0 +1,59 @@
+From d63de61b1ec3385f6383ef9a1f453e4b8b11d536 Mon Sep 17 00:00:00 2001
+From: Su_Laus 
+Date: Fri, 3 Feb 2023 17:38:55 +0100
+Subject: [PATCH] TIFFClose() avoid NULL pointer dereferencing. fix#515
+
+Closes #515
+
+Upstream-Status: Backport 
[https://gitlab.com/libtiff/libtiff/-/commit/d63de61b1ec3385f6383ef9a1f453e4b8b11d536]
+CVE: CVE-2023-3316
+Signed-off-by: Hitendra Prajapati 
+---
+ libtiff/tif_close.c | 11 +++
+ tools/tiffcrop.c|  5 -
+ 2 files changed, 11 insertions(+), 5 deletions(-)
+
+diff --git a/libtiff/tif_close.c b/libtiff/tif_close.c
+index 674518a..0fe7af4 100644
+--- a/libtiff/tif_close.c
 b/libtiff/tif_close.c
+@@ -118,13 +118,16 @@ TIFFCleanup(TIFF* tif)
+  */
+ 
+ void
+-TIFFClose(TIFF* tif)
++TIFFClose(TIFF *tif)
+ {
+-  TIFFCloseProc closeproc = tif->tif_closeproc;
+-  thandle_t fd = tif->tif_clientdata;
++if (tif != NULL)
++{
++TIFFCloseProc closeproc = tif->tif_closeproc;
++thandle_t fd = tif->tif_clientdata;
+ 
+   TIFFCleanup(tif);
+-  (void) (*closeproc)(fd);
++(void)(*closeproc)(fd);
++}
+ }
+ 
+ /* vim: set ts=8 sts=8 sw=8 noet: */
+diff --git a/tools/tiffcrop.c b/tools/tiffcrop.c
+index ce77c74..cd49660 100644
+--- a/tools/tiffcrop.c
 b/tools/tiffcrop.c
+@@ -2548,7 +2548,10 @@ main(int argc, char* argv[])
+   }
+ }
+ 
+-  TIFFClose(out);
++if (out != NULL)
++{
++TIFFClose(out);
++}
+ 
+   return (0);
+   } /* end main */
+-- 
+2.25.1
+
diff --git a/meta/recipes-multimedia/libtiff/tiff/CVE-2023-3618-1.patch 
b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-3618-1.patch
new file mode 100644
index 00..8f55d2b496
--- /dev/null
+++ b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-3618-1.patch
@@ -0,0 +1,34 @@
+From 881a070194783561fd209b7c789a4e75566f7f37 Mon Sep 17 00:00:00 2001
+From: zhailiangliang 
+Date: Tue, 7 Mar 2023 15:02:08 +0800
+Subject: [PATCH] Fix memory leak in tiffcrop.c
+
+Upstream-Status: Backport 
[https://gitlab.com/libtiff/libtiff/-/commit/881a070194783561fd209b7c789a4e75566f7f37]
+CVE: CVE-2023-3618
+Signed-off-by: Hitendra Prajapati 
+---
+ 

Re: [OE-core] [qa-build-notification] QA notification for completed autobuilder build (yocto-4.3_M2.rc2)

2023-07-26 Thread Jing Hui Tham
Hi all,
 
Intel and WR YP QA is planning for QA execution for YP build yocto-4.3_M2.rc2. 
We are planning to execute following tests for this cycle:
 
OEQA-manual tests for following module:
1. OE-Core
2. BSP-hw
 
Runtime auto test for following platforms:
1. MinnowBoard Turbot - 32bit
2. Kaby Lake (7th Generation Intel(r) Core(tm) Processors)
3. Tiger Lake (11th Generation Intel(r) Core(tm) Processors)
4. Alder Lake-S (12th Generation Intel(r) Core(tm) Processors)
5. Raptor Lake-P (13th Generation Intel(r) Core(tm) Processors)
6. Beaglebone

 
ETA for completion Monday, 7 Aug 2023.
 
Best regards,
Jing Hui


> -Original Message-
> From: qa-build-notificat...@lists.yoctoproject.org  notificat...@lists.yoctoproject.org> On Behalf Of Pokybuild User
> Sent: Thursday, July 27, 2023 8:40 AM
> To: yo...@lists.yoctoproject.org
> Cc: qa-build-notificat...@lists.yoctoproject.org
> Subject: [qa-build-notification] QA notification for completed autobuilder
> build (yocto-4.3_M2.rc2)
> 
> 
> A build flagged for QA (yocto-4.3_M2.rc2) was completed on the
> autobuilder and is available at:
> 
> 
> https://autobuilder.yocto.io/pub/releases/yocto-4.3_M2.rc2
> 
> 
> Build hash information:
> 
> bitbake: 64bc00a46d1aacc23fe7e8d9a46a126f3a4bc318
> meta-agl: 25410a640b879405d4f93585f3d74c328f487cad
> meta-arm: cfcc8a4d13c26793ecab2d8da9274eb98b8cb4ce
> meta-aws: 86966086b2dfabd7113253bc5647f87fd6d42423
> meta-intel: f2bcad2943b11b8c9d9ecdd25551a841ba98eda0
> meta-mingw: 92258028e1b5664a9f832541d5c4f6de0bd05e07
> meta-openembedded: 74e70284acb2eb2f2a47a1ab1aa5ee0928d46344
> meta-virtualization: c5079557091b215663458807a8f617752614a6bd
> oecore: 6ac110c8954e5fdb71d5495e3eebc1ca3958dc19
> poky: 3eff0eb5ea77de20d85a2ffc64652579cbd7755c
> 
> 
> 
> This is an automated message from the Yocto Project Autobuilder
> Git: git://git.yoctoproject.org/yocto-autobuilder2
> Email: richard.pur...@linuxfoundation.org
> 
> 
> 
> 
> 
> 
> 


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184905): 
https://lists.openembedded.org/g/openembedded-core/message/184905
Mute This Topic: https://lists.openembedded.org/mt/100384647/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core][PATCH] ncurses: upgrade to 6.4+20230625

2023-07-26 Thread Chen Qi via lists.openembedded.org
From: Chen Qi 

The license checksum is updated because of the year change, the license
itself remains the same.

The exit_prototype.patch is refreshed to avoid patch fuzz error.

The repo is switched back to salsa.debian.org. It was switch from
salsa.debian.org to github mirror because, according to the commit
message, the github mirror was updated on a daily basis. But things
have changed and the github mirror hasn't been updated for months.
So switch back to use salsa.debian.org.

Signed-off-by: Chen Qi 
---
 meta/recipes-core/ncurses/files/exit_prototype.patch | 10 +-
 meta/recipes-core/ncurses/ncurses.inc|  4 ++--
 meta/recipes-core/ncurses/ncurses_6.4.bb |  3 ++-
 3 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/meta/recipes-core/ncurses/files/exit_prototype.patch 
b/meta/recipes-core/ncurses/files/exit_prototype.patch
index fd961512e0..9dddbbccf4 100644
--- a/meta/recipes-core/ncurses/files/exit_prototype.patch
+++ b/meta/recipes-core/ncurses/files/exit_prototype.patch
@@ -1,4 +1,4 @@
-From 4a769a441d7e57a23017c3037cde3e53fb9f35fe Mon Sep 17 00:00:00 2001
+From bc917b9bae0b11b02aa0ddd9ed62d9cd78ffc4f7 Mon Sep 17 00:00:00 2001
 From: Khem Raj 
 Date: Tue, 30 Aug 2022 15:58:32 -0700
 Subject: [PATCH] Add needed headers for including mbstate_t and exit()
@@ -11,18 +11,18 @@ Signed-off-by: Khem Raj 
  1 file changed, 2 insertions(+)
 
 diff --git a/configure b/configure
-index f377f551..163f8899 100755
+index c2462f7f..33668cf0 100755
 --- a/configure
 +++ b/configure
-@@ -3423,6 +3423,7 @@ rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+@@ -3458,6 +3458,7 @@ rm -f "conftest.$ac_objext" "conftest.$ac_ext"
cat >"conftest.$ac_ext" <<_ACEOF
- #line 3424 "configure"
+ #line 3459 "configure"
  #include "confdefs.h"
 +#include 
  $ac_declaration
  int
  main (void)
-@@ -13111,6 +13112,7 @@ cat >"conftest.$ac_ext" <<_ACEOF
+@@ -13526,6 +13527,7 @@ cat >"conftest.$ac_ext" <<_ACEOF
  #include 
  #include 
  #include 
diff --git a/meta/recipes-core/ncurses/ncurses.inc 
b/meta/recipes-core/ncurses/ncurses.inc
index 367f3b19f4..78d6f2619c 100644
--- a/meta/recipes-core/ncurses/ncurses.inc
+++ b/meta/recipes-core/ncurses/ncurses.inc
@@ -2,7 +2,7 @@ SUMMARY = "The New Curses library"
 DESCRIPTION = "SVr4 and XSI-Curses compatible curses library and terminfo 
tools including tic, infocmp, captoinfo. Supports color, multiple highlights, 
forms-drawing characters, and automatic recognition of keypad and function-key 
sequences. Extensions include resizable windows and mouse support on both xterm 
and Linux console using the gpm library."
 HOMEPAGE = "http://www.gnu.org/software/ncurses/ncurses.html;
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = 
"file://COPYING;md5=c5a4600fdef86384c41ca33ecc70a4b8;endline=27"
+LIC_FILES_CHKSUM = 
"file://COPYING;md5=8f2e5b99d5b6c0e6ee7cb39b992733b6;endline=27"
 SECTION = "libs"
 DEPENDS = "ncurses-native"
 DEPENDS:class-native = ""
@@ -13,7 +13,7 @@ BINCONFIG = "${bindir}/ncurses5-config 
${bindir}/ncursesw5-config \
 inherit autotools binconfig-disabled multilib_header pkgconfig
 
 # Upstream has useful patches at times at ftp://invisible-island.net/ncurses/
-SRC_URI = "git://github.com/mirror/ncurses.git;protocol=https;branch=master"
+SRC_URI = 
"git://salsa.debian.org/debian/ncurses.git;protocol=https;branch=master"
 
 EXTRA_AUTORECONF = "-I m4"
 
diff --git a/meta/recipes-core/ncurses/ncurses_6.4.bb 
b/meta/recipes-core/ncurses/ncurses_6.4.bb
index 1eb15673d1..b875aee250 100644
--- a/meta/recipes-core/ncurses/ncurses_6.4.bb
+++ b/meta/recipes-core/ncurses/ncurses_6.4.bb
@@ -6,7 +6,8 @@ SRC_URI += "file://0001-tic-hang.patch \
file://exit_prototype.patch \
"
 # commit id corresponds to the revision in package version
-SRCREV = "79b9071f2be20a24c7be031655a5638f6032f29f"
+SRCREV = "964ec9f9c6e3ac3aaa1a9161c6fb75f6d7f589b5"
+PV = "6.4+20230625"
 S = "${WORKDIR}/git"
 EXTRA_OECONF += "--with-abi-version=5"
 UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+(\.\d+)+)$"
-- 
2.40.0


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184904): 
https://lists.openembedded.org/g/openembedded-core/message/184904
Mute This Topic: https://lists.openembedded.org/mt/100383999/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] rust: Add failed test cases to exclude list for Rust Oe-selftest

2023-07-26 Thread Randy MacLeod via lists.openembedded.org

I don't see this in master or master-next yet so see comments below and
send a slightly updated v2.

On 2023-07-26 12:25, Yash Shinde wrote:

Failed test cases are added to exclude list.
Drop meta/recipes-devtools/rust/files/rust-oe-selftest.patch file.

Signed-off-by: Yash Shinde
---
  meta/lib/oeqa/selftest/cases/rust.py  |  209 +-
  .../rust/files/rust-oe-selftest.patch | 2324 -
  meta/recipes-devtools/rust/rust-source.inc|1 -
  3 files changed, 208 insertions(+), 2326 deletions(-)
  delete mode 100644 meta/recipes-devtools/rust/files/rust-oe-selftest.patch


It's good to see the large patch be replaced with a 10x smaller rust.py 
change.


If this change is acceptable to others, I'd like the commit log to be 
amended to explain
how to (automatically?) update the exclude list when rust is updated. 
Alternatively

we could add that to meta/recipes-devtools/rust/README-rust.md
https://github.com/yoctoproject/poky/blob/master/meta/recipes-devtools/rust/README-rust.md

Is this a manual process now? Could it be mostly automated?

Please sort the exclude list alphabetically in v2 so that it's
easier for people to see what tests are being excluded (see below (*))

I assume that this commit doesn't change the tests that are run but only
moves the skipping from being a patch to the exclude list. Please confirm
and in your v2 commit log, mention that as well as what the current 
number of

passed and skipped tests.




diff --git a/meta/lib/oeqa/selftest/cases/rust.py 
b/meta/lib/oeqa/selftest/cases/rust.py
index 7a0fd7033d..abd3ef8314 100644
--- a/meta/lib/oeqa/selftest/cases/rust.py
+++ b/meta/lib/oeqa/selftest/cases/rust.py
@@ -70,7 +70,214 @@ class RustSelfTestSystemEmulated(OESelftestTestCase, 
OEPTestResultTestCase):
  # no-fail-fast: Run all tests regardless of failure.
  # bless: First runs rustfmt to format the codebase,
  # then runs tidy checks.
-testargs = "--exclude tests/rustdoc --exclude src/tools/rust-analyzer  
--exclude tests/rustdoc-json  --exclude tests/run-make-fulldeps --exclude src/tools/tidy 
--exclude src/tools/rustdoc-themes --exclude src/rustdoc-json-types --exclude 
src/librustdoc --exclude src/doc/unstable-book --exclude src/doc/rustdoc --exclude 
src/doc/rustc --exclude compiler/rustc --exclude library/panic_abort --exclude 
library/panic_unwind --exclude src/tools/lint-docs  --exclude tests/rustdoc-js-std --doc 
--no-fail-fast --bless"


I think you're doing two things in the 2 lines above and the list below:

 1. splitting up the testargs into one per line

 2. adding an exclude list of tests that are know to fail.

Is that true?
If so can you use two seperate variables/lists to reflect the different 
intended purpose of each list?
This should also help in maintaining each list and hopefully the tests 
that are exluded will all have a:


   tests/foo/bar.rs

format rather than somewhat worrying prefixes like:
   compiler/rustc

and

   library/panic_abort


+exclude_list = """  --exclude tests/run-make

If python will let you, please split this line like this:

+exclude_list = """
+ --exclude tests/run-make

to separate the variables from the list name to make future updates a bit 
easier.


+--exclude tests/run-make/pgo-branch-weights/
+--exclude 
tests/ui/macros/restricted-shadowing-legacy.rs
+--exclude tests/ui-fulldeps/issue-14021.rs



>< -- the middle bits of the long unsorted list.



+--exclude library/panic_unwind
+--exclude src/tools/lint-docs
+--exclude tests/rustdoc-js-std"""


Similarly, if python will let you, put the terminating triple quote on a 
new line with proper identation of course.


These last two comments are "nice-to-have" so just call me a python 
newbie if that's not possible or is not pythonic!



+
+exclude_fail_tests = exclude_list.split("\n")
+exclude_fail_tests = " ".join(exclude_fail_tests)
+
+# Add exclude_fail_tests with other test arguments
+testargs =  exclude_fail_tests + " --doc --no-fail-fast --bless"
  
  # Set path for target-poky-linux-gcc, RUST_TARGET_PATH and hosttools.

  cmd = " export PATH=%s/recipe-sysroot-native/usr/bin:$PATH;" % 
rustlibpath
diff --git a/meta/recipes-devtools/rust/files/rust-oe-selftest.patch 
b/meta/recipes-devtools/rust/files/rust-oe-selftest.patch


><  -- giant 10x bigger than it needs to be patch



-diff --git a/tests/run-make/pointer-auth-link-with-c/Makefile 
b/tests/run-make/pointer-auth-link-with-c/Makefile
-index dffbd303582..5347d0a90f1 100644
 a/tests/run-make/pointer-auth-link-with-c/Makefile
-+++ b/tests/run-make/pointer-auth-link-with-c/Makefile
-@@ -1,3 +1,4 @@
-+# ignore-stage1
- include 

Re: [OE-core] [PATCH] createrepo-c: Fix 32 bit architecture segfaults with 64 bit time

2023-07-26 Thread Khem Raj
On Wed, Jul 26, 2023 at 12:50 PM Richard Purdie
 wrote:
>
> After including time64.inc, createrepo-c was segfaulting on 32 bit 
> architectures
> when creating repo indexes (even for an empty repo).
>
> Add a patch from Khem to fix this and some other compiler warnings related to 
> 64
> bit time on 32 bit.
>
> [YOCTO #15170]
>
> Signed-off-by: Richard Purdie 
> ---
>  .../createrepo-c/createrepo-c/time64fix.patch | 69 +++
>  .../createrepo-c/createrepo-c_0.21.1.bb   |  1 +
>  2 files changed, 70 insertions(+)
>  create mode 100644 
> meta/recipes-devtools/createrepo-c/createrepo-c/time64fix.patch
>
> diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c/time64fix.patch 
> b/meta/recipes-devtools/createrepo-c/createrepo-c/time64fix.patch
> new file mode 100644
> index 000..d022d95b703
> --- /dev/null
> +++ b/meta/recipes-devtools/createrepo-c/createrepo-c/time64fix.patch
> @@ -0,0 +1,69 @@
> +From 89e1c9415fb8438310036d5810cdb7da75ee3a7f Mon Sep 17 00:00:00 2001
> +From: Khem Raj 
> +Date: Wed, 26 Jul 2023 12:27:14 -0700
> +Subject: [PATCH] Adjust printf formats for 64bit time_t on 32bit systems
> +
> +Fixes format specifier mismatch warnings as well while here
> +
> +e.g.
> +warning: format '%ld' expects argument of type 'long int', but argument 2 
> has type 'time_t'
> +
> +Upstream-Status: Pending

Its also submitted upstream now so you may want to change the status
to Submitted [https://github.com/rpm-software-management/createrepo_c/pull/376]

> +
> +Signed-off-by: Khem Raj 
> +---
> + src/createrepo_c.c| 4 ++--
> + src/misc.c| 4 ++--
> + src/xml_dump_repomd.c | 2 +-
> + 3 files changed, 5 insertions(+), 5 deletions(-)
> +
> +diff --git a/src/createrepo_c.c b/src/createrepo_c.c
> +index 8681419..0f9048a 100644
> +--- a/src/createrepo_c.c
>  b/src/createrepo_c.c
> +@@ -582,9 +582,9 @@ duplicates_warning(const char *nevra, GArray *locations, 
> CmdDupNevra option)
> +   for (size_t i=0; ilen; i++) {
> +   struct DuplicateLocation location = g_array_index(locations, struct
> + DuplicateLocation, 
> i);
> +-  g_warning("Sourced from location: \'%s\', build timestamp: %ld%s",
> ++  g_warning("Sourced from location: \'%s\', build timestamp: %jd%s",
> + location.location,
> +-location.pkg->time_build,
> ++(intmax_t) location.pkg->time_build,
> + location.pkg->skip_dump ? skip_reason : "");
> +
> +   }
> +diff --git a/src/misc.c b/src/misc.c
> +index 8511ca2..7866c7b 100644
> +--- a/src/misc.c
>  b/src/misc.c
> +@@ -1512,11 +1512,11 @@ cr_append_pid_and_datetime(const char *str, const 
> char *suffix)
> + gettimeofday(, NULL);
> + timeinfo = localtime (&(tv.tv_sec));
> + strftime(datetime, 80, "%Y%m%d%H%M%S", timeinfo);
> +-gchar *result = g_strdup_printf("%s%jd.%s.%ld%s",
> ++gchar *result = g_strdup_printf("%s%jd.%s.%jd%s",
> + str ? str : "",
> + (intmax_t) getpid(),
> + datetime,
> +-tv.tv_usec,
> ++(intmax_t) tv.tv_usec,
> + suffix ? suffix : "");
> + return result;
> + }
> +diff --git a/src/xml_dump_repomd.c b/src/xml_dump_repomd.c
> +index 33b0e09..9d24249 100644
> +--- a/src/xml_dump_repomd.c
>  b/src/xml_dump_repomd.c
> +@@ -143,7 +143,7 @@ cr_xml_dump_repomd_body(xmlNodePtr root, cr_Repomd 
> *repomd)
> +BAD_CAST repomd->revision);
> + } else {
> + // Use the current time if no revision was explicitly specified
> +-gchar *rev = g_strdup_printf("%ld", time(NULL));
> ++gchar *rev = g_strdup_printf("%jd", (intmax_t) time(NULL));
> + xmlNewChild(root, NULL, BAD_CAST "revision", BAD_CAST rev);
> + g_free(rev);
> + }
> +--
> +2.41.0
> +
> diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c_0.21.1.bb 
> b/meta/recipes-devtools/createrepo-c/createrepo-c_0.21.1.bb
> index 5080131dc1e..57f23b8dfdb 100644
> --- a/meta/recipes-devtools/createrepo-c/createrepo-c_0.21.1.bb
> +++ b/meta/recipes-devtools/createrepo-c/createrepo-c_0.21.1.bb
> @@ -8,6 +8,7 @@ SRC_URI = 
> "git://github.com/rpm-software-management/createrepo_c;branch=master;p
> file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch 
> \
> file://0001-include-rpm-rpmstring.h.patch \
> file://0001-src-cmd_parser.c-add-a-missing-parameter-name.patch \
> +   file://time64fix.patch \
> "
>
>  SRCREV = "0652d7303ce236e596c83c29ccc9bee7868fce6e"
> --
> 2.39.2
>
>
> 
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184902): 
https://lists.openembedded.org/g/openembedded-core/message/184902
Mute This Topic: 

[OE-core] [PATCH] createrepo-c: Fix 32 bit architecture segfaults with 64 bit time

2023-07-26 Thread Richard Purdie
After including time64.inc, createrepo-c was segfaulting on 32 bit architectures
when creating repo indexes (even for an empty repo).

Add a patch from Khem to fix this and some other compiler warnings related to 64
bit time on 32 bit.

[YOCTO #15170]

Signed-off-by: Richard Purdie 
---
 .../createrepo-c/createrepo-c/time64fix.patch | 69 +++
 .../createrepo-c/createrepo-c_0.21.1.bb   |  1 +
 2 files changed, 70 insertions(+)
 create mode 100644 
meta/recipes-devtools/createrepo-c/createrepo-c/time64fix.patch

diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c/time64fix.patch 
b/meta/recipes-devtools/createrepo-c/createrepo-c/time64fix.patch
new file mode 100644
index 000..d022d95b703
--- /dev/null
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c/time64fix.patch
@@ -0,0 +1,69 @@
+From 89e1c9415fb8438310036d5810cdb7da75ee3a7f Mon Sep 17 00:00:00 2001
+From: Khem Raj 
+Date: Wed, 26 Jul 2023 12:27:14 -0700
+Subject: [PATCH] Adjust printf formats for 64bit time_t on 32bit systems
+
+Fixes format specifier mismatch warnings as well while here
+
+e.g.
+warning: format '%ld' expects argument of type 'long int', but argument 2 has 
type 'time_t'
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj 
+---
+ src/createrepo_c.c| 4 ++--
+ src/misc.c| 4 ++--
+ src/xml_dump_repomd.c | 2 +-
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/src/createrepo_c.c b/src/createrepo_c.c
+index 8681419..0f9048a 100644
+--- a/src/createrepo_c.c
 b/src/createrepo_c.c
+@@ -582,9 +582,9 @@ duplicates_warning(const char *nevra, GArray *locations, 
CmdDupNevra option)
+   for (size_t i=0; ilen; i++) {
+   struct DuplicateLocation location = g_array_index(locations, struct
+ DuplicateLocation, i);
+-  g_warning("Sourced from location: \'%s\', build timestamp: %ld%s",
++  g_warning("Sourced from location: \'%s\', build timestamp: %jd%s",
+ location.location,
+-location.pkg->time_build,
++(intmax_t) location.pkg->time_build,
+ location.pkg->skip_dump ? skip_reason : "");
+ 
+   }
+diff --git a/src/misc.c b/src/misc.c
+index 8511ca2..7866c7b 100644
+--- a/src/misc.c
 b/src/misc.c
+@@ -1512,11 +1512,11 @@ cr_append_pid_and_datetime(const char *str, const char 
*suffix)
+ gettimeofday(, NULL);
+ timeinfo = localtime (&(tv.tv_sec));
+ strftime(datetime, 80, "%Y%m%d%H%M%S", timeinfo);
+-gchar *result = g_strdup_printf("%s%jd.%s.%ld%s",
++gchar *result = g_strdup_printf("%s%jd.%s.%jd%s",
+ str ? str : "",
+ (intmax_t) getpid(),
+ datetime,
+-tv.tv_usec,
++(intmax_t) tv.tv_usec,
+ suffix ? suffix : "");
+ return result;
+ }
+diff --git a/src/xml_dump_repomd.c b/src/xml_dump_repomd.c
+index 33b0e09..9d24249 100644
+--- a/src/xml_dump_repomd.c
 b/src/xml_dump_repomd.c
+@@ -143,7 +143,7 @@ cr_xml_dump_repomd_body(xmlNodePtr root, cr_Repomd *repomd)
+BAD_CAST repomd->revision);
+ } else {
+ // Use the current time if no revision was explicitly specified
+-gchar *rev = g_strdup_printf("%ld", time(NULL));
++gchar *rev = g_strdup_printf("%jd", (intmax_t) time(NULL));
+ xmlNewChild(root, NULL, BAD_CAST "revision", BAD_CAST rev);
+ g_free(rev);
+ }
+-- 
+2.41.0
+
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c_0.21.1.bb 
b/meta/recipes-devtools/createrepo-c/createrepo-c_0.21.1.bb
index 5080131dc1e..57f23b8dfdb 100644
--- a/meta/recipes-devtools/createrepo-c/createrepo-c_0.21.1.bb
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c_0.21.1.bb
@@ -8,6 +8,7 @@ SRC_URI = 
"git://github.com/rpm-software-management/createrepo_c;branch=master;p
file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
file://0001-include-rpm-rpmstring.h.patch \
file://0001-src-cmd_parser.c-add-a-missing-parameter-name.patch \
+   file://time64fix.patch \
"
 
 SRCREV = "0652d7303ce236e596c83c29ccc9bee7868fce6e"
-- 
2.39.2


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184901): 
https://lists.openembedded.org/g/openembedded-core/message/184901
Mute This Topic: https://lists.openembedded.org/mt/100378249/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] rust: Fix BOOTSTRAP_CARGO failure during Rust Oe-selftest

2023-07-26 Thread Shinde, Yash via lists.openembedded.org
Please take this patch(to be patched first) along with 
https://lists.openembedded.org/g/openembedded-core/message/184896 ( 
https://lists.openembedded.org/g/openembedded-core/message/184896 ) to avoid 
merge failures.

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184900): 
https://lists.openembedded.org/g/openembedded-core/message/184900
Mute This Topic: https://lists.openembedded.org/mt/100373873/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] rust: Add failed test cases to exclude list for Rust Oe-selftest

2023-07-26 Thread Shinde, Yash via lists.openembedded.org
Please take this patch(to be patched after # 184890 ( 
https://lists.openembedded.org/g/openembedded-core/message/184890 ) ) along 
with https://lists.openembedded.org/g/openembedded-core/message/184890 to avoid 
merge failure.

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184899): 
https://lists.openembedded.org/g/openembedded-core/message/184899
Mute This Topic: https://lists.openembedded.org/mt/100374212/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] rust: Add failed test cases to exclude list for Rust Oe-selftest

2023-07-26 Thread Shinde, Yash via lists.openembedded.org
On Wed, Jul 26, 2023 at 09:55 PM, Shinde, Yash wrote:

> 
> file://rust-oe-selftest.patch;patchdir=${RUSTSRC} \

Please take this patch(to be patched after # 184890 ( 
https://lists.openembedded.org/g/openembedded-core/message/184890 ) ) along 
with https://lists.openembedded.org/g/openembedded-core/message/184890 to avoid 
merge failure.

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184898): 
https://lists.openembedded.org/g/openembedded-core/message/184898
Mute This Topic: https://lists.openembedded.org/mt/100374212/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] rust: Fix BOOTSTRAP_CARGO failure during Rust Oe-selftest

2023-07-26 Thread Shinde, Yash via lists.openembedded.org
Please take this patch(to be patched first) along with 
https://lists.openembedded.org/g/openembedded-core/message/184896 ( 
https://lists.openembedded.org/g/openembedded-core/message/184896 ) to avoid 
merge failures.

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184897): 
https://lists.openembedded.org/g/openembedded-core/message/184897
Mute This Topic: https://lists.openembedded.org/mt/100373873/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] rust: Add failed test cases to exclude list for Rust Oe-selftest

2023-07-26 Thread Shinde, Yash via lists.openembedded.org
Failed test cases are added to exclude list.
Drop meta/recipes-devtools/rust/files/rust-oe-selftest.patch file.

Signed-off-by: Yash Shinde 
---
 meta/lib/oeqa/selftest/cases/rust.py  |  209 +-
 .../rust/files/rust-oe-selftest.patch | 2324 -
 meta/recipes-devtools/rust/rust-source.inc|1 -
 3 files changed, 208 insertions(+), 2326 deletions(-)
 delete mode 100644 meta/recipes-devtools/rust/files/rust-oe-selftest.patch

diff --git a/meta/lib/oeqa/selftest/cases/rust.py 
b/meta/lib/oeqa/selftest/cases/rust.py
index 7a0fd7033d..abd3ef8314 100644
--- a/meta/lib/oeqa/selftest/cases/rust.py
+++ b/meta/lib/oeqa/selftest/cases/rust.py
@@ -70,7 +70,214 @@ class RustSelfTestSystemEmulated(OESelftestTestCase, 
OEPTestResultTestCase):
 # no-fail-fast: Run all tests regardless of failure.
 # bless: First runs rustfmt to format the codebase,
 # then runs tidy checks.
-testargs = "--exclude tests/rustdoc --exclude 
src/tools/rust-analyzer  --exclude tests/rustdoc-json  --exclude 
tests/run-make-fulldeps --exclude src/tools/tidy --exclude 
src/tools/rustdoc-themes --exclude src/rustdoc-json-types --exclude 
src/librustdoc --exclude src/doc/unstable-book --exclude src/doc/rustdoc 
--exclude src/doc/rustc --exclude compiler/rustc --exclude library/panic_abort 
--exclude library/panic_unwind --exclude src/tools/lint-docs  --exclude 
tests/rustdoc-js-std --doc --no-fail-fast --bless"
+exclude_list = """  --exclude tests/run-make
+--exclude tests/run-make/pgo-branch-weights/
+--exclude 
tests/ui/macros/restricted-shadowing-legacy.rs
+--exclude tests/ui-fulldeps/issue-14021.rs
+--exclude 
tests/rustdoc/intra-doc/issue-103463.rs
+--exclude 
tests/run-make/pgo-indirect-call-promotion/
+--exclude tests/rustdoc/async-move-doctest.rs
+--exclude 
tests/ui-fulldeps/internal-lints/diagnostics.rs
+--exclude 
tests/ui-fulldeps/internal-lints/qualified_ty_ty_ctxt.rs
+--exclude 
tests/rustdoc/issue-73061-cross-crate-opaque-assoc-type.rs
+--exclude tests/codegen/abi-repr-ext.rs
+--exclude 
tests/codegen/repr-transparent-aggregates-3.rs
+--exclude 
tests/rustdoc/intra-doc/extern-inherent-impl.rs
+--exclude 
tests/rustdoc/test_option_check/test.rs
+--exclude tests/rustdoc-ui/display-output.rs
+--exclude 
tests/ui-fulldeps/rustc_encodable_hygiene.rs
+--exclude tests/ui/process/process-sigpipe.rs
+--exclude tests/ui-fulldeps/deriving-global.rs
+--exclude 
tests/codegen/noalias-rwlockreadguard.rs
+--exclude tests/rustdoc/normalize-assoc-item.rs
+--exclude tests/ui-fulldeps/deriving-hygiene.rs
+--exclude 
tests/ui/structs-enums/multiple-reprs.rs
+--exclude tests/run-make/profile/
+--exclude 
tests/ui/functions-closures/fn-help-with-err.rs
+--exclude 
tests/ui-fulldeps/lint-group-denied-lint-allowed.rs
+--exclude tests/ui/process/nofile-limit.rs
+--exclude tests/rustdoc/issue-43153.rs
+--exclude 
tests/rustdoc/intra-doc/cross-crate/submodule-inner.rs
+--exclude tests/codegen/abi-x86-interrupt.rs
+--exclude 
tests/ui-fulldeps/internal-lints/bad_opt_access.rs
+--exclude 
tests/ui-fulldeps/lint-group-forbid-always-trumps-cli.rs
+--exclude tests/rustdoc/issue-40936.rs
+--exclude tests/rustdoc/issue-57180.rs
+--exclude 
tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs
+--exclude tests/rustdoc/reexports-priv.rs
+--exclude 
tests/rustdoc/intra-doc/cross-crate/traits.rs
+--exclude tests/codegen/cf-protection.rs
+--exclude 
tests/rustdoc/intra-doc/issue-104145.rs
+--exclude tests/rustdoc-ui/nocapture.rs
+--exclude tests/rustdoc/pub-extern-crate.rs
+--exclude 
tests/ui/associated-type-bounds/fn-wrap-apit.rs
+--exclude tests/rustdoc/issue-23106.rs
+

[OE-core] [PATCH 4/4] selftest/cases/glibc.py: switch to using NFS over TCP

2023-07-26 Thread Anuj Mittal
This provides a more reliable test execution when running tests that
write a large buffer/file and significantly reduces the localedata test
failures.

Signed-off-by: Anuj Mittal 
---
 meta/lib/oeqa/selftest/cases/glibc.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/lib/oeqa/selftest/cases/glibc.py 
b/meta/lib/oeqa/selftest/cases/glibc.py
index c300aef913..924df6c5a6 100644
--- a/meta/lib/oeqa/selftest/cases/glibc.py
+++ b/meta/lib/oeqa/selftest/cases/glibc.py
@@ -45,7 +45,7 @@ class GlibcSelfTestBase(OESelftestTestCase, 
OEPTestResultTestCase):
 with contextlib.ExitStack() as s:
 # use the base work dir, as the nfs mount, since the recipe 
directory may not exist
 tmpdir = get_bb_var("BASE_WORKDIR")
-nfsport, mountport = s.enter_context(unfs_server(tmpdir))
+nfsport, mountport = s.enter_context(unfs_server(tmpdir, udp = 
False))
 
 # build core-image-minimal with required packages
 default_installed_packages = [
@@ -74,7 +74,7 @@ class GlibcSelfTestBase(OESelftestTestCase, 
OEPTestResultTestCase):
 # setup nfs mount
 if qemu.run("mkdir -p \"{0}\"".format(tmpdir))[0] != 0:
 raise Exception("Failed to setup NFS mount directory on 
target")
-mountcmd = "mount -o noac,nfsvers=3,port={0},udp,mountport={1} 
\"{2}:{3}\" \"{3}\"".format(nfsport, mountport, qemu.server_ip, tmpdir)
+mountcmd = "mount -o noac,nfsvers=3,port={0},mountport={1} 
\"{2}:{3}\" \"{3}\"".format(nfsport, mountport, qemu.server_ip, tmpdir)
 status, output = qemu.run(mountcmd)
 if status != 0:
 raise Exception("Failed to setup NFS mount on target 
({})".format(repr(output)))
-- 
2.41.0


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184895): 
https://lists.openembedded.org/g/openembedded-core/message/184895
Mute This Topic: https://lists.openembedded.org/mt/100374117/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH 3/4] oeqa/utils/nfs: allow requesting non-udp ports

2023-07-26 Thread Anuj Mittal
Allows setting up NFS over TCP as well.

Signed-off-by: Anuj Mittal 
---
 meta/lib/oeqa/utils/nfs.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/lib/oeqa/utils/nfs.py b/meta/lib/oeqa/utils/nfs.py
index b66ed42a58..903469bfee 100644
--- a/meta/lib/oeqa/utils/nfs.py
+++ b/meta/lib/oeqa/utils/nfs.py
@@ -12,7 +12,7 @@ from oeqa.utils.commands import bitbake, get_bb_var, Command
 from oeqa.utils.network import get_free_port
 
 @contextlib.contextmanager
-def unfs_server(directory, logger = None):
+def unfs_server(directory, logger = None, udp = True):
 unfs_sysroot = get_bb_var("RECIPE_SYSROOT_NATIVE", "unfs3-native")
 if not os.path.exists(os.path.join(unfs_sysroot, "usr", "bin", "unfsd")):
 # build native tool
@@ -26,7 +26,7 @@ def unfs_server(directory, logger = None):
 exports.write("{0} 
(rw,no_root_squash,no_all_squash,insecure)\n".format(directory).encode())
 
 # find some ports for the server
-nfsport, mountport = get_free_port(udp = True), get_free_port(udp = 
True)
+nfsport, mountport = get_free_port(udp), get_free_port(udp)
 
 nenv = dict(os.environ)
 nenv['PATH'] = 
"{0}/sbin:{0}/usr/sbin:{0}/usr/bin:".format(unfs_sysroot) + nenv.get('PATH', '')
-- 
2.41.0


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184894): 
https://lists.openembedded.org/g/openembedded-core/message/184894
Mute This Topic: https://lists.openembedded.org/mt/100374116/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH 2/4] selftest/cases/glibc.py: increase the memory for testing

2023-07-26 Thread Anuj Mittal
Some of the tests trigger OOM and fail. Increase the amount of memory
available so we dont run into these issues.

Signed-off-by: Anuj Mittal 
---
 meta/lib/oeqa/selftest/cases/glibc.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oeqa/selftest/cases/glibc.py 
b/meta/lib/oeqa/selftest/cases/glibc.py
index 4ec4b85d67..c300aef913 100644
--- a/meta/lib/oeqa/selftest/cases/glibc.py
+++ b/meta/lib/oeqa/selftest/cases/glibc.py
@@ -65,7 +65,7 @@ class GlibcSelfTestBase(OESelftestTestCase, 
OEPTestResultTestCase):
 bitbake("core-image-minimal")
 
 # start runqemu
-qemu = s.enter_context(runqemu("core-image-minimal", runqemuparams 
= "nographic"))
+qemu = s.enter_context(runqemu("core-image-minimal", runqemuparams 
= "nographic", qemuparams = "-m 1024"))
 
 # validate that SSH is working
 status, _ = qemu.run("uname")
-- 
2.41.0


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184893): 
https://lists.openembedded.org/g/openembedded-core/message/184893
Mute This Topic: https://lists.openembedded.org/mt/100374115/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH 1/4] glibc/check-test-wrapper: don't emit warnings from ssh

2023-07-26 Thread Anuj Mittal
Dont fill up the test log with ssh warning about having added the host
to list of known hosts.

Also helps fix a test case failure where stderr log was being compared
to a known value.

Signed-off-by: Anuj Mittal 
---
 meta/recipes-core/glibc/glibc/check-test-wrapper | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-core/glibc/glibc/check-test-wrapper 
b/meta/recipes-core/glibc/glibc/check-test-wrapper
index 6ec9b9b29e..5cc993f718 100644
--- a/meta/recipes-core/glibc/glibc/check-test-wrapper
+++ b/meta/recipes-core/glibc/glibc/check-test-wrapper
@@ -58,7 +58,7 @@ elif targettype == "ssh":
 user = os.environ.get("SSH_HOST_USER", None)
 port = os.environ.get("SSH_HOST_PORT", None)
 
-command = ["ssh", "-o", "UserKnownHostsFile=/dev/null", "-o", 
"StrictHostKeyChecking=no"]
+command = ["ssh", "-o", "UserKnownHostsFile=/dev/null", "-o", 
"StrictHostKeyChecking=no", "-o", "LogLevel=quiet"]
 if port:
 command += ["-p", str(port)]
 if not host:
-- 
2.41.0


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184892): 
https://lists.openembedded.org/g/openembedded-core/message/184892
Mute This Topic: https://lists.openembedded.org/mt/100374114/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH 0/4] Fix glibc test failures when running through qemu

2023-07-26 Thread Anuj Mittal
After applying these changes, the number of tests failing for glibc come
down to 69 on autobuilder. Result summary for qemux86-64:

---
---
Recipe   | Passed   | Failed   | Skipped | Time(s)
---
---
binutils | 289  | 0| 8   | -
binutils-gas | 1582 | 4| 1   | -
binutils-ld  | 1622 | 6| 111 | -
gcc  | 149696   | 28   | 27599   | -
gcc-g++  | 219260   | 30   | 21108   | -
gcc-libatomic| 27   | 1| 27  | -
gcc-libgomp  | 3426 | 1| 1962| -
gcc-libitm   | 24   | 1| 24  | -
gcc-libstdc++-v3 | 9695 | 32   | 5459| -
glibc| 4984 | 69   | 147 | -
rust | 15768| 0| 554 | -
---
---

Some of the remaining failing tests (~8) need python/gdb or gprof to be
installed. Some (~8) seem to be still triggering out of memory errors.

Some others (~26) fail while trying to setup test container with error:
error: test-container.c:844: Cannot create testroot lock

Anuj Mittal (4):
  glibc/check-test-wrapper: don't emit warnings from ssh
  selftest/cases/glibc.py: increase the memory for testing
  oeqa/utils/nfs: allow requesting non-udp ports
  selftest/cases/glibc.py: switch to using NFS over TCP

 meta/lib/oeqa/selftest/cases/glibc.py| 6 +++---
 meta/lib/oeqa/utils/nfs.py   | 4 ++--
 meta/recipes-core/glibc/glibc/check-test-wrapper | 2 +-
 3 files changed, 6 insertions(+), 6 deletions(-)

-- 
2.41.0


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184891): 
https://lists.openembedded.org/g/openembedded-core/message/184891
Mute This Topic: https://lists.openembedded.org/mt/100374113/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] rust: Fix BOOTSTRAP_CARGO failure during Rust Oe-selftest

2023-07-26 Thread Shinde, Yash via lists.openembedded.org
BOOTSTRAP_CARGO command fails due to codegen flags like `-Cpanic` were
prevented from being reflected in the current target configuration which
leads to Rust build(rust version 1.70) failure in Oe-selftest.

Upstream-Status: Backport 
[https://github.com/rust-lang/rust/commit/9dffb52738e0b2ccd15af36d4607a709b21e020c]

Signed-off-by: Yash Shinde 
---
 .../rust/files/bootstrap_fail.patch   | 127 ++
 meta/recipes-devtools/rust/rust-source.inc|   1 +
 2 files changed, 128 insertions(+)
 create mode 100644 meta/recipes-devtools/rust/files/bootstrap_fail.patch

diff --git a/meta/recipes-devtools/rust/files/bootstrap_fail.patch 
b/meta/recipes-devtools/rust/files/bootstrap_fail.patch
new file mode 100644
index 00..1f44b6eaf6
--- /dev/null
+++ b/meta/recipes-devtools/rust/files/bootstrap_fail.patch
@@ -0,0 +1,127 @@
+rust: Fix BOOTSTRAP_CARGO failure during Rust Oe-selftest
+
+BOOTSTRAP_CARGO command fails due to codegen flags like `-Cpanic` were
+prevented from being reflected in the current target configuration which
+leads to Rust build(rust version 1.70) failure in Oe-selftest.
+
+Upstream-Status: Backport 
[https://github.com/rust-lang/rust/commit/9dffb52738e0b2ccd15af36d4607a709b21e020c]
+
+Signed-off-by: Yash Shinde 
+---
+diff --git a/src/tools/compiletest/src/common.rs 
b/src/tools/compiletest/src/common.rs
+--- a/src/tools/compiletest/src/common.rs
 b/src/tools/compiletest/src/common.rs
+@@ -431,7 +431,6 @@
+ .unwrap()
+ };
+
+-let mut current = None;
+ let mut all_targets = HashSet::new();
+ let mut all_archs = HashSet::new();
+ let mut all_oses = HashSet::new();
+@@ -452,14 +451,11 @@
+ }
+ all_pointer_widths.insert(format!("{}bit", cfg.pointer_width));
+
+-if target == config.target {
+-current = Some(cfg);
+-}
+ all_targets.insert(target.into());
+ }
+
+ Self {
+-current: current.expect("current target not found"),
++current: Self::get_current_target_config(config),
+ all_targets,
+ all_archs,
+ all_oses,
+@@ -471,6 +467,89 @@
+ }
+ }
+
++fn get_current_target_config(config: ) -> TargetCfg {
++let mut arch = None;
++let mut os = None;
++let mut env = None;
++let mut abi = None;
++let mut families = Vec::new();
++let mut pointer_width = None;
++let mut endian = None;
++let mut panic = None;
++
++for config in
++rustc_output(config, &["--print=cfg", "--target", 
]).trim().lines()
++{
++let (name, value) = config
++.split_once("=\"")
++.map(|(name, value)| {
++(
++name,
++Some(
++value
++.strip_suffix("\"")
++.expect("key-value pair should be properly 
quoted"),
++),
++)
++})
++.unwrap_or_else(|| (config, None));
++
++match name {
++"target_arch" => {
++arch = Some(value.expect("target_arch should be a 
key-value pair").to_string());
++}
++"target_os" => {
++os = Some(value.expect("target_os sould be a key-value 
pair").to_string());
++}
++"target_env" => {
++env = Some(value.expect("target_env should be a key-value 
pair").to_string());
++}
++"target_abi" => {
++abi = Some(value.expect("target_abi should be a key-value 
pair").to_string());
++}
++"target_family" => {
++families
++.push(value.expect("target_family should be a 
key-value pair").to_string());
++}
++"target_pointer_width" => {
++pointer_width = Some(
++value
++.expect("target_pointer_width should be a 
key-value pair")
++.parse::()
++.expect("target_pointer_width should be a valid 
u32"),
++);
++}
++"target_endian" => {
++endian = Some(match value.expect("target_endian should be 
a key-value pair") {
++"big" => Endian::Big,
++"little" => Endian::Little,
++_ => panic!("target_endian should be either 'big' or 
'little'"),
++});
++}
++"panic" => {
++panic = Some(match value.expect("panic should be a 
key-value pair") {
++"abort" => PanicStrategy::Abort,

[OE-core] [PATCH] rust: Fix BOOTSTRAP_CARGO failure during Rust Oe-selftest

2023-07-26 Thread Shinde, Yash via lists.openembedded.org
BOOTSTRAP_CARGO command fails due to codegen flags like `-Cpanic` were
prevented from being reflected in the current target configuration which
leads to Rust build(rust version 1.70) failure in Oe-selftest.

Upstream-Status: Backport 
[https://github.com/rust-lang/rust/commit/9dffb52738e0b2ccd15af36d4607a709b21e020c]

Signed-off-by: Yash Shinde 
---
 .../rust/files/bootstrap_fail.patch   | 127 ++
 meta/recipes-devtools/rust/rust-source.inc|   1 +
 2 files changed, 128 insertions(+)
 create mode 100644 meta/recipes-devtools/rust/files/bootstrap_fail.patch

diff --git a/meta/recipes-devtools/rust/files/bootstrap_fail.patch 
b/meta/recipes-devtools/rust/files/bootstrap_fail.patch
new file mode 100644
index 00..1f44b6eaf6
--- /dev/null
+++ b/meta/recipes-devtools/rust/files/bootstrap_fail.patch
@@ -0,0 +1,127 @@
+rust: Fix BOOTSTRAP_CARGO failure during Rust Oe-selftest
+
+BOOTSTRAP_CARGO command fails due to codegen flags like `-Cpanic` were
+prevented from being reflected in the current target configuration which
+leads to Rust build(rust version 1.70) failure in Oe-selftest.
+
+Upstream-Status: Backport 
[https://github.com/rust-lang/rust/commit/9dffb52738e0b2ccd15af36d4607a709b21e020c]
+
+Signed-off-by: Yash Shinde 
+---
+diff --git a/src/tools/compiletest/src/common.rs 
b/src/tools/compiletest/src/common.rs
+--- a/src/tools/compiletest/src/common.rs
 b/src/tools/compiletest/src/common.rs
+@@ -431,7 +431,6 @@
+ .unwrap()
+ };
+
+-let mut current = None;
+ let mut all_targets = HashSet::new();
+ let mut all_archs = HashSet::new();
+ let mut all_oses = HashSet::new();
+@@ -452,14 +451,11 @@
+ }
+ all_pointer_widths.insert(format!("{}bit", cfg.pointer_width));
+
+-if target == config.target {
+-current = Some(cfg);
+-}
+ all_targets.insert(target.into());
+ }
+
+ Self {
+-current: current.expect("current target not found"),
++current: Self::get_current_target_config(config),
+ all_targets,
+ all_archs,
+ all_oses,
+@@ -471,6 +467,89 @@
+ }
+ }
+
++fn get_current_target_config(config: ) -> TargetCfg {
++let mut arch = None;
++let mut os = None;
++let mut env = None;
++let mut abi = None;
++let mut families = Vec::new();
++let mut pointer_width = None;
++let mut endian = None;
++let mut panic = None;
++
++for config in
++rustc_output(config, &["--print=cfg", "--target", 
]).trim().lines()
++{
++let (name, value) = config
++.split_once("=\"")
++.map(|(name, value)| {
++(
++name,
++Some(
++value
++.strip_suffix("\"")
++.expect("key-value pair should be properly 
quoted"),
++),
++)
++})
++.unwrap_or_else(|| (config, None));
++
++match name {
++"target_arch" => {
++arch = Some(value.expect("target_arch should be a 
key-value pair").to_string());
++}
++"target_os" => {
++os = Some(value.expect("target_os sould be a key-value 
pair").to_string());
++}
++"target_env" => {
++env = Some(value.expect("target_env should be a key-value 
pair").to_string());
++}
++"target_abi" => {
++abi = Some(value.expect("target_abi should be a key-value 
pair").to_string());
++}
++"target_family" => {
++families
++.push(value.expect("target_family should be a 
key-value pair").to_string());
++}
++"target_pointer_width" => {
++pointer_width = Some(
++value
++.expect("target_pointer_width should be a 
key-value pair")
++.parse::()
++.expect("target_pointer_width should be a valid 
u32"),
++);
++}
++"target_endian" => {
++endian = Some(match value.expect("target_endian should be 
a key-value pair") {
++"big" => Endian::Big,
++"little" => Endian::Little,
++_ => panic!("target_endian should be either 'big' or 
'little'"),
++});
++}
++"panic" => {
++panic = Some(match value.expect("panic should be a 
key-value pair") {
++"abort" => PanicStrategy::Abort,

[OE-core] [PATCH] rust: Fix BOOTSTRAP_CARGO failure during Rust Oe-selftest

2023-07-26 Thread Shinde, Yash via lists.openembedded.org
BOOTSTRAP_CARGO command fails due to codegen flags like `-Cpanic` were
prevented from being reflected in the current target configuration which
leads to Rust build(rust version 1.70) failure in Oe-selftest.

Upstream-Status: Backport 
[https://github.com/rust-lang/rust/commit/9dffb52738e0b2ccd15af36d4607a709b21e020c]

Signed-off-by: Yash Shinde 
---
 .../rust/files/bootstrap_fail.patch   | 127 ++
 meta/recipes-devtools/rust/rust-source.inc|   1 +
 2 files changed, 128 insertions(+)
 create mode 100644 meta/recipes-devtools/rust/files/bootstrap_fail.patch

diff --git a/meta/recipes-devtools/rust/files/bootstrap_fail.patch 
b/meta/recipes-devtools/rust/files/bootstrap_fail.patch
new file mode 100644
index 00..1f44b6eaf6
--- /dev/null
+++ b/meta/recipes-devtools/rust/files/bootstrap_fail.patch
@@ -0,0 +1,127 @@
+rust: Fix BOOTSTRAP_CARGO failure during Rust Oe-selftest
+
+BOOTSTRAP_CARGO command fails due to codegen flags like `-Cpanic` were
+prevented from being reflected in the current target configuration which
+leads to Rust build(rust version 1.70) failure in Oe-selftest.
+
+Upstream-Status: Backport 
[https://github.com/rust-lang/rust/commit/9dffb52738e0b2ccd15af36d4607a709b21e020c]
+
+Signed-off-by: Yash Shinde 
+---
+diff --git a/src/tools/compiletest/src/common.rs 
b/src/tools/compiletest/src/common.rs
+--- a/src/tools/compiletest/src/common.rs
 b/src/tools/compiletest/src/common.rs
+@@ -431,7 +431,6 @@
+ .unwrap()
+ };
+
+-let mut current = None;
+ let mut all_targets = HashSet::new();
+ let mut all_archs = HashSet::new();
+ let mut all_oses = HashSet::new();
+@@ -452,14 +451,11 @@
+ }
+ all_pointer_widths.insert(format!("{}bit", cfg.pointer_width));
+
+-if target == config.target {
+-current = Some(cfg);
+-}
+ all_targets.insert(target.into());
+ }
+
+ Self {
+-current: current.expect("current target not found"),
++current: Self::get_current_target_config(config),
+ all_targets,
+ all_archs,
+ all_oses,
+@@ -471,6 +467,89 @@
+ }
+ }
+
++fn get_current_target_config(config: ) -> TargetCfg {
++let mut arch = None;
++let mut os = None;
++let mut env = None;
++let mut abi = None;
++let mut families = Vec::new();
++let mut pointer_width = None;
++let mut endian = None;
++let mut panic = None;
++
++for config in
++rustc_output(config, &["--print=cfg", "--target", 
]).trim().lines()
++{
++let (name, value) = config
++.split_once("=\"")
++.map(|(name, value)| {
++(
++name,
++Some(
++value
++.strip_suffix("\"")
++.expect("key-value pair should be properly 
quoted"),
++),
++)
++})
++.unwrap_or_else(|| (config, None));
++
++match name {
++"target_arch" => {
++arch = Some(value.expect("target_arch should be a 
key-value pair").to_string());
++}
++"target_os" => {
++os = Some(value.expect("target_os sould be a key-value 
pair").to_string());
++}
++"target_env" => {
++env = Some(value.expect("target_env should be a key-value 
pair").to_string());
++}
++"target_abi" => {
++abi = Some(value.expect("target_abi should be a key-value 
pair").to_string());
++}
++"target_family" => {
++families
++.push(value.expect("target_family should be a 
key-value pair").to_string());
++}
++"target_pointer_width" => {
++pointer_width = Some(
++value
++.expect("target_pointer_width should be a 
key-value pair")
++.parse::()
++.expect("target_pointer_width should be a valid 
u32"),
++);
++}
++"target_endian" => {
++endian = Some(match value.expect("target_endian should be 
a key-value pair") {
++"big" => Endian::Big,
++"little" => Endian::Little,
++_ => panic!("target_endian should be either 'big' or 
'little'"),
++});
++}
++"panic" => {
++panic = Some(match value.expect("panic should be a 
key-value pair") {
++"abort" => PanicStrategy::Abort,

Re: [OE-core] [kirkstone][PATCH] tiff: fix multiple CVEs

2023-07-26 Thread Steve Sakoman
It would be quite helpful to me if in the future you would send multiple
patches to the same recipe as a patch series rather than individually.

That way I won't have to try to figure out which order you intended them to
be applied!

Steve

On Tue, Jul 25, 2023 at 8:09 PM Hitendra Prajapati 
wrote:

> Backport fixes for:
> * CVE-2023-25433 - Upstream-Status: Backport from
> https://gitlab.com/libtiff/libtiff/-/commit/9c22495e5eeeae9e00a1596720c969656bb8d678
> &&
> https://gitlab.com/libtiff/libtiff/-/commit/688012dca2c39033aa2dc7bcea9796787cfd1b44
> * CVE-2023-25434 & CVE-2023-25435 - Upstream-Status: Backport from
> https://gitlab.com/libtiff/libtiff/-/commit/69818e2f2d246e6631ac2a2da692c3706b849c38
>
> Signed-off-by: Hitendra Prajapati 
> ---
>  .../libtiff/tiff/CVE-2023-25433.patch | 195 ++
>  .../tiff/CVE-2023-25434-CVE-2023-25435.patch  |  94 +
>  meta/recipes-multimedia/libtiff/tiff_4.3.0.bb |   2 +
>  3 files changed, 291 insertions(+)
>  create mode 100644
> meta/recipes-multimedia/libtiff/tiff/CVE-2023-25433.patch
>  create mode 100644
> meta/recipes-multimedia/libtiff/tiff/CVE-2023-25434-CVE-2023-25435.patch
>
> diff --git a/meta/recipes-multimedia/libtiff/tiff/CVE-2023-25433.patch
> b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-25433.patch
> new file mode 100644
> index 00..285aa3d1c4
> --- /dev/null
> +++ b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-25433.patch
> @@ -0,0 +1,195 @@
> +From 9c22495e5eeeae9e00a1596720c969656bb8d678 Mon Sep 17 00:00:00 2001
> +From: Su_Laus 
> +Date: Fri, 3 Feb 2023 15:31:31 +0100
> +Subject: [PATCH] CVE-2023-25433
> +
> +tiffcrop correctly update buffersize after rotateImage()
> +fix#520 rotateImage() set up a new buffer and calculates its size
> +individually. Therefore, seg_buffs[] size needs to be updated accordingly.
> +Before this fix, the seg_buffs buffer size was calculated with a different
> +formula than within rotateImage().
> +
> +Closes #520.
> +
> +Upstream-Status: Backport [
> https://gitlab.com/libtiff/libtiff/-/commit/9c22495e5eeeae9e00a1596720c969656bb8d678
> &&
> https://gitlab.com/libtiff/libtiff/-/commit/688012dca2c39033aa2dc7bcea9796787cfd1b44
> ]
> +CVE: CVE-2023-25433
> +Signed-off-by: Hitendra Prajapati 
> +---
> + tools/tiffcrop.c | 78 +---
> + 1 file changed, 60 insertions(+), 18 deletions(-)
> +
> +diff --git a/tools/tiffcrop.c b/tools/tiffcrop.c
> +index eee26bf..cbd24cc 100644
> +--- a/tools/tiffcrop.c
>  b/tools/tiffcrop.c
> +@@ -523,7 +523,7 @@ static int rotateContigSamples24bits(uint16_t,
> uint16_t, uint16_t, uint32_t,
> + static int rotateContigSamples32bits(uint16_t, uint16_t, uint16_t,
> uint32_t,
> +  uint32_t, uint32_t, uint8_t *,
> uint8_t *);
> + static int rotateImage(uint16_t, struct image_data *, uint32_t *,
> uint32_t *,
> +-   unsigned char **, int);
> ++   unsigned char **, size_t *);
> + static int mirrorImage(uint16_t, uint16_t, uint16_t, uint32_t, uint32_t,
> +unsigned char *);
> + static int invertImage(uint16_t, uint16_t, uint16_t, uint32_t, uint32_t,
> +@@ -6515,7 +6515,7 @@ static int  correct_orientation(struct image_data
> *image, unsigned char **work_b
> +* but switch xres, yres there. */
> +   uint32_t width = image->width;
> +   uint32_t length = image->length;
> +-  if (rotateImage(rotation, image, , , work_buff_ptr,
> TRUE))
> ++  if (rotateImage(rotation, image, , , work_buff_ptr,
> NULL))
> +   {
> +   TIFFError ("correct_orientation", "Unable to rotate image");
> +   return (-1);
> +@@ -7695,16 +7695,19 @@ processCropSelections(struct image_data *image,
> struct crop_mask *crop,
> +
> + if (crop->crop_mode & CROP_ROTATE) /* rotate should be last as it
> can reallocate the buffer */
> +   {
> ++/* rotateImage() set up a new buffer and calculates its size
> ++ * individually. Therefore, seg_buffs size  needs to be updated
> ++ * accordingly. */
> ++  size_t rot_buf_size = 0;
> +   if (rotateImage(crop->rotation, image, >combined_width,
> +-  >combined_length, _buff, FALSE))
> ++  >combined_length, _buff, _buf_size))
> + {
> + TIFFError("processCropSelections",
> +   "Failed to rotate composite regions by %"PRIu32"
> degrees", crop->rotation);
> + return (-1);
> + }
> +   seg_buffs[0].buffer = crop_buff;
> +-  seg_buffs[0].size = (((crop->combined_width * image->bps + 7 ) / 8)
> +-* image->spp) * crop->combined_length;
> ++  seg_buffs[0].size = rot_buf_size;
> +   }
> + }
> +   else  /* Separated Images */
> +@@ -7804,9 +7807,13 @@ processCropSelections(struct image_data *image,
> struct crop_mask *crop,
> + {
> +   /* rotateImage() changes image->width, ->length, ->xres and
> ->yres, what 

Re: [OE-core] [kirkstone][PATCH] tiff: fix multiple CVEs

2023-07-26 Thread Anuj Mittal
On Wed, 2023-07-26 at 17:20 +0530, Hitendra Prajapati wrote:
> +Upstream-Status: Backport
> [https://gitlab.com/libtiff/libtiff/-/commit/b5c7d4c4e0ac16b5cfb1
> 1acaaeaa493334f8]
> +CVE: CVE-2023-3618
> +Signed-off-by: Hitendra Prajapati 
> +---
> + tools/tiffcrop.c | 18 +++---
> + 1 file changed, 15 insertions(+), 3 deletions(-)
> +
> +diff --git a/tools/tiffcrop.c b/tools/tiffcrop.c
> +index ce77c74..2c553e3 100644
> +--- a/tools/tiffcrop.c
>  b/tools/tiffcrop.c
> +@@ -2459,9 +2459,15 @@ main(int argc, char* argv[])
> + {  /* Whole image or sections not based on output page size
> */
> + if (crop.selections > 0)
> +   {
> +-  writeSelections(in, , , , , seg_buffs,
> +-  mp, argv[argc - 1], _page,
> total_pages);
> +-  }
> ++ if (writeSelections(in, , , , ,
> ++ seg_buffs, mp, argv[argc - 1],
> ++ _page, total_pages))
> ++  {
> ++    TIFFError("main",
> ++  "Unable to write new image selections");
> ++    exit(EXIT_FAILURE);
> ++  }
> ++  }
> + else  /* One file all images and sections */
> +   {
> +   if (update_output_file (, mp, crop.exp_mode, argv[argc
> - 1],
> +@@ -7836,6 +7842,12 @@ createCroppedImage(struct image_data *image,
> struct crop_mask *crop,
> + 
> +   read_buff = *read_buff_ptr;
> + 
> ++  /* Memory is freed before crop_buff_ptr is overwritten */
> ++    if (*crop_buff_ptr != NULL)
> ++    {
> ++    _TIFFfree(*crop_buff_ptr);
> ++    }
> ++

This doesn't seem to be part of the commit mentioned above in Upstream-
Status. This change is coming from:

https://gitlab.com/libtiff/libtiff/-/commit/881a070194783561fd209b7c789a4e75566f7f37

Please backport it as a separate patch.

> +   /* process full image, no crop buffer needed */
> +   crop_buff = read_buff;

The commit 881a070194 actually removes this assignment but your patch
doesn't seem to be doing that ...

Thanks,

Anuj


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184886): 
https://lists.openembedded.org/g/openembedded-core/message/184886
Mute This Topic: https://lists.openembedded.org/mt/100345399/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core][dunfell][PATCH] go: fix CVE-2023-29406 net/http: insufficient sanitization of Host header

2023-07-26 Thread vkumbhar
Signed-off-by: Vivek Kumbhar 
---
 meta/recipes-devtools/go/go-1.14.inc  |   1 +
 .../go/go-1.14/CVE-2023-29406.patch   | 212 ++
 2 files changed, 213 insertions(+)
 create mode 100644 meta/recipes-devtools/go/go-1.14/CVE-2023-29406.patch

diff --git a/meta/recipes-devtools/go/go-1.14.inc 
b/meta/recipes-devtools/go/go-1.14.inc
index 33b53b1a34..b2cf805d2d 100644
--- a/meta/recipes-devtools/go/go-1.14.inc
+++ b/meta/recipes-devtools/go/go-1.14.inc
@@ -68,6 +68,7 @@ SRC_URI += "\
 file://CVE-2023-29402.patch \
 file://CVE-2023-29404.patch \
 file://CVE-2023-29400.patch \
+file://CVE-2023-29406.patch \
 "
 
 SRC_URI_append_libc-musl = " 
file://0009-ld-replace-glibc-dynamic-linker-with-musl.patch"
diff --git a/meta/recipes-devtools/go/go-1.14/CVE-2023-29406.patch 
b/meta/recipes-devtools/go/go-1.14/CVE-2023-29406.patch
new file mode 100644
index 00..080def4682
--- /dev/null
+++ b/meta/recipes-devtools/go/go-1.14/CVE-2023-29406.patch
@@ -0,0 +1,212 @@
+From 5fa6923b1ea891400153d04ddf1545e23b40041b Mon Sep 17 00:00:00 2001
+From: Damien Neil 
+Date: Wed, 28 Jun 2023 13:20:08 -0700
+Subject: [PATCH] [release-branch.go1.19] net/http: validate Host header before
+ sending
+
+Verify that the Host header we send is valid.
+Avoids surprising behavior such as a Host of "go.dev\r\nX-Evil:oops"
+adding an X-Evil header to HTTP/1 requests.
+
+Add a test, skip the test for HTTP/2. HTTP/2 is not vulnerable to
+header injection in the way HTTP/1 is, but x/net/http2 doesn't validate
+the header and will go into a retry loop when the server rejects it.
+CL 506995 adds the necessary validation to x/net/http2.
+
+Updates #60374
+Fixes #61075
+For CVE-2023-29406
+
+Change-Id: I05cb6866a9bead043101954dfded199258c6dd04
+Reviewed-on: https://go-review.googlesource.com/c/go/+/506996
+Reviewed-by: Tatiana Bradley 
+TryBot-Result: Gopher Robot 
+Run-TryBot: Damien Neil 
+(cherry picked from commit 499458f7ca04087958987a33c2703c3ef03e27e2)
+Reviewed-on: https://go-review.googlesource.com/c/go/+/507358
+Run-TryBot: Tatiana Bradley 
+Reviewed-by: Roland Shoemaker 
+
+Upstream-Status: Backport 
[https://github.com/golang/go/commit/5fa6923b1ea891400153d04ddf1545e23b40041b]
+CVE: CVE-2023-29406
+Signed-off-by: Vivek Kumbhar 
+---
+ src/net/http/http_test.go  | 29 -
+ src/net/http/request.go| 47 --
+ src/net/http/request_test.go   | 11 ++--
+ src/net/http/transport_test.go | 18 +
+ 4 files changed, 31 insertions(+), 74 deletions(-)
+
+diff --git a/src/net/http/http_test.go b/src/net/http/http_test.go
+index f4ea52d..ea38cb4 100644
+--- a/src/net/http/http_test.go
 b/src/net/http/http_test.go
+@@ -49,35 +49,6 @@ func TestForeachHeaderElement(t *testing.T) {
+   }
+ }
+
+-func TestCleanHost(t *testing.T) {
+-  tests := []struct {
+-  in, want string
+-  }{
+-  {"www.google.com", "www.google.com"},
+-  {"www.google.com foo", "www.google.com"},
+-  {"www.google.com/foo", "www.google.com"},
+-  {" first character is a space", ""},
+-  {"[1::6]:8080", "[1::6]:8080"},
+-
+-  // Punycode:
+-  {"гофер.рф/foo", "xn--c1ae0ajs.xn--p1ai"},
+-  {"bücher.de", "xn--bcher-kva.de"},
+-  {"bücher.de:8080", "xn--bcher-kva.de:8080"},
+-  // Verify we convert to lowercase before punycode:
+-  {"BÜCHER.de", "xn--bcher-kva.de"},
+-  {"BÜCHER.de:8080", "xn--bcher-kva.de:8080"},
+-  // Verify we normalize to NFC before punycode:
+-  {"gophér.nfc", "xn--gophr-esa.nfc"},// NFC input; 
no work needed
+-  {"goph\u0065\u0301r.nfd", "xn--gophr-esa.nfd"}, // NFD input
+-  }
+-  for _, tt := range tests {
+-  got := cleanHost(tt.in)
+-  if tt.want != got {
+-  t.Errorf("cleanHost(%q) = %q, want %q", tt.in, got, 
tt.want)
+-  }
+-  }
+-}
+-
+ // Test that cmd/go doesn't link in the HTTP server.
+ //
+ // This catches accidental dependencies between the HTTP transport and
+diff --git a/src/net/http/request.go b/src/net/http/request.go
+index cb2edd2..2706300 100644
+--- a/src/net/http/request.go
 b/src/net/http/request.go
+@@ -18,7 +18,6 @@ import (
+   "io/ioutil"
+   "mime"
+   "mime/multipart"
+-  "net"
+   "net/http/httptrace"
+   "net/textproto"
+   "net/url"
+@@ -26,7 +25,8 @@ import (
+   "strconv"
+   "strings"
+   "sync"
+-
++
++  "golang.org/x/net/http/httpguts"
+   "golang.org/x/net/idna"
+ )
+
+@@ -557,12 +557,19 @@ func (r *Request) write(w io.Writer, usingProxy bool, 
extraHeaders Header, waitF
+   // is not given, use the host from the request URL.
+   //
+   // Clean the host, in case it arrives with unexpected stuff in it.
+-  host := cleanHost(r.Host)
++  host := r.Host

[OE-core] [kirkstone][PATCH] libxcrypt: fix build with perl-5.38 and use master branch

2023-07-26 Thread Martin Jansa
* fixes do_configure failure:
  checking whether all ucontext.h functions are available... yes
  when is deprecated at 
libxcrypt/4.4.30-r0/git/build-aux/scripts/BuildCommon.pm line 522.
  Compilation failed in require at 
../git/build-aux/scripts/expand-selected-hashes line 28.
  BEGIN failed--compilation aborted at 
../git/build-aux/scripts/expand-selected-hashes line 28.
  configure: error: bad value 'all' for --enable-hashes
  NOTE: The following config.log files may provide further information.

* with this patch backported it works OK:
  libxcrypt/4.4.30-r0/git $ perl build-aux/scripts/expand-selected-hashes
  usage: expand-selected-hashes hashes.conf names,of,selected,hashes

* similarly do_compile failure:
  ../git/build-aux/scripts/move-if-change crypt-hashes.h.T crypt-hashes.h
  ../git/build-aux/scripts/move-if-change crypt-symbol-vers.h.T 
crypt-symbol-vers.h
  given is deprecated at ../git/build-aux/scripts/gen-crypt-h line 41.
  Makefile:3818: Makefile.deps: No such file or directory
  make: *** [Makefile:3715: crypt.h.stamp] Error 255

* also use master branch instead of develop, the SRCREV exists in both
  but stable metadata branches should track stable component branches

  libxcrypt/4.4.30-r0/git $ git branch -a --contains 
d7fe1ac04c326dba7e0440868889d1dccb41a175 | tee
  * develop
remotes/origin/HEAD -> origin/develop
remotes/origin/develop
remotes/origin/master

  and oe-core master also uses master SRCBRANCH since:
  
https://git.openembedded.org/openembedded-core/commit/?id=d18e89bd2b46c6e266cc39dbe9fdb6c032f5f1fe

Signed-off-by: Martin Jansa 
---
 ...ommon.pm-compatible-with-latest-perl.patch | 50 +++
 ...ve-smartmatch-usage-from-gen-crypt-h.patch | 62 +++
 meta/recipes-core/libxcrypt/libxcrypt.inc |  7 ++-
 3 files changed, 117 insertions(+), 2 deletions(-)
 create mode 100644 
meta/recipes-core/libxcrypt/files/0001-Make-BuildCommon.pm-compatible-with-latest-perl.patch
 create mode 100644 
meta/recipes-core/libxcrypt/files/0002-Remove-smartmatch-usage-from-gen-crypt-h.patch

diff --git 
a/meta/recipes-core/libxcrypt/files/0001-Make-BuildCommon.pm-compatible-with-latest-perl.patch
 
b/meta/recipes-core/libxcrypt/files/0001-Make-BuildCommon.pm-compatible-with-latest-perl.patch
new file mode 100644
index 00..b3e43d5815
--- /dev/null
+++ 
b/meta/recipes-core/libxcrypt/files/0001-Make-BuildCommon.pm-compatible-with-latest-perl.patch
@@ -0,0 +1,50 @@
+From c3ec04f1aee68970b82e4b033bee1477e76798f9 Mon Sep 17 00:00:00 2001
+From: Leon Timmermans 
+Date: Tue, 6 Jun 2023 17:03:57 +0200
+Subject: [PATCH] Make BuildCommon.pm compatible with latest perl
+
+It was previously using an experimental feature that has since been dropped.
+This removes the use of that feature.
+
+Signed-off-by: Martin Jansa 
+Upstream-Status: Backport [v4.4.35 
https://github.com/besser82/libxcrypt/commit/ce562f4d33dc090fcd8f6ea1af3ba32cdc2b3c9c]
+---
+ build-aux/scripts/BuildCommon.pm | 9 -
+ 1 file changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/build-aux/scripts/BuildCommon.pm 
b/build-aux/scripts/BuildCommon.pm
+index 0e6f2a3..c38ba21 100644
+--- a/build-aux/scripts/BuildCommon.pm
 b/build-aux/scripts/BuildCommon.pm
+@@ -11,7 +11,6 @@ use v5.14;# implicit use strict, use feature ':5.14'
+ use warnings FATAL => 'all';
+ use utf8;
+ use open qw(:utf8);
+-no  if $] >= 5.018, warnings => 'experimental::smartmatch';
+ no  if $] >= 5.022, warnings => 'experimental::re_strict';
+ use if $] >= 5.022, re   => 'strict';
+ 
+@@ -519,19 +518,19 @@ sub parse_symver_args {
+ my $COMPAT_ABI;
+ local $_;
+ for (@args) {
+-when (/^SYMVER_MIN=(.+)$/) {
++if (/^SYMVER_MIN=(.+)$/) {
+ $usage_error->() if defined $SYMVER_MIN;
+ $SYMVER_MIN = $1;
+ }
+-when (/^SYMVER_FLOOR=(.+)$/) {
++elsif (/^SYMVER_FLOOR=(.+)$/) {
+ $usage_error->() if defined $SYMVER_FLOOR;
+ $SYMVER_FLOOR = $1;
+ }
+-when (/^COMPAT_ABI=(.+)$/) {
++elsif (/^COMPAT_ABI=(.+)$/) {
+ $usage_error->() if defined $COMPAT_ABI;
+ $COMPAT_ABI = $1;
+ }
+-default {
++else {
+ $usage_error->() if defined $map_in;
+ $map_in = $_;
+ }
diff --git 
a/meta/recipes-core/libxcrypt/files/0002-Remove-smartmatch-usage-from-gen-crypt-h.patch
 
b/meta/recipes-core/libxcrypt/files/0002-Remove-smartmatch-usage-from-gen-crypt-h.patch
new file mode 100644
index 00..603f52f792
--- /dev/null
+++ 
b/meta/recipes-core/libxcrypt/files/0002-Remove-smartmatch-usage-from-gen-crypt-h.patch
@@ -0,0 +1,62 @@
+From 95d6e03ae37f4ec948474d05bbdd2938aba2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20K=2E=20H=C3=BCttel?= 
+Date: Sun, 25 Jun 2023 01:35:08 +0200
+Subject: [PATCH] Remove smartmatch usage from gen-crypt-h
+
+Needed for Perl 5.38
+
+Signed-off-by: Martin Jansa 
+Upstream-Status: Backport [v4.4.36 

Re: [OE-core] [PATCH] rpm: Allow setting platform macro settings externally

2023-07-26 Thread Zoltan Boszormenyi

2023. 07. 25. 18:30 keltezéssel, Alexander Kanavin írta:

I would want to hold this until we have a reaction from upstream.


Now we have reaction. Both PRs were closed because they were not
against master, my bad. Now reopened against master as
https://github.com/rpm-software-management/rpm/pull/2585

But there was some real comment here:
https://github.com/rpm-software-management/rpm/pull/2580#issuecomment-1651647277

The discussion may/should be taken to the issue at
https://github.com/rpm-software-management/rpm/issues/2578


RPM_CUSTOM_* exports should go to specific tasks where they are needed.

Alex

On Tue, 25 Jul 2023 at 15:57, Zoltán Böszörményi  wrote:

Feed platform settings to installplatform externally. Based on the patch
submitted under https://github.com/rpm-software-management/rpm/pull/2579

Signed-off-by: Zoltán Böszörményi 
---
  ...ng-plaform-macro-settings-externally.patch | 56 +++
  meta/recipes-devtools/rpm/rpm_4.18.1.bb   | 17 ++
  2 files changed, 73 insertions(+)
  create mode 100644 
meta/recipes-devtools/rpm/files/0001-Allow-setting-plaform-macro-settings-externally.patch

diff --git 
a/meta/recipes-devtools/rpm/files/0001-Allow-setting-plaform-macro-settings-externally.patch
 
b/meta/recipes-devtools/rpm/files/0001-Allow-setting-plaform-macro-settings-externally.patch
new file mode 100644
index 00..8b3220f114
--- /dev/null
+++ 
b/meta/recipes-devtools/rpm/files/0001-Allow-setting-plaform-macro-settings-externally.patch
@@ -0,0 +1,56 @@
+From 320f4f3861dad70342f065004311eac143d6522d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ 
+Date: Tue, 25 Jul 2023 10:56:44 +0200
+Subject: [PATCH] Allow setting plaform macro settings externally
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Yocto has their own way to set the platform names via BSPs
+(Board Support Packages). These names are more specific than
+basic CPU architectures, and such a platform name ends up in
+/etc/rpm/platform but the corresponding subdirectory under
+/usr/lib/rpm/platform does not exist.
+
+Allow creating such custom platform subdirectory with feeding
+the necessary data using external variables: RPM_CUSTOM_ARCH,
+RPM_CUSTOM_ISANAME, RPM_CUSTOM_ISABITS, RPM_CUSTOM_CANONARCH
+and RPM_CUSTOM_CANONCOLOR
+
+Signed-off-by: Zoltán Böszörményi 
+Upstream-Status: Submitted 
[https://github.com/rpm-software-management/rpm/pull/2579]
+---
+ installplatform | 9 -
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/installplatform b/installplatform
+index a5ad7c5b8..59f57697b 100755
+--- a/installplatform
 b/installplatform
+@@ -11,7 +11,7 @@ VENDOR="${4}"
+ OS="${5}"
+ RPMRC_GNU="${6}"
+
+-for ARCH in noarch `grep ^arch_canon $RPMRC | cut -d: -f2`; do
++for ARCH in noarch `grep ^arch_canon $RPMRC | cut -d: -f2` 
${RPM_CUSTOM_ARCH:+custom}; do
+   RPMRC_OPTFLAGS="`sed -n 's/^optflags: '$ARCH' //p' $RPMRC`"
+   RPMRC_OPTFLAGS="`echo $RPMRC_OPTFLAGS | sed -e 's, ,\ ,g'`"
+   case $RPMRC_OPTFLAGS in
+@@ -30,6 +30,13 @@ for ARCH in noarch `grep ^arch_canon $RPMRC | cut -d: -f2`; 
do
+   CANONCOLOR=
+   FILTER=cat
+   case "${ARCH}" in
++custom)
++  ARCH=$RPM_CUSTOM_ARCH
++  ISANAME=$RPM_CUSTOM_ISANAME
++  ISABITS=$RPM_CUSTOM_ISABITS
++  CANONARCH=$RPM_CUSTOM_CANONARCH
++  CANONCOLOR=$RPM_CUSTOM_CANONCOLOR
++;;
+ sparc64*)
+   ISANAME=sparc
+   ISABITS=64
+--
+2.41.0
+
diff --git a/meta/recipes-devtools/rpm/rpm_4.18.1.bb 
b/meta/recipes-devtools/rpm/rpm_4.18.1.bb
index 95a9e92f96..bc036fc843 100644
--- a/meta/recipes-devtools/rpm/rpm_4.18.1.bb
+++ b/meta/recipes-devtools/rpm/rpm_4.18.1.bb
@@ -40,6 +40,7 @@ SRC_URI = 
"git://github.com/rpm-software-management/rpm;branch=rpm-4.18.x;protoc
 file://0001-python-Use-Py_hash_t-instead-of-long-in-hdr_hash.patch 
\
 file://fix-declaration.patch \
 file://ea3187cfcf9cac87e5bc5e7db79b0338da9e355e.patch \
+   file://0001-Allow-setting-plaform-macro-settings-externally.patch \
 "

  PE = "1"
@@ -103,6 +104,21 @@ WRAPPER_TOOLS = " \
 ${libdir}/rpm/rpmdeps \
  "

+def rpm_isaname(d):
+import re
+arch = d.getVar('TARGET_ARCH')
+if re.match("^i.86$", arch) or re.match("^x86.*64$", arch):
+return "x86"
+# Add more platform tweaks for ISANAME as needed
+return arch
+
+export RPM_CUSTOM_ARCH = "${MACHINE_ARCH}"
+export RPM_CUSTOM_ISANAME = "${@rpm_isaname(d)}"
+export RPM_CUSTOM_ISABITS = "${SITEINFO_BITS}"
+export RPM_CUSTOM_CANONARCH = "${TARGET_ARCH}"
+# CANONCOLOR determines whether /usr/lib or /usr/lib64 is used for a 64-bit 
platform
+export RPM_CUSTOM_CANONCOLOR = "${@bb.utils.contains('DISTRO_FEATURES', 'multilib', 
'3', '0', d)}"
+
  do_configure:prepend() {
  mkdir -p ${S}/build-aux
  }
@@ -132,6 +148,7 @@ do_install:append:class-nativesdk() {
  do_install:append:class-target() {
  rm -rf ${D}/var
  }
+
  

Re: [OE-core] [PATCH] oe.data: allow to mask out secret variables

2023-07-26 Thread Richard Purdie
On Wed, 2023-07-26 at 14:02 +0200, Enrico Scholz via
lists.openembedded.org wrote:
> Alexander Kanavin  writes:
> 
> > > Else, there are sometimes not many ways to work without them.
> > > E.g. SSTATE_MIRRORS has contain the secret token because it is
> > > used directly by bitbake; perhaps I could use a wget wrapper and
> > > write a custom curl python class...
> > 
> > Yes, the secret needs to be in a file (or other access-controlled
> > facility), and read from it by the process that needs it, and only
> > directly prior to using it. Having it in a bitbake variable which gets
> > passed through a million tasks and components
> 
> Where is the problem?  I known only one component
> (rootfs-postcommands.bbclass) which dumps the whole environment and
> leaks it.
> 
> Else, when there is a malicious component that wants to steal secrets
> from a bitbake variable, what would stop it from reading the secret from
> a file?
> 
> Your suggestion (write secrets in files instead of bitbake variables)
> does not improve security but causes only extra work.

It does improve security since there is an extra step to get the data
and you can more easily audit when that data is accessed or present.

I'd also note that there are patches under review to change rootfs-
postcommands to only export a known list of variables for other reasons
so this problem should go away when we get that patch merged.

Cheers,

Richard

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184882): 
https://lists.openembedded.org/g/openembedded-core/message/184882
Mute This Topic: https://lists.openembedded.org/mt/100368202/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] oe.data: allow to mask out secret variables

2023-07-26 Thread Enrico Scholz via lists.openembedded.org
Alexander Kanavin  writes:

>> Else, there are sometimes not many ways to work without them.
>> E.g. SSTATE_MIRRORS has contain the secret token because it is
>> used directly by bitbake; perhaps I could use a wget wrapper and
>> write a custom curl python class...
>
> Yes, the secret needs to be in a file (or other access-controlled
> facility), and read from it by the process that needs it, and only
> directly prior to using it. Having it in a bitbake variable which gets
> passed through a million tasks and components

Where is the problem?  I known only one component
(rootfs-postcommands.bbclass) which dumps the whole environment and
leaks it.

Else, when there is a malicious component that wants to steal secrets
from a bitbake variable, what would stop it from reading the secret from
a file?

Your suggestion (write secrets in files instead of bitbake variables)
does not improve security but causes only extra work.



Enrico

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184881): 
https://lists.openembedded.org/g/openembedded-core/message/184881
Mute This Topic: https://lists.openembedded.org/mt/100368202/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] oe.data: allow to mask out secret variables

2023-07-26 Thread Alexander Kanavin
On Wed, 26 Jul 2023 at 13:42, Enrico Scholz
 wrote:> > it's better to just scrub
them prior to publishing with a post-script.>
> Else, there are sometimes not many ways to work without them.
> E.g. SSTATE_MIRRORS has contain the secret token because it is used
> directly by bitbake; perhaps I could use a wget wrapper and write a
> custom curl python class...

Yes, the secret needs to be in a file (or other access-controlled
facility), and read from it by the process that needs it, and only
directly prior to using it. Having it in a bitbake variable which gets
passed through a million tasks and components is a terrible idea, and
I do not want to validate it by having a 'secret' flag. Sorry, still
no.

Alex

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184880): 
https://lists.openembedded.org/g/openembedded-core/message/184880
Mute This Topic: https://lists.openembedded.org/mt/100368202/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [kirkstone][PATCH] tiff: fix multiple CVEs

2023-07-26 Thread Hitendra Prajapati
Backport fixes for:
* CVE-2023-2908 - Upstream-Status: Backport from 
https://gitlab.com/libtiff/libtiff/-/commit/9bd48f0dbd64fb94dc2b5b05238fde0bfdd4ff3f
* CVE-2023-3316 - Upstream-Status: Backport from 
https://gitlab.com/libtiff/libtiff/-/commit/d63de61b1ec3385f6383ef9a1f453e4b8b11d536
* CVE-2023-3618 - Upstream-Status: Backport from 
ttps://gitlab.com/libtiff/libtiff/-/commit/b5c7d4c4e0ac16b5cfb11acaaeaa493334f8

Signed-off-by: Hitendra Prajapati 
---
 .../libtiff/tiff/CVE-2023-2908.patch  | 33 +++
 .../libtiff/tiff/CVE-2023-3316.patch  | 59 +++
 .../libtiff/tiff/CVE-2023-3618.patch  | 51 
 meta/recipes-multimedia/libtiff/tiff_4.3.0.bb |  3 +
 4 files changed, 146 insertions(+)
 create mode 100644 meta/recipes-multimedia/libtiff/tiff/CVE-2023-2908.patch
 create mode 100644 meta/recipes-multimedia/libtiff/tiff/CVE-2023-3316.patch
 create mode 100644 meta/recipes-multimedia/libtiff/tiff/CVE-2023-3618.patch

diff --git a/meta/recipes-multimedia/libtiff/tiff/CVE-2023-2908.patch 
b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-2908.patch
new file mode 100644
index 00..cf94fd23d8
--- /dev/null
+++ b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-2908.patch
@@ -0,0 +1,33 @@
+From 8c0859a80444c90b8dfb862a9f16de74e16f0a9e Mon Sep 17 00:00:00 2001
+From: xiaoxiaoafeifei 
+Date: Fri, 21 Apr 2023 13:01:34 +
+Subject: [PATCH] countInkNamesString(): fix `UndefinedBehaviorSanitizer`:
+ applying zero offset to null pointer
+
+Upstream-Status: Backport 
[https://gitlab.com/libtiff/libtiff/-/commit/9bd48f0dbd64fb94dc2b5b05238fde0bfdd4ff3f]
+CVE: CVE-2023-2908
+Signed-off-by: Hitendra Prajapati 
+---
+ libtiff/tif_dir.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libtiff/tif_dir.c b/libtiff/tif_dir.c
+index 349dfe4..1402c8e 100644
+--- a/libtiff/tif_dir.c
 b/libtiff/tif_dir.c
+@@ -145,10 +145,10 @@ static uint16_t
+ countInkNamesString(TIFF *tif, uint32_t slen, const char *s)
+ {
+   uint16_t i = 0;
+-  const char *ep = s + slen;
+-  const char *cp = s;
+ 
+   if (slen > 0) {
++  const char *ep = s + slen;
++  const char *cp = s;
+   do {
+   for (; cp < ep && *cp != '\0'; cp++) {}
+   if (cp >= ep)
+-- 
+2.25.1
+
diff --git a/meta/recipes-multimedia/libtiff/tiff/CVE-2023-3316.patch 
b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-3316.patch
new file mode 100644
index 00..1aa4ba45ac
--- /dev/null
+++ b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-3316.patch
@@ -0,0 +1,59 @@
+From d63de61b1ec3385f6383ef9a1f453e4b8b11d536 Mon Sep 17 00:00:00 2001
+From: Su_Laus 
+Date: Fri, 3 Feb 2023 17:38:55 +0100
+Subject: [PATCH] TIFFClose() avoid NULL pointer dereferencing. fix#515
+
+Closes #515
+
+Upstream-Status: Backport 
[https://gitlab.com/libtiff/libtiff/-/commit/d63de61b1ec3385f6383ef9a1f453e4b8b11d536]
+CVE: CVE-2023-3316
+Signed-off-by: Hitendra Prajapati 
+---
+ libtiff/tif_close.c | 11 +++
+ tools/tiffcrop.c|  5 -
+ 2 files changed, 11 insertions(+), 5 deletions(-)
+
+diff --git a/libtiff/tif_close.c b/libtiff/tif_close.c
+index 674518a..0fe7af4 100644
+--- a/libtiff/tif_close.c
 b/libtiff/tif_close.c
+@@ -118,13 +118,16 @@ TIFFCleanup(TIFF* tif)
+  */
+ 
+ void
+-TIFFClose(TIFF* tif)
++TIFFClose(TIFF *tif)
+ {
+-  TIFFCloseProc closeproc = tif->tif_closeproc;
+-  thandle_t fd = tif->tif_clientdata;
++if (tif != NULL)
++{
++TIFFCloseProc closeproc = tif->tif_closeproc;
++thandle_t fd = tif->tif_clientdata;
+ 
+   TIFFCleanup(tif);
+-  (void) (*closeproc)(fd);
++(void)(*closeproc)(fd);
++}
+ }
+ 
+ /* vim: set ts=8 sts=8 sw=8 noet: */
+diff --git a/tools/tiffcrop.c b/tools/tiffcrop.c
+index ce77c74..cd49660 100644
+--- a/tools/tiffcrop.c
 b/tools/tiffcrop.c
+@@ -2548,7 +2548,10 @@ main(int argc, char* argv[])
+   }
+ }
+ 
+-  TIFFClose(out);
++if (out != NULL)
++{
++TIFFClose(out);
++}
+ 
+   return (0);
+   } /* end main */
+-- 
+2.25.1
+
diff --git a/meta/recipes-multimedia/libtiff/tiff/CVE-2023-3618.patch 
b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-3618.patch
new file mode 100644
index 00..46c55afffd
--- /dev/null
+++ b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-3618.patch
@@ -0,0 +1,51 @@
+From b5c7d4c4e0ac16b5cfb11acaaeaa493334f8 Mon Sep 17 00:00:00 2001
+From: Su_Laus 
+Date: Fri, 5 May 2023 19:43:46 +0200
+Subject: [PATCH] Consider error return of writeSelections(). Fixes #553
+
+Upstream-Status: Backport 
[https://gitlab.com/libtiff/libtiff/-/commit/b5c7d4c4e0ac16b5cfb11acaaeaa493334f8]
+CVE: CVE-2023-3618
+Signed-off-by: Hitendra Prajapati 
+---
+ tools/tiffcrop.c | 18 +++---
+ 1 file changed, 15 insertions(+), 3 deletions(-)
+
+diff --git a/tools/tiffcrop.c b/tools/tiffcrop.c
+index ce77c74..2c553e3 100644
+--- a/tools/tiffcrop.c
 b/tools/tiffcrop.c
+@@ -2459,9 

Re: [OE-core] [PATCH] oe.data: allow to mask out secret variables

2023-07-26 Thread Enrico Scholz via lists.openembedded.org
Alexander Kanavin  writes:

> Please no. These things can leak out in a million other ways

no; that is very unlikely.  The parts which are dealing with secrets
usually take care about not leaking them.

All major CI systems have the same problem (need secret variables) and
at least gitlab solves it in the same way (mark it as to be masked and
replace it in logs).


> (e.g. if you publish logs),

Secrets do not appear in the usual 'bitbake ...' output only in the deep
.../temp/log.do_* files.

I do not think that people are really publishing these files.


> it's better to just scrub them prior to publishing with a post-script.

Sounds unergonomic; you have to know which variables are secret.  You
have to read and interpret the testdata.json file, substitute values and
write it back.

It is much better to do it in the first place.  The classes which are
dealing with secrets can mark them as such.


> Having secrets in bitbake variables is a bad idea to begin with.

Yes; because they are exported in testdata.json ;)

Else, there are sometimes not many ways to work without them.
E.g. SSTATE_MIRRORS has contain the secret token because it is used
directly by bitbake; perhaps I could use a wget wrapper and write a
custom curl python class...



Enrico

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184878): 
https://lists.openembedded.org/g/openembedded-core/message/184878
Mute This Topic: https://lists.openembedded.org/mt/100368202/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] oe.data: allow to mask out secret variables

2023-07-26 Thread Alexander Kanavin
Please no. These things can leak out in a million other ways (e.g. if
you publish logs), it's better to just scrub them prior to publishing
with a post-script. Having secrets in bitbake variables is a bad idea
to begin with.

Alex

On Wed, 26 Jul 2023 at 13:10, Enrico Scholz via lists.openembedded.org
 wrote:
>
> From: Enrico Scholz 
>
> Some integrations require that passwords or secret tokens are
> assigned to bitbake variables.  E.g. the meta-dependencytrack
> layer has a 'DEPENDENCYTRACK_API_KEY' or my sstate-server requires
> a 'SSTATE_SERVER_SESSION' token.
>
> These secrets will appear in testdata.json which can easily leak them
> when the deploy directory is published publicly.
>
> Patch adds a special 'secrets' flag for variables.  When a variable is
> marked with it, its content will be replaced by '**masked**'.
>
> E.g. formerly
>
> |"SSTATE_SERVER_PATH": "HKBOZ8C279S4iwBA",
> |"SSTATE_MIRRORS": "... 
> https://sstate/api/v1/download/HKBOZ8C279S4iwBA/sstate/...
>
> and now
>
> |"SSTATE_SERVER_PATH": "**masked**",
> |"SSTATE_MIRRORS": "... 
> https://sstate/api/v1/download/**masked**/sstate
>
> Corresponding bbclass contains
>
> | SSTATE_SERVER_PATH ??= "-"
> | SSTATE_SERVER_PATH[secret] = "true"
>
> Signed-off-by: Enrico Scholz 
> ---
>  meta/lib/oe/data.py | 29 +++--
>  1 file changed, 27 insertions(+), 2 deletions(-)
>
> diff --git a/meta/lib/oe/data.py b/meta/lib/oe/data.py
> index 37121cfad2b7..57a8e5b5e049 100644
> --- a/meta/lib/oe/data.py
> +++ b/meta/lib/oe/data.py
> @@ -5,7 +5,9 @@
>  #
>
>  import json
> +import re
>  import oe.maketype
> +import oe.types
>
>  def typed_value(key, d):
>  """Construct a value for the specified metadata variable, using its flags
> @@ -23,9 +25,10 @@ def typed_value(key, d):
>  except (TypeError, ValueError) as exc:
>  bb.msg.fatal("Data", "%s: %s" % (key, str(exc)))
>
> -def export2json(d, json_file, expand=True, searchString="",replaceString=""):
> +def export2json(d, json_file, expand=True, searchString="",replaceString="", 
> mask_secrets=True):
>  data2export = {}
>  keys2export = []
> +secrets = []
>
>  for key in d.keys():
>  if key.startswith("_"):
> @@ -38,12 +41,34 @@ def export2json(d, json_file, expand=True, 
> searchString="",replaceString=""):
>  continue
>  elif d.getVarFlag(key, "func"):
>  continue
> +elif mask_secrets and oe.types.boolean(d.getVarFlag(key, "secret") 
> or "false"):
> +var = d.getVar(key)
> +
> +## When secret variable contains a placeholder (is empty
> +## or single character), show it.  When it is too short
> +## emit a warning and exclude it completely from output
> +## but do not mask out its value in other places.
> +if var is None or len(var) < 2:
> +bb.debug(1, "variable '%s' is marked as secret but seems to 
> contain some placeholder; showing it" % key)
> +elif len(var) < 8:
> +bb.warn("variable '%s' is marked as secret but content is 
> too short; skipping it" % key)
> +continue
> +else:
> +secrets.append(re.escape(var))
>
>  keys2export.append(key)
>
> +if len(secrets) == 0:
> +secrets = None
> +else:
> +secrets = re.compile('|'.join(secrets))
> +
>  for key in keys2export:
>  try:
> -data2export[key] = d.getVar(key, 
> expand).replace(searchString,replaceString)
> +var = d.getVar(key, expand).replace(searchString,replaceString)
> +if secrets:
> +var = secrets.sub("**masked**", var)
> +data2export[key] = var
>  except bb.data_smart.ExpansionError:
>  data2export[key] = ''
>  except AttributeError:
> --
> 2.41.0
>
>
> 
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184877): 
https://lists.openembedded.org/g/openembedded-core/message/184877
Mute This Topic: https://lists.openembedded.org/mt/100368202/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] oe.data: allow to mask out secret variables

2023-07-26 Thread Enrico Scholz via lists.openembedded.org
From: Enrico Scholz 

Some integrations require that passwords or secret tokens are
assigned to bitbake variables.  E.g. the meta-dependencytrack
layer has a 'DEPENDENCYTRACK_API_KEY' or my sstate-server requires
a 'SSTATE_SERVER_SESSION' token.

These secrets will appear in testdata.json which can easily leak them
when the deploy directory is published publicly.

Patch adds a special 'secrets' flag for variables.  When a variable is
marked with it, its content will be replaced by '**masked**'.

E.g. formerly

|"SSTATE_SERVER_PATH": "HKBOZ8C279S4iwBA",
|"SSTATE_MIRRORS": "... 
https://sstate/api/v1/download/HKBOZ8C279S4iwBA/sstate/...

and now

|"SSTATE_SERVER_PATH": "**masked**",
|"SSTATE_MIRRORS": "... 
https://sstate/api/v1/download/**masked**/sstate

Corresponding bbclass contains

| SSTATE_SERVER_PATH ??= "-"
| SSTATE_SERVER_PATH[secret] = "true"

Signed-off-by: Enrico Scholz 
---
 meta/lib/oe/data.py | 29 +++--
 1 file changed, 27 insertions(+), 2 deletions(-)

diff --git a/meta/lib/oe/data.py b/meta/lib/oe/data.py
index 37121cfad2b7..57a8e5b5e049 100644
--- a/meta/lib/oe/data.py
+++ b/meta/lib/oe/data.py
@@ -5,7 +5,9 @@
 #
 
 import json
+import re
 import oe.maketype
+import oe.types
 
 def typed_value(key, d):
 """Construct a value for the specified metadata variable, using its flags
@@ -23,9 +25,10 @@ def typed_value(key, d):
 except (TypeError, ValueError) as exc:
 bb.msg.fatal("Data", "%s: %s" % (key, str(exc)))
 
-def export2json(d, json_file, expand=True, searchString="",replaceString=""):
+def export2json(d, json_file, expand=True, searchString="",replaceString="", 
mask_secrets=True):
 data2export = {}
 keys2export = []
+secrets = []
 
 for key in d.keys():
 if key.startswith("_"):
@@ -38,12 +41,34 @@ def export2json(d, json_file, expand=True, 
searchString="",replaceString=""):
 continue
 elif d.getVarFlag(key, "func"):
 continue
+elif mask_secrets and oe.types.boolean(d.getVarFlag(key, "secret") or 
"false"):
+var = d.getVar(key)
+
+## When secret variable contains a placeholder (is empty
+## or single character), show it.  When it is too short
+## emit a warning and exclude it completely from output
+## but do not mask out its value in other places.
+if var is None or len(var) < 2:
+bb.debug(1, "variable '%s' is marked as secret but seems to 
contain some placeholder; showing it" % key)
+elif len(var) < 8:
+bb.warn("variable '%s' is marked as secret but content is too 
short; skipping it" % key)
+continue
+else:
+secrets.append(re.escape(var))
 
 keys2export.append(key)
 
+if len(secrets) == 0:
+secrets = None
+else:
+secrets = re.compile('|'.join(secrets))
+
 for key in keys2export:
 try:
-data2export[key] = d.getVar(key, 
expand).replace(searchString,replaceString)
+var = d.getVar(key, expand).replace(searchString,replaceString)
+if secrets:
+var = secrets.sub("**masked**", var)
+data2export[key] = var
 except bb.data_smart.ExpansionError:
 data2export[key] = ''
 except AttributeError:
-- 
2.41.0


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184876): 
https://lists.openembedded.org/g/openembedded-core/message/184876
Mute This Topic: https://lists.openembedded.org/mt/100368202/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



ODP: [OE-Core][PATCH v11][master-next 1/5] package_ipk.bbclass: add support for ACLs and xattr

2023-07-26 Thread Piotr Łobacz

Hi Alexandre, Alex,
Thx for supporting me, I have finally discovered the issue regarding this 
packages differences.
It occurred that I was badly comparing two strings for tarformat comparison. 
Now it is fixed and should finally work.

This has been additionally tested with oe-selftest -r reproducible.

BR
Piotr

Od: Piotr Łobacz 
Wysłane: środa, 26 lipca 2023 11:22
Do: openembedded-core@lists.openembedded.org 

DW: Piotr Łobacz 
Temat: [OE-Core][PATCH v11][master-next 1/5] package_ipk.bbclass: add support 
for ACLs and xattr 
 
Extend OPKGBUILDCMD variable, with additional parameters, depending
on target distro features, in order to support ACLs and xattr.

With fix pushed to the opkg-devel:
https://groups.google.com/g/opkg-devel/c/dYNHrLjDwg8
opkg-build is able to create tar archives with ACLs and xattr.

Signed-off-by: Piotr Łobacz 
---
 meta/classes-global/package_ipk.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes-global/package_ipk.bbclass 
b/meta/classes-global/package_ipk.bbclass
index b4b7bc9ac2..a0f106e4ad 100644
--- a/meta/classes-global/package_ipk.bbclass
+++ b/meta/classes-global/package_ipk.bbclass
@@ -15,7 +15,7 @@ IPKGCONF_SDK_TARGET = "${WORKDIR}/opkg-sdk-target.conf"
 PKGWRITEDIRIPK = "${WORKDIR}/deploy-ipks"
 
 # Program to be used to build opkg packages
-OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}"'
+OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}" 
${@bb.utils.contains('DISTRO_FEATURES', 'acl', '-A', '', d)} 
${@bb.utils.contains('DISTRO_FEATURES', 'xattr', '-X', '', d)}'
 
 OPKG_ARGS += "--force_postinstall --prefer-arch-to-version"
 OPKG_ARGS += "${@['', 
'--no-install-recommends'][d.getVar("NO_RECOMMENDATIONS") == "1"]}"
-- 
2.34.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184875): 
https://lists.openembedded.org/g/openembedded-core/message/184875
Mute This Topic: https://lists.openembedded.org/mt/100367408/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-Core][PATCH v11][master-next 2/5] package.bbclass: add support for ACLs and xattr

2023-07-26 Thread Piotr Łobacz
Extend `tar` command, with additional parameters, depending
on choosen package class and target distro features, in order
to support ACLs and xattr.

Currently only `package_ipk` supports fully ACLs and xattr.

Signed-off-by: Piotr Łobacz 
---
 meta/classes-global/package.bbclass | 9 +++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/meta/classes-global/package.bbclass 
b/meta/classes-global/package.bbclass
index e8055a9cdc..6e5d0dd4dc 100644
--- a/meta/classes-global/package.bbclass
+++ b/meta/classes-global/package.bbclass
@@ -342,8 +342,13 @@ python perform_packagecopy () {
 
 # Start by package population by taking a copy of the installed
 # files to operate on
-# Preserve sparse files and hard links
-cmd = 'tar --exclude=./sysroot-only -cf - -C %s -p -S . | tar -xf - -C %s' 
% (dest, dvar)
+# Preserve sparse files, hard links, ACLs and extended attributes
+# TODO: for the moment only ipk packages are supporting ACLs and extended 
attributes
+# we need to add support for other package systems as well, but that 
doesn't bother
+# tar from creating archives with acl and/or xattr support
+acl = bb.utils.contains('DISTRO_FEATURES', 'acl', '--acls', '', d)
+xattr = bb.utils.contains('DISTRO_FEATURES', 'xattr', '--xattrs', '', d)
+cmd = f'tar {acl} {xattr} --numeric-owner --exclude=./sysroot-only -cf - 
-C {dest} -p -S . | tar {acl} {xattr} -xf - -C {dvar}'
 subprocess.check_output(cmd, shell=True, stderr=subprocess.STDOUT)
 
 # replace RPATHs for the nativesdk binaries, to make them relocatable
-- 
2.34.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184871): 
https://lists.openembedded.org/g/openembedded-core/message/184871
Mute This Topic: https://lists.openembedded.org/mt/100367375/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-Core][PATCH v11][master-next 3/5] opkg-utils: add acl and xattr support

2023-07-26 Thread Piotr Łobacz
Add support for tar archives created with --acls and/or --xattrs options,
PAX header format.

GNU tar and libarchive already supports ACLs and extended attributes.
We can now add this support as well to opkg-build script in order to use
fsetattr or setcap inside do_install command and end up with a file in
an image with the relevant ACLs and xattrs.

Signed-off-by: Piotr Łobacz 
---
 ...kg-build-Add-acls-and-xattrs-support.patch | 164 ++
 .../opkg-utils/opkg-utils_0.6.2.bb|   1 +
 2 files changed, 165 insertions(+)
 create mode 100644 
meta/recipes-devtools/opkg-utils/opkg-utils/0002-opkg-build-Add-acls-and-xattrs-support.patch

diff --git 
a/meta/recipes-devtools/opkg-utils/opkg-utils/0002-opkg-build-Add-acls-and-xattrs-support.patch
 
b/meta/recipes-devtools/opkg-utils/opkg-utils/0002-opkg-build-Add-acls-and-xattrs-support.patch
new file mode 100644
index 00..7e88c1754c
--- /dev/null
+++ 
b/meta/recipes-devtools/opkg-utils/opkg-utils/0002-opkg-build-Add-acls-and-xattrs-support.patch
@@ -0,0 +1,164 @@
+From 03931040018a0e3cc34e4c93a625f3671ff1a980 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Piotr=20=C5=81obacz?= 
+Date: Wed, 5 Jul 2023 10:31:13 +0200
+Subject: [PATCH] opkg-build: Add acls and xattrs support
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Add support for tar archives created with --acls and/or --xattrs options,
+PAX header format.
+
+GNU tar and libarchive already supports ACLs and extended attributes.
+We can now add this support as well to opkg-build script in order to use
+fsetattr or setcap inside do_install command and end up with a file in
+an image with the relevant ACLs and xattrs.
+
+Upstream-Status: Submitted 
[https://groups.google.com/g/opkg-devel/c/dYNHrLjDwg8]
+
+[1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=15097
+[2] https://groups.google.com/g/opkg-devel/c/aEGL7XRXfaA
+
+Signed-off-by: Piotr Łobacz 
+---
+ opkg-build | 76 +++---
+ 1 file changed, 50 insertions(+), 26 deletions(-)
+
+diff --git a/opkg-build b/opkg-build
+index a9e45d4..47ac1a8 100755
+--- a/opkg-build
 b/opkg-build
+@@ -145,6 +145,7 @@ You probably want to chown these to a system user: " >&2
+ ###
+ # opkg-build "main"
+ ###
++attributesargs=""
+ ogargs=""
+ outer=ar
+ noclean=0
+@@ -153,22 +154,6 @@ compressor=gzip
+ zipargs="-9n"
+ compressorargs=""
+ 
+-# Determine if tar supports the --format argument by checking the help output.
+-#
+-# This is needed because:
+-#- Busybox tar doesn't support '--format'
+-#- On some Linux distros, tar now defaults to posix format if '--format'
+-#  isn't explicitly specified
+-#- Opkg doesn't currently support posix format archives
+-#
+-# It's easier to check for mention of the '--format' option than to detect the
+-# tar implementation and maintain a list of which support '--format'.
+-tarformat=""
+-if tar --help 2>&1 | grep -- "--format" > /dev/null;
+-then
+-tarformat="--format=gnu"
+-fi
+-
+ compressor_ext() {
+ case $1 in
+   gzip|pigz)
+@@ -197,13 +182,17 @@ compressor_ext() {
+ : <<=cut
+ =head1 SYNOPSIS
+ 
+-B [B<-c>] [B<-C>] [B<-Z> I] [B<-a>] [B<-O>] [B<-o> 
I] [B<-g> I] I [I]
++B [B<-A>] [B<-X>] [B<-c>] [B<-C>] [B<-Z> I] [B<-a>] 
[B<-O>] [B<-o> I] [B<-g> I] I 
[I]
+ 
+ =cut
+ 
+-usage="Usage: $0 [-c] [-C] [-Z compressor] [-a compressor_args] [-O] [-o 
owner] [-g group]  []"
+-while getopts "a:cCg:ho:vOZ:" opt; do
++usage="Usage: $0 [-A] [-X] [-c] [-C] [-Z compressor] [-a compressor_args] 
[-O] [-o owner] [-g group]  []"
++while getopts "Aa:cCg:ho:vOXZ:" opt; do
+ case $opt in
++A ) attributesargs="--acls"
++;;
++X ) attributesargs="$attributesargs --xattrs"
++;;
+   o ) owner=$OPTARG
+   ogargs="--owner=$owner"
+   ;;
+@@ -232,6 +221,31 @@ while getopts "a:cCg:ho:vOZ:" opt; do
+ esac
+ done
+ 
++# Determine if tar supports the --format argument by checking the help output.
++#
++# This is needed because:
++#- Busybox tar doesn't support '--format'
++#- On some Linux distros, tar now defaults to posix format if '--format'
++#  isn't explicitly specified
++#- Opkg doesn't currently support posix format archives
++#
++# It's easier to check for mention of the '--format' option than to detect the
++# tar implementation and maintain a list of which support '--format'.
++tarformat=""
++if tar --help 2>&1 | grep -- "--format" > /dev/null;
++then
++# For ACLs or xattr support, gnu format will not work
++# we need to set posix format instead
++if [ ! -z "$attributesargs" ] ; then
++  tarformat="--format=posix"
++else
++  tarformat="--format=gnu"
++fi
++elif [ ! -z "$attributesargs" ] ; then
++  echo "*** Error: Attributes: $attributesargs, doesn't' work, without 
posix format, which is not supported by tar command." >&2
++  exit 1
++fi
++
+ cext=$(compressor_ext 

[OE-Core][PATCH v11][master-next 5/5] opkg: set locale from system environment variables

2023-07-26 Thread Piotr Łobacz
A C program inherits its locale environment variables when it starts up.
This happens automatically. However, these variables do not automatically
control the locale used by the library functions, because ISO C says that
all programs start by default in the standard ‘C’ locale.

Fixes warnings:
Warning when reading ar archive header: Pathname can't be converted from UTF-8 
to current locale. (errno=84)

Signed-off-by: Piotr Łobacz 
---
 ...le-from-system-environment-variables.patch | 48 +++
 meta/recipes-devtools/opkg/opkg_0.6.2.bb  |  1 +
 2 files changed, 49 insertions(+)
 create mode 100644 
meta/recipes-devtools/opkg/opkg/0003-opkg-set-locale-from-system-environment-variables.patch

diff --git 
a/meta/recipes-devtools/opkg/opkg/0003-opkg-set-locale-from-system-environment-variables.patch
 
b/meta/recipes-devtools/opkg/opkg/0003-opkg-set-locale-from-system-environment-variables.patch
new file mode 100644
index 00..71240ec8fd
--- /dev/null
+++ 
b/meta/recipes-devtools/opkg/opkg/0003-opkg-set-locale-from-system-environment-variables.patch
@@ -0,0 +1,48 @@
+From 712895b1914bf63ee4d669863bfd106814329076 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Piotr=20=C5=81obacz?= 
+Date: Wed, 19 Jul 2023 21:26:09 +0200
+Subject: [PATCH] opkg: set locale from system environment variables
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+A C program inherits its locale environment variables when it starts up.
+This happens automatically. However, these variables do not automatically
+control the locale used by the library functions, because ISO C says that
+all programs start by default in the standard ‘C’ locale.
+
+Fixes warnings:
+Warning when reading ar archive header: Pathname can't be converted from UTF-8 
to current locale. (errno=84)
+
+Upstream-Status: Submitted 
[https://groups.google.com/g/opkg-devel/c/16kgZfJ26mQ]
+
+[1] https://www.gnu.org/software/libc/manual/html_node/Setting-the-Locale.html
+
+Signed-off-by: Piotr Łobacz 
+---
+ src/opkg.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/opkg.c b/src/opkg.c
+index 544c58a..0c729ff 100644
+--- a/src/opkg.c
 b/src/opkg.c
+@@ -27,6 +27,7 @@
+ #include 
+ #include 
+ #include 
++#include 
+ 
+ #include "opkg_conf.h"
+ #include "opkg_cmd.h"
+@@ -408,6 +409,7 @@ int main(int argc, char *argv[])
+ if (opkg_conf_init())
+ goto err0;
+ 
++setlocale(LC_ALL, "");
+ opkg_config->verbosity = NOTICE;
+ 
+ opts = args_parse(argc, argv);
+-- 
+2.34.1
+
diff --git a/meta/recipes-devtools/opkg/opkg_0.6.2.bb 
b/meta/recipes-devtools/opkg/opkg_0.6.2.bb
index d7dc6ab715..3b5d51d74a 100644
--- a/meta/recipes-devtools/opkg/opkg_0.6.2.bb
+++ b/meta/recipes-devtools/opkg/opkg_0.6.2.bb
@@ -16,6 +16,7 @@ SRC_URI = 
"http://downloads.yoctoproject.org/releases/${BPN}/${BPN}-${PV}.tar.gz
file://opkg.conf \

file://0001-opkg_conf-create-opkg.lock-in-run-instead-of-var-run.patch \
file://0002-Add-options-to-enable-support-for-acl-and-xattr.patch \
+   file://0003-opkg-set-locale-from-system-environment-variables.patch 
\
file://run-ptest \
"
 
-- 
2.34.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184874): 
https://lists.openembedded.org/g/openembedded-core/message/184874
Mute This Topic: https://lists.openembedded.org/mt/100367378/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-Core][PATCH v11][master-next 4/5] opkg: add options to enable support for acl and xattr

2023-07-26 Thread Piotr Łobacz
The libarchive library, which is being used by opkg, supports ACLs
and xattr already.

More informations can be read at this link:
https://github.com/libarchive/libarchive/pull/691

Signed-off-by: Piotr Łobacz 
---
 ...-to-enable-support-for-acl-and-xattr.patch | 70 +++
 meta/recipes-devtools/opkg/opkg_0.6.2.bb  |  5 +-
 2 files changed, 74 insertions(+), 1 deletion(-)
 create mode 100644 
meta/recipes-devtools/opkg/opkg/0002-Add-options-to-enable-support-for-acl-and-xattr.patch

diff --git 
a/meta/recipes-devtools/opkg/opkg/0002-Add-options-to-enable-support-for-acl-and-xattr.patch
 
b/meta/recipes-devtools/opkg/opkg/0002-Add-options-to-enable-support-for-acl-and-xattr.patch
new file mode 100644
index 00..d6cb1d79fb
--- /dev/null
+++ 
b/meta/recipes-devtools/opkg/opkg/0002-Add-options-to-enable-support-for-acl-and-xattr.patch
@@ -0,0 +1,70 @@
+From 1c935e994bd572d9fff436f660ac1a060a434df0 Mon Sep 17 00:00:00 2001
+From: Maciej Liszewski 
+Date: Tue, 4 Jul 2023 22:01:58 +0200
+Subject: [PATCH] Add options to enable support for acl and xattr
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The libarchive library, which is being used by opkg, supports ACLs
+and xattr already.
+
+More informations can be read at this link:
+https://github.com/libarchive/libarchive/pull/691
+
+Upstream-Status: Accepted 
[https://groups.google.com/g/opkg-devel/c/aEGL7XRXfaA]
+
+[1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=15097
+
+Signed-off-by: Maciej Liszewski 
+Signed-off-by: Piotr Łobacz 
+---
+ configure.ac   | 12 
+ libopkg/opkg_archive.c |  8 
+ 2 files changed, 20 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 389a818..46949cd 100644
+--- a/configure.ac
 b/configure.ac
+@@ -158,6 +158,18 @@ return OPENSSL_VERSION_NUMBER; ],
+   AC_SUBST(OPENSSL_LIBS)
+ fi
+ 
++# check for ACL support
++AC_ARG_WITH([acl], [AS_HELP_STRING([--with-acl], [Enable ACL support])])
++if test "x$with_acl" = "xyes"; then
++  AC_DEFINE([ENABLE_ACL], [1], [Enable ACL support])
++fi
++
++# check for xattr support
++AC_ARG_WITH([xattr], [AS_HELP_STRING([--with-xattr], [Enable xattr support])])
++if test "x$with_xattr" = "xyes"; then
++  AC_DEFINE([ENABLE_XATTR], [1], [Enable xattr support])
++fi
++
+ # check for libsolv solver
+ AC_ARG_WITH(libsolv, AC_HELP_STRING([--with-libsolv], [Use libsolv solver 
support.
+   ]), [], [with_libsolv="no"])
+diff --git a/libopkg/opkg_archive.c b/libopkg/opkg_archive.c
+index 03a4afb..8dd902d 100644
+--- a/libopkg/opkg_archive.c
 b/libopkg/opkg_archive.c
+@@ -912,6 +912,14 @@ struct opkg_ar *ar_open_pkg_data_archive(const char 
*filename)
+ ar->extract_flags = ARCHIVE_EXTRACT_OWNER | ARCHIVE_EXTRACT_PERM |
+ ARCHIVE_EXTRACT_TIME | ARCHIVE_EXTRACT_UNLINK | 
ARCHIVE_EXTRACT_NO_OVERWRITE;
+ 
++#ifdef ENABLE_ACL
++ar->extract_flags |= ARCHIVE_EXTRACT_ACL;
++#endif
++
++#ifdef ENABLE_XATTR
++ar->extract_flags |= ARCHIVE_EXTRACT_FFLAGS | ARCHIVE_EXTRACT_XATTR;
++#endif
++
+ if (opkg_config->ignore_uid)
+ ar->extract_flags &= ~ARCHIVE_EXTRACT_OWNER;
+ 
+-- 
+2.34.1
+
diff --git a/meta/recipes-devtools/opkg/opkg_0.6.2.bb 
b/meta/recipes-devtools/opkg/opkg_0.6.2.bb
index 46be137354..d7dc6ab715 100644
--- a/meta/recipes-devtools/opkg/opkg_0.6.2.bb
+++ b/meta/recipes-devtools/opkg/opkg_0.6.2.bb
@@ -15,6 +15,7 @@ PE = "1"
 SRC_URI = 
"http://downloads.yoctoproject.org/releases/${BPN}/${BPN}-${PV}.tar.gz \
file://opkg.conf \

file://0001-opkg_conf-create-opkg.lock-in-run-instead-of-var-run.patch \
+   file://0002-Add-options-to-enable-support-for-acl-and-xattr.patch \
file://run-ptest \
"
 
@@ -30,8 +31,10 @@ inherit autotools pkgconfig ptest
 target_localstatedir := "${localstatedir}"
 OPKGLIBDIR ??= "${target_localstatedir}/lib"
 
-PACKAGECONFIG ??= "libsolv"
+PACKAGECONFIG ??= "libsolv ${@bb.utils.filter('DISTRO_FEATURES', 'acl xattr', 
d)}"
 
+PACKAGECONFIG[acl] = "--with-acl,--without-acl"
+PACKAGECONFIG[xattr] = "--with-xattr,--without-xattr"
 PACKAGECONFIG[gpg] = "--enable-gpg,--disable-gpg,\
 gnupg gpgme libgpg-error,\
 ${@ "gnupg" if ("native" in d.getVar("PN")) else "gnupg-gpg"}\
-- 
2.34.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184873): 
https://lists.openembedded.org/g/openembedded-core/message/184873
Mute This Topic: https://lists.openembedded.org/mt/100367377/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-Core][PATCH v11][master-next 1/5] package_ipk.bbclass: add support for ACLs and xattr

2023-07-26 Thread Piotr Łobacz
Extend OPKGBUILDCMD variable, with additional parameters, depending
on target distro features, in order to support ACLs and xattr.

With fix pushed to the opkg-devel:
https://groups.google.com/g/opkg-devel/c/dYNHrLjDwg8
opkg-build is able to create tar archives with ACLs and xattr.

Signed-off-by: Piotr Łobacz 
---
 meta/classes-global/package_ipk.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes-global/package_ipk.bbclass 
b/meta/classes-global/package_ipk.bbclass
index b4b7bc9ac2..a0f106e4ad 100644
--- a/meta/classes-global/package_ipk.bbclass
+++ b/meta/classes-global/package_ipk.bbclass
@@ -15,7 +15,7 @@ IPKGCONF_SDK_TARGET = "${WORKDIR}/opkg-sdk-target.conf"
 PKGWRITEDIRIPK = "${WORKDIR}/deploy-ipks"
 
 # Program to be used to build opkg packages
-OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}"'
+OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}" 
${@bb.utils.contains('DISTRO_FEATURES', 'acl', '-A', '', d)} 
${@bb.utils.contains('DISTRO_FEATURES', 'xattr', '-X', '', d)}'
 
 OPKG_ARGS += "--force_postinstall --prefer-arch-to-version"
 OPKG_ARGS += "${@['', 
'--no-install-recommends'][d.getVar("NO_RECOMMENDATIONS") == "1"]}"
-- 
2.34.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184870): 
https://lists.openembedded.org/g/openembedded-core/message/184870
Mute This Topic: https://lists.openembedded.org/mt/100367374/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] Toolchain test results

2023-07-26 Thread Richard Purdie
On Wed, 2023-07-26 at 06:00 +, Mittal, Anuj wrote:
> On Thu, 2023-07-20 at 12:26 +0100, Richard Purdie wrote:
> > On Tue, 2023-07-18 at 10:14 +0100, Richard Purdie via
> > lists.openembedded.org wrote:
> > > qemuarm has ~350 failures
> > > qemuarm64 has ~350 failures
> > > qemux86-64 has ~4000 (3900 in glibc)
> > > qemux86 has ~4000 (3500 in glibc)
> > > qemuppc has ~600 failures
> > > qemumips64 has ~5000 failures (all over)
> > > qemumips has ~1600 failures
> > > 
> > > Anuj: Can Intel look into the glibc test failures on x86?
> > 
> > I realised the glibc issues were due to the network being disabled
> > for
> > the tests and have sent a patch to fix that. That reduces the
> > failures
> > from ~3900 to ~330. We should really try and reduce that further but
> > it
> > is a start!
> > 
> 
> A lot of locale/iconv tests seemed to be failing when calling write
> with large buffers/files over NFS. Some of others were triggering OOM.
> 
> I ran the tests again after making a few changes:
> 
> https://autobuilder.yocto.io/pub/non-release/20230726-11/testresults/qemux86-64-tc/
> 
> After switching NFS mount to TCP and increasing the memory available to
> 1024, the number of tests failed came down to 69.
> 
> ===
> ===
> qemux86-64 PTest Result Summary
> ===
> ===
> ---
> ---
> Recipe   | Passed   | Failed   | Skipped | Time(s)
> ---
> ---
> binutils | 289  | 0| 8   | -
> binutils-gas | 1582 | 4| 1   | -
> binutils-ld  | 1622 | 6| 111 | -
> gcc  | 149696   | 28   | 27599   | -
> gcc-g++  | 219260   | 30   | 21108   | -
> gcc-libatomic| 27   | 1| 27  | -
> gcc-libgomp  | 3426 | 1| 1962| -
> gcc-libitm   | 24   | 1| 24  | -
> gcc-libstdc++-v3 | 9695 | 32   | 5459| -
> glibc| 4984 | 69   | 147 | -
> rust | 15768| 0| 554 | -
> ---
> ---


That looks like really good progress, thanks Anuj!

I think we might rebuild M2 to allow for some of the resulttool, ltp
and other test fixes to make it in. I want to look into this 32 bit arm
regression first to see what is going on there. If you're able to send
some of these out we should pull them in and improve the failures for
glibc too.

Cheers,

Richard



-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184869): 
https://lists.openembedded.org/g/openembedded-core/message/184869
Mute This Topic: https://lists.openembedded.org/mt/100212267/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [kirkstone] cherry-pick kernel: add missing path to search for debug files

2023-07-26 Thread Adrian Freihofer
Hello Steve

I would like to ask you to cherry-picking commit
8252367023b31d923c6031280843cdd35050df56 to kirckstone.

We are using it successfully and it's a trivial fix. The original
discussion is here:
https://lists.openembedded.org/g/openembedded-core/topic/88532225#160734

Thank you and best regards,
Adrian

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184868): 
https://lists.openembedded.org/g/openembedded-core/message/184868
Mute This Topic: https://lists.openembedded.org/mt/100366955/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [mickledore][PATCH] cups: Fix CVE-2023-34241

2023-07-26 Thread Yu, Mingli
From: Mingli Yu 

Backport patch [1] to fix CVE-2023-34241.

[1] 
https://github.com/OpenPrinting/cups/commit/9809947a959e18409dcf562a3466ef246cb90cb2

Signed-off-by: Mingli Yu 
---
 meta/recipes-extended/cups/cups.inc   |  1 +
 .../cups/cups/CVE-2023-34241.patch| 70 +++
 2 files changed, 71 insertions(+)
 create mode 100644 meta/recipes-extended/cups/cups/CVE-2023-34241.patch

diff --git a/meta/recipes-extended/cups/cups.inc 
b/meta/recipes-extended/cups/cups.inc
index d77758fd3f..c6a676b747 100644
--- a/meta/recipes-extended/cups/cups.inc
+++ b/meta/recipes-extended/cups/cups.inc
@@ -16,6 +16,7 @@ SRC_URI = 
"${GITHUB_BASE_URI}/download/v${PV}/cups-${PV}-source.tar.gz \
file://volatiles.99_cups \
file://cups-volatiles.conf \
file://CVE-2023-32324.patch \
+   file://CVE-2023-34241.patch \
"
 
 GITHUB_BASE_URI = "https://github.com/OpenPrinting/cups/releases;
diff --git a/meta/recipes-extended/cups/cups/CVE-2023-34241.patch 
b/meta/recipes-extended/cups/cups/CVE-2023-34241.patch
new file mode 100644
index 00..4950ca341d
--- /dev/null
+++ b/meta/recipes-extended/cups/cups/CVE-2023-34241.patch
@@ -0,0 +1,70 @@
+From ffd290b4ab247f82722927ba9b21358daa16dbf1 Mon Sep 17 00:00:00 2001
+From: Rose <83477269+ataridre...@users.noreply.github.com>
+Date: Thu, 1 Jun 2023 11:33:39 -0400
+Subject: [PATCH] Log result of httpGetHostname BEFORE closing the connection
+
+httpClose frees the memory of con->http. This is problematic because 
httpGetHostname then tries to access the memory it points to.
+
+We have to log the hostname first.
+
+CVE: CVE-2023-34241
+
+Upstream-Status: Backport 
[https://github.com/OpenPrinting/cups/commit/9809947a959e18409dcf562a3466ef246cb90cb2]
+
+Signed-off-by: Mingli Yu 
+---
+ scheduler/client.c | 16 +++-
+ 1 file changed, 7 insertions(+), 9 deletions(-)
+
+diff --git a/scheduler/client.c b/scheduler/client.c
+index 91e441188..327473a4d 100644
+--- a/scheduler/client.c
 b/scheduler/client.c
+@@ -193,13 +193,11 @@ cupsdAcceptClient(cupsd_listener_t *lis)/* I - Listener 
socket */
+/*
+ * Can't have an unresolved IP address with double-lookups enabled...
+ */
+-
+-httpClose(con->http);
+-
+ cupsdLogClient(con, CUPSD_LOG_WARN,
+-"Name lookup failed - connection from %s closed!",
++"Name lookup failed - closing connection from %s!",
+ httpGetHostname(con->http, NULL, 0));
+ 
++httpClose(con->http);
+ free(con);
+ return;
+   }
+@@ -235,11 +233,11 @@ cupsdAcceptClient(cupsd_listener_t *lis)/* I - Listener 
socket */
+   * with double-lookups enabled...
+   */
+ 
+-  httpClose(con->http);
+-
+   cupsdLogClient(con, CUPSD_LOG_WARN,
+-  "IP lookup failed - connection from %s closed!",
++  "IP lookup failed - closing connection from %s!",
+   httpGetHostname(con->http, NULL, 0));
++
++  httpClose(con->http);
+   free(con);
+   return;
+ }
+@@ -256,11 +254,11 @@ cupsdAcceptClient(cupsd_listener_t *lis)/* I - Listener 
socket */
+ 
+   if (!hosts_access(_req))
+   {
+-httpClose(con->http);
+-
+ cupsdLogClient(con, CUPSD_LOG_WARN,
+ "Connection from %s refused by /etc/hosts.allow and "
+   "/etc/hosts.deny rules.", httpGetHostname(con->http, NULL, 
0));
++
++httpClose(con->http);
+ free(con);
+ return;
+   }
+-- 
+2.25.1
+
-- 
2.35.5


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184867): 
https://lists.openembedded.org/g/openembedded-core/message/184867
Mute This Topic: https://lists.openembedded.org/mt/100366862/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH v2] nfs-utils: Fix host path contamination building locktest

2023-07-26 Thread Khem Raj
Signed-off-by: Khem Raj 
---
v2: Fix build on ppc32

 ...t-Makefile.am-Do-not-use-build-flags.patch | 36 +
 ...locktest-Use-intmax_t-to-print-off_t.patch | 53 +++
 .../nfs-utils/nfs-utils_2.6.3.bb  |  2 +
 3 files changed, 91 insertions(+)
 create mode 100644 
meta/recipes-connectivity/nfs-utils/nfs-utils/0001-locktest-Makefile.am-Do-not-use-build-flags.patch
 create mode 100644 
meta/recipes-connectivity/nfs-utils/nfs-utils/0001-tools-locktest-Use-intmax_t-to-print-off_t.patch

diff --git 
a/meta/recipes-connectivity/nfs-utils/nfs-utils/0001-locktest-Makefile.am-Do-not-use-build-flags.patch
 
b/meta/recipes-connectivity/nfs-utils/nfs-utils/0001-locktest-Makefile.am-Do-not-use-build-flags.patch
new file mode 100644
index 000..351407ddcd4
--- /dev/null
+++ 
b/meta/recipes-connectivity/nfs-utils/nfs-utils/0001-locktest-Makefile.am-Do-not-use-build-flags.patch
@@ -0,0 +1,36 @@
+From 9efa7a0d37665d9bb0f46d2407883a5ab42c2b84 Mon Sep 17 00:00:00 2001
+From: Khem Raj 
+Date: Mon, 24 Jul 2023 20:39:16 -0700
+Subject: [PATCH] locktest: Makefile.am: Do not use build flags
+
+Using CFLAGS_FOR_BUILD etc. here means it is using wrong flags
+when thse flags are speficied different than target flags which
+is common when cross-building. It can pass wrong paths to linker
+and it would find incompatible libraries during link since they
+are from host system and target maybe not same as build host.
+
+Fixes subtle errors like
+| aarch64-yoe-linux-ld.lld: error: 
/mnt/b/yoe/master/build/tmp/work/cortexa72-cortexa53-crypto-yoe-linux/nfs-utils/2.6.3-r0/recipe-sysroot-native/usr/lib/libsqlite3.so
 is incompatible with elf64-littleaarch64
+
+Upstream-Status: Submitted 
[https://marc.info/?l=linux-nfs=169025681008001=2]
+Signed-off-by: Khem Raj 
+---
+ tools/locktest/Makefile.am | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/tools/locktest/Makefile.am b/tools/locktest/Makefile.am
+index e8914655..2fd36971 100644
+--- a/tools/locktest/Makefile.am
 b/tools/locktest/Makefile.am
+@@ -2,8 +2,5 @@
+ 
+ noinst_PROGRAMS = testlk
+ testlk_SOURCES = testlk.c
+-testlk_CFLAGS=$(CFLAGS_FOR_BUILD)
+-testlk_CPPFLAGS=$(CPPFLAGS_FOR_BUILD)
+-testlk_LDFLAGS=$(LDFLAGS_FOR_BUILD)
+ 
+ MAINTAINERCLEANFILES = Makefile.in
+-- 
+2.41.0
+
diff --git 
a/meta/recipes-connectivity/nfs-utils/nfs-utils/0001-tools-locktest-Use-intmax_t-to-print-off_t.patch
 
b/meta/recipes-connectivity/nfs-utils/nfs-utils/0001-tools-locktest-Use-intmax_t-to-print-off_t.patch
new file mode 100644
index 000..7d903e04bc1
--- /dev/null
+++ 
b/meta/recipes-connectivity/nfs-utils/nfs-utils/0001-tools-locktest-Use-intmax_t-to-print-off_t.patch
@@ -0,0 +1,53 @@
+From e2e9251dbeb452f5382179023d8ae18b511167a1 Mon Sep 17 00:00:00 2001
+From: Khem Raj 
+Date: Tue, 25 Jul 2023 23:47:08 -0700
+Subject: [PATCH] tools/locktest: Use intmax_t to print off_t
+
+off_t could be 64bit on 32bit architectures which means using %z printf
+modifier is not enough to print it and compiler will complain about
+format mismatch
+
+Fixes
+| testlk.c:84:66: error: format '%zd' expects argument of type 'signed 
size_t', but argument 4 has type '__off64_t' {aka 'long long int'} 
[-Werror=format=]
+|84 | printf("%s: conflicting lock by %d on 
(%zd;%zd)\n",
+|   |~~^
+|   |  |
+|   |  int
+|   |%lld
+|85 | fname, fl.l_pid, fl.l_start, 
fl.l_len);
+|   |  ~~
+|   ||
+|   |__off64_t {aka 
long long int}
+
+Upstream-Status: Submitted 
[https://marc.info/?l=linux-nfs=169035457128067=2]
+Signed-off-by: Khem Raj 
+---
+ tools/locktest/testlk.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/tools/locktest/testlk.c b/tools/locktest/testlk.c
+index ea51f788..9d4c88c4 100644
+--- a/tools/locktest/testlk.c
 b/tools/locktest/testlk.c
+@@ -2,6 +2,7 @@
+ #include 
+ #endif
+ 
++#include 
+ #include 
+ #include 
+ #include 
+@@ -81,8 +82,8 @@ main(int argc, char **argv)
+   if (fl.l_type == F_UNLCK) {
+   printf("%s: no conflicting lock\n", fname);
+   } else {
+-  printf("%s: conflicting lock by %d on (%zd;%zd)\n",
+-  fname, fl.l_pid, fl.l_start, fl.l_len);
++  printf("%s: conflicting lock by %d on (%jd;%jd)\n",
++  fname, fl.l_pid, (intmax_t)fl.l_start, 
(intmax_t)fl.l_len);
+   }
+   return 0;
+   }
+-- 
+2.41.0
+
diff --git 

Re: [OE-core][PATCH] meta-networking: cve_check: convert CVE_CHECK_IGNORE to CVE_STATUS

2023-07-26 Thread Peter Marko via lists.openembedded.org
There is already a patch available to convert all of meta-openembedded recipes
https://lists.openembedded.org/g/openembedded-devel/message/103992

Also this is incorrect mailing list...

Peter

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184865): 
https://lists.openembedded.org/g/openembedded-core/message/184865
Mute This Topic: https://lists.openembedded.org/mt/100365993/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [kirkstone][PATCH] libtiff: fix CVE-2023-26965 heap-based use after free

2023-07-26 Thread Hitendra Prajapati
Upstream-Status: Backport from 
https://gitlab.com/libtiff/libtiff/-/commit/ec8ef90c1f573c9eb1f17d6a056aa0015f184acf

Signed-off-by: Hitendra Prajapati 
---
 .../libtiff/tiff/CVE-2023-26965.patch | 97 +++
 meta/recipes-multimedia/libtiff/tiff_4.3.0.bb |  1 +
 2 files changed, 98 insertions(+)
 create mode 100644 meta/recipes-multimedia/libtiff/tiff/CVE-2023-26965.patch

diff --git a/meta/recipes-multimedia/libtiff/tiff/CVE-2023-26965.patch 
b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-26965.patch
new file mode 100644
index 00..2162493e34
--- /dev/null
+++ b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-26965.patch
@@ -0,0 +1,97 @@
+From ec8ef90c1f573c9eb1f17d6a056aa0015f184acf Mon Sep 17 00:00:00 2001
+From: Su_Laus 
+Date: Tue, 14 Feb 2023 20:43:43 +0100
+Subject: [PATCH] tiffcrop: Do not reuse input buffer for subsequent images.
+ Fix issue 527
+
+Reuse of read_buff within loadImage() from previous image is quite unsafe, 
because other functions (like rotateImage() etc.) reallocate that buffer with 
different size without updating the local prev_readsize value.
+
+Closes #527
+
+Upstream-Status: Backport 
[https://gitlab.com/libtiff/libtiff/-/commit/ec8ef90c1f573c9eb1f17d6a056aa0015f184acf]
+CVE: CVE-2023-26965
+Signed-off-by: Hitendra Prajapati 
+---
+ tools/tiffcrop.c | 47 +++
+ 1 file changed, 15 insertions(+), 32 deletions(-)
+
+diff --git a/tools/tiffcrop.c b/tools/tiffcrop.c
+index b811fbb..ce77c74 100644
+--- a/tools/tiffcrop.c
 b/tools/tiffcrop.c
+@@ -6066,9 +6066,7 @@ loadImage(TIFF* in, struct image_data *image, struct 
dump_opts *dump, unsigned c
+   uint32_t   tw = 0, tl = 0;   /* Tile width and length */
+   tmsize_t   tile_rowsize = 0;
+   unsigned char *read_buff = NULL;
+-  unsigned char *new_buff  = NULL;
+   int  readunit = 0;
+-  static   tmsize_t  prev_readsize = 0;
+ 
+   TIFFGetFieldDefaulted(in, TIFFTAG_BITSPERSAMPLE, );
+   TIFFGetFieldDefaulted(in, TIFFTAG_SAMPLESPERPIXEL, );
+@@ -6361,47 +6359,32 @@ loadImage(TIFF* in, struct image_data *image, struct 
dump_opts *dump, unsigned c
+ }
+  
+   read_buff = *read_ptr;
+-  /* +3 : add a few guard bytes since reverseSamples16bits() can read a bit */
+-  /* outside buffer */
+-  if (!read_buff)
+-  {
+-if( buffsize > 0xU - 3 )
++/* +3 : add a few guard bytes since reverseSamples16bits() can read a bit
++ * outside buffer */
++/* Reuse of read_buff from previous image is quite unsafe, because other
++ * functions (like rotateImage() etc.) reallocate that buffer with 
different
++ * size without updating the local prev_readsize value. */
++   if (read_buff)
+ {
+-TIFFError("loadImage", "Unable to allocate/reallocate read buffer");
+-return (-1);
++_TIFFfree(read_buff);
+ }
+-read_buff = (unsigned char *)limitMalloc(buffsize + 
NUM_BUFF_OVERSIZE_BYTES);
+-  }
+-  else
++if (buffsize > 0xU - 3)
+ {
+-if (prev_readsize < buffsize)
+-{
+-  if( buffsize > 0xU - 3 )
+-  {
+-  TIFFError("loadImage", "Unable to allocate/reallocate read buffer");
+-  return (-1);
+-  }
+-  new_buff = _TIFFrealloc(read_buff, buffsize + NUM_BUFF_OVERSIZE_BYTES);
+-  if (!new_buff)
+-{
+-  free (read_buff);
+-read_buff = (unsigned char *)limitMalloc(buffsize + 
NUM_BUFF_OVERSIZE_BYTES);
+-}
+-  else
+-read_buff = new_buff;
+-  }
++TIFFError("loadImage", "Required read buffer size too large");
++return (-1);
+ }
+-  if (!read_buff)
++read_buff =
++(unsigned char *)limitMalloc(buffsize + NUM_BUFF_OVERSIZE_BYTES);
++if (!read_buff)
+ {
+-TIFFError("loadImage", "Unable to allocate/reallocate read buffer");
+-return (-1);
++TIFFError("loadImage", "Unable to allocate read buffer");
++return (-1);
+ }
+ 
+   read_buff[buffsize] = 0;
+   read_buff[buffsize+1] = 0;
+   read_buff[buffsize+2] = 0;
+ 
+-  prev_readsize = buffsize;
+   *read_ptr = read_buff;
+ 
+   /* N.B. The read functions used copy separate plane data into a buffer as 
interleaved
+-- 
+2.25.1
+
diff --git a/meta/recipes-multimedia/libtiff/tiff_4.3.0.bb 
b/meta/recipes-multimedia/libtiff/tiff_4.3.0.bb
index 2ee10fca72..4796dfde24 100644
--- a/meta/recipes-multimedia/libtiff/tiff_4.3.0.bb
+++ b/meta/recipes-multimedia/libtiff/tiff_4.3.0.bb
@@ -37,6 +37,7 @@ SRC_URI = 
"http://download.osgeo.org/libtiff/tiff-${PV}.tar.gz \
file://CVE-2023-0795_0796_0797_0798_0799.patch \
file://CVE-2023-25433.patch \
file://CVE-2023-25434-CVE-2023-25435.patch \
+   file://CVE-2023-26965.patch \
"
 
 SRC_URI[sha256sum] = 
"0e46e5acb087ce7d1ac53cf4f56a09b221537fc86dfc5daaad1c2e89e1b37ac8"
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184864): 

[OE-core] [dunfell] [PATCH] harfbuzz: Resolve backported commit bug.

2023-07-26 Thread Dhairya Nagodra via lists.openembedded.org
The commit 
[https://github.com/openembedded/openembedded-core/commit/c22bbe9b45e3]
backports fix for CVE-2023-25193 for version 2.6.4.
The apply() in src/hb-ot-layout-gpos-table.hh ends prematurely.
The if block in apply() has an extra return statement,
which causes it to return w/o executing
buffer->unsafe_to_concat_from_outbuffer() function.

Signed-off-by: Dhairya Nagodra 
---
 .../harfbuzz/harfbuzz/CVE-2023-25193.patch   | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/meta/recipes-graphics/harfbuzz/harfbuzz/CVE-2023-25193.patch 
b/meta/recipes-graphics/harfbuzz/harfbuzz/CVE-2023-25193.patch
index 8243117551..e4ac13dbad 100644
--- a/meta/recipes-graphics/harfbuzz/harfbuzz/CVE-2023-25193.patch
+++ b/meta/recipes-graphics/harfbuzz/harfbuzz/CVE-2023-25193.patch
@@ -1,4 +1,4 @@
-From 8708b9e081192786c027bb7f5f23d76dbe5c19e8 Mon Sep 17 00:00:00 2001
+From 9c8e972dbecda93546038d2d8216397d75a3 Mon Sep 17 00:00:00 2001
 From: Behdad Esfahbod 
 Date: Mon, 6 Feb 2023 14:51:25 -0700
 Subject: [PATCH] [GPOS] Avoid O(n^2) behavior in mark-attachment
@@ -8,13 +8,15 @@ Comment1: The Original Patch 
[https://github.com/harfbuzz/harfbuzz/commit/85be87
 Comment2: The Patch contained files MarkBasePosFormat1.hh and 
MarkLigPosFormat1.hh which were moved from hb-ot-layout-gpos-table.hh as per 
https://github.com/harfbuzz/harfbuzz/commit/197d9a5c994eb41c8c89b7b958b26b1eacfeeb00
 CVE: CVE-2023-25193
 Signed-off-by: Siddharth Doshi 
+Signed-off-by: Dhairya Nagodra 
+
 ---
- src/hb-ot-layout-gpos-table.hh | 101 -
+ src/hb-ot-layout-gpos-table.hh | 103 +++--
  src/hb-ot-layout-gsubgpos.hh   |   5 +-
- 2 files changed, 77 insertions(+), 29 deletions(-)
+ 2 files changed, 78 insertions(+), 30 deletions(-)
 
 diff --git a/src/hb-ot-layout-gpos-table.hh b/src/hb-ot-layout-gpos-table.hh
-index 024312d..88df13d 100644
+index 024312d..db5f9ae 100644
 --- a/src/hb-ot-layout-gpos-table.hh
 +++ b/src/hb-ot-layout-gpos-table.hh
 @@ -1458,6 +1458,25 @@ struct MarkBasePosFormat1
@@ -102,8 +104,9 @@ index 024312d..88df13d 100644
 +//if (!_hb_glyph_info_is_base_glyph (>info[idx])) { return_trace 
(false); }
  
 -unsigned int base_index = (this+baseCoverage).get_coverage  
(buffer->info[skippy_iter.idx].codepoint);
+-if (base_index == NOT_COVERED) return_trace (false);
 +unsigned int base_index = (this+baseCoverage).get_coverage  
(buffer->info[idx].codepoint);
- if (base_index == NOT_COVERED) return_trace (false);
++if (base_index == NOT_COVERED)
 +{
 +  buffer->unsafe_to_concat_from_outbuffer (idx, buffer->idx + 1);
 +  return_trace (false);
@@ -174,6 +177,3 @@ index 5a7e564..437123c 100644
void set_auto_zwj (bool auto_zwj_) { auto_zwj = auto_zwj_; init_iters (); }
void set_auto_zwnj (bool auto_zwnj_) { auto_zwnj = auto_zwnj_; init_iters 
(); }
void set_random (bool random_) { random = random_; }
--- 
-2.25.1
-
-- 
2.35.6


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184863): 
https://lists.openembedded.org/g/openembedded-core/message/184863
Mute This Topic: https://lists.openembedded.org/mt/100366039/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] Toolchain test results

2023-07-26 Thread Anuj Mittal
On Tue, 2023-07-25 at 23:29 -0700, Khem Raj wrote:
> On Tue, Jul 25, 2023 at 11:00 PM Anuj Mittal 
> wrote:
> > 
> > On Thu, 2023-07-20 at 12:26 +0100, Richard Purdie wrote:
> > > On Tue, 2023-07-18 at 10:14 +0100, Richard Purdie via
> > > lists.openembedded.org wrote:
> > > > qemuarm has ~350 failures
> > > > qemuarm64 has ~350 failures
> > > > qemux86-64 has ~4000 (3900 in glibc)
> > > > qemux86 has ~4000 (3500 in glibc)
> > > > qemuppc has ~600 failures
> > > > qemumips64 has ~5000 failures (all over)
> > > > qemumips has ~1600 failures
> > > > 
> > > > Anuj: Can Intel look into the glibc test failures on x86?
> > > 
> > > I realised the glibc issues were due to the network being
> > > disabled
> > > for
> > > the tests and have sent a patch to fix that. That reduces the
> > > failures
> > > from ~3900 to ~330. We should really try and reduce that further
> > > but
> > > it
> > > is a start!
> > > 
> > 
> > A lot of locale/iconv tests seemed to be failing when calling write
> > with large buffers/files over NFS. Some of others were triggering
> > OOM.
> > 
> > I ran the tests again after making a few changes:
> > 
> > https://autobuilder.yocto.io/pub/non-release/20230726-11/testresults/qemux86-64-tc/
> > 
> > After switching NFS mount to TCP and increasing the memory
> > available to
> > 1024, the number of tests failed came down to 69.
> > 
> 
> This is a nice, thanks for doing it. I looked quickly at your results
> especially glibc part
> and it seems some of remaining failures are in nss module. I could
> not
> see detail logs
> why those tests were failing but few things to check is if we install

All the nss tests are failing here:

https://github.com/bminor/glibc/blob/master/support/test-container.c#L842

Could be a NFS problem as well. I have not looked at it in much detail
yet.

Thanks,

Anuj


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184862): 
https://lists.openembedded.org/g/openembedded-core/message/184862
Mute This Topic: https://lists.openembedded.org/mt/100212267/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core][PATCH] meta-networking: cve_check: convert CVE_CHECK_IGNORE to CVE_STATUS

2023-07-26 Thread Sanjaykumar kantibhai Chitroda -X (schitrod - E-INFO CHIPS INC at Cisco) via lists.openembedded.org
From: Sanjay Chitroda 

- OE-core has added support for CVE_STATUS:
  https://github.com/openembedded/openembedded-core/commit/1634ed4048cf
- Try to add convert and apply statuses for old CVEs

Signed-off-by: Sanjay Chitroda 
---
 .../freeradius/freeradius_3.0.26.bb   |  7 +++---
 .../mbedtls/mbedtls_2.28.3.bb |  8 +++
 .../mbedtls/mbedtls_3.4.0.bb  |  8 +++
 .../openthread/wpantund_git.bb| 17 ++---
 .../samba/samba_4.18.4.bb | 12 +-
 .../recipes-protocols/mdns/mdns_1790.80.10.bb | 24 +--
 .../recipes-protocols/openflow/openflow.inc   | 13 +-
 .../recipes-support/dovecot/dovecot_2.3.20.bb |  4 ++--
 .../recipes-support/ntp/ntp_4.2.8p17.bb   | 18 +++---
 .../recipes-support/openvpn/openvpn_2.6.3.bb  |  6 +++--
 .../recipes-support/spice/spice_git.bb|  8 +++
 11 files changed, 62 insertions(+), 63 deletions(-)

diff --git 
a/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.26.bb 
b/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.26.bb
index 9a2bbab39..d33aa72e8 100644
--- a/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.26.bb
+++ b/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.26.bb
@@ -43,10 +43,9 @@ SRCREV = "d956f683d37ea40e7977cc5907361f3e6988a439"
 
 UPSTREAM_CHECK_GITTAGREGEX = "release_(?P\d+(\_\d+)+)"
 
-CVE_CHECK_IGNORE = "\
-CVE-2002-0318 \
-CVE-2011-4966 \
-"
+CVE_STATUS_GROUPS += "CVE_STATUS_FREERADIUS"
+CVE_STATUS_FREERADIUS = "CVE-2002-0318 CVE-2011-4966"
+CVE_STATUS_FREERADIUS[status] = "ignored"
 
 PARALLEL_MAKE = ""
 
diff --git a/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.28.3.bb 
b/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.28.3.bb
index ce094d5af..a9fb693e0 100644
--- a/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.28.3.bb
+++ b/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.28.3.bb
@@ -57,10 +57,10 @@ BBCLASSEXTEND = "native nativesdk"
 
 CVE_PRODUCT = "mbed_tls"
 
-# Fix merged upstream https://github.com/Mbed-TLS/mbedtls/pull/5310
-CVE_CHECK_IGNORE += "CVE-2021-43666"
-# Fix merged upstream 
https://github.com/Mbed-TLS/mbedtls/commit/9a4a9c66a48edfe9ece03c7e4a53310adf73a86c
-CVE_CHECK_IGNORE += "CVE-2021-45451"
+CVE_STATUS[CVE-2021-43666] = "cpe-incorrect: \
+Fix merged upstream https://github.com/Mbed-TLS/mbedtls/pull/5310;
+CVE_STATUS[CVE-2021-45451] = "cpe-incorrect: \
+Fix merged upstream 
https://github.com/Mbed-TLS/mbedtls/commit/9a4a9c66a48edfe9ece03c7e4a53310adf73a86c;
 
 # Strip host paths from autogenerated test files
 do_compile:append() {
diff --git a/meta-networking/recipes-connectivity/mbedtls/mbedtls_3.4.0.bb 
b/meta-networking/recipes-connectivity/mbedtls/mbedtls_3.4.0.bb
index b8c9662de..1f7684633 100644
--- a/meta-networking/recipes-connectivity/mbedtls/mbedtls_3.4.0.bb
+++ b/meta-networking/recipes-connectivity/mbedtls/mbedtls_3.4.0.bb
@@ -58,10 +58,10 @@ BBCLASSEXTEND = "native nativesdk"
 
 CVE_PRODUCT = "mbed_tls"
 
-# Fix merged upstream https://github.com/Mbed-TLS/mbedtls/pull/5310
-CVE_CHECK_IGNORE += "CVE-2021-43666"
-# Fix merged upstream 
https://github.com/Mbed-TLS/mbedtls/commit/9a4a9c66a48edfe9ece03c7e4a53310adf73a86c
-CVE_CHECK_IGNORE += "CVE-2021-45451"
+CVE_STATUS[CVE-2021-43666] = "cpe-incorrect: \
+Fix merged upstream https://github.com/Mbed-TLS/mbedtls/pull/5310;
+CVE_STATUS[CVE-2021-45451] = "cpe-incorrect: \
+Fix merged upstream 
https://github.com/Mbed-TLS/mbedtls/commit/9a4a9c66a48edfe9ece03c7e4a53310adf73a86c;
 
 # Strip host paths from autogenerated test files
 do_compile:append() {
diff --git a/meta-networking/recipes-connectivity/openthread/wpantund_git.bb 
b/meta-networking/recipes-connectivity/openthread/wpantund_git.bb
index a7fcc202a..223223ce3 100644
--- a/meta-networking/recipes-connectivity/openthread/wpantund_git.bb
+++ b/meta-networking/recipes-connectivity/openthread/wpantund_git.bb
@@ -22,11 +22,12 @@ S = "${WORKDIR}/git"
 
 inherit pkgconfig perlnative autotools
 
-# CVE-2020-8916 has been fixed in commit
-# 3f108441e23e033b936e85be5b6877dd0a1fbf1c which is included in the SRCREV
-# CVE-2021-33889 has been fixed in commit
-# a8f3f761f6753b567d1e5ad22cbe6b0ceb6f2649 which is included in the SRCREV
-# There has not been a wpantund release as of yet that includes these fixes.
-# That means cve-check can not match them. Once a new release comes we can
-# remove the ignore statement.
-CVE_CHECK_IGNORE = "CVE-2020-8916 CVE-2021-33889"
+CVE_STATUS[CVE-2020-8916] = "cpe-incorrect: \
+CVE has been fixed in commit \
+3f108441e23e033b936e85be5b6877dd0a1fbf1c which is included in the SRCREV"
+CVE_STATUS[CVE-2021-33889] = "cpe-incorrect: \
+CVE has been fixed in commit \
+a8f3f761f6753b567d1e5ad22cbe6b0ceb6f2649 which is included in the SRCREV \
+There has not been a wpantund release as of yet that includes these fixes. \
+That means cve-check can not match them. Once a new release comes 

Re: [OE-core] Toolchain test results

2023-07-26 Thread Khem Raj
On Tue, Jul 25, 2023 at 11:00 PM Anuj Mittal  wrote:
>
> On Thu, 2023-07-20 at 12:26 +0100, Richard Purdie wrote:
> > On Tue, 2023-07-18 at 10:14 +0100, Richard Purdie via
> > lists.openembedded.org wrote:
> > > qemuarm has ~350 failures
> > > qemuarm64 has ~350 failures
> > > qemux86-64 has ~4000 (3900 in glibc)
> > > qemux86 has ~4000 (3500 in glibc)
> > > qemuppc has ~600 failures
> > > qemumips64 has ~5000 failures (all over)
> > > qemumips has ~1600 failures
> > >
> > > Anuj: Can Intel look into the glibc test failures on x86?
> >
> > I realised the glibc issues were due to the network being disabled
> > for
> > the tests and have sent a patch to fix that. That reduces the
> > failures
> > from ~3900 to ~330. We should really try and reduce that further but
> > it
> > is a start!
> >
>
> A lot of locale/iconv tests seemed to be failing when calling write
> with large buffers/files over NFS. Some of others were triggering OOM.
>
> I ran the tests again after making a few changes:
>
> https://autobuilder.yocto.io/pub/non-release/20230726-11/testresults/qemux86-64-tc/
>
> After switching NFS mount to TCP and increasing the memory available to
> 1024, the number of tests failed came down to 69.
>

This is a nice, thanks for doing it. I looked quickly at your results
especially glibc part
and it seems some of remaining failures are in nss module. I could not
see detail logs
why those tests were failing but few things to check is if we install

libnss-db and glibc-extra-nss packages into image or not. some of
these tests edit
/etc/nsswitch.conf, so are these tests running in parallel and racing.

> ===
> ===
> qemux86-64 PTest Result Summary
> ===
> ===
> ---
> ---
> Recipe   | Passed   | Failed   | Skipped | Time(s)
> ---
> ---
> binutils | 289  | 0| 8   | -
> binutils-gas | 1582 | 4| 1   | -
> binutils-ld  | 1622 | 6| 111 | -
> gcc  | 149696   | 28   | 27599   | -
> gcc-g++  | 219260   | 30   | 21108   | -
> gcc-libatomic| 27   | 1| 27  | -
> gcc-libgomp  | 3426 | 1| 1962| -
> gcc-libitm   | 24   | 1| 24  | -
> gcc-libstdc++-v3 | 9695 | 32   | 5459| -
> glibc| 4984 | 69   | 147 | -
> rust | 15768| 0| 554 | -
> ---
> ---
>
> Thanks,
>
> Anuj
>
> 
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184860): 
https://lists.openembedded.org/g/openembedded-core/message/184860
Mute This Topic: https://lists.openembedded.org/mt/100212267/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [kirkstone][PATCH] tiff: fix multiple CVEs

2023-07-26 Thread Hitendra Prajapati
Backport fixes for:
* CVE-2023-25433 - Upstream-Status: Backport from 
https://gitlab.com/libtiff/libtiff/-/commit/9c22495e5eeeae9e00a1596720c969656bb8d678
 && 
https://gitlab.com/libtiff/libtiff/-/commit/688012dca2c39033aa2dc7bcea9796787cfd1b44
* CVE-2023-25434 & CVE-2023-25435 - Upstream-Status: Backport from 
https://gitlab.com/libtiff/libtiff/-/commit/69818e2f2d246e6631ac2a2da692c3706b849c38

Signed-off-by: Hitendra Prajapati 
---
 .../libtiff/tiff/CVE-2023-25433.patch | 195 ++
 .../tiff/CVE-2023-25434-CVE-2023-25435.patch  |  94 +
 meta/recipes-multimedia/libtiff/tiff_4.3.0.bb |   2 +
 3 files changed, 291 insertions(+)
 create mode 100644 meta/recipes-multimedia/libtiff/tiff/CVE-2023-25433.patch
 create mode 100644 
meta/recipes-multimedia/libtiff/tiff/CVE-2023-25434-CVE-2023-25435.patch

diff --git a/meta/recipes-multimedia/libtiff/tiff/CVE-2023-25433.patch 
b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-25433.patch
new file mode 100644
index 00..285aa3d1c4
--- /dev/null
+++ b/meta/recipes-multimedia/libtiff/tiff/CVE-2023-25433.patch
@@ -0,0 +1,195 @@
+From 9c22495e5eeeae9e00a1596720c969656bb8d678 Mon Sep 17 00:00:00 2001
+From: Su_Laus 
+Date: Fri, 3 Feb 2023 15:31:31 +0100
+Subject: [PATCH] CVE-2023-25433
+
+tiffcrop correctly update buffersize after rotateImage()
+fix#520 rotateImage() set up a new buffer and calculates its size
+individually. Therefore, seg_buffs[] size needs to be updated accordingly.
+Before this fix, the seg_buffs buffer size was calculated with a different
+formula than within rotateImage().
+
+Closes #520.
+
+Upstream-Status: Backport 
[https://gitlab.com/libtiff/libtiff/-/commit/9c22495e5eeeae9e00a1596720c969656bb8d678
 && 
https://gitlab.com/libtiff/libtiff/-/commit/688012dca2c39033aa2dc7bcea9796787cfd1b44]
+CVE: CVE-2023-25433
+Signed-off-by: Hitendra Prajapati 
+---
+ tools/tiffcrop.c | 78 +---
+ 1 file changed, 60 insertions(+), 18 deletions(-)
+
+diff --git a/tools/tiffcrop.c b/tools/tiffcrop.c
+index eee26bf..cbd24cc 100644
+--- a/tools/tiffcrop.c
 b/tools/tiffcrop.c
+@@ -523,7 +523,7 @@ static int rotateContigSamples24bits(uint16_t, uint16_t, 
uint16_t, uint32_t,
+ static int rotateContigSamples32bits(uint16_t, uint16_t, uint16_t, uint32_t,
+  uint32_t, uint32_t, uint8_t *, uint8_t 
*);
+ static int rotateImage(uint16_t, struct image_data *, uint32_t *, uint32_t *,
+-   unsigned char **, int);
++   unsigned char **, size_t *);
+ static int mirrorImage(uint16_t, uint16_t, uint16_t, uint32_t, uint32_t,
+unsigned char *);
+ static int invertImage(uint16_t, uint16_t, uint16_t, uint32_t, uint32_t,
+@@ -6515,7 +6515,7 @@ static int  correct_orientation(struct image_data 
*image, unsigned char **work_b
+* but switch xres, yres there. */
+   uint32_t width = image->width;
+   uint32_t length = image->length;
+-  if (rotateImage(rotation, image, , , work_buff_ptr, TRUE))
++  if (rotateImage(rotation, image, , , work_buff_ptr, NULL))
+   {
+   TIFFError ("correct_orientation", "Unable to rotate image");
+   return (-1);
+@@ -7695,16 +7695,19 @@ processCropSelections(struct image_data *image, struct 
crop_mask *crop,
+ 
+ if (crop->crop_mode & CROP_ROTATE) /* rotate should be last as it can 
reallocate the buffer */
+   {
++/* rotateImage() set up a new buffer and calculates its size
++ * individually. Therefore, seg_buffs size  needs to be updated
++ * accordingly. */
++  size_t rot_buf_size = 0;
+   if (rotateImage(crop->rotation, image, >combined_width, 
+-  >combined_length, _buff, FALSE))
++  >combined_length, _buff, _buf_size))
+ {
+ TIFFError("processCropSelections", 
+   "Failed to rotate composite regions by %"PRIu32" degrees", 
crop->rotation);
+ return (-1);
+ }
+   seg_buffs[0].buffer = crop_buff;
+-  seg_buffs[0].size = (((crop->combined_width * image->bps + 7 ) / 8)
+-* image->spp) * crop->combined_length; 
++  seg_buffs[0].size = rot_buf_size;
+   }
+ }
+   else  /* Separated Images */
+@@ -7804,9 +7807,13 @@ processCropSelections(struct image_data *image, struct 
crop_mask *crop,
+ {
+   /* rotateImage() changes image->width, ->length, ->xres and ->yres, 
what it schouldn't do here, when more than one section is processed. 
+* ToDo: Therefore rotateImage() and its usage has to be reworked 
(e.g. like mirrorImage()) !!
+-   */
+-  if (rotateImage(crop->rotation, image, >regionlist[i].width, 
+-  >regionlist[i].length, _buff, FALSE))
++   * Furthermore, rotateImage() set up a new buffer and calculates
++   * its size individually. Therefore, seg_buffs size  needs to be
++   * updated 

Re: [OE-core] Toolchain test results

2023-07-26 Thread Anuj Mittal
On Thu, 2023-07-20 at 12:26 +0100, Richard Purdie wrote:
> On Tue, 2023-07-18 at 10:14 +0100, Richard Purdie via
> lists.openembedded.org wrote:
> > qemuarm has ~350 failures
> > qemuarm64 has ~350 failures
> > qemux86-64 has ~4000 (3900 in glibc)
> > qemux86 has ~4000 (3500 in glibc)
> > qemuppc has ~600 failures
> > qemumips64 has ~5000 failures (all over)
> > qemumips has ~1600 failures
> > 
> > Anuj: Can Intel look into the glibc test failures on x86?
> 
> I realised the glibc issues were due to the network being disabled
> for
> the tests and have sent a patch to fix that. That reduces the
> failures
> from ~3900 to ~330. We should really try and reduce that further but
> it
> is a start!
> 

A lot of locale/iconv tests seemed to be failing when calling write
with large buffers/files over NFS. Some of others were triggering OOM.

I ran the tests again after making a few changes:

https://autobuilder.yocto.io/pub/non-release/20230726-11/testresults/qemux86-64-tc/

After switching NFS mount to TCP and increasing the memory available to
1024, the number of tests failed came down to 69.

===
===
qemux86-64 PTest Result Summary
===
===
---
---
Recipe   | Passed   | Failed   | Skipped | Time(s)
---
---
binutils | 289  | 0| 8   | -
binutils-gas | 1582 | 4| 1   | -
binutils-ld  | 1622 | 6| 111 | -
gcc  | 149696   | 28   | 27599   | -
gcc-g++  | 219260   | 30   | 21108   | -
gcc-libatomic| 27   | 1| 27  | -
gcc-libgomp  | 3426 | 1| 1962| -
gcc-libitm   | 24   | 1| 24  | -
gcc-libstdc++-v3 | 9695 | 32   | 5459| -
glibc| 4984 | 69   | 147 | -
rust | 15768| 0| 554 | -
---
---

Thanks,

Anuj

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184858): 
https://lists.openembedded.org/g/openembedded-core/message/184858
Mute This Topic: https://lists.openembedded.org/mt/100212267/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-