Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit df803e13 authored by Takashi Iwai's avatar Takashi Iwai
Browse files

ALSA: control: Warn if too long string is passed to snd_ctl_enum_info()



This allows us to catch the bugs in drivers easily.

Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent be93709c
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -1747,6 +1747,9 @@ int snd_ctl_enum_info(struct snd_ctl_elem_info *info, unsigned int channels,
	info->value.enumerated.items = items;
	if (info->value.enumerated.item >= items)
		info->value.enumerated.item = items - 1;
	WARN(strlen(names[info->value.enumerated.item]) >= sizeof(info->value.enumerated.name),
	     "ALSA: too long item name '%s'\n",
	     names[info->value.enumerated.item]);
	strlcpy(info->value.enumerated.name,
		names[info->value.enumerated.item],
		sizeof(info->value.enumerated.name));