From patchwork Wed Jul 22 09:54:27 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Darsh Kelaiya -X (dkelaiya - E INFOCHIPS PRIVATE LIMITED at Cisco)" X-Patchwork-Id: 93188 X-Patchwork-Delegate: yoann.congal@smile.fr Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id D08FFC4453D for ; Wed, 22 Jul 2026 09:54:37 +0000 (UTC) Received: from rcdn-iport-9.cisco.com (rcdn-iport-9.cisco.com [173.37.86.80]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.44327.1784714074750982364 for ; Wed, 22 Jul 2026 02:54:34 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: message contains an insecure body length tag" header.i=@cisco.com header.s=iport01 header.b=Vz904gyN; spf=pass (domain: cisco.com, ip: 173.37.86.80, mailfrom: dkelaiya@cisco.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.com; i=@cisco.com; l=3518; q=dns/txt; s=iport01; t=1784714074; x=1785923674; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=MOX6YCQ++3hAcvaifcu6m9Z+IrNLVR+9XS3XTnhI15Q=; b=Vz904gyNbfBiR+sLH6i2xcUfUKKqh91y6XU0KpntZoozhqr0tDdMbHhd 2okJv25mh1CC9S1P6U8xBDpo6mjybR551eMBoNIFHV9ZF+HvnPCt1HY35 rjAlz2QU0WNVnQP0HcqQtknbqP7TgqrYor/XyI4bdOfVAKdnM2L2slRL4 O5NhRFk3Zlli5ypc7/tTRyy8sMFe2rhzgVFFOiVR4NjItJ13X3Qr+HYX1 zyo81/mlGQsHGAxbHtkNzb4bU3tpJC7+U/tflDpU6/uTKnrN3iQDmwxQW /za6odIMF0hJVhxsrTa7tPtpCMz/eM18PUfp1h5LiutrCx+y4gxE84Ksr A==; X-CSE-ConnectionGUID: QXPl9LUITCaVqkvlImBZoA== X-CSE-MsgGUID: q/v6bxNwRASb2rFvtjq6HQ== X-IPAS-Result: A0BHAgA+kmBq/5X/Ja1aglmCV3ReQ0mEV5Fznh6Bfg8BAQEPRA0EAQGFBY1ZAiY0CQ4BAgQDAgMBAQEBAQEBAQEBAQsBAQUBAQECAQcFgQ4Thk8NhloBAgEmBAsBGAEtLAMBAgMCJgItIyGDAgGCdAMRwHF6fzOBAYMoAT8CQ1DbLgELFAEFgQUuhT+DHQGFAlwYAYR8JxsbgXKBFYNpgQWBXAEDGIENhBSCagSCIoEMgVoYBpAiSIECHANZLAFVEw0KCwcFgWYDNRIqFW4yHYEjPhc0WBsHBYEdgS6BAoRuIx8DOX+BL3VKdy1pARIXgSaCFIE6AoEDAwsYDUgRLDcUGQQ9AW4HjWkjgkAOSwE0ASuVWpJIgTWfWgoog3WMIZU6GjOEBJQXklELmH2OCpZQhGmBaDyBRwsHcBWDIglKGQ+OLQsLhV+DFMhzJzICAQEHMgEBBwIHAgwDC4FokACBfgEB IronPort-Data: A9a23:Baashq22Vmx4l229ivbD5YJwkn2cJEfYwER7XKvMYLTBsI5bp2MAy 2MeDTyHOfreZGvzL4giYY+38R5V6JLUnIRrGlZu3Hw8FHgiRegpqji6wuYcGwvIc6UvmWo+t 512huHodZ5yFjmH4E/xbtANlFEkvYmQXL3wFeXYDS54QA5gWU8JhAlq8wIDqtYAbeORXUXX5 Lsen+WFYAX7g2EuaDpNg06+gEoHUMra6WtwUmMWPZinjHeG/1EJAZQWI72GLneQauF8Au6gS u/f+6qy92Xf8g1FIovNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ajs7XAMEhhXJ/0F1lqTzeJ OJl7vRcQS9xVkHFdX90vxNwS0mSNoUekFPLzOTWXcG7lyX7n3XQL/pGNXEOOdw8x8dLKmhw7 P8GLBEIRCKErrfjqF67YrEEasULNsLnOsYb/3pn1zycVKxgSpHYSKKM7thdtNsyrpkRRrCFO IxDNGcpNUiRC/FMEg9/5JYWkOSlgnD+YjRwo1OOrq1x6G/WpOB0+OW0aoWLJ4bbHq25mG6B4 XyY9XTfHSszD9bF0xSb7nC12M/2yHaTtIU6UefQGuRRqFqLy2oeDRcbWVe2rbyyjVSzc9ZeM FAPvC02oK4/8UamQtXwU1u/unHsg/IHc8BbH+t/7ESGzbDZpl/DQGMFVTVGLtchsafaWAAX6 7NApPuxbRQHjVFfYSv1Gmu8xd9qBRUoEA== IronPort-HdrOrdr: A9a23:UNoA7qN6NPSPrMBcTuOjsMiBIKoaSvp037Dk7S9MoHtuA6ilfq GV7ZEmPHDP6Qr5NEtMpTniAtjjfZqjz/5ICOAqVN/INjUO01HHEGgN1+ffKhTbakrDH5ZmpM RdWpk7LsHsBl5nisu/ygy5H9E8hOSjysmT9IHjJ7MHd3ATV0mmhD0JczqmLg== X-Talos-CUID: 9a23:QQfBbW2FDLM2OhXj1+INMbxfI/Addiz58VbsCEaGEGV3TJyQY22X0fYx X-Talos-MUID: 9a23:Bwocawz/vMJCOwPL6PeVv9JWKPSaqL3pFh4HgbMZgeC/P3ZqFSmBji3pYrZyfw== X-IronPort-Anti-Spam-Filtered: true X-IronPort-AV: E=Sophos;i="6.25,178,1779148800"; d="scan'208";a="512765293" Received: from rcdn-l-core-12.cisco.com ([173.37.255.149]) by rcdn-iport-9.cisco.com with ESMTP/TLS/TLS_AES_256_GCM_SHA384; 22 Jul 2026 09:54:33 +0000 Received: from sjc-ads-5675.cisco.com (sjc-ads-5675.cisco.com [10.28.88.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by rcdn-l-core-12.cisco.com (Postfix) with ESMTPS id 9FAF118000326; Wed, 22 Jul 2026 09:54:33 +0000 (GMT) Received: by sjc-ads-5675.cisco.com (Postfix, from userid 1887444) id 45025CAEF79; Wed, 22 Jul 2026 02:54:33 -0700 (PDT) From: "Darsh Kelaiya -X (dkelaiya - E INFOCHIPS PRIVATE LIMITED at Cisco)" To: openembedded-core@lists.openembedded.org Cc: xe-linux-external@cisco.com, Darsh Kelaiya Subject: [OE-core][wrynose][PATCH 1/4] gawk: Fix CVE-2026-40467 Date: Wed, 22 Jul 2026 02:54:27 -0700 Message-Id: <20260722095430.1416791-1-dkelaiya@cisco.com> X-Mailer: git-send-email 2.35.6 MIME-Version: 1.0 X-Auto-Response-Suppress: DR, OOF, AutoReply X-Outbound-Client-TLS: ANONYMOUS;sjc-ads-5675.cisco.com [10.28.88.189];TLSv1.3;TLS_AES_256_GCM_SHA384;256 X-Outbound-SMTP-Client: 10.28.88.189, sjc-ads-5675.cisco.com X-Outbound-Node: rcdn-l-core-12.cisco.com List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 22 Jul 2026 09:54:37 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/241636 From: Darsh Kelaiya This patch applies the upstream fix as referenced in [2], using the commit shown in [1]. [1] https://cgit.git.savannah.gnu.org/cgit/gawk.git/commit/?id=a2d18c74109e41bec29a23098eba2e00057286d8 [2] https://nvd.nist.gov/vuln/detail/CVE-2026-40467 Signed-off-by: Darsh Kelaiya Reviewed-by: Leonid Iziumtsev --- .../gawk/gawk/CVE-2026-40467.patch | 62 +++++++++++++++++++ meta/recipes-extended/gawk/gawk_5.4.0.bb | 1 + 2 files changed, 63 insertions(+) create mode 100644 meta/recipes-extended/gawk/gawk/CVE-2026-40467.patch diff --git a/meta/recipes-extended/gawk/gawk/CVE-2026-40467.patch b/meta/recipes-extended/gawk/gawk/CVE-2026-40467.patch new file mode 100644 index 0000000000..772172c373 --- /dev/null +++ b/meta/recipes-extended/gawk/gawk/CVE-2026-40467.patch @@ -0,0 +1,62 @@ +From 194a2884f21a6fc02c446ca4e2dc9107298832db Mon Sep 17 00:00:00 2001 +From: "Arnold D. Robbins" +Date: Fri, 3 Apr 2026 12:02:11 +0300 +Subject: [PATCH] Small memory management fix in io.c. + +CVE: CVE-2026-40467 +Upstream-Status: Backport [https://cgit.git.savannah.gnu.org/cgit/gawk.git/commit/?id=a2d18c74109e41bec29a23098eba2e00057286d8] + +(cherry picked from commit a2d18c74109e41bec29a23098eba2e00057286d8) +Signed-off-by: Darsh Kelaiya +--- + ChangeLog | 6 ++++++ + io.c | 5 ++++- + 2 files changed, 10 insertions(+), 1 deletion(-) + +diff --git a/ChangeLog b/ChangeLog +index a714ca1a..517aba91 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,3 +1,9 @@ ++2026-04-03 Arnold D. Robbins ++ ++ * io.c (do_getline_redir): Don't DEREF redir_exp too early. ++ Thanks to Michał Majchrowicz ++ for the report. ++ + 2026-02-22 Arnold D. Robbins + + * 5.4.0: Release tar ball made. +diff --git a/io.c b/io.c +index a3b877c4..7a547aa1 100644 +--- a/io.c ++++ b/io.c +@@ -2853,21 +2853,24 @@ do_getline_redir(int into_variable, enum redirval redirtype) + redir_exp = TOP(); + redir_exp = elem_new_to_scalar(redir_exp); + rp = redirect(redir_exp, redirtype, & redir_error, false); +- DEREF(redir_exp); + decr_sp(); + if (rp == NULL) { + if (redir_error) { /* failed redirect */ + update_ERRNO_int(redir_error); + } ++ DEREF(redir_exp); + return make_number((AWKNUM) -1.0); + } else if ((rp->flag & RED_TWOWAY) != 0 && rp->iop == NULL) { + if (is_non_fatal_redirect(redir_exp->stptr, redir_exp->stlen)) { + update_ERRNO_int(EBADF); ++ DEREF(redir_exp); + return make_number((AWKNUM) -1.0); + } + (void) close_rp(rp, CLOSE_ALL); ++ DEREF(redir_exp); // we're about to die, but what the heck, release it anyway + fatal(_("getline: attempt to read from closed read end of two-way pipe")); + } ++ DEREF(redir_exp); + iop = rp->iop; + if (iop == NULL) /* end of input */ + return make_number((AWKNUM) 0.0); +-- +2.53.0 + diff --git a/meta/recipes-extended/gawk/gawk_5.4.0.bb b/meta/recipes-extended/gawk/gawk_5.4.0.bb index d7211f28f3..59c4cb2536 100644 --- a/meta/recipes-extended/gawk/gawk_5.4.0.bb +++ b/meta/recipes-extended/gawk/gawk_5.4.0.bb @@ -28,6 +28,7 @@ PACKAGECONFIG[pma-if-64bit] = "--enable-pma,--disable-pma, " SRC_URI = "${GNU_MIRROR}/gawk/gawk-${PV}.tar.xz \ file://run-ptest \ file://0001-configure.ac-re-enable-disabled-printf-features.patch \ + file://CVE-2026-40467.patch \ " SRC_URI[sha256sum] = "3dd430f0cd3b4428c6c3f6afc021b9cd3c1f8c93f7a688dc268ca428a90b4ac1" From patchwork Wed Jul 22 09:54:28 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Darsh Kelaiya -X (dkelaiya - E INFOCHIPS PRIVATE LIMITED at Cisco)" X-Patchwork-Id: 93186 X-Patchwork-Delegate: yoann.congal@smile.fr Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id BAC69C4453A for ; Wed, 22 Jul 2026 09:54:37 +0000 (UTC) Received: from rcdn-iport-8.cisco.com (rcdn-iport-8.cisco.com [173.37.86.79]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.44170.1784714074817948023 for ; Wed, 22 Jul 2026 02:54:34 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: message contains an insecure body length tag" header.i=@cisco.com header.s=iport01 header.b=XbHFeHE2; spf=pass (domain: cisco.com, ip: 173.37.86.79, mailfrom: dkelaiya@cisco.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.com; i=@cisco.com; l=3280; q=dns/txt; s=iport01; t=1784714074; x=1785923674; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=ElJ0dawxxg1pwR0FGqSM330uZmXmuIyZ0VQU3ihV4Yg=; b=XbHFeHE2QuWjqWXg6B/FyAAUdK97APZHsp9NpKyJFR+Civ2Bn8dac1yk iNNea7HTbFk5WQggUi88KSazcG+yUIH6jw4XTPRUIpJrN7a/XT4DkinRD wobJ8iow8Wo4DUPL1QHj7fonDgDTcmSfHkNCr7H/embaQ6tYJaWGdQp0F lJfdR+TnwD5j6ylZvH0LFRYA6yjQ3USi0xmgCoJT5/nPD3f5wRDNoDsAn SoxzsRI2N8esgNxSsKuNd63tf2Fb7apia05iGLKsy7HlT/GvijiomdqZN ErmmkvC/DTeY43yxIEdamQX7dED+Dz7pIr+T+bafG0SFLvL8wimLoapr8 w==; X-CSE-ConnectionGUID: upCNIK7eTX6RkpM6ofbKBw== X-CSE-MsgGUID: 5L+PbMutQ5+vOeXGoAKutA== X-IPAS-Result: A0BJAgA+kmBq/5P/Ja1aglmCV3ReQ0mEV5FzA54bgX4PAQEBD0QNBAEBhQUCjVcCJjQJDgECBAMCAwEBAQEBAQEBAQEBCwEBBQEBAQIBBwWBDhOGTw2GWgECAQMjDwEYAS0QHAMBAgMCJgICKyMIGYMCAYJ0AxHAcXqBMoEBgygBPwJDUNsuAQsUAQWBBS6FP4MdAYUCXBgBhHwnGxuBcoR+gQWBXAEDGIUhgmoEgiKBDIFaGAZQj1JIgQIcA1ksAVUTDQoLBwWBZgM1EioVbjIdgSM+FzRYGwcFgR2BLoEChG4jHwM5f4EvdUp3LWkBEheBJoIUgToCgQMDCxgNSBEsNxQZBD0BbgeNaSOCPwFaNAErlT2SZaEPCiiDdYwhlToaM6psC5h9jgqWUIRpgWg8gUcLB3AVgyIJShkPjjiFaoMUyHMnMgIBAQcyAQEHAgcCDAMLgWiRfgEB IronPort-Data: A9a23:eZj5JqncHLlzq1bwuoY3Rxjo5gzQJ0RdPkR7XQ2eYbSJt1+Wr1Gzt xIZCDuGb6yLYzOkLo8ibYmz8B5UvJXcyYM3S1Ns/C9nFFtH+JHPbTi7wugcHM8zwunrFh8PA xA2M4GYRCwMZiaC4E/raf658SUUOZigHtLUEPTDNj16WThqQSIgjQMLs+Mii+aEu/Dha++2k Y20+ZC31GONgWYubDpLsfjb8XuDgdyr0N8mlg1mDRx0lAe2e0k9VPo3Oay3Jn3kdYhYdsbSb /rD1ryw4lTC9B4rDN6/+p6jGqHdauePVeQmoiM+t5mK2nCulARrukoIHKZ0hXNsttm8t4sZJ OOhGnCHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqHLWyOE/hlgMK05FZAA0cBWIj5Dy cxGEjMVS06EieiV6q3uH4GAhux7RCXqFJkUtnclyXTSCuwrBMmbBa7L/tRfmjw3g6iiH96HO JFfMmUpNkmdJUQTZT/7C7pm9AusrnX8fjlRqUOcjaE2+GPUigd21dABNfKIIoHRHJsMxxnwS mTuokC6Ohs/KcCmlHmb1X+cqejmvj7ncddHfFG/3rsw6LGJ/UQUEBAQWF6xrPW1h0L7UNVFJ mQQ+zEytu417EGtQ9z3UhG0rXLCuQQTM+e8CMUg4w2Lj66R6AGDCy1dFnhKaccts4k9QjlCO kK1ou4FzAdH6NW9IU9xPJ/Nxd9uEUD59VM/WBI= IronPort-HdrOrdr: A9a23:/Jdj/alW7jKEXJqoT8Invj5B5QTpDfLy3DAbv31ZSRFFG/FwWf rAoB19726TtN9xYgBGpTnuAsi9qB/nmKKdpLNhX4tKPzOW3FdAUrsD0WKK+VSJcEfDH6xmpM JdmsNFZuEYY2IXsS/S2njALz9Z+qjlzImYwcHD0nxqUQZmL4tk7wt/F0KnN3cefng/OXL8f6 DsnPauYFGbCA8qUvg= X-Talos-CUID: 9a23:WSVseGr3yOOMTIzedX0mc6DmUd09WVv87yjdH3/mM2VxbeOSR1Wz0rwxxg== X-Talos-MUID: 9a23:cDRQDAlA9FQFOQrV6I1Ddno/EIRQ6YGzFHlQ0oshtvmrMgVTJiu02WE= X-IronPort-Anti-Spam-Filtered: true X-IronPort-AV: E=Sophos;i="6.25,178,1779148800"; d="scan'208";a="505316117" Received: from rcdn-l-core-10.cisco.com ([173.37.255.147]) by rcdn-iport-8.cisco.com with ESMTP/TLS/TLS_AES_256_GCM_SHA384; 22 Jul 2026 09:54:33 +0000 Received: from sjc-ads-5675.cisco.com (sjc-ads-5675.cisco.com [10.28.88.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by rcdn-l-core-10.cisco.com (Postfix) with ESMTPS id A249D18000899; Wed, 22 Jul 2026 09:54:33 +0000 (GMT) Received: by sjc-ads-5675.cisco.com (Postfix, from userid 1887444) id 4AB84CAB20D; Wed, 22 Jul 2026 02:54:33 -0700 (PDT) From: "Darsh Kelaiya -X (dkelaiya - E INFOCHIPS PRIVATE LIMITED at Cisco)" To: openembedded-core@lists.openembedded.org Cc: xe-linux-external@cisco.com, Darsh Kelaiya Subject: [OE-core][wrynose][PATCH 2/4] gawk: Fix CVE-2026-40468 Date: Wed, 22 Jul 2026 02:54:28 -0700 Message-Id: <20260722095430.1416791-2-dkelaiya@cisco.com> X-Mailer: git-send-email 2.35.6 In-Reply-To: <20260722095430.1416791-1-dkelaiya@cisco.com> References: <20260722095430.1416791-1-dkelaiya@cisco.com> MIME-Version: 1.0 X-Auto-Response-Suppress: DR, OOF, AutoReply X-Outbound-Client-TLS: ANONYMOUS;sjc-ads-5675.cisco.com [10.28.88.189];TLSv1.3;TLS_AES_256_GCM_SHA384;256 X-Outbound-SMTP-Client: 10.28.88.189, sjc-ads-5675.cisco.com X-Outbound-Node: rcdn-l-core-10.cisco.com List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 22 Jul 2026 09:54:37 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/241637 From: Darsh Kelaiya This patch applies the upstream fix as referenced in [2], using the commit shown in [1]. [1] https://cgit.git.savannah.gnu.org/cgit/gawk.git/commit/?id=062f2f2581b991362c046f7f2e238ffa34e6f8c7 [2] https://nvd.nist.gov/vuln/detail/CVE-2026-40468 Signed-off-by: Darsh Kelaiya Reviewed-by: Leonid Iziumtsev --- .../gawk/gawk/CVE-2026-40468.patch | 61 +++++++++++++++++++ meta/recipes-extended/gawk/gawk_5.4.0.bb | 1 + 2 files changed, 62 insertions(+) create mode 100644 meta/recipes-extended/gawk/gawk/CVE-2026-40468.patch diff --git a/meta/recipes-extended/gawk/gawk/CVE-2026-40468.patch b/meta/recipes-extended/gawk/gawk/CVE-2026-40468.patch new file mode 100644 index 0000000000..6b767c3bea --- /dev/null +++ b/meta/recipes-extended/gawk/gawk/CVE-2026-40468.patch @@ -0,0 +1,61 @@ +From 1e0b3ebeb4a39680dcd9c8eeadd8e3bf1c7c6200 Mon Sep 17 00:00:00 2001 +From: "Arnold D. Robbins" +Date: Sat, 4 Apr 2026 21:45:58 +0300 +Subject: [PATCH] Minor integer overflow fixes. + +CVE: CVE-2026-40468 +Upstream-Status: Backport [https://cgit.git.savannah.gnu.org/cgit/gawk.git/commit/?id=062f2f2581b991362c046f7f2e238ffa34e6f8c7] + +(cherry picked from commit 062f2f2581b991362c046f7f2e238ffa34e6f8c7) +Signed-off-by: Darsh Kelaiya +--- + ChangeLog | 8 ++++++++ + builtin.c | 2 +- + node.c | 2 +- + 3 files changed, 10 insertions(+), 2 deletions(-) + +diff --git a/ChangeLog b/ChangeLog +index 517aba91..8cdf90f6 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,3 +1,11 @@ ++2026-04-04 Arnold D. Robbins ++ ++ * builtin.c (do_sub): Make `sofar' be size_t to avoid ++ integer overflows. Thanks to Michał Majchrowicz ++ for the report. ++ * node.c (parse_escape): Change `i' to int64_t to avoid ++ overflows. Thanks to ASan with gcc -m32. ++ + 2026-04-03 Arnold D. Robbins + + * io.c (do_getline_redir): Don't DEREF redir_exp too early. +diff --git a/builtin.c b/builtin.c +index 6305b541..d0e083da 100644 +--- a/builtin.c ++++ b/builtin.c +@@ -1806,7 +1806,7 @@ do_sub(int nargs, unsigned int flags) + char *repl; + char *replend; + size_t repllen; +- int sofar; ++ size_t sofar; + int ampersands; + int matches = 0; + Regexp *rp; +diff --git a/node.c b/node.c +index 0e2bfb0f..f1e14dff 100644 +--- a/node.c ++++ b/node.c +@@ -584,7 +584,7 @@ parse_escape(const char **string_ptr, const char **result, size_t *nbytes) + static char buf[MB_LEN_MAX]; + enum escape_results retval = ESCAPE_OK; + int c = *(*string_ptr)++; +- long i; ++ int64_t i; + int count; + int j; + const char *start; +-- +2.53.0 + diff --git a/meta/recipes-extended/gawk/gawk_5.4.0.bb b/meta/recipes-extended/gawk/gawk_5.4.0.bb index 59c4cb2536..345103a7f0 100644 --- a/meta/recipes-extended/gawk/gawk_5.4.0.bb +++ b/meta/recipes-extended/gawk/gawk_5.4.0.bb @@ -29,6 +29,7 @@ SRC_URI = "${GNU_MIRROR}/gawk/gawk-${PV}.tar.xz \ file://run-ptest \ file://0001-configure.ac-re-enable-disabled-printf-features.patch \ file://CVE-2026-40467.patch \ + file://CVE-2026-40468.patch \ " SRC_URI[sha256sum] = "3dd430f0cd3b4428c6c3f6afc021b9cd3c1f8c93f7a688dc268ca428a90b4ac1" From patchwork Wed Jul 22 09:54:29 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Darsh Kelaiya -X (dkelaiya - E INFOCHIPS PRIVATE LIMITED at Cisco)" X-Patchwork-Id: 93189 X-Patchwork-Delegate: yoann.congal@smile.fr Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id DE425C44539 for ; Wed, 22 Jul 2026 09:54:57 +0000 (UTC) Received: from rcdn-iport-5.cisco.com (rcdn-iport-5.cisco.com [173.37.86.76]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.44172.1784714092209873700 for ; Wed, 22 Jul 2026 02:54:52 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: message contains an insecure body length tag" header.i=@cisco.com header.s=iport01 header.b=NAS7KR6x; spf=pass (domain: cisco.com, ip: 173.37.86.76, mailfrom: dkelaiya@cisco.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.com; i=@cisco.com; l=4756; q=dns/txt; s=iport01; t=1784714092; x=1785923692; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=wIZfzRfTsZK7dzAl3tdePMlIldkppGSWq69TiQLNXws=; b=NAS7KR6xjx/ZVKsyMACH6/xWd5BEcht2kArzK4Rp2NG5E/9PrUU59fen ZuDuIZyuyiZmqgyMsg9w5E3QoDiUPICeTwQCyi5kuajD+k13TR2hJFuyJ 6MdT4xzFzk5+UIrRHPrfxYc4tO61hVuUHeiqd/VT6z9TiATZrWlsihZuS 9AuC69QrAwpODqCrQUYXxNaog+1fw/i9ou5iB/Rs07kKTFo1VfSAHBxJE qvvYFyfajPfzDMVZWzTFQdorM1KermnOTT4gjLN8A68gsqf0tyezjNayC xHzBYK2lJP+Ir7dzL/B1D71gguvYbaOWopd7UgYRawygKrg78uQsL8xqj w==; X-CSE-ConnectionGUID: J8C7Or8US4qwgWJ3ofeR+g== X-CSE-MsgGUID: pVkJyLSoRS+Mgi2NzKn22A== X-IPAS-Result: A0BJAgDCkmBq/4//Ja1aglmCV3ReQ0mEV5FzA54bgX4PAQEBD0QNBAEBhQUCjVcCJjQJDgECBAMCAwEBAQEBAQEBAQEBCwEBBQEBAQIBBwWBDhOGTw2GWgECAQMjDwEYAS0QHAMBAgMCJgICKyMIGYMCAYJ0AxHAcXqBMoEBgygBPwJDUNsuAQsUAQWBBS6FP4MdAYUCXBgBhHwnGxuBcoEVg2mBBYFcAQMYhSGCagSCIoEMgVoYBlCPUkiBAhwDWSwBVRMNCgsHBYFmAzUSKhVuMh2BIz4XNFgbBwWBHYEugQKEbiMfAzl/gS91SnctaQESF4EmghSBOgKBAwMLGA1IESw3FBkEPQFuB41pI4I5BgEBWTQBK4FDgQWSdSSSQaEPCiiDdYwhlToaM6psC5h9jgqWUIRpgWg8gUcLB3AVgyIJShkPjjiFaoMUyHMnMgIBAQcyAQEHAgcCDAMLgWiRfgEB IronPort-Data: A9a23:hS+A+qJC3cqW5XGiFE+RgJQlxSXFcZb7ZxGr2PjKsXjdYENSgTdTz zcZWmCCMveMNDD9f9AlYd++o05X6JXSndU3HAEd+CA2RRqmiyZq6fd1j6vUF3nPRiEWZBs/t 63yUvGZcoZsCCSa/kvxWlTYhSEU/bmSQbbhA/LzNCl0RAt1IA8skhsLd9QR2uaEuvDnRVnQ0 T/Oi5eHYgH9hGQuajt8B5+r8XuDgtyj4Fv0gXRmDRx7lAe2v2UYCpsZOZawIxPQKqFIHvS3T vr017qw+GXU5X8FUrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRuukoPD8fwXG8M49m/c3+d/ /0W3XC4YV9B0qQhA43xWTEAe811FfUuFLMqvRFTvOTLp3AqfUcAzN1MXGppGpdIx90rGH5By t5DLz4AVFOM0rfeLLKTEoGAh+w5J8XteYdasXZ6wHSBU7AtQIvIROPB4towMDUY358VW62BI ZBENHw2ME+ojx5nYj/7DLoyn+qsj3juehVTqUmeouw85G27IAlZjeG2YIqIJILQLSlTtl6mp UDX21/+OCpZEdOekxyX0XT23MaayEsXX6pXTtVU7MVCh0WewGEWAhAaWVa35PK+kEOWX9NEN 1dS/TIjq6U3/kGnQtTxGRqirxa5UgU0QdFcFag+rQqK0KeRu1jfDWkfRTkHY9sj3CMreQEXO payt4uBLVRSXHe9FRpxKp/8QeuOBBUo IronPort-HdrOrdr: A9a23:PQHRGqEGvzLfeNPTpLqENseALOsnbusQ8zAXPo5KJiC9Ffbo8f xG/c5rsiMc5wxxZJhNo7290ey7MBHhHP1OkO0s1MmZPDUO0VHAROoJ0WKh+UyEJ8SUzIBgPM lbH5SWIeeAdGSS9fyKgzWQIpIH3MSN9ryuiKP1yndgShwvVoRbhj0Jcjpy1iZNNXN77V1TLu vm2vZ6 X-Talos-CUID: 9a23:w6mitGl+vGQmivzAcmz3HE+wvBTXOV+N5yj3OR+FMjpwV7KqawSX9q5e0MU7zg== X-Talos-MUID: 9a23:h91phwVpzZYRdtjq/CfShxNzEPxv2Z/tLU8My7MUmM/ebwUlbg== X-IronPort-Anti-Spam-Filtered: true X-IronPort-AV: E=Sophos;i="6.25,178,1779148800"; d="scan'208";a="513885662" Received: from rcdn-l-core-06.cisco.com ([173.37.255.143]) by rcdn-iport-5.cisco.com with ESMTP/TLS/TLS_AES_256_GCM_SHA384; 22 Jul 2026 09:54:33 +0000 Received: from sjc-ads-5675.cisco.com (sjc-ads-5675.cisco.com [10.28.88.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by rcdn-l-core-06.cisco.com (Postfix) with ESMTPS id A88CD1800039A; Wed, 22 Jul 2026 09:54:33 +0000 (GMT) Received: by sjc-ads-5675.cisco.com (Postfix, from userid 1887444) id 5171CCAB20E; Wed, 22 Jul 2026 02:54:33 -0700 (PDT) From: "Darsh Kelaiya -X (dkelaiya - E INFOCHIPS PRIVATE LIMITED at Cisco)" To: openembedded-core@lists.openembedded.org Cc: xe-linux-external@cisco.com, Darsh Kelaiya Subject: [OE-core][wrynose][PATCH 3/4] gawk: Fix CVE-2026-40469 Date: Wed, 22 Jul 2026 02:54:29 -0700 Message-Id: <20260722095430.1416791-3-dkelaiya@cisco.com> X-Mailer: git-send-email 2.35.6 In-Reply-To: <20260722095430.1416791-1-dkelaiya@cisco.com> References: <20260722095430.1416791-1-dkelaiya@cisco.com> MIME-Version: 1.0 X-Auto-Response-Suppress: DR, OOF, AutoReply X-Outbound-Client-TLS: ANONYMOUS;sjc-ads-5675.cisco.com [10.28.88.189];TLSv1.3;TLS_AES_256_GCM_SHA384;256 X-Outbound-SMTP-Client: 10.28.88.189, sjc-ads-5675.cisco.com X-Outbound-Node: rcdn-l-core-06.cisco.com List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 22 Jul 2026 09:54:57 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/241639 From: Darsh Kelaiya NVD [3] identifies upstream merge commit [2] as the fix. The CVE-specific change is its second parent [1], which adds 32-bit overflow checking in do_sub(). [1] https://cgit.git.savannah.gnu.org/cgit/gawk.git/commit/?id=aa7272a6e1184cdd21ab8f89200219abd8053eda [2] https://cgit.git.savannah.gnu.org/cgit/gawk.git/commit/?id=ae1b2d508f46913269a9e62aceda3636afe8147b [3] https://nvd.nist.gov/vuln/detail/CVE-2026-40469 Signed-off-by: Darsh Kelaiya Reviewed-by: Leonid Iziumtsev --- .../gawk/gawk/CVE-2026-40469.patch | 90 +++++++++++++++++++ meta/recipes-extended/gawk/gawk_5.4.0.bb | 1 + 2 files changed, 91 insertions(+) create mode 100644 meta/recipes-extended/gawk/gawk/CVE-2026-40469.patch diff --git a/meta/recipes-extended/gawk/gawk/CVE-2026-40469.patch b/meta/recipes-extended/gawk/gawk/CVE-2026-40469.patch new file mode 100644 index 0000000000..73cda824a7 --- /dev/null +++ b/meta/recipes-extended/gawk/gawk/CVE-2026-40469.patch @@ -0,0 +1,90 @@ +From 436584a4302b1c6da55080c0a0408a98e551ea7e Mon Sep 17 00:00:00 2001 +From: "Arnold D. Robbins" +Date: Mon, 6 Apr 2026 10:56:38 +0300 +Subject: [PATCH] Add overflow checking in do_sub for 32 bit systems. + +CVE: CVE-2026-40469 +Upstream-Status: Backport [https://cgit.git.savannah.gnu.org/cgit/gawk.git/commit/?id=aa7272a6e1184cdd21ab8f89200219abd8053eda] + +(cherry picked from commit aa7272a6e1184cdd21ab8f89200219abd8053eda) +Signed-off-by: Darsh Kelaiya +--- + ChangeLog | 9 +++++++++ + builtin.c | 25 ++++++++++++++++++++----- + 2 files changed, 29 insertions(+), 5 deletions(-) + +diff --git a/ChangeLog b/ChangeLog +index 8cdf90f6..c1b2e7f4 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,3 +1,12 @@ ++2026-04-06 Arnold D. Robbins ++ ++ * builtin.c (do_sub): Check for overflow in calculation of size ++ of result buffer by doing the math in 64 bits. This provides ++ a fatal message on 32 bit systems if overflow happens instead ++ of letting dynamic memory get corrupted and likely causing ++ a core dump. Thanks to Michał Majchrowicz ++ for the report and fix. ++ + 2026-04-04 Arnold D. Robbins + + * builtin.c (do_sub): Make `sofar' be size_t to avoid +diff --git a/builtin.c b/builtin.c +index d0e083da..3906d507 100644 +--- a/builtin.c ++++ b/builtin.c +@@ -1820,11 +1820,13 @@ do_sub(int nargs, unsigned int flags) + bool lastmatchnonzero; + char *mb_indices = NULL; + int searchflags = RE_NEED_START; ++ const char *fname = NULL; // for fatal message, below + + if ((flags & GENSUB) != 0) { + double d; + NODE *glob_flag; + ++ fname = "gensub"; + check_exact_args(nargs, "gensub", 4); + + tmp = PEEK(3); +@@ -1856,11 +1858,9 @@ do_sub(int nargs, unsigned int flags) + DEREF(glob_flag); + searchflags |= RE_NEED_SUB; + } else { +- if ((flags & GSUB) != 0) { +- check_exact_args(nargs, "gsub", 3); +- } else { +- check_exact_args(nargs, "sub", 3); +- } ++ fname = ((flags & GSUB) != 0) ? "gsub" : "sub"; ++ ++ check_exact_args(nargs, fname, 3); + + /* take care of regexp early, in case re_update is fatal */ + +@@ -1976,6 +1976,21 @@ do_sub(int nargs, unsigned int flags) + * vary since ampersand is actual text of regexp match. + */ + ++ // 4/2026: This overflow check simply provides a fatal ++ // message instead of letting realloc() die later after ++ // a buffer overrun. It simply makes the user experience better, ++ // but does not prevent gawk from dying miserably. I suppose ++ // it's worth the trouble, but just barely. ++ ++ /* uint64_t so the product is 64-bit even on 32-bit ILP32 builds */ ++ uint64_t repl_contribution = ++ (uint64_t)(unsigned int)ampersands ++ * (uint64_t)(uintptr_t)(matchend - matchstart); ++ if (repl_contribution > (uint64_t)SIZE_MAX ++ || repl_contribution > (uint64_t)SIZE_MAX - (size_t)(matchend - text) ++ - repllen - 1) ++ fatal(_("%s: replacement expansion too large"), fname); ++ + /* + * add 1 to len to handle "empty" case where + * matchend == matchstart and we force a match on a single +-- +2.53.0 + diff --git a/meta/recipes-extended/gawk/gawk_5.4.0.bb b/meta/recipes-extended/gawk/gawk_5.4.0.bb index 345103a7f0..a7c88224dd 100644 --- a/meta/recipes-extended/gawk/gawk_5.4.0.bb +++ b/meta/recipes-extended/gawk/gawk_5.4.0.bb @@ -30,6 +30,7 @@ SRC_URI = "${GNU_MIRROR}/gawk/gawk-${PV}.tar.xz \ file://0001-configure.ac-re-enable-disabled-printf-features.patch \ file://CVE-2026-40467.patch \ file://CVE-2026-40468.patch \ + file://CVE-2026-40469.patch \ " SRC_URI[sha256sum] = "3dd430f0cd3b4428c6c3f6afc021b9cd3c1f8c93f7a688dc268ca428a90b4ac1" From patchwork Wed Jul 22 09:54:30 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Darsh Kelaiya -X (dkelaiya - E INFOCHIPS PRIVATE LIMITED at Cisco)" X-Patchwork-Id: 93187 X-Patchwork-Delegate: yoann.congal@smile.fr Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id C396FC44539 for ; Wed, 22 Jul 2026 09:54:37 +0000 (UTC) Received: from rcdn-iport-4.cisco.com (rcdn-iport-4.cisco.com [173.37.86.75]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.44328.1784714076440053462 for ; Wed, 22 Jul 2026 02:54:36 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: message contains an insecure body length tag" header.i=@cisco.com header.s=iport01 header.b=KLrSMhDy; spf=pass (domain: cisco.com, ip: 173.37.86.75, mailfrom: dkelaiya@cisco.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.com; i=@cisco.com; l=5511; q=dns/txt; s=iport01; t=1784714076; x=1785923676; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=5I9RFiO7ZF90MQZyBjx+nkSTBkgYoI0A2zOo8W0JFiU=; b=KLrSMhDyl0DvWZrz4nL91o3LJXM8OfeuRKvsZYtxE+Jt30RTNHsvZORR bMR3I55zVPxmCn3b6a2b4hXGKUM1k+DFjAesOWfsj8uhRiRKa4+mWZfVk QHZGM9jTiWVv55rH3aZ4bhnE1PPqTN06lEQVas/1M9OqHnUBYT7oGltwZ 0Ou94u2rsMWnSypPak7Rn1HSLLU08PA3KNezQoyRvBEfzSzM8LvWT9KCu wstLp01o4zqEZviqIYX56kS1TjmR5/T83n/YoHgwhhrxgAtv2/lYw7Wrn i9/KO18aLjFW50bTbZVRQV+Ze3X30ei++6Y4fEjfhd7Cn7oL3V2WzBBiy Q==; X-CSE-ConnectionGUID: CoCwUuCOT32g7qYhsZu6UA== X-CSE-MsgGUID: 0pY2VNXrQYmUWKnJGns01g== X-IPAS-Result: A0BHAgDCkmBq/4v/Ja1aglmCV3ReQ0mWSgOeG4F+DwEBAQ9EDQQBAYUFAo1XAiY0CQ4BAgQDAgMBAQEBAQEBAQEBAQsBAQUBAQECAQcFgQ4Thk8NhloBAgEDJwsBGAEtEBwDAQIvKyMIGYMCAYJ0AxHAcYF5M4EBgygBPwJDUNsuAQsUAQWBM4U/iCBcGAGEfCcbG4FyhAh2gQWBXAEDGIENhn4EgiKBDIFaGAZQj1JIgR4DWSwBVRMNCgsHBYFmAzUSKhVuMh2BIz4XgQwbBwWBHYEugQKEbiMfAzl/gS91SnctaQESF4EmghSBOgKBAwMLGA1IESw3FBkEPm4HjWkjgkABgQ0BBySVPZBEgiGhDwoog3WMIZU6GjOqbAuYfY4KhRyRNIRpgWg8gSgfCwdwFYJuAQEBMQlKGQ+OOIVqgxQuyEUnMgIBAQcyAQEHAgcOAwuBaJAAgX4BAQ IronPort-Data: A9a23:M0TxOq/ox6QuleA6qq9GDrUD0X+TJUtcMsCJ2f8bNWPcYEJGY0x3y 2scW2qPbv3YZmH1KN8kbdzgp0xTvZCAytZnQFQ5q3xEQiMRo6IpJzg2wmQcns+2BpeeJK6yx 5xGMrEsFOhtEDmE4EzrauS9xZVF/fngbqLmD+LZMTxGSwZhSSMw4TpugOdRbrRA2bBVOCvT/ 4mvyyHjEAX9gWAsbThOs/vrRC5H5ZwehhtJ5jTSWtgT1LPuvyF9JI4SI6i3M0z5TuF8dsamR /zOxa2O5WjQ+REgELuNyt4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5nXBYoUnq7vh3S9zxHJ HqhgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/wmWeG0YAzcmCA2kdOqYHx/tcJl0Vr /NHMQENdSKe2d+flefTpulE3qzPLeHxN48Z/3UlxjbDALN+G9bIQr7B4plT2zJYasJmRKmFI ZFGL2AyMVKZOEwn1lQ/UPrSmM+khXT7ejxJoXqepLE85C7YywkZPL3FbYOOJIzQGZ4E9qqej jrezj7HJCEADe2a9AWm9FCDgPSXxCyuDer+E5X9rJaGmma7wXQeDhATX1a3rfS1z0W5Qd93L 00P5jFoqrA/8kGuRNTxUxC05nmesXYht8F4CeY27kSJj6HT+QvcXjJCRT9aY9tgv8gzLdA36 mK0cxrSLWQHmNWopbi1r994cRva1fApEFI/ IronPort-HdrOrdr: A9a23:8tnesasrwnkG2mt1kV6h6Fc47skDrtV00zEX/kB9WHVpmwKj+P xG+85rsiMc5wxxZJhNo7290ey7MBHhHP1OkO0s1MmZPDUO0VHAROoJ0WKh+UyEJ8SUzIBgPM lbH5SWIeeAa2SS9fyKgzWQIpIH3MSN9ryuiKP1yndgShwvVoRbhj0Jczpy1iZNNXJ77V1TLu vl2vZ6 X-Talos-CUID: 9a23:qR64g25t14byi2Kuqtss30k/Bf04WVrhly3ffFaJCX1bVeOoYArF X-Talos-MUID: 9a23:vb/3VQti6X5LgTdl9s2n3ClTbvlO076XOUUwrrYAmeaCLnQpNGLI X-IronPort-Anti-Spam-Filtered: true X-IronPort-AV: E=Sophos;i="6.25,178,1779148800"; d="scan'208";a="513682439" Received: from rcdn-l-core-02.cisco.com ([173.37.255.139]) by rcdn-iport-4.cisco.com with ESMTP/TLS/TLS_AES_256_GCM_SHA384; 22 Jul 2026 09:54:33 +0000 Received: from sjc-ads-5675.cisco.com (sjc-ads-5675.cisco.com [10.28.88.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by rcdn-l-core-02.cisco.com (Postfix) with ESMTPS id B1DA4180007C9; Wed, 22 Jul 2026 09:54:33 +0000 (GMT) Received: by sjc-ads-5675.cisco.com (Postfix, from userid 1887444) id 58F1FCAB20F; Wed, 22 Jul 2026 02:54:33 -0700 (PDT) From: "Darsh Kelaiya -X (dkelaiya - E INFOCHIPS PRIVATE LIMITED at Cisco)" To: openembedded-core@lists.openembedded.org Cc: xe-linux-external@cisco.com, Darsh Kelaiya Subject: [OE-core][wrynose][PATCH 4/4] gawk: Fix CVE-2026-40553 Date: Wed, 22 Jul 2026 02:54:30 -0700 Message-Id: <20260722095430.1416791-4-dkelaiya@cisco.com> X-Mailer: git-send-email 2.35.6 In-Reply-To: <20260722095430.1416791-1-dkelaiya@cisco.com> References: <20260722095430.1416791-1-dkelaiya@cisco.com> MIME-Version: 1.0 X-Auto-Response-Suppress: DR, OOF, AutoReply X-Outbound-Client-TLS: ANONYMOUS;sjc-ads-5675.cisco.com [10.28.88.189];TLSv1.3;TLS_AES_256_GCM_SHA384;256 X-Outbound-SMTP-Client: 10.28.88.189, sjc-ads-5675.cisco.com X-Outbound-Node: rcdn-l-core-02.cisco.com List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 22 Jul 2026 09:54:37 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/241638 From: Darsh Kelaiya This patch applies the upstream fix as referenced in [3], using the commit shown in [1]. It also applies the corrective follow-up [2], which fixes the snprintf() truncation boundary check. Both commits are included in gawk 5.4.1, identified as the fixed release in [4]. [1] https://cgit.git.savannah.gnu.org/cgit/gawk.git/commit/?id=cca0366144336b49aaa7d5d949966ce8e2c70843 [2] https://cgit.git.savannah.gnu.org/cgit/gawk.git/commit/?id=bfa2e4b890a44100a99d26b54af385479528b12e [3] https://nvd.nist.gov/vuln/detail/CVE-2026-40553 [4] https://cert.pl/en/posts/2026/07/CVE-2026-40467/ Signed-off-by: Darsh Kelaiya Reviewed-by: Leonid Iziumtsev --- .../gawk/gawk/CVE-2026-40553_p1.patch | 50 +++++++++++++++++++ .../gawk/gawk/CVE-2026-40553_p2.patch | 44 ++++++++++++++++ meta/recipes-extended/gawk/gawk_5.4.0.bb | 2 + 3 files changed, 96 insertions(+) create mode 100644 meta/recipes-extended/gawk/gawk/CVE-2026-40553_p1.patch create mode 100644 meta/recipes-extended/gawk/gawk/CVE-2026-40553_p2.patch diff --git a/meta/recipes-extended/gawk/gawk/CVE-2026-40553_p1.patch b/meta/recipes-extended/gawk/gawk/CVE-2026-40553_p1.patch new file mode 100644 index 0000000000..81e2efd6b9 --- /dev/null +++ b/meta/recipes-extended/gawk/gawk/CVE-2026-40553_p1.patch @@ -0,0 +1,50 @@ +From 6e7695c994aa45c0f7e9f8b80aa6f99717bbaf60 Mon Sep 17 00:00:00 2001 +From: "Arnold D. Robbins" +Date: Wed, 15 Apr 2026 09:39:02 +0300 +Subject: [PATCH] Avoid buffer overflow in extension/readdir.c. + +CVE: CVE-2026-40553 +Upstream-Status: Backport [https://cgit.git.savannah.gnu.org/cgit/gawk.git/commit/?id=cca0366144336b49aaa7d5d949966ce8e2c70843] + +(cherry picked from commit cca0366144336b49aaa7d5d949966ce8e2c70843) +Signed-off-by: Darsh Kelaiya +--- + extension/ChangeLog | 6 ++++++ + extension/readdir.c | 6 +++++- + 2 files changed, 11 insertions(+), 1 deletion(-) + +diff --git a/extension/ChangeLog b/extension/ChangeLog +index b11e83ac..6f88eb19 100644 +--- a/extension/ChangeLog ++++ b/extension/ChangeLog +@@ -1,3 +1,9 @@ ++2026-04-15 Arnold D. Robbins ++ ++ * readdir.c (ftype): Use snprintf() to check for buffer ++ overflow in the file name before calling stat(). Thanks to ++ Marcin Wyczechowski for the report. ++ + 2026-02-22 Arnold D. Robbins + + * 5.4.0: Release tar ball made. +diff --git a/extension/readdir.c b/extension/readdir.c +index f876e168..5bbee261 100644 +--- a/extension/readdir.c ++++ b/extension/readdir.c +@@ -118,8 +118,12 @@ ftype(struct dirent *entry, const char *dirname) + #endif + char fname[PATH_MAX]; + struct stat sbuf; ++ int count; ++ ++ count = snprintf(fname, sizeof(fname), "%s/%s", dirname, entry->d_name); ++ if (count > sizeof(fname)) ++ return "u"; // buffer overflow. skip stat() call. + +- sprintf(fname, "%s/%s", dirname, entry->d_name); + if (stat(fname, &sbuf) == 0) { + if (S_ISBLK(sbuf.st_mode)) + return "b"; +-- +2.53.0 + diff --git a/meta/recipes-extended/gawk/gawk/CVE-2026-40553_p2.patch b/meta/recipes-extended/gawk/gawk/CVE-2026-40553_p2.patch new file mode 100644 index 0000000000..84bfdc5418 --- /dev/null +++ b/meta/recipes-extended/gawk/gawk/CVE-2026-40553_p2.patch @@ -0,0 +1,44 @@ +From a98440e83cb19b042958a179293bd637c400a35b Mon Sep 17 00:00:00 2001 +From: "Arnold D. Robbins" +Date: Fri, 17 Apr 2026 11:48:19 +0300 +Subject: [PATCH] Small fix in extension/readdir.c. + +CVE: CVE-2026-40553 +Upstream-Status: Backport [https://cgit.git.savannah.gnu.org/cgit/gawk.git/commit/?id=bfa2e4b890a44100a99d26b54af385479528b12e] + +(cherry picked from commit bfa2e4b890a44100a99d26b54af385479528b12e) +Signed-off-by: Darsh Kelaiya +--- + extension/ChangeLog | 5 +++++ + extension/readdir.c | 2 +- + 2 files changed, 6 insertions(+), 1 deletion(-) + +diff --git a/extension/ChangeLog b/extension/ChangeLog +index 6f88eb19..9fe216e6 100644 +--- a/extension/ChangeLog ++++ b/extension/ChangeLog +@@ -1,3 +1,8 @@ ++2026-04-15 Arnold D. Robbins ++ ++ * readdir.c (ftype): Use >= in check of snprintf() return ++ value. Thanks to Andrew Schorr . ++ + 2026-04-15 Arnold D. Robbins + + * readdir.c (ftype): Use snprintf() to check for buffer +diff --git a/extension/readdir.c b/extension/readdir.c +index 5bbee261..3cb31834 100644 +--- a/extension/readdir.c ++++ b/extension/readdir.c +@@ -121,7 +121,7 @@ ftype(struct dirent *entry, const char *dirname) + int count; + + count = snprintf(fname, sizeof(fname), "%s/%s", dirname, entry->d_name); +- if (count > sizeof(fname)) ++ if (count >= sizeof(fname)) + return "u"; // buffer overflow. skip stat() call. + + if (stat(fname, &sbuf) == 0) { +-- +2.53.0 + diff --git a/meta/recipes-extended/gawk/gawk_5.4.0.bb b/meta/recipes-extended/gawk/gawk_5.4.0.bb index a7c88224dd..f44d82b37c 100644 --- a/meta/recipes-extended/gawk/gawk_5.4.0.bb +++ b/meta/recipes-extended/gawk/gawk_5.4.0.bb @@ -31,6 +31,8 @@ SRC_URI = "${GNU_MIRROR}/gawk/gawk-${PV}.tar.xz \ file://CVE-2026-40467.patch \ file://CVE-2026-40468.patch \ file://CVE-2026-40469.patch \ + file://CVE-2026-40553_p1.patch \ + file://CVE-2026-40553_p2.patch \ " SRC_URI[sha256sum] = "3dd430f0cd3b4428c6c3f6afc021b9cd3c1f8c93f7a688dc268ca428a90b4ac1"