Merge "ASoC: Add check to prevent buffer overflow for port_idx"

This commit is contained in:
qctecmdr 2021-04-07 23:34:50 -07:00 committed by Gerrit - the friendly Code Review server
commit 9f0c670400

View File

@ -9296,6 +9296,10 @@ static int msm_pcm_afe_port_logging_ctl_get(struct snd_kcontrol *kcontrol,
int port_idx = afe_port_logging_port_id - AFE_PORT_ID_TDM_PORT_RANGE_START;
ucontrol->value.integer.value[0] = afe_port_logging_port_id;
if (port_idx < 0 || port_idx >= IDX_TDM_MAX) {
pr_err_ratelimited("%s: port_idx = %d\n", __func__, port_idx);
return -EINVAL;
}
ucontrol->value.integer.value[1] = afe_port_logging_item[port_idx];
return 0;
@ -9322,6 +9326,10 @@ static int msm_pcm_afe_port_logging_ctl_put(struct snd_kcontrol *kcontrol,
afe_port_logging_port_id = port_id;
port_idx = port_id - AFE_PORT_ID_TDM_PORT_RANGE_START;
if (port_idx < 0 || port_idx >= IDX_TDM_MAX) {
pr_err_ratelimited("%s: port_idx = %d\n", __func__, port_idx);
return -EINVAL;
}
afe_port_logging_item[port_idx] = ucontrol->value.integer.value[1];
return ret;