diff --git a/meta-oniro-staging/recipes-support/gmp/gmp/CVE-2021-43618.patch b/meta-oniro-staging/recipes-support/gmp/gmp/CVE-2021-43618.patch new file mode 100644 index 0000000000000000000000000000000000000000..67d61263ef3a44fa961ad56f30dae0e9ea798c88 --- /dev/null +++ b/meta-oniro-staging/recipes-support/gmp/gmp/CVE-2021-43618.patch @@ -0,0 +1,27 @@ +# Upstream-status: Submitted/Backport +# Upstream-URL: https://lists.openembedded.org/g/openembedded-core/message/158561 + +# HG changeset patch +# User Marco Bodrato <bodrato@mail.dm.unipi.it> +# Date 1634836009 -7200 +# Node ID 561a9c25298e17bb01896801ff353546c6923dbd +# Parent e1fd9db13b475209a864577237ea4b9105b3e96e +mpz/inp_raw.c: Avoid bit size overflows + +diff -r e1fd9db13b47 -r 561a9c25298e mpz/inp_raw.c +--- a/mpz/inp_raw.c Tue Dec 22 23:49:51 2020 +0100 ++++ b/mpz/inp_raw.c Thu Oct 21 19:06:49 2021 +0200 +@@ -88,8 +88,11 @@ + + abs_csize = ABS (csize); + ++ if (UNLIKELY (abs_csize > ~(mp_bitcnt_t) 0 / 8)) ++ return 0; /* Bit size overflows */ ++ + /* round up to a multiple of limbs */ +- abs_xsize = BITS_TO_LIMBS (abs_csize*8); ++ abs_xsize = BITS_TO_LIMBS ((mp_bitcnt_t) abs_csize * 8); + + if (abs_xsize != 0) + { + diff --git a/meta-oniro-staging/recipes-support/gmp/gmp_6.2%.bbappend b/meta-oniro-staging/recipes-support/gmp/gmp_6.2%.bbappend new file mode 100644 index 0000000000000000000000000000000000000000..3187185a4c4f50c770a8e87413fdc63506861bf0 --- /dev/null +++ b/meta-oniro-staging/recipes-support/gmp/gmp_6.2%.bbappend @@ -0,0 +1,6 @@ +# SPDX-FileCopyrightText: Huawei Inc. +# +# SPDX-License-Identifier: Apache-2.0 + +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" +SRC_URI += "file://CVE-2021-43618.patch"