All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Yoann Congal" <yoann.congal@smile.fr>
To: <deepesh.varatharajan@windriver.com>,
	<openembedded-core@lists.openembedded.org>
Cc: <Sundeep.Kokkonda@windriver.com>, <sunilkumar.dora@windriver.com>,
	<Deepesh.Varatharajan@windriver.com>
Subject: Re: [OE-core] [scarthgap][PATCH] glibc: Fix CVE-2026-6238
Date: Fri, 11 Sep 2026 13:16:29 +0200	[thread overview]
Message-ID: <DLCG0P49RZ4P.1GPBN6ZFVSQ49@smile.fr> (raw)
In-Reply-To: <20260904130447.1762441-1-Deepesh.Varatharajan@windriver.com>

On Fri Sep 4, 2026 at 3:04 PM CEST, Deepesh via lists.openembedded.org Varatharajan wrote:
> From: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
>
> Backport six commits from upstream glibc to fix CVE-2026-6238.
>
> 4ba0b79b95 resolv: Add test case tst-ns_sprintrr (bug 34033, bug 34069)
> a7b60d23bb resolv: Fix buffer overreads in ns_sprintrrf (CVE-2026-6238)
> cd0db208d5 resolv: Check for inet_ntop failure in ns_sprintrrf
> d58415eb17 resolv: Improve formatting of unknown records in ns_sprintrrf
> f69b7f95e3 resolv: Fix ns_sprintrrf formatting of class, type values (bug 34289)
> 360f352c9a resolv: Declare __p_class_syms, __p_type_syms for internal use
>
> The upstream patch series [PATCH 0/5] contains five commits:
>   1/5: Update GLIBC-SA-2026-0012 to mention A6 records (doc only)
>   2/5: resolv: Check for inet_ntop failure in ns_sprintrrf
>   3/5: resolv: Remove incorrect parts of TSIG handling from ns_sprintrrf
>        (CVE-2026-5435)
>   4/5: resolv: Fix buffer overreads in ns_sprintrrf (CVE-2026-6238)
>   5/5: resolv: Add test case tst-ns_sprintrr (bug 34033, bug 34069)
>
> For this backport:
> - Patch 1/5 is skipped (documentation-only change to advisories,
>   upstream glibc itself does not backport this to older releases)
> - Patch 3/5 (CVE-2026-5435) is already patched in scarthgap sources
> - Patches 2/5, 4/5, and 5/5 are backported as:
>   0028-CVE-2026-6238-0004.patch (inet_ntop failure check)
>   0029-CVE-2026-6238-0005.patch (buffer overread fix - CVE-2026-6238)
>   0030-CVE-2026-6238-0006.patch (test case for bug 34033, bug 34069)
>
> However, the test case (tst-ns_sprintrr) from patch 5/5 failed on
> scarthgap's glibc 2.39 due to missing prerequisite commits. Three
> additional patches were backported to resolve the test failure:
>   0025-CVE-2026-6238-0001.patch (Declare __p_class_syms, __p_type_syms for internal)
>   0026-CVE-2026-6238-0002.patch (Fix ns_sprintrrf formatting of class, type values)
>   0027-CVE-2026-6238-0003.patch (Improve formatting of unknown records in ns_sprintrrf)
>
> CVE-2026-6238 fixes buffer overreads in ns_sprintrrf affecting A6 and
> LOC record handling. The vulnerable LOC record handling was introduced
> before glibc 2.0, while A6 record handling was added in glibc 2.7.
>
> Reference:
> https://inbox.sourceware.org/libc-alpha/cover.1777546194.git.fweimer@redhat.com/
> https://nvd.nist.gov/vuln/detail/CVE-2026-6238
> https://sourceware.org/bugzilla/show_bug.cgi?id=34069
>
> Testing Results:
>              Before    After    Diff
> PASS         4896      4897     +1
> XPASS        4         4         0
> FAIL         372       372       0
> XFAIL        16        16        0
> UNSUPPORTED  224       224       0
>
> Changes in testcases:
>
> testcase-name                                before  after
> resolv/tst-ns_sprintrr(new)                    -     PASS
>
> commit - 4ba0b79b95 resolv: Add test case tst-ns_sprintrr (bug 34033, bug 34069)
> +PASS: resolv/tst-ns_sprintrr
> Signed-off-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
> ---
>  .../glibc/glibc/0025-CVE-2026-6238-0001.patch |  56 +++
>  .../glibc/glibc/0026-CVE-2026-6238-0002.patch |  80 ++++
>  .../glibc/glibc/0027-CVE-2026-6238-0003.patch |  55 +++
>  .../glibc/glibc/0028-CVE-2026-6238-0004.patch |  70 ++++
>  .../glibc/glibc/0029-CVE-2026-6238-0005.patch |  66 +++
>  .../glibc/glibc/0030-CVE-2026-6238-0006.patch | 379 ++++++++++++++++++
>  meta/recipes-core/glibc/glibc_2.39.bb         |   6 +
>  7 files changed, 712 insertions(+)
>  create mode 100644 meta/recipes-core/glibc/glibc/0025-CVE-2026-6238-0001.patch
>  create mode 100644 meta/recipes-core/glibc/glibc/0026-CVE-2026-6238-0002.patch
>  create mode 100644 meta/recipes-core/glibc/glibc/0027-CVE-2026-6238-0003.patch
>  create mode 100644 meta/recipes-core/glibc/glibc/0028-CVE-2026-6238-0004.patch
>  create mode 100644 meta/recipes-core/glibc/glibc/0029-CVE-2026-6238-0005.patch
>  create mode 100644 meta/recipes-core/glibc/glibc/0030-CVE-2026-6238-0006.patch

Hello,

There are formating issues with this series. Some examples below, but I
won't flag everything.

>
> diff --git a/meta/recipes-core/glibc/glibc/0025-CVE-2026-6238-0001.patch b/meta/recipes-core/glibc/glibc/0025-CVE-2026-6238-0001.patch
> new file mode 100644
> index 0000000000..9d14164909
> --- /dev/null
> +++ b/meta/recipes-core/glibc/glibc/0025-CVE-2026-6238-0001.patch
> @@ -0,0 +1,56 @@
> +From 360f352c9a6da545d798ef3015e73ca114f0d230 Mon Sep 17 00:00:00 2001
> +From: Florian Weimer <fweimer@redhat.com>
> +Date: Fri, 19 Jun 2026 18:22:20 +0200
> +Subject: [PATCH] resolv: Declare __p_class_syms, __p_type_syms for internal
> + use
> +
> +Reviewed-by: Carlos O'Donell <carlos@redhat.com>
> +Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
> +
> +CVE: CVE-2026-6238
> +Upstream-Status: Backport [https://sourceware.org/git/?p=glibc.git;a=patch;h=360f352c9a6da545d798ef3015e73ca114f0d230]
> +
> +Signed-off-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
> +---
> + include/resolv.h   | 5 +++++
> + resolv/res_debug.c | 4 ----
> + 2 files changed, 5 insertions(+), 4 deletions(-)
> +
> +diff --git a/include/resolv.h b/include/resolv.h
> +index 4dbbac38..d5ad9994 100644
> +--- a/include/resolv.h
> ++++ b/include/resolv.h
> +@@ -70,6 +70,11 @@ libc_hidden_proto (__libc_res_nameinquery)
> + extern __typeof (__res_queriesmatch) __libc_res_queriesmatch;
> + libc_hidden_proto (__libc_res_queriesmatch)
> +
   ^ patch formatting: it lacks a space here marking the context

> diff --git a/meta/recipes-core/glibc/glibc/0026-CVE-2026-6238-0002.patch b/meta/recipes-core/glibc/glibc/0026-CVE-2026-6238-0002.patch
> new file mode 100644
> index 0000000000..837a603eb6
> --- /dev/null
> +++ b/meta/recipes-core/glibc/glibc/0026-CVE-2026-6238-0002.patch
> @@ -0,0 +1,80 @@
> +From f69b7f95e3694177546faec25d88bb266885c3b8 Mon Sep 17 00:00:00 2001
> +From: Florian Weimer <fweimer@redhat.com>
> +Date: Fri, 19 Jun 2026 18:22:20 +0200
> +Subject: [PATCH] resolv: Fix ns_sprintrrf formatting of class, type values
> + (bug 34289)
> +
> +The p_class and p_type results could overwrite each other if both
> +were unknown.  Format unknown values with CLASS and TYPE prefixes,
> +as in RFC 3597.  Handle A6 separately because it cannot be added
> +to __p_type_syms for ABI reasons.
> +
> +Reviewed-by: Carlos O'Donell <carlos@redhat.com>
> +Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
> +
> +CVE: CVE-2026-6238
> +Upstream-Status: Backport [https://sourceware.org/git/?p=glibc.git;a=patch;h=f69b7f95e3694177546faec25d88bb266885c3b8]
> +
> +Signed-off-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
> +---
> + resolv/ns_print.c | 38 +++++++++++++++++++++++++++++++++-----
> + 1 file changed, 33 insertions(+), 5 deletions(-)
> +
> +diff --git a/resolv/ns_print.c b/resolv/ns_print.c
> +index fffed4b3..59c34553 100644
> +--- a/resolv/ns_print.c
> ++++ b/resolv/ns_print.c
> +@@ -78,6 +78,24 @@ ns_sprintrr(const ns_msg *handle, const ns_rr *rr,
> + }
> + libresolv_hidden_def (ns_sprintrr)
> + 
> ++/* Writes the class/type symbol NUMBER to *BUF, using the name from
> ++   *SYMS if possible.  If NUMBER is not found in *SYMS, print the
> ++   number with PREFIX.  */
> ++static int
> ++addsym (const struct res_sym *syms, int number, const char *prefix,
> ++       char **buf, size_t *buflen)
          ^ A space was added here from the upstream patch (there are
            many instances of that below)

Can you please send a v2 where the diff between the upstream patch and
your is minimal? (No formatting issues, no spurious reindentation)

You can use the interdiff tool to compare diffs (yours vs upstream's),
it makes those issues visible.

BTW, I can't help but suspect that these changes are created by the use
of a LLM. Please remember that you have to tag LLM generated patches.

Regards,
-- 
Yoann Congal
Smile ECS


      parent reply	other threads:[~2026-09-11 11:16 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-04 13:04 [scarthgap][PATCH] glibc: Fix CVE-2026-6238 Deepesh.Varatharajan
2026-09-11 10:49 ` [OE-core] " Yoann Congal
2026-09-11 11:16 ` Yoann Congal [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DLCG0P49RZ4P.1GPBN6ZFVSQ49@smile.fr \
    --to=yoann.congal@smile.fr \
    --cc=Sundeep.Kokkonda@windriver.com \
    --cc=deepesh.varatharajan@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=sunilkumar.dora@windriver.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.