Patch "ASoC: max98090: Reject invalid values in custom control put()" has been added to the 4.19-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    ASoC: max98090: Reject invalid values in custom control put()

to the 4.19-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     asoc-max98090-reject-invalid-values-in-custom-contro.patch
and it can be found in the queue-4.19 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit f6100be78a9d7a73a642c3d583502a33e35750af
Author: Mark Brown <broonie@xxxxxxxxxx>
Date:   Wed Apr 20 20:34:53 2022 +0100

    ASoC: max98090: Reject invalid values in custom control put()
    
    [ Upstream commit 2fbe467bcbfc760a08f08475eea6bbd4c2874319 ]
    
    The max98090 driver has a custom put function for some controls which can
    only be updated in certain circumstances which makes no effort to validate
    that input is suitable for the control, allowing out of spec values to be
    written to the hardware and presented to userspace. Fix this by returning
    an error when invalid values are written.
    
    Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
    Link: https://lore.kernel.org/r/20220420193454.2647908-1-broonie@xxxxxxxxxx
    Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/sound/soc/codecs/max98090.c b/sound/soc/codecs/max98090.c
index a5b0c40ee545..6e5a4e757bf1 100644
--- a/sound/soc/codecs/max98090.c
+++ b/sound/soc/codecs/max98090.c
@@ -419,6 +419,9 @@ static int max98090_put_enab_tlv(struct snd_kcontrol *kcontrol,
 
 	val = (val >> mc->shift) & mask;
 
+	if (sel < 0 || sel > mc->max)
+		return -EINVAL;
+
 	*select = sel;
 
 	/* Setting a volume is only valid if it is already On */



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux