]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ALSA: hda/ca0132: Fix buffer overflow in add_tuning_control
authorLucy Thrun <lucy.thrun@digital-rabbithole.de>
Tue, 10 Jun 2025 17:50:12 +0000 (19:50 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Aug 2025 16:41:04 +0000 (18:41 +0200)
[ Upstream commit a409c60111e6bb98fcabab2aeaa069daa9434ca0 ]

The 'sprintf' call in 'add_tuning_control' may exceed the 44-byte
buffer if either string argument is too long. This triggers a compiler
warning.
Replaced 'sprintf' with 'snprintf' to limit string lengths to prevent
overflow.

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202506100642.95jpuMY1-lkp@intel.com/
Signed-off-by: Lucy Thrun <lucy.thrun@digital-rabbithole.de>
Link: https://patch.msgid.link/20250610175012.918-3-lucy.thrun@digital-rabbithole.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/pci/hda/patch_ca0132.c

index 77432e06f3e32cb219c26ec99190184afc4f0f61..a2f57d7424bb84a60b20c0f9e76b583059373dd7 100644 (file)
@@ -4410,7 +4410,7 @@ static int add_tuning_control(struct hda_codec *codec,
        }
        knew.private_value =
                HDA_COMPOSE_AMP_VAL(nid, 1, 0, type);
-       sprintf(namestr, "%s %s Volume", name, dirstr[dir]);
+       snprintf(namestr, sizeof(namestr), "%s %s Volume", name, dirstr[dir]);
        return snd_hda_ctl_add(codec, nid, snd_ctl_new1(&knew, codec));
 }