Commit Graph

52543 Commits

Author SHA1 Message Date
Jose Quaresma
ba7b606636 curl: 8.3.0 -> 8.4.0
curl and libcurl 8.4.0

 Public curl releases:         252
 Command line options:         258
 curl_easy_setopt() options:   303
 Public functions in libcurl:  93
 Contributors:                 2995

This release includes the following changes:

 o curl: add support for the IPFS protocols via HTTP gateway [46]
 o curl_multi_get_handles: get easy handles from a multi handle [20]
 o mingw: delete support for legacy mingw.org toolchain [45]

This release includes the following bugfixes:

 o acinclude.m4: Document proper system truststore on FreeBSD [83]
 o appveyor: fix yamlint issues, indent [67]
 o appveyor: rewrite batch in PowerShell + CI improvements [109]
 o autotools: adjust `CURL_CA_PATH` value to CMake [53]
 o autotools: restore `HAVE_IOCTL_*` detections [111]
 o base64: also build for curl [78]
 o bufq: remove Curl_bufq_skip_and_shift (unused) [47]
 o build: delete checks for C89 standard headers [65]
 o build: do not publish `HAVE_BORINGSSL`, `HAVE_AWSLC` macros [114]
 o cf-socket: simulate slow/blocked receives in debug [120]
 o cmake, configure: also link with CoreServices [32]
 o cmake: add check for suseconds_t [91]
 o cmake: add feature checks for `memrchr` and `getifaddrs` [57]
 o cmake: add missing checks [86]
 o cmake: delete old `HAVE_LDAP_URL_PARSE` logic [105]
 o cmake: detect `HAVE_CLOCK_GETTIME_MONOTONIC_RAW` [75]
 o cmake: detect `HAVE_GETADDRINFO_THREADSAFE` [76]
 o cmake: detect `sys/wait.h` and `netinet/udp.h` [61]
 o cmake: detect TLS-SRP in OpenSSL/wolfSSL/GnuTLS [93]
 o cmake: disable unity mode with Windows Unicode + TrackMemory [108]
 o cmake: fix `HAVE_LDAP_SSL`, `HAVE_LDAP_URL_PARSE` on non-Windows [110]
 o cmake: fix `HAVE_WRITABLE_ARGV` detection [77]
 o cmake: fix duplicate symbols when linking tests [73]
 o cmake: fix missing `zlib.h` when compiling `libcurltool` [72]
 o cmake: fix stderr initialization in unity builds [71]
 o cmake: fix the help text to the static build option in CMakeLists.txt [10]
 o cmake: fix unity builds for more build combinations [96]
 o cmake: fix unity symbol collisions in h2 builds [48]
 o cmake: fix unity with Windows Unicode + TrackMemory [107]
 o cmake: improve OpenLDAP builds [92]
 o cmake: lib `CURL_STATICLIB` fixes (Windows) [74]
 o cmake: move global headers to specific checks [58]
 o cmake: pre-cache `HAVE_BASENAME` for mingw-w64 and MSVC [85]
 o cmake: pre-cache `HAVE_POLL_FINE` on Windows [36]
 o cmake: tidy-up `NOT_NEED_LBER_H` detection
 o cmake: validate `CURL_DEFAULT_SSL_BACKEND` config value [50]
 o configure: check for the capath by default [63]
 o configure: remove unused checks [87]
 o configure: replace adhoc domain with `localhost` in tests [79]
 o configure: sort AC_CHECK_FUNCS
 o connect: expire the timeout when trying next [54]
 o connect: only start the happy eyeballs timer when needed [95]
 o cookie: do not store the expire or max-age strings [16]
 o cookie: remove unnecessary struct fields [17]
 o cookie: set ->running in cookie_init even if data is NULL [5]
 o create-dirs.d: clarify it also uses --output-dirs [66]
 o curl.h: mark CURLSSLBACKEND_NSS as deprecated since 8.3.0 [18]
 o curl_easy_pause.3: mention h2/h3 buffering [113]
 o curl_easy_pause.3: mention it works within callbacks [112]
 o curl_easy_pause: set "in callback" true on exit if true [100]
 o CURLOPT_DEBUGFUNCTION.3: warn about internal handles [122]
 o docs/libcurl/opts/Makefile.inc: add missing manpage files
 o docs: adapt SEE ALSO sections to new requirements [52]
 o docs: explain how PINNEDPUBLICKEY is independent of VERIFYPEER [68]
 o docs: replace made up domains with example.com [82]
 o docs: update curl man page references [89]
 o docs: use CURLSSLBACKEND_NONE [19]
 o doh: inherit DEBUGFUNCTION/DATA [12]
 o escape: replace Curl_isunreserved with ISUNRESERVED [2]
 o FAQ: How do I upgrade curl.exe in Windows? [84]
 o GHA/linux: run singleuse to detect single-use global functions [35]
 o GHA: add workflow to compare configure vs cmake outputs [102]
 o h2-proxy: remove left-over mistake in drain_tunnel() [7]
 o h2: testcase and fix for pausing h2 streams [49]
 o h3: add support for ngtcp2 with AWS-LC builds [103]
 o http2: refused stream handling for retry [121]
 o http: fix CURL_DISABLE_BEARER_AUTH breakage [28]
 o http: h1/h2 proxy unification [21]
 o http: remove wrong comment for http_should_fail [55]
 o http: use per-request counter to check too large headers [6]
 o http_aws_sigv4: fix sorting with empty parts [13]
 o idn: fix WinIDN null ptr deref on bad host [90]
 o idn: if idn2_check_version returns NULL, return error [27]
 o inet_ntop: add typecast to silence Coverity [51]
 o lib: disambiguate Curl_client_write flag semantics [24]
 o lib: enable hmac for digest as well [26]
 o lib: failf/infof compiler warnings [8]
 o lib: let the max filesize option stop too big transfers too [44]
 o lib: move handling of `data->req.writer_stack` into Curl_client_write() [97]
 o lib: provide and use Curl_hexencode [62]
 o lib: remove TIME_WITH_SYS_TIME [88]
 o lib: use wrapper for curl_mime_data fseek callback [30]
 o libssh2: fix error message on failed pubkey-from-file [22]
 o libssh: cap SFTP packet size sent [14]
 o Makefile.mk: always set `CURL_STATICLIB` for lib (Windows) [42]
 o MANUAL.md: change domain to example.com [11]
 o misc: better random strings [15]
 o MQTT: improve receive of ACKs [125]
 o multi: do CURLM_CALL_MULTI_PERFORM at two more places [99]
 o multi: fix small timeouts [70]
 o multi: remove Curl_multi_dump [37]
 o multi: round the timeout up to prevent early wakeups [98]
 o multi: set CURLM_CALL_MULTI_PERFORM after switch to DOING_MORE [115]
 o openssl: improve ssl shutdown handling [69]
 o openssl: use X509_ALGOR_get0 instead of reaching into X509_ALGOR [104]
 o pytest: exclude test_03_goaway in CI runs due to timing dependency [23]
 o quic: set ciphers/curves the same way regular TLS does [43]
 o quiche: fix build error with --with-ca-fallback [1]
 o RELEASE-PROCEDURE.md: updated coming release dates
 o runtests: display the test status if tests appear hung [81]
 o runtests: eliminate a warning on old perl versions
 o socks: return error if hostname too long for remote resolve [118]
 o src/mkhelp: make generated code pass `checksrc` [59]
 o test1056: disable on Windows
 o test1474: disable test on NetBSD, OpenBSD and Solaris 10 [31]
 o test1592: greatly increase the maximum test timeout
 o test1903: actually verify the cookies after the test [116]
 o test1906: set a lower timeout since it's hit on Windows [117]
 o test2600: remove special case handling for USE_ALARM_TIMEOUT [3]
 o test650: fix an end tag typo
 o test661: return from test early in case of curl error
 o test: add missing <feature>s
 o tests: close the shell used to start sshd [41]
 o tests: fix a race condition in ftp server disconnect [101]
 o tests: fix compiler warnings [38]
 o tests: Fix zombie processes left behind by FTP tests. [80]
 o tests: improve SLOWDOWN test reliability by reducing sent data
 o tests: increase lib571 timeout from 3s to 30s [106]
 o tests: log the test result code after each libtest
 o tests: propagate errors in libtests
 o tests: set --expect100-timeout to improve test reliability
 o tests: show which curl tool `runtests.pl` is using [60]
 o tests: stop overriding the lock timeout
 o tftpd: always use curl's own tftp.h [25]
 o tool: use our own stderr variable [94]
 o tool_cb_wrt: fix debug assertion [4]
 o tool_getparam: accept variable expansion on file names too [123]
 o tool_setopt: remove unused function tool_setopt_flags [56]
 o upload-file.d: describe the file name slash/backslash handling [9]
 o url: fall back to http/https proxy env-variable if ws/wss not set [119]
 o url: fix netrc info message [39]
 o warnless: remove unused functions [33]
 o wolfssh: do cleanup in Curl_ssh_cleanup [40]
 o wolfssl: allow capath with CURLOPT_CAINFO_BLOB [29]
 o wolfssl: if CURLOPT_CAINFO_BLOB is set, ignore the CA files [34]
 o wolfssl: ignore errors in CA path [64]

(From OE-Core rev: aeab27305b3f207530ad1c749f6668c0df6cbed1)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-12 07:53:40 +01:00
Ross Burton
d44333b92c oeqa/runtime/_qemutiny: rewrite test to be functional
The _qemutiny is a small test case that was explicitly designed to do a
minimal level of testing for poky-tiny images.  These typically don't
have SSH servers so we need to assume that qemu is being used and access
the serial console directly.

(From OE-Core rev: 2245b2754d6f4798127ce85a2ab7cb48f458c1f7)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-11 09:43:45 +01:00
Ross Burton
3044b4e3f8 busybox-inittab: fix console handling
A testing failure meant that the inittab changes made in 6c65544 didn't
actually work.

A copy-paste problems meant that start_getty was being invoked instead
of getty, but start_getty is sysvinit-inittab-specific. Revert this
inittab to calling getty directly.

Remove the terminal type, this wasn't specified in the original inittab.

Busybox's init has non-standard behaviour for the inittab's ID field.
With SysV this is a four-character identifier and nothing more, but with
busybox init this is the controlling terminal (minus /dev).  If the
terminal doesn't exist then busybox doesn't gracefully handle the
failure but instead repeatedly fails to spawn.

As getty will immediately issue a setsid() this isn't needed for getty
entries, so the ID can be empty and ttyrun does the terminal detection.

(From OE-Core rev: 71202782a06ed1f0a17e00072b74b21195f2f5f9)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-11 09:43:45 +01:00
Ross Burton
096df641d2 meta/conf/machine: remove SERIAL_CONSOLES_CHECK
There's no need for this variable anymore, as all consoles listed in
SERIAL_CONSOLES are checked for their existence before a getty is
started.

(From OE-Core rev: 8a1060952f8b6956acf747f3853401ac8a981fc3)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-11 09:43:45 +01:00
Ross Burton
947f7d7b8c oeqa/selftest: don't skip test_read_only_image on qemuarm64
There's no need to skip this test anymore, as skipping on qemuarm64 was
a proxy for "uses SERIAL_CONSOLES_CHECK" which no longer exists.

[ YOCTO #14962 ]

(From OE-Core rev: 1b8b1cb74c8f5f387a14d86f03f37f68c07dd9aa)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-11 09:43:45 +01:00
Alexis Lothoré
3c53168682 oeqa/utils/gitarchive: ensure tag matches regex before getting its fields
Whenever we ask gitarchive to retrieve test results for specific revisions,
we first do a "large" search in get_tags, which uses glob patterns with git
ls-remote, and then we filter received tags with a regex to parse the tags
fields.
Currently gitarchive assumes that all tags returned by get_tags will match
the regex. This assumption is wrong (for example searching "master-next" in
get_tags may return some tags like "abelloni/master-next), and leads then
to exception when we try to retrieve tags fields:
Traceback (most recent call last):
  File "/home/pokybuild/yocto-worker/a-full/build/scripts/resulttool", line 78, in <module>
    sys.exit(main())
             ^^^^^^
  File "/home/pokybuild/yocto-worker/a-full/build/scripts/resulttool", line 72, in main
    ret = args.func(args, logger)
          ^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/pokybuild/yocto-worker/a-full/build/scripts/lib/resulttool/regression.py", line 315, in regression_git
    revs2 = gitarchive.get_test_revs(logger, repo, tag_name, branch=args.branch2)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/pokybuild/yocto-worker/a-full/build/meta/lib/oeqa/utils/gitarchive.py", line 246, in get_test_revs
    fields, runs = get_test_runs(log, repo, tag_name, **kwargs)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/pokybuild/yocto-worker/a-full/build/meta/lib/oeqa/utils/gitarchive.py", line 238, in get_test_runs
    groups = m.groupdict()

Fix this exception by merely skipping those additionals tags which won't
match the regex

(From OE-Core rev: 8b5ace47372e958db9e4abb23378947fb02f6fc2)

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-11 09:43:45 +01:00
Alexis Lothoré
800665612a oeqa/utils/gitarchive: fix tag pattern searching
Whenever we ask gitarchive to search for tags, we can provide it with a
pattern (containing glob patterns). However, when searching for example for
tags matching branch master-next, it can find more tags which does not
correspond exactly to branch master-next (e.g. abelloni/master-next tags
will match).

Prevent those additional tags from being fetched by gitarchive by using a
more specific pattern: prefix user-provided pattern with "refs/tags"

(From OE-Core rev: c24b7ea28021da48aa8f3498a9b899f595efde56)

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-11 09:43:45 +01:00
Richard Purdie
4411460016 oeqa/qemurunner: Ensure we retry after BrokenPipeError
If the BrokenPipeError occurs when writing to the serial port to wake it
up, defer the write and try again (which will happen on the 5s timeout
of the select call). Why it should return ESHUTDOWN and then work later
I'm not sure but it does appear to make it work. For now we need 'working'
QA tests whilst the issue is debugged.

(From OE-Core rev: ea9e6ba0ab31a0b20012c283aa768496a50b527a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-11 09:39:46 +01:00
Sundeep KOKKONDA
b36cbd3f2b rust: reproducibility issue fix
The '--remap-path-prefix' option removes all references to build directory
structure in the debug information within the compiled output for Cargo
dependencies and the project's binary.

However, some references to build directories remains in the final binary
in .rustc section in the form of compressed metadata and this makes the
build output dependent on the folder structure of the computer it's compiled on.

So, for reproducible builds, use the configuration option
'remap-debuginfo = true' along with the '--remap-path-prefix'.

[YOCTO# 14875]

(From OE-Core rev: 6ae62259afbbe861ed74211dab18a27b8c8d8b7a)

Signed-off-by: Sundeep KOKKONDA <sundeep.kokkonda@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-11 09:36:53 +01:00
Richard Purdie
c0af426af8 oeqa/qemurunner: Add extra logging when console doesn't appear
If the console doesn't appear, breifly sleep and try an extra read. This
is a useful debugging trick which we may as well preserve in the code. We're
already failing at this point so extra data is useful.

This means if we perturb things on the other port, we may gain useful logging
insight.

(From OE-Core rev: be3724854947ded160789d0353b7efb8c593040f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-10 09:53:32 +01:00
Richard Purdie
44b4c74cad runqemu/qemurunner: Use nodelay with tcp serial connections
This disables Nagle's algorithm for our tcp serial connections which may
be causing data transfer issues.

(From OE-Core rev: f8eff4c427881a98333fdf7c42f66ed6603e4f03)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-10 09:53:32 +01:00
Richard Purdie
ef7e7b446a oeqa/qemurunner: Add newlines serial workaround
We're struggling with the 6.5 kernel as the serial port getty doesn't appears sometimes
leading to failures in CI. Add a workaround of sending some newlines as a way of
unblocking the kernel/release issues whilst we try and work out how to get to the bottom
of the issue.

(From OE-Core rev: 0a65f0d272895ba13c8c133ee71f3605d765a8a7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-10 09:53:32 +01:00
Richard Purdie
36d6275314 qemux86/qemuarm: Drop kernel version overrides
Drop the version overrides for the kernel for the x86 and arm machines
so we can go back to following the distro versions. The reasons for
these versions is mostly historical at this point as the issues were
resolved.

(From OE-Core rev: 298fa078fab58b64246376ffd70ad6a0c7589876)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-10 09:53:32 +01:00
Julien Stephan
4f2f3c12a9 oeqa/selftest/bblock: add self test for bblock tool
it implements various combination of locking single/multiple recipe(s)/task(s)

it also tests that locked sig are architecture dependant

(From OE-Core rev: 7047a067548acd592a834d4315579fb606b4b9d7)

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-09 15:58:47 +01:00
Julien Stephan
043ca5f64d sstatesig: add a new info level for SIGGEN_LOCKEDSIGS_TASKSIG_CHECK
as of now, SIGGEN_LOCKEDSIGS_TASKSIG_CHECK can take 2 values: "warn" and
"error", displaying respectively a warning or a fatal error message
only when a task is locked and the task signature is different from
the locked one.

The "info" level is introduced to add a "note" message to remind the
user that a recipe is locked even if the signature is equivalent to the
locked one.

The "warn" and "error" level display the warn/error message for each
task having a mismatch of the signature. Doing this with the "info"
level would result in very verbose output if there are several tasks
locked, so the info level will only print once the list of recipes that
have locked signature.

(From OE-Core rev: 840402181d36ca3f60119984478979afb5bb3bbf)

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-09 15:58:47 +01:00
Julien Stephan
96f6271d0a bitbake.conf: include bblock.conf
include conf/bblock.conf. This file is generated by the bblock tool. It
locks some package tasks by fixing their signatures. See bblock -h for
more details

(From OE-Core rev: fb85282476f9dee2b0364c305ca75b096a76b1ae)

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-09 15:58:47 +01:00
Mikko Rapeli
3cba2dfd43 openssh: drop sudo from ptest dependencies
The tests don't actually need sudo on core-image-ptest-openssh.
Based on logs seen in
https://bugzilla.yoctoproject.org/show_bug.cgi?id=15178 it seems
that socket errors from sudo are creeping into stderr which are failing
the banner ptest from openssh. Removing sudo should help removing
the stderr messages and possibly cure the banner test failures.

(From OE-Core rev: 47e754f483b674b207bfddcc8d4c5d9a3008e102)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-09 15:51:13 +01:00
Randy MacLeod
64457d23ca strace: skip so_peerpidfd test
The so_peerpidfd test is failing in every linux-yocto-6.5 ptest run
due to a difference of square brackets in part of the log file.

Skip the failing test until the difference is understood and fixed.

(From OE-Core rev: d7c9afbef0b440f5dbd16b3e8a3cb1ac5c513836)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-09 15:51:13 +01:00
Richard Purdie
d87e41f3e3 cryptodev: Update to latest git for 6.5 kernel fixes
Update to pull in recent git changes which allow cryptodev to work
with 6.5 kernels.

(From OE-Core rev: cbc2e92ff3bbf1921f6a56dfe024dfbf82178dc0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-09 15:51:13 +01:00
Ross Burton
cedd01f57e busybox: use ttyrun to run getty only if the terminal exists
Wrap calls to start_getty with ttyrun, so that getty isn't started if
the device doesn't exist.  As we know start_getty is only called when
the device exists we can remove the partial workaround for this problem
in that scripts too.

This neatly obsoletes SERIAL_CONSOLES_CHECK, whose sole purpose was to
check what terminals are present at boot and rewrite inittab.  Notably,
this meant that SERIAL_CONSOLES_CHECK made using a read-only rootfs
impossible.

(From OE-Core rev: 950ecaabc04836efc346be0ac7e0331e2378872b)

(From OE-Core rev: 6c655441ff5cd0d8877891ff37f8cfa983363a2a)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-09 15:51:13 +01:00
Ross Burton
42d35e89a3 sysvinit-inittab: use ttyrun to run getty only if the terminal exists
Wrap calls to start_getty with ttyrun, so that getty isn't started if
the device doesn't exist.  As we know start_getty is only called when
the device exists we can remove the partial workaround for this problem
in that scripts too.

This neatly obsoletes SERIAL_CONSOLES_CHECK, whose sole purpose was to
check what terminals are present at boot and rewrite inittab.  Notably,
this meant that SERIAL_CONSOLES_CHECK made using a read-only rootfs
impossible.

(From OE-Core rev: f4fd17d5a5e4eaa31995d3ca52c871cfbdc0df68)

(From OE-Core rev: 8e48297621311116d3edd7e3aa0de1b8ef2431b1)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-09 15:51:13 +01:00
Ross Burton
b3fa551d64 ttyrun: add new recipe
ttyrun is a small tool from IBM's s390-tools package to run a command
if the specified TTY is present, and hang if not.

This is useful so that you can list all of the potential terminals in
inittab and not have getty quiting instantly when a device isn't
present, resulting in the "respawning too fast" errors.

Note that DISTRELEASE has to be set as otherwise "build$(DATE)" is used,
which is non-reproducible.

(From OE-Core rev: 41a8a2e0817c7f73d3a4514fd158141ee5627ad8)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-09 15:51:13 +01:00
Ross Burton
18a8d773c5 sysvinit-initab: rewrite loop to generate inittab
Instead of one-letter variables and arcane sed expressions, use English
words and 'cut'.

(From OE-Core rev: de9833792dd0cfac6f17d5c733c263b976e89cf6)

(From OE-Core rev: c79f6e66283e506453d1643259d18e2d13eb10ea)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-09 15:51:13 +01:00
Ross Burton
a4857688c3 qemuboot: reduce default size of software I/O translation buffer
With 6.5+ (specifically, if DMA_BOUNCE_UNALIGNED_KMALLOC is set) the
SWIOTLB is used, and it defaults to 64MB. This is too much when there's
only 256MB of RAM, so request 0 slabs and lets the kernel round up to
the appropriate minimum (1MB on aarch64, typically). In virtual hardware
there's very little need for these bounce buffers, so the 64MB would be
mostly wasted.

(From OE-Core rev: 369e768d87b80be9efe76937bfafeddabc35f559)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-09 15:51:13 +01:00
Peter Kjellerstedt
68b54a02d5 cmake.bbclass: Add *.cmake to CONFIGURE_FILES
This makes do_configure depend on changes to any cmake file when
externalsrc is active.

(From OE-Core rev: dae2757bf0fea6ae821a28bd6ea9d0232694c177)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-09 15:51:13 +01:00
Mikko Rapeli
23a50c8cca qemurunner.py: detect login prompt without without utf-8 conversion
In case utf-8 conversion of the serial console data is flaky
due to bad characters in the stream.

(From OE-Core rev: 3f4921ced1e2aae546ff7cef232eec3e214c28be)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-08 13:05:25 +01:00
Martijn de Gouw
0fb1ff0ffb busybox: Set PATH in syslog initscript
This script is not always called with /sbin and /usr/sbin in the PATH
already, for example when called via ssh. Explicitly set PATH to make
sure it includes /sbin and /usr/sbin since that's where start-stop-daemon
is located.

(From OE-Core rev: fa53f898eaba15dff030f9eadf86e5bca7d954fa)

Signed-off-by: Martijn de Gouw <martijn.de.gouw@prodrive-technologies.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-06 11:51:11 +01:00
Yogita Urade
ba7ac22f2e qemu: fix CVE-2023-42467
QEMU through 8.0.0 could trigger a division by zero in scsi_disk_reset
in hw/scsi/scsi-disk.c because scsi_disk_emulate_mode_select does not
prevent s->qdev.blocksize from being 256. This stops QEMU and the guest
immediately.

References:
https://nvd.nist.gov/vuln/detail/CVE-2023-42467
https://gitlab.com/qemu-project/qemu/-/issues/1813

(From OE-Core rev: 7c42b976d7a72acf917bae9d055768a1350e507d)

Signed-off-by: Yogita Urade <yogita.urade@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-06 11:51:11 +01:00
Fahad Arslan
3ddddfc14f linux-firmware: create separate package for cirrus and cnm firmwares
Some licenses only allow usage of corresponding firmwares when a specific
hardware is present. This requires split of such firmwares from linux-firmware
package to firmware specific sub package. As this split is based off of
licensing, it makes sense to group firmware blobs having the same license in the
same package. This commit is a first step in this direction, and creates
separate packages for cirrus and cnm firmware.

(From OE-Core rev: 53d9d8789efc701609a5a1e985287344c2209d62)

Signed-off-by: Fahad Arslan <fahad.arslan@siemens.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-06 11:51:11 +01:00
Archana Polampalli
d87f113d9f gstreamer: upgrade 1.22.5 -> 1.22.6
This release only contains bugfixes and security fixes.

Highlighted bugfixes in 1.22.6:

Security fixes for the MXF demuxer and H.265 video parser
Fix latency regression in H.264 hardware decoder base class
androidmedia: fix HEVC codec profile registration and fix coded_data handling
decodebin3: fix switching from a raw stream to an encoded stream
gst-inspect: prettier and more correct signal and action signals printing
rtmp2: Allow NULL flash version, omitting the field, for better RTMP server compatibility
rtspsrc: better compatibility with buggy RTSP servers that don't set a clock-rate
rtpjitterbuffer: fix integer overflow that led to more packets being declared lost than have been lost
v4l2: fix video encoding regression on RPi and fix support for left and top padding
waylandsink: Crop surfaces to their display width height
cerbero: recognise Manjaro; add Rust support for MSVC ARM64; cmake detection fixes
various bug fixes, build fixes, memory leak fixes, and other stability and reliability improvements

https://nvd.nist.gov/vuln/detail/CVE-2023-40475
https://nvd.nist.gov/vuln/detail/CVE-2023-40476

https://gstreamer.freedesktop.org/releases/1.22/#1.22.6

(From OE-Core rev: ff2fc789e08c42903f5e528d4836dd482227291c)

Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-06 11:51:11 +01:00
Daniel McGregor
a570227bb7 libtirpc: conditionally enable gssapi
This is for upcoming work to support gssapi in nfs-utils for nfsv4
and kerberos mountpoints.

(From OE-Core rev: ae9c64cd2291f4b24ac442816a4e354e47c70933)

Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-06 11:51:11 +01:00
Daniel McGregor
aacca1f010 meson: upgrade 1.2.1 -> 1.2.2
The newly released version 1.2.2 adds version 17 to CMake LLVM
detection, so we will now choose the OE provided LLVM version
instead of the one on host during native builds.

(From OE-Core rev: 90edba29f9f4c115af5202c566eaa935656de1eb)

Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-06 11:51:11 +01:00
Peter Kjellerstedt
ef66352fcc packages.bbclass: Correct the check for conflicts with renamed packages
The original solution replaced all overrides with the package name that
was being checked. This can have unforseen consequences where some
variable involved in defining the value for the PKG:<package> variable
may rely on some override which is not set as expected. It also meant
that any PKG variable set using an override would not be caught, e.g.,
PKG:${PN}:${MACHINE} = "${PN}-dev" (made up example that would always
fail with the old code).

(From OE-Core rev: de62d538dbfe6caf123ff366643f893077175583)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-06 11:51:11 +01:00
Peter Kjellerstedt
23f4bb7710 autotools.bbclass: Add *.m4 to CONFIGURE_FILES
This makes do_configure depend on changes to any m4 file when
externalsrc is active.

(From OE-Core rev: 492559191943c9e2666c3dda1824c5aafbe487d5)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-06 11:51:11 +01:00
Peter Kjellerstedt
d066ec92dc externalsrc.bbclass: Support specifying patterns in CONFIGURE_FILES
This allows, e.g., *.cmake to be added to CONFIGURE_FILES to make the
do_configure task depend on changes to any cmake file.

(From OE-Core rev: 09873b3fb24a00cfbd73282d29e4c5821774f579)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-06 11:51:11 +01:00
Ross Burton
08421d8985 libxpm: upgrade to 3.5.17
This release fixes the following CVEs:

- CVE-2023-43788
- CVE-2023-43789

(From OE-Core rev: 46dd8ce41756dbc2aa0f9001416f208cced1c8d5)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-05 21:09:10 +01:00
Ross Burton
07e1460ca7 libx11: upgrade to 1.8.7
This incorporates fixes for the following CVEs:

- CVE-2023-43785
- CVE-2023-43786
- CVE-2023-43787

(From OE-Core rev: a1534bb34b680bfc5cb2f35b5fd5a0c2afed6368)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-05 21:09:10 +01:00
Quentin Schulz
8d8c9078c6 uboot-extlinux-config.bbclass: fix missed override syntax migration
uboot-extlinux-config allows to specify multiple "labels" (entries in a
menu, à-la grub) and each of them have their own values for some fields.
Each "base" variable, e.g. UBOOT_EXTLINUX_FDT can be overridden for each
label. This is done via the OVERRIDES mechanism based on the label name,
e.g. UBOOT_EXTLINUX_FDT:linux if linux is a label.

However, OVERRIDES doesn't contain the label globally because it's only
necessary in one task. Therefore, the OVERRIDES itself is modified
within the task. This means that the sigdata will not be told the
dependency on UBOOT_EXTLINUX_FDT:linux, because it cannot know about it.

For this reason, we need to explicitly specify which variables this task
depends on via vardeps varflag for the task.

This was done in the past, but we missed updating it during the override
syntax migration so the cache wouldn't get invalidated if someone
modifies UBOOT_EXTLINUX_FDT:linux from a configuration file or a
bbappend for example.

Let's fix this by migrating it to the new syntax.

(From OE-Core rev: b4dd9d873508128adbbf5ff6cf0a3df3d2ffbcf6)

Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-05 21:09:10 +01:00
Richard Purdie
c9caf79cab oeqa/concurrencytest: Remove invalid buffering option
Fix warnings from oe-selftest -j:

/usr/lib/python3.10/os.py:1030: RuntimeWarning: line buffering (buffering=1) isn't supported in binary mode, the default buffer size will be used
  return io.open(fd, mode, buffering, encoding, *args, **kwargs)

Remove the option since it clearly doesn't do much.

(From OE-Core rev: 6b872ee72942951fd464c4c6cb9eadcb9b4749c1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-05 21:09:10 +01:00
Bruce Ashfield
d7130dbdd5 linux-yocto/6.5: integrate fixes for sanity issues
making the following commits available in our 6.5 kernel:

    49e3d8448aea locking/atomic: scripts: fix fallback ifdeffery
    9ba8e064374d crypto: jitter - add RCT/APT support for different OSRs
    50f59f46583a crypto: jitter - Add clarifying comments to Jitter Entropy RCT cutoff values

Which should address several of the failures we are seeing with
6.5 under integration testing.

(From OE-Core rev: dd8f47a9c4407741575e9264f7c44e4623f606e0)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-05 21:09:10 +01:00
Fabio Estevam
2b9044361f u-boot: Upgrade to 2023.10
Upgrade to U-Boot 2023.10.

The U-Boot 2023.10 tag is in the master branch, so switch the branch
back to master.

(From OE-Core rev: 6fce7f99ff5bacf7ad4b1816f462260fe41b38ee)

Signed-off-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-04 23:55:12 +01:00
Daniel Semkowicz
056fe7fad4 uboot-extlinux-config.bbclass: Add menu title configuration
Add new UBOOT_EXTLINUX_MENU_TITLE variable that allows configuring
the "MENU TITLE" entry.

If set to empty, "MENU TITLE" will not be added to the output file.

(From OE-Core rev: 23026911142585fde9290e21b07934fc583b6540)

Signed-off-by: Daniel Semkowicz <dse@thaumatec.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-04 23:55:12 +01:00
Daniel Semkowicz
8676ca858b uboot-extlinux-config.bbclass: Uppercase "menu title" entry
All other extlinux.conf entries are written to the output file
in uppercase.

(From OE-Core rev: 6c89654cf37da95aeea07e1645f2cdffe320c8bc)

Signed-off-by: Daniel Semkowicz <dse@thaumatec.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-04 23:55:12 +01:00
Daniel Semkowicz
67cf43618f uboot-extlinux-config.bbclass: Remove repeated space character
(From OE-Core rev: e8a7a8d93c20f966bc2845d23696d01234cbb227)

Signed-off-by: Daniel Semkowicz <dse@thaumatec.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-04 23:55:12 +01:00
Ross Burton
5aa44d46c6 python3-numpy: remove obsolete reproducible workaround
We currently delete some pycache files because frozenset wasn't able to
be reproducible, but this has been fixed in Python 3.11:

33d95c6fac

(From OE-Core rev: 5c287a896fa9f5cd05b6a2411528fdc8fb2579d6)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-04 23:55:12 +01:00
Markus Volk
c99934f683 gtk: Upgrade 4.12.1 -> 4.12.3
Overview of Changes in 4.12.3, 28-09-2023
=========================================

* GtkWindow:
 - Don't assume titlebars are GtkHeaderBar

* GtkTreeView:
 - Fix a crash in gtk_tree_view_is_blank_at_pos

* printing:
 - Fix some issues with the portal implementation

* GSK:
 - Some optimizations in the GL renderer
 - Fix memory leaks in the Broadway renderer

* demos:
 - Fix a crash in gtk4-demo

* Translation updates
 Basque
 Brazilian Portuguese
 Czech
 Galician
 Georgian
 German
 Hungarian
 Kazakh
 Lithuanian
 Persian
 Polish
 Spanish
 Swedish
 Turkish

Overview of Changes in 4.12.2, 20-09-2023
=========================================

* GtkTooltip:
 - Don't cross native boundaries when looking for tooltips

* GtkCenterLayout, GtkEntry, GtkSearchEntry:
 - Fix some issues with baseline handling

* GtkSwitch:
 - Respect text direction

* Theme:
 - Use relative font sizes

* GSK:
 - Make repeated gradients match between GL and cairo
 - Make rounded rect shrinking match between Vulkan, GL and cairo
 - Fix parsing of text nodes with color glyphs
 - Restrict an optimization to the cases where it is correct
 - Fix rendering of shadows with opacity

* macOS:
 - Clamp damage regions to the surface size

* Windows:
 - Fix missing minimize and maximize buttons

* Translation updates
 Basque
 Brazilian Portuguese
 Catalan
 Chinese (China)
 Czech
 Danish
 Dutch
 Finnish
 Galician
 German
 Hungarian
 Italian
 Kazakh
 Latvian
 Lithuanian
 Slovenian
 Spanish
 Turkish

(From OE-Core rev: ba738a1e2944468ef3e4d9c9810e98457fcd3b85)

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-04 23:55:12 +01:00
Khem Raj
eac91be2e1 python3-docutils: Rename utilities to their canonical names
Packages which use the utilities usually call/search for these tools
without .py extension e.g. kernel-selftest and fails to find the tools
if they are having .py extension.

(From OE-Core rev: 47b221d6bc91139cd84ddcf9c57a12288eafd8be)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-04 23:55:12 +01:00
Markus Volk
e86612dc31 mesa: Upgrade 23.1.8 -> 23.2.1
- update 0001-gallium-Fix-build-with-llvm-17.patch
- remove as added upstream:
0001-intel-Allow-using-intel_clc-from-the-system.patch
- intel clc build is currently broken with llvm 17, but that issue is also
present
  with mesa 23.1.8

https://gitlab.freedesktop.org/mesa/mesa/-/issues/9701
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24879
https://github.com/KhronosGroup/SPIRV-LLVM-Translator/issues/2153

(From OE-Core rev: d95beb63b3cb8b8e53109304ab88b3938b137035)

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-04 23:55:12 +01:00
Andreas Cord-Landwehr
4c0ce132a5 wayland: consider pkgconfig sysroot for pkgdatadir
Fix pkgconfig find calls to find wayland protocol XML files.
See discussion in:
https://gitlab.freedesktop.org/wayland/wayland/-/merge_requests/102

(From OE-Core rev: 428ffec520ff25b2a29d506d7af9e6ba8a150d8f)

Signed-off-by: Andreas Cord-Landwehr <cordlandwehr@kde.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-04 23:55:12 +01:00
Rasmus Villemoes
f7cbd05853 openssh: update sshd_check_keys script to make use of 'sshd -G'
Parsing sshd's config file with 'sed' does not work in for example the
case where somebody has made use of the new ability to add a config
fragment in /etc/ssh/sshd_config.d/ with one or more HostKey
stanzas. Also, sshd_config keywords are case-insensitive, but the
current sed pattern only matches the CamelCase spelling of HostKey.

In openssh 9.3, sshd learnt a new command line flag '-G', which causes
sshd to parse the given configuration file and print the resulting
effective configuration on stdout. So use that instead.

Furthermore, since that "effective configuration" includes the default
set of host keys if the configuration file has no HostKey stanzas, we
also avoid the script needing to know what sshd's default is - that
could plausibly change with some future release.

(From OE-Core rev: dd27f9d869b8aa28dfb18de037a24ab0ec735718)

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-04 23:55:12 +01:00