<?xml version="1.0" encoding="utf-8"?>
  <?xml-stylesheet type="text/xsl" href="sa-render.xsl"?>
  <update from="huaweicloud.com" type="security" status="stable" version="1">
    <id>HCE3-SA-2025-0074</id>
    <title>An update for libbpf is now available for HCE 3.0</title>
    <severity>Moderate</severity>
    <release>HCE 3.0</release>
    <issued date="2025-10-09 06:38:17"/>
    <updated date="2025-10-09 06:38:17"/>
    <references>
      <reference href="https://nvd.nist.gov/vuln/detail/CVE-2024-27050" id="CVE-2024-27050" title="CVE-2024-27050 Base Score: 5.5 Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H" type="cve"/>
    </references>
    <description>Security Fix(es):

In the Linux kernel, the following vulnerability has been resolved:

libbpf: Use OPTS_SET() macro in bpf_xdp_query()

When the feature_flags and xdp_zc_max_segs fields were added to the libbpf
bpf_xdp_query_opts, the code writing them did not use the OPTS_SET() macro.
This causes libbpf to write to those fields unconditionally, which means
that programs compiled against an older version of libbpf (with a smaller
size of the bpf_xdp_query_opts struct) will have its stack corrupted by
libbpf writing out of bounds.

The patch adding the feature_flags field has an early bail out if the
feature_flags field is not part of the opts struct (via the OPTS_HAS)
macro, but the patch adding xdp_zc_max_segs does not. For consistency, this
fix just changes the assignments to both fields to use the OPTS_SET()
macro. (CVE-2024-27050)
</description>
    <pkglist>
      <collection short="HCE 3.0" package="libbpf">
        <name>HCE 3.0</name>
        <package arch="x86_64" name="libbpf" version="1.2.2" release="5.r4.hce3">
          <filename>libbpf-1.2.2-5.r4.hce3.x86_64.rpm</filename>
        </package>
        <package arch="x86_64" name="libbpf-devel" version="1.2.2" release="5.r4.hce3">
          <filename>libbpf-devel-1.2.2-5.r4.hce3.x86_64.rpm</filename>
        </package>
        <package arch="x86_64" name="libbpf-static" version="1.2.2" release="5.r4.hce3">
          <filename>libbpf-static-1.2.2-5.r4.hce3.x86_64.rpm</filename>
        </package>
        <package arch="aarch64" name="libbpf" version="1.2.2" release="5.r4.hce3">
          <filename>libbpf-1.2.2-5.r4.hce3.aarch64.rpm</filename>
        </package>
        <package arch="aarch64" name="libbpf-devel" version="1.2.2" release="5.r4.hce3">
          <filename>libbpf-devel-1.2.2-5.r4.hce3.aarch64.rpm</filename>
        </package>
        <package arch="aarch64" name="libbpf-static" version="1.2.2" release="5.r4.hce3">
          <filename>libbpf-static-1.2.2-5.r4.hce3.aarch64.rpm</filename>
        </package>
      </collection>
    </pkglist>
  </update>
