From 9a3b84d90df7df399723d4654a75781b3f03dd87 Mon Sep 17 00:00:00 2001 From: Philippe SWARTVAGHER <philippe.swartvagher@inria.fr> Date: Thu, 25 Aug 2022 16:50:34 +0200 Subject: [PATCH] Check return value of mallocs in check_zmatrices() and prevent overflows --- testing/testing_zcheck_aux.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/testing/testing_zcheck_aux.c b/testing/testing_zcheck_aux.c index ef29507c0..21069c62b 100644 --- a/testing/testing_zcheck_aux.c +++ b/testing/testing_zcheck_aux.c @@ -162,8 +162,11 @@ int check_zmatrices( run_arg_list_t *args, cham_uplo_t uplo, CHAM_desc_t *descA, CHAMELEON_Complex64_t *B = NULL; if ( rank == 0 ) { - A = (CHAMELEON_Complex64_t *)malloc(LDA*N*sizeof(CHAMELEON_Complex64_t)); - B = (CHAMELEON_Complex64_t *)malloc(LDB*N*sizeof(CHAMELEON_Complex64_t)); + A = (CHAMELEON_Complex64_t *)malloc((size_t)(LDA) * (size_t)(N) * sizeof(CHAMELEON_Complex64_t)); + B = (CHAMELEON_Complex64_t *)malloc((size_t)(LDB) * (size_t)(N) * sizeof(CHAMELEON_Complex64_t)); + if ( (A == NULL) || (B == NULL) ) { + return CHAMELEON_ERR_OUT_OF_RESOURCES; + } } /* Converts the matrices to LAPACK layout in order to compare them on the main process */ -- GitLab