Эх сурвалжийг харах

[ALSA] rawmidi: protect against invalid device number in snd_rawmidi_info_select()

Modules: RawMidi Midlevel

In snd_rawmidi_info_select(), check that the device identified by the
passed device number actually exists.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Clemens Ladisch 19 жил өмнө
parent
commit
a106cd3d9e
1 өөрчлөгдсөн 2 нэмэгдсэн , 0 устгасан
  1. 2 0
      sound/core/rawmidi.c

+ 2 - 0
sound/core/rawmidi.c

@@ -573,6 +573,8 @@ int snd_rawmidi_info_select(struct snd_card *card, struct snd_rawmidi_info *info
 	if (info->device >= SNDRV_RAWMIDI_DEVICES)
 		return -ENXIO;
 	rmidi = snd_rawmidi_devices[card->number * SNDRV_RAWMIDI_DEVICES + info->device];
+	if (!rmidi)
+		return -ENXIO;
 	if (info->stream < 0 || info->stream > 1)
 		return -EINVAL;
 	pstr = &rmidi->streams[info->stream];