Merge "asoc: Add check to handle negative value passed for num_app_cfg_type"

This commit is contained in:
qctecmdr 2021-01-29 08:57:23 -08:00 • committed by Gerrit - the friendly Code Review server
commit 49599a35ee

View file

@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only
/* Copyright (c) 2012-2020, The Linux Foundation. All rights reserved.
/* Copyright (c) 2012-2021, The Linux Foundation. All rights reserved.
*/
#include <linux/init.h>
@ -23262,9 +23262,9 @@ static int msm_routing_put_app_type_cfg_control(struct snd_kcontrol *kcontrol,
memset(app_type_cfg, 0, MAX_APP_TYPES*
sizeof(struct msm_pcm_routing_app_type_data));
if (num_app_types > MAX_APP_TYPES) {
pr_err("%s: number of app types exceed the max supported\n",
__func__);
if (num_app_types > MAX_APP_TYPES || num_app_types < 0) {
pr_err("%s: number of app types %d is invalid\n",
__func__, num_app_types);
return -EINVAL;
}
for (j = 0; j < num_app_types; j++) {
@ -23468,9 +23468,10 @@ static int msm_routing_put_lsm_app_type_cfg_control(
int i = 0, j;
mutex_lock(&routing_lock);
if (ucontrol->value.integer.value[0] > MAX_APP_TYPES) {
pr_err("%s: number of app types exceed the max supported\n",
__func__);
if (ucontrol->value.integer.value[0] < 0 ||
ucontrol->value.integer.value[0] > MAX_APP_TYPES) {
pr_err("%s: number of app types %ld is invalid\n",
__func__, ucontrol->value.integer.value[0]);
mutex_unlock(&routing_lock);
return -EINVAL;
}