summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-multimedia/recipes-multimedia/aom/aom_3.12.1.bb (renamed from meta-multimedia/recipes-multimedia/aom/aom_3.7.0.bb)4
-rw-r--r--meta-networking/dynamic-layers/meta-python/recipes-printing/system-config-printer/system-config-printer_1.5.18.bb7
-rw-r--r--meta-networking/recipes-connectivity/networkmanager/networkmanager_1.52.0.bb (renamed from meta-networking/recipes-connectivity/networkmanager/networkmanager_1.50.0.bb)13
-rw-r--r--meta-networking/recipes-connectivity/wolfssl/files/0001-wolfssl-wolfcrypt-logging.h-and-wolfcrypt-src-loggin.patch791
-rw-r--r--meta-networking/recipes-connectivity/wolfssl/files/run-ptest6
-rw-r--r--meta-networking/recipes-connectivity/wolfssl/wolfssl_5.8.0.bb (renamed from meta-networking/recipes-connectivity/wolfssl/wolfssl_5.7.2.bb)7
-rw-r--r--meta-networking/recipes-protocols/mdns/mdns/0001-Use-secure_getenv-on-Linux.patch30
-rw-r--r--meta-networking/recipes-protocols/mdns/mdns/0005-Fix-missing-limit-declarations.patch49
-rw-r--r--meta-networking/recipes-protocols/mdns/mdns_2600.120.12.bb (renamed from meta-networking/recipes-protocols/mdns/mdns_2600.100.147.bb)6
-rw-r--r--meta-oe/recipes-devtools/xerces-c/xerces-c_3.3.0.bb (renamed from meta-oe/recipes-devtools/xerces-c/xerces-c_3.2.5.bb)4
-rw-r--r--meta-oe/recipes-extended/redis/redis-7.2.8/0001-hiredis-use-default-CC-if-it-is-set.patch (renamed from meta-oe/recipes-extended/redis/redis-7.2.7/0001-hiredis-use-default-CC-if-it-is-set.patch)0
-rw-r--r--meta-oe/recipes-extended/redis/redis-7.2.8/0002-lua-update-Makefile-to-use-environment-build-setting.patch (renamed from meta-oe/recipes-extended/redis/redis-7.2.7/0002-lua-update-Makefile-to-use-environment-build-setting.patch)0
-rw-r--r--meta-oe/recipes-extended/redis/redis-7.2.8/0003-hack-to-force-use-of-libc-malloc.patch (renamed from meta-oe/recipes-extended/redis/redis-7.2.7/0003-hack-to-force-use-of-libc-malloc.patch)0
-rw-r--r--meta-oe/recipes-extended/redis/redis-7.2.8/0004-src-Do-not-reset-FINAL_LIBS.patch (renamed from meta-oe/recipes-extended/redis/redis-7.2.7/0004-src-Do-not-reset-FINAL_LIBS.patch)0
-rw-r--r--meta-oe/recipes-extended/redis/redis-7.2.8/0005-Define-_GNU_SOURCE-to-get-PTHREAD_MUTEX_INITIALIZER.patch (renamed from meta-oe/recipes-extended/redis/redis-7.2.7/0005-Define-_GNU_SOURCE-to-get-PTHREAD_MUTEX_INITIALIZER.patch)0
-rw-r--r--meta-oe/recipes-extended/redis/redis-7.2.8/0006-Define-correct-gregs-for-RISCV32.patch (renamed from meta-oe/recipes-extended/redis/redis-7.2.7/0006-Define-correct-gregs-for-RISCV32.patch)0
-rw-r--r--meta-oe/recipes-extended/redis/redis-7.2.8/init-redis-server (renamed from meta-oe/recipes-extended/redis/redis-7.2.7/init-redis-server)0
-rw-r--r--meta-oe/recipes-extended/redis/redis-7.2.8/redis.conf (renamed from meta-oe/recipes-extended/redis/redis-7.2.7/redis.conf)0
-rw-r--r--meta-oe/recipes-extended/redis/redis-7.2.8/redis.service (renamed from meta-oe/recipes-extended/redis/redis-7.2.7/redis.service)0
-rw-r--r--meta-oe/recipes-extended/redis/redis_7.2.8.bb (renamed from meta-oe/recipes-extended/redis/redis_7.2.7.bb)2
-rw-r--r--meta-oe/recipes-support/pcp/pcp/fix_parallel_make.patch116
-rw-r--r--meta-oe/recipes-support/xmlstarlet/files/0001-Define-ATTRIBUTE_UNUSED-if-its-not-defined.patch37
-rw-r--r--meta-oe/recipes-support/xmlstarlet/xmlstarlet_1.6.1.bb3
23 files changed, 994 insertions, 81 deletions
diff --git a/meta-multimedia/recipes-multimedia/aom/aom_3.7.0.bb b/meta-multimedia/recipes-multimedia/aom/aom_3.12.1.bb
index 776dfa8783..681ebb4d3d 100644
--- a/meta-multimedia/recipes-multimedia/aom/aom_3.7.0.bb
+++ b/meta-multimedia/recipes-multimedia/aom/aom_3.12.1.bb
@@ -5,8 +5,8 @@ LICENSE = "BSD-2-Clause & AOM-Patent-License-1.0"
5LIC_FILES_CHKSUM = "file://LICENSE;md5=6ea91368c1bbdf877159435572b931f5 \ 5LIC_FILES_CHKSUM = "file://LICENSE;md5=6ea91368c1bbdf877159435572b931f5 \
6 file://PATENTS;md5=a111d47497d3bb49e04eef71377eb8ba \ 6 file://PATENTS;md5=a111d47497d3bb49e04eef71377eb8ba \
7 " 7 "
8SRCREV = "6054fae218eda6e53e1e3b4f7ef0fff4877c7bf1" 8SRCREV = "10aece4157eb79315da205f39e19bf6ab3ee30d0"
9SRC_URI = "git://aomedia.googlesource.com/aom;protocol=https;branch=main \ 9SRC_URI = "git://aomedia.googlesource.com/aom;protocol=https;branch=main;tag=v${PV} \
10 file://0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch" 10 file://0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch"
11 11
12S = "${WORKDIR}/git" 12S = "${WORKDIR}/git"
diff --git a/meta-networking/dynamic-layers/meta-python/recipes-printing/system-config-printer/system-config-printer_1.5.18.bb b/meta-networking/dynamic-layers/meta-python/recipes-printing/system-config-printer/system-config-printer_1.5.18.bb
index f9a5e15689..6cd25e346a 100644
--- a/meta-networking/dynamic-layers/meta-python/recipes-printing/system-config-printer/system-config-printer_1.5.18.bb
+++ b/meta-networking/dynamic-layers/meta-python/recipes-printing/system-config-printer/system-config-printer_1.5.18.bb
@@ -26,12 +26,7 @@ do_install:append() {
26 cp -rf ${B}/cupshelpers.egg-info ${D}${PYTHON_SITEPACKAGES_DIR} 26 cp -rf ${B}/cupshelpers.egg-info ${D}${PYTHON_SITEPACKAGES_DIR}
27 cp -rf ${B}/cupshelpers ${D}${PYTHON_SITEPACKAGES_DIR} 27 cp -rf ${B}/cupshelpers ${D}${PYTHON_SITEPACKAGES_DIR}
28 rm -rf ${D}${PYTHON_SITEPACKAGES_DIR}/*.egg 28 rm -rf ${D}${PYTHON_SITEPACKAGES_DIR}/*.egg
29 for f in __init__.cpython-311.pyc cupshelpers.cpython-311.pyc \ 29 rm -rf ${D}${PYTHON_SITEPACKAGES_DIR}/cupshelpers/__pycache__
30 config.cpython-311.pyc ppds.cpython-311.pyc \
31 installdriver.cpython-311.pyc openprinting.cpython-311.pyc \
32 xmldriverprefs.cpython-311.pyc; do
33 rm -rf ${D}${PYTHON_SITEPACKAGES_DIR}/cupshelpers/__pycache__/$f
34 done
35} 30}
36 31
37FILES:${PN} += "${libdir} ${datadir}" 32FILES:${PN} += "${libdir} ${datadir}"
diff --git a/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.50.0.bb b/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.52.0.bb
index 702b80ac68..dd894c0900 100644
--- a/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.50.0.bb
+++ b/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.52.0.bb
@@ -25,32 +25,34 @@ DEPENDS = " \
25 intltool-native \ 25 intltool-native \
26 libxslt-native \ 26 libxslt-native \
27 libnl \ 27 libnl \
28 libnvme \
28 udev \ 29 udev \
29 util-linux \ 30 util-linux \
31 util-linux-libuuid \
30 libndp \ 32 libndp \
31 curl \ 33 curl \
32 dbus \ 34 dbus \
33" 35"
34DEPENDS:append:class-target = " bash-completion" 36DEPENDS:append:class-target = " bash-completion"
35 37
36inherit gnomebase gettext update-rc.d systemd gobject-introspection gtk-doc update-alternatives upstream-version-is-even 38inherit meson gettext update-rc.d systemd gobject-introspection update-alternatives upstream-version-is-even pkgconfig
37 39
38SRC_URI = " \ 40SRC_URI = " \
39 ${GNOME_MIRROR}/NetworkManager/${@gnome_verdir("${PV}")}/NetworkManager-${PV}.tar.xz \ 41 git://github.com/NetworkManager/NetworkManager.git;protocol=https;branch=main;tag=${PV} \
40 file://${BPN}.initd \ 42 file://${BPN}.initd \
41 file://enable-dhcpcd.conf \ 43 file://enable-dhcpcd.conf \
42 file://enable-iwd.conf \ 44 file://enable-iwd.conf \
43" 45"
44SRC_URI:append:libc-musl = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' file://0001-linker-scripts-Do-not-export-_IO_stdin_used.patch', '', d)}" 46SRC_URI:append:libc-musl = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' file://0001-linker-scripts-Do-not-export-_IO_stdin_used.patch', '', d)}"
45 47
46SRC_URI[sha256sum] = "fc03e7388a656cebc454c5d89481626122b1975d7c26babc64dc7e488faa66e3" 48SRCREV = "995a28fa1ccc54ad22e794294c3c6783cc3f30ed"
47 49
48S = "${WORKDIR}/NetworkManager-${PV}" 50S = "${WORKDIR}/git"
49 51
50# ['auto', 'symlink', 'file', 'netconfig', 'resolvconf'] 52# ['auto', 'symlink', 'file', 'netconfig', 'resolvconf']
51NETWORKMANAGER_DNS_RC_MANAGER_DEFAULT ??= "auto" 53NETWORKMANAGER_DNS_RC_MANAGER_DEFAULT ??= "auto"
52 54
53# ['dhcpcanon', 'dhclient', 'dhcpcd', 'internal', 'nettools'] 55# ['dhclient', 'dhcpcd', 'internal', 'nettools']
54NETWORKMANAGER_DHCP_DEFAULT ??= "internal" 56NETWORKMANAGER_DHCP_DEFAULT ??= "internal"
55 57
56# The default gets detected based on whether /usr/sbin/nft or /usr/sbin/iptables is installed, with nftables preferred. 58# The default gets detected based on whether /usr/sbin/nft or /usr/sbin/iptables is installed, with nftables preferred.
@@ -65,7 +67,6 @@ EXTRA_OEMESON = "\
65 -Dqt=false \ 67 -Dqt=false \
66 -Dconfig_dns_rc_manager_default=${NETWORKMANAGER_DNS_RC_MANAGER_DEFAULT} \ 68 -Dconfig_dns_rc_manager_default=${NETWORKMANAGER_DNS_RC_MANAGER_DEFAULT} \
67 -Dconfig_dhcp_default=${NETWORKMANAGER_DHCP_DEFAULT} \ 69 -Dconfig_dhcp_default=${NETWORKMANAGER_DHCP_DEFAULT} \
68 -Ddhcpcanon=false \
69 -Diptables=${sbindir}/iptables \ 70 -Diptables=${sbindir}/iptables \
70 -Dnft=${sbindir}/nft \ 71 -Dnft=${sbindir}/nft \
71" 72"
diff --git a/meta-networking/recipes-connectivity/wolfssl/files/0001-wolfssl-wolfcrypt-logging.h-and-wolfcrypt-src-loggin.patch b/meta-networking/recipes-connectivity/wolfssl/files/0001-wolfssl-wolfcrypt-logging.h-and-wolfcrypt-src-loggin.patch
new file mode 100644
index 0000000000..f4f149c7e8
--- /dev/null
+++ b/meta-networking/recipes-connectivity/wolfssl/files/0001-wolfssl-wolfcrypt-logging.h-and-wolfcrypt-src-loggin.patch
@@ -0,0 +1,791 @@
1From 04975ac158e6d33875c2855f74792efb2258bb93 Mon Sep 17 00:00:00 2001
2From: Daniel Pouzzner <douzzer@wolfssl.com>
3Date: Tue, 13 May 2025 20:30:48 -0500
4Subject: [PATCH] wolfssl/wolfcrypt/logging.h and wolfcrypt/src/logging.c: add
5 WOLFSSL_DEBUG_PRINTF() macro adapted from wolfssl_log(), refactor
6 wolfssl_log() to use it, and move printf setup includes/prototypes from
7 logging.c to logging.h;
8
9src/ssl_load.c: add source_name arg and WOLFSSL_DEBUG_CERTIFICATE_LOADS clauses
10 to ProcessBuffer() and ProcessChainBuffer(), and pass reasonable values from
11 callers;
12
13remove expired "Baltimore CyberTrust Root" from certs/external/ca_collection.pem
14 and certs/external/baltimore-cybertrust-root.pem.
15
16Upstream-Status: Backport [https://github.com/wolfSSL/wolfssl/commit/55460a52619626f614e86d528b9a60445562eb34]
17Signed-off-by: Khem Raj <raj.khem@gmail.com>
18---
19 certs/external/baltimore-cybertrust-root.pem | 21 ---
20 certs/external/ca_collection.pem | 77 ----------
21 src/ssl_load.c | 111 +++++++++++----
22 wolfcrypt/src/error.c | 4 +-
23 wolfcrypt/src/logging.c | 142 ++-----------------
24 wolfssl/internal.h | 3 +-
25 wolfssl/wolfcrypt/logging.h | 93 +++++++++++-
26 7 files changed, 190 insertions(+), 261 deletions(-)
27 delete mode 100644 certs/external/baltimore-cybertrust-root.pem
28
29diff --git a/certs/external/baltimore-cybertrust-root.pem b/certs/external/baltimore-cybertrust-root.pem
30deleted file mode 100644
31index 519028c63..000000000
32--- a/certs/external/baltimore-cybertrust-root.pem
33+++ /dev/null
34@@ -1,21 +0,0 @@
35------BEGIN CERTIFICATE-----
36-MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJ
37-RTESMBAGA1UEChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0MSIwIAYD
38-VQQDExlCYWx0aW1vcmUgQ3liZXJUcnVzdCBSb290MB4XDTAwMDUxMjE4NDYwMFoX
39-DTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMCSUUxEjAQBgNVBAoTCUJhbHRpbW9y
40-ZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZQmFsdGltb3JlIEN5YmVy
41-VHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKMEuyKr
42-mD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+hXe2wCQVt2yguzmKiYv60iNoS6zjr
43-IZ3AQSsBUnuId9Mcj8e6uYi1agnnc+gRQKfRzMpijS3ljwumUNKoUMMo6vWrJYeK
44-mpYcqWe4PwzV9/lSEy/CG9VwcPCPwBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSu
45-XmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9XbIGevOF6uvUA65ehD5f/xXtabz5OTZy
46-dc93Uk3zyZAsuT3lySNTPx8kmCFcB5kpvcY67Oduhjprl3RjM71oGDHweI12v/ye
47-jl0qhqdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoIVDaGezq1
48-BE3wMBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3
49-DQEBBQUAA4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT92
50-9hkTI7gQCvlYpNRhcL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3Wgx
51-jkzSswF07r51XgdIGn9w/xZchMB5hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/oCr0
52-Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsaY71k5h+3zvDyny67G7fyUIhz
53-ksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9HRCwBXbsdtTLS
54-R9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp
55------END CERTIFICATE-----
56diff --git a/certs/external/ca_collection.pem b/certs/external/ca_collection.pem
57index ddfdf9cee..c76d6c605 100644
58--- a/certs/external/ca_collection.pem
59+++ b/certs/external/ca_collection.pem
60@@ -1,80 +1,3 @@
61-Certificate:
62- Data:
63- Version: 3 (0x2)
64- Serial Number: 33554617 (0x20000b9)
65- Signature Algorithm: sha1WithRSAEncryption
66- Issuer: C = IE, O = Baltimore, OU = CyberTrust, CN = Baltimore CyberTrust Root
67- Validity
68- Not Before: May 12 18:46:00 2000 GMT
69- Not After : May 12 23:59:00 2025 GMT
70- Subject: C = IE, O = Baltimore, OU = CyberTrust, CN = Baltimore CyberTrust Root
71- Subject Public Key Info:
72- Public Key Algorithm: rsaEncryption
73- RSA Public-Key: (2048 bit)
74- Modulus:
75- 00:a3:04:bb:22:ab:98:3d:57:e8:26:72:9a:b5:79:
76- d4:29:e2:e1:e8:95:80:b1:b0:e3:5b:8e:2b:29:9a:
77- 64:df:a1:5d:ed:b0:09:05:6d:db:28:2e:ce:62:a2:
78- 62:fe:b4:88:da:12:eb:38:eb:21:9d:c0:41:2b:01:
79- 52:7b:88:77:d3:1c:8f:c7:ba:b9:88:b5:6a:09:e7:
80- 73:e8:11:40:a7:d1:cc:ca:62:8d:2d:e5:8f:0b:a6:
81- 50:d2:a8:50:c3:28:ea:f5:ab:25:87:8a:9a:96:1c:
82- a9:67:b8:3f:0c:d5:f7:f9:52:13:2f:c2:1b:d5:70:
83- 70:f0:8f:c0:12:ca:06:cb:9a:e1:d9:ca:33:7a:77:
84- d6:f8:ec:b9:f1:68:44:42:48:13:d2:c0:c2:a4:ae:
85- 5e:60:fe:b6:a6:05:fc:b4:dd:07:59:02:d4:59:18:
86- 98:63:f5:a5:63:e0:90:0c:7d:5d:b2:06:7a:f3:85:
87- ea:eb:d4:03:ae:5e:84:3e:5f:ff:15:ed:69:bc:f9:
88- 39:36:72:75:cf:77:52:4d:f3:c9:90:2c:b9:3d:e5:
89- c9:23:53:3f:1f:24:98:21:5c:07:99:29:bd:c6:3a:
90- ec:e7:6e:86:3a:6b:97:74:63:33:bd:68:18:31:f0:
91- 78:8d:76:bf:fc:9e:8e:5d:2a:86:a7:4d:90:dc:27:
92- 1a:39
93- Exponent: 65537 (0x10001)
94- X509v3 extensions:
95- X509v3 Subject Key Identifier:
96- E5:9D:59:30:82:47:58:CC:AC:FA:08:54:36:86:7B:3A:B5:04:4D:F0
97- X509v3 Basic Constraints: critical
98- CA:TRUE, pathlen:3
99- X509v3 Key Usage: critical
100- Certificate Sign, CRL Sign
101- Signature Algorithm: sha1WithRSAEncryption
102- 85:0c:5d:8e:e4:6f:51:68:42:05:a0:dd:bb:4f:27:25:84:03:
103- bd:f7:64:fd:2d:d7:30:e3:a4:10:17:eb:da:29:29:b6:79:3f:
104- 76:f6:19:13:23:b8:10:0a:f9:58:a4:d4:61:70:bd:04:61:6a:
105- 12:8a:17:d5:0a:bd:c5:bc:30:7c:d6:e9:0c:25:8d:86:40:4f:
106- ec:cc:a3:7e:38:c6:37:11:4f:ed:dd:68:31:8e:4c:d2:b3:01:
107- 74:ee:be:75:5e:07:48:1a:7f:70:ff:16:5c:84:c0:79:85:b8:
108- 05:fd:7f:be:65:11:a3:0f:c0:02:b4:f8:52:37:39:04:d5:a9:
109- 31:7a:18:bf:a0:2a:f4:12:99:f7:a3:45:82:e3:3c:5e:f5:9d:
110- 9e:b5:c8:9e:7c:2e:c8:a4:9e:4e:08:14:4b:6d:fd:70:6d:6b:
111- 1a:63:bd:64:e6:1f:b7:ce:f0:f2:9f:2e:bb:1b:b7:f2:50:88:
112- 73:92:c2:e2:e3:16:8d:9a:32:02:ab:8e:18:dd:e9:10:11:ee:
113- 7e:35:ab:90:af:3e:30:94:7a:d0:33:3d:a7:65:0f:f5:fc:8e:
114- 9e:62:cf:47:44:2c:01:5d:bb:1d:b5:32:d2:47:d2:38:2e:d0:
115- fe:81:dc:32:6a:1e:b5:ee:3c:d5:fc:e7:81:1d:19:c3:24:42:
116- ea:63:39:a9
117------BEGIN CERTIFICATE-----
118-MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJ
119-RTESMBAGA1UEChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0MSIwIAYD
120-VQQDExlCYWx0aW1vcmUgQ3liZXJUcnVzdCBSb290MB4XDTAwMDUxMjE4NDYwMFoX
121-DTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMCSUUxEjAQBgNVBAoTCUJhbHRpbW9y
122-ZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZQmFsdGltb3JlIEN5YmVy
123-VHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKMEuyKr
124-mD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+hXe2wCQVt2yguzmKiYv60iNoS6zjr
125-IZ3AQSsBUnuId9Mcj8e6uYi1agnnc+gRQKfRzMpijS3ljwumUNKoUMMo6vWrJYeK
126-mpYcqWe4PwzV9/lSEy/CG9VwcPCPwBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSu
127-XmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9XbIGevOF6uvUA65ehD5f/xXtabz5OTZy
128-dc93Uk3zyZAsuT3lySNTPx8kmCFcB5kpvcY67Oduhjprl3RjM71oGDHweI12v/ye
129-jl0qhqdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoIVDaGezq1
130-BE3wMBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3
131-DQEBBQUAA4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT92
132-9hkTI7gQCvlYpNRhcL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3Wgx
133-jkzSswF07r51XgdIGn9w/xZchMB5hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/oCr0
134-Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsaY71k5h+3zvDyny67G7fyUIhz
135-ksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9HRCwBXbsdtTLS
136-R9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp
137------END CERTIFICATE-----
138 Certificate:
139 Data:
140 Version: 3 (0x2)
141diff --git a/src/ssl_load.c b/src/ssl_load.c
142index 24c8af1be..d803b4093 100644
143--- a/src/ssl_load.c
144+++ b/src/ssl_load.c
145@@ -2352,11 +2352,13 @@ static int ProcessBufferResetSuites(WOLFSSL_CTX* ctx, WOLFSSL* ssl, int type)
146 * @param [out] used Number of bytes consumed.
147 * @param [in[ userChain Whether this certificate is for user's chain.
148 * @param [in] verify How to verify certificate.
149+ * @param [in] source_name Associated filename or other source ID.
150 * @return 1 on success.
151 * @return Less than 1 on failure.
152 */
153 int ProcessBuffer(WOLFSSL_CTX* ctx, const unsigned char* buff, long sz,
154- int format, int type, WOLFSSL* ssl, long* used, int userChain, int verify)
155+ int format, int type, WOLFSSL* ssl, long* used, int userChain, int verify,
156+ const char *source_name)
157 {
158 DerBuffer* der = NULL;
159 int ret = 0;
160@@ -2367,6 +2369,11 @@ int ProcessBuffer(WOLFSSL_CTX* ctx, const unsigned char* buff, long sz,
161 EncryptedInfo info[1];
162 #endif
163 int algId = 0;
164+#ifdef WOLFSSL_DEBUG_CERTIFICATE_LOADS
165+ long usedAtStart = used ? *used : 0L;
166+#else
167+ (void)source_name;
168+#endif
169
170 WOLFSSL_ENTER("ProcessBuffer");
171
172@@ -2444,6 +2451,22 @@ int ProcessBuffer(WOLFSSL_CTX* ctx, const unsigned char* buff, long sz,
173 CLEAR_ASN_NO_PEM_HEADER_ERROR(pemErr);
174 ret = 0;
175 }
176+#ifdef WOLFSSL_DEBUG_CERTIFICATE_LOADS
177+ if (ret < 0) {
178+#ifdef NO_ERROR_STRINGS
179+ WOLFSSL_DEBUG_PRINTF(
180+ "ERROR: ProcessUserChain: certificate from %s at offset %ld"
181+ " rejected with code %d\n",
182+ source_name, usedAtStart, ret);
183+#else
184+ WOLFSSL_DEBUG_PRINTF(
185+ "ERROR: ProcessUserChain: certificate from %s at offset %ld"
186+ " rejected with code %d: %s\n",
187+ source_name, usedAtStart, ret,
188+ wolfSSL_ERR_reason_error_string(ret));
189+#endif
190+ }
191+#endif /* WOLFSSL_DEBUG_CERTIFICATE_LOADS */
192 }
193
194 #ifdef WOLFSSL_SMALL_STACK
195@@ -2455,6 +2478,22 @@ int ProcessBuffer(WOLFSSL_CTX* ctx, const unsigned char* buff, long sz,
196 /* Process the different types of certificates. */
197 ret = ProcessBufferCertTypes(ctx, ssl, buff, sz, der, format, type,
198 verify);
199+#ifdef WOLFSSL_DEBUG_CERTIFICATE_LOADS
200+ if (ret < 0) {
201+#ifdef NO_ERROR_STRINGS
202+ WOLFSSL_DEBUG_PRINTF(
203+ "ERROR: ProcessBufferCertTypes: certificate from %s at"
204+ " offset %ld rejected with code %d\n",
205+ source_name, usedAtStart, ret);
206+#else
207+ WOLFSSL_DEBUG_PRINTF(
208+ "ERROR: ProcessBufferCertTypes: certificate from %s at"
209+ " offset %ld rejected with code %d: %s\n",
210+ source_name, usedAtStart, ret,
211+ wolfSSL_ERR_reason_error_string(ret));
212+#endif
213+ }
214+#endif /* WOLFSSL_DEBUG_CERTIFICATE_LOADS */
215 }
216 else {
217 FreeDer(&der);
218@@ -2515,12 +2554,14 @@ static int ProcessChainBufferCRL(WOLFSSL_CTX* ctx, const unsigned char* buff,
219 * @param [in] sz Size of data in buffer.
220 * @param [in] type Type of data.
221 * @param [in] verify How to verify certificate.
222+ * @param [in] source_name Associated filename or other source ID.
223 * @return 1 on success.
224 * @return 0 on failure.
225 * @return MEMORY_E when dynamic memory allocation fails.
226 */
227 static int ProcessChainBuffer(WOLFSSL_CTX* ctx, WOLFSSL* ssl,
228- const unsigned char* buff, long sz, int type, int verify)
229+ const unsigned char* buff, long sz, int type, int verify,
230+ const char *source_name)
231 {
232 int ret = 0;
233 long used = 0;
234@@ -2529,11 +2570,11 @@ static int ProcessChainBuffer(WOLFSSL_CTX* ctx, WOLFSSL* ssl,
235 WOLFSSL_MSG("Processing CA PEM file");
236 /* Keep processing file while no errors and data to parse. */
237 while ((ret >= 0) && (used < sz)) {
238- long consumed = 0;
239+ long consumed = used;
240
241 /* Process the buffer. */
242 ret = ProcessBuffer(ctx, buff + used, sz - used, WOLFSSL_FILETYPE_PEM,
243- type, ssl, &consumed, 0, verify);
244+ type, ssl, &consumed, 0, verify, source_name);
245 /* Memory allocation failure is fatal. */
246 if (ret == WC_NO_ERR_TRACE(MEMORY_E)) {
247 gotOne = 0;
248@@ -2665,6 +2706,12 @@ int ProcessFile(WOLFSSL_CTX* ctx, const char* fname, int format, int type,
249 {
250 /* Not a header that we support. */
251 WOLFSSL_MSG("Failed to detect certificate type");
252+#ifdef WOLFSSL_DEBUG_CERTIFICATE_LOADS
253+ WOLFSSL_DEBUG_PRINTF(
254+ "ERROR: ProcessFile: Failed to detect certificate type"
255+ " of \"%s\"\n",
256+ fname);
257+#endif
258 ret = WOLFSSL_BAD_CERTTYPE;
259 }
260 }
261@@ -2673,7 +2720,7 @@ int ProcessFile(WOLFSSL_CTX* ctx, const char* fname, int format, int type,
262 if (((type == CA_TYPE) || (type == TRUSTED_PEER_TYPE)) &&
263 (format == WOLFSSL_FILETYPE_PEM)) {
264 ret = ProcessChainBuffer(ctx, ssl, content.buffer, sz, type,
265- verify);
266+ verify, fname);
267 }
268 #ifdef HAVE_CRL
269 else if (type == CRL_TYPE) {
270@@ -2690,18 +2737,18 @@ int ProcessFile(WOLFSSL_CTX* ctx, const char* fname, int format, int type,
271 long consumed = 0;
272
273 ret = ProcessBuffer(ctx, content.buffer, sz, format, type, ssl,
274- &consumed, userChain, verify);
275+ &consumed, userChain, verify, fname);
276 if ((ret == 1) && (consumed < sz)) {
277 ret = ProcessBuffer(ctx, content.buffer + consumed,
278 sz - consumed, format, ALT_PRIVATEKEY_TYPE, ssl, NULL, 0,
279- verify);
280+ verify, fname);
281 }
282 }
283 #endif
284 else {
285 /* Load all other certificate types. */
286 ret = ProcessBuffer(ctx, content.buffer, sz, format, type, ssl,
287- NULL, userChain, verify);
288+ NULL, userChain, verify, fname);
289 }
290 }
291
292@@ -3030,7 +3077,8 @@ static int LoadSystemCaCertsWindows(WOLFSSL_CTX* ctx, byte* loaded)
293 if (ProcessBuffer(ctx, certCtx->pbCertEncoded,
294 certCtx->cbCertEncoded, WOLFSSL_FILETYPE_ASN1,
295 CA_TYPE, NULL, NULL, 0,
296- GET_VERIFY_SETTING_CTX(ctx)) == 1) {
297+ GET_VERIFY_SETTING_CTX(ctx),
298+ storeNames[i]) == 1) {
299 /*
300 * Set "loaded" as long as we've loaded one CA
301 * cert.
302@@ -3105,7 +3153,8 @@ static int LoadSystemCaCertsMac(WOLFSSL_CTX* ctx, byte* loaded)
303 if (ProcessBuffer(ctx, CFDataGetBytePtr(der),
304 CFDataGetLength(der), WOLFSSL_FILETYPE_ASN1,
305 CA_TYPE, NULL, NULL, 0,
306- GET_VERIFY_SETTING_CTX(ctx)) == 1) {
307+ GET_VERIFY_SETTING_CTX(ctx),
308+ "MacOSX trustDomains") == 1) {
309 /*
310 * Set "loaded" as long as we've loaded one CA
311 * cert.
312@@ -3644,7 +3693,8 @@ int wolfSSL_use_certificate(WOLFSSL* ssl, WOLFSSL_X509* x509)
313 /* Get DER encoded certificate data from X509 object. */
314 ret = ProcessBuffer(NULL, x509->derCert->buffer, x509->derCert->length,
315 WOLFSSL_FILETYPE_ASN1, CERT_TYPE, ssl, &idx, 0,
316- GET_VERIFY_SETTING_SSL(ssl));
317+ GET_VERIFY_SETTING_SSL(ssl),
318+ "x509 buffer");
319 }
320
321 /* Return 1 on success or 0 on failure. */
322@@ -3676,7 +3726,8 @@ int wolfSSL_use_certificate_ASN1(WOLFSSL* ssl, const unsigned char* der,
323 long idx = 0;
324
325 ret = ProcessBuffer(NULL, der, derSz, WOLFSSL_FILETYPE_ASN1, CERT_TYPE,
326- ssl, &idx, 0, GET_VERIFY_SETTING_SSL(ssl));
327+ ssl, &idx, 0, GET_VERIFY_SETTING_SSL(ssl),
328+ "asn1 buffer");
329 }
330
331 /* Return 1 on success or 0 on failure. */
332@@ -3884,12 +3935,13 @@ int wolfSSL_CTX_load_verify_buffer_ex(WOLFSSL_CTX* ctx, const unsigned char* in,
333
334 /* When PEM, treat as certificate chain of CA certificates. */
335 if (format == WOLFSSL_FILETYPE_PEM) {
336- ret = ProcessChainBuffer(ctx, NULL, in, sz, CA_TYPE, verify);
337+ ret = ProcessChainBuffer(ctx, NULL, in, sz, CA_TYPE, verify,
338+ "PEM buffer");
339 }
340 /* When DER, load the CA certificate. */
341 else {
342 ret = ProcessBuffer(ctx, in, sz, format, CA_TYPE, NULL, NULL,
343- userChain, verify);
344+ userChain, verify, "buffer");
345 }
346 #if defined(WOLFSSL_TRUST_PEER_CERT) && defined(OPENSSL_COMPATIBLE_DEFAULTS)
347 if (ret == 1) {
348@@ -3973,12 +4025,12 @@ int wolfSSL_CTX_trust_peer_buffer(WOLFSSL_CTX* ctx, const unsigned char* in,
349 /* When PEM, treat as certificate chain of trusted peer certificates. */
350 if (format == WOLFSSL_FILETYPE_PEM) {
351 ret = ProcessChainBuffer(ctx, NULL, in, sz, TRUSTED_PEER_TYPE,
352- verify);
353+ verify, "peer");
354 }
355 /* When DER, load the trusted peer certificate. */
356 else {
357 ret = ProcessBuffer(ctx, in, sz, format, TRUSTED_PEER_TYPE, NULL,
358- NULL, 0, verify);
359+ NULL, 0, verify, "peer");
360 }
361 }
362
363@@ -4004,7 +4056,7 @@ int wolfSSL_CTX_use_certificate_buffer(WOLFSSL_CTX* ctx,
364
365 WOLFSSL_ENTER("wolfSSL_CTX_use_certificate_buffer");
366 ret = ProcessBuffer(ctx, in, sz, format, CERT_TYPE, NULL, NULL, 0,
367- GET_VERIFY_SETTING_CTX(ctx));
368+ GET_VERIFY_SETTING_CTX(ctx), "buffer");
369 WOLFSSL_LEAVE("wolfSSL_CTX_use_certificate_buffer", ret);
370
371 return ret;
372@@ -4030,7 +4082,7 @@ int wolfSSL_CTX_use_PrivateKey_buffer(WOLFSSL_CTX* ctx, const unsigned char* in,
373 WOLFSSL_ENTER("wolfSSL_CTX_use_PrivateKey_buffer");
374
375 ret = ProcessBuffer(ctx, in, sz, format, PRIVATEKEY_TYPE, NULL, &consumed,
376- 0, GET_VERIFY_SETTING_CTX(ctx));
377+ 0, GET_VERIFY_SETTING_CTX(ctx), "key buffer");
378 #ifdef WOLFSSL_DUAL_ALG_CERTS
379 if ((ret == 1) && (consumed < sz)) {
380 /* When support for dual algorithm certificates is enabled, the
381@@ -4038,7 +4090,8 @@ int wolfSSL_CTX_use_PrivateKey_buffer(WOLFSSL_CTX* ctx, const unsigned char* in,
382 * private key. Hence, we have to parse both of them.
383 */
384 ret = ProcessBuffer(ctx, in + consumed, sz - consumed, format,
385- ALT_PRIVATEKEY_TYPE, NULL, NULL, 0, GET_VERIFY_SETTING_CTX(ctx));
386+ ALT_PRIVATEKEY_TYPE, NULL, NULL, 0, GET_VERIFY_SETTING_CTX(ctx),
387+ "key buffer");
388 }
389 #endif
390
391@@ -4056,7 +4109,7 @@ int wolfSSL_CTX_use_AltPrivateKey_buffer(WOLFSSL_CTX* ctx,
392
393 WOLFSSL_ENTER("wolfSSL_CTX_use_AltPrivateKey_buffer");
394 ret = ProcessBuffer(ctx, in, sz, format, ALT_PRIVATEKEY_TYPE, NULL,
395- NULL, 0, GET_VERIFY_SETTING_CTX(ctx));
396+ NULL, 0, GET_VERIFY_SETTING_CTX(ctx), "alt key buffer");
397 WOLFSSL_LEAVE("wolfSSL_CTX_use_AltPrivateKey_buffer", ret);
398
399 return ret;
400@@ -4271,7 +4324,8 @@ static int wolfSSL_CTX_use_certificate_ex(WOLFSSL_CTX* ctx,
401 }
402
403 ret = ProcessBuffer(ctx, certData, certDataLen, certFormat,
404- CERT_TYPE, NULL, NULL, 0, GET_VERIFY_SETTING_CTX(ctx));
405+ CERT_TYPE, NULL, NULL, 0, GET_VERIFY_SETTING_CTX(ctx),
406+ label ? label : "cert buffer");
407
408 exit:
409 XFREE(certData, ctx->heap, DYNAMIC_TYPE_CERT);
410@@ -4333,7 +4387,7 @@ int wolfSSL_CTX_use_certificate_chain_buffer_format(WOLFSSL_CTX* ctx,
411 {
412 WOLFSSL_ENTER("wolfSSL_CTX_use_certificate_chain_buffer_format");
413 return ProcessBuffer(ctx, in, sz, format, CERT_TYPE, NULL, NULL, 1,
414- GET_VERIFY_SETTING_CTX(ctx));
415+ GET_VERIFY_SETTING_CTX(ctx), "cert chain buffer");
416 }
417
418 /* Load a PEM encoded certificate chain in a buffer into SSL context.
419@@ -4376,7 +4430,7 @@ int wolfSSL_use_certificate_buffer(WOLFSSL* ssl, const unsigned char* in,
420 }
421 else {
422 ret = ProcessBuffer(ssl->ctx, in, sz, format, CERT_TYPE, ssl, NULL, 0,
423- GET_VERIFY_SETTING_SSL(ssl));
424+ GET_VERIFY_SETTING_SSL(ssl), "cert buffer");
425 }
426
427 return ret;
428@@ -4407,7 +4461,7 @@ int wolfSSL_use_PrivateKey_buffer(WOLFSSL* ssl, const unsigned char* in,
429 }
430 else {
431 ret = ProcessBuffer(ssl->ctx, in, sz, format, PRIVATEKEY_TYPE, ssl,
432- &consumed, 0, GET_VERIFY_SETTING_SSL(ssl));
433+ &consumed, 0, GET_VERIFY_SETTING_SSL(ssl), "key buffer");
434 #ifdef WOLFSSL_DUAL_ALG_CERTS
435 if ((ret == 1) && (consumed < sz)) {
436 /* When support for dual algorithm certificates is enabled, the
437@@ -4415,7 +4469,8 @@ int wolfSSL_use_PrivateKey_buffer(WOLFSSL* ssl, const unsigned char* in,
438 * private key. Hence, we have to parse both of them.
439 */
440 ret = ProcessBuffer(ssl->ctx, in + consumed, sz - consumed, format,
441- ALT_PRIVATEKEY_TYPE, ssl, NULL, 0, GET_VERIFY_SETTING_SSL(ssl));
442+ ALT_PRIVATEKEY_TYPE, ssl, NULL, 0, GET_VERIFY_SETTING_SSL(ssl),
443+ "key buffer");
444 }
445 #endif
446 }
447@@ -4431,7 +4486,7 @@ int wolfSSL_use_AltPrivateKey_buffer(WOLFSSL* ssl, const unsigned char* in,
448
449 WOLFSSL_ENTER("wolfSSL_use_AltPrivateKey_buffer");
450 ret = ProcessBuffer(ssl->ctx, in, sz, format, ALT_PRIVATEKEY_TYPE, ssl,
451- NULL, 0, GET_VERIFY_SETTING_SSL(ssl));
452+ NULL, 0, GET_VERIFY_SETTING_SSL(ssl), "alt key buffer");
453 WOLFSSL_LEAVE("wolfSSL_use_AltPrivateKey_buffer", ret);
454
455 return ret;
456@@ -4669,7 +4724,7 @@ int wolfSSL_use_certificate_chain_buffer_format(WOLFSSL* ssl,
457 }
458 else {
459 ret = ProcessBuffer(ssl->ctx, in, sz, format, CERT_TYPE, ssl, NULL, 1,
460- GET_VERIFY_SETTING_SSL(ssl));
461+ GET_VERIFY_SETTING_SSL(ssl), "cert chain buffer");
462 }
463
464 return ret;
465@@ -4826,7 +4881,7 @@ long wolfSSL_CTX_add_extra_chain_cert(WOLFSSL_CTX* ctx, WOLFSSL_X509* x509)
466
467 /* Process buffer makes first certificate the leaf. */
468 ret = ProcessBuffer(ctx, der, derSz, WOLFSSL_FILETYPE_ASN1, CERT_TYPE,
469- NULL, NULL, 1, GET_VERIFY_SETTING_CTX(ctx));
470+ NULL, NULL, 1, GET_VERIFY_SETTING_CTX(ctx), "extra chain buffer");
471 if (ret != 1) {
472 ret = 0;
473 }
474diff --git a/wolfcrypt/src/error.c b/wolfcrypt/src/error.c
475index af5ba36b4..9ec9484d4 100644
476--- a/wolfcrypt/src/error.c
477+++ b/wolfcrypt/src/error.c
478@@ -182,10 +182,10 @@ const char* wc_GetErrorString(int error)
479 return "ASN date error, bad size";
480
481 case ASN_BEFORE_DATE_E :
482- return "ASN date error, current date before";
483+ return "ASN date error, current date is before start of validity";
484
485 case ASN_AFTER_DATE_E :
486- return "ASN date error, current date after";
487+ return "ASN date error, current date is after expiration";
488
489 case ASN_SIG_OID_E :
490 return "ASN signature error, mismatched oid";
491diff --git a/wolfcrypt/src/logging.c b/wolfcrypt/src/logging.c
492index 29b9221df..b80fc3a56 100644
493--- a/wolfcrypt/src/logging.c
494+++ b/wolfcrypt/src/logging.c
495@@ -230,42 +230,6 @@ void WOLFSSL_TIME(int count)
496
497 #ifdef DEBUG_WOLFSSL
498
499-#if defined(ARDUINO)
500- /* see Arduino wolfssl.h for wolfSSL_Arduino_Serial_Print */
501-#elif defined(FREESCALE_MQX) || defined(FREESCALE_KSDK_MQX)
502- /* see wc_port.h for fio.h and nio.h includes */
503-#elif defined(WOLFSSL_SGX)
504- /* Declare sprintf for ocall */
505- int sprintf(char* buf, const char *fmt, ...);
506-#elif defined(WOLFSSL_DEOS)
507-#elif defined(MICRIUM)
508- #if (BSP_SER_COMM_EN == DEF_ENABLED)
509- #include <bsp_ser.h>
510- #endif
511-#elif defined(WOLFSSL_USER_LOG)
512- /* user includes their own headers */
513-#elif defined(WOLFSSL_ESPIDF)
514- #include "esp_types.h"
515- #include "esp_log.h"
516-#elif defined(WOLFSSL_TELIT_M2MB)
517- #include <stdio.h>
518- #include "m2m_log.h"
519-#elif defined(WOLFSSL_ANDROID_DEBUG)
520- #include <android/log.h>
521-#elif defined(WOLFSSL_XILINX)
522- #include "xil_printf.h"
523-#elif defined(WOLFSSL_LINUXKM)
524- /* the requisite linux/kernel.h is included in wc_port.h, with incompatible warnings masked out. */
525-#elif defined(FUSION_RTOS)
526- #include <fclstdio.h>
527- #define fprintf FCL_FPRINTF
528-#else
529- #include <stdio.h> /* for default printf stuff */
530-#endif
531-
532-#if defined(THREADX) && !defined(THREADX_NO_DC_PRINTF)
533- int dc_log_printf(char*, ...);
534-#endif
535
536 #ifdef HAVE_STACK_SIZE_VERBOSE
537 #include <wolfssl/wolfcrypt/mem_track.h>
538@@ -281,106 +245,30 @@ static void wolfssl_log(const int logLevel, const char* const file_name,
539 else {
540 #if defined(WOLFSSL_USER_LOG)
541 WOLFSSL_USER_LOG(logMessage);
542-#elif defined(ARDUINO)
543- wolfSSL_Arduino_Serial_Print(logMessage);
544-#elif defined(WOLFSSL_LOG_PRINTF)
545- if (file_name != NULL)
546- printf("[%s L %d] %s\n", file_name, line_number, logMessage);
547- else
548- printf("%s\n", logMessage);
549-#elif defined(THREADX) && !defined(THREADX_NO_DC_PRINTF)
550- if (file_name != NULL)
551- dc_log_printf("[%s L %d] %s\n", file_name, line_number, logMessage);
552- else
553- dc_log_printf("%s\n", logMessage);
554-#elif defined(WOLFSSL_DEOS)
555- if (file_name != NULL)
556- printf("[%s L %d] %s\r\n", file_name, line_number, logMessage);
557- else
558- printf("%s\r\n", logMessage);
559-#elif defined(MICRIUM)
560- if (file_name != NULL)
561- BSP_Ser_Printf("[%s L %d] %s\r\n",
562- file_name, line_number, logMessage);
563- else
564- BSP_Ser_Printf("%s\r\n", logMessage);
565-#elif defined(WOLFSSL_MDK_ARM)
566- fflush(stdout) ;
567- if (file_name != NULL)
568- printf("[%s L %d] %s\n", file_name, line_number, logMessage);
569- else
570- printf("%s\n", logMessage);
571- fflush(stdout) ;
572-#elif defined(WOLFSSL_UTASKER)
573- fnDebugMsg((char*)logMessage);
574- fnDebugMsg("\r\n");
575-#elif defined(MQX_USE_IO_OLD)
576- if (file_name != NULL)
577- fprintf(_mqxio_stderr, "[%s L %d] %s\n",
578- file_name, line_number, logMessage);
579- else
580- fprintf(_mqxio_stderr, "%s\n", logMessage);
581-#elif defined(WOLFSSL_APACHE_MYNEWT)
582- if (file_name != NULL)
583- LOG_DEBUG(&mynewt_log, LOG_MODULE_DEFAULT, "[%s L %d] %s\n",
584- file_name, line_number, logMessage);
585- else
586- LOG_DEBUG(&mynewt_log, LOG_MODULE_DEFAULT, "%s\n", logMessage);
587-#elif defined(WOLFSSL_ESPIDF)
588- if (file_name != NULL)
589- ESP_LOGI("wolfssl", "[%s L %d] %s",
590- file_name, line_number, logMessage);
591- else
592- ESP_LOGI("wolfssl", "%s", logMessage);
593-#elif defined(WOLFSSL_ZEPHYR)
594- if (file_name != NULL)
595- printk("[%s L %d] %s\n", file_name, line_number, logMessage);
596- else
597- printk("%s\n", logMessage);
598-#elif defined(WOLFSSL_TELIT_M2MB)
599- if (file_name != NULL)
600- M2M_LOG_INFO("[%s L %d] %s\n", file_name, line_number, logMessage);
601- else
602- M2M_LOG_INFO("%s\n", logMessage);
603-#elif defined(WOLFSSL_ANDROID_DEBUG)
604- if (file_name != NULL)
605- __android_log_print(ANDROID_LOG_VERBOSE, "[wolfSSL]", "[%s L %d] %s",
606- file_name, line_number, logMessage);
607- else
608- __android_log_print(ANDROID_LOG_VERBOSE, "[wolfSSL]", "%s",
609- logMessage);
610-#elif defined(WOLFSSL_XILINX)
611- if (file_name != NULL)
612- xil_printf("[%s L %d] %s\r\n", file_name, line_number, logMessage);
613- else
614- xil_printf("%s\r\n", logMessage);
615-#elif defined(WOLFSSL_LINUXKM)
616- if (file_name != NULL)
617- printk("[%s L %d] %s\n", file_name, line_number, logMessage);
618- else
619- printk("%s\n", logMessage);
620-#elif defined(WOLFSSL_RENESAS_RA6M4)
621- if (file_name != NULL)
622- myprintf("[%s L %d] %s\n", file_name, line_number, logMessage);
623- else
624- myprintf("%s\n", logMessage);
625-#elif defined(STACK_SIZE_CHECKPOINT_MSG) && \
626- defined(HAVE_STACK_SIZE_VERBOSE) && defined(HAVE_STACK_SIZE_VERBOSE_LOG)
627- STACK_SIZE_CHECKPOINT_MSG(logMessage);
628-#else
629+#elif defined(WOLFSSL_DEBUG_PRINTF)
630 if (log_prefix != NULL) {
631 if (file_name != NULL)
632- fprintf(stderr, "[%s]: [%s L %d] %s\n",
633+ WOLFSSL_DEBUG_PRINTF("[%s]: [%s L %d] %s\n",
634 log_prefix, file_name, line_number, logMessage);
635 else
636- fprintf(stderr, "[%s]: %s\n", log_prefix, logMessage);
637+ WOLFSSL_DEBUG_PRINTF("[%s]: %s\n", log_prefix, logMessage);
638 } else {
639 if (file_name != NULL)
640- fprintf(stderr, "[%s L %d] %s\n",
641+ WOLFSSL_DEBUG_PRINTF("[%s L %d] %s\n",
642 file_name, line_number, logMessage);
643 else
644- fprintf(stderr, "%s\n", logMessage);
645+ WOLFSSL_DEBUG_PRINTF("%s\n", logMessage);
646 }
647+#elif defined(ARDUINO)
648+ wolfSSL_Arduino_Serial_Print(logMessage);
649+#elif defined(WOLFSSL_UTASKER)
650+ fnDebugMsg((char*)logMessage);
651+ fnDebugMsg("\r\n");
652+#elif defined(STACK_SIZE_CHECKPOINT_MSG) && \
653+ defined(HAVE_STACK_SIZE_VERBOSE) && defined(HAVE_STACK_SIZE_VERBOSE_LOG)
654+ STACK_SIZE_CHECKPOINT_MSG(logMessage);
655+#else
656+ #error No log method defined.
657 #endif
658 }
659 }
660diff --git a/wolfssl/internal.h b/wolfssl/internal.h
661index 9cdbdb697..dd191fb1a 100644
662--- a/wolfssl/internal.h
663+++ b/wolfssl/internal.h
664@@ -6389,7 +6389,8 @@ WOLFSSL_TEST_VIS void wolfSSL_ResourceFree(WOLFSSL* ssl); /* Micrium uses */
665
666 WOLFSSL_LOCAL int ProcessBuffer(WOLFSSL_CTX* ctx, const unsigned char* buff,
667 long sz, int format, int type, WOLFSSL* ssl,
668- long* used, int userChain, int verify);
669+ long* used, int userChain, int verify,
670+ const char *source_name);
671 WOLFSSL_LOCAL int ProcessFile(WOLFSSL_CTX* ctx, const char* fname, int format,
672 int type, WOLFSSL* ssl, int userChain,
673 WOLFSSL_CRL* crl, int verify);
674diff --git a/wolfssl/wolfcrypt/logging.h b/wolfssl/wolfcrypt/logging.h
675index 49de70147..8b3cf0fd8 100644
676--- a/wolfssl/wolfcrypt/logging.h
677+++ b/wolfssl/wolfcrypt/logging.h
678@@ -89,11 +89,6 @@ enum wc_FuncNum {
679 };
680 #endif
681
682-#if defined(ARDUINO)
683-/* implemented in Arduino wolfssl.h */
684-extern WOLFSSL_API int wolfSSL_Arduino_Serial_Print(const char* const s);
685-#endif /* ARDUINO */
686-
687 typedef void (*wolfSSL_Logging_cb)(const int logLevel,
688 const char *const logMessage);
689
690@@ -157,6 +152,10 @@ WOLFSSL_API void wolfSSL_SetLoggingPrefix(const char* prefix);
691 #define WOLFSSL_TIME(n) WC_DO_NOTHING
692 #endif
693
694+#if defined(DEBUG_WOLFSSL) && !defined(WOLFSSL_DEBUG_CERTIFICATE_LOADS)
695+ #define WOLFSSL_DEBUG_CERTIFICATE_LOADS
696+#endif
697+
698 #if defined(DEBUG_WOLFSSL) && !defined(WOLFSSL_DEBUG_ERRORS_ONLY)
699 #if defined(_WIN32)
700 #if defined(INTIME_RTOS)
701@@ -268,6 +267,90 @@ WOLFSSL_API void wolfSSL_SetLoggingPrefix(const char* prefix);
702 extern WOLFSSL_API THREAD_LS_T void *StackSizeCheck_stackOffsetPointer;
703 #endif
704
705+/* Port-specific includes and printf methods: */
706+
707+#if defined(ARDUINO)
708+ /* implemented in Arduino wolfssl.h */
709+ extern WOLFSSL_API int wolfSSL_Arduino_Serial_Print(const char* const s);
710+#elif defined(FREESCALE_MQX) || defined(FREESCALE_KSDK_MQX)
711+ /* see wc_port.h for fio.h and nio.h includes */
712+#elif defined(WOLFSSL_SGX)
713+ /* Declare sprintf for ocall */
714+ int sprintf(char* buf, const char *fmt, ...);
715+#elif defined(WOLFSSL_DEOS)
716+#elif defined(MICRIUM)
717+ #if (BSP_SER_COMM_EN == DEF_ENABLED)
718+ #include <bsp_ser.h>
719+ #endif
720+#elif defined(WOLFSSL_USER_LOG)
721+ /* user includes their own headers */
722+#elif defined(WOLFSSL_ESPIDF)
723+ #include "esp_types.h"
724+ #include "esp_log.h"
725+#elif defined(WOLFSSL_TELIT_M2MB)
726+ #include <stdio.h>
727+ #include "m2m_log.h"
728+#elif defined(WOLFSSL_ANDROID_DEBUG)
729+ #include <android/log.h>
730+#elif defined(WOLFSSL_XILINX)
731+ #include "xil_printf.h"
732+#elif defined(WOLFSSL_LINUXKM)
733+ /* the requisite linux/kernel.h is included in linuxkm_wc_port.h, with
734+ * incompatible warnings masked out.
735+ */
736+#elif defined(FUSION_RTOS)
737+ #include <fclstdio.h>
738+ #define fprintf FCL_FPRINTF
739+#else
740+ #include <stdio.h> /* for default printf stuff */
741+#endif
742+
743+#if defined(THREADX) && !defined(THREADX_NO_DC_PRINTF)
744+ int dc_log_printf(char*, ...);
745+#endif
746+
747+#ifdef WOLFSSL_DEBUG_PRINTF
748+ /* user-supplied definition */
749+#elif defined(ARDUINO)
750+ /* ARDUINO only has print and sprintf, no printf. */
751+#elif defined(WOLFSSL_LOG_PRINTF) || defined(WOLFSSL_DEOS)
752+ #define WOLFSSL_DEBUG_PRINTF(...) printf(__VA_ARGS__)
753+#elif defined(THREADX) && !defined(THREADX_NO_DC_PRINTF)
754+ #define WOLFSSL_DEBUG_PRINTF(...) dc_log_printf(__VA_ARGS__)
755+#elif defined(MICRIUM)
756+ #define WOLFSSL_DEBUG_PRINTF(...) BSP_Ser_Printf(__VA_ARGS__)
757+#elif defined(WOLFSSL_MDK_ARM)
758+ #define WOLFSSL_DEBUG_PRINTF(...) do { \
759+ fflush(stdout); \
760+ printf(__VA_ARGS__); \
761+ fflush(stdout); \
762+ } while (0)
763+#elif defined(WOLFSSL_UTASKER)
764+ /* WOLFSSL_UTASKER only has fnDebugMsg and related primitives, no printf. */
765+#elif defined(MQX_USE_IO_OLD)
766+ #define WOLFSSL_DEBUG_PRINTF(...) fprintf(_mqxio_stderr, __VAR_ARGS)
767+#elif defined(WOLFSSL_APACHE_MYNEWT)
768+ #define WOLFSSL_DEBUG_PRINTF(...) LOG_DEBUG(&mynewt_log, \
769+ LOG_MODULE_DEFAULT, __VA_ARGS__)
770+#elif defined(WOLFSSL_ESPIDF)
771+ #define WOLFSSL_DEBUG_PRINTF(...) ESP_LOGI("wolfssl", __VA_ARGS__)
772+#elif defined(WOLFSSL_ZEPHYR)
773+ #define WOLFSSL_DEBUG_PRINTF(...) printk(__VA_ARGS__)
774+#elif defined(WOLFSSL_TELIT_M2MB)
775+ #define WOLFSSL_DEBUG_PRINTF(...) M2M_LOG_INFO(__VA_ARGS__)
776+#elif defined(WOLFSSL_ANDROID_DEBUG)
777+ #define WOLFSSL_DEBUG_PRINTF(...) __android_log_print(ANDROID_LOG_VERBOSE, \
778+ "[wolfSSL]", __VA_ARGS__)
779+#elif defined(WOLFSSL_XILINX)
780+ #define WOLFSSL_DEBUG_PRINTF(...) xil_printf(__VA_ARGS__)
781+#elif defined(WOLFSSL_LINUXKM)
782+ #define WOLFSSL_DEBUG_PRINTF(...) printk(__VA_ARGS__)
783+#elif defined(WOLFSSL_RENESAS_RA6M4)
784+ #define WOLFSSL_DEBUG_PRINTF(...) myprintf(__VA_ARGS__)
785+#else
786+ #define WOLFSSL_DEBUG_PRINTF(...) fprintf(stderr, __VA_ARGS__)
787+#endif
788+
789 #ifdef __cplusplus
790 }
791 #endif
diff --git a/meta-networking/recipes-connectivity/wolfssl/files/run-ptest b/meta-networking/recipes-connectivity/wolfssl/files/run-ptest
index ff66f4ef6c..fd260d441a 100644
--- a/meta-networking/recipes-connectivity/wolfssl/files/run-ptest
+++ b/meta-networking/recipes-connectivity/wolfssl/files/run-ptest
@@ -8,7 +8,9 @@ echo "Wolfssl ptest logs are stored in ${temp_dir}/${log_file}"
8 8
9./test/unit.test > "$temp_dir/$log_file" 2>&1 9./test/unit.test > "$temp_dir/$log_file" 2>&1
10 10
11echo "Test script returned: $?" 11ret=$?
12
13echo "Test script returned: $ret"
12 14
13MAGIC_SENTENCE=$(grep "unit_test: Success for all configured tests." $temp_dir/$log_file) 15MAGIC_SENTENCE=$(grep "unit_test: Success for all configured tests." $temp_dir/$log_file)
14 16
@@ -21,4 +23,4 @@ else
21fi 23fi
22NUM_FAILS=$(grep -c "Failed" $temp_dir/$log_file) 24NUM_FAILS=$(grep -c "Failed" $temp_dir/$log_file)
23 25
24exit $NUM_FAILS 26exit $ret
diff --git a/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.7.2.bb b/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.8.0.bb
index b7ff23e719..b420795cee 100644
--- a/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.7.2.bb
+++ b/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.8.0.bb
@@ -14,20 +14,25 @@ RPROVIDES:${PN} = "cyassl"
14 14
15SRC_URI = " \ 15SRC_URI = " \
16 git://github.com/wolfSSL/wolfssl.git;protocol=https;branch=master \ 16 git://github.com/wolfSSL/wolfssl.git;protocol=https;branch=master \
17 file://0001-wolfssl-wolfcrypt-logging.h-and-wolfcrypt-src-loggin.patch \
17 file://run-ptest \ 18 file://run-ptest \
18" 19"
19 20
20SRCREV = "00e42151ca061463ba6a95adb2290f678cbca472" 21SRCREV = "b077c81eb635392e694ccedbab8b644297ec0285"
21 22
22S = "${WORKDIR}/git" 23S = "${WORKDIR}/git"
23 24
24inherit autotools ptest 25inherit autotools ptest
25 26
27EXTRA_OECONF += "--enable-certreq --enable-dtls --enable-opensslextra --enable-certext --enable-certgen"
28
26PACKAGECONFIG ?= "reproducible-build" 29PACKAGECONFIG ?= "reproducible-build"
27 30
28PACKAGECONFIG[reproducible-build] = "--enable-reproducible-build,--disable-reproducible-build," 31PACKAGECONFIG[reproducible-build] = "--enable-reproducible-build,--disable-reproducible-build,"
29BBCLASSEXTEND += "native nativesdk" 32BBCLASSEXTEND += "native nativesdk"
30 33
34CFLAGS += '-fPIC -DCERT_REL_PREFIX=\\"./\\"'
35
31RDEPENDS:${PN}-ptest += " bash" 36RDEPENDS:${PN}-ptest += " bash"
32 37
33do_install_ptest() { 38do_install_ptest() {
diff --git a/meta-networking/recipes-protocols/mdns/mdns/0001-Use-secure_getenv-on-Linux.patch b/meta-networking/recipes-protocols/mdns/mdns/0001-Use-secure_getenv-on-Linux.patch
new file mode 100644
index 0000000000..242aa7f7d8
--- /dev/null
+++ b/meta-networking/recipes-protocols/mdns/mdns/0001-Use-secure_getenv-on-Linux.patch
@@ -0,0 +1,30 @@
1From 1bf3be6cd775635aed95689f97a13fa6a037c741 Mon Sep 17 00:00:00 2001
2From: Alex Kiernan <alex.kiernan@gmail.com>
3Date: Tue, 27 May 2025 13:33:30 +0100
4Subject: [PATCH] Use secure_getenv on Linux
5
6Upstream-Status: Inactive-Upstream [Upstream does not take patches]
7Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
8---
9 mDNSShared/dnssd_clientstub.c | 4 ++++
10 1 file changed, 4 insertions(+)
11
12diff --git a/mDNSShared/dnssd_clientstub.c b/mDNSShared/dnssd_clientstub.c
13index 6667276ee33a..e7b51813664e 100644
14--- a/mDNSShared/dnssd_clientstub.c
15+++ b/mDNSShared/dnssd_clientstub.c
16@@ -801,10 +801,14 @@ static DNSServiceErrorType ConnectToServer(DNSServiceRef *ref, DNSServiceFlags f
17 #endif
18 #ifndef USE_TCP_LOOPBACK
19 char* uds_serverpath = NULL;
20+#ifdef TARGET_OS_LINUX
21+ uds_serverpath = secure_getenv(MDNS_UDS_SERVERPATH_ENVVAR);
22+#else
23 if (!issetugid())
24 {
25 uds_serverpath = getenv(MDNS_UDS_SERVERPATH_ENVVAR);
26 }
27+#endif
28 if (uds_serverpath == NULL)
29 uds_serverpath = MDNS_UDS_SERVERPATH;
30 else if (strlen(uds_serverpath) >= MAX_CTLPATH)
diff --git a/meta-networking/recipes-protocols/mdns/mdns/0005-Fix-missing-limit-declarations.patch b/meta-networking/recipes-protocols/mdns/mdns/0005-Fix-missing-limit-declarations.patch
deleted file mode 100644
index 41b8985e27..0000000000
--- a/meta-networking/recipes-protocols/mdns/mdns/0005-Fix-missing-limit-declarations.patch
+++ /dev/null
@@ -1,49 +0,0 @@
1From 34285024531adbbc7b67506c9fc2e60f3b36b73b Mon Sep 17 00:00:00 2001
2From: Alex Kiernan <alexk@zuma.ai>
3Date: Sat, 26 Oct 2024 13:26:09 +0000
4Subject: [PATCH] Fix missing `limit` declarations
5
6`put_attribute_tlvs` needs a limit setting which is missing, add it in.
7
8Upstream-Status: Inactive-Upstream [Upstream does not take patches]
9Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
10---
11 mDNSShared/dnssd_clientstub.c | 4 ++++
12 1 file changed, 4 insertions(+)
13
14diff --git a/mDNSShared/dnssd_clientstub.c b/mDNSShared/dnssd_clientstub.c
15index 89cb90d947c7..316fc49ab078 100644
16--- a/mDNSShared/dnssd_clientstub.c
17+++ b/mDNSShared/dnssd_clientstub.c
18@@ -2026,6 +2026,7 @@ DNSServiceErrorType DNSServiceRegisterInternal
19 ipc_msg_hdr *hdr;
20 DNSServiceErrorType err;
21 union { uint16_t s; u_char b[2]; } port = { portInNetworkByteOrder };
22+ const uint8_t *limit;
23 (void)attr;
24
25 if (!sdRef || !regtype) return kDNSServiceErr_BadParam;
26@@ -2050,6 +2051,7 @@ DNSServiceErrorType DNSServiceRegisterInternal
27 if (!hdr) { DNSServiceRefDeallocate(*sdRef); *sdRef = NULL; return kDNSServiceErr_NoMemory; }
28 if (!callBack) hdr->ipc_flags |= IPC_FLAGS_NOREPLY;
29
30+ limit = ptr + len;
31 put_flags(flags, &ptr);
32 put_uint32(interfaceIndex, &ptr);
33 put_string(name, &ptr);
34@@ -2326,6 +2328,7 @@ DNSServiceErrorType DNSServiceRegisterRecordInternal
35 ipc_msg_hdr *hdr = NULL;
36 DNSRecordRef rref = NULL;
37 DNSRecord **p;
38+ const uint8_t *limit;
39 (void)attr;
40
41 // Verify that only one of the following flags is set.
42@@ -2375,6 +2378,7 @@ DNSServiceErrorType DNSServiceRegisterRecordInternal
43 hdr = create_hdr(reg_record_request, &len, &ptr, !(flags & kDNSServiceFlagsQueueRequest), sdRef);
44 if (!hdr) return kDNSServiceErr_NoMemory;
45
46+ limit = ptr + len;
47 put_flags(flags, &ptr);
48 put_uint32(interfaceIndex, &ptr);
49 put_string(fullname, &ptr);
diff --git a/meta-networking/recipes-protocols/mdns/mdns_2600.100.147.bb b/meta-networking/recipes-protocols/mdns/mdns_2600.120.12.bb
index af1400ca6e..b6efa528d4 100644
--- a/meta-networking/recipes-protocols/mdns/mdns_2600.100.147.bb
+++ b/meta-networking/recipes-protocols/mdns/mdns_2600.120.12.bb
@@ -13,12 +13,12 @@ SRC_URI = "git://github.com/apple-oss-distributions/mDNSResponder;protocol=https
13 file://0005-mDNSCore-Fix-broken-debug-parameter.patch \ 13 file://0005-mDNSCore-Fix-broken-debug-parameter.patch \
14 file://0006-make-Add-top-level-Makefile.patch \ 14 file://0006-make-Add-top-level-Makefile.patch \
15 file://0009-remove-unneeded-headers.patch \ 15 file://0009-remove-unneeded-headers.patch \
16 file://0005-Fix-missing-limit-declarations.patch \
17 file://0001-Fix-build-with-gcc-15.patch \ 16 file://0001-Fix-build-with-gcc-15.patch \
17 file://0001-Use-secure_getenv-on-Linux.patch \
18 file://mdns.service \ 18 file://mdns.service \
19 " 19 "
20BRANCH = "main" 20BRANCH = "rel/mDNSResponder-2600"
21SRCREV = "d89f8d1d0e001b810d6c055aa2a57b768bcf9aa2" 21SRCREV = "3a0deda2995d98243dae379bcec10e57928c15e8"
22 22
23# We install a stub Makefile in the top directory so that the various checks 23# We install a stub Makefile in the top directory so that the various checks
24# in base.bbclass pass their tests for a Makefile, this ensures (that amongst 24# in base.bbclass pass their tests for a Makefile, this ensures (that amongst
diff --git a/meta-oe/recipes-devtools/xerces-c/xerces-c_3.2.5.bb b/meta-oe/recipes-devtools/xerces-c/xerces-c_3.3.0.bb
index 9fd7e8fbab..2819366dc9 100644
--- a/meta-oe/recipes-devtools/xerces-c/xerces-c_3.2.5.bb
+++ b/meta-oe/recipes-devtools/xerces-c/xerces-c_3.3.0.bb
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
12SRC_URI = "http://archive.apache.org/dist/xerces/c/3/sources/${BP}.tar.bz2 \ 12SRC_URI = "http://archive.apache.org/dist/xerces/c/3/sources/${BP}.tar.bz2 \
13 file://0001-aclocal.m4-don-t-use-full-path-of-with_curl-in-xerce.patch \ 13 file://0001-aclocal.m4-don-t-use-full-path-of-with_curl-in-xerce.patch \
14" 14"
15SRC_URI[sha256sum] = "1db4028c9b7f1f778efbf4a9462d65e13f9938f2c22f9e9994e12c49ba97e252" 15SRC_URI[sha256sum] = "ef752578587e26013a933f16d76305c9b43ca32f869e3d3426986e03efb01d64"
16 16
17inherit autotools 17inherit autotools
18 18
@@ -29,7 +29,7 @@ PACKAGES = "libxerces-c \
29 29
30RPROVIDES:${PN}-dbg += "libxerces-c-dbg xerces-c-samples-dbg" 30RPROVIDES:${PN}-dbg += "libxerces-c-dbg xerces-c-samples-dbg"
31 31
32FILES:libxerces-c = "${libdir}/libxerces-c-3.2.so" 32FILES:libxerces-c = "${libdir}/libxerces-c-3.3.so"
33FILES:libxerces-c-dev = "${libdir}/lib*.la \ 33FILES:libxerces-c-dev = "${libdir}/lib*.la \
34 ${libdir}/libxerces-c.so \ 34 ${libdir}/libxerces-c.so \
35 ${libdir}/pkgconfig/xerces-c.pc \ 35 ${libdir}/pkgconfig/xerces-c.pc \
diff --git a/meta-oe/recipes-extended/redis/redis-7.2.7/0001-hiredis-use-default-CC-if-it-is-set.patch b/meta-oe/recipes-extended/redis/redis-7.2.8/0001-hiredis-use-default-CC-if-it-is-set.patch
index 63bf403412..63bf403412 100644
--- a/meta-oe/recipes-extended/redis/redis-7.2.7/0001-hiredis-use-default-CC-if-it-is-set.patch
+++ b/meta-oe/recipes-extended/redis/redis-7.2.8/0001-hiredis-use-default-CC-if-it-is-set.patch
diff --git a/meta-oe/recipes-extended/redis/redis-7.2.7/0002-lua-update-Makefile-to-use-environment-build-setting.patch b/meta-oe/recipes-extended/redis/redis-7.2.8/0002-lua-update-Makefile-to-use-environment-build-setting.patch
index 46330f5064..46330f5064 100644
--- a/meta-oe/recipes-extended/redis/redis-7.2.7/0002-lua-update-Makefile-to-use-environment-build-setting.patch
+++ b/meta-oe/recipes-extended/redis/redis-7.2.8/0002-lua-update-Makefile-to-use-environment-build-setting.patch
diff --git a/meta-oe/recipes-extended/redis/redis-7.2.7/0003-hack-to-force-use-of-libc-malloc.patch b/meta-oe/recipes-extended/redis/redis-7.2.8/0003-hack-to-force-use-of-libc-malloc.patch
index 1f97f9783d..1f97f9783d 100644
--- a/meta-oe/recipes-extended/redis/redis-7.2.7/0003-hack-to-force-use-of-libc-malloc.patch
+++ b/meta-oe/recipes-extended/redis/redis-7.2.8/0003-hack-to-force-use-of-libc-malloc.patch
diff --git a/meta-oe/recipes-extended/redis/redis-7.2.7/0004-src-Do-not-reset-FINAL_LIBS.patch b/meta-oe/recipes-extended/redis/redis-7.2.8/0004-src-Do-not-reset-FINAL_LIBS.patch
index 974cf5169f..974cf5169f 100644
--- a/meta-oe/recipes-extended/redis/redis-7.2.7/0004-src-Do-not-reset-FINAL_LIBS.patch
+++ b/meta-oe/recipes-extended/redis/redis-7.2.8/0004-src-Do-not-reset-FINAL_LIBS.patch
diff --git a/meta-oe/recipes-extended/redis/redis-7.2.7/0005-Define-_GNU_SOURCE-to-get-PTHREAD_MUTEX_INITIALIZER.patch b/meta-oe/recipes-extended/redis/redis-7.2.8/0005-Define-_GNU_SOURCE-to-get-PTHREAD_MUTEX_INITIALIZER.patch
index 8e5f30993b..8e5f30993b 100644
--- a/meta-oe/recipes-extended/redis/redis-7.2.7/0005-Define-_GNU_SOURCE-to-get-PTHREAD_MUTEX_INITIALIZER.patch
+++ b/meta-oe/recipes-extended/redis/redis-7.2.8/0005-Define-_GNU_SOURCE-to-get-PTHREAD_MUTEX_INITIALIZER.patch
diff --git a/meta-oe/recipes-extended/redis/redis-7.2.7/0006-Define-correct-gregs-for-RISCV32.patch b/meta-oe/recipes-extended/redis/redis-7.2.8/0006-Define-correct-gregs-for-RISCV32.patch
index 7009048171..7009048171 100644
--- a/meta-oe/recipes-extended/redis/redis-7.2.7/0006-Define-correct-gregs-for-RISCV32.patch
+++ b/meta-oe/recipes-extended/redis/redis-7.2.8/0006-Define-correct-gregs-for-RISCV32.patch
diff --git a/meta-oe/recipes-extended/redis/redis-7.2.7/init-redis-server b/meta-oe/recipes-extended/redis/redis-7.2.8/init-redis-server
index c5f335f57d..c5f335f57d 100644
--- a/meta-oe/recipes-extended/redis/redis-7.2.7/init-redis-server
+++ b/meta-oe/recipes-extended/redis/redis-7.2.8/init-redis-server
diff --git a/meta-oe/recipes-extended/redis/redis-7.2.7/redis.conf b/meta-oe/recipes-extended/redis/redis-7.2.8/redis.conf
index 75037d6dc8..75037d6dc8 100644
--- a/meta-oe/recipes-extended/redis/redis-7.2.7/redis.conf
+++ b/meta-oe/recipes-extended/redis/redis-7.2.8/redis.conf
diff --git a/meta-oe/recipes-extended/redis/redis-7.2.7/redis.service b/meta-oe/recipes-extended/redis/redis-7.2.8/redis.service
index b7791d0df4..b7791d0df4 100644
--- a/meta-oe/recipes-extended/redis/redis-7.2.7/redis.service
+++ b/meta-oe/recipes-extended/redis/redis-7.2.8/redis.service
diff --git a/meta-oe/recipes-extended/redis/redis_7.2.7.bb b/meta-oe/recipes-extended/redis/redis_7.2.8.bb
index c688e92cca..3c4d84085b 100644
--- a/meta-oe/recipes-extended/redis/redis_7.2.7.bb
+++ b/meta-oe/recipes-extended/redis/redis_7.2.8.bb
@@ -18,7 +18,7 @@ SRC_URI = "http://download.redis.io/releases/${BP}.tar.gz \
18 file://0006-Define-correct-gregs-for-RISCV32.patch \ 18 file://0006-Define-correct-gregs-for-RISCV32.patch \
19 " 19 "
20 20
21SRC_URI[sha256sum] = "72c081e3b8cfae7144273d26d76736f08319000af46c01515cad5d29765cead5" 21SRC_URI[sha256sum] = "6be4fdfcdb2e5ac91454438246d00842d2671f792673390e742dfcaf1bf01574"
22 22
23RPROVIDES:${PN} = "virtual-redis" 23RPROVIDES:${PN} = "virtual-redis"
24 24
diff --git a/meta-oe/recipes-support/pcp/pcp/fix_parallel_make.patch b/meta-oe/recipes-support/pcp/pcp/fix_parallel_make.patch
index 9cb649a594..7bc045949b 100644
--- a/meta-oe/recipes-support/pcp/pcp/fix_parallel_make.patch
+++ b/meta-oe/recipes-support/pcp/pcp/fix_parallel_make.patch
@@ -1,13 +1,113 @@
1Upstream-Status: Pending 1From 92add24ccfc7e643349a1c091957595ce25a9915 Mon Sep 17 00:00:00 2001
2From: Yoann Congal <yoann.congal@smile.fr>
3Date: Tue, 27 May 2025 08:45:36 +0200
4Subject: [PATCH] QA: cleanup localconfig.h build dependencies
2 5
6Some QA binaries include localconfig.h but there is no explicit dependencies
7between the binary build and the localconfig.h generation.
8On heavily loaded systems, this can result in the binary being built
9before localconf.h and a compilation error, e.g:
10| username.c:8:10: fatal error: localconfig.h: No such file or directory
11| 8 | #include "localconfig.h"
12| | ^~~~~~~~~~~~~~~
13| compilation terminated.
14
15This can be reproduced by adding "sleep 30" at the start of the
16localconfig.h generation rule.
17
18Fix this by adding the missing Makefile rule dependency between the
19binary (or its pre-link .o) and localconfig.h.
20
21Also remove an un-needed scale.o->localconfig.h dependency.
22
23Upstream-Status: Backport [https://github.com/performancecopilot/pcp/commit/8de7bbb06703f224b72fe0994acde3189b742fd2]
24Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
25---
26 qa/src/GNUlocaldefs | 22 +++++++++++-----------
27 1 file changed, 11 insertions(+), 11 deletions(-)
28
29diff --git a/qa/src/GNUlocaldefs b/qa/src/GNUlocaldefs
30index f83826068..e47fbfd72 100644
3--- a/qa/src/GNUlocaldefs 31--- a/qa/src/GNUlocaldefs
4+++ b/qa/src/GNUlocaldefs 32+++ b/qa/src/GNUlocaldefs
5@@ -728,7 +728,7 @@ scale.o: localconfig.h 33@@ -299,7 +299,7 @@ diowr: diowr.c
34 rm -f $@
35 $(CCF) $(CDEFS) -o $@ diowr.c
36
37-endian: endian.c
38+endian: endian.c localconfig.h
39 rm -f $@
40 $(CCF) $(CDEFS) -o $@ endian.c
41
42@@ -331,15 +331,15 @@ exercise: exercise.c
43 rm -f $@
44 $(CCF) $(CDEFS) -o $@ exercise.c $(LDLIBS)
45
46-chkacc1: chkacc1.c
47+chkacc1: chkacc1.c localconfig.h
48 rm -f $@
49 $(CCF) $(CDEFS) -o $@ chkacc1.c $(LDLIBS)
50
51-chkacc2: chkacc2.c
52+chkacc2: chkacc2.c localconfig.h
53 rm -f $@
54 $(CCF) $(CDEFS) -o $@ chkacc2.c $(LDLIBS)
55
56-chkacc3: chkacc3.c
57+chkacc3: chkacc3.c localconfig.h
58 rm -f $@
59 $(CCF) $(CDEFS) -o $@ chkacc3.c $(LDLIBS)
60
61@@ -489,7 +489,7 @@ pmdashutdown: pmdashutdown.c
62 rm -f $@
63 $(CCF) $(CDEFS) -o $@ $@.c $(LDLIBS) -lpcp_pmda
64
65-dumb_pmda: dumb_pmda.c
66+dumb_pmda: dumb_pmda.c localconfig.h
67 $(CCF) $(LCDEFS) $(LCOPTS) -o $@ $@.c $(LDLIBS) -lpcp_pmda
68
69 pmdacache: pmdacache.c
70@@ -633,7 +633,7 @@ else
71 $(CCF) $(CDEFS) -o $@ $@.c $(LIB_FOR_PTHREADS) $(LDLIBS)
72 endif
73
74-multithread2: multithread2.c
75+multithread2: multithread2.c localconfig.h
76 rm -f $@
77 $(CCF) $(CDEFS) -o $@ $@.c $(LIB_FOR_PTHREADS) $(LDLIBS)
78
79@@ -786,7 +786,6 @@ $(NVIDIAQALIB): nvidia-ml.o
80 endif
81
82 arch_maxfd.o: localconfig.h
83-scale.o: localconfig.h
84
6 779246.o: libpcp.h 85 779246.o: libpcp.h
7 aggrstore.o: libpcp.h 86 aggrstore.o: libpcp.h
8 badmmv.o: libpcp.h 87@@ -847,14 +846,14 @@ multithread14.o: libpcp.h
9-chkacc1.o: libpcp.h 88 nameall.o: libpcp.h
10+chkacc1.o: libpcp.h localconfig.h 89 parsehostattrs.o: libpcp.h
11 chkacc2.o: libpcp.h 90 parsehostspec.o: libpcp.h
12 chkacc3.o: libpcp.h 91-pdubufbounds.o: libpcp.h
13 chkacc4.o: libpcp.h 92-pducheck.o: libpcp.h
93+pdubufbounds.o: libpcp.h localconfig.h
94+pducheck.o: libpcp.h localconfig.h
95 pducrash.o: libpcp.h
96-pdu-server.o: libpcp.h
97+pdu-server.o: libpcp.h localconfig.h
98 pmcdgone.o: libpcp.h
99 pmlcmacro.o: libpcp.h
100 pmnsinarchives.o: libpcp.h
101-pmnsunload.o: libpcp.h
102+pmnsunload.o: libpcp.h localconfig.h
103 proc_test.o: libpcp.h
104 qa_libpcp_compat.o: libpcp.h
105 qa_timezone.o: libpcp.h
106@@ -874,6 +873,7 @@ torture_pmns.o: libpcp.h
107 tztest.o: libpcp.h
108 unpack.o: libpcp.h
109 unpickargs.o: libpcp.h
110+username.o: localconfig.h
111 xarch.o: libpcp.h
112 xlog.o: libpcp.h
113 xmktime.o: libpcp.h
diff --git a/meta-oe/recipes-support/xmlstarlet/files/0001-Define-ATTRIBUTE_UNUSED-if-its-not-defined.patch b/meta-oe/recipes-support/xmlstarlet/files/0001-Define-ATTRIBUTE_UNUSED-if-its-not-defined.patch
new file mode 100644
index 0000000000..1468559e7f
--- /dev/null
+++ b/meta-oe/recipes-support/xmlstarlet/files/0001-Define-ATTRIBUTE_UNUSED-if-its-not-defined.patch
@@ -0,0 +1,37 @@
1From 4e94034e9231f5d8312497b7504f21b7a6062bf4 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 27 May 2025 16:12:01 -0700
4Subject: [PATCH] Define ATTRIBUTE_UNUSED if its not defined
5
6ATTRIBUTE_UNUSED is not defined in libxml2 2.14+, so check if the define is
7not there then define it.
8
9Fixes build errors e.g.
10../xmlstarlet-1.6.1/src/xml_pyx.c:203:36: error: expected ')'
11 203 | pyxExternalSubsetHandler(void *ctx ATTRIBUTE_UNUSED, const xmlChar *name,
12 | ^
13
14Upstream-Status: Pending
15Signed-off-by: Khem Raj <raj.khem@gmail.com>
16---
17 src/xml_pyx.c | 7 +++++++
18 1 file changed, 7 insertions(+)
19
20diff --git a/src/xml_pyx.c b/src/xml_pyx.c
21index ab295f1..f1a1884 100644
22--- a/src/xml_pyx.c
23+++ b/src/xml_pyx.c
24@@ -21,6 +21,13 @@
25
26 #include "xmlstar.h"
27
28+/**
29+ * Unbreak build with libxml2 2.14
30+ */
31+#ifndef ATTRIBUTE_UNUSED
32+#define ATTRIBUTE_UNUSED __attribute__((unused))
33+#endif
34+
35 /**
36 * Output newline and tab characters as escapes
37 * Required both for attribute values and character data (#PCDATA)
diff --git a/meta-oe/recipes-support/xmlstarlet/xmlstarlet_1.6.1.bb b/meta-oe/recipes-support/xmlstarlet/xmlstarlet_1.6.1.bb
index 80fbe537e5..c8cfd884e2 100644
--- a/meta-oe/recipes-support/xmlstarlet/xmlstarlet_1.6.1.bb
+++ b/meta-oe/recipes-support/xmlstarlet/xmlstarlet_1.6.1.bb
@@ -16,7 +16,8 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/xmlstar/${BP}.tar.gz \
16 file://configure.ac.patch \ 16 file://configure.ac.patch \
17 file://0001-usage2c.awk-fix-wrong-basename-regexp.patch \ 17 file://0001-usage2c.awk-fix-wrong-basename-regexp.patch \
18 file://0001-Make-xmlError-struct-constant.patch \ 18 file://0001-Make-xmlError-struct-constant.patch \
19 file://0001-Fix-hash_key_put-signature.patch" 19 file://0001-Fix-hash_key_put-signature.patch \
20 file://0001-Define-ATTRIBUTE_UNUSED-if-its-not-defined.patch"
20SRC_URI[sha256sum] = "15d838c4f3375332fd95554619179b69e4ec91418a3a5296e7c631b7ed19e7ca" 21SRC_URI[sha256sum] = "15d838c4f3375332fd95554619179b69e4ec91418a3a5296e7c631b7ed19e7ca"
21 22
22inherit autotools 23inherit autotools